function get_search_request($args) { global $Sql, $Cache; $Cache->load('faq'); $weight = isset($args['weight']) && is_numeric($args['weight']) ? $args['weight'] : 1; require_once PATH_TO_ROOT . '/faq/faq_cats.class.php'; $Cats = new FaqCats(); $auth_cats = array(); $Cats->build_children_id_list(0, $auth_cats); $auth_cats = !empty($auth_cats) ? " AND f.idcat IN (" . implode($auth_cats, ',') . ") " : ''; $request = "SELECT " . $args['id_search'] . " AS id_search,\n f.id AS id_content,\n f.question AS title,\n ( 2 * MATCH(f.question) AGAINST('" . $args['search'] . "') + MATCH(f.answer) AGAINST('" . $args['search'] . "') ) / 3 * " . $weight . " AS relevance, " . $Sql->concat("'../faq/faq.php?id='", "f.idcat", "'&question='", "f.id", "'#q'", "f.id") . " AS link\n FROM " . PREFIX . "faq f\n WHERE ( MATCH(f.question) AGAINST('" . $args['search'] . "') OR MATCH(f.answer) AGAINST('" . $args['search'] . "') )" . $auth_cats . " ORDER BY relevance DESC " . $Sql->limit(0, FAQ_MAX_SEARCH_RESULTS); return $request; }