Skip to content
Snippets Groups Projects
Commit a8ec9bcb authored by Andy Hubert's avatar Andy Hubert Committed by Ryan Smith
Browse files

fix: Prevents one transformer error disabling the plugin (Thanks @AndyHubert). (#208)

parent 1ff09f44
No related branches found
No related tags found
No related merge requests found
......@@ -19,20 +19,26 @@ defined('MOODLE_INTERNAL') || die();
function handler(array $config, array $events) {
$eventfunctionmap = get_event_function_map();
$transformedevents = array_map(function ($event) use ($config, $eventfunctionmap) {
$transformedevents = array_filter(array_map(function ($event) use ($config, $eventfunctionmap) {
$eventobj = (object) $event;
$eventname = $eventobj->eventname;
$eventfunctionname = $eventfunctionmap[$eventname];
$eventfunction = '\src\transformer\events\\' . $eventfunctionname;
$eventconfig = array_merge([
'event_function' => $eventfunction,
], $config);
$eventstatements = $eventfunction($eventconfig, $eventobj);
$transformedevent = [
'eventid' => $eventobj->id,
'statements' => $eventstatements,
];
return $transformedevent;
}, $events);
try {
$eventname = $eventobj->eventname;
$eventfunctionname = $eventfunctionmap[$eventname];
$eventfunction = '\src\transformer\events\\' . $eventfunctionname;
$eventconfig = array_merge([
'event_function' => $eventfunction,
], $config);
$eventstatements = $eventfunction($eventconfig, $eventobj);
$transformedevent = [
'eventid' => $eventobj->id,
'statements' => $eventstatements,
];
return $transformedevent;
} catch (\Exception $e) {
$logerror = $config['log_error'];
$logerror("Caught exception for event id #" . $eventobj->id . ": " . $e->getMessage(), "\n");
return null;
}
}, $events));
return $transformedevents;
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment