-- Dividy <[EMAIL PROTECTED]> wrote
(on Saturday, 02 February 2008, 03:19 PM -0800):
> For my first post on this nice forum, could someone explain me in details
> how to translate the error messages of a zend_form validation ?
>
> I tried much thing but none work.
You'll need to do several things.
First, for each validator you use, determine what the various error
codes are -- you can do this by looking at the values of the validator's
class constants. For instance, 'Zend_Validate_NotEmpty' defines the
constant Zend_Validate_NotEmpty::STRING_EMPTY to 'stringEmpty'.
Armed with that list, create translations for one of the translation
adapters supported by Zend_Translate. If you were using, for instance,
the 'array' adapter, you could do this:
<?php
// translations.php
return array(
'stringEmpty' => 'Please fill in this value',
...
);
Then, create your translate object:
$translations = include 'path/to/translations.php';
$translate = new Zend_Translate('array', $translations, 'en');
And pass the translation adapter to your form:
$form->setTranslator($translate->getAdapter());
And that's all there is to it. The above defines english translations,
but you can do whatever language you want; refer to the Zend_Translate
manual for more information on creating these.
--
Matthew Weier O'Phinney
PHP Developer | [EMAIL PROTECTED]
Zend - The PHP Company | http://www.zend.com/