예제 #1
0
 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');
     }
 }
예제 #2
0
파일: RouterFactory.php 프로젝트: vsek/cms
 /**
  * @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;
 }