Dominik Zawadzki ...
Temat: Dialog z wszystkimi błędami walidacji formularza
Witam, potrzebuję przekazać wszystkie błędy walidacji (zgłoszone przez walidatory każdej kontrolki) do okna dialogowego generowanego w jQuery (ZendX)...właściwie to potrzebuję tylko jednej prostej funkcji, która pobierze wszystkie błędy...jest taka??Metoda getMessages() klasy Zend_Form ma wadę - wymusza znajomość identyfikatorów kontrolek...
Zrobiłem, więc taki helper
<?php
class Zend_View_Helper_dialogForm extends Zend_View_Helper_Abstract {
public function dialogForm(Zend_Form $form) {
$messagesArray = $form->getMessages();
if(count($messagesArray) == 0) return;
$content = '<ul>';
/* @var $element Zend_Form_Element */
foreach($form->getElements() as $element) {
/* @var $validator Zend_Validate */
foreach($element->getValidators() as $validatorArray) {
foreach($validatorArray->getErrors() as $validator )
{
$content .= sprintf('<li>%s</li>',
$messagesArray[$element->getName()][$validator]);
}
}
}
$content .= '</ul>';
echo $this->view->dialogContainer('error',
$content,
array('title' => 'Error'));
}
}
Czy nie ma łatwiejszego sposobu ? Bo coś mi to koliduje z istotą frameworka