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)); }
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