diff --git a/lib.php b/lib.php index 6afd0f3..a50d7d4 100644 --- a/lib.php +++ b/lib.php @@ -394,24 +394,27 @@ function certificate_email_students($user, $course, $certificate, $certrecord) { function certificate_count_issues($certificate) { global $CFG, $DB; - - $cm = get_coursemodule_from_instance('certificate', $certificate->id); - $context = get_context_instance(CONTEXT_MODULE, $cm->id); - if ($users = get_users_by_capability($context, 'mod/certificate:view')) { - foreach ($users as $user) { - if (isset($certmanagers[$id])) { //exclude certmanagers. - unset($users[$id]); - $array[] = $user->id; + $cm = get_coursemodule_from_instance('certificate', $certificate->id); + $context = get_context_instance(CONTEXT_MODULE, $cm->id); + if ($users = get_users_by_capability($context, 'mod/certificate:view')) { + $certmanagers = get_users_by_capability($context, 'mod/certificate:manage', 'u.id'); + foreach ($users as $id=>$user) { + if (isset($certmanagers[$id])) { //exclude certmanagers. + unset($users[$id]); + $array[] = $user->id; } } + list($in_sql, $params) = $DB->get_in_or_equal(array_keys($users), SQL_PARAMS_NAMED); - return $DB->count_records_sql("SELECT COUNT(*) - FROM {$CFG->prefix}certificate_issues - WHERE certificateid = '$certificate->id' - AND certdate > 0 - AND userid IN $userlists "); - } else { - return 0; // no users enroled in course + $params['certificateid'] = $certificate->id; + + return $DB->count_records_sql("SELECT COUNT(*) + FROM {$CFG->prefix}certificate_issues + WHERE certificateid=:certificateid + AND certdate > 0 + AND userid $in_sql",$params); + } else { + return 0; // no users enroled in course } } @@ -511,7 +514,7 @@ function certificate_get_issues($certificate, $user, $sort="u.studentname ASC", function certificate_prepare_issue($course, $user, $certificate) { global $DB; - if($certificate->reissuecert == 0) { + if(false/*$certificate->reissuecert == 0*/) { if ($DB->record_exists('certificate_issues', array('certificateid'=>$certificate->id, 'userid'=>$user->id))) { return; } diff --git a/report.php b/report.php index 6638d24..a8a240f 100644 --- a/report.php +++ b/report.php @@ -34,8 +34,9 @@ $strreport= get_string('report', 'certificate'); // Initialize $PAGE, compute blocks - $PAGE->set_url('mod/certificate/view.php', array('id' => $cm->id)); + $PAGE->set_url('/mod/certificate/view.php', array('id' => $cm->id)); $PAGE->set_context($context); + $PAGE->set_cm($cm); $PAGE->set_title(format_string($certificate->name).": $strreport"); $PAGE->set_heading(format_string($course->fullname)); $PAGE->navbar->add($strreport); @@ -230,7 +231,7 @@ $table->align = array ("LEFT", "LEFT", "CENTER", "CENTER"); foreach ($users as $user) { - $name = $OUTPUT->user_picture($user, $course->id).$user->studentname; + $name = $OUTPUT->user_picture($user).$user->studentname; $date = userdate($user->certdate).certificate_print_user_files($user->id); if ($user->reportgrade != null) { $grade = $user->reportgrade; @@ -259,4 +260,4 @@ echo ""; echo $OUTPUT->footer($course); - ?> \ No newline at end of file + ?> diff --git a/type/landscape/certificate.php b/type/landscape/certificate.php index 61f257e..5a25142 100644 --- a/type/landscape/certificate.php +++ b/type/landscape/certificate.php @@ -93,9 +93,9 @@ $customtext = $certificate->customtext; $customtext=stripslashes($customtext); // Add images and lines - print_border($certificate->borderstyle, $orientation); + print_border($certificate->borderstyle, $orientation,10,10,820,580); draw_frame($certificate->bordercolor, $orientation); - print_watermark($certificate->printwmark, $orientation); + print_watermark($certificate->printwmark, $orientation,112,90,600,420); print_seal($certificate->printseal, $orientation, 590, 425, '', ''); print_signature($certificate->printsignature, $orientation, 130, 440, '', ''); @@ -124,4 +124,4 @@ $customtext = $certificate->customtext; cert_printtext(150, 450, '', '', '', '', ''); $pdf->SetLeftMargin(130); $pdf->WriteHTML($customtext); -?> \ No newline at end of file +?> diff --git a/version.php b/version.php index cfd684b..4831c63 100644 --- a/version.php +++ b/version.php @@ -5,8 +5,8 @@ /// This fragment is called by moodle_needs_upgrading() and /admin/index.php /////////////////////////////////////////////////////////////////////////////// -$module->version = 2009062900; // The current module version (Date: YYYYMMDDXX) +$module->version = 2010072900; // The current module version (Date: YYYYMMDDXX) $module->requires = 2010080300; // Requires this Moodle version $module->cron = 0; // Period for cron to check this module (secs) -?> \ No newline at end of file +?> diff --git a/view.php b/view.php index 3c25100..850a43e 100644 --- a/view.php +++ b/view.php @@ -60,7 +60,7 @@ include '../../lib/pdflib.php'; ///Load the specific certificatetype require ("$CFG->dirroot/mod/certificate/type/$certificate->certificatetype/certificate.php"); - if($certificate->reissuecert) { ///Reissue certificate every time + if(false /*$certificate->reissuecert*/) { ///Reissue certificate every time if(empty($action)) { view_header($course, $certificate, $cm); if ($certificate->delivery == 0) { @@ -86,9 +86,12 @@ include '../../lib/pdflib.php'; } else if ($certrecord->certdate > 0) { ///Review certificate if (empty($action)) { view_header($course, $certificate, $cm); + $link = new moodle_url('/mod/certificate/view.php?id='.$cm->id.'&action=get'); + $linkname = $strgetcertificate; + $action = new popup_action('click', $link, array('height' => 600, 'width' => 800)); echo '
'.get_string('viewed', 'certificate').'
'.userdate($certrecord->certdate).'