/**
 * Inserts preliminary user data when a certificate is viewed.
 * Prevents form from issuing a certificate upon browser refresh.
 *
 * @param stdClass $course
 * @param stdClass $user
 * @param stdClass $certificate
 * @return stdClass the newly created certificate issue
 */
function certificate_prepare_issue($course, $user, $certificate)
{
    global $DB;
    if ($certificate->reissuecert == 0) {
        // Get the last one they received
        if ($certissue = certificate_get_latest_issue($certificate->id, $user->id)) {
            return $certissue;
        }
    } else {
        if ($certissue = $DB->get_record('certificate_issues', array('certificateid' => $certificate->id, 'userid' => $user->id, 'certdate' => '0'))) {
            return $certissue;
        }
    }
    // Create new certificate issue record
    $certissue = new stdClass();
    $certissue->certificateid = $certificate->id;
    $certissue->userid = $user->id;
    $certissue->timecreated = time();
    $certissue->studentname = fullname($user);
    $certissue->code = certificate_generate_code();
    $certissue->classname = $course->fullname;
    $certissue->certdate = 0;
    $certissue->reportgrade = NULL;
    $certissue->id = $DB->insert_record('certificate_issues', $certissue);
    return $certissue;
}
        $link = "<a class=\"dimmed\" href=\"view.php?id={$certificate->coursemodule}\">{$certificate->name}</a>";
    } else {
        //Show normal if the mod is visible
        $link = "<a href=\"view.php?id={$certificate->coursemodule}\">{$certificate->name}</a>";
    }
    if ($certificate->section !== $currentsection) {
        if ($certificate->section) {
            $printsection = $certificate->section;
        }
        if ($currentsection !== "") {
            $table->data[] = 'hr';
        }
        $currentsection = $certificate->section;
    }
    // Get the latest certificate issue
    if ($certrecord = certificate_get_latest_issue($certificate->id, $USER->id)) {
        if ($certrecord->certdate > 0) {
            $issued = userdate($certrecord->certdate);
        } else {
            $issued = get_string('notreceived', 'certificate');
        }
    } else {
        $issued = get_string('notreceived', 'certificate');
    }
    if ($course->format == 'weeks' or $course->format == 'topics') {
        $table->data[] = array($certificate->section, $link, $issued);
    } else {
        $table->data[] = array($link, $issued);
    }
}
echo $OUTPUT->header();