See Release Notes
Long Term Support Release
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 * Special settings for auth_shibboleth WAYF. 19 * 20 * @package auth_shibboleth 21 * @copyright 2017 Stephen Bourget 22 * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later 23 */ 24 25 defined('MOODLE_INTERNAL') || die(); 26 27 /** 28 * Special settings for auth_shibboleth WAYF. 29 * 30 * @package auth_shibboleth 31 * @copyright 2017 Stephen Bourget 32 * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later 33 */ 34 class auth_shibboleth_admin_setting_special_wayf_select extends admin_setting_configselect { 35 36 /** 37 * Calls parent::__construct with specific arguments. 38 */ 39 public function __construct() { 40 $yesno = array(); 41 $yesno['off'] = new lang_string('no'); 42 $yesno['on'] = new lang_string('yes'); 43 parent::__construct('auth_shibboleth/alt_login', 44 new lang_string('auth_shib_integrated_wayf', 'auth_shibboleth'), 45 new lang_string('auth_shib_integrated_wayf_description', 'auth_shibboleth'), 46 'off', 47 $yesno); 48 } 49 50 /** 51 * We need to overwrite the global "alternate login url" setting if wayf is enabled. 52 * 53 * @param string $data Form data. 54 * @return string Empty when no errors. 55 */ 56 public function write_setting($data) { 57 global $CFG; 58 59 // Overwrite alternative login URL if integrated WAYF is used. 60 if (isset($data) && $data == 'on') { 61 set_config('alt_login', $data, 'auth_shibboleth'); 62 set_config('alternateloginurl', $CFG->wwwroot.'/auth/shibboleth/login.php'); 63 } else { 64 // Check if integrated WAYF was enabled and is now turned off. 65 // If it was and only then, reset the Moodle alternate URL. 66 $oldsetting = get_config('auth_shibboleth', 'alt_login'); 67 if (isset($oldsetting) and $oldsetting == 'on') { 68 set_config('alt_login', 'off', 'auth_shibboleth'); 69 set_config('alternateloginurl', ''); 70 } 71 $data = 'off'; 72 } 73 return parent::write_setting($data); 74 } 75 }
title
Description
Body
title
Description
Body
title
Description
Body
title
Body