Exemplo n.º 1
0
 /**
  * @userCache
  *
  * @param int $userId   ユーザID
  * @param int $statusId ステータスID
  *
  * @return Logics_Result
  */
 public function remove($userId, $statusId)
 {
     $result = new Logics_Result();
     $aStatus = new Status($statusId);
     if ($aStatus->isSelected() && $aStatus->user_id === $userId) {
         $aStatus->delete();
     } else {
         $result->failure();
     }
     return $result;
 }
Exemplo n.º 2
0
 /**
  * @transaction
  *
  * @param User $aUser
  *
  * @return Logics_Result
  */
 public function preregister(User $aUser)
 {
     $result = new Logics_Result();
     $aUser->created_at = $aUser->updated_at = now();
     if ($errors = $this->validateModel($aUser)) {
         return $result->setErrors($errors);
     }
     $actKey = md5hash();
     $aUser->password = md5($aUser->password);
     if (ENVIRONMENT === DEVELOPMENT) {
         $aUser->save();
     } else {
         $aUser->save(array("act_key" => $actKey));
     }
     $this->mail->sendActivationKey($aUser->email, $actKey);
     return $result;
 }
Exemplo n.º 3
0
 /**
  * @param int    $userId   ユーザID
  * @param string $resource 画像データ
  *
  * @return Logics_Result
  */
 public function uploadIcon($userId, $resource)
 {
     $result = new Logics_Result();
     if ($this->imanage->validate($resource)) {
         $aUser = new User($userId);
         if ($aUser->isActive()) {
             if ($aUser->image !== DEFAULT_IMAGE_NAME) {
                 $this->imanage->delete($aUser->image);
             }
             $aUser->save(array("image" => $this->imanage->upload($resource)));
             $result->aUser = $aUser;
         } else {
             throw new Exception_UserNotFound(__METHOD__);
         }
     } else {
         $result->setErrors(array("サイズが大きすぎるか、非対応のフォーマットです"));
     }
     return $result;
 }
Exemplo n.º 4
0
 /**
  * @param int $userId      リクエストされたユーザのID
  * @param int $requestorId リクエストしたユーザのID
  *
  * @return Logics_Result
  */
 public function deny($userId, $requestorId)
 {
     $result = new Logics_Result();
     $aUser = new User($userId);
     $requestor = new User($requestorId);
     if ($aUser->isActive() && $requestor->isActive()) {
         $request = new Request();
         $request->setCondition("user_id", $requestor->id);
         $request->setCondition("request_id", $aUser->id);
         $request->delete();
     } else {
         $result->failure();
     }
     return $result;
 }