/** * Get the paging parameters for the current collection request from input data. * @param Ushahidi\SearchData $input * @return Array [limit, offset, order, orderby, curr, next, prev] */ protected function _get_paging_for_input(SearchData $input) { $params = $input->getSortingParams(); $prev_params = $next_params = $params; $next_params['offset'] = $params['offset'] + $params['limit']; $prev_params['offset'] = $params['offset'] - $params['limit']; $prev_params['offset'] = $prev_params['offset'] > 0 ? $prev_params['offset'] : 0; $curr = URL::site($this->request->uri() . URL::query($params), $this->request); $next = URL::site($this->request->uri() . URL::query($next_params), $this->request); $prev = URL::site($this->request->uri() . URL::query($prev_params), $this->request); return array('limit' => $input->limit, 'offset' => $input->offset, 'order' => $input->order, 'orderby' => $input->orderby, 'curr' => $curr, 'next' => $next, 'prev' => $prev); }