From f5329f5e3cf9ab7777ab0a0a2ecd93f09b59002d Mon Sep 17 00:00:00 2001 From: Valentin Popov Date: Thu, 30 Nov 2017 22:47:17 +0400 Subject: The finished version of the main page --- index.php | 103 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ managertokens.php | 43 ----------------------- 2 files changed, 103 insertions(+), 43 deletions(-) create mode 100644 index.php delete mode 100644 managertokens.php diff --git a/index.php b/index.php new file mode 100644 index 0000000..031cbf6 --- /dev/null +++ b/index.php @@ -0,0 +1,103 @@ +. + +/** + * The home page of the token manager. + * + * @package tool_managertokens + * @copyright 2017 "Valentin Popov" + * @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 @@ -. - -/** - * Manager tokens. - * - * @package tool_managertokens - * @copyright 2017 "Valentin Popov" - * @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 -- cgit v1.2.3