Beispiel #1
0
    $grade = $strcoursegrade . ':  ' . $reportgrade;
} else {
    if ($certificate->printgrade > 0) {
        if ($certificate->printgrade == 1) {
            if ($certificate->gradefmt == 1) {
                $grade = $strcoursegrade . ':  ' . $coursegrade->percentage;
            }
            if ($certificate->gradefmt == 2) {
                $grade = $strcoursegrade . ':  ' . $coursegrade->points;
            }
            if ($certificate->gradefmt == 3) {
                $grade = $strcoursegrade . ':  ' . $coursegrade->letter;
            }
        } else {
            //Print the mod grade
            $modinfo = certificate_print_mod_grade($course, $certificate->printgrade);
            if ($certrecord->reportgrade == !null) {
                $modgrade = $certrecord->reportgrade;
                $grade = $modinfo->name . ' ' . $strgrade . ': ' . $modgrade;
            } else {
                if ($certificate->printgrade > 1) {
                    if ($certificate->gradefmt == 1) {
                        $grade = $modinfo->name . ' ' . $strgrade . ': ' . $modinfo->percentage;
                    }
                    if ($certificate->gradefmt == 2) {
                        $grade = $modinfo->name . ' ' . $strgrade . ': ' . $modinfo->points;
                    }
                    if ($certificate->gradefmt == 3) {
                        $grade = $modinfo->name . ' ' . $strgrade . ': ' . $modinfo->letter;
                    }
                }
/**
 * Prepare to be print the date -- defaults to time.
 *
 * @param stdClass $certificate
 * @param stdClass $course
 * @return string the date
 */
function certificate_generate_date($certificate, $course)
{
    global $DB, $USER;
    if ($certificate->printdate == '2') {
        // Get the enrolment end date
        $sql = "SELECT MAX(c.timecompleted) as timecompleted\n                FROM {course_completions} c\n                WHERE c.userid = :userid\n                AND c.course = :courseid\n                AND c.deleted = 0";
        if ($timecompleted = $DB->get_record_sql($sql, array('userid' => $USER->id, 'courseid' => $course->id))) {
            if ($timecompleted->timecompleted) {
                $certdate = $timecompleted->timecompleted;
            }
        }
    } else {
        if ($certificate->printdate > 2) {
            $modinfo = certificate_print_mod_grade($course, $certificate->printdate);
            $certdate = $modinfo->dategraded;
        } else {
            $certdate = time();
        }
    }
    return $certdate;
}
Beispiel #3
0
function certificate_issue($course, $certificate, $certrecord, $cm)
{
    if ($certificate->printgrade > 0) {
        if ($certificate->printgrade == 1) {
            $grade = certificate_print_course_grade($course);
        } else {
            if ($certificate->printgrade > 1) {
                $grade = certificate_print_mod_grade($course, $certificate->printgrade);
            }
        }
        if ($certificate->gradefmt == 1) {
            $certrecord->reportgrade = addslashes($grade->percentage);
        }
        if ($certificate->gradefmt == 2) {
            $certrecord->reportgrade = addslashes($grade->points);
        }
        if ($certificate->gradefmt == 3) {
            $certrecord->reportgrade = addslashes($grade->letter);
        }
    }
    $date = certificate_generate_date($certificate, $course);
    $certrecord->certdate = $date;
    update_record('certificate_issues', addslashes_object($certrecord));
    certificate_email_teachers($course, $certificate, $certrecord, $cm);
    certificate_email_others($course, $certificate, $certrecord, $cm);
}