public function index() { $this->set_title('Artists'); if ($this->params()->order == "date") { $order = "artists.updated_at DESC"; } else { $order = "artists.name"; } $aliases_only = $this->params()->name == 'aliases_only'; $query = Artist::none(); $page = $this->page_number(); $per_page = 50; if ($this->params()->name && !$aliases_only) { $query = Artist::generate_sql($this->params()->name); } elseif ($this->params()->url && !$aliases_only) { $query = Artist::generate_sql($this->params()->url); } else { $query = Artist::order($order); } if (!$this->params()->name && !$this->params()->url) { $query->where(($aliases_only ? '!' : '') . 'ISNULL(artists.alias_id)'); } $this->artists = $query->paginate($page, $per_page); $this->respond_to_list("artists"); }