web/lib/Zend/Form/Element.php
changeset 1230 68c69c656a2c
parent 807 877f952ae2bd
equal deleted inserted replaced
1229:5a6b6e770365 1230:68c69c656a2c
    12  * obtain it through the world-wide-web, please send an email
    12  * obtain it through the world-wide-web, please send an email
    13  * to license@zend.com so we can send you a copy immediately.
    13  * to license@zend.com so we can send you a copy immediately.
    14  *
    14  *
    15  * @category   Zend
    15  * @category   Zend
    16  * @package    Zend_Form
    16  * @package    Zend_Form
    17  * @copyright  Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
    17  * @copyright  Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
    18  * @license    http://framework.zend.com/license/new-bsd     New BSD License
    18  * @license    http://framework.zend.com/license/new-bsd     New BSD License
    19  */
    19  */
    20 
    20 
    21 /** @see Zend_Filter */
    21 /** @see Zend_Filter */
    22 require_once 'Zend/Filter.php';
    22 require_once 'Zend/Filter.php';
    34  * Zend_Form_Element
    34  * Zend_Form_Element
    35  *
    35  *
    36  * @category   Zend
    36  * @category   Zend
    37  * @package    Zend_Form
    37  * @package    Zend_Form
    38  * @subpackage Element
    38  * @subpackage Element
    39  * @copyright  Copyright (c) 2005-2012 Zend Technologies USA Inc. (http://www.zend.com)
    39  * @copyright  Copyright (c) 2005-2015 Zend Technologies USA Inc. (http://www.zend.com)
    40  * @license    http://framework.zend.com/license/new-bsd     New BSD License
    40  * @license    http://framework.zend.com/license/new-bsd     New BSD License
    41  * @version    $Id: Element.php 25173 2012-12-22 20:05:32Z rob $
    41  * @version    $Id$
    42  */
    42  */
    43 class Zend_Form_Element implements Zend_Validate_Interface
    43 class Zend_Form_Element implements Zend_Validate_Interface
    44 {
    44 {
    45     /**
    45     /**
    46      * Element Constants
    46      * Element Constants
   223      * elements during the magic call while skipping the parent render() method.
   223      * elements during the magic call while skipping the parent render() method.
   224      *
   224      *
   225      * @var bool
   225      * @var bool
   226      */
   226      */
   227     protected $_isPartialRendering = false;
   227     protected $_isPartialRendering = false;
       
   228 
       
   229     /**
       
   230      * Use one error message for array elements with concatenated values
       
   231      *
       
   232      * @var bool
       
   233      */
       
   234     protected $_concatJustValuesInErrorMessage = false;
   228 
   235 
   229     /**
   236     /**
   230      * Constructor
   237      * Constructor
   231      *
   238      *
   232      * $spec may be:
   239      * $spec may be:
   910                 unset($attribs[$key]);
   917                 unset($attribs[$key]);
   911             }
   918             }
   912         }
   919         }
   913 
   920 
   914         return $attribs;
   921         return $attribs;
       
   922     }
       
   923 
       
   924     /**
       
   925      * Use one error message for array elements with concatenated values
       
   926      *
       
   927      * @param boolean $concatJustValuesInErrorMessage
       
   928      * @return Zend_Form_Element
       
   929      */
       
   930     public function setConcatJustValuesInErrorMessage($concatJustValuesInErrorMessage)
       
   931     {
       
   932         $this->_concatJustValuesInErrorMessage = $concatJustValuesInErrorMessage;
       
   933         return $this;
       
   934     }
       
   935 
       
   936     /**
       
   937      * Use one error message for array elements with concatenated values
       
   938      *
       
   939      * @return boolean
       
   940      */
       
   941     public function getConcatJustValuesInErrorMessage()
       
   942     {
       
   943         return $this->_concatJustValuesInErrorMessage;
   915     }
   944     }
   916 
   945 
   917     /**
   946     /**
   918      * Overloading: retrieve object property
   947      * Overloading: retrieve object property
   919      *
   948      *
  2246                 $aggregateMessages = array();
  2275                 $aggregateMessages = array();
  2247                 foreach ($value as $val) {
  2276                 foreach ($value as $val) {
  2248                     $aggregateMessages[] = str_replace('%value%', $val, $message);
  2277                     $aggregateMessages[] = str_replace('%value%', $val, $message);
  2249                 }
  2278                 }
  2250                 if (count($aggregateMessages)) {
  2279                 if (count($aggregateMessages)) {
  2251                     $messages[$key] = implode($this->getErrorMessageSeparator(), $aggregateMessages);
  2280                     if ($this->_concatJustValuesInErrorMessage) {
       
  2281                         $values = implode($this->getErrorMessageSeparator(), $value);
       
  2282                         $messages[$key] = str_replace('%value%', $values, $message);
       
  2283                     } else {
       
  2284                         $messages[$key] = implode($this->getErrorMessageSeparator(), $aggregateMessages);
       
  2285                     }
  2252                 }
  2286                 }
  2253             } else {
  2287             } else {
  2254                 $messages[$key] = str_replace('%value%', $value, $message);
  2288                 $messages[$key] = str_replace('%value%', $value, $message);
  2255             }
  2289             }
  2256         }
  2290         }