summaryrefslogtreecommitdiff
path: root/classes
diff options
context:
space:
mode:
Diffstat (limited to 'classes')
-rw-r--r--classes/event/backup_performed.php36
-rw-r--r--classes/event/backup_restored.php36
-rw-r--r--classes/event/response_answer.php34
-rw-r--r--classes/event/service_added.php36
-rw-r--r--classes/event/service_deleted.php36
-rw-r--r--classes/event/service_updated.php36
-rw-r--r--classes/handler.php42
-rw-r--r--classes/service_form.php66
8 files changed, 199 insertions, 123 deletions
diff --git a/classes/event/backup_performed.php b/classes/event/backup_performed.php
index d9a5502..b1f7b7e 100644
--- a/classes/event/backup_performed.php
+++ b/classes/event/backup_performed.php
@@ -26,40 +26,50 @@ namespace local_webhooks\event;
defined('MOODLE_INTERNAL') || die();
+use core\event\base;
+use lang_string;
+use moodle_url;
+
/**
* Defines how to work with events.
*
* @copyright 2017 "Valentin Popov" <info@valentineus.link>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
-class backup_performed extends \core\event\base {
- /**
- * Init method.
- */
- protected function init() {
- $this->data["crud"] = "c";
- $this->data["edulevel"] = self::LEVEL_OTHER;
- $this->data["objecttable"] = "local_webhooks_service";
- }
-
+class backup_performed extends base {
/**
* Return localised event name.
+ *
+ * @throws \coding_exception
*/
public static function get_name() {
- return new \lang_string("create", "moodle");
+ return new lang_string('create', 'moodle');
}
/**
* Returns description of what happened.
+ *
+ * @throws \coding_exception
*/
public function get_description() {
- return new \lang_string("backup", "moodle");
+ return new lang_string('backup', 'moodle');
}
/**
* Get URL related to the action.
+ *
+ * @throws \moodle_exception
*/
public function get_url() {
- return new \moodle_url("/local/webhooks/index.php");
+ return new moodle_url('/local/webhooks/index.php');
+ }
+
+ /**
+ * Init method.
+ */
+ protected function init() {
+ $this->data['crud'] = 'c';
+ $this->data['edulevel'] = self::LEVEL_OTHER;
+ $this->data['objecttable'] = 'local_webhooks_service';
}
} \ No newline at end of file
diff --git a/classes/event/backup_restored.php b/classes/event/backup_restored.php
index 0b6b5f9..83c9ae6 100644
--- a/classes/event/backup_restored.php
+++ b/classes/event/backup_restored.php
@@ -26,40 +26,50 @@ namespace local_webhooks\event;
defined('MOODLE_INTERNAL') || die();
+use core\event\base;
+use lang_string;
+use moodle_url;
+
/**
* Defines how to work with events.
*
* @copyright 2017 "Valentin Popov" <info@valentineus.link>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
-class backup_restored extends \core\event\base {
- /**
- * Init method.
- */
- protected function init() {
- $this->data["crud"] = "u";
- $this->data["edulevel"] = self::LEVEL_OTHER;
- $this->data["objecttable"] = "local_webhooks_service";
- }
-
+class backup_restored extends base {
/**
* Return localised event name.
+ *
+ * @throws \coding_exception
*/
public static function get_name() {
- return new \lang_string("update", "moodle");
+ return new lang_string('update', 'moodle');
}
/**
* Returns description of what happened.
+ *
+ * @throws \coding_exception
*/
public function get_description() {
- return new \lang_string("backupfinished", "moodle");
+ return new lang_string('backupfinished', 'moodle');
}
/**
* Get URL related to the action.
+ *
+ * @throws \moodle_exception
*/
public function get_url() {
- return new \moodle_url("/local/webhooks/index.php");
+ return new moodle_url('/local/webhooks/index.php');
+ }
+
+ /**
+ * Init method.
+ */
+ protected function init() {
+ $this->data['crud'] = 'u';
+ $this->data['edulevel'] = self::LEVEL_OTHER;
+ $this->data['objecttable'] = 'local_webhooks_service';
}
} \ No newline at end of file
diff --git a/classes/event/response_answer.php b/classes/event/response_answer.php
index aa12845..95a3949 100644
--- a/classes/event/response_answer.php
+++ b/classes/event/response_answer.php
@@ -26,40 +26,48 @@ namespace local_webhooks\event;
defined('MOODLE_INTERNAL') || die();
+use core\event\base;
+use lang_string;
+use moodle_url;
+
/**
* Defines how to work with events.
*
* @copyright 2017 "Valentin Popov" <info@valentineus.link>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
-class response_answer extends \core\event\base {
- /**
- * Init method.
- */
- protected function init() {
- $this->data["crud"] = "r";
- $this->data["edulevel"] = self::LEVEL_OTHER;
- $this->data["objecttable"] = "local_webhooks_service";
- }
-
+class response_answer extends base {
/**
* Return localised event name.
+ *
+ * @throws \coding_exception
*/
public static function get_name() {
- return new \lang_string("answer", "moodle");
+ return new lang_string('answer', 'moodle');
}
/**
* Returns description of what happened.
*/
public function get_description() {
- return $this->other["status"];
+ return $this->other['status'];
}
/**
* Get URL related to the action.
+ *
+ * @throws \moodle_exception
*/
public function get_url() {
- return new \moodle_url("/local/webhooks/editservice.php", array("serviceid" => $this->objectid));
+ return new moodle_url('/local/webhooks/editservice.php', array('serviceid' => $this->objectid));
+ }
+
+ /**
+ * Init method.
+ */
+ protected function init() {
+ $this->data['crud'] = 'r';
+ $this->data['edulevel'] = self::LEVEL_OTHER;
+ $this->data['objecttable'] = 'local_webhooks_service';
}
} \ No newline at end of file
diff --git a/classes/event/service_added.php b/classes/event/service_added.php
index 0ec9780..89d7050 100644
--- a/classes/event/service_added.php
+++ b/classes/event/service_added.php
@@ -26,40 +26,50 @@ namespace local_webhooks\event;
defined('MOODLE_INTERNAL') || die();
+use core\event\base;
+use lang_string;
+use moodle_url;
+
/**
* Defines how to work with events.
*
* @copyright 2017 "Valentin Popov" <info@valentineus.link>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
-class service_added extends \core\event\base {
- /**
- * Init method.
- */
- protected function init() {
- $this->data["crud"] = "c";
- $this->data["edulevel"] = self::LEVEL_OTHER;
- $this->data["objecttable"] = "local_webhooks_service";
- }
-
+class service_added extends base {
/**
* Return localised event name.
+ *
+ * @throws \coding_exception
*/
public static function get_name() {
- return new \lang_string("create", "moodle");
+ return new lang_string('create', 'moodle');
}
/**
* Returns description of what happened.
+ *
+ * @throws \coding_exception
*/
public function get_description() {
- return new \lang_string("eventwebserviceservicecreated", "webservice");
+ return new lang_string('eventwebserviceservicecreated', 'webservice');
}
/**
* Get URL related to the action.
+ *
+ * @throws \moodle_exception
*/
public function get_url() {
- return new \moodle_url("/local/webhooks/editservice.php", array("serviceid" => $this->objectid));
+ return new moodle_url('/local/webhooks/editservice.php', array('serviceid' => $this->objectid));
+ }
+
+ /**
+ * Init method.
+ */
+ protected function init() {
+ $this->data['crud'] = 'c';
+ $this->data['edulevel'] = self::LEVEL_OTHER;
+ $this->data['objecttable'] = 'local_webhooks_service';
}
} \ No newline at end of file
diff --git a/classes/event/service_deleted.php b/classes/event/service_deleted.php
index 4955e55..0d446e7 100644
--- a/classes/event/service_deleted.php
+++ b/classes/event/service_deleted.php
@@ -26,40 +26,50 @@ namespace local_webhooks\event;
defined('MOODLE_INTERNAL') || die();
+use core\event\base;
+use lang_string;
+use moodle_url;
+
/**
* Defines how to work with events.
*
* @copyright 2017 "Valentin Popov" <info@valentineus.link>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
-class service_deleted extends \core\event\base {
- /**
- * Init method.
- */
- protected function init() {
- $this->data["crud"] = "d";
- $this->data["edulevel"] = self::LEVEL_OTHER;
- $this->data["objecttable"] = "local_webhooks_service";
- }
-
+class service_deleted extends base {
/**
* Return localised event name.
+ *
+ * @throws \coding_exception
*/
public static function get_name() {
- return new \lang_string("deleted", "moodle");
+ return new lang_string('deleted', 'moodle');
}
/**
* Returns description of what happened.
+ *
+ * @throws \coding_exception
*/
public function get_description() {
- return new \lang_string("eventwebserviceservicedeleted", "webservice");
+ return new lang_string('eventwebserviceservicedeleted', 'webservice');
}
/**
* Get URL related to the action.
+ *
+ * @throws \moodle_exception
*/
public function get_url() {
- return new \moodle_url("/local/webhooks/index.php");
+ return new moodle_url('/local/webhooks/index.php');
+ }
+
+ /**
+ * Init method.
+ */
+ protected function init() {
+ $this->data['crud'] = 'd';
+ $this->data['edulevel'] = self::LEVEL_OTHER;
+ $this->data['objecttable'] = 'local_webhooks_service';
}
} \ No newline at end of file
diff --git a/classes/event/service_updated.php b/classes/event/service_updated.php
index 2410d8a..08b7225 100644
--- a/classes/event/service_updated.php
+++ b/classes/event/service_updated.php
@@ -26,40 +26,50 @@ namespace local_webhooks\event;
defined('MOODLE_INTERNAL') || die();
+use core\event\base;
+use lang_string;
+use moodle_url;
+
/**
* Defines how to work with events.
*
* @copyright 2017 "Valentin Popov" <info@valentineus.link>
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
*/
-class service_updated extends \core\event\base {
- /**
- * Init method.
- */
- protected function init() {
- $this->data["crud"] = "u";
- $this->data["edulevel"] = self::LEVEL_OTHER;
- $this->data["objecttable"] = "local_webhooks_service";
- }
-
+class service_updated extends base {
/**
* Return localised event name.
+ *
+ * @throws \coding_exception
*/
public static function get_name() {
- return new \lang_string("update", "moodle");
+ return new lang_string('update', 'moodle');
}
/**
* Returns description of what happened.
+ *
+ * @throws \coding_exception
*/
public function get_description() {
- return new \lang_string("eventwebserviceserviceupdated", "webservice");
+ return new lang_string('eventwebserviceserviceupdated', 'webservice');
}
/**
* Get URL related to the action.
+ *
+ * @throws \moodle_exception
*/
public function get_url() {
- return new \moodle_url("/local/webhooks/editservice.php", array("serviceid" => $this->objectid));
+ return new moodle_url('/local/webhooks/editservice.php', array('serviceid' => $this->objectid));
+ }
+
+ /**
+ * Init method.
+ */
+ protected function init() {
+ $this->data['crud'] = 'u';
+ $this->data['edulevel'] = self::LEVEL_OTHER;
+ $this->data['objecttable'] = 'local_webhooks_service';
}
} \ No newline at end of file
diff --git a/classes/handler.php b/classes/handler.php
index 2381173..47a44f3 100644
--- a/classes/handler.php
+++ b/classes/handler.php
@@ -26,10 +26,15 @@ namespace local_webhooks;
defined('MOODLE_INTERNAL') || die();
-require_once(__DIR__ . "/../lib.php");
-require_once(__DIR__ . "/../locallib.php");
+global $CFG;
-require_once($CFG->libdir . "/filelib.php");
+require_once(__DIR__ . '/../lib.php');
+require_once(__DIR__ . '/../locallib.php');
+
+require_once($CFG->libdir . '/filelib.php');
+
+use curl;
+use local_webhooks_events;
/**
* Defines how to work with events.
@@ -42,6 +47,9 @@ class handler {
* External handler.
*
* @param object $event
+ *
+ * @throws \dml_exception
+ * @throws \coding_exception
*/
public static function events($event) {
$data = $event->get_data();
@@ -58,20 +66,21 @@ class handler {
*
* @param array $data
* @param object $callback
+ *
+ * @throws \coding_exception
+ * @throws \dml_exception
*/
private static function handler_callback($data, $callback) {
global $CFG;
- if (boolval($callback->enable)) {
- if (!empty($callback->events[$data["eventname"]])) {
- $urlparse = parse_url($CFG->wwwroot);
+ if ((bool) $callback->enable && !empty($callback->events[$data['eventname']])) {
+ $urlparse = parse_url($CFG->wwwroot);
- $data["host"] = $urlparse['host'];
- $data["token"] = $callback->token;
- $data["extra"] = $callback->other;
+ $data['host'] = $urlparse['host'];
+ $data['token'] = $callback->token;
+ $data['extra'] = $callback->other;
- self::send($data, $callback);
- }
+ self::send($data, $callback);
}
}
@@ -80,14 +89,19 @@ class handler {
*
* @param array $data
* @param object $callback
+ *
+ * @return array
+ * @throws \coding_exception
+ * @throws \dml_exception
*/
private static function send($data, $callback) {
- $curl = new \curl();
- $curl->setHeader(array("Content-Type: application/" . $callback->type));
+ $curl = new curl();
+ $curl->setHeader(array('Content-Type: application/' . $callback->type));
$curl->post($callback->url, json_encode($data));
$response = $curl->getResponse();
- \local_webhooks_events::response_answer($callback->id, $response);
+ local_webhooks_events::response_answer($callback->id, $response);
+
return $response;
}
} \ No newline at end of file
diff --git a/classes/service_form.php b/classes/service_form.php
index 3348247..eac7bb7 100644
--- a/classes/service_form.php
+++ b/classes/service_form.php
@@ -24,7 +24,7 @@
defined('MOODLE_INTERNAL') || die();
-require_once($CFG->libdir . "/formslib.php");
+require_once($CFG->libdir . '/formslib.php');
/**
* Description editing form definition.
@@ -42,63 +42,65 @@ class service_edit_form extends moodleform {
/**
* Defines the standard structure of the form.
+ *
+ * @throws \coding_exception
*/
protected function definition() {
$mform =& $this->_form;
- $size = array("size" => 60);
+ $size = array('size' => 60);
/* Form heading */
- $mform->addElement("header", "editserviceheader", new lang_string("service", "webservice"));
+ $mform->addElement('header', 'editserviceheader', new lang_string('service', 'webservice'));
/* Name of the service */
- $mform->addElement("text", "title", new lang_string("name", "moodle"), $size);
- $mform->addRule("title", null, "required");
- $mform->setType("title", PARAM_NOTAGS);
+ $mform->addElement('text', 'title', new lang_string('name', 'moodle'), $size);
+ $mform->addRule('title', null, 'required');
+ $mform->setType('title', PARAM_NOTAGS);
/* Callback address */
- $mform->addElement("text", "url", new lang_string("url", "moodle"), $size);
- $mform->addRule("url", null, "required");
- $mform->setType("url", PARAM_URL);
+ $mform->addElement('text', 'url', new lang_string('url', 'moodle'), $size);
+ $mform->addRule('url', null, 'required');
+ $mform->setType('url', PARAM_URL);
/* Enabling the service */
- $mform->addElement("advcheckbox", "enable", new lang_string("enable", "moodle"));
- $mform->setType("enable", PARAM_BOOL);
- $mform->setDefault("enable", 1);
- $mform->setAdvanced("enable");
+ $mform->addElement('advcheckbox', 'enable', new lang_string('enable', 'moodle'));
+ $mform->setType('enable', PARAM_BOOL);
+ $mform->setDefault('enable', 1);
+ $mform->setAdvanced('enable');
/* Token */
- $mform->addElement("text", "token", new lang_string("token", "webservice"), $size);
- $mform->setType("token", PARAM_NOTAGS);
+ $mform->addElement('text', 'token', new lang_string('token', 'webservice'), $size);
+ $mform->setType('token', PARAM_NOTAGS);
/* Additional information */
- $mform->addElement("text", "other", new lang_string("sourceext", "plugin"), $size);
- $mform->setType("other", PARAM_NOTAGS);
- $mform->setAdvanced("other");
+ $mform->addElement('text', 'other', new lang_string('sourceext', 'plugin'), $size);
+ $mform->setType('other', PARAM_NOTAGS);
+ $mform->setAdvanced('other');
/* Content type */
- $contenttype = array("json" => "application/json", "x-www-form-urlencoded" => "application/x-www-form-urlencoded");
- $mform->addElement("select", "type", "Content type", $contenttype);
- $mform->setAdvanced("type");
+ $contenttype = array('json' => 'application/json', 'x-www-form-urlencoded' => 'application/x-www-form-urlencoded');
+ $mform->addElement('select', 'type', 'Content type', $contenttype);
+ $mform->setAdvanced('type');
/* Form heading */
- $mform->addElement("header", "editserviceheaderevent", new lang_string("edulevel", "moodle"));
+ $mform->addElement('header', 'editserviceheaderevent', new lang_string('edulevel', 'moodle'));
/* List of events */
- $eventlist = report_eventlist_list_generator::get_all_events_list(true);
- $events = array();
+ $eventlist = report_eventlist_list_generator::get_all_events_list();
+ $events = array();
/* Formation of the list of elements */
foreach ($eventlist as $event) {
- $events[$event["component"]][] =& $mform->createElement("checkbox", $event["eventname"], $event["eventname"]);
+ $events[$event['component']][] =& $mform->createElement('checkbox', $event['eventname'], $event['eventname']);
}
/* Displays groups of items */
foreach ($events as $key => $event) {
- $mform->addGroup($event, "events", $key, "<br />", true);
+ $mform->addGroup($event, 'events', $key, '<br />');
}
/* Control Panel */
- $this->add_action_buttons(true);
+ $this->add_action_buttons();
}
}
@@ -118,18 +120,20 @@ class service_backup_form extends moodleform {
/**
* Defines the standard structure of the form.
+ *
+ * @throws \coding_exception
*/
protected function definition() {
$mform =& $this->_form;
/* Form heading */
- $mform->addElement("header", "editserviceheader", new lang_string("restore", "moodle"));
+ $mform->addElement('header', 'editserviceheader', new lang_string('restore', 'moodle'));
/* Download the file */
- $mform->addElement("filepicker", "backupfile", new lang_string("file", "moodle"));
- $mform->addRule("backupfile", null, "required");
+ $mform->addElement('filepicker', 'backupfile', new lang_string('file', 'moodle'));
+ $mform->addRule('backupfile', null, 'required');
/* Control Panel */
- $this->add_action_buttons(true, new lang_string("restore", "moodle"));
+ $this->add_action_buttons(true, new lang_string('restore', 'moodle'));
}
} \ No newline at end of file