Differences Between: [Versions 310 and 401] [Versions 310 and 402] [Versions 310 and 403]
1 <?php 2 // This file is part of Moodle - http://moodle.org/ 3 // 4 // Moodle is free software: you can redistribute it and/or modify 5 // it under the terms of the GNU General Public License as published by 6 // the Free Software Foundation, either version 3 of the License, or 7 // (at your option) any later version. 8 // 9 // Moodle is distributed in the hope that it will be useful, 10 // but WITHOUT ANY WARRANTY; without even the implied warranty of 11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 12 // GNU General Public License for more details. 13 // 14 // You should have received a copy of the GNU General Public License 15 // along with Moodle. If not, see <http://www.gnu.org/licenses/>. 16 17 /** 18 * Log out a user from his external mobile devices (phones, tables, Moodle Desktop app, etc..) 19 * 20 * @package tool_mobile 21 * @copyright 2020 Juan Leyva <juan@moodle.com> 22 * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later 23 */ 24 25 require(__DIR__ . '/../../../config.php'); 26 require_once($CFG->dirroot . '/admin/tool/mobile/lib.php'); 27 require_once($CFG->dirroot . '/webservice/lib.php'); 28 29 if (!$CFG->enablemobilewebservice) { 30 print_error('enablewsdescription', 'webservice'); 31 } 32 33 require_login(null, false); 34 35 // Require an active user: not guest, not suspended. 36 core_user::require_active_user($USER); 37 38 $redirecturl = new \moodle_url('/user/profile.php'); 39 40 if (optional_param('confirm', 0, PARAM_INT) && data_submitted()) { 41 require_sesskey(); 42 43 // Get the mobile service token to be deleted. 44 $token = tool_mobile_get_token($USER->id); 45 46 if ($token) { 47 $webservicemanager = new webservice(); 48 $webservicemanager->delete_user_ws_token($token->id); 49 } 50 redirect($redirecturl); 51 } 52 53 // Page settings. 54 $title = get_string('logout'); 55 $context = context_system::instance(); 56 $PAGE->set_url(new \moodle_url('/'.$CFG->admin.'/tool/mobile/logout.php')); 57 $PAGE->navbar->add($title); 58 $PAGE->set_context($context); 59 $PAGE->set_title($SITE->fullname. ': ' . $title); 60 61 // Display the page. 62 echo $OUTPUT->header(); 63 64 $message = get_string('logoutconfirmation', 'tool_mobile'); 65 $confirmurl = new \moodle_url('logout.php', ['confirm' => 1]); 66 $yesbutton = new single_button($confirmurl, get_string('yes'), 'post'); 67 $nobutton = new single_button($redirecturl, get_string('no')); 68 echo $OUTPUT->confirm($message, $yesbutton, $nobutton); 69 70 echo $OUTPUT->footer();
title
Description
Body
title
Description
Body
title
Description
Body
title
Body