aboutsummaryrefslogtreecommitdiffstats
path: root/lib/private/AppFramework/Middleware/AdditionalScriptsMiddleware.php
diff options
context:
space:
mode:
authorMorris Jobke <hey@morrisjobke.de>2020-07-15 19:50:01 +0200
committerGitHub <noreply@github.com>2020-07-15 19:50:01 +0200
commitfc41810d2f95174fd3464d480ef789175ad2c837 (patch)
tree4ca7e75188e9f1a2b9518a27dc9259a1481e1871 /lib/private/AppFramework/Middleware/AdditionalScriptsMiddleware.php
parentaed5eb55af64ad08f591adc09cbcd8abfa993ec1 (diff)
parent7d7ba61625b21984eb01db895081d964a73ea934 (diff)
downloadnextcloud-server-fc41810d2f95174fd3464d480ef789175ad2c837.tar.gz
nextcloud-server-fc41810d2f95174fd3464d480ef789175ad2c837.zip
Merge pull request #21822 from nextcloud/enh/events/additionalscripts
Add real events to load additionalscripts
Diffstat (limited to 'lib/private/AppFramework/Middleware/AdditionalScriptsMiddleware.php')
-rw-r--r--lib/private/AppFramework/Middleware/AdditionalScriptsMiddleware.php20
1 files changed, 15 insertions, 5 deletions
diff --git a/lib/private/AppFramework/Middleware/AdditionalScriptsMiddleware.php b/lib/private/AppFramework/Middleware/AdditionalScriptsMiddleware.php
index b9f238eecb3..619432be78f 100644
--- a/lib/private/AppFramework/Middleware/AdditionalScriptsMiddleware.php
+++ b/lib/private/AppFramework/Middleware/AdditionalScriptsMiddleware.php
@@ -27,24 +27,29 @@ declare(strict_types=1);
namespace OC\AppFramework\Middleware;
+use OCP\AppFramework\Http\Events\BeforeTemplateRenderedEvent;
use OCP\AppFramework\Http\Response;
use OCP\AppFramework\Http\StandaloneTemplateResponse;
use OCP\AppFramework\Http\TemplateResponse;
use OCP\AppFramework\Middleware;
use OCP\AppFramework\PublicShareController;
use OCP\EventDispatcher\GenericEvent;
+use OCP\EventDispatcher\IEventDispatcher;
use OCP\IUserSession;
use Symfony\Component\EventDispatcher\EventDispatcherInterface;
class AdditionalScriptsMiddleware extends Middleware {
/** @var EventDispatcherInterface */
- private $dispatcher;
+ private $legacyDispatcher;
/** @var IUserSession */
private $userSession;
+ /** @var IEventDispatcher */
+ private $dispatcher;
- public function __construct(EventDispatcherInterface $dispatcher, IUserSession $userSession) {
- $this->dispatcher = $dispatcher;
+ public function __construct(EventDispatcherInterface $legacyDispatcher, IUserSession $userSession, IEventDispatcher $dispatcher) {
+ $this->legacyDispatcher = $legacyDispatcher;
$this->userSession = $userSession;
+ $this->dispatcher = $dispatcher;
}
public function afterController($controller, $methodName, Response $response): Response {
@@ -57,11 +62,16 @@ class AdditionalScriptsMiddleware extends Middleware {
}
if ($response instanceof TemplateResponse) {
- $this->dispatcher->dispatch(TemplateResponse::EVENT_LOAD_ADDITIONAL_SCRIPTS, new GenericEvent());
+ $this->legacyDispatcher->dispatch(TemplateResponse::EVENT_LOAD_ADDITIONAL_SCRIPTS, new GenericEvent());
if (!($response instanceof StandaloneTemplateResponse) && $this->userSession->isLoggedIn()) {
- $this->dispatcher->dispatch(TemplateResponse::EVENT_LOAD_ADDITIONAL_SCRIPTS_LOGGEDIN, new GenericEvent());
+ $this->legacyDispatcher->dispatch(TemplateResponse::EVENT_LOAD_ADDITIONAL_SCRIPTS_LOGGEDIN, new GenericEvent());
+ $isLoggedIn = true;
+ } else {
+ $isLoggedIn = false;
}
+
+ $this->dispatcher->dispatchTyped(new BeforeTemplateRenderedEvent($isLoggedIn));
}
return $response;