aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorValentin Popov <info@valentineus.link>2019-05-12 03:58:59 +0300
committerValentin Popov <info@valentineus.link>2019-05-12 03:58:59 +0300
commit040d7540d7513ac13334d22d221e373c873c8fe0 (patch)
tree84028ebf82f9ac0567a5923feb03dab8ab635a7c
parent9c2eefcaa5cb1c73ded6bdd72ceb4704805ec322 (diff)
downloadlocal_webhooks-develop.tar.xz
local_webhooks-develop.zip
Reworked the main pagedevelop
Signed-off-by: Valentin Popov <info@valentineus.link>
-rw-r--r--index.php66
1 files changed, 34 insertions, 32 deletions
diff --git a/index.php b/index.php
index 136db73..cd00763 100644
--- a/index.php
+++ b/index.php
@@ -14,61 +14,63 @@
// You should have received a copy of the GNU General Public License
// along with Moodle. If not, see <http://www.gnu.org/licenses/>.
-/**
- * Service list manager.
- *
- * @copyright 2018 'Valentin Popov' <info@valentineus.link>
- * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
- * @package local_webhooks
- */
-
-require_once(__DIR__ . '/../../config.php');
-
-require_once($CFG->dirroot . '/local/webhooks/classes/ui_tables_plugin.php');
-require_once($CFG->dirroot . '/local/webhooks/lib.php');
+require_once(dirname(__DIR__, 2) . '/config.php');
+
+global $CFG;
+
+defined('MOODLE_INTERNAL') || die();
+
+require_once($CFG->dirroot . '/local/webhooks/classes/local/api.php');
+require_once($CFG->dirroot . '/local/webhooks/classes/output/services_table.php');
require_once($CFG->libdir . '/adminlib.php');
+use local_webhooks\local\api;
+use local_webhooks\output\services_table;
+
$deleteid = optional_param('deleteid', 0, PARAM_INT);
$hideshowid = optional_param('hideshowid', 0, PARAM_INT);
$editpage = '/local/webhooks/service.php';
$mainpage = '/local/webhooks/index.php';
-$baseurl = new moodle_url($mainpage);
-admin_externalpage_setup('local_webhooks', '', null, $baseurl, array());
+$baseurl = new moodle_url($mainpage);
$context = context_system::instance();
-/* Remove the service */
-if (!empty($deleteid) && confirm_sesskey()) {
- local_webhooks_api::delete_service($deleteid);
+admin_externalpage_setup('local_webhooks', '', ['contextid' => $context->contextlevel], $baseurl, []);
+
+// Deleting the existing service.
+if ($deleteid !== 0 && confirm_sesskey()) {
+ api::del_service($deleteid);
+
redirect($PAGE->url, new lang_string('deleted', 'moodle'));
}
-/* Disable / Enable the service */
-if (!empty($hideshowid) && confirm_sesskey()) {
- $service = local_webhooks_api::get_service($hideshowid);
- $service->status = !(bool) $service->status;
- local_webhooks_api::update_service((array) $service);
+// Setting status to existing service.
+if ($hideshowid !== 0 && confirm_sesskey()) {
+ $service = api::get_service($hideshowid);
+ $service->status = !filter_var($service->status, FILTER_VALIDATE_BOOLEAN);
+ api::set_service($service);
+
redirect($PAGE->url, new lang_string('changessaved', 'moodle'));
}
-/* The page title */
+// Page header.
$titlepage = new lang_string('pluginname', 'local_webhooks');
$PAGE->set_heading($titlepage);
$PAGE->set_title($titlepage);
echo $OUTPUT->header();
-/* Displays the table */
-$table = new local_webhooks_services_table('local-webhooks-table');
-$table->define_baseurl($baseurl);
-$table->out(25, true);
+// Adds the add button.
+$addserviceurl = new moodle_url($editpage, ['sesskey' => sesskey()]);
+echo $OUTPUT->single_button($addserviceurl, new lang_string('add', 'moodle'));
-/* Separation */
+// Separation.
echo html_writer::empty_tag('br');
-/* Adds the add button */
-$addserviceurl = new moodle_url($editpage, array('sesskey' => sesskey()));
-echo $OUTPUT->single_button($addserviceurl, new lang_string('add', 'moodle'));
+// Displays the table.
+$table = new services_table('local-webhooks-services');
+$table->define_baseurl($baseurl);
+$table->out(25, true);
-/* Footer */
+// Footer.
echo $OUTPUT->footer(); \ No newline at end of file