caching for autocomplete
This commit is contained in:
parent
79648b04d2
commit
7dce8da850
@ -49,20 +49,27 @@ class TagList extends Extension {
|
||||
if(!isset($_GET["s"])) return;
|
||||
|
||||
//$limit = 0;
|
||||
$cache_key = "autocomplete-" . strtolower($_GET["s"]);
|
||||
$limitSQL = "";
|
||||
$SQLarr = array("search"=>$_GET["s"]."%");
|
||||
if(isset($_GET["limit"]) && $_GET["limit"] !== 0){
|
||||
$limitSQL = "LIMIT :limit";
|
||||
$SQLarr['limit'] = $_GET["limit"];
|
||||
$cache_key .= "-" . $_GET["limit"];
|
||||
}
|
||||
|
||||
$res = $database->get_col($database->scoreql_to_sql("
|
||||
SELECT tag
|
||||
FROM tags
|
||||
WHERE SCORE_STRNORM(tag) LIKE SCORE_STRNORM(:search)
|
||||
AND count > 0
|
||||
$limitSQL
|
||||
"), $SQLarr);
|
||||
$res = null;
|
||||
$database->cache->get($cache_key);
|
||||
if(!$res) {
|
||||
$res = $database->get_col($database->scoreql_to_sql("
|
||||
SELECT tag
|
||||
FROM tags
|
||||
WHERE SCORE_STRNORM(tag) LIKE SCORE_STRNORM(:search)
|
||||
AND count > 0
|
||||
$limitSQL
|
||||
"), $SQLarr);
|
||||
$database->cache->set($cache_key, $res, 600);
|
||||
}
|
||||
|
||||
$page->set_mode("data");
|
||||
$page->set_type("text/plain");
|
||||
|
Loading…
x
Reference in New Issue
Block a user