/** * Return a copy of the Select object with current sorting applied to it. * * @param coreDatabaseSelect $select * @return coreDatabaseSelect */ private function applySorting(coreDatabaseSelect $select) { $this->sortColumn = $this->request->get(self::QUERY_SORTCOLUMN, $this->settings['sortColumn']); if ($this->sortColumn === null) { // sort by default on first data column, ascending $this->sortColumn = isset($this->columns[0]->colSort) ? $this->columns[0]->colSort : $this->columns[0]->colData; } $this->sortOrder = intval($this->request->get(self::QUERY_SORTORDER, $this->settings['sortOrder'])); $this->sortOrder = $this->sortOrder % count($this->sortOrders); return $select->order($this->sortColumn . ' ' . $this->sortOrders[$this->sortOrder]); }