public function update(Items\Base $item = NULL, $data) { try { $actualUrl = $this->request->getUrl(); $urlScript = new Nette\Http\UrlScript($data); $urlScript->setScriptPath($actualUrl->getScriptPath()); if ($urlScript->getHost() == $actualUrl->getHost()) { $request = new Nette\Http\Request($urlScript); $appRequest = $this->router->match($request); if (!is_null($appRequest)) { $data = $appRequest->getPresenterName(); $data .= ':' . $appRequest->getParameter('action'); $fragment = $urlScript->getFragment(); if ($fragment != '') { $data .= '#' . $fragment; } $parameters = $appRequest->getParameters(); unset($parameters['action']); if (count($parameters) > 0) { $data .= ', ' . Nette\Utils\Json::encode($parameters); } } } } catch (Nette\InvalidArgumentException $e) { } return $data; }