protected function establishCurrentActionId() { $request = $this->getRequest(); $params = array(); if ($request->hasParameter('create')) { $params = $request->getParameter('create'); $action = 'create'; } elseif ($request->hasParameter('update')) { if ($request->isMutation()) { $params = $request->getParameter('update'); } else { $subRequest = $request->spawnRequest('update'); $params = $subRequest->getParameter(\Nethgui\array_head($subRequest->getPath())); } $action = implode('/', $request->getPath()); } if (isset($params['PickSource']) && $request->isMutation()) { $this->getAction('SaveState')->setField('SrcRaw')->setReturnPath($action)->setResumeState($params); return 'SaveState'; } $this->myCurrentAction = parent::establishCurrentActionId(); if (isset($params['f'], $params['h']) && !$request->isMutation()) { $this->getAction('SaveState')->setResumeCallback(function (\Nethgui\View\ViewInterface $view, $state) { $view['Priority'] = $state['Priority']; $view['Description'] = $state['Description']; $view['SrcRaw'] = $state['SrcRaw']; $view['Source'] = \NethServer\Module\FirewallRules\RuleGenericController::translateFirewallObjectTitle($view, $state['SrcRaw']); $view->getCommandList()->show(); }); } return $this->myCurrentAction; }