public function setSearchParams(SearchData $search) { $this->search_query = $this->selectQuery(); $sorting = $search->getSorting(); if (!empty($sorting['orderby'])) { $this->search_query->order_by($this->getTable() . '.' . $sorting['orderby'], Arr::get($sorting, 'order')); } if (!empty($sorting['offset'])) { $this->search_query->offset($sorting['offset']); } if (!empty($sorting['limit'])) { $this->search_query->limit($sorting['limit']); } // apply the unique conditions of the search $this->setSearchConditions($search); }
public function setSearchParams(SearchData $search) { // Overriding so we can alter sorting logic // @todo make it easier to override just sorting $this->search_query = $this->selectQuery(); $sorting = $search->getSorting(); // Always return featured sets first // @todo make this optional $this->search_query->order_by('sets.featured', 'DESC'); if (!empty($sorting['orderby'])) { $this->search_query->order_by($this->getTable() . '.' . $sorting['orderby'], Arr::get($sorting, 'order')); } if (!empty($sorting['offset'])) { $this->search_query->offset($sorting['offset']); } if (!empty($sorting['limit'])) { $this->search_query->limit($sorting['limit']); } // apply the unique conditions of the search $this->setSearchConditions($search); }