protected function execute($arguments = array(), $options = array())
 {
     // initialize the database connection
     $databaseManager = new sfDatabaseManager($this->configuration);
     $sfGuardUsers = sfFacebook::getGuardAdapter()->getNonRegisteredUsers();
     $this->logSection('info', count($sfGuardUsers) . " non registered users in your database");
     $chunks = array_chunk($sfGuardUsers, 50);
     $num_registered = 0;
     foreach ($chunks as $chunk) {
         // Call to facebook API
         $num_registered += sfFacebookConnect::registerUsers($chunk);
         $this->logSection('do', $num_registered . " registered.");
     }
 }
function run_facebook_register_users($task, $args)
{
    if (!count($args)) {
        throw new Exception('You must provide an application.');
    }
    $app = $args[0];
    define('SF_ROOT_DIR', sfConfig::get('sf_root_dir'));
    define('SF_APP', $app);
    require_once SF_ROOT_DIR . DIRECTORY_SEPARATOR . 'apps' . DIRECTORY_SEPARATOR . SF_APP . DIRECTORY_SEPARATOR . 'config' . DIRECTORY_SEPARATOR . 'config.php';
    sfContext::getInstance();
    $sfGuardUsers = sfFacebookConnect::getNonRegisteredUsers();
    echo count($sfGuardUsers) . " non registered users in your database\n";
    $chunks = array_chunk($sfGuardUsers, 50);
    $num_registered = 0;
    foreach ($chunks as $chunk) {
        $num_registered += sfFacebookConnect::registerUsers($chunk);
        echo $num_registered . " registered.\n";
    }
}
 /**
  * Creates an empty sfGuardUser with profile field Facebook UID set
  *
  * @param Integer $facebook_uid
  * @return sfGuardUser
  * @author fabriceb
  * @since 2009-05-17
  * @since 2009-08-11 ORM-agnostic version
  */
 public function createSfGuardUserWithFacebookUidAndCon($facebook_uid, $con)
 {
     $sfGuardUser = new sfGuardUser();
     $sfGuardUser->setUsername('Facebook_' . $facebook_uid);
     $this->setUserFacebookUid($sfGuardUser, $facebook_uid);
     sfFacebookConnect::newSfGuardConnectionHook($sfGuardUser, $facebook_uid);
     // Save them into the database using a transaction to ensure a Facebook sfGuardUser cannot be stored without its facebook uid
     try {
         if (method_exists($con, 'begin')) {
             $con->begin();
         } else {
             $con->beginTransaction();
         }
         $sfGuardUser->save();
         $sfGuardUser->getProfile()->save();
         $con->commit();
     } catch (Exception $e) {
         $con->rollback();
         throw $e;
     }
     $this->setDefaultPermissions($sfGuardUser);
     return $sfGuardUser;
 }
 /**
  * gets a sfGuardUser using the facebook_uid column of his Profile class or his email_hash
  *
  * @param Integer $facebook_uid
  * @param boolean $isActive
  * @return sfGuardUser
  * @author fabriceb
  * @since 2009-05-17
  */
 public function getSfGuardUserByFacebookUid($facebook_uid, $isActive = true)
 {
     $sfGuardUser = self::retrieveSfGuardUserByFacebookUid($facebook_uid, $isActive);
     if (!$sfGuardUser instanceof sfGuardUser) {
         if (sfConfig::get('sf_logging_enabled')) {
             sfContext::getInstance()->getLogger()->info('{sfFacebookConnect} No user exists with current facebook_uid');
         }
         $sfGuardUser = sfFacebookConnect::getSfGuardUserByFacebookEmail($facebook_uid, $isActive);
     }
     return $sfGuardUser;
 }
} catch (Exception $e) {
    $con->rollback();
    throw $e;
}
$sfGuardUser->delete();
$t->diag('sfFacebook::getGuardAdapter()->getSfGuardUserByEmailHashes Test');
$sfGuardUser = new sfGuardUser();
$sfGuardUser->setUsername('test');
sfFacebook::getGuardAdapter()->setUserProfileProperty($sfGuardUser, 'email_hash', sfFacebookConnect::getEmailHash('*****@*****.**'));
try {
    $con = Doctrine::getConnectionByTableName('sfGuardUser');
    $con->beginTransaction();
    $sfGuardUser->save();
    $sfGuardUser->getProfile()->save();
    $con->commit();
    $t->is(sfFacebook::getGuardAdapter()->getSfGuardUserByEmailHashes(array('trucmuche', sfFacebookConnect::getEmailHash('*****@*****.**')))->getUsername(), 'test');
} catch (Exception $e) {
    $con->rollback();
    throw $e;
}
$sfGuardUser->delete();
$t->diag('sfFacebook::getGuardAdapter()->createSfGuardUserWithFacebookUid Test');
sfFacebook::getGuardAdapter()->createSfGuardUserWithFacebookUid(9999999999.0);
$sfGuardUser = sfFacebook::getGuardAdapter()->getSfGuardUserByFacebookUid(9999999999.0);
$t->is($sfGuardUser->getUsername(), 'Facebook_9999999999');
$sfGuardUser->delete();
$t->diag('sfFacebook::getGuardAdapter()->setDefaultPermissions Test');
$permission = new sfGuardPermission();
$permission->setName('member');
$permission->save();
sfConfig::set('app_facebook_connect_user_permissions', array('member'));