Stworzyłem mały UserJS, który zamienia wszystkie linki do statusów w kokpicie:

blip

na przyciski dodające link do treści nowego statusu - Blip easyPermalinks, może komuś się przyda i ułatwi życie ;)

Pomożecie ?

15 lutego, 2008

Administracja serwisu Blogbox stwierdziła, że aby dany blog został dodany do ich katalogu musi uzyskać przewagę 50 głosów pozytywnych nad negatywnymi. Jako, że danego bloga można zgłosić tylko raz, a na uzbieranie tej przewagi głosów pozytywnych nad negatywnymi jest tylko miesiąc to jakby komuś moje wpisy o MooTools i nie tylko się przydały, prosiłbym o udział w głosowaniu. Z góry dzięki ;)

Prism

13 listopada, 2007

Aplikacja Prism od Mozilli to krok w kierunku aplikacji online działających podobnie jak standardowe aplikacje... Dzięki niej możemy w banalny sposób dodać sobie na pulpicie skrót do danej webaplikacji, a następnie uruchomić ją pojedynczym/podwójnym kliknięciem. Różnica w uruchamianiu polega na tym, że jest uruchamiane coś na wzór okrojonej wersji Firefoksa... I jest ona ogromna, bo odpalanie Fx z mnóstwem dodatków w porównaniu do uruchamiania się aplikacji poprzez Prism pozwala odczuć różnicę (przynajmniej u mnie ;) ). No i poza tym taka webaplikacja pojawia się elegancko na pasku zadań, a nie jako jedna z wielu zakładek.

Czytaj dalej...

Ile razy jeszcze ?

06 września, 2007

Ciekaw jestem ile razy jeszcze zobaczę gdzieś wpis o wprost niebywałych zmianach (ironia) w Google Reader _o_ Momentami blogosfera jest tak beznadziejna jak Wykop z linkami do kolejnych wersji alfa Opery...

Z lenistwa cz. IV

03 września, 2007

Mam dziś do zaprezentowania swój kolejny UserJS, przygotowany znów z myślą o serwisie Wykop.pl.

Image Hosted by ImageShack.us

Całkiem niedawno Wykop zyskał nową zaawansowaną wyszukiwarkę - pozwala ona sortować rezultaty wyszukiwania. Jednak żeby skorzystać z bardziej zaawansowanych opcji trzeba wpierw wpisać hasło do wyszukiwania, przejść na stronę wyników i dopiero tam można wybrać bardziej zaawansowane parametry wyszukiwania.

Nie ukrywam, że jest to według mnie nieprzemyślane. I dlatego właśnie powstał mój skrypt. Dodaje on za przyciskiem "szukaj" nowy przycisk "opcje" - po jego kliknięciu pojawią się zaawansowane opcje wyszukiwania, znane ze strony do której przenosi nas wyszukiwarka.

Ponadto skrypt pozwala od razu określić domyślne wartości checkboksów z uwzględnianymi w wyszukiwaniu właściwościami linków za pomocą linijki:

var conf = [false,true,true,true,true];

Pierwszy element tablicy (true lub false) decyduje o tym czy zaawansowane opcje mają być pokazywane od razu czy dopiero po kliknięciu przycisku "opcje". Elementy od drugiego do piątego odpowiadają za domyślne zaznaczenie checkboksów pozostałych opcji wyszukiwania.

Po instalacji tego skryptu prezentowana linijka będzie miała wpływ na wyniki wyszukiwania bez względu na to czy skorzystamy z przycisku "opcje" czy nie. U mnie na przykład wyszukiwarka domyślnie nie korzystała z pola URL, a teraz dzięki wspomnianej linijce kodu to robi domyślnie.

Skrypt można pobrać w wersji dla Firefoksa ze strony userscripts.org .

Oczywiście przygotowałem też wersję dla Opery :

// ==UserScript==
// @name                        Wykop advanced search button
// @description         This script add advanced search options to standard search
// @author                      Dziudek
// @version             0.1
// @include             http://*wykop.pl*
// ==/UserScript==

window.addEventListener("DOMContentLoaded",function(){

var d = document;
var conf = [false,true,true,true,true];
function $add(el){return d.createElement(el);}
function $(el){return d.getElementById(el);}

var f = $("search-form");
f.setAttribute("style","text-align: right;");

var b = $add("input");
b.setAttribute("type","button");
b.setAttribute("class","submit-button");
b.setAttribute("value","opcje");
b.addEventListener("click",hide,false);
function hide(){(conf[0]) ? $("adv-search").style.display = "none" : $("adv-search").style.display = "block";conf[0] = !conf[0];}

f.childNodes[1].appendChild(b);

var fs = $add("fieldset");
function checked(i){i++;if(conf[i]){return 'checked="checked"';}else{return false;}}
if(conf[0]){var dis = 'block';}else{var dis = 'none';}
fs.setAttribute("style","display:"+dis+";margin-top: -17px;");
fs.setAttribute("id","adv-search");
fs.innerHTML = '<select name="zakres" id="select-zakres" style="margin-right: 0;">' + 
                                        '<option value="1" selected="selected">wszystkie</option>' + 
                                        '<option value="2">wykopane</option>' + 
                                        '<option value="3">nie wykopane</option>' +
                                '</select>' +
                                '<input type="checkbox" class="chk-box" name="pole[tytul]" id="poletytul" ' + checked(0) + '/><label for="poletytul">Tytu\u0142</label>' +
                                '<input type="checkbox" class="chk-box" name="pole[opis]" id="poleopis" ' + checked(1) + '/><label for="poleopis">Opis</label>' +
                                '<input type="checkbox" class="chk-box" name="pole[URL]" id="poleURL" ' + checked(2) + '/><label for="poleURL">URL</label>' +       
                                '<input type="checkbox" class="chk-box" name="pole[tag]" id="poletag" ' + checked(3) + '/><label for="poletag">Tagi</label>';
f.appendChild(fs);

},false);