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

Source for file hiddenselect.php

Documentation is available at hiddenselect.php

  1. <?php
  2. /* vim: set expandtab tabstop=4 shiftwidth=4: */
  3. // +----------------------------------------------------------------------+
  4. // | PHP version 4.0                                                      |
  5. // +----------------------------------------------------------------------+
  6. // | Copyright (c) 1997, 1998, 1999, 2000, 2001 The PHP Group             |
  7. // +----------------------------------------------------------------------+
  8. // | This source file is subject to version 2.0 of the PHP license,       |
  9. // | that is bundled with this package in the file LICENSE, and is        |
  10. // | available at through the world-wide-web at                           |
  11. // | http://www.php.net/license/2_02.txt.                                 |
  12. // | If you did not receive a copy of the PHP license and are unable to   |
  13. // | obtain it through the world-wide-web, please send a note to          |
  14. // | license@php.net so we can mail you a copy immediately.               |
  15. // +----------------------------------------------------------------------+
  16. // | Authors: Adam Daniel <adaniel1@eesus.jnj.com>                        |
  17. // |          Bertrand Mansion <bmansion@mamasam.com>                     |
  18. // +----------------------------------------------------------------------+
  19. //
  20. // $Id: hiddenselect.php,v 1.4 2005/06/24 17:58:29 avb Exp $
  21.  
  22. require_once('HTML/QuickForm/select.php');
  23.  
  24. /**
  25.  * This class takes the same arguments as a select element, but instead
  26.  * of creating a select ring it creates hidden elements for all values
  27.  * already selected with setDefault or setConstant.  This is useful if
  28.  * you have a select ring that you don't want visible, but you need all
  29.  * selected values to be passed.
  30.  *
  31.  * @author       Isaac Shepard <ishepard@bsiweb.com>
  32.  * 
  33.  * @version      1.0
  34.  * @since        2.1
  35.  * @access       public
  36.  */
  37. {
  38.     // {{{ constructor
  39.         
  40.     /**
  41.      * Class constructor
  42.      * 
  43.      * @param     string    Select name attribute
  44.      * @param     mixed     Label(s) for the select (not used)
  45.      * @param     mixed     Data to be used to populate options
  46.      * @param     mixed     Either a typical HTML attribute string or an associative array (not used)
  47.      * @since     1.0
  48.      * @access    public
  49.      * @return    void 
  50.      */
  51.     function HTML_QuickForm_hiddenselect($elementName=null$elementLabel=null$options=null$attributes=null)
  52.     {
  53.         HTML_QuickForm_element::HTML_QuickForm_element($elementName$elementLabel$attributes);
  54.         $this->_persistantFreeze = true;
  55.         $this->_type 'hiddenselect';
  56.         if (isset($options)) {
  57.             $this->load($options);
  58.         }
  59.     //end constructor
  60.     
  61.     // }}}
  62.     // {{{ toHtml()
  63.  
  64.     /**
  65.      * Returns the SELECT in HTML
  66.      *
  67.      * @since     1.0
  68.      * @access    public
  69.      * @return    string 
  70.      * @throws
  71.      */
  72.     function toHtml()
  73.     {
  74.         $tabs    $this->_getTabs();
  75.         $name    $this->getPrivateName();
  76.         $strHtml '';
  77.  
  78.         foreach ($this->_values as $key => $val{
  79.             for ($i = 0$optCount count($this->_options)$i $optCount$i++{
  80.                 if ($val == $this->_options[$i]['attr']['value']{
  81.                     $strHtml .= $tabs '<input' $this->_getAttrString(array(
  82.                         'type'  => 'hidden',
  83.                         'name'  => $name,
  84.                         'value' => $val
  85.                     )) " />\n" ;
  86.                 }
  87.             }
  88.         }
  89.  
  90.         return $strHtml;
  91.     //end func toHtml
  92.     
  93.     // }}}
  94.     // {{{ accept()
  95.  
  96.    /**
  97.     * This is essentially a hidden element and should be rendered as one
  98.     */
  99.     function accept(&$renderer)
  100.     {
  101.         $renderer->renderHidden($this);
  102.     }
  103.  
  104.     // }}}
  105. //end class HTML_QuickForm_hiddenselect
  106. ?>

Documentation generated on Mon, 11 Mar 2019 14:16:32 -0400 by phpDocumentor 1.4.4. PEAR Logo Copyright © PHP Group 2004.