app\models\Users::update PHP Method

update() public method

public update ( array $arData = [], array $options = [] )
$arData array
$options array
    public function update(array $arData = [], array $options = [])
    {
        if (empty($arData['password'])) {
            unset($arData['password']);
        }
        parent::update($arData);
    }

Usage Example

 public function actionIndex()
 {
     $this->View->title = 'Mi cuenta';
     $modelAccount = new FormAccount();
     $contact = Users::find()->one(Gbox::$components->user->id);
     $modelAccount->firstname = $contact->firstname;
     $modelAccount->lastname = $contact->lastname;
     $modelAccount->email = $contact->email;
     $modelAccount->username = $contact->username;
     if (Gbox::getRequest()->isPost() && $modelAccount->load(Gbox::getRequest()->post())) {
         if (!empty($modelAccount->password) && $modelAccount->password != $modelAccount->password_confirm) {
             $modelAccount->addError('password_confirm', 'La contraseña debe coincidir con la confirmación.');
         }
         if ($modelAccount->validate()) {
             $table = new Users();
             $table->firstname = $modelAccount->firstname;
             $table->lastname = $modelAccount->lastname;
             $table->email = $modelAccount->email;
             if (!empty($modelAccount->password) && $modelAccount->password == $modelAccount->password_confirm) {
                 $table->password = crypt($modelAccount->password, '$2y$10$' . Gbox::getConfig()->params['salt']);
             }
             if ($table->update(Gbox::$components->user->id)) {
                 $msg = 'Se ha editado su cuenta con éxito.';
                 Session::set('response', ['msg' => $msg, 'type' => 'success']);
             } else {
                 Session::set('response', ['msg' => 'Ha ocurrido un error al editar su cuenta.', 'type' => 'danger']);
             }
         } else {
             Session::set('response', ['msg' => 'Ocurrió un error, revise los campos y vuelva a intentarlo.', 'type' => 'warning']);
         }
     }
     return $this->render('index', ['modelAccount' => $modelAccount]);
 }
All Usage Examples Of app\models\Users::update