Merge branch '1.14' into 2.0

* 1.14:
  Fix builds after referrers refactor
  Add a note to UPGRADE file about ResendOrderConfirmationEmailAction constructor change
  [Maintenance] Less referrer usage in static redirects
This commit is contained in:
Grzegorz Sadowski 2024-08-14 06:45:19 +02:00
commit 01090f6f36
No known key found for this signature in database
GPG key ID: EF87FF4E6E3BD364
13 changed files with 55 additions and 19 deletions

View file

@ -23,6 +23,7 @@ use Symfony\Component\HttpFoundation\RequestStack;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\HttpKernel\Exception\HttpException;
use Symfony\Component\HttpKernel\Exception\NotFoundHttpException;
use Symfony\Component\Routing\RouterInterface;
use Symfony\Component\Security\Csrf\CsrfToken;
use Symfony\Component\Security\Csrf\CsrfTokenManagerInterface;
@ -33,6 +34,7 @@ final readonly class ResendOrderConfirmationEmailAction
private ResendOrderConfirmationEmailDispatcherInterface $resendOrderConfirmationEmailDispatcher,
private CsrfTokenManagerInterface $csrfTokenManager,
private RequestStack $requestStack,
private RouterInterface $router,
) {
}
@ -59,6 +61,13 @@ final readonly class ResendOrderConfirmationEmailAction
->add('success', 'sylius.email.order_confirmation_resent')
;
return new RedirectResponse($request->headers->get('referer'));
return $this->redirect($request);
}
private function redirect(Request $request): RedirectResponse
{
$redirect = $request->attributes->get('_sylius', [])['redirect'] ?? 'referer';
return new RedirectResponse($this->router->generate($redirect));
}
}

View file

@ -73,7 +73,10 @@ final class CustomerShowMenuBuilder
$menu
->addChild('user_delete', [
'route' => 'sylius_admin_shop_user_delete',
'routeParameters' => ['id' => $customer->getUser()->getId()],
'routeParameters' => [
'id' => $customer->getUser()->getId(),
'customerId' => $customer->getId(),
],
])
->setAttribute('type', 'delete')
->setAttribute('resource_id', $customer->getUser()->getId())

View file

@ -25,5 +25,5 @@ sylius_admin_locale_delete:
_controller: sylius.controller.locale::deleteAction
_sylius:
section: admin
redirect: referer
redirect: sylius_admin_locale_index
permission: true

View file

@ -76,7 +76,7 @@ sylius_admin_order_cancel:
state_machine:
graph: sylius_order
transition: cancel
redirect: referer
redirect: sylius_admin_order_show
sylius_admin_order_payment_complete:
path: /orders/{orderId}/payments/{id}/complete
@ -94,7 +94,10 @@ sylius_admin_order_payment_complete:
state_machine:
graph: sylius_payment
transition: complete
redirect: referer
redirect:
route: sylius_admin_order_show
parameters:
id: $orderId
sylius_admin_order_payment_refund:
path: /orders/{orderId}/payments/{id}/refund
@ -111,7 +114,10 @@ sylius_admin_order_payment_refund:
state_machine:
graph: sylius_payment
transition: refund
redirect: referer
redirect:
route: sylius_admin_order_show
parameters:
id: $orderId
flash: sylius.payment.refunded
sylius_admin_order_shipment_ship:
@ -129,7 +135,10 @@ sylius_admin_order_shipment_ship:
state_machine:
graph: sylius_shipment
transition: ship
redirect: referer
redirect:
route: sylius_admin_order_show
parameters:
id: $orderId
section: admin
permission: true
form: Sylius\Bundle\AdminBundle\Form\Type\ShipmentShipType
@ -144,3 +153,5 @@ sylius_admin_order_resend_confirmation_email:
methods: [GET]
defaults:
_controller: Sylius\Bundle\AdminBundle\Action\ResendOrderConfirmationEmailAction
_sylius:
redirect: sylius_admin_order_show

View file

@ -25,5 +25,5 @@ sylius_admin_payment_complete:
state_machine:
graph: sylius_payment
transition: complete
redirect: referer
redirect: sylius_admin_payment_index
flash: sylius.payment.completed

