1<?php 2 3/* 4 * This file is part of the symfony package. 5 * (c) Fabien Potencier <fabien.potencier@symfony-project.com> 6 * 7 * For the full copyright and license information, please view the LICENSE 8 * file that was distributed with this source code. 9 */ 10 11/** 12 * sfWidgetFormInput represents an HTML input tag. 13 * 14 * @package symfony 15 * @subpackage widget 16 * @author Fabien Potencier <fabien.potencier@symfony-project.com> 17 * @version SVN: $Id$ 18 */ 19class sfWidgetFormInput extends sfWidgetForm 20{ 21 /** 22 * Constructor. 23 * 24 * Available options: 25 * 26 * * type: The widget type 27 * 28 * @param array $options An array of options 29 * @param array $attributes An array of default HTML attributes 30 * 31 * @see sfWidgetForm 32 */ 33 protected function configure($options = array(), $attributes = array()) 34 { 35 $this->addRequiredOption('type'); 36 37 // to maintain BC with symfony 1.2 38 $this->setOption('type', 'text'); 39 } 40 41 /** 42 * Renders the widget. 43 * 44 * @param string $name The element name 45 * @param string $value The value displayed in this widget 46 * @param array $attributes An array of HTML attributes to be merged with the default HTML attributes 47 * @param array $errors An array of errors for the field 48 * 49 * @return string An HTML tag string 50 * 51 * @see sfWidgetForm 52 */ 53 public function render($name, $value = null, $attributes = array(), $errors = array()) 54 { 55 return $this->renderTag('input', array_merge(array('type' => $this->getOption('type'), 'name' => $name, 'value' => $value), $attributes)); 56 } 57} 58