$releases = new Releases(['Settings' => $page->settings]); $page->smarty->assign('extended', isset($_GET['extended']) && $_GET['extended'] == 1 ? '1' : '0'); $page->smarty->assign('del', isset($_GET['del']) && $_GET['del'] == 1 ? '1' : '0'); // Output is either json or xml. $outputXML = isset($_GET['o']) && $_GET['o'] == 'json' ? false : true; switch ($function) { // Search releases. case 's': verifyEmptyParameter('q'); $maxAge = maxAge(); $page->users->addApiRequest($uid, $_SERVER['REQUEST_URI']); $categoryID = categoryID(); $limit = limit(); $offset = offset(); if (isset($_GET['q'])) { $relData = $releases->search($_GET['q'], -1, -1, -1, -1, -1, 0, 0, -1, -1, $offset, $limit, '', $maxAge, $catExclusions, "basic", $categoryID); } else { $totalRows = $releases->getBrowseCount($categoryID, $maxAge, $catExclusions); $relData = $releases->getBrowseRange($categoryID, $offset, $limit, '', $maxAge, $catExclusions); if ($totalRows > 0 && count($relData) > 0) { $relData[0]['_totalrows'] = $totalRows; } } printOutput($relData, $outputXML, $page, $offset); break; // Search tv releases. // Search tv releases. case 'tv': verifyEmptyParameter('q'); verifyEmptyParameter('rid'); verifyEmptyParameter('season');
$searchString = (string) $_REQUEST["subject"]; $page->smarty->assign('subject', $searchString); break; case isset($_REQUEST["id"]): $searchString = (string) $_REQUEST["id"]; $page->smarty->assign('search', $searchString); break; } $categoryID[] = -1; if (isset($_REQUEST['t'])) { $categoryID = explode(',', $_REQUEST['t']); } foreach ($releases->getBrowseOrdering() as $orderType) { $page->smarty->assign("orderby{$orderType}", WWW_TOP . '/search/' . htmlentities($searchString) . '?t=' . implode(',', $categoryID) . "&ob={$orderType}"); } $results = $releases->search($searchString, -1, -1, -1, -1, -1, 0, 0, -1, -1, $offset, ITEMS_PER_PAGE, $orderBy, -1, $page->userdata["categoryexclusions"], "basic", $categoryID); $page->smarty->assign(['lastvisit' => $page->userdata['lastlogin'], 'pagertotalitems' => count($results) > 0 ? $results[0]['_totalrows'] : 0, 'pageroffset' => $offset, 'pageritemsperpage' => ITEMS_PER_PAGE, 'pagerquerysuffix' => "#results", 'pagerquerybase' => WWW_TOP . "/search/" . htmlentities($searchString) . "?t=" . implode(',', $categoryID) . "&ob={$orderBy}&offset=", 'category' => $categoryID]); } $searchVars = ['searchadvr' => '', 'searchadvsubject' => '', 'searchadvposter' => '', 'searchadvdaysnew' => '', 'searchadvdaysold' => '', 'searchadvgroups' => '', 'searchadvcat' => '', 'searchadvsizefrom' => '', 'searchadvsizeto' => '', 'searchadvhasnfo' => '', 'searchadvhascomments' => '']; foreach ($searchVars as $searchVarKey => $searchVar) { $searchVars[$searchVarKey] = isset($_REQUEST[$searchVarKey]) ? (string) $_REQUEST[$searchVarKey] : ''; } $searchVars['selectedgroup'] = $searchVars['searchadvgroups']; $searchVars['selectedcat'] = $searchVars['searchadvcat']; $searchVars['selectedsizefrom'] = $searchVars['searchadvsizefrom']; $searchVars['selectedsizeto'] = $searchVars['searchadvsizeto']; foreach ($searchVars as $searchVarKey => $searchVar) { $page->smarty->assign($searchVarKey, $searchVars[$searchVarKey]); } if (isset($_REQUEST["searchadvr"]) && !isset($_REQUEST["id"]) && !isset($_REQUEST["subject"]) && $searchType != "basic") { $orderByString = '';