Example #1
0
/**
 *
 *
 *
 * creates email to course manager, teacher and non-editingteacher, when a printing order has been created.
 *
 * @param unknown_type $exam            
 * @param unknown_type $course            
 */
function emarking_send_newprintorder_notification($exam, $course, $title = null)
{
    global $USER;
    $postsubject = $course->fullname . ' : ' . $exam->name . '. ' . get_string('newprintorder', 'mod_emarking') . ' [' . $exam->id . ']';
    if ($title) {
        $postsubject = $course->fullname . ' : ' . $exam->name . '. ' . $title . ' [' . $exam->id . ']';
    }
    $examhasqr = $exam->headerqr ? get_string('yes') : get_string('no');
    $pagestoprint = emarking_exam_total_pages_to_print($exam);
    $originals = $exam->totalpages + $exam->extrasheets;
    $copies = $exam->totalstudents + $exam->extraexams;
    $totalsheets = $originals * $copies;
    $teachers = get_enrolled_users(context_course::instance($course->id), 'mod/emarking:receivenotification');
    $teachersnames = array();
    foreach ($teachers as $teacher) {
        $teachersnames[] = $teacher->firstname . ' ' . $teacher->lastname;
    }
    $teacherstring = implode(',', $teachersnames);
    if (!$title) {
        $title = get_string('newprintorder', 'mod_emarking');
    }
    // Create the email to be sent
    $posthtml = '';
    $posthtml .= '<table><tr><th colspan="2">' . $title . '</th></tr>';
    $posthtml .= '<tr><td>' . get_string('examid', 'mod_emarking') . '</td><td>' . $exam->id . '</td></tr>';
    $posthtml .= '<tr><td>' . get_string('fullnamecourse') . '</td><td>' . $course->fullname . ' (' . $course->shortname . ')' . '</td></tr>';
    $posthtml .= '<tr><td>' . get_string('teacher', 'mod_emarking') . '</td><td>' . $teacherstring . '</td></tr>';
    $posthtml .= '<tr><td>' . get_string('requestedby', 'mod_emarking') . '</td><td>' . $USER->firstname . ' ' . $USER->lastname . '</td></tr>';
    $posthtml .= '<tr><td>' . get_string('examdate', 'mod_emarking') . '</td><td>' . date("d M Y - H:i", $exam->examdate) . '</td></tr>';
    $posthtml .= '<tr><td>' . get_string('headerqr', 'mod_emarking') . '</td><td>' . $examhasqr . '</td></tr>';
    $posthtml .= '<tr><td>' . get_string('doubleside', 'mod_emarking') . '</td><td>' . ($exam->usebackside ? get_string('yes') : get_string('no')) . '</td></tr>';
    $posthtml .= '<tr><td>' . get_string('printlist', 'mod_emarking') . '</td><td>' . ($exam->printlist ? get_string('yes') : get_string('no')) . '</td></tr>';
    $posthtml .= '<tr><td>' . get_string('originals', 'mod_emarking') . '</td><td>' . $originals . '</td></tr>';
    $posthtml .= '<tr><td>' . get_string('copies', 'mod_emarking') . '</td><td>' . $copies . '</td></tr>';
    $posthtml .= '<tr><td>' . get_string('totalpagesprint', 'mod_emarking') . '</td><td>' . $totalsheets . '</td></tr>';
    $posthtml .= '</table>';
    $posthtml .= '';
    // Create the email to be sent
    $posttext = $title . '\\n';
    $posttext .= get_string('examid', 'mod_emarking') . ' : ' . $exam->id . '\\n';
    $posttext .= get_string('fullnamecourse') . ' : ' . $course->fullname . ' (' . $course->shortname . ')' . '\\n';
    $posttext .= get_string('teacher', 'mod_emarking') . ' : ' . $teacherstring . '\\n';
    $posttext .= get_string('requestedby', 'mod_emarking') . ': ' . $USER->firstname . ' ' . $USER->lastname . '\\n';
    $posttext .= get_string('examdate', 'mod_emarking') . ': ' . date("d M Y - H:i", $exam->examdate) . '\\n';
    $posttext .= get_string('headerqr', 'mod_emarking') . ': ' . $examhasqr . '\\n';
    $posttext .= get_string('doubleside', 'mod_emarking') . ' : ' . ($exam->usebackside ? get_string('yes') : get_string('no')) . '\\n';
    $posttext .= get_string('printlist', 'mod_emarking') . ' : ' . ($exam->printlist ? get_string('yes') : get_string('no')) . '\\n';
    $posttext .= get_string('originals', 'mod_emarking') . ' : ' . $originals . '\\n';
    $posttext .= get_string('copies', 'mod_emarking') . ' : ' . $copies . '\\n';
    $posttext .= get_string('totalpagesprint', 'mod_emarking') . ': ' . $totalsheets . '\\n';
    emarking_send_notification($exam, $course, $postsubject, $posttext, $posthtml);
}
}
if (!($course = $DB->get_record('course', array('id' => $exam->course)))) {
    print_error(get_string('invalid_exam_id', 'mod_emarking'));
}
$context = context_coursecat::instance($course->category);
if (!has_capability('mod/emarking:downloadexam', $context)) {
    print_error('Invalid access');
}
$postsubject = $course->fullname . ': ' . $exam->name . '. ' . get_string('printnotification', 'mod_emarking') . ' [' . $exam->id . ']';
// Create the email to be sent.
$posthtml = '<html>';
$posthtml .= '<table><tr><th colspan="2">' . get_string('printnotification', 'mod_emarking') . '</th></tr>';
$posthtml .= '<tr><td>' . get_string('examid', 'mod_emarking') . '</td><td>' . $exam->id . '</td></tr>';
$posthtml .= '<tr><td>' . get_string('fullnamecourse') . '</td><td>' . $course->fullname . '</td></tr>';
$posthtml .= '<tr><td>' . get_string('shortnamecourse') . '</td><td>' . $course->shortname . '</td></tr>';
$posthtml .= '<tr><td>' . get_string('requestedby', 'mod_emarking') . '</td><td>' . $requestedby->username . '</td></tr>';
$posthtml .= '<tr><td>' . get_string('examdate', 'mod_emarking') . '</td><td>' . date("d M Y - H:i", $exam->examdate) . '</td></tr>';
$posthtml .= '</table>';
$posthtml .= '</html>';
// Create the email to be sent.
$posttext = get_string('printnotification', 'mod_emarking') . '\\n';
$posttext .= get_string('examid', 'mod_emarking') . ' : ' . $exam->id . '\\n';
$posttext .= get_string('fullnamecourse') . ': ' . $course->fullname . '\\n';
$posttext .= get_string('shortnamecourse') . ': ' . $course->shortname . '\\n';
$posttext .= get_string('requestedby', 'mod_emarking') . ': ' . $requestedby->username . '\\n';
$posttext .= get_string('examdate', 'mod_emarking') . ': ' . date("d M Y - H:i", $exam->examdate) . '\\n';
emarking_send_notification($exam, $course, $postsubject, $posttext, $posthtml, $USER);
$exam->notified = 1;
$exam->status = EMARKING_EXAM_PRINTED;
$DB->update_record('emarking_exams', $exam);
redirect(new moodle_url('/mod/emarking/print/printorders.php', array('category' => $course->category, 'status' => '2')), get_string('printnotificationsent', 'mod_emarking'), 2);
Example #3
0
/**
 *
 *
 *
 * creates email to course manager, teacher and non-editingteacher, when a printing order has been created.
 *
 * @param unknown_type $exam        	
 * @param unknown_type $course        	
 */
