/** * @param int $access_flag * @param User $mTargetUser */ private function apply($access_flag, $mTargetUser) { if ($this->context_company->isEmpty()) { throw new NotFoundCompanyException(); } if ($access_flag == 2) { throw new UserAccessDeniedException(); } $mAccessManager = new UserAccessManager(); $tempUserFields = array(); if ($mAccessManager->can($access_flag, 'id')) { $tempUserFields['id'] = intval($mTargetUser->getId()); } if ($mAccessManager->can($access_flag, 'email')) { $tempUserFields['email'] = $mTargetUser->getEmail(); } if ($mAccessManager->can($access_flag, 'first_name')) { $tempUserFields['first_name'] = $mTargetUser->getFirstName(); } if ($mAccessManager->can($access_flag, 'last_name')) { $tempUserFields['last_name'] = $mTargetUser->getLastName(); } if ($mAccessManager->can($access_flag, 'patronymic')) { $tempUserFields['patronymic'] = $mTargetUser->getPatronymicName(); } if ($mAccessManager->can($access_flag, 'photo')) { $tempUserFields['photo'] = $mTargetUser->getPhoto(); } if ($mAccessManager->can($access_flag, 'phone')) { $tempUserFields['phone'] = $mTargetUser->getPhone(); } if ($mAccessManager->can($access_flag, 'register_time')) { $tempUserFields['register_time'] = intval($mTargetUser->getRegisterTime()); } if ($mAccessManager->can($access_flag, 'last_logged_time')) { $tempUserFields['last_logged_time'] = intval($mTargetUser->getLastLoggedTime()); } if ($mAccessManager->can($access_flag, 'company_id')) { $tempUserFields['company_id'] = intval($mTargetUser->getCompanyId()); } if ($mAccessManager->can($access_flag, 'access_flag')) { $tempUserFields['access_flag'] = intval($mTargetUser->getAccessFlag()); } if ($mAccessManager->can($access_flag, 'access_flag')) { $tempUserFields['user_group'] = $mTargetUser->getUserGroupKey(); } if ($mAccessManager->can($access_flag, 'sms_notify')) { $tempUserFields['sms_notify'] = $mTargetUser->isSmsNotificationEnabled(); } if ($mAccessManager->can($access_flag, 'recent_activity_time')) { $tempUserFields['recent_activity_time'] = intval($mTargetUser->getRecentActivityTime()); } $this->result = $tempUserFields; }
public function userUploadPhotoAction() { $check_auth = new CheckAuthorization($this->getQemyDb()); $check_auth->check(); $user = new User($this->getQemyDb(), $check_auth->getUserRow()); $user->setAuthChecker($check_auth); if (!$user->isAuth()) { Application::denied(); $this->setData(array('result' => false)); return $this; } $file_name = date("mdy") . '_' . sha1($user->getId() . $user->getEmail() . time() . rand(1, 1000000000.0)); $storage_host = Application::$config['user_files_opt']['host']; $image_url = Application::$config['user_files_opt']['protocol'] . '://' . $storage_host . '/img/profile/' . $file_name . '.png'; try { $mWideImage = WideImage::loadFromUpload('image'); $resizedImage = $mWideImage->resize(200, 200, 'outside', 'down')->crop('center', 'center', 200, 200); $resizedImage->saveToFile('../' . $storage_host . '/img/profile/' . $file_name . '.png'); $user->setPhoto($image_url); $result = true; } catch (WideImage_Exception $err) { $result = false; } $this->setData(array('result' => $result)); return $this; }