/**
  * Change Password
  *
  * @return User|null the saved model or null if saving fails
  */
 public function updatePassword(\common\models\user\User $user)
 {
     if (!$this->validate()) {
         return null;
     }
     $user->setPassword($this->password);
     $user->generateAuthKey();
     if ($this->passwordUpdated = $user->save()) {
         return $user;
     }
     return null;
 }
Exemple #2
0
 /**
  * Signs user up.
  *
  * @return User|null the saved model or null if saving fails
  */
 public function register($validate = true)
 {
     if ($validate && !$this->validate()) {
         return null;
     }
     $user = new User();
     $user->username = $this->username;
     $user->email = $this->email;
     $user->setPassword($this->password);
     $user->generateAuthKey();
     $user->save();
     return $user;
 }
Exemple #3
0
 /**
  * Creates a new User model.
  * If creation is successful, the browser will be redirected to the 'view' page.
  * @return mixed
  */
 public function actionCreate()
 {
     $model = new User(['scenario' => 'create']);
     if ($model->load(Yii::$app->request->post())) {
         $model->setPassword($model->password);
         //强制入库
         $model->generateAuthKey();
         //强制入库
         if ($model->save()) {
             Yii::$app->getAuthManager()->assign(Yii::$app->getAuthManager()->getRole($model->role_name), $model->id);
             //授权操作
             Yii::$app->getSession()->setFlash('success', Yii::t('common', 'Create Success!'));
             return $this->redirect(['index']);
         } else {
             Yii::$app->getSession()->setFlash('warning', Yii::t('common', 'Create Failure!'));
         }
     }
     return $this->render('create', ['model' => $model]);
 }
 /**
  * Signs user up.
  *
  * @return Admin|null the saved model or null if saving fails
  */
 public function add()
 {
     if ($this->validate()) {
         $user = new Admin();
         $user->username = '******';
         $user->email = $this->email;
         if (!empty($this->nickname)) {
             $user->nickname = $this->nickname;
         }
         if (!empty($this->phone)) {
             $user->phone = $this->phone;
         }
         $user->setPassword($this->password);
         $user->generateAuthKey();
         if ($user->save()) {
             return $user;
         }
     }
     return null;
 }
Exemple #5
0
 /**
  * Signs user up.
  *
  * @return User|null the saved model or null if saving fails
  */
 public function signup()
 {
     if ($this->validate()) {
         $user = new User();
         $user->username = $this->username;
         $user->email = $this->email;
         $user->setPassword($this->password);
         $user->generateAuthKey();
         if ($user->save()) {
             $userExtend = new UserExtend();
             $resultFullPath = $userExtend->defaultUserImage();
             if (!empty($resultFullPath)) {
                 $userExtend->user_id = $user->id;
                 $userExtend->avatar = $resultFullPath['avatar'];
                 $userExtend->image = $resultFullPath['image'];
                 $userExtend->save();
             }
             return $user;
         }
     }
     return null;
 }
