From 7cfdf296009bf224e93122d933cf20914e5dd7ad Mon Sep 17 00:00:00 2001 From: Valentin Popov Date: Sun, 26 Nov 2017 11:15:50 +0400 Subject: Local class for calling events --- locallib.php | 144 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 144 insertions(+) create mode 100644 locallib.php (limited to 'locallib.php') diff --git a/locallib.php b/locallib.php new file mode 100644 index 0000000..3173a40 --- /dev/null +++ b/locallib.php @@ -0,0 +1,144 @@ +. + +/** + * Classes of modules. + * + * @package local_webhooks + * @copyright 2017 "Valentin Popov" + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +defined("MOODLE_INTERNAL") || die(); + +/** + * Description of functions of the call of events + * + * @copyright 2017 "Valentin Popov" + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ +class local_webhooks_events { + /** + * Call the event when creating a backup. + */ + public static function backup_performed() { + $context = context_system::instance(); + + $event = local_webhooks\event\backup_performed::create( + array( + "context" => $context, + "objectid" => 0 + ) + ); + + $event->trigger(); + } + + /** + * Call the event when restoring from a backup. + */ + public static function backup_restored() { + $context = context_system::instance(); + + $event = local_webhooks\event\backup_restored::create( + array( + "context" => $context, + "objectid" => 0 + ) + ); + + $event->trigger(); + } + + /** + * Call event when the response is received from the service + * + * @param number $objectid Service ID + * @param array $response Server response + */ + public static function response_answer($objectid = 0, $response = array()) { + $context = context_system::instance(); + + $status = "Error sending request"; + if (!empty($response["HTTP/1.1"])) { + $status = $response["HTTP/1.1"]; + } + + $event = local_webhooks\event\response_answer::create( + array( + "context" => $context, + "objectid" => $objectid, + "other" => array("status" => $status) + ) + ); + + $event->trigger(); + } + + /** + * Call the event when the service is added. + * + * @param number $objectid Service ID + */ + public static function service_added($objectid = 0) { + $context = context_system::instance(); + + $event = local_webhooks\event\service_added::create( + array( + "context" => $context, + "objectid" => $objectid + ) + ); + + $event->trigger(); + } + + /** + * Call the event when the service is deleted. + * + * @param number $objectid Service ID + */ + public static function service_deleted($objectid = 0) { + $context = context_system::instance(); + + $event = local_webhooks\event\service_deleted::create( + array( + "context" => $context, + "objectid" => $objectid + ) + ); + + $event->trigger(); + } + + /** + * Call event when the service is updated. + * + * @param number $objectid Service ID + */ + public static function service_updated($objectid = 0) { + $context = context_system::instance(); + + $event = local_webhooks\event\service_updated::create( + array( + "context" => $context, + "objectid" => $objectid + ) + ); + + $event->trigger(); + } +} \ No newline at end of file -- cgit v1.2.3