Parti dal presupposto che, finchè l'utente non è loggato a facebook attraverso la tua applicazione, non puoi ottenere nessun dato su di lui tranne il fatto che sia loggato o meno.
Tuttavia, puoi registrare degli event listeners nel processo che si collega a facebook, guarda questo pseudo codice:
codice:
window.fbAsyncInit = function() {
// init the FB JS SDK
FB.init({
appId : '<App ID from the App Dashboard>',
channelUrl : '<Channel File for x-domain communication>',
status : true, // check the login status upon init?
cookie : true, // set sessions cookies to allow your server to access the session?
xfbml : true // parse XFBML tags on this page?
});
// Additional initialization code such as adding Event Listeners goes here
FB.Event.subscribe('auth.login', function (response) {
FB.api('/me', function(response) {
if(response.id!==undefined) {
abilita_fb_login(response);
}
});
});
...
}
In questo caso ho usato FB.Event.subscribe con l'evento auth.login, e facebook mi ritorna un oggetto response.
Se l'utente è loggato, verrà eseguita la funzione interna, altrimenti no.
A questo punto com il metodo FB.api ed il parametro '/me' chiedo a facebook informazioni sull'utente.
Naturalmente se l'utente non è loggato o non ha autorizzato l'app, facebook non risponde nulla!