[ Milos911 @ 04.09.2012. 11:10 ] @
Kod
Code (javascript):



$(document).ready(function(){
     window.fbAsyncInit = function() {
          FB.init({
               appId: 'xxxxxxx',
               cookie: true,
               xfbml: true,
               oauth: true
          });
          FB.Event.subscribe('auth.login', function(response) {
               window.location.reload();
          });
          FB.Event.subscribe('auth.logout', function(response) {
               window.location.reload();
          });
     };
     (function() {
          var e = document.createElement('script'); e.async = true;
          e.src = document.location.protocol +
          '//connect.facebook.net/en_US/all.js';
          document.getElementById('fb-root').appendChild(e);
     }());
     
     $("#fb_login_status_check").click(function(){
          FB.getLoginStatus(function(response) {
                          console.log(response);
               if (response.status === 'connected') {
                    // the user is logged in and has authenticated your
                    // app, and response.authResponse supplies
                    // the user's ID, a valid access token, a signed
                    // request, and the time the access token
                    // and signed request each expire
                    var uid = response.authResponse.userID;
                    var accessToken = response.authResponse.accessToken;
                    console.log('User logged in and autenticated');
                 } else if (response.status === 'not_authorized') {
                    // the user is logged in to Facebook,
                    // but has not authenticated your app
                    console.log('User logged in, but not autorized');
                 } else {
                    // the user isn't logged in to Facebook.
                    console.log('User not logged in');
                 }
          }, true);
     
     
     })
     
     $("#fb_logout_button").click(function() {
          if(FB.logout(function(response) {
               console.log('User logout.');
          })){
               console.log('User  logout.');
          }else{
          console.log('User didnt logout.');
          }
     });
     
     $("#fb_login_button").click(function() {
          FB.login(function(response) {
               if (response.authResponse) {
                    console.log('Welcome!  Fetching your information.... ');
                    FB.api('/me', function(response) {
                    console.log('Good to see you, ' + response.name + '.');
                    });
               }else{
                    console.log('User cancelled login or did not fully authorize.');
               }
          },
          {
               scope: 'email,user_likes'
          });
     });
     

     });

 

FB.getLoginStatus mi vraca:
authResponse null
status "unknown"
iako sam ulogovan (proveravam sa php sdk-om).

Posle ne mogu da se izlogujem, jer nemam access token. Poludeh vise, zaebavam se sa ovim dva dana (i probijam deadline zestoko). Ako imate bilo koji savet, pliz napisite.
[ ivan.a @ 05.09.2012. 21:03 ] @
Da li ima šanse da koristiš php sdk? Mislim da je mnogo lakše.

Facebook API zaista može da strašno baguje, tako da ga izbegavam kad god mogu...
[ Milos911 @ 08.09.2012. 12:04 ] @
Zbudzio sam nesto sa php sdk-om. JS mi se vise svideo, jer korisnik ostaje na sajtu, al sta sad da se radi.
Dva pitanja: Kako normalno izlogovati korisnika. Koristio sam sdk funkciju da se dobije logout url, al korisnik nije izlogovan dok ne ubijem sesiju. Jbo ih sdk na mom serveru, koji ne brise njihove podatke iz moje sesije... Znate li neko resenje, kako izlogovati korisnika bez session_destroy()?

I drugo pitanje, kad korisnik daje dozvolu da aplikacija pise na njegovom zidu, jel moguce da default za "ko moze da vidi postove koje aplikacija objavi na zidu" bude "Everyone"? Guglao sam dosta, al malo je tesko naci (ne znam sta da pitam google)...