diff -r 5e7a0fedabdf -r 877f952ae2bd web/lib/Zend/View/Helper/FormElement.php --- a/web/lib/Zend/View/Helper/FormElement.php Thu Mar 21 17:31:31 2013 +0100 +++ b/web/lib/Zend/View/Helper/FormElement.php Thu Mar 21 19:50:53 2013 +0100 @@ -15,9 +15,9 @@ * @category Zend * @package Zend_View * @subpackage Helper - * @copyright Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com) + * @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com) * @license http://framework.zend.com/license/new-bsd New BSD License - * @version $Id: FormElement.php 22290 2010-05-25 14:27:12Z matthew $ + * @version $Id: FormElement.php 24823 2012-05-29 19:52:12Z rob $ */ /** @@ -31,20 +31,20 @@ * @category Zend * @package Zend_View * @subpackage Helper - * @copyright Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com) + * @copyright Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com) * @license http://framework.zend.com/license/new-bsd New BSD License */ abstract class Zend_View_Helper_FormElement extends Zend_View_Helper_HtmlElement { /** - * @var Zend_Translate + * @var Zend_Translate_Adapter|null */ protected $_translator; /** * Get translator * - * @return Zend_Translate + * @return Zend_Translate_Adapter|null */ public function getTranslator() { @@ -54,7 +54,7 @@ /** * Set translator * - * @param $translator|null Zend_Translate + * @param Zend_Translate|Zend_Translate_Adapter|null $translator * @return Zend_View_Helper_FormElement */ public function setTranslator($translator = null) @@ -115,7 +115,7 @@ } } - // If all helper options are passed as an array, attribs may have + // If all helper options are passed as an array, attribs may have // been as well if (null === $attribs) { $attribs = $info['attribs']; @@ -146,6 +146,16 @@ $info['id'] = trim(strtr($info['name'], array('[' => '-', ']' => '')), '-'); } + + // Remove NULL name attribute override + if (array_key_exists('name', $attribs) && is_null($attribs['name'])) { + unset($attribs['name']); + } + + // Override name in info if specified in attribs + if (array_key_exists('name', $attribs) && $attribs['name'] != $info['name']) { + $info['name'] = $attribs['name']; + } // Determine escaping from attributes if (array_key_exists('escape', $attribs)) { @@ -178,11 +188,9 @@ * * @access protected * - * @param $name The element name. - * - * @param $value The element value. - * - * @param $attribs Attributes for the element. + * @param string $name The element name. + * @param string $value The element value. + * @param array $attribs Attributes for the element. * * @return string A hidden element. */