function emarking_send_newprintorder_notification($exam, $course)
{
    global $USER;
    $postsubject = $course->fullname . ' : ' . $exam->name . '. ' . get_string('newprintorder', 'mod_emarking') . ' [' . $exam->id . ']';
    $examhasqr = $exam->headerqr ? get_string('yes') : get_string('no');
    $pagestoprint = emarking_exam_total_pages_to_print($exam);
    // Create the email to be sent
    $posthtml = '';
    $posthtml .= '<table><tr><th colspan="2">' . get_string('newprintorder', 'mod_emarking') . '</th></tr>';
    $posthtml .= '<tr><td>' . get_string('examid', 'mod_emarking') . '</td><td>' . $exam->id . '</td></tr>';
    $posthtml .= '<tr><td>' . get_string('fullnamecourse') . '</td><td>' . $course->fullname . '</td></tr>';
    $posthtml .= '<tr><td>' . get_string('shortnamecourse') . '</td><td>' . $course->shortname . '</td></tr>';
    $posthtml .= '<tr><td>' . get_string('requestedby', 'mod_emarking') . '</td><td>' . $USER->lastname . ' ' . $USER->firstname . '</td></tr>';
    $posthtml .= '<tr><td>' . get_string('examdate', 'mod_emarking') . '</td><td>' . date("d M Y - H:i", $exam->examdate) . '</td></tr>';
    $posthtml .= '<tr><td>' . get_string('extrasheets', 'mod_emarking') . '</td><td>' . $exam->extrasheets . '</td></tr>';
    $posthtml .= '<tr><td>' . get_string('extraexams', 'mod_emarking') . '</td><td>' . $exam->extraexams . '</td></tr>';
    $posthtml .= '<tr><td>' . get_string('headerqr', 'mod_emarking') . '</td><td>' . $examhasqr . '</td></tr>';
    $posthtml .= '<tr><td>' . get_string('totalpagesprint', 'mod_emarking') . '</td><td>' . $pagestoprint . '</td></tr>';
    $posthtml .= '</table>';
    $posthtml .= '';
    // Create the email to be sent
    $posttext = get_string('newprintorder', 'mod_emarking') . '\\n';
    $posttext .= get_string('examid', 'mod_emarking') . ' : ' . $exam->id . '\\n';
    $posttext .= get_string('fullnamecourse') . ': ' . $course->fullname . '\\n';
    $posttext .= get_string('shortnamecourse') . ': ' . $course->shortname . '\\n';
    $posttext .= get_string('requestedby', 'mod_emarking') . ': ' . $USER->lastname . ' ' . $USER->firstname . '\\n';
    $posttext .= get_string('examdate', 'mod_emarking') . ': ' . date("d M Y - H:i", $exam->examdate) . '\\n';
    $posttext .= get_string('extrasheets', 'mod_emarking') . ': ' . $exam->extrasheets . '\\n';
    $posttext .= get_string('extraexams', 'mod_emarking') . ': ' . $exam->extraexams . '\\n';
    $posttext .= get_string('headerqr', 'mod_emarking') . ': ' . $examhasqr . '\\n';
    $posttext .= get_string('totalpagesprint', 'mod_emarking') . ': ' . $pagestoprint . '\\n';
    emarking_send_notification($exam, $course, $postsubject, $posttext, $posthtml);
}