コード例 #1
0
ファイル: RefController.php プロジェクト: Arokh09/it-service
 public function actionSaveUserData($user_id, $user_login, $user_fio, $user_position, $user_address, $user_phone, $user_roles, $user_password)
 {
     $auth = yii::$app->authManager;
     $roles = json_decode($user_roles);
     $transaction = user::getDb()->beginTransaction();
     $user = user::findOne($user_id);
     $user->name = $user_login;
     $user->FIO = $user_fio;
     $user->position = $user_position;
     $user->address = $user_address;
     $user->phone = $user_phone;
     if (!$user_password == '') {
         $hash = Yii::$app->getSecurity()->generatePasswordHash($user_password);
         $user->password_hash = $hash;
     }
     $auth->revokeAll($user_id);
     foreach ($roles as $role) {
         if ($auth->getRole($role)) {
             $oRole = $auth->getRole($role);
             $auth->assign($oRole, $user_id);
         }
     }
     if ($user->save()) {
         echo 'Изменения сохранены';
         $transaction->commit();
         //print_r($auth -> getAssignments($user_id));
     } else {
         echo 'Изменения НЕ СОХРАНЕНЫ';
     }
     $transaction->rollBack();
     //else print_r($user -> getErrors());
 }