/** * @static * @param SJB_User $user * @return bool */ public static function saveUser(SJB_User $user) { $newUserInDB = !$user->isSavedInDB(); if ($newUserInDB) { $user->createActivationKey(); $user->createVerificationKey(); } SJB_UserDBManager::saveUser($user); SJB_Cache::getInstance()->clean('matchingAnyTag', array(SJB_Cache::TAG_USERS)); if ($newUserInDB) { SJB_Event::dispatch('onAfterUserCreated', $user); if (!$user->isSubuser()) { //add default user notifications $userNotifications = new SJB_UserNotificationsManager($user); $userNotifications->addDefaultUserNotifications(); } } if (SJB_Authorization::isUserLoggedIn()) { SJB_Authorization::updateCurrentUserSession(); } return true; }