|
@@ -75,7 +75,7 @@ class FormTypeFieldExtension extends AbstractTypeExtension
|
|
|
*/
|
|
|
protected function getClass(FormBuilderInterface $formBuilder)
|
|
|
{
|
|
|
- foreach ($formBuilder->getTypes() as $type) {
|
|
|
+ foreach ($this->getTypes($formBuilder) as $type) {
|
|
|
if (isset($this->defaultClasses[$type->getName()])) {
|
|
|
return $this->defaultClasses[$type->getName()];
|
|
|
}
|
|
@@ -84,6 +84,22 @@ class FormTypeFieldExtension extends AbstractTypeExtension
|
|
|
return '';
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * @param \Symfony\Component\Form\FormBuilderInterface $formBuilder
|
|
|
+ *
|
|
|
+ * @return array
|
|
|
+ */
|
|
|
+ protected function getTypes(FormBuilderInterface $formBuilder)
|
|
|
+ {
|
|
|
+ $types = array();
|
|
|
+
|
|
|
+ for ($type = $formBuilder->getType(); null !== $type; $type = $type->getParent()) {
|
|
|
+ array_unshift($types, $type->getInnerType());
|
|
|
+ }
|
|
|
+
|
|
|
+ return $types;
|
|
|
+ }
|
|
|
+
|
|
|
/**
|
|
|
* @param FormView $view
|
|
|
* @param FormInterface $form
|