Browse Source

Adaptando funcionalidades para a nova versão

master
Matheus456 6 years ago
parent
commit
cd0311609a
  1. 14
      classes/observer.php
  2. 26
      classes/util.php
  3. 6
      db/events.php

14
classes/observer.php

@ -2,7 +2,7 @@
require_once($CFG->dirroot.'/config.php');
include_once('../lib/httpful.phar');
include_once($CFG->dirroot.'/blocks/escola_modelo/lib/httpful.phar');
include_once('util.php');
class block_escola_modelo_observer {
@ -34,7 +34,6 @@ class block_escola_modelo_observer {
public static function course_updated(\core\event\base $event) {
global $DB, $CFG;
$curso = $DB->get_record($event->objecttable,array('id'=>$event->objectid));
atualizaCursoEVL($curso);
}
@ -50,6 +49,12 @@ class block_escola_modelo_observer {
atualizaCursoEVL($curso, false);
}
// EVENTOS RELACIONADOS A CERTIFICADOS
public static function certificate_created(\core\event\base $event) {
atualizaCertificadoEVL($event->other);
}
//
// EVENTOS RELACIONADOS A CATEGORIAS
//
@ -66,9 +71,8 @@ class block_escola_modelo_observer {
public static function course_category_updated(\core\event\base $event) {
global $DB, $CFG;
$categoria = $DB->get_record($event->objecttable,array('id'=>$event->objectid));
// 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
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
atualizaCategoriaEVL($categoria);
}

26
classes/util.php

@ -4,7 +4,7 @@
*/
require_once($CFG->dirroot.'/config.php');
include_once('../lib/httpful.phar');
include_once($CFG->dirroot.'/blocks/escola_modelo/lib/httpful.phar');
/**
* Verifica se um curso é público, conforme critérios da EVL.
@ -56,7 +56,6 @@ function categoriaPublica($category) {
*/
function atualizaCursoEVL($curso, $visivel = null) {
global $DB, $CFG, $USER;
mtrace("curso " . $curso->id);
// Detecta status, caso ele não tenha sido especificado
@ -87,13 +86,11 @@ function atualizaCursoEVL($curso, $visivel = null) {
"certificador" => $CFG->emSigla,
"carga_horaria" => $ch
);
// Monta o JSON que será enviado ao Web Service
$obj->school = $CFG->emSigla;
$obj->course = $camposCurso;
$obj->key = $CFG->emApplicationToken;
$obj->key = $CFG->emApplicationToken; // Precisa passar a chave do usuário
$json = json_encode($obj);
$response = \Httpful\Request::post($uri)
->sendsJson()
->body($json)
@ -113,6 +110,9 @@ function atualizaCursoEVL($curso, $visivel = null) {
function registraSincronizacaoCurso($curso) {
global $DB;
// VALUES (' . $curso->id . ',' . date('H:i:s') . ')
// ON CONFLICT (' . $curso->id . ') DO UPDATE
// SET time_sync = ?';
$qry = '
INSERT INTO {ilb_sync_course} (course_id, time_sync)
VALUES (?,?)
@ -218,7 +218,6 @@ function atualizaCategoriaEVL($categoria) {
function atualizaCertificadoEVL($certificado) {
global $DB, $CFG, $USER;
mtrace("certificado " . $certificado->code);
$school = $DB->get_record('course',array('id'=>'1'));
@ -226,25 +225,25 @@ function atualizaCertificadoEVL($certificado) {
$uri = $CFG->emURLWS . '/api/v1/certificados/adicionar/';
$obj = new StdClass();
$certArray = array();
// Gravação de certificado para envio ao Web Service da EVL
$certItem = array(
'course' => $certificado->courseid,
'student' => $certificado->username,
'course' => $certificado->course,
'student' => $certificado->user,
'date' => $certificado->timecreated,
'grade' => $certificado->finalgrade,
'code' => $certificado->code,
'grade' => $certificado->gradefmt,
'code' => $certificado->id,
);
array_push($certArray, $certItem);
$mainArray = array(
'key' => $CFG->emApplicationToken,
'school' => $CFG->emSigla,
'certificates' => $certArray,
'key' =>$ $CFG->emApplicationToken
);
$json = json_encode($mainArray);
echo "AQUI O CERT ARRAY -> {$json}\n";
$response = \Httpful\Request::post($uri)
->sendsJson()
@ -264,7 +263,6 @@ function atualizaCertificadoEVL($certificado) {
*/
function registraSincronizacaoCertificado($certificado) {
global $DB;
$qry = '
INSERT INTO {ilb_sync_certificate} (certificate_id, time_sync)
VALUES (?,?)

6
db/events.php

@ -21,9 +21,9 @@ $observers = array(
),
// Eventos de certificados
array(
'eventname' => 'mod_certificate\event\certificates_created',
'callback' => 'block_escola_modelo_observer::certificates_created'
)
'eventname' => 'mod_certificate\event\certificate_created',
'callback' => 'block_escola_modelo_observer::certificate_created'
),
// ),
// // Eventos de matrícula a cursos
// array(

Loading…
Cancel
Save