Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 4 additions & 1 deletion APPLICATION_DESCRIPTION.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,12 @@

SpellBot helps you find _Magic: The Gathering_ games on [Convoke][convoke], [Girudo][girudo], [Playgroup Live][playgroup], [EDHLAB][edhlab], and [Table Stream][tablestream]. Just looking to play a game of Commander? Run the command `/lfg` and SpellBot will help you out!

Visit **[queues.spellbot.io][queues]**, where you can log in with Discord to browse the games currently queuing across every server, filter them down to just the communities you play in, set up notifications so you're pinged when a game you care about is forming, and look back through your own game history and records.

## **🔭 Where to Play?**

[These communities][where-to-play] are using SpellBot to play Magic! Maybe one of them is right for
you?
you? You can also **[see live games][queues]** waiting for you to join!

## **🎤 Feedback**

Expand All @@ -31,5 +33,6 @@ The continued operation of SpellBot is supported by <a href="https://www.playedh
[mit]: https://opensource.org/licenses/MIT
[patreon]: https://www.patreon.com/lexicalunit
[playgroup]: https://playgroup.gg/
[queues]: https://queues.spellbot.io
[tablestream]: https://table-stream.com/
[where-to-play]: https://spellbot.io/#where-to-play
12 changes: 12 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,18 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.

## [Unreleased]

### Added

- Added tests for i18n configuration files.

### Changed

- More unified style across the website.

### Fixed

- Fixed logout for admin users.

## [v21.4.1](https://github.com/lexicalunit/spellbot/releases/tag/v21.4.1) - 2026-07-14

