Example #1
0
 public function actionRegister()
 {
     $message_name = "register";
     if ($this->request->register) {
         $user_old_1 = new AdminDB();
         $user_old_1->loadOnEmail($this->request->email);
         $user_old_2 = new AdminDB();
         $user_old_2->loadOnLogin($this->request->login);
         $checks[] = array($this->request->password, $this->request->password_conf, "ERROR_PASSWORD_CONF");
         $checks[] = array($user_old_1->isSaved(), false, "ERROR_EMAIL_ALREADY_EXISTS");
         $checks[] = array($user_old_2->isSaved(), false, "ERROR_LOGIN_ALREADY_EXISTS");
         $user = new AdminDB();
         $fields = array("name", "login", "email", array("setPassword()", $this->request->password));
         $res = $this->fp->process($message_name, $user, $fields, $checks);
         $user = $res["obj"];
         if ($user instanceof AdminDB) {
             $this->mail->send($user->email, array("user" => $user, "link" => URL::get("activate", "", array("login" => $user->login, "key" => $user->activation), false, Config::ADDRESS, false)), $message_name);
             $this->redirect(URL::get("sregister"));
         }
     }
     $this->title = "Регистрация";
     $head = $this->getHead(array("/css/main.css"));
     $hornav = $this->getHornav();
     $hornav->addData("Регистрация");
     $form = new Formregister();
     $form->hornav = $hornav;
     $form->name = "register";
     $form->action = URL::current();
     $form->method = "POST";
     $form->message = $this->fp->getSessionMessage($message_name);
     $form->text("name", "ФИО", $this->request->name);
     $form->text("login", "Логин", $this->request->login);
     $form->text("email", "E-mail", $this->request->email);
     $form->password("password", "Пароль");
     $form->password("password_conf", "Подтвердите пароль");
     $form->submit("register", "Регистрация");
     $this->render($head, $form);
 }