function onAuthenticate($credentials, $options, &$response)
 {
     if (defined('_JOOMLAFACEBOOK')) {
         if ($credentials['username'] == 'FACEBOOK' || $credentials['username'] == 'FACEBOOKSESSION') {
             $facebook = JoomlaFacebook::getRestClient();
             $fbsession = array();
             if ($credentials['username'] == 'FACEBOOK') {
                 $fbsession = $facebook->auth_getSession($credentials['password']);
             }
             if ($credentials['username'] == 'FACEBOOKSESSION' && $credentials['password'] != '') {
                 $facebook->session_key = $credentials['password'];
                 $fbsession['uid'] = $facebook->users_getLoggedInUser();
             }
             if ($fbsession['uid'] != '') {
                 $query = 'SELECT first_name,last_name,sex,current_location.zip,current_location.country,timezone FROM user WHERE uid=' . $fbsession['uid'];
                 $fbuserprofile = $facebook->fql_query($query);
                 $response->status = JAUTHENTICATE_STATUS_SUCCESS;
                 @($response->username = '******' . $fbsession['uid']);
                 @($response->email = $fbsession['uid'] . '@facebook.com');
                 @($response->fullname = $fbuserprofile[0]['first_name'] . ' ' . $fbuserprofile[0]['last_name']);
                 @($response->gender = strtoupper(substr($fbuserprofile[0]['sex'], 0, 1)));
                 @($response->postcode = $fbuserprofile[0]['current_location']['zip']);
                 @($response->country = $fbuserprofile[0]['current_location']['country']);
                 @($response->timezone = $fbuserprofile[0]['timezone']);
                 return;
             }
         }
     }
     $response->status = JAUTHENTICATE_STATUS_FAILURE;
 }