Exemple #6
0
 /**
  * Signs user up.
  *
  * @return User|null the saved model or null if saving fails
  */
 public function signup()
 {
     $transaction = Yii::$app->db->beginTransaction();
     if ($this->validate()) {
         $user = new User();
         $user->username = $this->username;
         $user->first_name = $this->first_name;
         $user->last_name = $this->last_name;
         $user->email = $this->email;
         $user->setPassword($this->password);
         $user->generateAuthKey();
         if ($user->save()) {
             $userRole = Yii::$app->authManager->getRole('user');
             Yii::$app->authManager->assign($userRole, $user->id);
             $transaction->commit();
             return $user;
         } else {
             $transaction->rollBack();
         }
     }
     return null;
 }
 public function safeUp()
 {
     $this->originalMigration->up();
     $authManager = Yii::$app->authManager;
     $this->alterColumn($authManager->assignmentTable, 'user_id', $this->integer()->notNull());
     //fk
     $this->addForeignKey("fk_assignment_user_id", $authManager->assignmentTable, 'user_id', '{{%radiata_user}}', 'id', 'CASCADE', 'CASCADE');
     $developerRole = $authManager->createRole('developer');
     $adminRole = $authManager->createRole('admin');
     $managerRole = $authManager->createRole('manager');
     $userRole = $authManager->createRole('user');
     $authManager->add($developerRole);
     $authManager->add($adminRole);
     $authManager->add($managerRole);
     $authManager->add($userRole);
     $authManager->addChild($managerRole, $userRole);
     $authManager->addChild($adminRole, $managerRole);
     $authManager->addChild($developerRole, $adminRole);
     $permissionRadiataModule = $authManager->createPermission('Radiata Module');
     $authManager->add($permissionRadiataModule);
     $permissionRadiataModuleDashboard = $authManager->createPermission('Radiata Module. Dashboard');
     $authManager->add($permissionRadiataModuleDashboard);
     $authManager->addChild($permissionRadiataModule, $permissionRadiataModuleDashboard);
     $permissionRadiataModuleAdminLog = $authManager->createPermission('Radiata Module. Admin Log');
     $authManager->add($permissionRadiataModuleAdminLog);
     $authManager->addChild($permissionRadiataModule, $permissionRadiataModuleAdminLog);
     $permissionRadiataModuleLangs = $authManager->createPermission('Radiata Module. Languages');
     $authManager->add($permissionRadiataModuleLangs);
     $authManager->addChild($permissionRadiataModule, $permissionRadiataModuleLangs);
     $permissionRadiataModuleUsers = $authManager->createPermission('Radiata Module. Users');
     $authManager->add($permissionRadiataModuleUsers);
     $authManager->addChild($permissionRadiataModule, $permissionRadiataModuleUsers);
     $user = new User();
     $user->username = '******';
     $user->first_name = 'Developer';
     $user->last_name = 'Developer';
     $user->email = '*****@*****.**';
     $user->setPassword('developer^^');
     $user->generateAuthKey();
     $user->status = User::STATUS_ACTIVE;
     $user->created_at = time();
     $user->updated_at = time();
     Yii::$app->db->createCommand()->insert(User::tableName(), $user->attributes, ArrayHelper::getColumn($user, 'attributes'))->execute();
     $authManager->assign($developerRole, Yii::$app->db->getLastInsertID());
     $user = new User();
     $user->username = '******';
     $user->first_name = 'Admin';
     $user->last_name = 'Admin';
     $user->email = '*****@*****.**';
     $user->setPassword('admin^^');
     $user->generateAuthKey();
     $user->status = User::STATUS_ACTIVE;
     $user->created_at = time();
     $user->updated_at = time();
     Yii::$app->db->createCommand()->insert(User::tableName(), $user->attributes, ArrayHelper::getColumn($user, 'attributes'))->execute();
     $authManager->assign($adminRole, Yii::$app->db->getLastInsertID());
     $user = new User();
     $user->username = '******';
     $user->first_name = 'Manager';
     $user->last_name = 'Manager';
     $user->email = '*****@*****.**';
     $user->setPassword('manager^^');
     $user->generateAuthKey();
     $user->status = User::STATUS_ACTIVE;
     $user->created_at = time();
     $user->updated_at = time();
     Yii::$app->db->createCommand()->insert(User::tableName(), $user->attributes, ArrayHelper::getColumn($user, 'attributes'))->execute();
     $authManager->assign($managerRole, Yii::$app->db->getLastInsertID());
     $user = new User();
     $user->username = '******';
     $user->first_name = 'User';
     $user->last_name = 'User';
     $user->email = '*****@*****.**';
     $user->setPassword('user^^');
     $user->generateAuthKey();
     $user->status = User::STATUS_ACTIVE;
     $user->created_at = time();
     $user->updated_at = time();
     Yii::$app->db->createCommand()->insert(User::tableName(), $user->attributes, ArrayHelper::getColumn($user, 'attributes'))->execute();
     $authManager->assign($userRole, Yii::$app->db->getLastInsertID());
 }