oCsrfTokenManager = MetaModel::GetService('CsrfTokenManager'); // Initialize the form factory builder to handle Request objects $this->oFormFactoryBuilder = Forms::createFormFactoryBuilder() ->addExtension(new HttpFoundationExtension()) ->addExtension(new CsrfExtension($this->oCsrfTokenManager)); } /** * Get a form builder. * This form builder can be used to create a form or to add fields to an existing form. * * @api * * @param \Combodo\iTop\Forms\Block\AbstractFormBlock $oFormBlock * @param mixed|null $data * * @return \Symfony\Component\Form\FormBuilderInterface */ public function GetFormBuilder(AbstractFormBlock $oFormBlock, mixed $data = null): FormBuilderInterface { return $this->oFormFactoryBuilder->getFormFactory()->createNamedBuilder($oFormBlock->GetName(), $oFormBlock->GetFormType(), $data, $oFormBlock->GetOptions()); } }