Ver Mensaje Individual
  #10 (permalink)  
Antiguo 27/05/2011, 05:27
Avatar de masterpuppet
masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 3 meses
Puntos: 845
Respuesta: Cambiar mensaje de error para un campo CSRF

El problema es que init se dispara antes del init del validator, el orden es:
  1. parent construct
  2. init
  3. init csrf validator

Una opción seria sobrescribir Zend_Form_Element_Hash::initCsrfValidator

Código PHP:
Ver original
  1. public function initCsrfValidator()
  2. {
  3.     parent::initCsrfValidator();
  4.     $translate = Zend_Registry::get('translate');
  5.     Zend_Debug::dump($this->getValidators());
  6.     ...
  7. }

Y recuerda que puedes acceder al translator desde el Zend_Form_Element

Código PHP:
Ver original
  1. public function initCsrfValidator()
  2. {
  3.     parent::initCsrfValidator();
  4.     Zend_Debug::dump($this->getTranslator());
  5.     Zend_Debug::dump($this->getValidators());
  6.     ...
  7. }

es mas limpio que acceder por el Registry.

Saludos.
__________________
http://es.phptherightway.com/
thats us riders :)