fix: adds warning for torrentio rate limit
This commit is contained in:
@@ -15,6 +15,18 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@layer components {
|
||||||
|
.alert {
|
||||||
|
@apply text-white text-sm min-w-[250px] border px-4 py-3 rounded-md
|
||||||
|
}
|
||||||
|
.alert-success {
|
||||||
|
@apply bg-green-950 hover:bg-green-900 border-green-500
|
||||||
|
}
|
||||||
|
.alert-warning {
|
||||||
|
@apply bg-yellow-500/70 hover:bg-yellow-600 border-yellow-400 text-black
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/* Prevent scrolling while dialog is open */
|
/* Prevent scrolling while dialog is open */
|
||||||
body:has(dialog[data-dialog-target="dialog"][open]) {
|
body:has(dialog[data-dialog-target="dialog"][open]) {
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
|
|||||||
@@ -62,6 +62,7 @@ final class TorrentioController extends AbstractController
|
|||||||
]);
|
]);
|
||||||
});
|
});
|
||||||
} catch (TorrentioRateLimitException $exception) {
|
} catch (TorrentioRateLimitException $exception) {
|
||||||
|
$this->broadcaster->alert('Warning', 'Torrentio has rate limited your requests. Please wait a few minutes before trying again.', 'warning');
|
||||||
return $this->render('bare.html.twig',
|
return $this->render('bare.html.twig',
|
||||||
[],
|
[],
|
||||||
new Response('Too many requests',
|
new Response('Too many requests',
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ readonly class Broadcaster
|
|||||||
private RequestStack $requestStack,
|
private RequestStack $requestStack,
|
||||||
) {}
|
) {}
|
||||||
|
|
||||||
public function alert(string $title, string $message): void
|
public function alert(string $title, string $message, string $type = "success"): void
|
||||||
{
|
{
|
||||||
$userAlertTopic = $this->requestStack->getCurrentRequest()->getSession()->get('mercure_alert_topic');
|
$userAlertTopic = $this->requestStack->getCurrentRequest()->getSession()->get('mercure_alert_topic');
|
||||||
$update = new Update(
|
$update = new Update(
|
||||||
@@ -26,6 +26,7 @@ readonly class Broadcaster
|
|||||||
'alert_id' => uniqid(),
|
'alert_id' => uniqid(),
|
||||||
'title' => $title,
|
'title' => $title,
|
||||||
'message' => $message,
|
'message' => $message,
|
||||||
|
'type' => $type,
|
||||||
])
|
])
|
||||||
);
|
);
|
||||||
$this->hub->publish($update);
|
$this->hub->publish($update);
|
||||||
|
|||||||
@@ -13,6 +13,8 @@ module.exports = {
|
|||||||
"bg-orange-400",
|
"bg-orange-400",
|
||||||
"bg-blue-600",
|
"bg-blue-600",
|
||||||
"bg-rose-600",
|
"bg-rose-600",
|
||||||
|
"alert-success",
|
||||||
|
"alert-warning",
|
||||||
"min-w-64",
|
"min-w-64",
|
||||||
"rotate-180",
|
"rotate-180",
|
||||||
"-rotate-180",
|
"-rotate-180",
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
<turbo-stream action="prepend" target="alert_list">
|
<turbo-stream action="prepend" target="alert_list">
|
||||||
<template>
|
<template>
|
||||||
<twig:Alert :title="title|default('')" :message="message" :alert_id="alert_id" data-controller="alert" />
|
<twig:Alert :title="title|default('')" :message="message" :alert_id="alert_id" type="{{ type|default('success') }}" data-controller="alert" />
|
||||||
</template>
|
</template>
|
||||||
</turbo-stream>
|
</turbo-stream>
|
||||||
|
|||||||
@@ -1,7 +1,5 @@
|
|||||||
<li {{ attributes }} id="alert_{{ alert_id }}" class="
|
<li {{ attributes }} id="alert_{{ alert_id }}"
|
||||||
text-white bg-green-950 text-sm min-w-[250px]
|
class="alert alert-{{ type|default('success') }}"
|
||||||
hover:bg-green-900 border border-green-500 px-4 py-3
|
|
||||||
rounded-md"
|
|
||||||
role="alert"
|
role="alert"
|
||||||
>
|
>
|
||||||
<div class="flex items-center">
|
<div class="flex items-center">
|
||||||
|
|||||||
Reference in New Issue
Block a user