public function sideareaAction() { $this->view->setRenderLevel(View::LEVEL_ACTION_VIEW); $query = array('q' => $this->request->getQuery('q', 'string')); $this->view->setVar('query', $query); $news = new Models\NewsManager(); $newsSet = $news->findNews($query); $paginator = new \Eva\EvaEngine\Paginator(array("builder" => $newsSet, "limit" => 5, "page" => 1)); $paginator->setQuery($query); $pager = $paginator->getPaginate(); $this->view->setVar('pager', $pager); }
public function indexAction() { $query = array('status' => 'published', 'cid' => $this->request->getQuery('cid', 'string'), 'type' => $this->request->getQuery('type', 'string'), 'importance' => $this->request->getQuery('importance', 'string'), 'order' => '-updated_at', 'page' => $this->request->getQuery('page', 'int', 1)); $form = new Forms\FilterForm(); $form->setValues($this->request->getQuery()); $this->view->setVar('form', $form); $news = new Models\NewsManager(); $newsSet = $news->findNews($query); $paginator = new \Eva\EvaEngine\Paginator(array("builder" => $newsSet, "limit" => 40, "page" => $query['page'])); $paginator->setQuery($query); $pager = $paginator->getPaginate(); $this->view->setVar('pager', $pager); }
public function indexAction() { $limit = $this->request->getQuery('per_page', 'int', 25); $limit = $limit > 100 ? 100 : $limit; $limit = $limit < 10 ? 10 : $limit; $order = $this->request->getQuery('order', 'string', '-created_at'); $query = array('q' => $this->request->getQuery('q', 'string'), 'status' => $this->request->getQuery('status', 'string'), 'uid' => $this->request->getQuery('uid', 'int'), 'cid' => $this->request->getQuery('cid', 'int'), 'username' => $this->request->getQuery('username', 'string'), 'codeType' => $this->request->getQuery('code_type', 'string'), 'order' => $order, 'limit' => $limit, 'page' => $this->request->getQuery('page', 'int', 1)); $form = new Forms\FilterForm(); $form->setValues($this->request->getQuery()); $this->view->setVar('form', $form); $news = new Models\NewsManager(); $newsSet = $news->findNews($query); $paginator = new \Eva\EvaEngine\Paginator(array("builder" => $newsSet, "limit" => $limit, "page" => $query['page'])); $paginator->setQuery($query); $pager = $paginator->getPaginate(); $this->view->setVar('pager', $pager); }
/** * * @SWG\Api( * path="/admin/livenews", * description="Livenews manage API", * produces="['application/json']", * @SWG\Operations( * @SWG\Operation( * method="GET", * summary="Get livenews list", * notes="Returns livenews list", * @SWG\Parameters( * @SWG\Parameter( * name="q", * description="Keyword", * paramType="query", * required=false, * type="string" * ), * @SWG\Parameter( * name="status", * description="Status, allow value : pending | published | deleted | draft", * paramType="query", * required=false, * type="string" * ), * @SWG\Parameter( * name="type", * description="Allow value : news | data", * paramType="query", * required=false, * type="string" * ), * @SWG\Parameter( * name="format", * description="Allow value : markdown | json", * paramType="query", * required=false, * type="string" * ), * @SWG\Parameter( * name="uid", * description="User ID", * paramType="query", * required=false, * type="integer" * ), * @SWG\Parameter( * name="cid", * description="Category ID, split multi by comma", * paramType="query", * required=false, * type="string" * ), * @SWG\Parameter( * name="importance", * description="Importance 1-3, split multi by comma", * paramType="query", * required=false, * type="string" * ), * @SWG\Parameter( * name="limit", * description="Limit max:100 | min:3; default is 25", * paramType="query", * required=false, * type="integer" * ), * @SWG\Parameter( * name="page", * description="Page", * paramType="query", * required=false, * type="integer" * ) * ) * ) * ) * ) * @operationName("实时新闻列表") * @operationDescription("实时新闻列表") */ public function indexAction() { $limit = $this->request->getQuery('limit', 'int', 25); $limit = $limit > 100 ? 100 : $limit; $limit = $limit < 3 ? 3 : $limit; //fixed order $query = array('q' => $this->request->getQuery('q', 'string'), 'status' => $this->request->getQuery('status', 'string'), 'type' => $this->request->getQuery('type', 'string'), 'codeType' => $this->request->getQuery('format', 'string'), 'uid' => $this->request->getQuery('uid', 'int'), 'cid' => $this->request->getQuery('cid'), 'importance' => $this->request->getQuery('importance', 'string'), 'order' => '-updated_at', 'page' => $this->request->getQuery('page', 'int', 1)); $form = new Forms\FilterForm(); $form->setValues($this->request->getQuery()); $newsManager = new Models\NewsManager(); $paginator = new \Eva\EvaEngine\Paginator(array("builder" => $newsManager->findNews($query), "limit" => $limit, "page" => $query['page'])); $paginator->setQuery($query); $pager = $paginator->getPaginate(); $livenewsArray = array(); if ($pager->items) { foreach ($pager->items as $key => $livenews) { $livenewsArray[] = $livenews->dump(NewsManager::$simpleDump); } } $data = array('paginator' => $this->getApiPaginator($paginator), 'results' => $livenewsArray); return $this->response->setJsonContent($data); }