'staticpage_category'), ); /** * By default show a menu of available categories */ public function action_index() { Block::add(array( 'title'=>_('Site Index Categories'), 'body'=>View::factory('staticpage/category/list') ->set('results',$this->_get_categories()), )); $this->template->content = Block::factory(); } /** * Show the available topics in a category * @todo Only show categories according to their validity dates * @todo Obey sort order */ public function action_view($id) { $spc = ORM::factory('staticpage_category',$id); if (! $spc->loaded()) Request::instance()->redirect('welcome/index'); array_push($this->_control,array($spc->name=>$this->request->uri())); Block::add(array( 'title'=>sprintf('%s: %s',_('Category'),$spc->name), 'body'=>View::factory('staticpage/category/view') ->set('results',$this->_get_category($spc->id)), )); $this->template->content = Block::factory(); } /** * Obtain a list of pages in a category */ private function _get_category($id) { return ORM::factory('staticpage') ->where('static_page_category_id','=',$id) ->find_all(); } /** * Obtain a list of our categories * @todo Only show categories according to the users group memeberhsip * @todo Obey sort order */ private function _get_categories() { return ORM::factory('staticpage_category') ->find_all(); } }