Z lenistwa...
28 sierpnia, 2007
Kolega w nocy zaczął mi się użalać, że Wykop ma pewną denerwującą cechę - gdy ktoś nie jest zalogowany to po kliknięciu na "wykop" przenosi do strony logowania, a po zalogowaniu nie przenosi do poprzedniego linka tylko na stronę główną. Nie ukrywam sprawa dość denerwująca i mnie. Dlatego rozwiązałem problem w... 12 linijkach UserJS. Użycie skryptu jest wręcz banalne - wystarczy po instalacji wyedytować dwie linijki jego kodu:
var login = '';
var haslo = '';
W tych dwóch linijkach podajemy dane naszego konta. Co potem ? W wypadku gdy skrypt wykryje obecność linka "Zaloguj" na jakiejś podstronie wykopu ów link zyskuje nową funkcjonalność - po jego kliknięciu zostajemy zalogowani, a następnie strona na której jesteśmy zostaje odświeżona. W ten sposób nie musimy wklepywać naszych danych do formularza i w ogóle go oglądać ;)
Wiem - to szczyt lenistwa, ale po co się męczyć i tracić cenny czas ;)
EDIT: żeby nie narzekano - wersja dla Opery ;) :
// ==UserScript==
// @name Wykop one-click login
// @description Login with one click
// @author Dziudek
// @version 0.1
// @include http://*wykop.pl*
// ==/UserScript==
window.addEventListener('DOMContentLoaded', function() {
// podaj swoje dane
var login = '';
var haslo = '';
var d=document.getElementById("navlog").childNodes[3].childNodes[0];
if(d.href == "http://www.wykop.pl/zaloguj"){
d.addEventListener("click",function(e){
e.preventDefault();
var x = new XMLHttpRequest();
if (!x) alert('Błąd tworzenia XHR'); x.onreadystatechange = function(){
if(x.readyState == 4)(x.status == 200)?window.location=window.location:alert('Błąd zapytania');};
x.open('POST','http://www.wykop.pl/zaloguj.php', true);
x.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
x.send('username='+login+'&password='+haslo+'&remember_me=remember_me')},false);}
}, false);
EDIT2: niektórzy słusznie zauważyli, że skrypt nie trzyma cookies i po każdym zamknięciu przeglądarki trzeba się logować - poprawiłem już chyba ten błąd poprzez dodanie kodu: +'&remember_me=remember_me' w zmiennych POST - teraz już wszystko w obu wersjach powinno być OK ;)
Komentarze do wpisu "Z lenistwa...":
1.
off napisał(a):
28 sierpnia 2007, 15:59:55
Dziudek, dopiero co wróciłeś. Przestań :p
2.
Dziudek napisał(a):
28 sierpnia 2007, 16:00:28
@off – takie małe wejście w rytm :P Skrypt napisałem już w nocy xD
3.
Gryphon napisał(a):
28 sierpnia 2007, 16:33:05
Fajne! Sam miałem z tym kłopot, a że nie znam JS to nie mogłem tego sobie napisać :)
4.
Dziudek napisał(a):
28 sierpnia 2007, 16:35:36
Gryphon – jedno zapytanie AJAX i po nim tylko odświeżenie stronki – ot cała „magia” tego skryptu ;) No i oczywiście selekcja elementu wraz z
preventDefaultdla linka :) Małe, a przydatne jak widzę nie tylko dla mnie ;)5.
off napisał(a):
28 sierpnia 2007, 18:56:30
Próbowałeś to zgłosić do ministerstwa wykopu?
6.
Dziudek napisał(a):
28 sierpnia 2007, 19:08:10
@off – oni tak zajeszybko wprowadzają poprawki, że wolę się zdać na własne userJSy niż nadzieję, że kiedyś wmontują daną funkcjonalność na stałe…
7.
Grzegorz napisał(a):
28 sierpnia 2007, 20:13:43
A ja mam prośbę dotyczącą takiego skryptu dla forum MozillaPL.org
Kontaktowałem się z „władzami”, ale nie za bardzo mają czas. A przydała by się funkcja powrotu do poprzedniej strony po zalogowaniu lub dodatkowy przycisk Zaloguj i odpowiedz
8.
Dziudek napisał(a):
28 sierpnia 2007, 20:20:18
@Grzegorz – obadam sprawę w nocy ;)
9.
Dziudek napisał(a):
29 sierpnia 2007, 00:43:40
@Grzegorz – chyba nie da rady, bez solidnego obejrzenia kodu ;] Prawdopodobnie tam są przesyłane nie tylko dane z formularza – w każdym razie metodą analogiczną do tej z wykopu nie dało rady… Niestety nie mam za bardzo czasu by siedzieć nad tym kilka godzin i myśleć co może być nie tak :/
10.
Grzegorz napisał(a):
29 sierpnia 2007, 10:15:00
Serdeczne dzięki za zainteresowanie ;) W każdym bądź razie, gdybyś kiedyś cierpiał na nadmiar wolnego czasu… to możesz do tego wrócić. Zwłaszcza do przycisków, o których napisałem we wcześniejszym komentarzu.
Pozdrawiam
11.
Kuba napisał(a):
20 marca 2009, 15:26:57
Witam,
A jak przerobić ten skrypt do korzystania z https://www.itaktak.pl/iboa/auth/auth.html ? Coś mi nie wychodzi… można prosić o pomoc?
Dodaj komentarz: