public function categoryWidget($side_space = true) { $language_id = Zend_Registry::get('languageId'); $cache = Zend_Registry::get('cache'); if (($widget = $cache->load('widget_category')) === FALSE) { $title = $this->view->translate('culture_category'); $tbl_category = new Model_DbTable_Category(); $categories = $tbl_category->getAllParentCategoryIdNameByLangId($language_id)->toArray(); $list = "<ul>"; foreach ($categories as $category) { $link = $this->view->baseUrl("category/see-category/{$category['category_id']}"); $list .= "<a href='{$link}'><li>{$category['name']}</li></a>"; } $list .= "<div class='clear'></div>"; $list .= "</ul>"; if ($side_space) { $side_space_class = 'side-space'; } $widget = <<<HTML <div class="widget-half-list {$side_space_class}"> <h2>{$title}</h2> {$list} </div> HTML; $cache->save($widget); } return $widget; }
public function indexAction() { $this->_helper->layout->setLayout('one-column'); $categoryDb = new Model_DbTable_Category(); $categories = $categoryDb->getAllParentCategoryIdNameByLangId($this->_languageId); $this->view->categories = $categories; }
/** * Fungsi untuk mendapatkan kategori dalam bentuk hierarki * @return type */ public function getAllHierarchyByLanguage() { // Model $categoryDb = new Model_DbTable_Category(); // query category $categoryParent = $categoryDb->getAllParentCategoryIdNameByLangId($this->_languageId); $categoryChildren = $categoryDb->getAllButNotMainCategoryWithCounter($this->_languageId); // should be converted to array $categoryParent = $categoryParent->toArray(); $categoryChildren = $categoryChildren->toArray(); $hierarchyCategory = $this->buildCategoryHierarchy($categoryParent, $categoryChildren); return $hierarchyCategory; }
/** * IS: Terdeklarasinya filter dan param di session, dan page_row * FS: Mengirimkan ke viewer: cleanUrl, message, filter_alert, page_row, * all_category, dan paginator * Desc: Mengatur aksi yang dilakukan untuk halaman index event */ public function indexAction() { //variable initiation and instance creation $this->view->cleanurl = $this->_cleanUrl; //get messages from CRUD process $message = $this->_flash->getMessages(); if (!empty($message)) { $this->view->message = $message; } //create table instances $table_event = new Model_DbTable_Event(); $table_category = new Model_DbTable_Category(); //set variable initial value $filter = null; $new_search = FALSE; //get params for the filter if ($this->getRequest()->isPost()) { $filter = $_POST['filterPage']; $new_search = TRUE; $this->_paginator_sess->filter = $filter; switch ($filter) { case 0: $param = null; case 1: $param = $_POST['filterName']; break; case 2: $param = $_POST['filterDestination']; break; case 3: $param = $_POST['filterCategory']; break; case 4: $param = $_POST['filterDate1']; $param2 = $_POST['filterDate2']; break; } $this->_paginator_sess->param = $param; } //set paginator for list of destination data $filter = $this->_paginator_sess->filter; $param = $this->_paginator_sess->param; if (isset($param2)) { $select = $table_event->getQueryAllByLang($filter, $param, $param2, 2); } else { $select = $table_event->getQueryAllByLang($filter, $param, null, 2); } if ($page_row != null) { $paginator = parent::setPaginator($select, $page_row); } else { $paginator = parent::setPaginator($select); } //if this is a new search then return the page number back to the 1st page if ($new_search) { $paginator->setCurrentPageNumber(1); } //send data to the view $this->view->paginator = $paginator; $filter_data = $table_category->getAllParentCategoryIdNameByLangId(2); $this->view->all_category = $filter_data; /** Return alert to view on filter selected */ switch ($filter) { case 0: $filter_alert = "Show all events"; break; case 1: $filter_alert = "Events which name with keyword '" . $param . "'"; break; case 2: $filter_alert = "Events that related to '" . $param . "'"; break; case 3: foreach ($filter_data as $category) { $parent[$category['category_id']] = $category['name']; } $filter_alert = "Events with '" . $parent[$param] . "' category"; break; case 4: if (!empty($param) && !empty($param2)) { $filter_alert = "Events between " . $param . " and " . $param2; } else { if (!empty($param) && empty($param2)) { $filter_alert = "Events after " . $param; } else { if (empty($param) && !empty($param2)) { $filter_alert = "Events before " . $param2; } else { $filter_alert = "Show all events"; } } } break; } $this->view->alert = $filter_alert; }
/** * IS: Terdeklarasinya filter dan param di session, dan page_row * FS: Mengirimkan ke viewer: cleanUrl, message, page_row, filterdata, * paginator, filter_alert * Desc: Mengatur aksi yang dilakukan untuk halaman index */ public function indexAction() { //variable initiation and instance creation $language_id = 1; $this->view->cleanurl = $this->_cleanUrl; $paginatorfilter = new Zend_Session_Namespace('paginator'); $table_category = new Model_DbTable_Category(); /* * $tes = new Model_DbTable_CategoryDescription(); $es= $tes->checkDescIndo(85); print_r($es);* */ //get messages from CRUD process $message = $this->_flash->getMessages(); if (!empty($message)) { $this->view->message = $message; } //set variable initial value $filter = null; $new_search = FALSE; //get params for the filter if ($this->getRequest()->isPost()) { $filter = $_POST['filterPage']; $new_search = TRUE; $this->_paginator_sess->filter = $filter; switch ($filter) { case 0: $param = null; case 1: $param = $_POST['filterTitle']; break; case 2: $param = $_POST['filterParent']; break; } $this->_paginator_sess->param = $param; } //set paginator for list of destination data $filter = $this->_paginator_sess->filter; $param = $this->_paginator_sess->param; $select = $table_category->getQueryAllByLanguage($filter, $param, $language_id); //get pagerow setting and send to the paginator control $page_row = $this->_getParam('filterPageRow'); $this->view->row = $page_row; if ($page_row != null) { $paginator = parent::setPaginator($select, $page_row); } else { $paginator = parent::setPaginator($select); } //send variables to the view class $filter_data = $table_category->getAllParentCategoryIdNameByLangId($language_id); $this->view->filterdata = $filter_data; $this->view->paginator = $paginator; /** Return alert to view on filter selected */ switch ($filter) { case 0: $filter_alert = "Show all activities"; break; case 1: $filter_alert = "Activities which name with keyword '" . $param . "'"; break; case 2: foreach ($filter_data as $category) { $parent[$category['category_id']] = $category['name']; } $filter_alert = "Activities which parent are '" . $parent[$param] . "'"; break; } $this->view->alert = $filter_alert; }