private function prepareQuery(RESTApiRequest $request) { $raw_karaoke = $this->manager->getRawAll(); $search = $request->getSearch(); if ($search !== null) { $raw_karaoke->like(array('karaoke.name' => '%' . $search . '%', 'karaoke.singer' => '%' . $search . '%', 'karaoke_genre.title' => '%' . $search . '%'), 'OR'); } if (!empty($this->genres_ids)) { $raw_karaoke->in('genre_id', $this->genres_ids); } if (!empty($this->karaoke_id)) { $raw_karaoke->where(array('karaoke.id' => $this->karaoke_id)); } return $raw_karaoke; }
private function prepareQuery(RESTApiRequest $request) { $raw_videos = $this->manager->getRawAll(); $search = $request->getSearch(); if ($search !== null) { $raw_videos->like(array('video.name' => '%' . $search . '%', 'o_name' => '%' . $search . '%', 'actors' => '%' . $search . '%', 'director' => '%' . $search . '%', 'year' => '%' . $search . '%'), 'OR'); } if ($request->getParam('mark') == 'favorite') { $raw_videos->in('id', $this->favorites); } elseif ($request->getParam('mark') == 'not_ended') { $raw_videos->in('id', array_keys($this->not_ended)); } if (!empty($this->video_id)) { $raw_videos->where(array('id' => $this->video_id)); } if (!empty($this->genres_ids)) { $raw_videos->group_in(array('cat_genre_id_1' => $this->genres_ids, 'cat_genre_id_2' => $this->genres_ids, 'cat_genre_id_3' => $this->genres_ids, 'cat_genre_id_4' => $this->genres_ids), 'OR'); } return $raw_videos; }