Ejemplo n.º 1
0
 } else {
     $mailpagesize = get_user_preferences('local_mail_mailsperpage', MAIL_PAGESIZE, $USER->id);
     if ($prevpage or $nextpage) {
         if ($prevpage) {
             $offset = max(0, $offset - $mailpagesize);
         } else {
             if ($nextpage) {
                 $offset = $offset + $mailpagesize;
             }
         }
         $url->param('offset', $offset);
         redirect($url);
     }
     // Set up messages
     $itemid = $labelid ?: $courseid;
     $totalcount = local_mail_message::count_index($USER->id, $type, $itemid);
     $messages = local_mail_message::fetch_index($USER->id, $type, $itemid, $offset, $mailpagesize);
     // Display page
     $courseid = $courseid ?: $SITE->id;
     if (!($course = $DB->get_record('course', array('id' => $courseid)))) {
         print_error('invalidcourse', 'error');
     }
     // Check whether user can use mail in that course
     if ($course->id != $SITE->id) {
         $context = context_course::instance($course->id);
         require_capability('local/mail:usemail', $context);
     }
     local_mail_setup_page($course, $url);
     $url->param('offset', $offset);
     // Remove
     if ($delete) {
    public function test_count_index() {
        $message1 = local_mail_message::create(201, 101);
        $message1->add_recipient('to', 202);
        $message1->send();
        $message2 = local_mail_message::create(201, 102);
        $message2->add_recipient('to', 202);
        $message2->send();
        $other = local_mail_message::create(202, 101);

        $result = local_mail_message::count_index(202, 'inbox');

        $this->assertEquals(2, $result);
    }
Ejemplo n.º 3
0
function local_mail_setperpage($itemid, $type, $offset, $mailpagesize, $search)
{
    global $USER;
    $totalcount = local_mail_message::count_index($USER->id, $type, $itemid);
    if (in_array($mailpagesize, array(5, 10, 20, 50, 100))) {
        set_user_preference('local_mail_mailsperpage', $mailpagesize);
        if (!empty($search)) {
            $search['limit'] = $mailpagesize;
            return local_mail_searchmessages($type, $itemid, $search, $offset, true);
        } else {
            $messages = local_mail_message::fetch_index($USER->id, $type, $itemid, $offset, $mailpagesize);
            return array('info' => '', 'html' => local_mail_print_messages($itemid, $type, $offset, $messages, $totalcount));
        }
    }
    return array('info' => '', 'html' => '');
}