mirror of
https://github.com/NNTmux/newznab-tmux.git
synced 2026-08-30 09:48:55 +00:00
Update search function, fix notices. Ported from nZEDb.
This commit is contained in:
@@ -1147,7 +1147,6 @@ class Releases
|
||||
* @param string $usenetName
|
||||
* @param string $posterName
|
||||
* @param string $groupName
|
||||
* @param array $cat
|
||||
* @param int $sizeFrom
|
||||
* @param int $sizeTo
|
||||
* @param int $hasNfo
|
||||
@@ -1158,22 +1157,44 @@ class Releases
|
||||
* @param int $limit
|
||||
* @param string $orderBy
|
||||
* @param int $maxAge
|
||||
* @param array $excludedCats
|
||||
* @param integer[] $excludedCats
|
||||
* @param string $type
|
||||
* @param array $cat
|
||||
*
|
||||
* @return array
|
||||
*/
|
||||
public function search(
|
||||
$searchName, $usenetName, $posterName, $groupName, $cat = [-1], $sizeFrom,
|
||||
$sizeTo, $hasNfo, $hasComments, $daysNew, $daysOld, $offset = 0, $limit = 1000,
|
||||
$orderBy = '', $maxAge = -1, $excludedCats = [], $type = 'basic'
|
||||
)
|
||||
{
|
||||
|
||||
$sphinxSearch = new SphinxSearch();
|
||||
$releaseSearch = new ReleaseSearch($this->pdo, $sphinxSearch);
|
||||
$sizeRange = range(1, 11);
|
||||
$groups = new Groups();
|
||||
$searchName,
|
||||
$usenetName,
|
||||
$posterName,
|
||||
$groupName,
|
||||
$sizeFrom,
|
||||
$sizeTo,
|
||||
$hasNfo,
|
||||
$hasComments,
|
||||
$daysNew,
|
||||
$daysOld,
|
||||
$offset = 0,
|
||||
$limit = 1000,
|
||||
$orderBy = '',
|
||||
$maxAge = -1,
|
||||
$excludedCats = [],
|
||||
$type = 'basic',
|
||||
$cat = [-1]
|
||||
) {
|
||||
$sizeRange = [
|
||||
1 => 1,
|
||||
2 => 2.5,
|
||||
3 => 5,
|
||||
4 => 10,
|
||||
5 => 20,
|
||||
6 => 30,
|
||||
7 => 40,
|
||||
8 => 80,
|
||||
9 => 160,
|
||||
10 => 320,
|
||||
11 => 640,
|
||||
];
|
||||
|
||||
if ($orderBy == '') {
|
||||
$orderBy = [];
|
||||
@@ -1196,20 +1217,21 @@ class Releases
|
||||
|
||||
$whereSql = sprintf(
|
||||
"%s
|
||||
WHERE r.passwordstatus <= (select value from settings where setting='showpasswordedrelease') AND r.nzbstatus = %d %s %s %s %s %s %s %s %s %s %s %s",
|
||||
$releaseSearch->getFullTextJoinString(),
|
||||
WHERE r.passwordstatus %s AND r.nzbstatus = %d %s %s %s %s %s %s %s %s %s %s %s",
|
||||
$this->releaseSearch->getFullTextJoinString(),
|
||||
$this->showPasswords(),
|
||||
Enzebe::NZB_ADDED,
|
||||
($maxAge > 0 ? sprintf(' AND r.postdate > (NOW() - INTERVAL %d DAY) ', $maxAge) : ''),
|
||||
($groupName != -1 ? sprintf(' AND r.groupid = %d ', $groups->getIDByName($groupName)) : ''),
|
||||
(in_array($sizeFrom, $sizeRange) ? ' AND r.size > ' . (string)(104857600 * (int)$sizeFrom) . ' ' : ''),
|
||||
(in_array($sizeTo, $sizeRange) ? ' AND r.size < ' . (string)(104857600 * (int)$sizeTo) . ' ' : ''),
|
||||
($groupName != -1 ? sprintf(' AND r.groupid = %d ', $this->groups->getIDByName($groupName)) : ''),
|
||||
(array_key_exists($sizeFrom, $sizeRange) ? ' AND r.size > ' . (string)(104857600 * (int)$sizeRange[$sizeFrom]) . ' ' : ''),
|
||||
(array_key_exists($sizeTo, $sizeRange) ? ' AND r.size < ' . (string)(104857600 * (int)$sizeRange[$sizeTo]) . ' ' : ''),
|
||||
($hasNfo != 0 ? ' AND r.nfostatus = 1 ' : ''),
|
||||
($hasComments != 0 ? ' AND r.comments > 0 ' : ''),
|
||||
($type !== 'advanced' ? $this->categorySQL($cat) : ($cat[0] != '-1' ? sprintf(' AND (r.categoryid = %d) ', $cat[0]) : '')),
|
||||
($daysNew != -1 ? sprintf(' AND r.postdate < (NOW() - INTERVAL %d DAY) ', $daysNew) : ''),
|
||||
($daysOld != -1 ? sprintf(' AND r.postdate > (NOW() - INTERVAL %d DAY) ', $daysOld) : ''),
|
||||
(count($excludedCats) > 0 ? ' AND r.categoryid NOT IN (' . implode(',', $excludedCats) . ')' : ''),
|
||||
(count($searchOptions) > 0 ? $releaseSearch->getSearchSQL($searchOptions) : '')
|
||||
(count($searchOptions) > 0 ? $this->releaseSearch->getSearchSQL($searchOptions) : '')
|
||||
);
|
||||
|
||||
$baseSql = sprintf(
|
||||
@@ -1219,7 +1241,7 @@ class Releases
|
||||
groups.name AS group_name,
|
||||
rn.id AS nfoid,
|
||||
re.releaseid AS reid,
|
||||
cp.id AS categoryParentID
|
||||
cp.id AS categoryparentid
|
||||
FROM releases r
|
||||
LEFT OUTER JOIN releasevideo re ON re.releaseid = r.id
|
||||
LEFT OUTER JOIN releasenfo rn ON rn.releaseid = r.id
|
||||
@@ -1246,7 +1268,6 @@ class Releases
|
||||
if ($releases && count($releases)) {
|
||||
$releases[0]['_totalrows'] = $this->getPagerCount($baseSql);
|
||||
}
|
||||
|
||||
return $releases;
|
||||
}
|
||||
|
||||
|
||||
+134
-190
@@ -1,205 +1,137 @@
|
||||
<?php
|
||||
|
||||
|
||||
if (!$users->isLoggedIn()) {
|
||||
if (!$page->users->isLoggedIn()) {
|
||||
$page->show403();
|
||||
}
|
||||
|
||||
$grp = new Groups();
|
||||
$releases = new Releases();
|
||||
$c = new Category();
|
||||
$groups = new Groups(['Settings' => $page->settings]);
|
||||
$releases = new Releases(['Groups' => $groups, 'Settings' => $page->settings]);
|
||||
|
||||
$page->meta_title = "Search Nzbs";
|
||||
$page->meta_keywords = "search,nzb,description,details";
|
||||
$page->meta_title = "Search Nzbs";
|
||||
$page->meta_keywords = "search,nzb,description,details";
|
||||
$page->meta_description = "Search for Nzbs";
|
||||
|
||||
$results = array();
|
||||
$searchtype = "basic";
|
||||
$searchStr = "";
|
||||
$results = [];
|
||||
|
||||
$searchType = "basic";
|
||||
if (isset($_REQUEST["search_type"]) && $_REQUEST["search_type"] == "adv") {
|
||||
$searchtype = "advanced";
|
||||
$searchType = "advanced";
|
||||
}
|
||||
|
||||
if (isset($_REQUEST["id"]) && !isset($_REQUEST["searchadvr"]) && !isset($_REQUEST["subject"])) {
|
||||
$offset = (isset($_REQUEST["offset"]) && ctype_digit($_REQUEST['offset'])) ? $_REQUEST["offset"] : 0;
|
||||
$ordering = $releases->getBrowseOrdering();
|
||||
$orderby = isset($_REQUEST["ob"]) && in_array($_REQUEST['ob'], $ordering) ? $_REQUEST["ob"] : '';
|
||||
$ordering = $releases->getBrowseOrdering();
|
||||
$orderBy = (isset($_REQUEST["ob"]) && in_array($_REQUEST['ob'], $ordering) ? $_REQUEST["ob"] : '');
|
||||
$offset = (isset($_REQUEST["offset"]) && ctype_digit($_REQUEST['offset'])) ? $_REQUEST["offset"] : 0;
|
||||
|
||||
if ($searchtype == "basic") {
|
||||
$searchStr = (string) $_REQUEST["id"];
|
||||
$categoryId = array();
|
||||
if (isset($_REQUEST["t"])) {
|
||||
$categoryId = explode(",", $_REQUEST["t"]);
|
||||
} else {
|
||||
$categoryId[] = -1;
|
||||
}
|
||||
|
||||
foreach ($ordering as $ordertype) {
|
||||
$page->smarty->assign('orderby' . $ordertype, WWW_TOP . "/search/" . htmlentities($searchStr) . "?t=" . (implode(',', $categoryId)) . "&ob=" . $ordertype);
|
||||
}
|
||||
|
||||
$page->smarty->assign('category', $categoryId);
|
||||
$page->smarty->assign('pagerquerybase', WWW_TOP . "/search/" . htmlentities($searchStr) . "?t=" . (implode(',', $categoryId)) . "&ob=" . $orderby . "&offset=");
|
||||
$page->smarty->assign('search', $searchStr);
|
||||
if (isset ($_REQUEST['subject'])) {
|
||||
$page->smarty->assign('subject', $_REQUEST['subject']);
|
||||
}
|
||||
$results = $releases->search($searchStr, -1, -1, -1, $categoryId, -1, -1, 0, 0, -1, -1, $offset, ITEMS_PER_PAGE, $orderby, -1, $page->userdata["categoryexclusions"]);
|
||||
}
|
||||
|
||||
$page->smarty->assign('lastvisit', $page->userdata['lastlogin']);
|
||||
if (sizeof($results) > 0) {
|
||||
$totalRows = $results[0]['_totalrows'];
|
||||
} else {
|
||||
$totalRows = 0;
|
||||
}
|
||||
|
||||
$page->smarty->assign('pagertotalitems', $totalRows);
|
||||
$page->smarty->assign('pageroffset', $offset);
|
||||
$page->smarty->assign('pageritemsperpage', ITEMS_PER_PAGE);
|
||||
$page->smarty->assign('pagerquerysuffix', "#results");
|
||||
|
||||
$pager = $page->smarty->fetch("pager.tpl");
|
||||
$page->smarty->assign('pager', $pager);
|
||||
}
|
||||
|
||||
if (isset($_REQUEST["subject"]) && !isset($_REQUEST["searchadvr"]) && !isset($_REQUEST["id"])) {
|
||||
$offset = (isset($_REQUEST["offset"]) && ctype_digit($_REQUEST['offset'])) ? $_REQUEST["offset"] : 0;
|
||||
$ordering = $releases->getBrowseOrdering();
|
||||
$orderby = isset($_REQUEST["ob"]) && in_array($_REQUEST['ob'], $ordering) ? $_REQUEST["ob"] : '';
|
||||
|
||||
if ($searchtype == "basic") {
|
||||
$searchStr = (string) $_REQUEST["subject"];
|
||||
|
||||
$categoryId = array();
|
||||
if (isset($_REQUEST["t"])) {
|
||||
$categoryId = explode(",", $_REQUEST["t"]);
|
||||
} else {
|
||||
$categoryId[] = -1;
|
||||
}
|
||||
|
||||
foreach ($ordering as $ordertype) {
|
||||
$page->smarty->assign('orderby' . $ordertype, WWW_TOP . "/search/" . htmlentities($searchStr) . "?t=" . (implode(',', $categoryId)) . "&ob=" . $ordertype);
|
||||
}
|
||||
|
||||
$page->smarty->assign('category', $categoryId);
|
||||
$page->smarty->assign('pagerquerybase', WWW_TOP . "/search/" . htmlentities($searchStr) . "?t=" . (implode(',', $categoryId)) . "&ob=" . $orderby . "&offset=");
|
||||
$page->smarty->assign('subject', $searchStr);
|
||||
$results = $releases->search($searchStr, -1, -1, -1, $categoryId, -1, -1, 0, 0, -1, -1, $offset, ITEMS_PER_PAGE, $orderby, -1, $page->userdata["categoryexclusions"]);
|
||||
}
|
||||
|
||||
$page->smarty->assign('lastvisit', $page->userdata['lastlogin']);
|
||||
if (sizeof($results) > 0) {
|
||||
$totalRows = $results[0]['_totalrows'];
|
||||
} else {
|
||||
$totalRows = 0;
|
||||
}
|
||||
|
||||
$page->smarty->assign('pagertotalitems', $totalRows);
|
||||
$page->smarty->assign('pageroffset', $offset);
|
||||
$page->smarty->assign('pageritemsperpage', ITEMS_PER_PAGE);
|
||||
$page->smarty->assign('pagerquerysuffix', "#results");
|
||||
|
||||
$pager = $page->smarty->fetch("pager.tpl");
|
||||
$page->smarty->assign('pager', $pager);
|
||||
}
|
||||
|
||||
if (isset($_REQUEST["searchadvr"]) && !isset($_REQUEST["id"]) && !isset($_REQUEST["subject"])) {
|
||||
$offset = (isset($_REQUEST["offset"]) && ctype_digit($_REQUEST['offset'])) ? $_REQUEST["offset"] : 0;
|
||||
$ordering = $releases->getBrowseOrdering();
|
||||
$orderby = isset($_REQUEST["ob"]) && in_array($_REQUEST['ob'], $ordering) ? $_REQUEST["ob"] : '';
|
||||
|
||||
if ($searchtype !== "basic") {
|
||||
|
||||
$searchSearchName = (string) $_REQUEST["searchadvr"];
|
||||
$searchUsenetName = (string) $_REQUEST["searchadvsubject"];
|
||||
$searchPoster = (string) $_REQUEST["searchadvposter"];
|
||||
$searchdaysnew = (string) $_REQUEST["searchadvdaysnew"];
|
||||
$searchdaysold = (string) $_REQUEST["searchadvdaysold"];
|
||||
$searchGroups = (string) $_REQUEST["searchadvgroups"];
|
||||
$searchCat = (string) $_REQUEST["searchadvcat"];
|
||||
$searchSizeFrom = (string) $_REQUEST["searchadvsizefrom"];
|
||||
$searchSizeTo = (string) $_REQUEST["searchadvsizeto"];
|
||||
$searchHasNFO = (string) $_REQUEST["searchadvhasnfo"];
|
||||
$searchHascomments = (string) $_REQUEST["searchadvhascomments"];
|
||||
|
||||
$page->smarty->assign('searchadvr', $searchSearchName);
|
||||
$page->smarty->assign('searchadvsubject', $searchUsenetName);
|
||||
$page->smarty->assign('searchadvposter', $searchPoster);
|
||||
$page->smarty->assign('searchadvdaysnew', $searchdaysnew);
|
||||
$page->smarty->assign('searchadvdaysold', $searchdaysold);
|
||||
$page->smarty->assign('selectedgroup', $searchGroups);
|
||||
$page->smarty->assign('selectedcat', $searchCat);
|
||||
$page->smarty->assign('selectedsizefrom', $searchSizeFrom);
|
||||
$page->smarty->assign('selectedsizeto', $searchSizeTo);
|
||||
$page->smarty->assign('searchadvhasnfo', $searchHasNFO);
|
||||
$page->smarty->assign('searchadvhascomments', $searchHascomments);
|
||||
foreach ($ordering as $ordertype) {
|
||||
$page->smarty->assign('orderby' . $ordertype, WWW_TOP . "/search?searchadvr=" . htmlentities($searchSearchName) . "&searchadvsubject=" . htmlentities($searchUsenetName) . "&searchadvposter=" . htmlentities($searchPoster) . "&searchadvdaysnew=" . htmlentities($searchdaysnew) . "&searchadvdaysold=" . htmlentities($searchdaysold) . "&searchadvgroups=" . htmlentities($searchGroups) . "&searchadvcat=" . htmlentities($searchCat) . "&searchadvsizefrom=" . htmlentities($searchSizeFrom) . "&searchadvsizeto=" . htmlentities($searchSizeTo) . "&searchadvhasnfo=" . htmlentities($searchHasNFO) . "&searchadvhascomments=" . htmlentities($searchHascomments) . "&search_type=adv" . "&ob=" . $ordertype);
|
||||
}
|
||||
|
||||
$page->smarty->assign('pagerquerybase', WWW_TOP . "/search?searchadvr=" . htmlentities($searchSearchName) . "&searchadvsubject=" . htmlentities($searchUsenetName) . "&searchadvposter=" . htmlentities($searchPoster) . "&searchadvdaysnew=" . htmlentities($searchdaysnew) . "&searchadvdaysold=" . htmlentities($searchdaysold) . "&searchadvgroups=" . htmlentities($searchGroups) . "&searchadvcat=" . htmlentities($searchCat) . "&searchadvsizefrom=" . htmlentities($searchSizeFrom) . "&searchadvsizeto=" . htmlentities($searchSizeTo) . "&searchadvhasnfo=" . htmlentities($searchHasNFO) . "&searchadvhascomments=" . htmlentities($searchHascomments) . "&search_type=adv" . "&ob=" . $orderby . "&offset=");
|
||||
if ($_REQUEST["searchadvr"] == "") {
|
||||
$searchSearchName = -1;
|
||||
}
|
||||
if ($_REQUEST["searchadvsubject"] == "") {
|
||||
$searchUsenetName = -1;
|
||||
}
|
||||
if ($_REQUEST["searchadvposter"] == "") {
|
||||
$searchPoster = -1;
|
||||
}
|
||||
if ($_REQUEST["searchadvdaysnew"] == "") {
|
||||
$searchdaysnew = -1;
|
||||
}
|
||||
if ($_REQUEST["searchadvdaysold"] == "") {
|
||||
$searchdaysold = -1;
|
||||
}
|
||||
if ($_REQUEST["searchadvcat"] == "") {
|
||||
$searchCat = -1;
|
||||
}
|
||||
$results = $releases->search($searchSearchName, $searchUsenetName, $searchPoster, $searchGroups, [$searchCat], $searchSizeFrom, $searchSizeTo, $searchHasNFO, $searchHascomments, $searchdaysnew, $searchdaysold, $offset, ITEMS_PER_PAGE, $orderby, -1, $page->userdata["categoryexclusions"], "advanced");
|
||||
}
|
||||
|
||||
$page->smarty->assign('lastvisit', $page->userdata['lastlogin']);
|
||||
if (sizeof($results) > 0) {
|
||||
$totalRows = $results[0]['_totalrows'];
|
||||
} else {
|
||||
$totalRows = 0;
|
||||
}
|
||||
|
||||
$page->smarty->assign('pagertotalitems', $totalRows);
|
||||
$page->smarty->assign('pageroffset', $offset);
|
||||
$page->smarty->assign('pageritemsperpage', ITEMS_PER_PAGE);
|
||||
$page->smarty->assign('pagerquerysuffix', "#results");
|
||||
|
||||
$pager = $page->smarty->fetch("pager.tpl");
|
||||
$page->smarty->assign('pager', $pager);
|
||||
}
|
||||
|
||||
$grouplist = $grp->getGroupsForSelect();
|
||||
$page->smarty->assign('grouplist', $grouplist);
|
||||
|
||||
$catlist = $c->getForSelect();
|
||||
$page->smarty->assign('catlist', $catlist);
|
||||
|
||||
$sizelist = array(-1 => '--Select--',
|
||||
1 => '100MB',
|
||||
2 => '250MB',
|
||||
3 => '500MB',
|
||||
4 => '1GB',
|
||||
5 => '2GB',
|
||||
6 => '3GB',
|
||||
7 => '4GB',
|
||||
8 => '8GB',
|
||||
9 => '16GB',
|
||||
10 => '32GB',
|
||||
11 => '64GB'
|
||||
$page->smarty->assign(
|
||||
[
|
||||
'subject' => '', 'search' => '', 'category' => [0], 'pagertotalitems' => 0,
|
||||
'pageritemsperpage' => 1, 'pageroffset' => 1, 'covgroup' => ''
|
||||
]
|
||||
);
|
||||
|
||||
$page->smarty->assign('sizelist', $sizelist);
|
||||
$page->smarty->assign('results', $results);
|
||||
$page->smarty->assign('sadvanced', ($searchtype != "basic"));
|
||||
if ((isset($_REQUEST["id"]) || isset($_REQUEST["subject"])) && !isset($_REQUEST["searchadvr"]) && $searchType == "basic") {
|
||||
|
||||
$searchString = '';
|
||||
switch (true) {
|
||||
case isset($_REQUEST["subject"]):
|
||||
$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 = '';
|
||||
foreach ($searchVars as $searchVarKey => $searchVar) {
|
||||
$orderByString .= "&$searchVarKey=" . htmlentities($searchVar);
|
||||
}
|
||||
$orderByString = ltrim($orderByString, '&');
|
||||
|
||||
foreach ($ordering as $orderType) {
|
||||
$page->smarty->assign(
|
||||
'orderby' . $orderType,
|
||||
WWW_TOP . "/search?$orderByString&search_type=adv&ob=$orderType"
|
||||
);
|
||||
}
|
||||
|
||||
$results = $releases->search(
|
||||
($searchVars['searchadvr'] == '' ? -1 : $searchVars['searchadvr']),
|
||||
($searchVars['searchadvsubject'] == '' ? -1 : $searchVars['searchadvsubject']),
|
||||
($searchVars['searchadvposter'] == '' ? -1 : $searchVars['searchadvposter']),
|
||||
$searchVars['searchadvgroups'], $searchVars['searchadvsizefrom'], $searchVars['searchadvsizeto'],
|
||||
$searchVars['searchadvhasnfo'], $searchVars['searchadvhascomments'],
|
||||
($searchVars['searchadvdaysnew'] == '' ? -1 : $searchVars['searchadvdaysnew']),
|
||||
($searchVars['searchadvdaysold'] == '' ? -1 : $searchVars['searchadvdaysold']),
|
||||
$offset, ITEMS_PER_PAGE, $orderBy, -1, $page->userdata["categoryexclusions"], "advanced",
|
||||
[($searchVars['searchadvcat'] == '' ? -1 : $searchVars['searchadvcat'])]
|
||||
);
|
||||
|
||||
$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?$orderByString&search_type=adv&ob=$orderBy&offset="
|
||||
]
|
||||
);
|
||||
}
|
||||
|
||||
$ft1 = $page->settings->checkIndex('releases', 'ix_releases_name_searchname_ft');
|
||||
$ft2 = $page->settings->checkIndex('releases', 'ix_releases_name_ft');
|
||||
@@ -207,7 +139,7 @@ $ft3 = $page->settings->checkIndex('releases', 'ix_releases_searchname_ft');
|
||||
switch (NN_RELEASE_SEARCH_TYPE) {
|
||||
case ReleaseSearch::FULLTEXT:
|
||||
$search_description =
|
||||
'MySQL Full Text Search Rules:<br />
|
||||
'MySQL Full Text Search Rules:<br />
|
||||
A leading exclamation point(! in place of +) indicates that this word must be present in each row that is returned.<br />
|
||||
A leading minus sign indicates that this word must not be present in any of the rows that are returned.<br />
|
||||
By default (when neither + nor - is specified) the word is optional, but the rows that contain it are rated higher.<br />
|
||||
@@ -219,7 +151,7 @@ See <a target="_blank" href=\'http://dev.mysql.com/doc/refman/5.0/en/fulltext-bo
|
||||
case ReleaseSearch::SPHINX:
|
||||
default:
|
||||
$search_description =
|
||||
'Sphinx Search Rules:<br />
|
||||
'Sphinx Search Rules:<br />
|
||||
The search is case insensitive.<br />
|
||||
All words must be separated by spaces.
|
||||
Do not seperate words using . or _ or -, sphinx will match a space against those automatically.<br />
|
||||
@@ -235,8 +167,20 @@ You can enclose words using paranthesis. ie: (^game*|^dex*)s03*(x264<<nogrp$)
|
||||
You can combine some of these rules, but not all.<br />';
|
||||
break;
|
||||
}
|
||||
$page->smarty->assign('search_description', $search_description);
|
||||
|
||||
$page->smarty->assign(
|
||||
[
|
||||
'sizelist' => [
|
||||
-1 => '--Select--', 1 => '100MB', 2 => '250MB', 3 => '500MB', 4 => '1GB', 5 => '2GB',
|
||||
6 => '3GB', 7 => '4GB', 8 => '8GB', 9 => '16GB', 10 => '32GB', 11 => '64GB'
|
||||
],
|
||||
'results' => $results, 'sadvanced' => ($searchType != "basic"),
|
||||
'grouplist' => $groups->getGroupsForSelect(),
|
||||
'catlist' => (new Category(['Settings' => $page->settings]))->getForSelect(),
|
||||
'search_description' => $search_description,
|
||||
'pager' => $page->smarty->fetch("pager.tpl")
|
||||
]
|
||||
);
|
||||
|
||||
$page->content = $page->smarty->fetch('search.tpl');
|
||||
$page->render();
|
||||
Reference in New Issue
Block a user