From d8f3a9f3edf66fad0af84a703e39e45911f37d85 Mon Sep 17 00:00:00 2001 From: Valentin Popov Date: Fri, 2 Nov 2018 00:36:09 +0400 Subject: Formatting code and eliminating possible errors Signed-off-by: Valentin Popov --- classes/event/backup_performed.php | 36 +++++++++------ classes/event/backup_restored.php | 36 +++++++++------ classes/event/response_answer.php | 34 ++++++++------ classes/event/service_added.php | 36 +++++++++------ classes/event/service_deleted.php | 36 +++++++++------ classes/event/service_updated.php | 36 +++++++++------ classes/handler.php | 42 +++++++++++------ classes/service_form.php | 66 ++++++++++++++------------- db/events.php | 12 ++--- db/install.xml | 4 +- editservice.php | 28 ++++++------ index.php | 92 ++++++++++++++++++++++---------------- lang/en/local_webhooks.php | 2 +- lib.php | 64 ++++++++++++++++---------- locallib.php | 65 +++++++++++++++------------ restorebackup.php | 20 ++++----- settings.php | 13 ++++-- version.php | 10 ++--- 18 files changed, 378 insertions(+), 254 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" * @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" * @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" * @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" * @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" * @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" * @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, "
", true); + $mform->addGroup($event, 'events', $key, '
'); } /* 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 diff --git a/db/events.php b/db/events.php index f5dd77c..7f2733a 100644 --- a/db/events.php +++ b/db/events.php @@ -26,10 +26,10 @@ defined('MOODLE_INTERNAL') || die(); $observers = array( array( - "callback" => "\local_webhooks\\handler::events", - "eventname" => "*", - "includefile" => null, - "internal" => true, - "priority" => 200 - ) + 'callback' => '\local_webhooks\handler::events', + 'eventname' => '*', + 'includefile' => null, + 'internal' => true, + 'priority' => 200, + ), ); \ No newline at end of file diff --git a/db/install.xml b/db/install.xml index eff9631..ed5d6b1 100644 --- a/db/install.xml +++ b/db/install.xml @@ -1,5 +1,7 @@ - + diff --git a/editservice.php b/editservice.php index 8a7d4f6..821e0cc 100644 --- a/editservice.php +++ b/editservice.php @@ -22,22 +22,22 @@ * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ -require_once(__DIR__ . "/../../config.php"); -require_once(__DIR__ . "/classes/service_form.php"); -require_once(__DIR__ . "/lib.php"); +require_once(__DIR__ . '/../../config.php'); +require_once(__DIR__ . '/classes/service_form.php'); +require_once(__DIR__ . '/lib.php'); -require_once($CFG->libdir . "/adminlib.php"); +require_once($CFG->libdir . '/adminlib.php'); /* Optional parameters */ -$serviceid = optional_param("serviceid", 0, PARAM_INT); +$serviceid = optional_param('serviceid', 0, PARAM_INT); /* Link generation */ -$urlparameters = array("serviceid" => $serviceid); -$baseurl = new moodle_url("/local/webhooks/editservice.php", $urlparameters); -$managerservice = new moodle_url("/local/webhooks/index.php"); +$urlparameters = array('serviceid' => $serviceid); +$baseurl = new moodle_url('/local/webhooks/editservice.php', $urlparameters); +$managerservice = new moodle_url('/local/webhooks/index.php'); /* Configure the context of the page */ -admin_externalpage_setup("local_webhooks", "", null, $baseurl, array()); +admin_externalpage_setup('local_webhooks', '', null, $baseurl); $context = context_system::instance(); /* Create an editing form */ @@ -50,7 +50,7 @@ if ($mform->is_cancelled()) { /* Getting the data */ $servicerecord = new stdClass(); -if ($editing = boolval($serviceid)) { +if ($editing = (bool) $serviceid) { $servicerecord = local_webhooks_get_record($serviceid); $mform->set_data($servicerecord); } @@ -60,15 +60,15 @@ if ($data = $mform->get_data()) { if ($editing) { $data->id = $serviceid; local_webhooks_update_record($data, false); - redirect($managerservice, new lang_string("eventwebserviceserviceupdated", "webservice")); + redirect($managerservice, new lang_string('eventwebserviceserviceupdated', 'webservice')); } else { - local_webhooks_update_record($data, true); - redirect($managerservice, new lang_string("eventwebserviceservicecreated", "webservice")); + local_webhooks_update_record($data); + redirect($managerservice, new lang_string('eventwebserviceservicecreated', 'webservice')); } } /* The page title */ -$titlepage = new lang_string("externalservice", "webservice"); +$titlepage = new lang_string('externalservice', 'webservice'); $PAGE->navbar->add($titlepage); $PAGE->set_heading($titlepage); $PAGE->set_title($titlepage); diff --git a/index.php b/index.php index 318520a..5de2101 100644 --- a/index.php +++ b/index.php @@ -22,93 +22,107 @@ * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ -require_once(__DIR__ . "/../../config.php"); -require_once(__DIR__ . "/lib.php"); +require_once(__DIR__ . '/../../config.php'); +require_once(__DIR__ . '/lib.php'); -require_once($CFG->libdir . "/adminlib.php"); -require_once($CFG->libdir . "/tablelib.php"); +require_once($CFG->libdir . '/adminlib.php'); +require_once($CFG->libdir . '/tablelib.php'); /* Optional parameters */ -$backupservices = optional_param("getbackup", 0, PARAM_BOOL); -$deleteid = optional_param("deleteid", 0, PARAM_INT); -$hideshowid = optional_param("hideshowid", 0, PARAM_INT); +$backupservices = optional_param('getbackup', 0, PARAM_BOOL); +$deleteid = optional_param('deleteid', 0, PARAM_INT); +$hideshowid = optional_param('hideshowid', 0, PARAM_INT); /* Link generation */ -$editservice = "/local/webhooks/editservice.php"; -$managerservice = "/local/webhooks/index.php"; -$restorebackup = "/local/webhooks/restorebackup.php"; -$baseurl = new moodle_url($managerservice); +$editservice = '/local/webhooks/editservice.php'; +$managerservice = '/local/webhooks/index.php'; +$restorebackup = '/local/webhooks/restorebackup.php'; +$baseurl = new moodle_url($managerservice); /* Configure the context of the page */ -admin_externalpage_setup("local_webhooks", "", null, $baseurl, array()); +admin_externalpage_setup('local_webhooks', '', null, $baseurl); $context = context_system::instance(); /* Delete the service */ -if (boolval($deleteid)) { +if ((bool) $deleteid) { local_webhooks_remove_record($deleteid); - redirect($PAGE->url, new lang_string("eventwebserviceservicedeleted", "webservice")); + redirect($PAGE->url, new lang_string('eventwebserviceservicedeleted', 'webservice')); } /* Retrieving a list of services */ $callbacks = local_webhooks_get_list_records(); /* Upload settings as a file */ -if (boolval($backupservices)) { +if ((bool) $backupservices) { $filecontent = local_webhooks_create_backup(); - $filename = "webhooks_" . date("U") . ".backup"; + $filename = 'webhooks_' . date('U') . '.backup'; send_file($filecontent, $filename, 0, 0, true, true); } /* Switching the status of the service */ -if (boolval($hideshowid)) { +if ((bool) $hideshowid) { $callback = $callbacks[$hideshowid]; if (!empty($callback)) { - $callback->enable = !boolval($callback->enable); + $callback->enable = !(bool) $callback->enable; local_webhooks_update_record($callback, false); - redirect($PAGE->url, new lang_string("eventwebserviceserviceupdated", "webservice")); + redirect($PAGE->url, new lang_string('eventwebserviceserviceupdated', 'webservice')); } } /* The page title */ -$titlepage = new lang_string("pluginname", "local_webhooks"); +$titlepage = new lang_string('pluginname', 'local_webhooks'); $PAGE->set_heading($titlepage); $PAGE->set_title($titlepage); echo $OUTPUT->header(); /* Table declaration */ -$table = new flexible_table("webhooks-service-table"); +$table = new flexible_table('webhooks-service-table'); /* Customize the table */ -$table->define_columns(array("title", "url", "actions")); -$table->define_headers(array(new lang_string("name", "moodle"), new lang_string("url", "moodle"), new lang_string("actions", "moodle"))); +$table->define_columns( + array( + 'title', + 'url', + 'actions', + ) +); + +$table->define_headers( + array( + new lang_string('name', 'moodle'), + new lang_string('url', 'moodle'), + new lang_string('actions', 'moodle'), + ) +); + $table->define_baseurl($baseurl); $table->setup(); foreach ($callbacks as $callback) { /* Filling of information columns */ - $titlecallback = html_writer::div($callback->title, "title"); - $urlcallback = html_writer::div($callback->url, "url"); + $titlecallback = html_writer::div($callback->title, 'title'); + $urlcallback = html_writer::div($callback->url, 'url'); /* Defining service status */ - $hideshowicon = "t/show"; - $hideshowstring = new lang_string("enable", "moodle"); - if (boolval($callback->enable)) { - $hideshowicon = "t/hide"; - $hideshowstring = new lang_string("disable", "moodle"); + $hideshowicon = 't/show'; + $hideshowstring = new lang_string('enable', 'moodle'); + if ((bool) $callback->enable) { + $hideshowicon = 't/hide'; + $hideshowstring = new lang_string('disable', 'moodle'); } /* Link to enable / disable the service */ - $hideshowlink = new moodle_url($managerservice, array("hideshowid" => $callback->id)); + $hideshowlink = new moodle_url($managerservice, array('hideshowid' => $callback->id)); $hideshowitem = $OUTPUT->action_icon($hideshowlink, new pix_icon($hideshowicon, $hideshowstring)); /* Link for editing */ - $editlink = new moodle_url($editservice, array("serviceid" => $callback->id)); - $edititem = $OUTPUT->action_icon($editlink, new pix_icon("t/edit", new lang_string("edit", "moodle"))); + $editlink = new moodle_url($editservice, array('serviceid' => $callback->id)); + $edititem = $OUTPUT->action_icon($editlink, new pix_icon('t/edit', new lang_string('edit', 'moodle'))); /* Link to remove */ - $deletelink = new moodle_url($managerservice, array("deleteid" => $callback->id)); - $deleteitem = $OUTPUT->action_icon($deletelink, new pix_icon("t/delete", new lang_string("delete", "moodle"))); + $deletelink = new moodle_url($managerservice, array('deleteid' => $callback->id)); + $deleteitem = $OUTPUT->action_icon($deletelink, new pix_icon('t/delete', new lang_string('delete', 'moodle'))); /* Adding data to the table */ $table->add_data(array($titlecallback, $urlcallback, $hideshowitem . $edititem . $deleteitem)); @@ -119,14 +133,14 @@ $table->print_html(); /* Add service button */ $addserviceurl = new moodle_url($editservice); -echo $OUTPUT->single_button($addserviceurl, new lang_string("addaservice", "webservice"), "get"); +echo $OUTPUT->single_button($addserviceurl, new lang_string('addaservice', 'webservice'), 'get'); /* Button to get a backup */ -$backupurl = new moodle_url($managerservice, array("getbackup" => true)); -echo $OUTPUT->single_button($backupurl, new lang_string("backup", "moodle"), "get"); +$backupurl = new moodle_url($managerservice, array('getbackup' => true)); +echo $OUTPUT->single_button($backupurl, new lang_string('backup', 'moodle'), 'get'); /* Button for restoring settings */ $restorebackupurl = new moodle_url($restorebackup); -echo $OUTPUT->single_button($restorebackupurl, new lang_string("restore", "moodle"), "get"); +echo $OUTPUT->single_button($restorebackupurl, new lang_string('restore', 'moodle'), 'get'); echo $OUTPUT->footer(); \ No newline at end of file diff --git a/lang/en/local_webhooks.php b/lang/en/local_webhooks.php index d945f65..d0ae0fa 100644 --- a/lang/en/local_webhooks.php +++ b/lang/en/local_webhooks.php @@ -22,4 +22,4 @@ * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ -$string["pluginname"] = "WebHooks"; \ No newline at end of file +$string['pluginname'] = 'WebHooks'; \ No newline at end of file diff --git a/lib.php b/lib.php index be88deb..1cf993f 100644 --- a/lib.php +++ b/lib.php @@ -24,19 +24,21 @@ defined('MOODLE_INTERNAL') || die(); -require_once(__DIR__ . "/locallib.php"); +require_once(__DIR__ . '/locallib.php'); /** * Getting a list of all services. * - * @param number $limitfrom - * @param number $limitnum + * @param int $limitfrom + * @param int $limitnum + * * @return array + * @throws \dml_exception */ function local_webhooks_get_list_records($limitfrom = 0, $limitnum = 0) { global $DB; - $listservices = $DB->get_records("local_webhooks_service", null, "id", "*", $limitfrom, $limitnum); + $listservices = $DB->get_records('local_webhooks_service', null, 'id', '*', $limitfrom, $limitnum); foreach ($listservices as $servicerecord) { if (!empty($servicerecord->events)) { @@ -50,13 +52,15 @@ function local_webhooks_get_list_records($limitfrom = 0, $limitnum = 0) { /** * Getting information about the service. * - * @param number $serviceid + * @param int $serviceid + * * @return object + * @throws \dml_exception */ function local_webhooks_get_record($serviceid = 0) { global $DB; - $servicerecord = $DB->get_record("local_webhooks_service", array("id" => $serviceid), "*", MUST_EXIST); + $servicerecord = $DB->get_record('local_webhooks_service', array('id' => $serviceid), '*', MUST_EXIST); if (!empty($servicerecord->events)) { $servicerecord->events = local_webhooks_unarchive_data($servicerecord->events); @@ -67,22 +71,27 @@ function local_webhooks_get_record($serviceid = 0) { /** * Clear the database table. + * + * @throws \dml_exception */ function local_webhooks_remove_list_records() { global $DB; - $DB->delete_records("local_webhooks_service", null); + $DB->delete_records('local_webhooks_service'); } /** * Delete the record. * - * @param number $serviceid + * @param int $serviceid + * + * @throws \dml_exception + * @throws \coding_exception */ function local_webhooks_remove_record($serviceid = 0) { global $DB; - $DB->delete_records("local_webhooks_service", array("id" => $serviceid)); + $DB->delete_records('local_webhooks_service', array('id' => $serviceid)); local_webhooks_events::service_deleted($serviceid); } @@ -91,7 +100,10 @@ function local_webhooks_remove_record($serviceid = 0) { * * @param object $data * @param boolean $insert + * * @return boolean + * @throws \dml_exception + * @throws \coding_exception */ function local_webhooks_update_record($data, $insert = true) { global $DB; @@ -102,41 +114,47 @@ function local_webhooks_update_record($data, $insert = true) { $data->events = local_webhooks_archiving_data($data->events); - if (boolval($insert)) { - $result = $DB->insert_record("local_webhooks_service", $data, true, false); + if ((bool) $insert) { + $result = $DB->insert_record('local_webhooks_service', $data); local_webhooks_events::service_added($result); } else { - $result = $DB->update_record("local_webhooks_service", $data, false); + $result = $DB->update_record('local_webhooks_service', $data); local_webhooks_events::service_updated($data->id); } - return boolval($result); + return (bool) $result; } /** * Make a backup copy of all the services. * * @return string + * @throws \dml_exception + * @throws \coding_exception */ function local_webhooks_create_backup() { $listservices = local_webhooks_get_list_records(); $listservices = local_webhooks_archiving_data($listservices); local_webhooks_events::backup_performed(); + return $listservices; } /** * Restore the data from the backup. * - * @param string $data + * @param string $listservices + * + * @throws \dml_exception + * @throws \coding_exception */ -function local_webhooks_restore_backup($listservices = "") { +function local_webhooks_restore_backup($listservices = '') { $listservices = local_webhooks_unarchive_data($listservices); local_webhooks_remove_list_records(); foreach ($listservices as $servicerecord) { - local_webhooks_update_record($servicerecord, true); + local_webhooks_update_record($servicerecord); } local_webhooks_events::backup_restored(); @@ -145,21 +163,21 @@ function local_webhooks_restore_backup($listservices = "") { /** * Compress an array into a string. * - * @param array $data + * @param array $data + * * @return string */ -function local_webhooks_archiving_data($data = array()) { - $result = base64_encode(gzcompress(serialize($data), 3)); - return $result; +function local_webhooks_archiving_data(array $data = array()) { + return base64_encode(gzcompress(serialize($data), 3)); } /** * Gets an array from a compressed string. * * @param string $data + * * @return array */ -function local_webhooks_unarchive_data($data = "") { - $result = unserialize(gzuncompress(base64_decode($data))); - return $result; +function local_webhooks_unarchive_data($data = '') { + return unserialize(gzuncompress(base64_decode($data))); } \ No newline at end of file diff --git a/locallib.php b/locallib.php index ede8e9a..39fb00d 100644 --- a/locallib.php +++ b/locallib.php @@ -33,14 +33,17 @@ defined('MOODLE_INTERNAL') || die(); class local_webhooks_events { /** * Call the event when creating a backup. + * + * @throws \coding_exception + * @throws \dml_exception */ public static function backup_performed() { $context = context_system::instance(); $event = local_webhooks\event\backup_performed::create( array( - "context" => $context, - "objectid" => 0 + 'context' => $context, + 'objectid' => 0, ) ); @@ -49,14 +52,17 @@ class local_webhooks_events { /** * Call the event when restoring from a backup. + * + * @throws \coding_exception + * @throws \dml_exception */ public static function backup_restored() { $context = context_system::instance(); $event = local_webhooks\event\backup_restored::create( array( - "context" => $context, - "objectid" => 0 + 'context' => $context, + 'objectid' => 0, ) ); @@ -66,22 +72,25 @@ class local_webhooks_events { /** * Call event when the response is received from the service * - * @param number $objectid Service ID - * @param array $response Server response + * @param int $objectid Service ID + * @param array $response Server response + * + * @throws \coding_exception + * @throws \dml_exception */ - public static function response_answer($objectid = 0, $response = array()) { + public static function response_answer($objectid = 0, array $response = array()) { $context = context_system::instance(); - $status = "Error sending request"; - if (!empty($response["HTTP/1.1"])) { - $status = $response["HTTP/1.1"]; + $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) + 'context' => $context, + 'objectid' => $objectid, + 'other' => array('status' => $status), ) ); @@ -91,16 +100,16 @@ class local_webhooks_events { /** * Call the event when the service is added. * - * @param number $objectid Service ID + * @param int $objectid Service ID + * + * @throws \coding_exception + * @throws \dml_exception */ public static function service_added($objectid = 0) { $context = context_system::instance(); $event = local_webhooks\event\service_added::create( - array( - "context" => $context, - "objectid" => $objectid - ) + compact('context', 'objectid') ); $event->trigger(); @@ -109,16 +118,16 @@ class local_webhooks_events { /** * Call the event when the service is deleted. * - * @param number $objectid Service ID + * @param int $objectid Service ID + * + * @throws \coding_exception + * @throws \dml_exception */ public static function service_deleted($objectid = 0) { $context = context_system::instance(); $event = local_webhooks\event\service_deleted::create( - array( - "context" => $context, - "objectid" => $objectid - ) + compact('context', 'objectid') ); $event->trigger(); @@ -127,16 +136,16 @@ class local_webhooks_events { /** * Call event when the service is updated. * - * @param number $objectid Service ID + * @param int $objectid Service ID + * + * @throws \coding_exception + * @throws \dml_exception */ public static function service_updated($objectid = 0) { $context = context_system::instance(); $event = local_webhooks\event\service_updated::create( - array( - "context" => $context, - "objectid" => $objectid - ) + compact('context', 'objectid') ); $event->trigger(); diff --git a/restorebackup.php b/restorebackup.php index ab35b95..2c0cb39 100644 --- a/restorebackup.php +++ b/restorebackup.php @@ -22,18 +22,18 @@ * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ -require_once(__DIR__ . "/../../config.php"); -require_once(__DIR__ . "/classes/service_form.php"); -require_once(__DIR__ . "/lib.php"); +require_once(__DIR__ . '/../../config.php'); +require_once(__DIR__ . '/classes/service_form.php'); +require_once(__DIR__ . '/lib.php'); -require_once($CFG->libdir . "/adminlib.php"); +require_once($CFG->libdir . '/adminlib.php'); /* Link generation */ -$baseurl = new moodle_url("/local/webhooks/restorebackup.php"); -$managerservice = new moodle_url("/local/webhooks/index.php"); +$baseurl = new moodle_url('/local/webhooks/restorebackup.php'); +$managerservice = new moodle_url('/local/webhooks/index.php'); /* Configure the context of the page */ -admin_externalpage_setup("local_webhooks", "", null, $baseurl, array()); +admin_externalpage_setup('local_webhooks', '', null, $baseurl); $context = context_system::instance(); /* Create an editing form */ @@ -46,13 +46,13 @@ if ($mform->is_cancelled()) { /* Processing the received file */ if ($data = $mform->get_data()) { - $content = $mform->get_file_content("backupfile"); + $content = $mform->get_file_content('backupfile'); local_webhooks_restore_backup($content); - redirect($managerservice, new lang_string("restorefinished", "moodle")); + redirect($managerservice, new lang_string('restorefinished', 'moodle')); } /* The page title */ -$titlepage = new lang_string("backup", "moodle"); +$titlepage = new lang_string('backup', 'moodle'); $PAGE->navbar->add($titlepage); $PAGE->set_heading($titlepage); $PAGE->set_title($titlepage); diff --git a/settings.php b/settings.php index 9a79c13..4da9dba 100644 --- a/settings.php +++ b/settings.php @@ -24,9 +24,14 @@ defined('MOODLE_INTERNAL') || die(); +/** @var \admin_root $ADMIN */ + if ($hassiteconfig) { - $ADMIN->add("server", new admin_externalpage("local_webhooks", - new lang_string("pluginname", "local_webhooks"), - new moodle_url("/local/webhooks/index.php") - )); + $ADMIN->add( + 'server', new admin_externalpage( + 'local_webhooks', + new lang_string('pluginname', 'local_webhooks'), + new moodle_url('/local/webhooks/index.php') + ) + ); } \ No newline at end of file diff --git a/version.php b/version.php index 4e95118..7b5dfda 100644 --- a/version.php +++ b/version.php @@ -24,8 +24,8 @@ defined('MOODLE_INTERNAL') || die(); -$plugin->release = "3.0.1 (Build: 2018061900)"; -$plugin->version = 2018061900; -$plugin->requires = 2016112900; -$plugin->component = "local_webhooks"; -$plugin->maturity = MATURITY_STABLE; \ No newline at end of file +$plugin->release = '3.0.1 (Build: 2018061900)'; +$plugin->version = 2018061900; +$plugin->requires = 2016112900; +$plugin->component = 'local_webhooks'; +$plugin->maturity = MATURITY_STABLE; \ No newline at end of file -- cgit v1.2.3