Filmaster

your movie guide

Twój progres

0%

Oceniłeś 0/15 filmów. Oceń 15 więcej & sprawdź co obejrzeć dziś wieczorem!

Facebook Connect na Filmasterze


Ostatnio było to trochę cicho, ale to nie znaczy, że się obijaliśmy. Po dwóch tygodniach testów wczoraj odświeżyliśmy kod na Filmaster.pl co przyniosło nieco nowych funkcji, kilka poprawek błędów i jeden większy ficzer: integrację z Facebookiem.
O co chodzi z Facebook Connect?
Coraz więcej z Was ma profil na Facebooku. Ten społecznościowy serwis rozwija się w Polsce z ogromną szybkością — już przerósł Grono.net i zbliża się do Naszej Klasy. Nie każdemu chce się zakładać konto na nowym serwisie jak Filmaster tylko po to, żeby skomentować jakiś wpis. Stąd pomysł na integrację.
Facebook Connect działa na nieco podobnej zasadzie jak OpenID, które obsługujemy od początku istnienia Filmastera. Pozwala na zalogowanie się na nowy serwis bez konieczności zakładania w nim konta. Wystarczy być zalogowanym na Facebooku i jednym przyciskiem (serio!) automat założy konto na Filmasterze łącząc je z kontem facebookowym.
Jak to dokładnie działa?
Prosto. Wchodzisz na Filmaster.pl chcąc skomentować jakiś wpis. Zamiast rejestrować się, wymyślać login i hasło, po prostu:


  1. Klikasz w przycisk Facebook pod notką czy recenzją (lub na stronie logowania).

  2. Powinno wyskoczyć okienko (pop-up) które spyta Cię czy chcesz połączyć swoje konto Facebookowe z nowym kontem na Filmasterze.

  3. Po akceptacji, automatycznie zakładane jest w tle nowe konto na Filmasterze na podstawie Twoich danych z Facebooka. Tworzona jest nazwa użytkownika w schemacie imięnazwisko, ściągany jest Twój facebookowy awatar. Uwierzytelnianie działa od tej pory po stronie Facebooka. Jeśli jesteś zalogowany tam, automatycznie zalogowany jesteś również na Filmasterze.

  4. I tyle

Co jeśli nie podoba mi się mój automatycznie wygenerowany nick
Po prostu go zmieniasz! Umożliwiamy jednorazową zmianę nazwy użytkownika w przypadku rejestracji przez Facebook.
Możesz też przypisać swoje stare konto na Filmasterze do nowego, założonego przez Facebook (o ile oczywiście pamiętasz do niego hasło). Dzięki temu zawsze będąc zalogowany a Facebooku, również na Filmasterze będziemy Cię automatycznie logować. Zawsze to kilka kliknięć mniej
I co? To tyle?
Tak, na razie to tyle. Ale to tylko pierwszy krok. Planujemy o wiele bardziej zaawansowaną integrację z Facebookiem i innymi popularnymi serwisami społecznościowymi jak Twitter, Flaker czy Blip. Na pewno będzie można automatycznie wysyłać informacje o nowych wpisach na Filmasterze na te serwisy, zapraszać swoich znajomych na Filmastera i robić inne rzeczy o których jeszcze nawet nie pomyśleliśmy.
Planujemy też napisać aplikację dla Facebooka umożliwiającą ocenianie filmów bezpośrednio w tym portalu i porównanie gustów filmowych z Twoimi znajomymi na FB.
Wszystko w swoim czasie.
Jak to działa technicznie?
Jeśli nie jesteś programistą/programistką, przestań czytać natychmiast bo możesz przypadkiem uznać, że cię obrażamy (co nie będzie jednak prawdą).
No więc, żeby w ogóle udała się taka integracja o której mowa powyżej, trzeba było zaimplementować klienta Facebooka w django (framework zasilający Filmastera). Zrobiliśmy to wykorzystując Facebook API dl a Facebook Connect (głównie JavaScript połączone z kwerendami w dziwadle nazwanym FbSQL). To pozwoliło na ściągnięcie z Facebooka imienia i nazwiska zalogowanego użytkownika oraz jego awatara, a także obsługę uwierzytelniania po stronie FB.
Nie skorzystaliśmy z żadnych istniejących rozwiązań integrujących Facebook Connetc w django, bo żadne nie działało tak jak chcieliśmy. Zakodowaliśmy to sami, a dokładnie, zakodował to sam Riklaunim. Dobra wiadomość jest taka, że Filmaster to projekt open source, więc całość kodu jest dostępna do powszechnego wykorzystania na licencji AGPLv3. Wystarczy zajść na bitbucket.org/filmaster i sklonować testowe repozytorium z kodem Filmastera. Kod integrujący z Facebookiem znajduje się w module facebook_connect. Bierzcie i używajcie!
Jeśli ta którka notka to dla Ciebie za mało, zasubskrybuj koniecznie bloga Riklaunima, bo na dniach zamierza on opisać cały proces szczegółowo.
Bugi, pluskwy, karaluchy…
Testowaliśmy wprawdzie integrację ostro przez dwa tygodnie, ale to nie znaczy, że nie przeoczyliśmy żadnych paskudnych błędów (choć robiliśmy wszystko co w naszej mocy).
Zgłaszajcie proszę wszelkie problemy na Forum Filmastera albo tu pod wpisem, albo mailem na filmaster@filmaster.pl.
Jedyny mało babolek o którym wiemy to problem przy wylogowaniu. Po wciśnięciu przycisku Wyloguj (niebieski przycisk Facebooka), jesteśmy wprawdzie wylogowywani, ale trzeba odświeżyć stronę, żeby to było widać.
Dodatkowo, awatary z Facebooka mają wielkość maksymalnie 50×50 pikseli, czyli nieco mniej niż standard na Filmasterze. Nie chcielismy ich na siłę powiększać, bo wyszły by z tego jakieś potwory, więc zostawilismy jak jest. Oczywiście najlepiej wgrać własnego Filmasterowego awatara w ciemnych okularach.
Głoś dobrą nowinę!
Dzięki za dotrwanie do końca tego długawego wpisu. Chcielibyśmy Was teraz poprosić o przesłanie swoim facebookowym znajomym (polskim i zagranicznym) informacji o tym, że warto zarejestrować się na Filmasterze i że jest to teraz jeszcze prostsze niż wcześniej. Pamiętajcie też o wstąpieniu do Klubu Filmastera na Facebooku. Dobijamy właśnie do 200 członków
No i nie zdążyliśmy opowiedzieć o mniejszych poprawkach jakie udało się przy okazji wprowadzić na stronie… może uda się w kolejnym wpisie, ale na razie to tyle. Pozdrowienia,
Borys (michuk), Adam (adz) i Piotr (Riklaunim)

Zaloguj się aby skomentować lub połącz przez Dołącz przez Facebook