Esempio n. 1
0
 public function testUpdateUserSettings()
 {
     $user = $this->createUser();
     $values = array('display_name' => 'olala', 'language' => 'de_DE', 'notifications' => false);
     $user = $this->userService->updateUserSettings($user, $values);
     $this->assertInstanceOf('\\Secretary\\Entity\\User', $user);
     $this->assertSame($values['display_name'], $user->getDisplayName());
     $this->assertSame($values['language'], $user->getLanguage());
     $this->assertSame($values['notifications'], $user->getNotifications());
 }
Esempio n. 2
0
 /**
  * User settings
  *
  * @return \Zend\View\Model\ViewModel
  */
 public function settingsAction()
 {
     $form = $this->getUserForm();
     $viewModel = new ViewModel();
     $viewVars = array('userForm' => $form);
     $messages = $this->flashMessenger()->getCurrentSuccessMessages();
     if (!empty($messages)) {
         $viewVars['msg'] = array('success', $messages[0]);
     }
     $this->flashMessenger()->clearMessages();
     if ($this->getRequest()->isPost()) {
         $form->setInputFilter($form->getInputFilter());
         $form->setData($this->getRequest()->getPost());
         if ($form->isValid()) {
             $values = $form->getData();
             // Upgrade User to KeyUser Role
             $this->userService->updateUserSettings($this->identity, $values);
             // Success
             $this->flashMessenger()->addSuccessMessage($this->translator->translate('Your settings were updated'));
             return $this->redirect()->toRoute('user-settings');
         }
         $viewVars['msg'] = array('error', 'An error occurred');
     }
     $viewModel->setVariables($viewVars);
     return $viewModel;
 }