Exemple #1
0
 /**
  * Активирует аккаунт юзера по $code, возвращает логин и пароль пользователя.
  *
  * @param string $code		Код активации
  * @param string $login		Возвращает логин пользователя
  * @param string $pass		Возвращает пароль пользователя
  *
  * @return integer			1 - активация прошла успешно, 0 - активация не прошла
  */
 public function Activate($code, &$login, &$pass)
 {
     define('IS_USER_ACTION', 1);
     /**
      * Подлючаем файл для работы с пользователем.
      */
     require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/users.php';
     require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/wizard/wizard_registration.php';
     require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/wizard/step_employer.php';
     require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/wizard/step_freelancer.php';
     require_once $_SERVER['DOCUMENT_ROOT'] . '/classes/smail.php';
     global $DB;
     $sql = 'SELECT user_id, login, passwd FROM activate_code LEFT JOIN users ON user_id=uid WHERE code = ?';
     $res = $DB->query($sql, $code);
     list($fid, $login, $pass) = pg_fetch_row($res);
     if ($fid) {
         $usr = new users();
         $usr->active = 1;
         $usr->Update($fid, $res);
         $usr->GetUserByUID($fid);
         // #0017513
         if ($usr->role[0] == 1) {
             $wiz_user = wizard::isUserWizard($fid, step_employer::STEP_REGISTRATION_CONFIRM, wizard_registration::REG_EMP_ID);
         } else {
             $wiz_user = wizard::isUserWizard($fid, step_freelancer::STEP_REGISTRATION_CONFIRM, wizard_registration::REG_FRL_ID);
         }
         $out = 1;
         $this->Delete($fid);
         if ($wiz_user['id'] > 0) {
             $mail = new smail();
             if ($usr->role[0] == 1) {
                 $mail->employerQuickStartGuide($fid);
             } else {
                 $mail->freelancerQuickStartGuide($fid);
             }
             step_wizard::setStatusStepAdmin(step_wizard::STATUS_COMPLITED, $fid, $wiz_user['id']);
             $role = $usr->role[0] == 1 ? wizard_registration::REG_EMP_ID : wizard_registration::REG_FRL_ID;
             login($login, $pass, 0, true);
             header('Location: /registration/activated.php?role=' . $role);
             exit;
         }
     } else {
         $out = 0;
     }
     return $out;
 }