public function setData($data) { if ($this->event->getName() == FormEvents::PRE_SUBMIT) { $this->event->setData($data); } else { trigger_error(__CLASS__ . "::" . __FUNCTION__ . " can only be called in BoltFormsEvents::PRE_SUBMIT", E_USER_ERROR); } }
public function setData($data) { if ($this->event->getName() === FormEvents::PRE_SUBMIT) { $this->event->setData($data); } else { throw new \RuntimeException(__CLASS__ . '::' . __FUNCTION__ . ' can only be called in BoltFormsEvents::PRE_SUBMIT'); } }
public function preSubmitData(FormEvent $event) { $data = $event->getData(); if (!$data) { $data = $event->getForm()->getParent()->getData(); } $form = $event->getForm(); $targetEntity = null; if (isset($data['target_entity'])) { $targetEntity = $data['target_entity']; } $relationType = $this->config->getId()->getFieldType(); if ($relationType == 'manyToOne') { //target_field $targetField = null; if (isset($data['target_field'])) { $targetField = $data['target_field']; } $form->add($this->formFactory->createNamed('target_field', new TargetFieldType($this->configProvider, $targetEntity), $targetField)); } else { //target_grid $targetGrid = null; if (isset($data['target_grid'])) { $targetGrid = $data['target_grid']; } $form->add($this->formFactory->createNamed('target_grid', new TargetFieldType($this->configProvider, $targetEntity), $targetGrid, ['multiple' => true, 'label' => 'Related entity data fields'])); //target_title $targetTitle = null; if (isset($data['target_title'])) { $targetTitle = $data['target_title']; } $form->add($this->formFactory->createNamed('target_title', new TargetFieldType($this->configProvider, $targetEntity), $targetTitle, ['multiple' => true, 'label' => 'Related entity info title'])); //target_detailed $targetDetailed = null; if (isset($data['target_detailed'])) { $targetDetailed = $data['target_detailed']; } $form->add($this->formFactory->createNamed('target_detailed', new TargetFieldType($this->configProvider, $targetEntity), $targetDetailed, ['multiple' => true, 'label' => 'Related entity detailed'])); } if ($event->getName() == FormEvents::PRE_SUBMIT) { $event->getForm()->getParent()->setData(array_merge($event->getForm()->getParent()->getData(), $data)); } }
public function preSubmitData(FormEvent $event) { $form = $event->getForm(); $data = $event->getData(); if (!$data) { $data = $form->getParent()->getData(); } if ($this->config->get('owner') === ExtendScope::OWNER_CUSTOM) { $targetEntity = $this->getArrayValue($data, 'target_entity'); $relationType = $this->config->getId()->getFieldType(); if ($relationType == 'manyToOne') { $this->addTargetField($form, 'target_field', $targetEntity, $this->getArrayValue($data, 'target_field')); } else { $this->addTargetField($form, 'target_grid', $targetEntity, $this->getArrayValue($data, 'target_grid'), 'Related entity data fields', true); $this->addTargetField($form, 'target_title', $targetEntity, $this->getArrayValue($data, 'target_title'), 'Related entity info title', true); $this->addTargetField($form, 'target_detailed', $targetEntity, $this->getArrayValue($data, 'target_detailed'), 'Related entity detailed', true); } } if ($event->getName() == FormEvents::PRE_SUBMIT) { $form->getParent()->setData(array_merge($form->getParent()->getData(), $data)); } }