bitmask realised
git-svn-id: svn+ssh://code.netmonsters.ru/svn/majestic/trunk@49 4cb57b5f-5bbd-dd11-951b-001d605cbbc5
This commit is contained in:
@ -2,11 +2,11 @@
|
|||||||
/**
|
/**
|
||||||
* Класс для работы с пользователями
|
* Класс для работы с пользователями
|
||||||
*
|
*
|
||||||
* @copyright
|
* @copyright
|
||||||
* @link
|
* @link
|
||||||
* @package Majestic
|
* @package Majestic
|
||||||
* @subpackage Decorator
|
* @subpackage Decorator
|
||||||
* @since
|
* @since
|
||||||
* @version SVN: $Id$
|
* @version SVN: $Id$
|
||||||
* @filesource $URL$
|
* @filesource $URL$
|
||||||
*/
|
*/
|
||||||
@ -19,23 +19,23 @@ class User
|
|||||||
if (empty($login) || empty($password)) {
|
if (empty($login) || empty($password)) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(!preg_match("/^[a-z0-9_-]{3,50}$/i", $login)) {
|
if(!preg_match("/^[a-z0-9_-]{3,50}$/i", $login)) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
self::setInfo(self::getByLogin(strtolower($login)));
|
self::setInfo(self::getByLogin(strtolower($login)));
|
||||||
if (!self::getInfo()) {
|
if (!self::getInfo() || self::$user->isBanned()) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if(self::$user->pass != $password){
|
if(self::$user->pass != $password){
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
self::setSession();
|
self::setSession();
|
||||||
Load::model('UserData')->loginUpdate($login);
|
Load::model('UserData')->loginUpdate($login);
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -72,11 +72,11 @@ class User
|
|||||||
static function remember()
|
static function remember()
|
||||||
{
|
{
|
||||||
self::setInfo(self::getByLogin(Env::getCookie('login')));
|
self::setInfo(self::getByLogin(Env::getCookie('login')));
|
||||||
|
|
||||||
if (!self::getInfo()) {
|
if (!self::getInfo()) {
|
||||||
self::logout();
|
self::logout();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (Env::getCookie('login_hash') == self::getHash()) {
|
if (Env::getCookie('login_hash') == self::getHash()) {
|
||||||
self::setSession();
|
self::setSession();
|
||||||
} else {
|
} else {
|
||||||
@ -88,12 +88,12 @@ class User
|
|||||||
{
|
{
|
||||||
return md5(self::$user->id.'hckrz'.self::$user->login.'mst'.self::$user->pass.'dai');
|
return md5(self::$user->id.'hckrz'.self::$user->login.'mst'.self::$user->pass.'dai');
|
||||||
}
|
}
|
||||||
|
|
||||||
static function getInfo()
|
static function getInfo()
|
||||||
{
|
{
|
||||||
return Env::Session('user', self::$user);
|
return Env::Session('user', self::$user);
|
||||||
}
|
}
|
||||||
|
|
||||||
static function setInfo($data)
|
static function setInfo($data)
|
||||||
{
|
{
|
||||||
self::$user = $data;
|
self::$user = $data;
|
||||||
@ -108,27 +108,27 @@ class User
|
|||||||
{
|
{
|
||||||
return Load::model('UserData')->getByLogin($login);
|
return Load::model('UserData')->getByLogin($login);
|
||||||
}
|
}
|
||||||
|
|
||||||
static function getById($id)
|
static function getById($id)
|
||||||
{
|
{
|
||||||
return Load::model('UserData')->getById($id);
|
return Load::model('UserData')->getById($id);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* отправляет письмо для активации
|
* отправляет письмо для активации
|
||||||
*
|
*
|
||||||
* @param string $mail
|
* @param string $mail
|
||||||
* @param string $login
|
* @param string $login
|
||||||
*
|
*
|
||||||
*/
|
*/
|
||||||
static function sendActivateMail($mail, $login)
|
static function sendActivateMail($mail, $login)
|
||||||
{
|
{
|
||||||
$link = 'http://'.Env::Server('SERVER_NAME').'/activate/?key='.Load::model('UserActivate')->generateKey($login, $mail);
|
$link = 'http://'.Env::Server('SERVER_NAME').'/activate/?key='.Load::model('UserActivate')->generateKey($login, $mail);
|
||||||
|
|
||||||
$mailer = new Mailer('UserRegister');
|
$mailer = new Mailer('UserRegister');
|
||||||
return $mailer->send($mail, "Подтверждени E-mail ".Env::Server('SERVER_NAME'), array('link' => $link, 'site_name' => Env::Server('SERVER_NAME')));
|
return $mailer->send($mail, "Подтверждени E-mail ".Env::Server('SERVER_NAME'), array('link' => $link, 'site_name' => Env::Server('SERVER_NAME')));
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
?>
|
?>
|
Reference in New Issue
Block a user