← Back
Editing: StateChangeRegistryUpdater.php
<?php declare(strict_types=1); /* * SPDX-FileCopyrightText: 2018 Nextcloud GmbH and Nextcloud contributors * SPDX-License-Identifier: AGPL-3.0-only */ namespace OCA\TwoFactorTOTP\Listener; use OCA\TwoFactorTOTP\Event\StateChanged; use OCA\TwoFactorTOTP\Provider\TotpProvider; use OCP\Authentication\TwoFactorAuth\IRegistry; use OCP\EventDispatcher\Event; use OCP\EventDispatcher\IEventListener; /** * @template-implements IEventListener<StateChanged> */ class StateChangeRegistryUpdater implements IEventListener { public function __construct( private IRegistry $registry, private TotpProvider $provider, ) { } public function handle(Event $event): void { if ($event instanceof StateChanged) { if ($event->isEnabled()) { $this->registry->enableProviderFor($this->provider, $event->getUser()); } else { $this->registry->disableProviderFor($this->provider, $event->getUser()); } } } }
Save File
Cancel