Example #1
0
 }
 if ($USER['email'] == null) {
     $ERRORS[] = 'E-mail address was blank.';
 } elseif (preg_match('/^[a-z0-9_+.]{1,64}@([a-z0-9-.]*){1,}\\.[a-z]{1,5}$/i', $USER['email']) == false) {
     $ERRORS[] = 'Invalid e-mail address specified.';
 }
 if (sizeof($ERRORS) > 0) {
     draw_errors($ERRORS);
 } else {
     // Create an user and set some base attrs.
     $new_user = new User($db);
     $new_user->setUserName($USER['user_name']);
     $new_user->setRegisteredIpAddr($_SERVER['REMOTE_ADDR']);
     $new_user->setPassword($USER['password']);
     $new_user->setCurrentSaltExpiration($new_user->sysdate());
     $new_user->setLastActivity($new_user->sysdate());
     $new_user->setAccessLevel('user');
     $new_user->setEmail($USER['email']);
     $new_user->setAge($USER['age']);
     $new_user->setGender($USER['gender']);
     $new_user->setProfile($USER['profile']);
     $new_user->setCurrency($APP_CONFIG['starting_funds']);
     $new_user->setUserTitle('User');
     $new_user->setTextareaPreference('tinymce');
     $new_user->setDatetimeCreated($new_user->sysdate());
     $new_user->setDatetimeLastPost($new_user->sysdate());
     $new_user->setPasswordResetRequested($new_user->sysdate());
     $new_user->setTimezoneId(54);
     // 54 = UTC
     $new_user->setDatetimeFormatId(1);
     // Y-m-d H:i:s
 /**
  * Set logged_user value
  *
  * @access public
  * @param User $value
  * @param boolean $remember Remember this user 
  * @param boolean $set_last_activity_time Turned off in case of feed login
  * @return null
  * @throws DBQueryError
  */
 function setLoggedUser(User $user, $remember = false, $set_last_activity_time = true, $set_cookies = true)
 {
     trace(__FILE__, 'setLoggedUser():begin');
     if ($set_last_activity_time) {
         $user->setLastActivity(DateTimeValueLib::now());
         trace(__FILE__, 'setLoggedUser():user->save()');
         $user->save();
     }
     // if
     if ($set_cookies) {
         $expiration = $remember ? config_option('remember_login_lifetime', 3600) : 3600;
         Cookie::setValue('id' . TOKEN_COOKIE_NAME, $user->getId(), $expiration);
         Cookie::setValue(TOKEN_COOKIE_NAME, $user->getTwistedToken(), $expiration);
         if ($remember) {
             Cookie::setValue('remember' . TOKEN_COOKIE_NAME, 1, $expiration);
         } else {
             Cookie::unsetValue('remember' . TOKEN_COOKIE_NAME);
         }
         // if
     }
     // if
     trace(__FILE__, 'setLoggedUser():end');
     $this->logged_user = $user;
 }
 /**
  * Set logged_user value
  *
  * @access public
  * @param User $value
  * @param boolean $remember Remember this user for 2 weeks (configurable)
  * @param DateTimeValue $set_last_activity_time Set last activity time. This property is turned off in case of feed 
  *   login for instance
  * @return null
  * @throws DBQueryError
  */
 function setLoggedUser(User $user, $remember = false, $set_last_activity_time = true)
 {
     if ($set_last_activity_time) {
         $user->setLastActivity(DateTimeValueLib::now());
         $user->save();
     }
     // if
     $expiration = $remember ? REMEMBER_LOGIN_LIFETIME : SESSION_LIFETIME;
     Cookie::setValue('id' . TOKEN_COOKIE_NAME, $user->getId(), $expiration);
     Cookie::setValue(TOKEN_COOKIE_NAME, $user->getTwistedToken(), $expiration);
     if ($remember) {
         Cookie::setValue('remember' . TOKEN_COOKIE_NAME, 1, $expiration);
     } else {
         Cookie::unsetValue('remember' . TOKEN_COOKIE_NAME);
     }
     // if
     $this->logged_user = $user;
 }
 /**
  * Set logged_user value
  *
  * @access public
  * @param User $value
  * @param boolean $remember Remember this user for 2 weeks (configurable)
  * @param DateTimeValue $set_last_activity_time Set last activity time. This property is turned off in case of feed
  *   login for instance
  * @return null
  * @throws DBQueryError
  */
 function setLoggedUser(User $user, $remember = false, $set_last_activity_time = true, $set_cookies = true)
 {
     if ($set_last_activity_time) {
         $last_activity_mod_timestamp = array_var($_SESSION, 'last_activity_mod_timestamp', null);
         if (!$last_activity_mod_timestamp || $last_activity_mod_timestamp < time() - 60 * 10) {
             $user->setLastActivity(DateTimeValueLib::now());
             // Disable updating user info
             $old_updated_on = $user->getUpdatedOn();
             $user->setUpdatedOn(DateTimeValueLib::now());
             $user->setUpdatedOn($old_updated_on);
             $user->save();
             $_SESSION['last_activity_mod_timestamp'] = time();
         }
     }
     // if
     if ($set_cookies) {
         $expiration = $remember ? REMEMBER_LOGIN_LIFETIME : SESSION_LIFETIME;
         Cookie::setValue('id', $user->getId(), $expiration);
         Cookie::setValue('token', $user->getTwistedToken(), $expiration);
         Cookie::setValue('cn', md5(array_var($_SERVER, 'REMOTE_ADDR', "")));
         if ($remember) {
             Cookie::setValue('remember', 1, $expiration);
         } else {
             Cookie::unsetValue('remember');
         }
         // if
     }
     $this->logged_user = $user;
 }