From 0deb94d39f93cadcb03cde0debe47ec3c3d4e953 Mon Sep 17 00:00:00 2001 From: Matheus Garcia Date: Thu, 23 Sep 2021 09:35:26 -0300 Subject: [PATCH] =?UTF-8?q?Adapta=C3=A7=C3=A3o=20para=20valida=C3=A7=C3=A3?= =?UTF-8?q?o=20de=20certificados=20diante=20de=20novos=20par=C3=A2metros?= =?UTF-8?q?=20de=20cursos?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- index.php | 99 +++++++++++++++++++++++++++++-------------------------- 1 file changed, 53 insertions(+), 46 deletions(-) diff --git a/index.php b/index.php index 7e931be..4a0f150 100644 --- a/index.php +++ b/index.php @@ -164,62 +164,68 @@ if (! $certificates) { echo '

' . get_string('to', 'block_verify_certificate') . ': ' . fullname($certdata) . '
'; // Date format. $dateformat = get_string('strftimedate', 'langconfig'); - + $certdata->printdate = 1; $certrecord = new stdClass(); $certrecord->timecreated = $certdata->citimecreated; $certrecord->code = $certdata->code; $certrecord->userid = $certdata->userid; $certrecord->id = $certdata->id; - $userid = $certrecord->userid; - - // Exibe CPF, se username for CPF - #require_once("$CFG->dirroot/user/profile/lib.php"); - #require_once("$CFG->dirroot/user/profile/field/cpf/field.class.php"); - #$formfield = new profile_field_cpf('8', $certdata->userid); - #$cpf = $formfield->display_data(); - $cpf = getFormattedCPFFromUsername($userid); - if ($cpf) { + $userid = $certrecord->userid; + + // Exibe CPF, se username for CPF + #require_once("$CFG->dirroot/user/profile/lib.php"); + #require_once("$CFG->dirroot/user/profile/field/cpf/field.class.php"); + #$formfield = new profile_field_cpf('8', $certdata->userid); + #$cpf = $formfield->display_data(); + $cpf = getFormattedCPFFromUsername($userid); + if ($cpf) { echo '

' . "CPF" . ': ' . $cpf . '

'; } - // Exibe curso - $course = $DB->get_record('course', array('id' => $certdata->course)); + // Exibe curso + $course = $DB->get_record('course', array('id' => $certdata->course)); if ($course) { - echo '

' . get_string('course', 'block_verify_certificate') . ': ' . $course->fullname . '
'; + $nome_acao = certificate_obtemCampoCustomizadoCurso($course->id, 'nome_acao_certificado'); + if(empty(trim($nome_acao))) { + $nome_acao = mb_strtoupper($course->fullname, 'UTF-8'); + } + echo '

' . get_string('course', 'block_verify_certificate') . ': ' . $nome_acao . '
'; } - // Curso sem tutoria: início é matrícula, final é timeend de course_completions - // Curso com tutoria com turma: início e fim vem da matrícula da turma - // Curso com tutoria sem turma: início e fim vem da configuração do curso - // Demais cursos: início e fim vem da configuração do curso - - $enrol_manager = new course_enrolment_manager($PAGE, $course); - $user_enrol = end($enrol_manager->get_user_enrolments($userid)); - $enrol = $DB->get_record('enrol', array('id' => $user_enrol->enrolid)); - if(substr( $course->idnumber, 0, 3 ) == 'ST-' ) { - $cc = new completion_completion(array('userid'=>$certrecord->userid, 'course'=>$certdata->course)); - $start_date = $user_enrol->timestart; - $end_date = $cc->timecompleted; - $type = 'ST'; - } elseif(substr( $course->idnumber, 0, 3 ) == 'CT-') { - /*$group = $DB->get_record('groups', array('courseid' => $course->id)); - if( $group ) { - $start_date = $enrol->enrolstartdate; - $end_date = $enrol->enrolenddate; - } else { + // Curso sem tutoria: início é matrícula, final é timeend de course_completions + // Curso com tutoria com turma: início e fim vem da matrícula da turma + // Curso com tutoria sem turma: início e fim vem da configuração do curso + // Demais cursos: início e fim vem da configuração do curso + + $periodo_certificado = certificate_obtemCampoCustomizadoCurso($course->id, 'periodo_certificado'); + if(empty(trim($periodo_certificado))) { + $periodo_certificado = 'Matrícula até conclusão'; + } + + $enrol_manager = new course_enrolment_manager($PAGE, $course); + $user_enrol = end($enrol_manager->get_user_enrolments($userid)); + $enrol = $DB->get_record('enrol', array('id' => $user_enrol->enrolid)); + if(substr( $course->idnumber, 0, 3 ) == 'ST-' || $periodo_certificado == 'Matrícula até conclusão') { + $cc = new completion_completion(array('userid'=>$certrecord->userid, 'course'=>$certdata->course)); + $start_date = $user_enrol->timestart; + $end_date = $cc->timecompleted; + $type = 'ST'; + } elseif(substr( $course->idnumber, 0, 3 ) == 'CT-' || $periodo_certificado == 'Duração do curso') { + $type = 'CT'; $start_date = $course->startdate; $end_date = $course->enddate; - }*/ - $type = 'CT'; - $start_date = $course->startdate; - $end_date = $course->enddate; - } else { - $type = ''; - $start_date = $course->startdate; - $end_date = $course->enddate; - } + } else { + $type = ''; + if($periodo_certificado == 'Sem período') { + $start_date = null; + $end_date = $course->enddate; + } else { + $start_date = $course->startdate; + $end_date = $course->enddate; + } + } // Retrieving grade and date for each certificate. $grade = certificate_get_grade($certdata, $course, $userid, $valueonly = true); @@ -227,12 +233,13 @@ if (! $certificates) { if (($type = 'ST' || $type = 'CT') && $start_date && $end_date) { echo "

PERÍODO: " . userdate($start_date, $dateformat) . " a " . userdate($end_date, $dateformat) . '

'; - } else { - echo "

DATA: " . userdate($certdata->citimecreated, $dateformat) . '

'; - } - + } elseif ($end_date) { + echo "

DATA: " . userdate($end_date, $dateformat) . '

'; + } else { + echo "

DATA: " . userdate($certdata->citimecreated, $dateformat) . '

'; + } - if ($course && $certdata->printgrade > 0) { + if ($course && $certdata->printgrade > 0) { echo '

' . get_string('grade', 'block_verify_certificate') . ': ' . $grade . '

'; } if ($course->summary) {