Пример #1
0
 public function executeUpdateDefaultParameters(sfWebRequest $request)
 {
     $this->forward404Unless($request->isMethod(sfRequest::POST));
     //If the HTTP method is "post", get the values entered by the user:
     $this->def_values = array('default_building' => $this->getRequestParameter('default_building'), 'default_room' => $this->getRequestParameter('default_room'), 'default_method_of_payment' => $this->getRequestParameter('default_method_of_payment'), 'default_computer' => $this->getRequestParameter('default_computer'), 'default_num_to_display' => $this->getRequestParameter('default_num_to_display'), 'default_follow_moderator' => $this->getRequestParameter('default_follow_moderator'), 'default_language' => $this->getRequestParameter('default_language'), 'default_currency' => $this->getRequestParameter('default_currency'), 'def_mysql_port' => $this->getRequestParameter('def_mysql_port'), 'def_pgsql_port' => $this->getRequestParameter('def_pgsql_port'), 'reservation_min_time' => $this->getRequestParameter('reservation_min_time'), 'reservation_max_time' => $this->getRequestParameter('reservation_max_time'), '_csrf_token' => $this->getRequestParameter('_csrf_token'));
     //Build the form with theses values:
     $this->def_form = new DefaultParametersForm();
     //Execute the validators of this form:
     $this->def_form->bind($this->def_values);
     //If everything is fine:
     if ($this->def_form->isValid()) {
         //Insert the new values in the xml configuration file:
         ParametersConfiguration::setUserPrefix(sfContext::getInstance()->getUser()->getAttribute('login'));
         !$this->def_values['default_follow_moderator'] ? $this->def_values['default_follow_moderator'] = null : ($this->def_values['default_follow_moderator'] = 1);
         ParametersConfiguration::setDefaultParams($this->def_values);
         //Indicate to the template that the values are correct and have been updated:
         $request->setAttribute('update_def', true);
         $this->getUser()->setCulture(ParametersConfiguration::getDefault('default_language'));
     }
     $this->forward('configuration', 'parameters');
 }