From 84a071a82b92ad0d64129bab93556c743d8d205d Mon Sep 17 00:00:00 2001 From: vedatakd Date: Thu, 6 Aug 2020 12:42:13 +0300 Subject: [PATCH] add SetLang params --- .../src/AdvsModuleServiceProvider.php | 3 +- .../src/Http/Middleware/SetLang.php | 47 +++++++++++++++++++ 2 files changed, 49 insertions(+), 1 deletion(-) create mode 100644 addons/default/visiosoft/advs-module/src/Http/Middleware/SetLang.php diff --git a/addons/default/visiosoft/advs-module/src/AdvsModuleServiceProvider.php b/addons/default/visiosoft/advs-module/src/AdvsModuleServiceProvider.php index 3c2eb285e..a9ca7f186 100644 --- a/addons/default/visiosoft/advs-module/src/AdvsModuleServiceProvider.php +++ b/addons/default/visiosoft/advs-module/src/AdvsModuleServiceProvider.php @@ -10,6 +10,7 @@ use Visiosoft\AdvsModule\Adv\AdvRepository; use Anomaly\Streams\Platform\Model\Advs\AdvsAdvsEntryModel; use Visiosoft\AdvsModule\Adv\AdvModel; use Visiosoft\AdvsModule\Adv\Form\AdvFormBuilder; +use Visiosoft\AdvsModule\Http\Middleware\SetLang; use Visiosoft\AdvsModule\Listener\AddAdvsSettingsScript; use Visiosoft\AdvsModule\Option\Contract\OptionRepositoryInterface; use Visiosoft\AdvsModule\Option\OptionRepository; @@ -231,7 +232,7 @@ class AdvsModuleServiceProvider extends AddonServiceProvider * @type array|null */ protected $middleware = [ - //Visiosoft\AdvsModule\Http\Middleware\ExampleMiddleware::class + SetLang::class, ]; /** diff --git a/addons/default/visiosoft/advs-module/src/Http/Middleware/SetLang.php b/addons/default/visiosoft/advs-module/src/Http/Middleware/SetLang.php new file mode 100644 index 000000000..211b6cf6d --- /dev/null +++ b/addons/default/visiosoft/advs-module/src/Http/Middleware/SetLang.php @@ -0,0 +1,47 @@ +redirect = $redirect; + } + + public function handle(Request $request, Closure $next) + { + + if ($locale = $request->get('_setLang')) { + if ($locale) { + $request->session()->put('_locale', $locale); + } else { + $request->session()->remove('_locale'); + } + + return ($request->has('redirect')) ? $this->redirect->to($request->get('redirect')) : $this->redirect->back(); + } + + return $next($request); + } +}