AutorÃa | Ultima modificación | Ver Log |
<?php/* vim: set expandtab tabstop=4 shiftwidth=4: */// +----------------------------------------------------------------------+// | PHP version 4.0 |// +----------------------------------------------------------------------+// | Copyright (c) 1997, 1998, 1999, 2000, 2001 The PHP Group |// +----------------------------------------------------------------------+// | This source file is subject to version 2.0 of the PHP license, |// | that is bundled with this package in the file LICENSE, and is |// | available at through the world-wide-web at |// | http://www.php.net/license/2_02.txt. |// | If you did not receive a copy of the PHP license and are unable to |// | obtain it through the world-wide-web, please send a note to |// | license@php.net so we can mail you a copy immediately. |// +----------------------------------------------------------------------+// | Authors: Adam Daniel <adaniel1@eesus.jnj.com> |// | Bertrand Mansion <bmansion@mamasam.com> |// +----------------------------------------------------------------------+//// $Id$require_once('HTML/QuickForm/select.php');/*** This class takes the same arguments as a select element, but instead* of creating a select ring it creates hidden elements for all values* already selected with setDefault or setConstant. This is useful if* you have a select ring that you don't want visible, but you need all* selected values to be passed.** @author Isaac Shepard <ishepard@bsiweb.com>** @version 1.0* @since 2.1* @access public*/class HTML_QuickForm_hiddenselect extends HTML_QuickForm_select{// {{{ constructor/*** Class constructor** @param string Select name attribute* @param mixed Label(s) for the select (not used)* @param mixed Data to be used to populate options* @param mixed Either a typical HTML attribute string or an associative array (not used)* @since 1.0* @access public* @return void*/public function __construct($elementName=null, $elementLabel=null, $options=null, $attributes=null) {// TODO MDL-52313 Replace with the call to parent::__construct().HTML_QuickForm_element::__construct($elementName, $elementLabel, $attributes);$this->_persistantFreeze = true;$this->_type = 'hiddenselect';if (isset($options)) {$this->load($options);}} //end constructor/*** Old syntax of class constructor. Deprecated in PHP7.** @deprecated since Moodle 3.1*/public function HTML_QuickForm_hiddenselect($elementName=null, $elementLabel=null, $options=null, $attributes=null) {debugging('Use of class name as constructor is deprecated', DEBUG_DEVELOPER);self::__construct($elementName, $elementLabel, $options, $attributes);}// }}}// {{{ toHtml()/*** Returns the SELECT in HTML** @since 1.0* @access public* @return string* @throws*/function toHtml(){$tabs = $this->_getTabs();$name = $this->getPrivateName();$strHtml = '';foreach ($this->_values as $key => $val) {for ($i = 0, $optCount = count($this->_options); $i < $optCount; $i++) {if ($val == $this->_options[$i]['attr']['value']) {$strHtml .= $tabs . '<input' . $this->_getAttrString(array('type' => 'hidden','name' => $name,'value' => $val)) . " />\n" ;}}}return $strHtml;} //end func toHtml// }}}// {{{ accept()/*** This is essentially a hidden element and should be rendered as one*/function accept(&$renderer, $required=false, $error=null){$renderer->renderHidden($this);}// }}}} //end class HTML_QuickForm_hiddenselect?>