See Release Notes
Long Term Support Release
<?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/>. /** * Password type form element * * Contains HTML class for a password type element * * @package core_form * @copyright 2006 Jamie Pratt <me@jamiep.org> * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ require_once('HTML/QuickForm/password.php'); require_once('templatable_form_element.php'); /** * Password type form element * * HTML class for a password type element * * @package core_form * @category form * @copyright 2006 Jamie Pratt <me@jamiep.org> * @license http://www.gnu.org/copyleft/gpl.html GNU GPL v3 or later */ class MoodleQuickForm_password extends HTML_QuickForm_password implements templatable { use templatable_form_element; /** @var string, html for help button, if empty then no help */ var $_helpbutton=''; /** * constructor * * @param string $elementName (optional) name of the password element * @param string $elementLabel (optional) label for password element * @param mixed $attributes (optional) Either a typical HTML attribute string * or an associative array */ public function __construct($elementName=null, $elementLabel=null, $attributes=null) { global $CFG;< // no standard mform in moodle should allow autocomplete of passwords> > // No standard mform in moodle should allow autocomplete of passwords.if (empty($attributes)) {< $attributes = array('autocomplete'=>'off'); < } else if (is_array($attributes)) { < $attributes['autocomplete'] = 'off'; < } else {> $attributes = ['autocomplete' => 'new-password']; > } else if (is_array($attributes) && empty($attributes['autocomplete'])) { > $attributes['autocomplete'] = 'new-password'; > } else if (is_array($attributes) && $attributes['autocomplete'] === 'off') { > // A value of 'off' is ignored in all modern browsers and password > // managers and should be new-password instead. > $attributes['autocomplete'] = 'new-password'; > } else if (is_string($attributes)) {if (strpos($attributes, 'autocomplete') === false) {< $attributes .= ' autocomplete="off" ';> $attributes .= ' autocomplete="new-password" ';} } parent::__construct($elementName, $elementLabel, $attributes); } /** * Old syntax of class constructor. Deprecated in PHP7. * * @deprecated since Moodle 3.1 */ public function MoodleQuickForm_password($elementName=null, $elementLabel=null, $attributes=null) { debugging('Use of class name as constructor is deprecated', DEBUG_DEVELOPER); self::__construct($elementName, $elementLabel, $attributes); } /** * get html for help button * * @return string html for help button */ function getHelpButton(){ return $this->_helpbutton; } }