### Changed
Expand Down
5 changes: 2 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,11 +45,11 @@ SpellBot helps you find _Magic: The Gathering_ games on [Convoke][convoke], [Gir
/>
</p>

SpellBot uses [Discord slash commands][slash]. Each command provides its own help documentation that you can view directly within Discord itself before running the command. Take a look and see what's available by typing `/` and browsing the commands for SpellBot!
Visit **[queues.spellbot.io][queues]**, where you can log in with Discord to browse the games currently queuing across every server, filter them down to just the communities you play in, set up notifications so you're pinged when a game you care about is forming, and look back through your own game history and records.

## 🔭 Where to Play?

SpellBot helps Discord servers to build communities around playing Magic online. Please check out the following servers to find games and connect with other players. You can also [see live games now][queues] waiting for you to join!
SpellBot helps Discord servers to build communities around playing Magic online. Please check out the following servers to find games and connect with other players. You can also **[see live games][queues]** waiting for you to join!

<div align="center">
<!-- SERVERS BEGIN -->
Expand Down Expand Up @@ -183,7 +183,6 @@ Any usage of SpellBot implies that you accept the following policies.
[queues]: https://queues.spellbot.io
[ruff-badge]: https://img.shields.io/endpoint?url=https://raw.githubusercontent.com/astral-sh/ruff/main/assets/badge/v2.json
[ruff]: https://github.com/astral-sh/ruff
[slash]: https://discord.com/blog/slash-commands-are-here
[status-badge]: https://img.shields.io/badge/bot-status-green
[status]: https://status.spellbot.io
[tablestream]: https://table-stream.com/
Expand Down
9 changes: 8 additions & 1 deletion docs/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,13 @@
width="600"
alt="/lfg"
/>
<p>
Visit <b><a href="https://queues.spellbot.io">queues.spellbot.io</a></b>, where you
can log in with Discord to browse the games currently queuing across every
server, filter them down to just the communities you play in, set up
notifications so you're pinged when a game you care about is forming, and
look back through your own game history and records.
</p>
</section>

<section id="where-to-play" class="level2">
Expand All @@ -78,7 +85,7 @@ <h2>🔭 Where to Play?</h2>
SpellBot helps Discord servers to build communities around playing Magic
online. Please check out the following servers to find games and connect
with other players. You can also
<a href="https://queues.spellbot.io">see live games now</a> waiting for you
<a href="https://queues.spellbot.io">see live games</a> waiting for you
to join!
</p>
<!-- SERVERS BEGIN -->
Expand Down
56 changes: 6 additions & 50 deletions src/spellbot/translations/da.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ da:
players_hidden_one: "**%{count} spillernavn er skjult**"
players_hidden_many: "**%{count} spillernavne er skjulte**"
format: "Format"
bracket: "Turneringstræ"
bracket: "Niveau"
started_at: "Startede kl."
updated_at: "Opdateret kl."
voice_channel: "🔊 Foreslået stemmekanal"
Expand Down Expand Up @@ -84,53 +84,14 @@ da:
button:
join: "Slut dig til denne kamp!"
leave: "Forlad"
toggle_links: "Slå mellem offentlige links til/fra"
toggle_voice: "Slå Opret stemmekanaler til/fra"
toggle_bitrate: "Slå Brug maks. bithastighed til/fra"
refresh: "Genindlæs"
# Admin action messages
admin:
no_game_found: "Der er ikke nogen kamp med det ID."
invalid_id: "Ugyldigt ID."
done: "Færdig."
invalid_page: "Ugyldig side."
channels_title: "Konfiguration for kanaler i %{guild}"
channels_default: "**Alle kanaler på denne server har en standardkonfiguration.**\n\nMan kan bruge kanalspecifikke kommandoer `/set` i en kanal til at ændre den pågældende kanals konfiguration."
awards_title: "SpellBot-spillerpriser for %{guild}"
awards_empty: "**Der er ikke konfigureret nogen priser på denne server.**\n\nFor at tilføje priser skal du bruge kommandoen `/award add`."
setup_title: "SpellBot-opsætning for %{guild}"
setup_description: "SpellBot hjælper dit fællesskab med at finde og spille Magic: De samlende spil sammen. For at konfigurere din server, kanaler og spiller priser, besøg SpellBot dashboard.\n\n[Konfigurer SpellBot →](%{link})"
field_motd: "MOTD"
field_none: "Ingen"
field_public_links: "Offentlige links"
field_voice_create: "Opret stemmekanaler"
field_max_bitrate: "Brug maks. bitrate"
"on": "✅ Til"
"off": "❌ Fra"
page: "side %{current} af %{total}"
award_add_conflict: "Din pris kan ikke være både bekræftet og ikke-bekræftet."
award_message_too_long: "Din besked kan ikke være længere end %{max_length} tegn."
award_zero_games: "Man kan ikke oprette en pris for ingen spillede kampe."
award_added: "Pris tilføjet!"
award_added_view: "Du kan få vist alle priser med kommandoen `/awards`."
award_deleted: "Pris slettet!"
voice_create_on: "Oprettelse af stemmekanaler er aktiveret for denne server. Det er ikke nødvendigt at foreslå eksisterende stemmekanaler. Nye kanaler vil blive oprettet automatisk."
suggest_vc_set: 'Foreslået præfiks for stemmekanalernes kategori sat til "%{category}".'
suggest_vc_off: "Foreslåede stemmekanaler slået fra."
motd_updated: "Dagens budskab er opdateret."
default_seats_set: "Standardpladser sat til %{seats} for denne kanal."
default_format_set: "Standardformatet sat til %{format} for denne kanal."
default_bracket_set: "Standardturneringstræ sat til %{bracket} for denne kanal."
default_service_set: "Standardservice sat til %{service} for denne kanal."
auto_verify_set: "Automatisk bekræftelse sat til %{setting} for denne kanal."
verified_only_set: "Bekræftet kun sat til %{setting} for denne kanal."
unverified_only_set: "Ikke-bekræftet kun sat til %{setting} for denne kanal."
channel_motd_set: "Dagens besked for denne kanal er sat til: %{setting}"
channel_extra_set: "Ekstra besked for denne kanal er sat til: %{setting}"
voice_category_set: "Stemmekategoriens præfiks for denne kanal er blevet sat til: %{setting}"
delete_expired_set: "Slet udløbne indstillinger for denne kanal er sat til: %{setting}"
blind_games_set: "Skjulte spillernavne for denne kanal er indstillet til: %{setting}"
voice_invite_set: "Indstillingen for stemmeinvitation for denne kanal er sat til: %{setting}"
user_move_error: "Fejl: %{error}"
user_moved: "Bruger %{from_user} er blevet flyttet til %{to_user}"
expire_dequeued: "├── %{count} spillere fjernet fra køen"
Expand Down Expand Up @@ -171,20 +132,13 @@ da:
mythic_track_off: "❌ Mythic Track er blevet slået **fra** for denne server. Kør denne kommando igen for at slå det til igen. Bemærk, at deaktivering af denne funktion _ikke_ fjerner eksisterende Mythic Track-data."
# Award display
award:
line_every: "• **ID %{id}** — _hver %{count} kamp_— %{action} `@%{role}`%{verify_status}— %{message}"
line_after: "• **ID %{id}** — _efter %{count} kamp_— %{action} `@%{role}`%{verify_status}— %{message}"
action_give: "giv"
action_take: "tag"
verified_only: "kun bekræftede"
unverified_only: "kun ikke-bekræftede"
# Block action messages
block:
self_block: "Du kan ikke blokere dig selv."
blocked: "<@%{user_id}> er blevet blokeret."
unblocked: "<@%{user_id}> er ikke længere blokeret."
list_title: "Blokerede brugere"
list_empty: "Du har ingen blokerede brugere."
list_page: "Side %{current} af %{total}"
manage_message: "Du kan se og administrere dine blokerede brugere fra din profilside.\n\n[Åbn din profil på spellbot.io](%{link})"
# Leave action messages
leave:
Expand Down Expand Up @@ -244,6 +198,11 @@ da:
server_details: "Serverdetaljer"
notification_preferences: "Notifikationsindstillinger"
back_to: "← Tilbage til %{name}"
log_in: "Log ind"
log_out: "Log ud"
logged_in_as: "Logget ind som %{name}"
site_nav_aria: "Webstedsnavigation"
server_nav_aria: "Servernavigation"
common:
powered_by: "Drevet af %{link}."
generated_by: "Genereret af %{link}"
Expand Down Expand Up @@ -303,9 +262,6 @@ da:
all_brackets: "Alle niveauer"
all_languages: "Alle sprog"
only_played: "Kun servere, du har spillet på"
logged_in_as: "Logget ind som %{name}"
log_out: "Log ud"
login_to_filter: "Log ind med Discord for at filtrere efter dine servere"
no_match: "Ingen køer matcher de valgte filtre."
your_servers: "Dine servere"
setup_notifications: "Konfigurer notifikationer"
Expand Down
56 changes: 6 additions & 50 deletions src/spellbot/translations/de.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ de:
players_hidden_one: "**%{count} Spielername ist ausgeblendet**"
players_hidden_many: "**%{count} Spielername sind ausgeblendet**"
format: "Format"
bracket: "Turnierbaum"
bracket: "Stufe"
started_at: "Gestartet am"
updated_at: "Aktualisiert am"
voice_channel: "🔊 Empfohlener Sprachkanal"
Expand Down Expand Up @@ -84,53 +84,14 @@ de:
button:
join: "Diesem Spiel beitreten!"
leave: "Verlassen"
toggle_links: "Öffentliche Links umschalten"
toggle_voice: "Erstellen von Sprachkanälen umschalten"
toggle_bitrate: "Verwendung max. Bitrate umschalten"
refresh: "Aktualisieren"
# Admin action messages
admin:
no_game_found: "Es gibt kein Spiel mit dieser ID."
invalid_id: "Ungültige ID."
done: "Fertig."
invalid_page: "Ungültige Seite."
channels_title: "Konfiguration für Kanäle in %{guild}"
channels_default: "**Alle Kanäle auf diesem Server haben eine Standardeinstellung.**\n\nDu kannst Kanalspezifische `/set`-Befehle innerhalb eines Kanals verwenden, um die Konfiguration dieses Kanals zu ändern."
awards_title: "SpellBot-Spieler-Auszeichnungen für %{guild}"
awards_empty: "**Auf diesem Server sind keine Auszeichnungen konfiguriert.**\n\nUm Auszeichnungen hinzuzufügen, verwenden Sie den Befehl `/award add`."
setup_title: "SpellBot-Einrichtung für %{guild}"
setup_description: "SpellBot hilft deiner Community zusammen Magic: The Gathering Spiele zu finden und zu spielen. Um deinen Server, Kanäle und Spieler-Auszeichnungen zu konfigurieren, besuche das SpellBot-Dashboard.\n\n[SpellBot konfigurieren → ](%{link})"
field_motd: "MOTD"
field_none: "Keine"
field_public_links: "Öffentliche Links"
field_voice_create: "Sprachkanäle erstellen"
field_max_bitrate: "Max. Bitrate verwenden"
"on": "✅ An"
"off": "❌ Aus"
page: "Seite %{current} von %{total}"
award_add_conflict: "Ihre Auszeichnung kann nicht gleichzeitig verifiziert und nicht verifiziert sein."
award_message_too_long: "Ihre Nachricht darf nicht länger als %{max_length} Zeichen sein."
award_zero_games: "Sie können keine Auszeichnung für Null gespielte Spiele erstellen."
award_added: "Auszeichnung hinzugefügt!"
award_added_view: "Mit dem Befehl `/awards` können Sie alle Auszeichnungen anzeigen lassen."
award_deleted: "Auszeichnung gelöscht!"
voice_create_on: "Das Erstellen von Sprachkanälen ist für diesen Server aktiviert. Es besteht keine Notwendigkeit, bestehende Sprachkanäle vorzuschlagen. Neue Kanäle werden automatisch erstellt."
suggest_vc_set: 'Kategorie-Präfix für vorgeschlagene Sprachkanäle auf „%{category}“ gesetzt.'
suggest_vc_off: "Empfohlene Sprachkanäle ausgeschaltet."
motd_updated: "Nachricht des Tages aktualisiert."
default_seats_set: "Standardsitze für diesen Kanal auf %{seats} gesetzt."
default_format_set: "Standardformat für diesen Kanal auf %{format} gesetzt."
default_bracket_set: "Standardturnierbaum für diesen Kanal auf %{bracket} gesetzt."
default_service_set: "Standardservice für diesen Kanal auf %{service} gesetzt."
auto_verify_set: "Auto-Verifizierung für diesen Kanal auf %{setting} gesetzt."
verified_only_set: "Nur-verifiziert für diesen Kanal auf %{setting} gesetzt."
unverified_only_set: "Nur-nicht-verifiziert für diesen Kanal auf %{setting} gesetzt."
channel_motd_set: "Nachricht des Tages wurde für diesen Kanal festgelegt: %{setting}"
channel_extra_set: "Extra-Nachricht wurde für diesen Kanal festgelegt: %{setting}"
voice_category_set: "Präfix für Sprachkategorie für diesen Kanal wurde festgelegt: %{setting}"
delete_expired_set: "Abgelaufen-löschen-Einstellung wurde für diesen Kanal festgelegt: %{setting}"
blind_games_set: "Ausgeblendete Spielernamen wurden für diesen Kanal festgelegt: %{setting}"
voice_invite_set: "Spracheinladungseinstellungen wurde für diesen Kanal festgelegt: %{setting}"
user_move_error: "Fehler: %{error}"
user_moved: "Benutzer %{from_user} wurde nach %{to_user} verschoben"
expire_dequeued: "├── %{count} Spieler aus Warteschlange entfernt"
Expand Down Expand Up @@ -171,20 +132,13 @@ de:
mythic_track_off: "❌ Mythic Track wurde für diesen Server **deaktiviert**. Führen Sie diesen Befehl erneut aus, um die Funktion wieder zu aktivieren. Beachten Sie, dass durch die Deaktivierung dieser Funktion vorhandene Mythic-Track-Daten _nicht_ gelöscht werden."
# Award display
award:
line_every: "• **ID %{id}** – _alle %{count} Spiele_ – %{action} `@%{role}`%{verify_status} – %{message}"
line_after: "• **ID %{id}** – _nach %{count} Spielen_ – %{action} `@%{role}`%{verify_status} – %{message}"
action_give: "geben"
action_take: "nehmen"
verified_only: "nur verifiziert"
unverified_only: "nur nicht verifiziert"
# Block action messages
block:
self_block: "Sie können sich nicht selbst blockieren."
blocked: "<@%{user_id}> wurde blockiert."
unblocked: "<@%{user_id}> wird nicht mehr blockiert."
list_title: "Blockierte Benutzer"
list_empty: "Sie haben keine blockierten Benutzer."
list_page: "Seite %{current} von %{total}"
manage_message: "Du kannst deine gesperrten Benutzer von deiner Profilseite sehen und verwalten.\n\n[Öffne dein Profil auf spellbot.io](%{link})"
# Leave action messages
leave:
Expand Down Expand Up @@ -244,6 +198,11 @@ de:
server_details: "Serverdetails"
notification_preferences: "Benachrichtigungseinstellungen"
back_to: "← Zurück zu %{name}"
log_in: "Anmelden"
log_out: "Abmelden"
logged_in_as: "Angemeldet als %{name}"
site_nav_aria: "Website-Navigation"
server_nav_aria: "Server-Navigation"
common:
powered_by: "Bereitgestellt von %{link}."
generated_by: "Erstellt von %{link}"
Expand Down Expand Up @@ -303,9 +262,6 @@ de:
all_brackets: "Alle Stufen"
all_languages: "Alle Sprachen"
only_played: "Nur Server, auf denen du gespielt hast"
logged_in_as: "Angemeldet als %{name}"
log_out: "Abmelden"
login_to_filter: "Mit Discord anmelden, um nach deinen Servern zu filtern"
no_match: "Keine Warteschlangen entsprechen den ausgewählten Filtern."
your_servers: "Deine Server"
setup_notifications: "Benachrichtigungen einrichten"
Expand Down
Loading