Models_Forgotpass

Описание

Модель: Forgotpass


Класс Models_Forgotpass реализует логику восстановления пароля пользователей.

Методы класса

string getHash() Генерация случайного хэша.
$email 'admin@mail.mail';
$hash Models_Forgotpass::getHash($email);
echo 
$hash;
bool sendHashToDB() Метод записывает хэш в таблицу пользователей.
$email 'admin@mail.mail';
$hash '$1$CcS6ghRe$QF1cM4JKQfnOZRKDVT63L.';
Models_Forgotpass::sendHashToDB($email$hash);
bool sendUrlToEmail() Отправка письма со ссылкой на восстановление пароля.
$userId 1;
$email 'admin@mail.mail';
$hash '$1$CcS6ghRe$QF1cM4JKQfnOZRKDVT63L.';
$siteName MG::getOption('sitename');

$emailMessage MG::layoutManager('email_forgot',
    array(
        
'siteName'=>$siteName,
        
'email'=>$email,
        
'hash'=> $hash,
        
'userId'=> $userId,
        
'link' => SITE.'/forgotpass?sec='.$hash.'&id='.$userId
    
)
);

$emailData = array(
    
'nameFrom' => $siteName,
    
'emailFrom' => MG::getSetting('noReplyEmail'),
    
'nameTo' => 'Пользователю сайта '.$siteName,
    
'emailTo' => $email,
    
'subject' => 'Восстановление пароля на сайте '.$siteName,
    
'body' => $emailMessage,
    
'html' => true
);

Models_Forgotpass::sendUrlToEmail($emailData);
void activateUser() Активация пользователя по переданному id.
$userId 15;
Models_Forgotpass::activateUser($userId);
Описание методов и примеры их использования

Метод

string getHash (string $string)

Параметры

  • $string: строка на основе которой готовится хэш.

Описание

Генерация случайного хэша.

$email 'admin@mail.mail';
$hash Models_Forgotpass::getHash($email);
echo 
$hash;

Метод

bool sendHashToDB (string $emailstring $hash)

Параметры

  • $email: электронный адрес пользователя, для которого записываем хэш.
  • $hash: хэш.

Описание

Метод записывает хэш в таблицу пользователей.

$email 'admin@mail.mail';
$hash '$1$CcS6ghRe$QF1cM4JKQfnOZRKDVT63L.';
Models_Forgotpass::sendHashToDB($email$hash);

Метод

bool sendUrlToEmail (array $emailData)

Параметры

  • $emailData: массив с передаваемыми данными.

Описание

Отправка письма со ссылкой на восстановление пароля.

$userId 1;
$email 'admin@mail.mail';
$hash '$1$CcS6ghRe$QF1cM4JKQfnOZRKDVT63L.';
$siteName MG::getOption('sitename');

$emailMessage MG::layoutManager('email_forgot',
    array(
        
'siteName'=>$siteName,
        
'email'=>$email,
        
'hash'=> $hash,
        
'userId'=> $userId,
        
'link' => SITE.'/forgotpass?sec='.$hash.'&id='.$userId
    
)
);

$emailData = array(
    
'nameFrom' => $siteName,
    
'emailFrom' => MG::getSetting('noReplyEmail'),
    
'nameTo' => 'Пользователю сайта '.$siteName,
    
'emailTo' => $email,
    
'subject' => 'Восстановление пароля на сайте '.$siteName,
    
'body' => $emailMessage,
    
'html' => true
);

Models_Forgotpass::sendUrlToEmail($emailData);

Метод

activateUser (int $id)

Параметры

  • $id:

Описание

Активация пользователя по переданному id.

$userId 15;
Models_Forgotpass::activateUser($userId);