There are 2 previous versions of this script.
// ==UserScript==
// @name Full Allegro Archive
// @namespace www.horacy.art.pl/full-allegro-archive-koniec-z-aukcjami-przeniesionymi-do-archiwum/ lub horacy007@gmail.com
// @description Skrypt dodaje w serwisie Allegro.pl linki do Publicznego Archiwum Allegro, umozliwiajac przegladanie starych aukcji, niedostepnych publicznie
// @include http*://*allegro.pl/*
// History
// v. 1.02 - 2011.10.21
// - felas mod
// v. 1.01 - 2009.01.26
// - Poprawiono support dla Opery (@include http*://*allegro.pl/* ;)
// v. 1.0 - 2009.01.15
// - Poprawiono żenujący bug z zielonymi komunikatami, które bywały podmieniane na numer aukcji
// - Serwis paa.pl zmienił system wyszukiwania i prezentacji wyników, przez co Full Allegro Archive przestało działać. Ta wersja przywraca prawidłowe działanie.
// - Skrypt będzie działać także na stronach typu moto.allegro.pl i podobnych (thx to Pawelsky)
// v. 0.998 - 2009.01.10 (środek nocy, po pijaku)
// - problem był z wyświetlaniem niektórych linków. Naprawiłem. A co...
// v. 0.997 - 2009.01.10 (pora obiadowa, bez obiadu)
// - Bug fixed: http://allegro.pl/show_user_auctions.php?uid=* interpretuje jako aukcje zamieniajac nazwe uzytkownika na link do archiwum aukcji o numerze uzytkownika
// - Od tej wersji skrypt uruchamia się na WSZYSTKICH podstronach wewnątrz allegro.pl
// - Uaktualniono linki do skryptu FAA
// - Naprawiono bug, który podmieniał wszystkie zielone mesydże na numery aukcji
// v. 0.900 - 2009.01.10 (rano, przed śniadaniem i przed WOSP)
// - Bug fix: Linki na stronach nieznalezionych auckji generowane są dobrze dla http://allegro.pl/show_item.php?item=*, ale zle dla tych http://allegro.pl/item*_*.html. Naprawiono.
// - wyświetlanie DETEKTYWA na stronach listy bieżących aukcji danego użytkownika
// - wyświetlanie linku do DETEKTYWA użytkownika, którego stronę właśnie przeglądamy (detektywi kontrahentów są już wyświetlani)
// - skrypt dorysowuje odpowiednie linki także w panelu administracyjnym (my_allegro.php*)
// v. 0.789
// - Poprawiono bug z niewłaściwym podpinaniem detektywów pod nazwy użytkowników
// - Zmiana "Powered by" na "Wspierane przez"
// v. 0.777 - 2009.01.09
// - przy nazwach loginów użytkowników dodaje link do DETEKTYWA serwisu paa.pl, dzięki czemu jednym kliknięciem można prześledzić historię transakcji użytkownika i otrzymanych za nie komentarzy - w przejrzystej tabelce z tytułami aukcji, obrazkami, etc.
// v. 0.666 - 2009.01.08 :
// - na stronach użytkownika podmienia “numery” niedostępnych dla zwykłych użytkowników aukcji, na odpowiednie linki prowadzące do serwisu Publiczne Archiwum Allegro.
// - na stronach nieistniejących aukcji wyświetla stosowny link wraz z informacją o możliwości obejrzenia tej aukcji w zewnętrznym serwisie
// TODO:
// - usunąć SPAN w argumencie wysyłanym do detektywa, na "innych aukcjach użytkownika"
// ==/UserScript==
(function()
{
// DODAWANIE LINKU DO STRONY NIEZNALEZIONEJ AUKCJI
if((document.location.href.indexOf("/show_item")!=-1||document.location.href.indexOf("/item")!=-1)) // msg to kazdy zielony box, dlatego upewniamy sie, ze aukcja zostanie podmieniona wtedy kiedy trzeba
{
zleAukcjeNormalPage = document.evaluate(
"//div[@class='msg']/b",
document,
null,
XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,
null);
for (var i = 0; i < zleAukcjeNormalPage.snapshotLength; i++)
{
var tresc_msg = zleAukcjeNormalPage.snapshotItem(i).innerHTML;
if(tresc_msg.indexOf("przeniesiona do archiwum")!=-1)
{
thisMsg = zleAukcjeNormalPage.snapshotItem(i);
var info = document.createElement('p');
var aukcja = document.location.href.match(/[0-9]+$/);
thisMsg.innerHTML = '<a href="http://archiwumallegro.pl/szukaj/?itemid='+aukcja+'">Strona przedmiotu została przeniesiona do archiwum: kliknij, aby ją zobaczyć.</a>';
info.innerHTML = '<a href="http://www.horacy.art.pl/full-allegro-archive-koniec-z-aukcjami-przeniesionymi-do-archiwum/" style="text-decoration:none;">Wspierane przez Full Allegro Archive</a>';
thisMsg.appendChild(info);
}
}
}
// DODAWANIE DETEKTYWA
// na stronie użytkownika pierwszy USER nie ma linka, przez co nie można odniesc sie do niego poszukując "a" i wszystko się miesza, podczas, gdy na innych stronach wszystko jest normalnie.
// zaznacza <a> w spanach
detektywUser = document.evaluate(
"//span[@class='uname']/a",
document,
null,
XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,
null);
// zaznacza spany
spanUser = document.evaluate(
"//span[@class='uname']",
document,
null,
XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE,
null);
if (spanUser.snapshotLength!=detektywUser.snapshotLength)
{
//wystepuje na stronie usera (pierwsza nazwa usera nielinkowana, stąd problem)
var pierwszy = spanUser.snapshotItem(0).innerHTML;
var info2 = document.createElement('b');
info2.innerHTML = ' - <a href="http://archiwumallegro.pl/detektyw/?search='+pierwszy+'" style="font-size:0.8em; text-decoration:none; color:black;">Detektyw</a><a href="http://www.horacy.art.pl/full-allegro-archive-koniec-z-aukcjami-przeniesionymi-do-archiwum/" style="text-decoration:none;font-size:0.7em;">: FAA</a>';
spanUser.snapshotItem(0).appendChild(info2);
}
for (var i = 0; i < detektywUser.snapshotLength; i++)
{
var user = detektywUser.snapshotItem(i).innerHTML;
var info = document.createElement('b');
info.innerHTML = ' - <a href="http://archiwumallegro.pl/detektyw/?search='+user+'" style="font-size:0.8em; text-decoration:none; color:black;">Detektyw</a><a href="http://www.horacy.art.pl/full-allegro-archive-koniec-z-aukcjami-przeniesionymi-do-archiwum/" style="text-decoration:none;font-size:0.7em;">: FAA</a>';
if (spanUser.snapshotLength==detektywUser.snapshotLength)
{
//wszystkie nazwy userów są linkowane (np. strony aukcji)
spanUser.snapshotItem(i).appendChild(info);
} else
{
//wystepuje na stronie usera (pierwsza nazwa usera nielinkowana, stąd problem)
spanUser.snapshotItem(i+1).appendChild(info);
}
}
}) ();