public function actionEditProfile()
 {
     $message_avatar_name = "avatar";
     $message_name_name = "name";
     $message_password_name = "password";
     if ($this->request->change_avatar) {
         $img = $this->fp->uploadIMG($message_avatar_name, $_FILES["avatar"], Config::MAX_SIZE_AVATAR, Config::DIR_AVATAR);
         if ($img) {
             $tmp = $this->auth_user->getAvatar();
             $obj = $this->fp->process($message_avatar_name, $this->auth_user, array(array("avatar", $img)), array(), "SUCCESS_AVATAR_CHANGE");
             if ($obj instanceof UserDB) {
                 if ($tmp) {
                     File::delete(Config::DIR_AVATAR . $tmp);
                 }
                 $this->redirect(URL::current());
             }
         }
     } elseif ($this->request->change_name) {
         $checks = array(array($this->auth_user->checkPassword($this->request->password_current_name), true, "ERROR_PASSWORD_CURRENT"));
         $user_temp = $this->fp->process($message_name_name, $this->auth_user, array("name"), $checks, "SUCCESS_NAME_CHANGE");
         if ($user_temp instanceof UserDB) {
             $this->redirect(URL::current());
         }
     } elseif ($this->request->change_password) {
         $checks = array(array($this->auth_user->checkPassword($this->request->password_current), true, "ERROR_PASSWORD_CURRENT"));
         $checks[] = array($this->request->password, $this->request->password_conf, "ERROR_PASSWORD_CONF");
         $user_temp = $this->fp->process($message_password_name, $this->auth_user, array(array("setPassword()", $this->request->password)), $checks, "SUCCESS_PASSWORD_CHANGE");
         if ($user_temp instanceof UserDB) {
             $this->auth_user->login();
             $this->redirect(URL::current());
         }
     }
     $this->title = "Редактирование профиля";
     $this->meta_desc = "Редактирование профиля пользователя.";
     $this->meta_key = "редактирование профиля, редактирование профиля пользователя, редактирование профиля пользователя сайт";
     $form_avatar = new Form();
     $form_avatar->name = "change_avatar";
     $form_avatar->action = URL::current();
     $form_avatar->enctype = "multipart/form-data";
     $form_avatar->message = $this->fp->getSessionMessage($message_avatar_name);
     $form_avatar->file("avatar", "Аватар:");
     $form_avatar->submit("Сохранить");
     $form_avatar->addJSV("avatar", $this->jsv->avatar());
     $form_name = new Form();
     $form_name->name = "change_name";
     $form_name->header = "Изменить имя";
     $form_name->action = URL::current();
     $form_name->message = $this->fp->getSessionMessage($message_name_name);
     $form_name->text("name", "Ваше имя:", $this->auth_user->name);
     $form_name->password("password_current_name", "Текущий пароль:");
     $form_name->submit("Сохранить");
     $form_name->addJSV("name", $this->jsv->name());
     $form_name->addJSV("password_current_name", $this->jsv->password(false, false, "ERROR_PASSWORD_CURRENT_EMPTY"));
     $form_password = new Form();
     $form_password->name = "change_password";
     $form_password->header = "Изменить пароль";
     $form_password->action = URL::current();
     $form_password->message = $this->fp->getSessionMessage($message_password_name);
     $form_password->password("password", "Новый пароль:");
     $form_password->password("password_conf", "Повторите пароль:");
     $form_password->password("password_current", "Текущий пароль:");
     $form_password->submit("Сохранить");
     $form_name->addJSV("password", $this->jsv->password("password_conf"));
     $form_name->addJSV("password_current", $this->jsv->password(false, false, "ERROR_PASSWORD_CURRENT_EMPTY"));
     $hornav = $this->getHornav();
     $hornav->addData("Редактирование профиля");
     $this->render($this->renderData(array("hornav" => $hornav, "form_avatar" => $form_avatar, "form_name" => $form_name, "form_password" => $form_password), "profile", array("avatar" => $this->auth_user->avatar, "max_size" => Config::MAX_SIZE_AVATAR / KB_B)));
 }
 private function getFormEmail($header, $name, $message_name)
 {
     $form = new Form();
     $form->header = $header;
     $form->name = $name;
     $form->action = URL::current();
     $form->message = $this->fp->getSessionMessage($message_name);
     $form->text("email", "Введите e-mail, указанный при регистрации:", $this->request->email);
     $form->submit("Далее");
     $form->addJSV("email", $this->jsv->email());
     return $form;
 }