Matheus Garcia 6 years ago
parent
commit
d287020d5d
  1. 12
      classes/observer.php
  2. 19
      classes/util.php

12
classes/observer.php

@ -34,7 +34,6 @@ class block_escola_modelo_observer {
public static function course_updated(\core\event\base $event) { public static function course_updated(\core\event\base $event) {
global $DB, $CFG; global $DB, $CFG;
$curso = $DB->get_record($event->objecttable,array('id'=>$event->objectid)); $curso = $DB->get_record($event->objecttable,array('id'=>$event->objectid));
atualizaCursoEVL($curso); atualizaCursoEVL($curso);
} }
@ -50,6 +49,12 @@ class block_escola_modelo_observer {
atualizaCursoEVL($curso, false); atualizaCursoEVL($curso, false);
} }
// EVENTOS RELACIONADOS A CERTIFICADOS
public static function certificate_created(\core\event\base $event) {
atualizaCertificadoEVL($event->other);
}
// //
// EVENTOS RELACIONADOS A CATEGORIAS // EVENTOS RELACIONADOS A CATEGORIAS
// //
@ -66,9 +71,8 @@ class block_escola_modelo_observer {
public static function course_category_updated(\core\event\base $event) { public static function course_category_updated(\core\event\base $event) {
global $DB, $CFG; global $DB, $CFG;
$categoria = $DB->get_record($event->objecttable,array('id'=>$event->objectid)); $categoria = $DB->get_record($event->objecttable,array('id'=>$event->objectid));
A forma mais segura de fazê-lo é modificar timemodified de todos os cursos,
// A forma mais segura de fazê-lo é modificar timemodified de todos os cursos, de modo que na próxima sincronização eles tenham seu status modificado
// de modo que na próxima sincronização eles tenham seu status modificado
atualizaCategoriaEVL($categoria); atualizaCategoriaEVL($categoria);
} }

19
classes/util.php

@ -145,6 +145,9 @@ function atualizaCursoEVL($curso, $visivel = null) {
function registraSincronizacaoCurso($curso) { function registraSincronizacaoCurso($curso) {
global $DB; global $DB;
// VALUES (' . $curso->id . ',' . date('H:i:s') . ')
// ON CONFLICT (' . $curso->id . ') DO UPDATE
// SET time_sync = ?';
$qry = ' $qry = '
INSERT INTO {ilb_sync_course} (course_id, time_sync) INSERT INTO {ilb_sync_course} (course_id, time_sync)
VALUES (?,?) VALUES (?,?)
@ -250,7 +253,6 @@ function atualizaCategoriaEVL($categoria) {
function atualizaCertificadoEVL($certificado) { function atualizaCertificadoEVL($certificado) {
global $DB, $CFG, $USER; global $DB, $CFG, $USER;
mtrace("certificado " . $certificado->code); mtrace("certificado " . $certificado->code);
$school = $DB->get_record('course',array('id'=>'1')); $school = $DB->get_record('course',array('id'=>'1'));
@ -258,25 +260,25 @@ function atualizaCertificadoEVL($certificado) {
$uri = $CFG->emURLWS . '/api/v1/certificados/adicionar/'; $uri = $CFG->emURLWS . '/api/v1/certificados/adicionar/';
$obj = new StdClass(); $obj = new StdClass();
$certArray = array(); $certArray = array();
// Gravação de certificado para envio ao Web Service da EVL // Gravação de certificado para envio ao Web Service da EVL
$certItem = array( $certItem = array(
'course' => $certificado->courseid, 'course' => $certificado->course,
'student' => $certificado->username, 'student' => $certificado->user,
'date' => $certificado->timecreated, 'date' => $certificado->timecreated,
'grade' => $certificado->finalgrade, 'grade' => $certificado->gradefmt,
'code' => $certificado->code, 'code' => $certificado->id,
); );
array_push($certArray, $certItem); array_push($certArray, $certItem);
$mainArray = array( $mainArray = array(
'key' => $CFG->emApplicationToken,
'school' => $CFG->emSigla, 'school' => $CFG->emSigla,
'certificates' => $certArray, 'certificates' => $certArray,
'key' =>$ $CFG->emApplicationToken
); );
$json = json_encode($mainArray); $json = json_encode($mainArray);
echo "AQUI O CERT ARRAY -> {$json}\n";
$response = \Httpful\Request::post($uri) $response = \Httpful\Request::post($uri)
->sendsJson() ->sendsJson()
@ -296,7 +298,6 @@ function atualizaCertificadoEVL($certificado) {
*/ */
function registraSincronizacaoCertificado($certificado) { function registraSincronizacaoCertificado($certificado) {
global $DB; global $DB;
$qry = ' $qry = '
INSERT INTO {ilb_sync_certificate} (certificate_id, time_sync) INSERT INTO {ilb_sync_certificate} (certificate_id, time_sync)
VALUES (?,?) VALUES (?,?)

Loading…
Cancel
Save