Guest User

Untitled

a guest
Jun 15th, 2016
31
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 1.62 KB | None | 0 0
  1. <?php
  2.  
  3. class RegisterForm extends Model{
  4.     public $login;
  5.     public $password;
  6.     public $password_repeat;
  7.     public $email;
  8.     public $captcha ;
  9.  
  10.     public function rules(){
  11.         return [
  12.                 [['login','email','password','password_repeat','captcha'],'required'],
  13.  
  14.                 ['password','string','length'=>[5,40]],
  15.                 ['password_repeat','compare','compareAttribute'=>'password','message'=>"Passwords must be the same"],
  16.  
  17.                 ['login','string','length' => [4,25]],
  18.                 ['login','unique','targetClass' => 'app\models\activeRecord\Users','targetAttribute' => 'username'],
  19.  
  20.                 [['captcha'],'captcha', 'captchaAction' => 'site/captcha', 'caseSensitive' => false],
  21.  
  22.                 ['email','unique','targetClass' => 'app\models\activeRecord\Users','targetAttribute' => 'email'],
  23.                 ['email','email']
  24.                 ];
  25.     }
  26.     public function attributeLabels()
  27.     {
  28.         return [
  29.             'login' => Yii::t('app', 'username'),
  30.             'password'=>  Yii::t('app', 'password'),
  31.             'password_repeat'=>Yii::t('app', 'repeat password'),
  32.             'email' => Yii::t('app', 'email'),
  33.             'captcha'=>  Yii::t('app', 'Captcha'),
  34.  
  35.         ];
  36.     }
  37.     public function register()
  38.     {
  39.         $password_hash = new Security();
  40.  
  41.         $user = new Users();
  42.         $user->email = $this->email;
  43.         $user->username = $this->login;
  44.  
  45.         //HASHING PASSWORD WITH SALT
  46.         $user->password = $password_hash->generatePasswordHash($this->password);
  47.         $user->save();
  48.         return $user;
  49.     }
  50.  
  51. }
Add Comment
Please, Sign In to add comment