diff --git a/sources/FormImplementation/Controller/TestController.php b/sources/FormImplementation/Controller/TestController.php
index cc46f1023..78efbba50 100644
--- a/sources/FormImplementation/Controller/TestController.php
+++ b/sources/FormImplementation/Controller/TestController.php
@@ -11,6 +11,7 @@ use Exception;
use Symfony\Component\HttpFoundation\JsonResponse;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;
+use Symfony\Component\HttpKernel\Attribute\MapQueryParameter;
use Symfony\Component\HttpKernel\Attribute\MapQueryString;
use Symfony\Component\Routing\Attribute\Route;
use Symfony\Component\Routing\RouterInterface;
@@ -22,8 +23,8 @@ class TestController extends AbstractAppController
* @throws \ArchivedObjectException
* @throws \CoreException
*/
- #[Route('/formSDK/test_form/{mode}', name: 'formSDK_test_form')]
- public function form(Request $oRequest, FormManager $oFormManager, RouterInterface $oRouter, int $mode): Response
+ #[Route('/formSDK/test_form/', name: 'formSDK_test_form')]
+ public function form(Request $oRequest, FormManager $oFormManager, RouterInterface $oRouter, #[MapQueryParameter] int $mode=0): Response
{
// create factory
$oFactory = FormHelper::CreateSampleFormFactory($oFormManager, $oRouter, $mode);
@@ -60,8 +61,8 @@ class TestController extends AbstractAppController
* @throws \ArchivedObjectException
* @throws \CoreException
*/
- #[Route('/formSDK/test_theme/{mode}', name: 'formSDK_test_theme')]
- public function theme(Request $oRequest, FormManager $oFormManager, RouterInterface $oRouter, int $mode): Response
+ #[Route('/formSDK/test_theme', name: 'formSDK_test_theme')]
+ public function theme(Request $oRequest, FormManager $oFormManager, RouterInterface $oRouter, #[MapQueryParameter] int $mode = 0): Response
{
// create factory
$oFactory = FormHelper::CreateSampleFormFactory($oFormManager, $oRouter, $mode);
@@ -76,7 +77,7 @@ class TestController extends AbstractAppController
// render view
return $this->render('formSDK/theme.html.twig', [
- 'name1' => 'Portail',
+ 'name1' => 'Portal',
'name2' => 'Console',
'form1' => $oForm1->createView(),
'form2' => $oForm2->createView(),
diff --git a/sources/FormImplementation/Helper/FormHelper.php b/sources/FormImplementation/Helper/FormHelper.php
index baec67369..2829e78a5 100644
--- a/sources/FormImplementation/Helper/FormHelper.php
+++ b/sources/FormImplementation/Helper/FormHelper.php
@@ -69,7 +69,7 @@ class FormHelper
'counts' => ['count1' => 10, 'count2' => 20, 'count3' => 30],
'counts2' => new CountDto(),
'interval' => ['days' => '12', 'hours' => '13', 'years' => '10', 'months' => '6', 'minutes' => '0', 'seconds' => '0', 'weeks' => '3'],
- 'blog' => '
Your story
bla bla bla bla bla bla
bla bla bla bla bla bla
bla bla bla bla bla bla
bla bla bla bla bla bla',
+ 'blog' => 'Your story
start here, bla bla bla bla bla bla
bla bla bla bla bla bla
bla bla bla bla bla bla
bla bla bla bla bla bla',
'notify' => true,
'language' => 'FR FR',
'mode' => '1',
diff --git a/sources/FormSDK/Symfony/SymfonyBridge.php b/sources/FormSDK/Symfony/SymfonyBridge.php
index 90a2be834..123a26c10 100644
--- a/sources/FormSDK/Symfony/SymfonyBridge.php
+++ b/sources/FormSDK/Symfony/SymfonyBridge.php
@@ -189,16 +189,16 @@ class SymfonyBridge
/**
* Create Symfony form.
*
- * @param array $aDescriptions
+ * @param array $aFieldsDescriptions
* @param mixed $oData
* @param string|null $sName
* @param array $aLayout
*
* @return \Symfony\Component\Form\FormInterface
*/
- public function CreateForm(array $aDescriptions, mixed $oData, ?string $sName = null, array $aLayout = []): FormInterface
+ public function CreateForm(array $aFieldsDescriptions, mixed $oData, ?string $sName = null, array $aLayout = []): FormInterface
{
- // create Symfony form builder
+ // create Symfony form builder (with or without name, name is by default `form`)
if($sName !== null){
$oFormBuilder = $this->oFormFactory->createNamedBuilder($sName, FormType::class, $oData);
}
@@ -206,28 +206,29 @@ class SymfonyBridge
$oFormBuilder = $this->oFormFactory->createBuilder(FormType::class, $oData);
}
- // transform fields descriptions...
+ // transform fields descriptions to Symfony types...
$aSymfonyTypesDeclaration = [];
- foreach ($aDescriptions as $sKey => $oFormDescription){
- $aSymfonyTypesDeclaration[$sKey] = $this->ToSymfonyFormType($oFormDescription);
+ foreach ($aFieldsDescriptions as $sKey => $oFormFieldDescription){
+ $aSymfonyTypesDeclaration[$sKey] = $this->ToSymfonyFormType($oFormFieldDescription);
}
- // prepare fieldset types layout...
+ // prepare fieldset types layouts...
foreach ($aSymfonyTypesDeclaration as &$aSymfonyTypeDeclaration){
- if($aSymfonyTypeDeclaration['type'] === FieldsetType::class && isset($aSymfonyTypeDeclaration['options']['layout'])){
+ if($aSymfonyTypeDeclaration['type'] === FieldsetType::class
+ && isset($aSymfonyTypeDeclaration['options']['layout'])){
['types' => $aItems] = $this->CreateLayoutTypes($aSymfonyTypeDeclaration['options']['layout'], $oFormBuilder, $aSymfonyTypeDeclaration['options']['fields']);
$aSymfonyTypeDeclaration['options']['fields'] = array_merge($aItems, $aSymfonyTypeDeclaration['options']['fields']);
}
}
- // prepare general layout types
+ // prepare global layout types
['types' => $aItems] = $this->CreateLayoutTypes($aLayout, $oFormBuilder, $aSymfonyTypesDeclaration);
$aSymfonyTypesDeclaration = array_merge($aItems, $aSymfonyTypesDeclaration);
- // add symfony types to builder...
+ // add Symfony types to builder...
foreach ($aSymfonyTypesDeclaration as $oSymfonyTypeDeclaration){
- // add type to form
+ // add Symfony type to form
$oFormBuilder->add(
$oSymfonyTypeDeclaration['name'],
$oSymfonyTypeDeclaration['type'],