function definition()
 {
     global $CFG, $USER, $COURSE;
     $mform =& $this->_form;
     /// Print the required moodle fields first
     $mform->addElement('header', 'matches', get_string('messagematches', 'block_email_list'));
     // And or Or.
     $radiobuttons = array();
     $radiobuttons[] =& MoodleQuickForm::createElement('radio', 'connector', get_string('matchanyquery', 'block_email_list'), get_string('matchanyquery', 'block_email_list'), 'OR');
     $radiobuttons[] =& MoodleQuickForm::createElement('radio', 'connector', get_string('matchaallquery', 'block_email_list'), get_string('matchallquery', 'block_email_list'), 'AND');
     $mform->addGroup($radiobuttons, 'messagematches', '', '  ', false);
     $mform->setDefault('connector', 'AND');
     // Words
     $mform->addElement('header', 'words', get_string('search', 'search'));
     $mform->addElement('text', 'to', get_string('to', 'block_email_list'), 'maxlength="254" size="60"');
     $mform->setType('to', PARAM_TEXT);
     $mform->addElement('text', 'from', get_string('from', 'block_email_list'), 'maxlength="254" size="60"');
     $mform->setType('from', PARAM_TEXT);
     $mform->addElement('text', 'subject', get_string('subject', 'block_email_list'), 'maxlength="254" size="60"');
     $mform->setType('subject', PARAM_TEXT);
     $mform->addElement('text', 'body', get_string('body', 'block_email_list'), 'maxlength="254" size="60"');
     $mform->setType('body', PARAM_TEXT);
     // Folders
     $mform->addElement('header', 'folder', get_string('messagefolders', 'block_email_list'));
     // Get my root folders
     $folders = email_get_root_folders($USER->id, false);
     if (!empty($folders)) {
         $choose = array();
         // Get courses
         foreach ($folders as $folder) {
             $choose[] =& MoodleQuickForm::createElement('checkbox', $folder->id, $folder->name, $folder->name);
             // Now, get all subfolders it
             $subfolders = email_get_subfolders($folder->id);
             // If subfolders
             if ($subfolders) {
                 foreach ($subfolders as $subfolder) {
                     $choose[] =& MoodleQuickForm::createElement('checkbox', $subfolder->id, $subfolder->name, $subfolder->name);
                 }
             }
         }
         $mform->addGroup($choose, 'folders', get_string('folders', 'block_email_list'), ' <br /> ');
         $mform->setDefault('folders[' . $folders[0]->id . ']', true);
         $mform->addRule('folders', get_string('nosearchfolders', 'block_email_list'), 'required', null, 'server');
     }
     $mform->addElement('hidden', 'courseid', $COURSE->id);
     // buttons
     $this->add_action_buttons(true, get_string('search', 'search'));
 }
/**
 * This function return my folders. it's recursive function
 *
 */
function email_my_folders($folderid, $courseid, $myfolders, $space)
{
    $space .= '&#160;&#160;&#160;';
    $folders = email_get_subfolders($folderid, $courseid);
    if ($folders) {
        foreach ($folders as $folder) {
            $myfolders[$folder->id] = $space . $folder->name;
            $myfolders = email_my_folders($folder->id, $courseid, $myfolders, $space);
        }
    }
    return $myfolders;
}
Exemple #3
0
            $from = ' FROM {user} u,
					 {block_email_list_mail} m,
					 {block_email_list_send} s,
					 {block_email_list_foldermail} fm';
            // FOLDERS
            $wherefolders = '';
            $folders = email_get_root_folders($USER->id, false);
            if (!empty($folders)) {
                $wherefolders .= ' AND ( ';
                $i = 0;
                foreach ($folders as $folder) {
                    $wherefolders .= $i > 0 ? " OR fm.folderid = {$folder->id}" : " fm.folderid = {$folder->id} ";
                    // Select this folder
                    $i++;
                    // Now, get all subfolders it
                    $subfolders = email_get_subfolders($folder->id);
                    // If subfolders
                    if ($subfolders) {
                        foreach ($subfolders as $subfolder) {
                            $wherefolders .= $i > 0 ? " OR fm.folderid = {$subfolder->id}" : " fm.folderid = {$subfolder->id} ";
                            // Select this folder
                            $i++;
                        }
                    }
                }
                $wherefolders .= ' ) ';
            } else {
                print_error('nosearchfolders', 'block_email_list');
            }
            $groupby = ' GROUP BY m.id, m.userid, m.course, m.subject, m.timecreated, m.body, u.firstname,u.lastname';
            // TO