/** * Show categories * * @param integer $id_area Area ID * @param string $lang Language code * @param string $tag * @return void */ public function index($id_area, $lang, $tag = '') { // load dictionary $this->dict->get_wordarray(array('categories', 'articles')); $area = new Area_model(); list($id_area, $areas) = $area->get_my_areas($id_area); $lang = empty($lang) ? X4Route_core::$lang : $lang; // get page $page = $this->get_page('categories'); $navbar = array($this->site->get_bredcrumb($page), array('articles' => 'index/' . $id_area . '/' . $lang)); $view = new X4View_core('container'); // content $mod = new Category_model(); $tags = $mod->get_tags($id_area, $lang); // if empty get the first available $tag = empty($tag) && !empty($tags) ? $tags[0]->tag : $tag; $view->content = new X4View_core('articles/category_list'); $view->content->page = $page; $view->content->navbar = $navbar; $view->content->items = $mod->get_categories($id_area, $lang, $tag); // tag switcher $view->content->tag = $tag; $view->content->tags = $tags; // area switcher $view->content->id_area = $id_area; $view->content->areas = $areas; // language switcher $view->content->lang = $lang; $lang = new Language_model(); $view->content->langs = $lang->get_languages(); $view->render(TRUE); }