diff options
author | Richard Steinmetz <richard@steinmetz.cloud> | 2022-03-22 16:02:09 +0300 |
---|---|---|
committer | Richard Steinmetz <richard@steinmetz.cloud> | 2022-03-24 18:35:03 +0300 |
commit | 17e1ab053f0bd7c18dad4fe5d66692f9c6d77b15 (patch) | |
tree | f615e29ce5a52be60242e8a40b4e6682b627e7bc /lib/Controller | |
parent | 791520d41cd98b11d55cc6f55b7592f5f722b484 (diff) |
Provide outbox messages as initial state
Signed-off-by: Richard Steinmetz <richard@steinmetz.cloud>
Diffstat (limited to 'lib/Controller')
-rw-r--r-- | lib/Controller/PageController.php | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/lib/Controller/PageController.php b/lib/Controller/PageController.php index b632f57c7..2117bdb23 100644 --- a/lib/Controller/PageController.php +++ b/lib/Controller/PageController.php @@ -7,6 +7,7 @@ declare(strict_types=1); * @author Lukas Reschke <lukas@owncloud.com> * @author Thomas Müller <thomas.mueller@tmit.eu> * @author Timo Witte <timo.witte@gmail.com> + * @author Richard Steinmetz <richard@steinmetz.cloud> * * Mail * @@ -28,6 +29,7 @@ namespace OCA\Mail\Controller; use OCA\Mail\Contracts\IMailManager; use OCA\Mail\Contracts\IUserPreferences; +use OCA\Mail\Db\LocalMessageMapper; use OCA\Mail\Db\TagMapper; use OCA\Mail\Service\AccountService; use OCA\Mail\Service\AliasesService; @@ -79,6 +81,9 @@ class PageController extends Controller { /** @var LoggerInterface */ private $logger; + /** @var LocalMessageMapper */ + private $localMessageMapper; + public function __construct(string $appName, IRequest $request, IURLGenerator $urlGenerator, @@ -91,7 +96,8 @@ class PageController extends Controller { IMailManager $mailManager, TagMapper $tagMapper, IInitialState $initialStateService, - LoggerInterface $logger) { + LoggerInterface $logger, + LocalMessageMapper $localMessageMapper) { parent::__construct($appName, $request); $this->urlGenerator = $urlGenerator; @@ -105,6 +111,7 @@ class PageController extends Controller { $this->tagMapper = $tagMapper; $this->initialStateService = $initialStateService; $this->logger = $logger; + $this->localMessageMapper = $localMessageMapper; } /** @@ -169,6 +176,11 @@ class PageController extends Controller { $this->config->getUserValue($user->getUID(), 'settings', 'email', '') ); + $this->initialStateService->provideInitialState( + 'outbox-messages', + $this->localMessageMapper->getAllForUser($user->getUID()) + ); + $csp = new ContentSecurityPolicy(); $csp->addAllowedFrameDomain('\'self\''); $response->setContentSecurityPolicy($csp); |