public function actionResult() { if (isset($_GET)) { $term = $_GET['keyword']; $index = new Zend_Search_Lucene(Yii::getPathOfAlias($this->_indexFilesPath)); $results = $index->find($term); //print_r($results); //exit(); if (isset($_GET['type'])) { $dataProvider = new CPagination(count($results)); $currentPage = Yii::app()->getRequest()->getQuery('page', 1); $dataProvider->pageSize = 10; $pager = OFunction::getDataProviderPager($dataProvider, false); $get = array_merge($_GET, array($pager['pageVar'] => $pager['nextPage'])); $nextPager = $pager['nextPage'] != 0 ? OFunction::validHostURL(Yii::app()->controller->createUrl('result', $get)) : '-'; //print_r($pager); $data = ''; if (!empty($results)) { $i = $currentPage * $dataProvider->pageSize - $dataProvider->pageSize; $end = $currentPage * $dataProvider->pageSize; //foreach($results as $key => $item) { for ($i = $i; $i < $end; $i++) { $data[] = array('id' => CHtml::encode($results[$i]->id), 'category' => CHtml::encode($results[$i]->category), 'media' => CHtml::encode($results[$i]->media), 'title' => CHtml::encode($results[$i]->title), 'body' => CHtml::encode($results[$i]->body), 'date' => CHtml::encode($results[$i]->date), 'view' => CHtml::encode($results[$i]->view)); } } else { $data = array(); } $return = array('data' => $data, 'pager' => $pager, 'nextPager' => $nextPager); echo CJSON::encode($return); } else { $query = Zend_Search_Lucene_Search_QueryParser::parse($term); $this->pageTitleShow = true; $this->pageTitle = 'Hasil Pencarian: ' . $_GET['keyword']; $this->pageDescription = ''; $this->pageMeta = ''; $this->render('application.webs.search.front_result', compact('results', 'term', 'query')); } } else { $this->redirect(Yii::app()->createUrl('site/index')); } }