Skip to content

Commit 8783f7a

Browse files
committed
Merge branch 'knallcharge-master' into symfony8-copy
2 parents 4c6e302 + d223560 commit 8783f7a

File tree

9 files changed

+87
-126
lines changed

9 files changed

+87
-126
lines changed

CraueFormFlowBundle.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ class CraueFormFlowBundle extends Bundle {
1515
/**
1616
* @return void
1717
*/
18-
public function boot() {
18+
public function boot(): void {
1919
/*
2020
* Removes all temporary files created while handling file uploads.
2121
* Use a shutdown function to clean up even in case of a fatal error.

DependencyInjection/CraueFormFlowExtension.php

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
use Symfony\Component\DependencyInjection\Compiler\CompilerPassInterface;
88
use Symfony\Component\DependencyInjection\ContainerBuilder;
99
use Symfony\Component\DependencyInjection\Extension\Extension;
10-
use Symfony\Component\DependencyInjection\Loader\XmlFileLoader;
10+
use Symfony\Component\DependencyInjection\Loader\PhpFileLoader;
1111

1212
/**
1313
* Registration of the extension via DI.
@@ -23,19 +23,19 @@ class CraueFormFlowExtension extends Extension implements CompilerPassInterface
2323
/**
2424
* @return void
2525
*/
26-
public function load(array $config, ContainerBuilder $container) {
27-
$loader = new XmlFileLoader($container, new FileLocator(__DIR__.'/../Resources/config'));
28-
$loader->load('form_flow.xml');
29-
$loader->load('twig.xml');
30-
$loader->load('util.xml');
26+
public function load(array $config, ContainerBuilder $container): void {
27+
$loader = new PhpFileLoader($container, new FileLocator(__DIR__.'/../Resources/config'));
28+
$loader->load('form_flow.php');
29+
$loader->load('twig.php');
30+
$loader->load('util.php');
3131

3232
$container->registerForAutoconfiguration(FormFlowInterface::class)->addTag(self::FORM_FLOW_TAG);
3333
}
3434

3535
/**
3636
* @return void
3737
*/
38-
public function process(ContainerBuilder $container) {
38+
public function process(ContainerBuilder $container): void {
3939
$baseFlowDefinitionMethodCalls = $container->getDefinition('craue.form.flow')->getMethodCalls();
4040

4141
foreach (array_keys($container->findTaggedServiceIds(self::FORM_FLOW_TAG)) as $id) {

Form/FormFlow.php

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -539,7 +539,7 @@ protected function getRequestedStepNumber() {
539539
return intval($request->request->get($this->getFormStepKey(), $defaultStepNumber));
540540
case 'GET':
541541
return $this->allowDynamicStepNavigation || $this->allowRedirectAfterSubmit ?
542-
intval($request->get($this->dynamicStepNavigationStepParameter, $defaultStepNumber)) :
542+
intval($request->query->get($this->dynamicStepNavigationStepParameter, $defaultStepNumber)) :
543543
$defaultStepNumber;
544544
}
545545

@@ -625,7 +625,8 @@ protected function determineInstanceId() {
625625
$instanceId = null;
626626

627627
if ($this->allowDynamicStepNavigation || $this->allowRedirectAfterSubmit) {
628-
$instanceId = $request->get($this->getDynamicStepNavigationInstanceParameter());
628+
$requestData = in_array($request->getMethod(), ['POST', 'PUT'], true) ? $request->request : $request->query;
629+
$instanceId = $requestData->get($this->getDynamicStepNavigationInstanceParameter());
629630
}
630631

631632
if ($instanceId === null) {
@@ -652,7 +653,7 @@ protected function bindFlow() {
652653
$reset = true;
653654
}
654655

655-
if (in_array($request->getMethod(), ['POST', 'PUT'], true) && $request->get($this->getFormStepKey()) !== null && !$this->dataManager->exists($this)) {
656+
if (in_array($request->getMethod(), ['POST', 'PUT'], true) && $request->request->get($this->getFormStepKey()) !== null && !$this->dataManager->exists($this)) {
656657
// flow is expired, drop posted data and reset
657658
$request->request->replace();
658659
$reset = true;

Resources/config/form_flow.php

Lines changed: 47 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
<?php
2+
3+
namespace Symfony\Component\DependencyInjection\Loader\Configurator;
4+
5+
return static function (ContainerConfigurator $container) {
6+
$services = $container->services();
7+
$parameters = $container->parameters();
8+
$parameters->set('craue.form.flow.class', \Craue\FormFlowBundle\Form\FormFlow::class);
9+
$parameters->set('craue.form.flow.storage.class', \Craue\FormFlowBundle\Storage\SessionStorage::class);
10+
$parameters->set('craue.form.flow.event_listener.previous_step_invalid.class', \Craue\FormFlowBundle\EventListener\PreviousStepInvalidEventListener::class);
11+
$parameters->set('craue.form.flow.event_listener.previous_step_invalid.event', \Craue\FormFlowBundle\Form\FormFlowEvents::PREVIOUS_STEP_INVALID);
12+
$parameters->set('craue.form.flow.event_listener.flow_expired.class', \Craue\FormFlowBundle\EventListener\FlowExpiredEventListener::class);
13+
$parameters->set('craue.form.flow.event_listener.flow_expired.event', \Craue\FormFlowBundle\Form\FormFlowEvents::FLOW_EXPIRED);
14+
15+
$services->set('craue.form.flow.storage_default', '%craue.form.flow.storage.class%')
16+
->private()
17+
->args([service('request_stack')]);
18+
19+
$services->alias('craue.form.flow.storage', 'craue.form.flow.storage_default')
20+
->public();
21+
22+
$services->set('craue.form.flow.data_manager_default', \Craue\FormFlowBundle\Storage\DataManager::class)
23+
->private()
24+
->args([service('craue.form.flow.storage')]);
25+
26+
$services->alias('craue.form.flow.data_manager', 'craue.form.flow.data_manager_default');
27+
28+
$services->set('craue.form.flow', '%craue.form.flow.class%')
29+
->call('setDataManager', [service('craue.form.flow.data_manager')])
30+
->call('setFormFactory', [service('form.factory')])
31+
->call('setRequestStack', [service('request_stack')])
32+
->call('setEventDispatcher', [service('event_dispatcher')->ignoreOnInvalid()]);
33+
34+
$services->set('craue.form.flow.form_extension', \Craue\FormFlowBundle\Form\Extension\FormFlowFormExtension::class)
35+
->tag('form.type_extension', ['extended_type' => \Symfony\Component\Form\Extension\Core\Type\FormType::class]);
36+
37+
$services->set('craue.form.flow.hidden_field_extension', \Craue\FormFlowBundle\Form\Extension\FormFlowHiddenFieldExtension::class)
38+
->tag('form.type_extension', ['extended_type' => \Symfony\Component\Form\Extension\Core\Type\HiddenType::class]);
39+
40+
$services->set('craue.form.flow.event_listener.previous_step_invalid', '%craue.form.flow.event_listener.previous_step_invalid.class%')
41+
->tag('kernel.event_listener', ['event' => '%craue.form.flow.event_listener.previous_step_invalid.event%', 'method' => 'onPreviousStepInvalid'])
42+
->call('setTranslator', [service('translator')]);
43+
44+
$services->set('craue.form.flow.event_listener.flow_expired', '%craue.form.flow.event_listener.flow_expired.class%')
45+
->tag('kernel.event_listener', ['event' => '%craue.form.flow.event_listener.flow_expired.event%', 'method' => 'onFlowExpired'])
46+
->call('setTranslator', [service('translator')]);
47+
};

Resources/config/form_flow.xml

Lines changed: 0 additions & 71 deletions
This file was deleted.

Resources/config/twig.php

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
<?php
2+
3+
namespace Symfony\Component\DependencyInjection\Loader\Configurator;
4+
5+
return static function (ContainerConfigurator $container) {
6+
$services = $container->services();
7+
$parameters = $container->parameters();
8+
$parameters->set('craue_twig_extensions.formflow.class', \Craue\FormFlowBundle\Twig\Extension\FormFlowExtension::class);
9+
10+
$services->set('twig.extension.craue_formflow', '%craue_twig_extensions.formflow.class%')
11+
->tag('twig.extension')
12+
->call('setFormFlowUtil', [service('craue_formflow_util')]);
13+
};

Resources/config/twig.xml

Lines changed: 0 additions & 23 deletions
This file was deleted.

Resources/config/util.php

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
<?php
2+
3+
namespace Symfony\Component\DependencyInjection\Loader\Configurator;
4+
5+
return static function (ContainerConfigurator $container) {
6+
$services = $container->services();
7+
$parameters = $container->parameters();
8+
$parameters->set('craue_formflow.util.class', \Craue\FormFlowBundle\Util\FormFlowUtil::class);
9+
10+
$services->set('craue_formflow_util', '%craue_formflow.util.class%')
11+
->public();
12+
13+
$services->alias(\Craue\FormFlowBundle\Util\FormFlowUtil::class, 'craue_formflow_util')
14+
->private();
15+
};

Resources/config/util.xml

Lines changed: 0 additions & 21 deletions
This file was deleted.

0 commit comments

Comments
 (0)