Details
Description
Zend_Form_Element_File label is not translated when the form element is rendered separately.
example:
// controller $form = new Zend_Form(); $form->setEnctype('multipart/form-data'); $form->addElement('file', 'myFile', array('label' => 'fileLabel', 'required' => false)); $form->addElement('text', 'myText', array('label' => 'textLabel', 'required' => false)); $form->addElement('submit', 'mySubmit', array('label' => 'submitLabel')); $this->view->form = $form; // view <?= $this->form->renderForm(false) ?> <?= $this->form->myFile ?> <?= $this->form->myText ?> <?= $this->form->mySubmit ?> </form>
"textLabel" and "submitLabel" are correctly translated, "fileLabel" is not translated.
If the form is rendered in such a way:
// view
<?= $form ?>
then all labels are translated correctly.
It seems that the translator is not set when Zend_Form_Element_File is rendered separately.
If I set the translator explicitely (Zend_Form_Element_File::setTranslator()) in the controller before rendering the form, then translation works fine.