HTML_QuickForm
[ class tree: HTML_QuickForm ] [ index: HTML_QuickForm ] [ all elements ]

Source for file xbutton.php

Documentation is available at xbutton.php

  1. <?php
  2. /* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */
  3.  
  4. /**
  5.  * Class for HTML 4.0 <button> element
  6.  * 
  7.  * PHP versions 4 and 5
  8.  *
  9.  * LICENSE: This source file is subject to version 3.01 of the PHP license
  10.  * that is available through the world-wide-web at the following URI:
  11.  * http://www.php.net/license/3_01.txt If you did not receive a copy of
  12.  * the PHP License and are unable to obtain it through the web, please
  13.  * send a note to license@php.net so we can mail you a copy immediately.
  14.  *
  15.  * @category    HTML
  16.  * @package     HTML_QuickForm
  17.  * @author      Alexey Borzov <avb@php.net>
  18.  * @copyright   2001-2011 The PHP Group
  19.  * @license     http://www.php.net/license/3_01.txt PHP License 3.01
  20.  * @version     CVS: $Id: xbutton.php 317587 2011-10-01 07:55:53Z avb $
  21.  * @link        http://pear.php.net/package/HTML_QuickForm
  22.  */
  23.  
  24. /**
  25.  * Base class for form elements
  26.  */ 
  27. require_once 'HTML/QuickForm/element.php';
  28.  
  29. /**
  30.  * Class for HTML 4.0 <button> element
  31.  * 
  32.  * @category    HTML
  33.  * @package     HTML_QuickForm
  34.  * @author      Alexey Borzov <avb@php.net>
  35.  * @version     Release: 3.2.13
  36.  * @since       3.2.3
  37.  */
  38. {
  39.    /**
  40.     * Contents of the <button> tag
  41.     * @var      string 
  42.     * @access   private
  43.     */
  44.     var $_content
  45.  
  46.    /**
  47.     * Class constructor
  48.     * 
  49.     * @param    string  Button name
  50.     * @param    string  Button content (HTML to add between <button></button> tags)
  51.     * @param    mixed   Either a typical HTML attribute string or an associative array
  52.     * @access   public
  53.     */
  54.     function HTML_QuickForm_xbutton($elementName = null$elementContent = null$attributes = null)
  55.     {
  56.         $this->HTML_QuickForm_element($elementNamenull$attributes);
  57.         $this->setContent($elementContent);
  58.         $this->setPersistantFreeze(false);
  59.         $this->_type 'xbutton';
  60.     }
  61.  
  62.  
  63.     function toHtml()
  64.     {
  65.         return '<button' $this->getAttributes(true'>' $this->_content '</button>';
  66.     }
  67.  
  68.  
  69.     function getFrozenHtml()
  70.     {
  71.         return $this->toHtml();
  72.     }
  73.  
  74.  
  75.     function freeze()
  76.     {
  77.         return false;
  78.     }
  79.  
  80.  
  81.     function setName($name)
  82.     {
  83.         $this->updateAttributes(array(
  84.             'name' => $name 
  85.         ));
  86.     }
  87.  
  88.  
  89.     function getName()
  90.     {
  91.         return $this->getAttribute('name');
  92.     }
  93.  
  94.  
  95.     function setValue($value)
  96.     {
  97.         $this->updateAttributes(array(
  98.             'value' => $value
  99.         ));
  100.     }
  101.  
  102.  
  103.     function getValue()
  104.     {
  105.         return $this->getAttribute('value');
  106.     }
  107.  
  108.  
  109.    /**
  110.     * Sets the contents of the button element
  111.     *
  112.     * @param    string  Button content (HTML to add between <button></button> tags)
  113.     */
  114.     function setContent($content)
  115.     {
  116.         $this->_content $content;
  117.     }
  118.  
  119.  
  120.     function onQuickFormEvent($event$arg&$caller)
  121.     {
  122.         if ('updateValue' != $event{
  123.             return parent::onQuickFormEvent($event$arg$caller);
  124.         else {
  125.             $value $this->_findValue($caller->_constantValues);
  126.             if (null === $value{
  127.                 $value $this->_findValue($caller->_defaultValues);
  128.             }
  129.             if (null !== $value{
  130.                 $this->setValue($value);
  131.             }
  132.         }
  133.         return true;
  134.     }
  135.  
  136.  
  137.    /**
  138.     * Returns a 'safe' element's value
  139.     * 
  140.     * The value is only returned if the button's type is "submit" and if this
  141.     * particlular button was clicked
  142.     */
  143.     function exportValue(&$submitValues$assoc = false)
  144.     {
  145.         if ('submit' == $this->getAttribute('type')) {
  146.             return $this->_prepareValue($this->_findValue($submitValues)$assoc);
  147.         else {
  148.             return null;
  149.         }
  150.     }
  151. }
  152. ?>

Documentation generated on Sat, 01 Oct 2011 09:00:21 +0000 by phpDocumentor 1.4.3. PEAR Logo Copyright © PHP Group 2004.