protected function performServiceOpteration($actionsStack, $execLevel) { foreach ($actionsStack as $methodCall) { $service = $methodCall['service']; $method = $methodCall['method']; $messages = $methodCall['messages']; $resultUsageOption = isset($methodCall['useResultTo']) ? $methodCall['useResultTo'] : null; $serviceInstance = $this->getServiceClassInstance($service); if (method_exists($serviceInstance, $method)) { if ($execLevel == self::PRE_EXEC) { $request = $this->getContext()->getRequest(); $returnValue = $serviceInstance->{$method}($request); } elseif ($execLevel == self::POST_EXEC) { $form = $this->getContext()->getActionStack()->getFirstEntry()->getActionInstance()->getForm(); $returnValue = $serviceInstance->{$method}($form); } else { // TODO: Warn } if (!empty($resultUsageOption)) { $this->peformActionOperation($resultUsageOption, $returnValue); } if (isset($messages[$serviceInstance->getState()])) { MessageRegistry::instance()->addMessage($messages[$serviceInstance->getState()], $module, $action); } } } }
/** * * @param <type> $request */ public function execute($request) { /* For highlighting corresponding menu item */ $request->setParameter('initialActionName', 'viewJobVacancy'); $this->vacancyPermissions = $this->getDataGroupPermissions('recruitment_vacancies'); $this->vacancyId = $request->getParameter('Id'); $values = array('vacancyId' => $this->vacancyId, 'vacancyPermissions' => $this->vacancyPermissions); $this->setForm(new AddJobVacancyForm(array(), $values)); if ($this->getUser()->hasFlash('templateMessage')) { list($this->messageType, $this->message) = $this->getUser()->getFlash('templateMessage'); MessageRegistry::instance()->addMessage($this->message, 'recruitment', 'addJobVacancy', MessageRegistry::PREPEND); $this->message = MessageRegistry::instance()->getMessage('recruitment', 'addJobVacancy'); } if ($request->isMethod('post')) { if ($this->vacancyPermissions->canCreate() || $this->vacancyPermissions->canUpdate()) { $this->form->bind($request->getParameter($this->form->getName())); if ($this->form->isValid()) { $this->vacancyId = $this->form->save(); $this->getUser()->setFlash('success', __(TopLevelMessages::SAVE_SUCCESS)); $this->redirect('recruitment/addJobVacancy?Id=' . $this->vacancyId); } else { Logger::getLogger('recruitment.addJobVacancy')->error($this->form); $this->getUser()->setFlash('warning', __(TopLevelMessages::SAVE_FAILURE), false); } } } }
/** * * @param <type> $request */ public function execute($request) { /* For highlighting corresponding menu item */ $request->setParameter('initialActionName', 'viewJobVacancy'); $usrObj = $this->getUser()->getAttribute('user'); if (!$usrObj->isAdmin()) { $this->redirect('recruitment/viewCandidates'); } $this->vacancyId = $request->getParameter('Id'); $values = array('vacancyId' => $this->vacancyId); $this->setForm(new AddJobVacancyForm(array(), $values)); if ($this->getUser()->hasFlash('templateMessage')) { list($this->messageType, $this->message) = $this->getUser()->getFlash('templateMessage'); MessageRegistry::instance()->addMessage($this->message, 'recruitment', 'addJobVacancy', MessageRegistry::PREPEND); $this->message = MessageRegistry::instance()->getMessage('recruitment', 'addJobVacancy'); } if ($request->isMethod('post')) { $this->form->bind($request->getParameter($this->form->getName())); if ($this->form->isValid()) { $this->vacancyId = $this->form->save(); $this->getUser()->setFlash('success', __(TopLevelMessages::SAVE_SUCCESS)); $this->redirect('recruitment/addJobVacancy?Id=' . $this->vacancyId); } } }
public function getMessage($module, $action, $formatted = true, $separator = '; ') { $message = sfContext::getInstance()->getUser()->getAttribute('message', array(), 'system'); if (!isset($message[$module][$action])) { $message[$module][$action] = array(); } MessageRegistry::instance()->flushMessage(); return $formatted ? implode($separator, $message[$module][$action]) : $message[$module][$action]; }