Example #1
0
 /**
  * test_search_results_viewed
  *
  * @return void
  */
 public function test_search_results_viewed()
 {
     $this->resetAfterTest();
     $user = $this->getDataGenerator()->create_user();
     $this->setUser($user);
     $sink = $this->redirectEvents();
     // Basic event.
     \core_search\manager::trigger_search_results_viewed(['q' => 'I am a query', 'page' => 0]);
     $events = $sink->get_events();
     $event = reset($events);
     $sink->clear();
     $this->assertEquals(context_system::instance(), $event->get_context());
     $urlparams = ['q' => 'I am a query', 'page' => 0];
     $this->assertEquals($urlparams, $event->get_url()->params());
     \core_search\manager::trigger_search_results_viewed(['q' => 'I am a query', 'page' => 2, 'title' => 'I am the title', 'areaids' => array(3, 4, 5), 'courseids' => array(2, 3), 'timestart' => 1445644800, 'timeend' => 1477267200]);
     $events = $sink->get_events();
     $event = reset($events);
     $this->assertEquals(context_system::instance(), $event->get_context());
     $urlparams = ['q' => 'I am a query', 'page' => 2, 'title' => 'I am the title', 'timestart' => 1445644800, 'timeend' => 1477267200];
     $this->assertEquals($urlparams, $event->get_url()->params());
 }
Example #2
0
    if (!empty($data->areaids)) {
        $urlparams['areaids'] = implode(',', $data->areaids);
    }
    if (!empty($data->courseids)) {
        $urlparams['courseids'] = implode(',', $data->courseids);
    }
    $urlparams['timestart'] = $data->timestart;
    $urlparams['timeend'] = $data->timeend;
}
$url = new moodle_url('/search/index.php', $urlparams);
$PAGE->set_url($url);
// We are ready to render.
echo $OUTPUT->header();
echo $OUTPUT->heading($pagetitle);
// Get the results.
if ($data) {
    $results = $search->paged_search($data, $page);
}
if ($errorstr = $search->get_engine()->get_query_error()) {
    echo $OUTPUT->notification(get_string('queryerror', 'search', $errorstr), 'notifyproblem');
} else {
    if (empty($results->totalcount) && !empty($data)) {
        echo $OUTPUT->notification(get_string('noresults', 'search'), 'notifymessage');
    }
}
$mform->display();
if (!empty($results)) {
    echo $searchrenderer->render_results($results->results, $results->actualpage, $results->totalcount, $url);
    \core_search\manager::trigger_search_results_viewed(['q' => $data->q, 'page' => $page, 'title' => $data->title, 'areaids' => !empty($data->areaids) ? $data->areaids : array(), 'courseids' => !empty($data->courseids) ? $data->courseids : array(), 'timestart' => isset($data->timestart) ? $data->timestart : 0, 'timeend' => isset($data->timeend) ? $data->timeend : 0]);
}
echo $OUTPUT->footer();