This commit is contained in:
Sara Arjona 2019-01-30 10:25:33 +01:00
commit 9396da6964
3 changed files with 25 additions and 4 deletions

View File

@ -2489,7 +2489,28 @@ class admin_setting_configpasswordunmask extends admin_setting_configtext {
$element = $OUTPUT->render_from_template('core_admin/setting_configpasswordunmask', $context);
return format_admin_setting($this, $this->visiblename, $element, $this->description, true, '', null, $query);
}
}
/**
* Password field, allows unmasking of password, with an advanced checkbox that controls an additional $name.'_adv' setting.
*
* @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later
* @copyright 2018 Paul Holden (pholden@greenhead.ac.uk)
*/
class admin_setting_configpasswordunmask_with_advanced extends admin_setting_configpasswordunmask {
/**
* Constructor
*
* @param string $name unique ascii name, either 'mysetting' for settings that in config, or 'myplugin/mysetting' for ones in config_plugins.
* @param string $visiblename localised
* @param string $description long localised info
* @param array $defaultsetting ('value'=>string, 'adv'=>bool)
*/
public function __construct($name, $visiblename, $description, $defaultsetting) {
parent::__construct($name, $visiblename, $description, $defaultsetting['value']);
$this->set_advanced_flag_options(admin_setting_flag::ENABLED, !empty($defaultsetting['adv']));
}
}
/**

View File

@ -181,9 +181,9 @@ if ($ADMIN->fulltree) {
array('value' => 0, 'adv' => true)));
// Password.
$quizsettings->add(new admin_setting_configtext_with_advanced('quiz/password',
$quizsettings->add(new admin_setting_configpasswordunmask_with_advanced('quiz/password',
get_string('requirepassword', 'quiz'), get_string('configrequirepassword', 'quiz'),
array('value' => '', 'adv' => false), PARAM_TEXT));
array('value' => '', 'adv' => false)));
// IP restrictions.
$quizsettings->add(new admin_setting_configtext_with_advanced('quiz/subnet',

View File

@ -41,11 +41,11 @@ if ($ADMIN->fulltree) {
$defaultport = !empty($secure) ? 8443 : 8983;
$settings->add(new admin_setting_configtext('search_solr/server_port', new lang_string('solrhttpconnectionport', 'search_solr'), '', $defaultport, PARAM_INT));
$settings->add(new admin_setting_configtext('search_solr/server_username', new lang_string('solrauthuser', 'search_solr'), '', '', PARAM_RAW));
$settings->add(new admin_setting_configtext('search_solr/server_password', new lang_string('solrauthpassword', 'search_solr'), '', '', PARAM_RAW));
$settings->add(new admin_setting_configpasswordunmask('search_solr/server_password', new lang_string('solrauthpassword', 'search_solr'), '', ''));
$settings->add(new admin_setting_configtext('search_solr/server_timeout', new lang_string('solrhttpconnectiontimeout', 'search_solr'), new lang_string('solrhttpconnectiontimeout_desc', 'search_solr'), 30, PARAM_INT));
$settings->add(new admin_setting_configtext('search_solr/ssl_cert', new lang_string('solrsslcert', 'search_solr'), new lang_string('solrsslcert_desc', 'search_solr'), '', PARAM_RAW));
$settings->add(new admin_setting_configtext('search_solr/ssl_key', new lang_string('solrsslkey', 'search_solr'), new lang_string('solrsslkey_desc', 'search_solr'), '', PARAM_RAW));
$settings->add(new admin_setting_configtext('search_solr/ssl_keypassword', new lang_string('solrsslkeypassword', 'search_solr'), new lang_string('solrsslkeypassword_desc', 'search_solr'), '', PARAM_RAW));
$settings->add(new admin_setting_configpasswordunmask('search_solr/ssl_keypassword', new lang_string('solrsslkeypassword', 'search_solr'), new lang_string('solrsslkeypassword_desc', 'search_solr'), ''));
$settings->add(new admin_setting_configtext('search_solr/ssl_cainfo', new lang_string('solrsslcainfo', 'search_solr'), new lang_string('solrsslcainfo_desc', 'search_solr'), '', PARAM_RAW));
$settings->add(new admin_setting_configtext('search_solr/ssl_capath', new lang_string('solrsslcapath', 'search_solr'), new lang_string('solrsslcapath_desc', 'search_solr'), '', PARAM_RAW));