Beispiel #1
0
 /**
  * @param SJB_User $user
  * @return array|bool|int
  */
 public static function saveUser($user)
 {
     $user_group_sid = $user->getuserGroupSID();
     $user_exists = !is_null($user->getSID());
     if (!is_null($user_group_sid)) {
         $user_group_info = SJB_UserGroupManager::getUserGroupInfoBySID($user_group_sid);
         $userName = $user->details->getProperty('username')->getValue();
         if (isset($user_group_info['user_email_as_username']) && $user_group_info['user_email_as_username'] == true && strpos($userName, 'jobg8') === false) {
             $useremail = $user->details->getProperty('email')->getValue();
             if (!is_array($useremail) || !array_key_exists('original', $useremail)) {
                 $user->details->getProperty('username')->setValue($useremail);
             } else {
                 $user->details->getProperty('username')->setValue($useremail['original']);
             }
         }
         parent::saveObject("users", $user);
         if (!$user_exists) {
             SJB_DB::query("UPDATE ?w\n\t\t\t\t\t\t   SET `registration_date` = NOW(), `activation_key` = ?s, `verification_key` = ?s\n\t\t\t\t\t\t   WHERE `sid` = ?n", "users", $user->getActivationKey(), $user->getVerificationKey(), $user->getSID());
         }
         return SJB_DB::query("UPDATE ?w SET `user_group_sid` = ?n WHERE `sid` = ?n", "users", $user_group_sid, $user->getSID());
     }
     return false;
 }