exit;
}
require_once QA_INCLUDE_DIR . 'qa-app-format.php';
require_once QA_INCLUDE_DIR . 'qa-app-options.php';
require_once QA_INCLUDE_DIR . 'qa-app-search.php';
//	Perform the search if appropriate
if (strlen(qa_get('q'))) {
    //	Pull in input parameters
    $inquery = trim(qa_get('q'));
    $userid = qa_get_logged_in_userid();
    $start = qa_get_start();
    $display = qa_opt_if_loaded('page_size_search');
    $count = 2 * (isset($display) ? $display : QA_DB_RETRIEVE_QS_AS) + 1;
    // get enough results to be able to give some idea of how many pages of search results there are
    //	Perform the search using appropriate module
    $results = qa_get_search_results($inquery, $start, $count, $userid, false, false);
    //	Count and truncate results
    $pagesize = qa_opt('page_size_search');
    $gotcount = count($results);
    $results = array_slice($results, 0, $pagesize);
    //	Retrieve extra information on users
    $fullquestions = array();
    foreach ($results as $result) {
        if (isset($result['question'])) {
            $fullquestions[] = $result['question'];
        }
    }
    $usershtml = qa_userids_handles_html($fullquestions);
    //	Report the search event
    qa_report_event('search', $userid, qa_get_logged_in_handle(), qa_cookie_get(), array('query' => $inquery, 'start' => $start));
}
Example #2
0
    case 'qa':
        $questions = qa_feed_load_ifcategory($categoryslugs, 'main/recent_qs_as_title', 'main/recent_qs_as_in_x', $title, qa_db_qs_selectspec(null, 'created', 0, $categoryslugs, null, false, $full, $count), qa_db_recent_a_qs_selectspec(null, 0, $categoryslugs, null, false, $full, $count));
        break;
    case 'activity':
        $questions = qa_feed_load_ifcategory($categoryslugs, 'main/recent_activity_title', 'main/recent_activity_in_x', $title, qa_db_qs_selectspec(null, 'created', 0, $categoryslugs, null, false, $full, $count), qa_db_recent_a_qs_selectspec(null, 0, $categoryslugs, null, false, $full, $count), qa_db_recent_c_qs_selectspec(null, 0, $categoryslugs, null, false, $full, $count), qa_db_recent_edit_qs_selectspec(null, 0, $categoryslugs, null, true, $full, $count));
        break;
    case 'tag':
        $tag = $feedparams[0];
        $questions = qa_feed_load_ifcategory(null, null, null, $title, qa_db_tag_recent_qs_selectspec(null, $tag, 0, $full, $count));
        $title = qa_lang_sub('main/questions_tagged_x', $tag);
        $linkrequest = 'tag/' . $tag;
        break;
    case 'search':
        require_once QA_INCLUDE_DIR . 'app/search.php';
        $query = $feedparams[0];
        $results = qa_get_search_results($query, 0, $count, null, true, $full);
        $title = qa_lang_sub('main/results_for_x', $query);
        $linkrequest = 'search';
        $linkparams = array('q' => $query);
        $questions = array();
        foreach ($results as $result) {
            $setarray = array('title' => $result['title'], 'url' => $result['url']);
            if (isset($result['question'])) {
                $questions[] = array_merge($result['question'], $setarray);
            } elseif (isset($result['url'])) {
                $questions[] = $setarray;
            }
        }
        break;
}
//	Remove duplicate questions (perhaps referenced in an answer and a comment) and cut down to size