View file

@ -28,7 +28,7 @@ sylius_admin_product_review_accept:
state_machine:
graph: sylius_product_review
transition: accept
redirect: referer
redirect: sylius_admin_product_review_index
flash: sylius.review.accept
sylius_admin_product_review_reject:
@ -41,5 +41,5 @@ sylius_admin_product_review_reject:
state_machine:
graph: sylius_product_review
transition: reject
redirect: referer
redirect: sylius_admin_product_review_index
flash: sylius.review.reject

View file

@ -72,7 +72,9 @@ sylius_admin_product_variant_bulk_delete:
_controller: sylius.controller.product_variant::bulkDeleteAction
_sylius:
section: admin
redirect: referer
redirect:
route: sylius_admin_product_variant_index
parameters: { productId: $productId }
permission: true
repository:
method: findById
@ -85,7 +87,9 @@ sylius_admin_product_variant_delete:
_controller: sylius.controller.product_variant::deleteAction
_sylius:
section: admin
redirect: referer
redirect:
route: sylius_admin_product_variant_index
parameters: { productId: $productId }
permission: true
repository:
method: findOneByIdAndProductId

View file

@ -80,7 +80,9 @@ sylius_admin_promotion_coupon_bulk_delete:
_controller: sylius.controller.promotion_coupon::bulkDeleteAction
_sylius:
section: admin
redirect: referer
redirect:
route: sylius_admin_promotion_coupon_index
parameters: { promotionId: $promotionId }
permission: true
paginate: false
repository:
@ -94,5 +96,7 @@ sylius_admin_promotion_coupon_delete:
_controller: sylius.controller.promotion_coupon::deleteAction
_sylius:
section: admin
redirect: referer
redirect:
route: sylius_admin_promotion_coupon_index
parameters: { promotionId: $promotionId }
permission: true

View file

@ -25,7 +25,7 @@ sylius_admin_shipment_ship:
state_machine:
graph: sylius_shipment
transition: ship
redirect: referer
redirect: sylius_admin_shipment_index
flash: sylius.shipment.shipped
form: Sylius\Bundle\AdminBundle\Form\Type\ShipmentShipType

View file

@ -5,5 +5,7 @@ sylius_admin_shop_user_delete:
_controller: sylius.controller.shop_user::deleteAction
_sylius:
section: admin
redirect: referer
redirect:
route: sylius_admin_customer_show
parameters: { id: $customerId }
permission: true

View file

@ -47,6 +47,7 @@
<argument type="service" id="sylius.command_dispatcher.resend_order_confirmation_email" />
<argument type="service" id="security.csrf.token_manager" />
<argument type="service" id="request_stack" />
<argument type="service" id="router" />
</service>
<service id="Sylius\Bundle\AdminBundle\Action\ResendShipmentConfirmationEmailAction" public="true">

View file

@ -69,6 +69,8 @@ final class ContactController
$contactEmail = $channel->getContactEmail();
$redirectRoute = $this->getSyliusAttribute($request, 'redirect', 'referer');
if (null === $contactEmail) {
$errorMessage = $this->getSyliusAttribute(
$request,
@ -80,7 +82,7 @@ final class ContactController
$flashBag = $request->getSession()->getBag('flashes');
$flashBag->add('error', $errorMessage);
return new RedirectResponse($request->headers->get('referer'));
return new RedirectResponse($this->router->generate($redirectRoute));
}
$localeCode = $this->localeContext->getLocaleCode();
@ -96,8 +98,6 @@ final class ContactController
$flashBag = $request->getSession()->getBag('flashes');
$flashBag->add('success', $successMessage);
$redirectRoute = $this->getSyliusAttribute($request, 'redirect', 'referer');
return new RedirectResponse($this->router->generate($redirectRoute));
}

View file

@ -6,6 +6,8 @@ sylius_shop_user_request_verification_token:
methods: [POST]
defaults:
_controller: sylius.controller.shop_user::requestVerificationTokenAction
_sylius:
redirect: sylius_shop_account_dashboard
sylius_shop_user_verification:
path: /verify/{token}