From c19a700662fcdc14af07fe8fd6abaf56b5293064 Mon Sep 17 00:00:00 2001 From: James Cole Date: Tue, 12 Jun 2018 21:41:58 +0200 Subject: [PATCH] Set demo user back to English at login. --- app/Handlers/Events/UserEventHandler.php | 21 +++++++++++++++++++++ app/Providers/EventServiceProvider.php | 1 + 2 files changed, 22 insertions(+) diff --git a/app/Handlers/Events/UserEventHandler.php b/app/Handlers/Events/UserEventHandler.php index e953e039d1..c0b6acaa5d 100644 --- a/app/Handlers/Events/UserEventHandler.php +++ b/app/Handlers/Events/UserEventHandler.php @@ -108,6 +108,27 @@ class UserEventHandler return true; } + /** + * @param Login $event + * + * @return bool + */ + function demoUserBackToEnglish(Login $event): bool + { + /** @var UserRepositoryInterface $repository */ + $repository = app(UserRepositoryInterface::class); + + /** @var User $user */ + $user = $event->user; + if ($repository->hasRole($user, 'demo')) { + // set user back to English. + app('preferences')->setForUser($user, 'language', 'en_US'); + app('preferences')->mark(); + } + + return true; + } + /** * @param UserChangedEmail $event * diff --git a/app/Providers/EventServiceProvider.php b/app/Providers/EventServiceProvider.php index 352e357d22..9e0a82dcc5 100644 --- a/app/Providers/EventServiceProvider.php +++ b/app/Providers/EventServiceProvider.php @@ -64,6 +64,7 @@ class EventServiceProvider extends ServiceProvider // is a User related event. Login::class => [ 'FireflyIII\Handlers\Events\UserEventHandler@checkSingleUserIsAdmin', + 'FireflyIII\Handlers\Events\UserEventHandler@demoUserBackToEnglish', ], RequestedVersionCheckStatus::class => [