diff options
-rw-r--r-- | index.php | 103 | ||||
-rw-r--r-- | managertokens.php | 43 |
2 files changed, 103 insertions, 43 deletions
diff --git a/index.php b/index.php new file mode 100644 index 0000000..031cbf6 --- /dev/null +++ b/index.php @@ -0,0 +1,103 @@ +<?php +// This file is part of Moodle - http://moodle.org/ +// +// Moodle is free software: you can redistribute it and/or modify +// it under the terms of the GNU General Public License as published by +// the Free Software Foundation, either version 3 of the License, or +// (at your option) any later version. +// +// Moodle is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License +// along with Moodle. If not, see <http://www.gnu.org/licenses/>. + +/** + * The home page of the token manager. + * + * @package tool_managertokens + * @copyright 2017 "Valentin Popov" <info@valentineus.link> + * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later + */ + +require_once(__DIR__ . "/../../../config.php"); +require_once(__DIR__ . "/classes/managertokens_table.php"); +require_once(__DIR__ . "/lib.php"); + +require_once($CFG->libdir . "/adminlib.php"); + +/* Defines the basic parameters */ +$backupservices = optional_param("getbackup", 0, PARAM_BOOL); +$deleteall = optional_param("deleteall", 0, PARAM_BOOL); +$deleteid = optional_param("deleteid", 0, PARAM_INT); +$hideshowid = optional_param("hideshowid", 0, PARAM_INT); + +/* Defines the main links */ +$editor = "/admin/tool/managertokens/editor.php"; +$managertokens = "/admin/tool/managertokens/index.php"; +$restorebackup = "/admin/tool/managertokens/restorebackup.php"; +$baseurl = new moodle_url($managertokens); + +/* Configure the context of the page */ +admin_externalpage_setup("tool_managertokens", "", null, $baseurl, array()); +$context = context_system::instance(); + +/* Creates a backup */ +if (boolval($backupservices)) { + $filecontent = tool_managertokens_create_backup(); + $filename = "managertokens_" . date("U") . ".backup"; + send_file($filecontent, $filename, 0, 0, true, true); +} + +/* Deletes all data */ +if (boolval($deleteall) && confirm_sesskey()) { + tool_managertokens_delete_all_records(); + redirect($baseurl, new lang_string("deleted", "moodle")); +} + +/* Removes an existing token */ +if (!empty($deleteid) && confirm_sesskey()) { + tool_managertokens_delete_record($deleteid); + redirect($baseurl, new lang_string("deleted", "moodle")); +} + +/* Updates an existing token */ +if (!empty($hideshowid) && confirm_sesskey()) { + if ($record = tool_managertokens_find_record($hideshowid)) { + $record->enabled = !boolval($record->enabled); + tool_managertokens_update_record($record); + redirect($baseurl, new lang_string("changessaved", "moodle")); + } +} + +/* Specifies the title of the page */ +$titlepage = new lang_string("pluginname", "tool_managertokens"); +$PAGE->set_heading($titlepage); +$PAGE->set_title($titlepage); +echo $OUTPUT->header(); + +/* Adds the add button */ +$addtokenurl = new moodle_url($editor); +echo $OUTPUT->single_button($addtokenurl, new lang_string("add", "moodle"), "get"); + +/* Adds a delete button */ +$deleteallurl = new moodle_url($managertokens, array("deleteall" => true, "sesskey" => sesskey())); +echo $OUTPUT->single_button($deleteallurl, new lang_string("deleteall", "moodle"), "get"); + +/* Adds a backup button */ +$backupurl = new moodle_url($managertokens, array("getbackup" => true)); +echo $OUTPUT->single_button($backupurl, new lang_string("backup", "moodle"), "get"); + +/* Adds a restore button */ +$restorebackupurl = new moodle_url($restorebackup); +echo $OUTPUT->single_button($restorebackupurl, new lang_string("restore", "moodle"), "get"); + +/* Displays the table */ +$table = new tool_managertokens_table("tool-managertokens-table"); +$table->define_baseurl($baseurl); +$table->out(25, true); + +/* Footer */ +echo $OUTPUT->footer();
\ No newline at end of file diff --git a/managertokens.php b/managertokens.php deleted file mode 100644 index 6240fa1..0000000 --- a/managertokens.php +++ /dev/null @@ -1,43 +0,0 @@ -<?php -// This file is part of Moodle - http://moodle.org/ -// -// Moodle is free software: you can redistribute it and/or modify -// it under the terms of the GNU General Public License as published by -// the Free Software Foundation, either version 3 of the License, or -// (at your option) any later version. -// -// Moodle is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -// GNU General Public License for more details. -// -// You should have received a copy of the GNU General Public License -// along with Moodle. If not, see <http://www.gnu.org/licenses/>. - -/** - * Manager tokens. - * - * @package tool_managertokens - * @copyright 2017 "Valentin Popov" <info@valentineus.link> - * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later - */ - -require_once(__DIR__ . "/../../../config.php"); -require_once($CFG->libdir . "/adminlib.php"); - -/* Link generation */ -$managertokens = new moodle_url("/admin/tool/managertokens/managertokens.php"); -$baseurl = new moodle_url($managertokens); - -/* Configure the context of the page */ -admin_externalpage_setup("tool_managertokens", "", null, $baseurl, array()); -$context = context_system::instance(); - -/* The page title */ -$titlepage = new lang_string("pluginname", "tool_managertokens"); -$PAGE->set_heading($titlepage); -$PAGE->set_title($titlepage); -echo $OUTPUT->header(); - -/* Footer */ -echo $OUTPUT->footer();
\ No newline at end of file |