|
@@ -4,6 +4,7 @@ namespace Muzich\CoreBundle\Extension;
|
4
|
4
|
|
5
|
5
|
use Symfony\Bundle\FrameworkBundle\Translation\Translator;
|
6
|
6
|
use Muzich\CoreBundle\Entity\Event;
|
|
7
|
+use Symfony\Component\Form\FormView;
|
7
|
8
|
|
8
|
9
|
class MyTwigExtension extends \Twig_Extension {
|
9
|
10
|
|
|
@@ -19,7 +20,8 @@ class MyTwigExtension extends \Twig_Extension {
|
19
|
20
|
return array(
|
20
|
21
|
'var_dump' => new \Twig_Filter_Function('var_dump'),
|
21
|
22
|
'date_or_relative_date' => new \Twig_Filter_Method($this, 'date_or_relative_date'),
|
22
|
|
- 'date_epurate' => new \Twig_Filter_Method($this, 'date_epurate')
|
|
23
|
+ 'date_epurate' => new \Twig_Filter_Method($this, 'date_epurate'),
|
|
24
|
+ 'form_has_errors' => new \Twig_Filter_Method($this, 'form_has_errors')
|
23
|
25
|
);
|
24
|
26
|
}
|
25
|
27
|
|
|
@@ -171,5 +173,21 @@ class MyTwigExtension extends \Twig_Extension {
|
171
|
173
|
return 'list_length_default';
|
172
|
174
|
}
|
173
|
175
|
}
|
|
176
|
+
|
|
177
|
+ public function form_has_errors(FormView $form)
|
|
178
|
+ {
|
|
179
|
+ $form_vars = $form->getVars();
|
|
180
|
+ $count_error = count($form_vars['errors']);
|
|
181
|
+ foreach ($form->getChildren() as $form_children)
|
|
182
|
+ {
|
|
183
|
+ $form_children_vars = $form_children->getVars();
|
|
184
|
+ $count_error += count($form_children_vars['errors']);
|
|
185
|
+ }
|
|
186
|
+ if ($count_error)
|
|
187
|
+ {
|
|
188
|
+ return true;
|
|
189
|
+ }
|
|
190
|
+ return false;
|
|
191
|
+ }
|
174
|
192
|
|
175
|
193
|
}
|