示例#1
0
 public function change(array $option = [])
 {
     $user = Users::find()->where(['id' => Yii::$app->user->id])->one();
     foreach ($option as $key => $item) {
         if (property_exists($this, $key) && $key != 'avatar') {
             $user->{$key} = $item;
         }
     }
     $this->avatar = UploadedFile::getInstance($this, 'avatar');
     if ($this->avatar) {
         $user->avatar = "{$this->avatar->baseName}.{$this->avatar->extension}";
     }
     if ($user->save()) {
         if ($this->avatar) {
             $folder_path = "./images/users_photo/{$user->id}/avatar/";
             if (!is_dir($folder_path)) {
                 mkdir($folder_path, 0777, true);
             } else {
                 $file = $folder_path . $user->avatar;
                 if (is_file($file)) {
                     unlink($file);
                 }
             }
             $this->avatar->saveAs($folder_path . $user->avatar);
         }
     }
 }
示例#2
0
 /**
  * @inheritdoc
  */
 public function rules()
 {
     return [[['username', 'password'], 'required'], ['password', 'string', 'min' => self::MIN_PASS_LEN, 'max' => self::MAX_PASS_LEN, 'message' => '4-12 символов'], ['username', function ($username, $param) {
         if (Users::find()->where(['username' => $this->{$username}])->exists()) {
             $this->addError($username, 'Такое имя пользователя уже занято');
         }
     }]];
 }
示例#3
0
 public function change()
 {
     if ($this->validate()) {
         $user = Users::find()->where(['id' => Yii::$app->user->id])->one();
         $user->password = Yii::$app->security->generatePasswordHash($this->new_pass);
         return $user->save();
     }
     return false;
 }
示例#4
0
 public function actionIndex()
 {
     $form_model = new Profile();
     $post = \Yii::$app->request->post('Profile');
     if ($post) {
         $form_model->change($post);
     }
     $user = Users::find()->where(['id' => Yii::$app->user->id])->asArray()->one();
     foreach ($user as $key => $item) {
         if (property_exists($form_model, $key) && $key != 'avatar') {
             if (strlen($item) < 1) {
                 $user[$key] = "-";
             }
             $form_model->{$key} = $item;
         }
     }
     $avatar_path = "./images/users_photo/" . Yii::$app->user->id . "/avatar/";
     if (!is_file($avatar_path . $user['avatar'])) {
         $user['avatar'] = "./images/faces/nomen.png";
     } else {
         $user['avatar'] = $avatar_path . $user['avatar'];
     }
     return $this->render('index', ['form_model' => $form_model, 'user' => $user]);
 }
示例#5
0
 public function actionGetPassport()
 {
     if (Yii::$app->getRequest()->isAjax && Yii::$app->request->post('username')) {
         if (Users::find()->where(['username' => Yii::$app->request->post('username')])->exists()) {
             return json_encode(['errors' => 'Этот оргнейм занят']);
         } else {
             return Users::getNewPassport();
         }
     }
 }
示例#6
0
文件: Users.php 项目: aversilov/prexr
 public static function getPassportCode($social_role)
 {
     $passport_code = Users::find()->select("MAX(`pasport_code`)+1 as pcode")->where(['social_role' => $social_role])->scalar();
     if (!$passport_code) {
         return 1;
     }
     return $passport_code;
 }