Example #1
0
 private function updatePassword()
 {
     $this->load->file('application/modules/app/layout/layout_password_data.php');
     $resAjax = new Response_Ajax();
     $data = new Data_App_Layout_Password(TRUE);
     try {
         if (!$data->isValid()) {
             throw new Exception('Complete correctamente todos los campos');
         }
         $id_user = Helper_App_Session::getUserId();
         $oBus = Business_App_User::checkPassword($id_user, $data->password_current);
         if (!$oBus->isSuccess()) {
             throw new Exception($oBus->message());
         }
         $data_isValid = $oBus->data();
         $isValid = $data_isValid['isValid'];
         if (!$isValid) {
             throw new Exception('Contraseña incorrecta.');
         }
         $oBus2 = Business_App_User::updatePassword($id_user, $data->password_new);
         if (!$oBus2->isSuccess()) {
             throw new Exception($oBus2->message());
         }
         $data_changed = $oBus2->data();
         $changed = $data_changed['changed'];
         if (!$changed) {
             throw new Exception("No fue posible cambiar la contraseña");
         }
         $resAjax->isSuccess(TRUE);
         $resAjax->message("Contraseña cambiada con éxito.");
     } catch (Exception $ex) {
         $resAjax->isSuccess(FALSE);
         $resAjax->message($ex->getMessage());
         $resAjax->form('change_password', $data->toArray());
     }
     echo $resAjax->toJsonEncode();
 }