/** * Set bootstrap column layout. * * @param ViewEvent $event The view event. * * @return void */ public function setColumnLayout(ViewEvent $event) { $form = $event->getFormModel(); $widget = $event->getWidget(); $config = $this->getConfig($form); if ($form && $widget->tableless || !$form && !$config->get('form.default-horizontal')) { return; } $container = $event->getContainer(); $label = $event->getLabel(); $container->setRenderContainer(true); $container->addClass($config->get('form.horizontal.control')); if (!$widget->label || !$this->getWidgetConfigValue($config, $widget->type, 'label', true)) { $container->addClass($config->get('form.horizontal.offset')); } else { $label->addClass($config->get('form.horizontal.label')); } if ($container->hasChild('repeatLabel')) { /** @var Label $label */ $label = $container->getChild('repeatLabel'); $label->addClass('control-label'); if ($this->getWidgetConfigValue($config, $widget->type, 'label', true)) { $label->addClass($config->get('form.horizontal.label')); } } }
/** * Generate the form wiedget view. * * @param ViewEvent $event The form widget view event. * * @return void */ public function handle(ViewEvent $event) { $container = $event->getContainer(); $element = $event->getContainer()->getElement(); $widget = $event->getWidget(); $label = $event->getLabel(); $config = $this->getConfig($event->getFormModel()); $this->modifyLabel($config, $label, $widget); $this->modifyElement($config, $element, $widget, $container); $this->modifyErrors($event, $widget, $container); $this->addInputGroup($config, $widget, $container, $element); }