From 8c6dc9b0e5651e301118efa3be5960e00dda322e Mon Sep 17 00:00:00 2001 From: Valentin Popov Date: Tue, 21 Nov 2017 09:02:16 +0400 Subject: Initial commit --- classes/observer.php | 59 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 classes/observer.php (limited to 'classes') diff --git a/classes/observer.php b/classes/observer.php new file mode 100644 index 0000000..dbe9d61 --- /dev/null +++ b/classes/observer.php @@ -0,0 +1,59 @@ +. + +/** + * Event handlers. + * + * @package local_billingpatch + * @copyright 2017 "Valentin Popov" + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +namespace local_billingpatch; + +defined("MOODLE_INTERNAL") || die(); + +/** + * Description of event handlers. + * + * @copyright 2017 "Valentin Popov" + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +class observer { + /** + * External function, called by the observer. + * + * @param object $event + */ + public static function course_module($event) { + $data = $event->get_data(); + + if ($data["other"]["modulename"] == "bigbluebuttonbn") { + self::monkey_patch_bigbluebuttonbn($data["other"]["instanceid"]); + } + } + + /** + * Patches for BigBlueButton. + * + * @param number $instanceid + */ + private static function monkey_patch_bigbluebuttonbn($instanceid = 0) { + global $DB; + $module = $DB->get_record("bigbluebuttonbn", array("id" => $instanceid)); + $DB->set_field("event", "timeduration", $module->closingtime); + } +} \ No newline at end of file -- cgit v1.2.3