Example #1
0
 public static function authAdmin($login = false, $password = false)
 {
     if ($login) {
         $auth = true;
     } else {
         if (!session_id()) {
             session_start();
         }
         if (!empty($_SESSION["auth_login"]) && !empty($_SESSION["auth_password"])) {
             $login = $_SESSION["auth_login"];
             $password = $_SESSION["auth_password"];
         } else {
             return;
         }
         $auth = false;
     }
     $user = new AdminDB();
     if ($auth) {
         $password = self::hash($password, Config::SECRET);
     }
     $select = new Select();
     $select->from(self::$table, array("COUNT(id)"))->where("`login` = " . self::$db->getSQ(), array($login))->where("`password` = " . self::$db->getSQ(), array($password));
     $count = self::$db->selectCell($select);
     if ($count) {
         $user->loadOnLogin($login);
         if ($user->activation != "") {
             throw new Exception("ERROR_ACTIVATE_USER");
         }
         if ($auth) {
             $user->login();
         }
         return $user;
     }
     if ($auth) {
         throw new Exception("ERROR_AUTH_USER");
     }
 }
Example #2
0
 public function actionActivate()
 {
     $user_db = new AdminDB();
     $user_db->loadOnLogin($this->request->login);
     $hornav = $this->getHornav();
     if ($user_db->isSaved() && $user_db->activation == "") {
         $this->title = "Ваш аккаунт уже активирован";
         $this->meta_desc = "Вы можете войти в свой аккаунт, используя Ваши логин и пароль.";
         $this->meta_key = "активация, успешная активация, успешная активация регистрация";
         $hornav->addData("Активация");
     } elseif ($user_db->activation != $this->request->key) {
         $this->title = "Ошибка при активации";
         $this->meta_desc = "Неверный код активации! Если ошибка будет повторяться, то обратитесь к администрации.";
         $this->meta_key = "активация, ошибка активация, ошибка активация регистрация";
         $hornav->addData("Ошибка активации");
     } else {
         $user_db->activation = "";
         try {
             $user_db->save();
         } catch (Exception $e) {
             print_r($e->getMessage());
         }
         $this->title = "Ваш аккаунт успешно активирован";
         $this->meta_desc = "Теперь Вы можете войти в свою учётную запись, используя Ваши логин и пароль.";
         $this->meta_key = "активация, успешная активация, успешная активация регистрация";
         $hornav->addData("Активация");
     }
     $head = $this->getHead(array("/css/main.css"));
     $pm = new PageMessage();
     $pm->hornav = $hornav;
     $pm->header = $this->title;
     $pm->text = $this->meta_desc;
     $this->render($head, $pm);
 }