/** * Sort the results by the order form input * * @param Illuminate\Database\Query $query * @param array $sortBy Order by columns * @param array $sortByOrder Order by sort colums * @return Illuminate\Database\Query\Builder */ public function scopeSortByInput($query, $sortBy = array(), $sortByOrder = array()) { if (is_array($sortBy) && count($sortBy)) { foreach ($sortBy as $column) { $query->orderBy($column, $sortByOrder && in_array($column, $sortByOrder) ? 'desc' : 'asc'); } } return $query; }
/** * Sort oldest first. * * @param Illuminate\Database\Query $query * * @return Illuminate\Database\Query */ public function scopeOldest($query) { return $query->orderBy('start_at', 'ASC'); }