fix: displays warning if reald debrid or tmdb keys are missing

This commit is contained in:
2025-07-07 00:14:22 -05:00
parent 8fa06d4462
commit 5c5fa8fde2
7 changed files with 84 additions and 17 deletions

View File

@@ -98,7 +98,8 @@ class PreferencesController extends AbstractController
[
'preferences' => $this->preferencesRepository->findEnabled(),
'languages' => $languages,
'providers' => ProviderList::$providers,
'providers' => ProviderList::getProviders(),
'qualities' => QualityList::getBaseQualities(),
'mediaPreferences' => $mediaPreferences,
'downloadPreferences' => $downloadPreferences,
]

View File

@@ -2,6 +2,8 @@
namespace App\User\Framework\EventListener;
use App\Base\ConfigResolver;
use App\Base\Util\Broadcaster;
use Symfony\Component\EventDispatcher\Attribute\AsEventListener;
use Symfony\Component\HttpFoundation\RequestStack;
use Symfony\Component\Security\Core\Event\AuthenticationSuccessEvent;
@@ -10,12 +12,26 @@ final class LoginSuccessListener
{
public function __construct(
private readonly RequestStack $requestStack,
private readonly ConfigResolver $configResolver,
private readonly Broadcaster $broadcaster,
) {}
#[AsEventListener(event: 'security.authentication.success')]
#[AsEventListener(event: 'security.authentication.success', priority: 20)]
public function setMercureTopics(AuthenticationSuccessEvent $event): void
{
// Set the unique Mercure topic name for the User's alerts
$this->requestStack->getSession()->set('mercure_alert_topic', 'alerts_' . uniqid());
}
#[AsEventListener(event: 'security.authentication.success', priority: 10)]
public function validateConfig(AuthenticationSuccessEvent $event): void
{
// Set the unique Mercure topic name for the User's alerts
$valid = $this->configResolver->validate();
if (false === $valid) {
foreach ($this->configResolver->getMessages() as $message) {
$this->requestStack->getSession()->getFlashBag()->add('warning', $message);
}
}
}
}