new Tab( array( 'title' => 'General settings', 'url' => Url::fromPath('/preference') ) ) ); } /** * General settings for date and time */ public function indexAction() { $form = new GeneralForm(); $this->getTabs()->activate('general'); $form->setConfiguration(IcingaConfig::app()) ->setRequest($this->getRequest()); if ($form->isSubmittedAndValid()) { try { $this->savePreferences($form->getPreferences()); Notification::success(t('Preferences updated successfully')); // Recreate form to show new values // TODO(el): It must sufficient to call $form->populate(...) $form = new GeneralForm(); $form->setConfiguration(IcingaConfig::app()); $form->setRequest($this->getRequest()); } catch (Exception $e) { Notification::error(sprintf(t('Failed to persist preferences. (%s)'), $e->getMessage())); } } $this->view->form = $form; } }