Beispiel #1
0
 public function action()
 {
     $user_id = Auth::currentUserId();
     if ($user_id) {
         $html = LoginTemplate::getContent('Пользователь уже авторизован', false);
         LayoutBootstrap::render($html);
         return;
     }
     if (!array_key_exists('login', $_POST) && !array_key_exists('password', $_POST)) {
         $content = LoginTemplate::getContent();
         LayoutBootstrap::render($content);
         return;
     }
     /*
         $is_ip_Banned = UMSHelper::checkBanByCurrentIP();
         if ($is_ip_Banned) {
             $content = UMSSignonTemplate::getContent('Ваш вход заблокирован');
             UMSLayoutTemplate::render("Авторизация", $content);
             return;
         }
     */
     $login = POSTAccess::getOptionalPostValue('login');
     $password = POSTAccess::getOptionalPostValue('password');
     $user_id = Auth::getUserIdByCredentials($login, $password);
     if (!$user_id || $password == "") {
         $content = LoginTemplate::getContent('Неправильный адрес или пароль');
         LayoutBootstrap::render($content);
         return;
     }
     $user_obj = User::factory($user_id);
     /*
     if ($user_obj->isBanned()) {
         $content = UMSSignonTemplate::getContent('Ваш аккаунт забанен');
         UMSLayoutTemplate::render("Авторизация", $content);
         return;
     }
     
     if (!$user_obj->getEmailIsConfirmed()) {
         $resend_activation_main_url = UMSResendUMSEmailActivationAction::getUrl($user_obj->getId());
         $content = UMSSignonTemplate::getContent('Ваша учетная запись не активирована.<br><a href="' . $resend_activation_main_url . '">Отправить ссылку повторно</a>');
         UMSLayoutTemplate::render("Авторизация", $content);
         return;
     }
     */
     Auth::startUserSession($user_obj->getId());
     // set extra cookies
     if (!empty(AuthConfig::getExtraCookiesArr())) {
         $extra_cookies_arr = AuthConfig::getExtraCookiesArr();
         foreach ($extra_cookies_arr as $cookie_name => $cookie_value) {
             setcookie($cookie_name, $cookie_value, time() + Auth::SESSION_LIFETIME_SECONDS, '/', Auth::sessionCookieDomain(), false, true);
         }
     }
     $redirect = '/';
     $success_redirect_url = POSTAccess::getOptionalPostValue('success_redirect_url', '');
     if ($success_redirect_url != '') {
         $redirect = $success_redirect_url;
     }
     \OLOG\Redirects::redirect($redirect);
 }
 public function action()
 {
     Exits::exit403If(!Operator::currentOperatorHasAnyOfPermissions([Permissions::PERMISSION_PHPAUTH_MANAGE_OPERATORS]));
     $permissiontouser_obj = new OperatorPermission();
     $permissiontouser_obj->setOperatorId($this->operator_id);
     $permissiontouser_obj->setPermissionId($this->permission_id);
     $permissiontouser_obj->save();
     \OLOG\Redirects::redirect((new OperatorEditAction($this->operator_id))->url());
 }
Beispiel #3
0
 public function action()
 {
     Auth::logout();
     // remove extra cookies
     if (!empty(AuthConfig::getExtraCookiesArr())) {
         $extra_cookies_arr = AuthConfig::getExtraCookiesArr();
         foreach ($extra_cookies_arr as $cookie_name => $cookie_value) {
             //setcookie($cookie_name, $cookie_value, time() + Auth::SESSION_LIFETIME_SECONDS, '/', Auth::sessionCookieDomain());
             setcookie($cookie_name, "", 1000, '/', Auth::sessionCookieDomain(), false, true);
         }
     }
     $redirect = '/';
     if (isset($_GET['destination'])) {
         $redirect = Sanitize::sanitizeUrl($_GET['destination']);
     }
     \OLOG\Redirects::redirect($redirect);
 }
Beispiel #4
0
 protected static function swapModelWeightOperation()
 {
     $model_class_name = POSTAccess::getRequiredPostValue('_class_name');
     // TODO: constant for field name
     \OLOG\CheckClassInterfaces::exceptionIfClassNotImplementsInterface($model_class_name, \OLOG\Model\InterfaceWeight::class);
     $model_id = POSTAccess::getRequiredPostValue('_id');
     // TODO: constant for field name
     $context_fields_names_str = POSTAccess::getRequiredPostValue(CRUDTableWidgetWeight::FORMFIELD_CONTEXT_FIELDS_NAME);
     $context_fields_names_arr = explode(',', $context_fields_names_str);
     $context_arr = [];
     foreach ($context_fields_names_arr as $context_field_name) {
         $context_arr[$context_field_name] = NullablePostFields::optionalFieldValue($context_field_name);
     }
     /** @var InterfaceWeight $obj */
     $obj = CRUDObjectLoader::createAndLoadObject($model_class_name, $model_id);
     $obj->swapWeights($context_arr);
     \OLOG\Redirects::redirectToSelf();
 }
Beispiel #5
0
 protected static function saveEditorFormOperation($url_to_redirect_after_save = '', $redirect_get_params_arr = [])
 {
     $model_class_name = POSTAccess::getRequiredPostValue(self::FIELD_CLASS_NAME);
     $object_id = self::saveOrUpdateObjectFromFormData();
     if ($url_to_redirect_after_save != '') {
         $obj = CRUDObjectLoader::createAndLoadObject($model_class_name, $object_id);
         $redirect_url = $url_to_redirect_after_save;
         $redirect_url = CRUDCompiler::compile($redirect_url, ['this' => $obj]);
         $params_arr = [];
         foreach ($redirect_get_params_arr as $param => $value) {
             $params_arr[$param] = CRUDCompiler::compile($value, ['this' => $obj]);
         }
         if (!empty($redirect_get_params_arr)) {
             $redirect_url = $url_to_redirect_after_save . '?' . http_build_query($params_arr);
         }
         \OLOG\Redirects::redirect($redirect_url);
     }
     // keep get form
     \OLOG\Redirects::redirectToSelf();
 }