%PDF- %PDF-
Direktori : /home/vacivi36/ava/lib/pear/HTML/QuickForm/ |
Current File : /home/vacivi36/ava/lib/pear/HTML/QuickForm/input.php |
<?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/element.php"); /** * Base class for input form elements * * @author Adam Daniel <adaniel1@eesus.jnj.com> * @author Bertrand Mansion <bmansion@mamasam.com> * @version 1.0 * @since PHP4.04pl1 * @access public * @abstract */ class HTML_QuickForm_input extends HTML_QuickForm_element { // {{{ constructor /** * Class constructor * * @param string Input field name attribute * @param mixed Label(s) for the input field * @param mixed Either a typical HTML attribute string or an associative array * @since 1.0 * @access public * @return void */ public function __construct($elementName=null, $elementLabel=null, $attributes=null) { parent::__construct($elementName, $elementLabel, $attributes); } //end constructor /** * Old syntax of class constructor. Deprecated in PHP7. * * @deprecated since Moodle 3.1 */ public function HTML_QuickForm_input($elementName=null, $elementLabel=null, $attributes=null) { debugging('Use of class name as constructor is deprecated', DEBUG_DEVELOPER); self::__construct($elementName, $elementLabel, $attributes); } // }}} // {{{ setType() /** * Sets the element type * * @param string $type Element type * @since 1.0 * @access public * @return void */ function setType($type) { $this->_type = $type; $this->updateAttributes(array('type'=>$type)); } // end func setType // }}} // {{{ setName() /** * Sets the input field name * * @param string $name Input field name attribute * @since 1.0 * @access public * @return void */ function setName($name) { $this->updateAttributes(array('name'=>$name)); } //end func setName // }}} // {{{ getName() /** * Returns the element name * * @since 1.0 * @access public * @return string */ function getName() { return $this->getAttribute('name'); } //end func getName // }}} // {{{ setValue() /** * Sets the value of the form element * * @param string $value Default value of the form element * @since 1.0 * @access public * @return void */ function setValue($value) { $this->updateAttributes(array('value'=>$value)); } // end func setValue // }}} // {{{ getValue() /** * Returns the value of the form element * * @since 1.0 * @access public * @return string */ function getValue() { return $this->getAttribute('value'); } // end func getValue // }}} // {{{ toHtml() /** * Returns the input field in HTML * * @since 1.0 * @access public * @return string */ function toHtml() { if ($this->_flagFrozen) { return $this->getFrozenHtml(); } else { return $this->_getTabs() . '<input' . $this->_getAttrString($this->_attributes) . ' />'; } } //end func toHtml // }}} // {{{ onQuickFormEvent() /** * Called by HTML_QuickForm whenever form event is made on this element * * @param string $event Name of event * @param mixed $arg event arguments * @param object $caller calling object * @since 1.0 * @access public * @return void * @throws */ function onQuickFormEvent($event, $arg, &$caller) { // do not use submit values for button-type elements $type = $this->getType(); if (('updateValue' != $event) || ('submit' != $type && 'reset' != $type && 'image' != $type && 'button' != $type)) { parent::onQuickFormEvent($event, $arg, $caller); } else { $value = $this->_findValue($caller->_constantValues); if (null === $value) { $value = $this->_findValue($caller->_defaultValues); } if (null !== $value) { $this->setValue($value); } } return true; } // end func onQuickFormEvent // }}} // {{{ exportValue() /** * We don't need values from button-type elements (except submit) and files */ function exportValue(&$submitValues, $assoc = false) { $type = $this->getType(); if ('reset' == $type || 'image' == $type || 'button' == $type || 'file' == $type) { return null; } else { return parent::exportValue($submitValues, $assoc); } } // }}} } // end class HTML_QuickForm_element ?>