MDL-43230 badges: move badge revoke event into api

This commit is contained in:
Ryan Wyllie
2016-10-12 05:10:17 +00:00
parent b7374faca6
commit addb9430f9
2 changed files with 11 additions and 5 deletions
-5
View File
@@ -180,11 +180,6 @@ if ($award && data_submitted() && has_capability('moodle/badges:awardbadge', $co
foreach ($users as $user) {
if (!process_manual_revoke($user->id, $USER->id, $issuerrole->roleid, $badgeid)) {
echo $OUTPUT->error_text(get_string('error:cannotrevokebadge', 'badges'));
} else {
// Trigger event, badge revoked.
$eventparams = array('objectid' => $badgeid, 'context' => $PAGE->context);
$event = \core\event\badge_revoked::create($eventparams);
$event->trigger();
}
}
+11
View File
@@ -262,6 +262,17 @@ function process_manual_revoke($recipientid, $issuerid, $issuerrole, $badgeid) {
'recipientid' => $recipientid))
&& $DB->delete_records('badge_issued', array('badgeid' => $badgeid,
'userid' => $recipientid))) {
// Trigger event, badge revoked.
$badge = new \badge($badgeid);
$eventparams = array(
'objectid' => $badgeid,
'relateduserid' => $recipientid,
'context' => $badge->get_context()
);
$event = \core\event\badge_revoked::create($eventparams);
$event->trigger();
return true;
}
} else {