function search($page = 0, $display = 26) { $searchBy = $_POST["search_by"]; $term = $_POST["search_term"]; $userid = $this->session->userdata('userid'); $tracks = array(); try { if ($searchBy == "name") { $returned = Track::searchTrackName($term, $userid, $page * $display, $display); } else { if ($searchBy == "genre") { $returned = Track::searchByGenre($term, $userid, $page * $display, $display); } else { if ($searchBy == "artist") { $returned = Track::searchByArtist($term, $userid, $page * $display, $display); } else { if ($searchBy == "playlist") { $this->load->static_model("Playlist"); $returned = Playlist::searchByName($term, $userid, $page * $display, $display); } else { echo json_encode(array("error" => "The search criteria is not recognized")); return; } } } } } catch (Exception $e) { echo json_encode(array("error" => $e->getMessage())); return; } $tracks = $returned['tracks']; $num_rows = $returned['rows']; if ($num_rows > $display) { $num_pages = ceil($num_rows / $display); } else { $num_pages = 1; } $newTracks = array(); foreach ($tracks as $track) { $newTracks[] = $track->toArray(); } $result = array("tracks" => $newTracks, "cur_page" => $page, "num_pages" => $num_pages); echo json_encode($result); }