private function exist($id) { $this->row = $this->model->get($id); if (!$this->row) { $this->flashMessage($this->translator->translate('admin.text.notitemNotExist'), 'error'); $this->redirect('default'); } }
/** * @return Nette\Application\IRouter */ public function createRouter() { $langRoute = array('language'); foreach ($this->languages->getAll() as $language) { $langRoute[] = $language['link']; } $uri = explode('/', $_SERVER['REQUEST_URI']); if (isset($uri[1])) { $language = $this->languages->where('link', $uri[1])->fetch(); } else { $language = $this->languages->get(1); } $router = new RouteList(); $router[] = $adminRouter = new RouteList('Admin'); $adminRouter[] = new Route('[<locale=cs ' . implode('|', $langRoute) . '>/]admin/<presenter>/<action>', 'Homepage:default'); $router[] = $frontRouter = new RouteList('Front'); $pages = $this->pages->where('NOT module', null)->fetchAll(); foreach ($pages as $page) { $link = $page['link']; //jen staticka if (in_array($page['module'], array())) { //vypis => detail s ID } elseif (in_array($page['module'], array())) { //katalog $frontRouter[] = new Route('[<locale=cs cs|en>/]' . $link . '/<link>/<id [0-9]+>/', array('action' => 'default', 'presenter' => array(Route::FILTER_TABLE => array($link => $this->createPresenterName($page['module'])), Route::FILTER_STRICT => true))); $frontRouter[] = new Route('[<locale=cs cs|en>/]' . $link . '/<url>/', array('action' => 'default', 'presenter' => array(Route::FILTER_TABLE => array($link => $this->createPresenterName($page['module'])), Route::FILTER_STRICT => true))); //jen specialni stranka modulu } else { $frontRouter[] = new Route('[<locale=cs cs|en>/]<presenter>/', array('action' => 'default', 'presenter' => array(Route::FILTER_TABLE => array($link => $this->createPresenterName($page['module'])), Route::FILTER_STRICT => true))); $frontRouter[] = new Route('[<locale=cs cs|en>/]<presenter>/[<id>/]', array('action' => 'detail', 'presenter' => array(Route::FILTER_TABLE => array($link => $this->createPresenterName($page['module'])), Route::FILTER_STRICT => true))); } } //obrazky $frontRouter[] = new Route('[<locale=cs ' . implode('|', $langRoute) . '>/]<presenter image>/<action preview>/', array('presenter' => 'Homepage', 'action' => 'default')); //stranky $frontRouter[] = new Route('[<locale=cs ' . implode('|', $langRoute) . '>/]<url .*>/', array('presenter' => 'Page', 'action' => 'default')); //vychozi router $frontRouter[] = new Route('[<locale=cs ' . implode('|', $langRoute) . '>/]<presenter>/<action>/[<id>/]', array('presenter' => 'Homepage', 'action' => 'default')); return $router; }