Esempio n. 1
0
 /**
  * Proceed request to update profile
  */
 public function updAction()
 {
     \Auth::check();
     try {
         $oldUser = new \Model\User($_SESSION['uid']);
         $newUser = new \Model\User();
         $newUser->id = $_SESSION['uid'];
         $newUser->fillPropertiesFromArray($_POST);
         if (empty($newUser->password)) {
             $newUser->setEncryptedPassword($oldUser->password);
         }
         $newUser->save();
     } catch (\Exception\ModelInvalid $e) {
         $this->show('profile', ['saveErrors' => $newUser->getValidationErrors(), 'user' => $oldUser, 'saved' => false]);
         return;
     } catch (\Exception $e) {
         echo $e->getMessage();
         $this->show('profile', ['saveErrors' => ['Ошибка загрузки профиля пользователя'], 'user' => $oldUser, 'saved' => false]);
         return;
     }
     $this->makeHistoryChanges($oldUser, $newUser);
     $this->show('profile', ['saveErrors' => [], 'user' => $newUser, 'saved' => true]);
 }