/**
  * IS: Terdeklarasinya filter dan param di session, dan page_row
  * FS: Mengirimkan ke viewer: cleanUrl, message, filter_alert, page_row,
  *     dan paginator
  * Desc: Mengatur aksi yang dilakukan untuk halaman index highlight
  */
 public function indexAction()
 {
     //variable initiation and instance creation
     $this->view->cleanurl = $this->_cleanUrl;
     $table_highlight = new Model_DbTable_Highlight();
     $message = $this->_flash->getMessages();
     if (!empty($message)) {
         $this->view->message = $message;
     }
     $filter = null;
     $new_search = FALSE;
     if ($this->getRequest()->isPost()) {
         $post = $this->getRequest()->getPost();
         $action = $post['action'];
         switch ($action) {
             case 'delete':
                 if (isset($post['highlights'])) {
                     $highlights = $post['highlights'];
                     foreach ($highlights as $id) {
                         $table_highlight->find($id)->current()->delete();
                     }
                     $this->_helper->flashMessenger->addMessage('Highlight berhasil dihapus.');
                 }
                 break;
             case 'filter':
                 $this->filter->highlight = $post['filter'];
                 break;
             case 'reset':
                 $this->filter->unsetAll();
                 break;
             default:
                 break;
         }
         $this->_helper->redirector('index');
     }
     $filter = $this->_paginator_sess->filter;
     $param = $this->_paginator_sess->param;
     $select = $table_highlight->getQueryAllByLang($this->filter->highlight);
     $data = $table_highlight->fetchAll($select);
     $paginator = Zend_Paginator::factory($data);
     $pageNumber = $this->_getParam('page');
     $paginator->setCurrentPageNumber($pageNumber);
     $paginator->setItemCountPerPage(5);
     if (isset($this->filter->highlight['row'])) {
         $paginator->setItemCountPerPage($this->filter->highlight['row']);
     }
     //get pagerow setting and send to the paginator control
     $this->view->paginator = $paginator;
     $this->view->filter = $this->filter->highlight;
 }
 /**
  * IS: Terdeklarasinya filter dan param di session, dan page_row
  * FS: Mengirimkan ke viewer: cleanUrl, message, filter_alert, page_row,
  *     dan paginator
  * Desc: Mengatur aksi yang dilakukan untuk halaman index highlight
  */
 public function indexAction()
 {
     //variable initiation and instance creation
     $this->view->cleanurl = $this->_cleanUrl;
     $table_highlight = new Model_DbTable_Highlight();
     $message = $this->_flash->getMessages();
     if (!empty($message)) {
         $this->view->message = $message;
     }
     $filter = null;
     $new_search = FALSE;
     if ($this->getRequest()->isPost()) {
         $filter = $_POST['filterPage'];
         $this->_paginator_sess->filter = $filter;
         $new_search = TRUE;
         switch ($filter) {
             case 0:
                 $param = null;
             case 1:
                 $param = $_POST['filterType'];
                 break;
             case 2:
                 $param = $_POST['filterName'];
                 break;
         }
         $this->_paginator_sess->param = $param;
     }
     $filter = $this->_paginator_sess->filter;
     $param = $this->_paginator_sess->param;
     /** Return alert to view on filter selected */
     switch ($filter) {
         case 0:
             $filter_alert = "Show all highlights";
             break;
         case 1:
             switch ($param) {
                 case 3:
                     $tipe = "Header";
                     break;
                 case 2:
                     $tipe = "Cluster";
                     break;
                 case 1:
                     $tipe = "Medium";
                     break;
                 case 4:
                     $tipe = "Small";
                     break;
                 case 5:
                     $tipe = "Gallery Header";
                     break;
                 case 6:
                     $tipe = "User Review";
                     break;
             }
             $filter_alert = $tipe . " highlights";
             break;
         case 2:
             $filter_alert = "Highlights which name with keyword '" . $param . "'";
             break;
     }
     $this->view->alert = $filter_alert;
     $select = $table_highlight->getQueryAllByLang($filter, $param, 2);
     //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);
     }
     if ($new_search) {
         $paginator->setCurrentPageNumber(1);
     }
     $this->view->paginator = $paginator;
 }