2) { if ($SQLWhere != '') { $SQLWhere.= ' AND '; } if (substr($SearchVal,0,1) == '-') { $SQLWhere.="MATCH ($Field) AGAINST ('".db_string($SearchVal)."' IN BOOLEAN MODE)"; } else { $SQLWhere.="MATCH ($Field) AGAINST ('".db_string($SearchVal)."')"; } } else { if ($SQLWhere != '') { $SQLWhere.= ' AND '; } if (substr($SearchVal,0,1) == '-') { $SQLWhere.=$Field." NOT LIKE '%".db_string(substr($SearchVal,1))."%'"; } else { $SQLWhere.=$Field." LIKE '%".db_string($SearchVal)."%'"; } } $FilterString.="($SearchVal)(.+?)"; } } } else { if ($SQLWhere != '') { $SQLWhere.= ' AND '; } $SQLWhere.=$Field." LIKE '".db_string($SearchStr)."'"; $FilterString.="(.+?)($SearchStr)(.+?)"; } $Search = 1; $FilterString = "/$FilterString/si"; if ($SQLWhere != '' && $AddWhere) { $SQLWhere = 'WHERE '.$SQLWhere; } return $SQLWhere; } function quotes($Str) { $Str = str_replace(' ','{{SPACE}}',trim($Str[1])); return ' '.$Str.' '; } // The "order by x" links on columns headers function header_link($SortKey,$DefaultWay = 'DESC') { global $OrderBy,$OrderWay; if ($SortKey == $OrderBy) { if ($OrderWay == 'DESC') { $NewWay = 'ASC'; } else { $NewWay = 'DESC'; } } else { $NewWay = $DefaultWay; } return 'torrents.php?order_way='.$NewWay.'&order_by='.$SortKey.'&'.Format::get_url(array('order_way','order_by')); } // Setting default search options if ($_GET['setdefault']) { $UnsetList[] = '/(&?page\=.+?&?)/i'; $UnsetList[] = '/(&?setdefault\=.+?&?)/i'; $DB->query("SELECT SiteOptions FROM users_info WHERE UserID='".db_string($LoggedUser['ID'])."'"); list($SiteOptions) = $DB->next_record(MYSQLI_NUM, true); $SiteOptions = unserialize($SiteOptions); $SiteOptions['DefaultSearch'] = preg_replace($UnsetList,'',$_SERVER['QUERY_STRING']); $DB->query("UPDATE users_info SET SiteOptions='".db_string(serialize($SiteOptions))."' WHERE UserID='".db_string($LoggedUser['ID'])."'"); $Cache->begin_transaction('user_info_heavy_'.$UserID); $Cache->update_row(false, array('DefaultSearch'=>preg_replace($UnsetList,'',$_SERVER['QUERY_STRING']))); $Cache->commit_transaction(0); // Clearing default search options } elseif ($_GET['cleardefault']) { $DB->query("SELECT SiteOptions FROM users_info WHERE UserID='".db_string($LoggedUser['ID'])."'"); list($SiteOptions) = $DB->next_record(MYSQLI_NUM, true); $SiteOptions = unserialize($SiteOptions); $SiteOptions['DefaultSearch'] = ''; $DB->query("UPDATE users_info SET SiteOptions='".db_string(serialize($SiteOptions))."' WHERE UserID='".db_string($LoggedUser['ID'])."'"); $Cache->begin_transaction('user_info_heavy_'.$UserID); $Cache->update_row(false, array('DefaultSearch'=>'')); $Cache->commit_transaction(0); // Use default search options } elseif (!$_SERVER['QUERY_STRING'] && $LoggedUser['DefaultSearch']) { parse_str($LoggedUser['DefaultSearch'],$_GET); } // If a user is hammering the search page (either via a