public function processScreenSettingsAction()
 {
     $return = array();
     $screenSettingGateway = new Settings_Model_ScreenSettingGateway();
     $form = $screenSettingGateway->getForm('ModifyScreenSettings');
     if ($controller = $this->_request->getPost('controller')) {
         $module = $this->_request->getPost('module');
     } else {
         throw new FFR_Exception('No valid controller passed');
     }
     $form->buildFormByController($module, $controller);
     if ($form->isValid($this->_request->getPost())) {
         $nonInsertElements = array('module', 'controller', 'screen_setting_submit');
         foreach ($form as $element) {
             if (!in_array($element->getName(), $nonInsertElements)) {
                 $screenSetting = $screenSettingGateway->fetchScreenSetting($element->getName());
                 $screenSetting->screen_setting_value = $element->getValue();
                 $screenSetting->save();
             }
             $return['notification']['target'] = '.notifications';
             $return['notification']['content'] = $this->view->displayMessages(true);
             $return['refresh'] = true;
         }
     } else {
         $return['formErrors'] = $form->getMessages();
     }
     $this->_helper->json->sendJson($return);
 }