| [ Index ] |
|
Code source de XOOPS 2.0.17.1 |
1 <?php 2 // $Id: formradio.php 966 2007-08-10 12:27:43Z phppp $ 3 // ------------------------------------------------------------------------ // 4 // XOOPS - PHP Content Management System // 5 // Copyright (c) 2000 XOOPS.org // 6 // <http://www.xoops.org/> // 7 // ------------------------------------------------------------------------ // 8 // This program is free software; you can redistribute it and/or modify // 9 // it under the terms of the GNU General Public License as published by // 10 // the Free Software Foundation; either version 2 of the License, or // 11 // (at your option) any later version. // 12 // // 13 // You may not change or alter any portion of this comment or credits // 14 // of supporting developers from this source code or any supporting // 15 // source code which is considered copyrighted (c) material of the // 16 // original comment or credit authors. // 17 // // 18 // This program is distributed in the hope that it will be useful, // 19 // but WITHOUT ANY WARRANTY; without even the implied warranty of // 20 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // 21 // GNU General Public License for more details. // 22 // // 23 // You should have received a copy of the GNU General Public License // 24 // along with this program; if not, write to the Free Software // 25 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA // 26 // ------------------------------------------------------------------------ // 27 // Author: Kazumi Ono (AKA onokazu) // 28 // URL: http://www.myweb.ne.jp/, http://www.xoops.org/, http://jp.xoops.org/ // 29 // Project: The XOOPS Project // 30 // ------------------------------------------------------------------------- // 31 if (!defined('XOOPS_ROOT_PATH')) { 32 die("XOOPS root path not defined"); 33 } 34 /** 35 * 36 * 37 * @package kernel 38 * @subpackage form 39 * 40 * @author Kazumi Ono <onokazu@xoops.org> 41 * @copyright copyright (c) 2000-2003 XOOPS.org 42 */ 43 /** 44 * A Group of radiobuttons 45 * 46 * @author Kazumi Ono <onokazu@xoops.org> 47 * @copyright copyright (c) 2000-2003 XOOPS.org 48 * 49 * @package kernel 50 * @subpackage form 51 */ 52 class XoopsFormRadio extends XoopsFormElement { 53 54 /** 55 * Array of Options 56 * @var array 57 * @access private 58 */ 59 var $_options = array(); 60 61 /** 62 * Pre-selected value 63 * @var string 64 * @access private 65 */ 66 var $_value; 67 68 /** 69 * Constructor 70 * 71 * @param string $caption Caption 72 * @param string $name "name" attribute 73 * @param string $value Pre-selected value 74 */ 75 function XoopsFormRadio($caption, $name, $value = null, $delimeter = ""){ 76 $this->setCaption($caption); 77 $this->setName($name); 78 if (isset($value)) { 79 $this->setValue($value); 80 } 81 $this->delimeter = $delimeter; 82 } 83 84 /** 85 * Get the pre-selected value 86 * 87 * @return string 88 */ 89 function getValue(){ 90 return $this->_value; 91 } 92 93 /** 94 * Set the pre-selected value 95 * 96 * @param $value string 97 */ 98 function setValue($value){ 99 $this->_value = $value; 100 } 101 102 /** 103 * Add an option 104 * 105 * @param string $value "value" attribute - This gets submitted as form-data. 106 * @param string $name "name" attribute - This is displayed. If empty, we use the "value" instead. 107 */ 108 function addOption($value, $name=""){ 109 if ( $name != "" ) { 110 $this->_options[$value] = $name; 111 } else { 112 $this->_options[$value] = $value; 113 } 114 } 115 116 /** 117 * Adds multiple options 118 * 119 * @param array $options Associative array of value->name pairs. 120 */ 121 function addOptionArray($options){ 122 if ( is_array($options) ) { 123 foreach ( $options as $k=>$v ) { 124 $this->addOption($k, $v); 125 } 126 } 127 } 128 129 /** 130 * Gets the options 131 * 132 * @return array Associative array of value->name pairs. 133 */ 134 function getOptions(){ 135 return $this->_options; 136 } 137 138 /** 139 * Prepare HTML for output 140 * 141 * @return string HTML 142 */ 143 function render(){ 144 $ret = ""; 145 foreach ( $this->getOptions() as $value => $name ) { 146 $ret .= "<input type='radio' name='".$this->getName()."' value='".$value."'"; 147 $selected = $this->getValue(); 148 if ( isset($selected) && ($value == $selected) ) { 149 $ret .= " checked='checked'"; 150 } 151 $ret .= $this->getExtra()." />".$name.$this->delimeter."\n"; 152 } 153 return $ret; 154 } 155 } 156 ?>
titre
Description
Corps
titre
Description
Corps
titre
Description
Corps
titre
Corps
| Généré le : Sun Nov 25 11:44:32 2007 | par Balluche grâce à PHPXref 0.7 |
|