/** * Form builder * * @param FormBuilderInterface $builder * @param array $options * * @return null */ public function buildForm(FormBuilderInterface $builder, array $options) { $this->invoice = $options['invoice']; if (null == $this->invoice) { $builder->add('invoice', EntityType::class, array('label' => 'InvoiceDocument.invoice.label', 'class' => 'AcfDataBundle:OnlineInvoice', 'query_builder' => function (OnlineInvoiceRepository $ir) { return $ir->createQueryBuilder('i')->orderBy('i.dtCrea', 'ASC'); }, 'choice_label' => 'ref', 'multiple' => false, 'by_reference' => true, 'required' => true)); } else { $invoiceId = $this->invoice->getId(); $builder->add('invoice', EntityidType::class, array('label' => 'InvoiceDocument.invoice.label', 'class' => 'AcfDataBundle:OnlineInvoice', 'query_builder' => function (OnlineInvoiceRepository $br) use($invoiceId) { return $br->createQueryBuilder('i')->where('i.id = :id')->setParameter('id', $invoiceId)->orderBy('i.dtCrea', 'ASC'); }, 'choice_label' => 'id', 'multiple' => false, 'by_reference' => true, 'required' => true)); } $builder->add('fileName', FileType::class, array('label' => 'InvoiceDocument.fileName.label')); $builder->add('visible', ChoiceType::class, array('label' => 'InvoiceDocument.visible.label', 'choices_as_values' => true, 'choices' => OnlineInvoiceDocument::choiceVisible(), 'attr' => array('choice_label_trans' => true))); }
/** * Form builder * * @param FormBuilderInterface $builder * @param array $options */ public function buildForm(FormBuilderInterface $builder, array $options) { $builder->add('visible', ChoiceType::class, array('label' => 'InvoiceDocument.visible.label', 'choices_as_values' => true, 'choices' => OnlineInvoiceDocument::choiceVisible(), 'attr' => array('choice_label_trans' => true))); }