if (!$page->users->isLoggedIn()) { $page->show403(); } $releases = new Releases(); $tvrage = new TvRage(); $cat = new Category(); $us = new UserSeries(); if (isset($_GET["id"]) && ctype_digit($_GET['id'])) { $category = -1; if (isset($_REQUEST["t"]) && ctype_digit($_REQUEST["t"])) { $category = $_REQUEST["t"]; } $catarray = []; $catarray[] = $category; $rel = $releases->searchbyRageId($_GET["id"], '', '', 0, 1000, "", $catarray, -1); $rage = $tvrage->getByRageID($_GET['id']); if (!$rage) { $page->smarty->assign('nodata', 'No tvrage information for this series.'); } elseif (!$rel) { $page->smarty->assign('nodata', 'No releases for this series.'); } else { $myshows = $us->getShow($page->users->currentUserId(), $rage[0]['rageid']); // Sort releases by season, episode, date posted. $season = $episode = $posted = []; foreach ($rel as $rlk => $rlv) { $season[$rlk] = $rlv['season']; $episode[$rlk] = $rlv['episode']; $posted[$rlk] = $rlv['postdate']; } array_multisort($season, SORT_DESC, $episode, SORT_DESC, $posted, SORT_DESC, $rel);
if (isset($_GET["season"]) && $_GET["season"] == "") { showApiError(200); } if (isset($_GET["ep"]) && $_GET["ep"] == "") { showApiError(200); } $users->addApiRequest($uid, $_SERVER['REQUEST_URI']); $limit = 100; if (isset($_GET["limit"]) && is_numeric($_GET["limit"]) && $_GET["limit"] < 100) { $limit = $_GET["limit"]; } $offset = 0; if (isset($_GET["offset"]) && is_numeric($_GET["offset"])) { $offset = $_GET["offset"]; } $reldata = $releases->searchbyRageId(isset($_GET["rid"]) ? $_GET["rid"] : "-1", isset($_GET["season"]) ? $_GET["season"] : "", isset($_GET["ep"]) ? $_GET["ep"] : "", $offset, $limit, isset($_GET["q"]) ? $_GET["q"] : "", $categoryId, $maxage); if ($outputtype == "xml") { $page->smarty->assign('offset', $offset); $page->smarty->assign('releases', $reldata); header("Content-type: text/xml"); echo trim($page->smarty->fetch('apiresult.tpl')); } else { echo json_encode($reldata); //TODO:make that a more specific array of data to return rather than resultset } break; // // search movie releases // // // search movie releases
$relData[0]['_totalrows'] = $totalRows; } } printOutput($relData, $outputXML, $page, $offset); break; // Search tv releases. // Search tv releases. case 'tv': verifyEmptyParameter('q'); verifyEmptyParameter('rid'); verifyEmptyParameter('season'); verifyEmptyParameter('ep'); $maxAge = maxAge(); $page->users->addApiRequest($uid, $_SERVER['REQUEST_URI'], $hosthash); $offset = offset(); $relData = $releases->searchbyRageId(isset($_GET['rid']) ? $_GET['rid'] : '-1', isset($_GET['season']) ? $_GET['season'] : '', isset($_GET['ep']) ? $_GET['ep'] : '', $offset, limit(), isset($_GET['q']) ? $_GET['q'] : '', categoryid(), $maxAge); addLanguage($relData, $page->settings); printOutput($relData, $outputXML, $page, $offset); break; // // get nfo // // // get nfo // case "gn": if (!isset($_GET["id"])) { showApiError(200); } $page->users->addApiRequest($uid, $_SERVER['REQUEST_URI'], $hosthash); $reldata = $releases->getByGuid($_GET["id"]);