fix accessibility issues
All checks were successful
continuous-integration/drone/push Build is passing

This commit is contained in:
Moritz 2025-11-06 18:56:22 +01:00
parent fca8148b99
commit 07cb1ab57c
Signed by: moritz
GPG key ID: 1020A035E5DD0824
6 changed files with 86 additions and 78 deletions

View file

@ -232,61 +232,64 @@ defmodule MvWeb.LinkOidcAccountLive do
~H""" ~H"""
<div class="mx-auto max-w-sm mt-16"> <div class="mx-auto max-w-sm mt-16">
<%!-- Language Selector --%> <%!-- Language Selector --%>
<div class="flex justify-center mb-4"> <nav aria-label={dgettext("auth", "Language selection")} class="flex justify-center mb-4">
<form method="post" action="/set_locale" class="text-sm"> <form method="post" action="/set_locale" class="text-sm">
<input type="hidden" name="_csrf_token" value={Plug.CSRFProtection.get_csrf_token()} /> <input type="hidden" name="_csrf_token" value={Plug.CSRFProtection.get_csrf_token()} />
<select <select
name="locale" name="locale"
onchange="this.form.submit()" onchange="this.form.submit()"
class="select select-sm select-bordered" class="select select-sm select-bordered"
aria-label={dgettext("auth", "Select language")}
> >
<option value="de" selected={Gettext.get_locale() == "de"}>🇩🇪 Deutsch</option> <option value="de" selected={Gettext.get_locale() == "de"}>🇩🇪 Deutsch</option>
<option value="en" selected={Gettext.get_locale() == "en"}>🇬🇧 English</option> <option value="en" selected={Gettext.get_locale() == "en"}>🇬🇧 English</option>
</select> </select>
</form> </form>
</div> </nav>
<.header class="text-center"> <main>
{dgettext("auth", "Link OIDC Account")} <.header class="text-center">
<:subtitle> {dgettext("auth", "Link OIDC Account")}
{dgettext( <:subtitle>
"auth", {dgettext(
"An account with email %{email} already exists. Please enter your password to link your OIDC account.", "auth",
email: @user.email "An account with email %{email} already exists. Please enter your password to link your OIDC account.",
)} email: @user.email
</:subtitle> )}
</.header> </:subtitle>
</.header>
<.form for={@form} id="link-oidc-form" phx-submit="submit" phx-change="validate" class="mt-8"> <.form for={@form} id="link-oidc-form" phx-submit="submit" phx-change="validate" class="mt-8">
<div class="space-y-6"> <div class="space-y-6">
<div> <div>
<.input <.input
field={@form[:password]} field={@form[:password]}
type="password" type="password"
label={dgettext("auth", "Password")} label={dgettext("auth", "Password")}
required required
/> />
</div>
<%= if @error do %>
<div class="rounded-md bg-red-50 p-4">
<p class="text-sm text-red-800">{@error}</p>
</div> </div>
<% end %>
<div> <%= if @error do %>
<.button phx-disable-with={dgettext("auth", "Linking...")} class="w-full"> <div class="rounded-md bg-red-50 p-4">
{dgettext("auth", "Link Account")} <p class="text-sm text-red-800">{@error}</p>
</.button> </div>
<% end %>
<div>
<.button phx-disable-with={dgettext("auth", "Linking...")} class="w-full">
{dgettext("auth", "Link Account")}
</.button>
</div>
</div> </div>
</div> </.form>
</.form>
<div class="mt-4 text-center text-sm"> <div class="mt-4 text-center text-sm">
<.link navigate={~p"/sign-in"} class="text-brand hover:underline"> <.link navigate={~p"/sign-in"} class="text-brand hover:underline">
{dgettext("auth", "Cancel")} {dgettext("auth", "Cancel")}
</.link> </.link>
</div> </div>
</main>
</div> </div>
""" """
end end

View file

@ -36,7 +36,7 @@ msgstr ""
msgid "Need an account?" msgid "Need an account?"
msgstr "" msgstr ""
#: lib/mv_web/live/auth/link_oidc_account_live.ex:266 #: lib/mv_web/live/auth/link_oidc_account_live.ex:268
#, elixir-autogen #, elixir-autogen
msgid "Password" msgid "Password"
msgstr "" msgstr ""
@ -65,12 +65,12 @@ msgstr ""
msgid "Your password has successfully been reset" msgid "Your password has successfully been reset"
msgstr "" msgstr ""
#: lib/mv_web/live/auth/link_oidc_account_live.ex:252 #: lib/mv_web/live/auth/link_oidc_account_live.ex:254
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "An account with email %{email} already exists. Please enter your password to link your OIDC account." msgid "An account with email %{email} already exists. Please enter your password to link your OIDC account."
msgstr "" msgstr ""
#: lib/mv_web/live/auth/link_oidc_account_live.ex:287 #: lib/mv_web/live/auth/link_oidc_account_live.ex:289
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Cancel" msgid "Cancel"
msgstr "" msgstr ""
@ -85,17 +85,17 @@ msgstr ""
msgid "Invalid session. Please try again." msgid "Invalid session. Please try again."
msgstr "" msgstr ""
#: lib/mv_web/live/auth/link_oidc_account_live.ex:279 #: lib/mv_web/live/auth/link_oidc_account_live.ex:281
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Link Account" msgid "Link Account"
msgstr "" msgstr ""
#: lib/mv_web/live/auth/link_oidc_account_live.ex:250 #: lib/mv_web/live/auth/link_oidc_account_live.ex:252
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Link OIDC Account" msgid "Link OIDC Account"
msgstr "" msgstr ""
#: lib/mv_web/live/auth/link_oidc_account_live.ex:278 #: lib/mv_web/live/auth/link_oidc_account_live.ex:280
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Linking..." msgid "Linking..."
msgstr "" msgstr ""
@ -130,3 +130,13 @@ msgstr ""
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "This OIDC account is already linked to another user. Please contact support." msgid "This OIDC account is already linked to another user. Please contact support."
msgstr "" msgstr ""
#: lib/mv_web/live/auth/link_oidc_account_live.ex:235
#, elixir-autogen, elixir-format
msgid "Language selection"
msgstr ""
#: lib/mv_web/live/auth/link_oidc_account_live.ex:242
#, elixir-autogen, elixir-format
msgid "Select language"
msgstr ""

View file

@ -35,7 +35,7 @@ msgstr "Falls diese*r Benutzer*in bekannt ist, wird jetzt eine Email mit einer A
msgid "Need an account?" msgid "Need an account?"
msgstr "Konto anlegen?" msgstr "Konto anlegen?"
#: lib/mv_web/live/auth/link_oidc_account_live.ex:266 #: lib/mv_web/live/auth/link_oidc_account_live.ex:268
#, elixir-autogen #, elixir-autogen
msgid "Password" msgid "Password"
msgstr "Passwort" msgstr "Passwort"
@ -64,12 +64,12 @@ msgstr "Anmelden..."
msgid "Your password has successfully been reset" msgid "Your password has successfully been reset"
msgstr "Das Passwort wurde erfolgreich zurückgesetzt" msgstr "Das Passwort wurde erfolgreich zurückgesetzt"
#: lib/mv_web/live/auth/link_oidc_account_live.ex:252 #: lib/mv_web/live/auth/link_oidc_account_live.ex:254
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "An account with email %{email} already exists. Please enter your password to link your OIDC account." msgid "An account with email %{email} already exists. Please enter your password to link your OIDC account."
msgstr "Ein Konto mit der E-Mail %{email} existiert bereits. Bitte geben Sie Ihr Passwort ein, um Ihr OIDC-Konto zu verknüpfen." msgstr "Ein Konto mit der E-Mail %{email} existiert bereits. Bitte geben Sie Ihr Passwort ein, um Ihr OIDC-Konto zu verknüpfen."
#: lib/mv_web/live/auth/link_oidc_account_live.ex:287 #: lib/mv_web/live/auth/link_oidc_account_live.ex:289
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Cancel" msgid "Cancel"
msgstr "Abbrechen" msgstr "Abbrechen"
@ -84,17 +84,17 @@ msgstr "Falsches Passwort. Bitte versuchen Sie es erneut."
msgid "Invalid session. Please try again." msgid "Invalid session. Please try again."
msgstr "Ungültige Sitzung. Bitte versuchen Sie es erneut." msgstr "Ungültige Sitzung. Bitte versuchen Sie es erneut."
#: lib/mv_web/live/auth/link_oidc_account_live.ex:279 #: lib/mv_web/live/auth/link_oidc_account_live.ex:281
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Link Account" msgid "Link Account"
msgstr "Konto verknüpfen" msgstr "Konto verknüpfen"
#: lib/mv_web/live/auth/link_oidc_account_live.ex:250 #: lib/mv_web/live/auth/link_oidc_account_live.ex:252
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Link OIDC Account" msgid "Link OIDC Account"
msgstr "OIDC-Konto verknüpfen" msgstr "OIDC-Konto verknüpfen"
#: lib/mv_web/live/auth/link_oidc_account_live.ex:278 #: lib/mv_web/live/auth/link_oidc_account_live.ex:280
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Linking..." msgid "Linking..."
msgstr "Verknüpfen..." msgstr "Verknüpfen..."
@ -130,12 +130,12 @@ msgstr "Die E-Mail-Adresse aus Ihrem OIDC-Provider ist bereits für ein anderes
msgid "This OIDC account is already linked to another user. Please contact support." msgid "This OIDC account is already linked to another user. Please contact support."
msgstr "Dieses OIDC-Konto ist bereits mit einem anderen Benutzer verknüpft. Bitte kontaktieren Sie den Support." msgstr "Dieses OIDC-Konto ist bereits mit einem anderen Benutzer verknüpft. Bitte kontaktieren Sie den Support."
#~ #: lib/mv_web/live/auth/link_oidc_account_live.ex:67 #: lib/mv_web/live/auth/link_oidc_account_live.ex:235
#~ #, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
#~ msgid "Failed to activate account: %{error}" msgid "Language selection"
#~ msgstr "Aktivierung des Kontos fehlgeschlagen: %{error}" msgstr "Sprachauswahl"
#~ #: lib/mv_web/live/auth/link_oidc_account_live.ex:118 #: lib/mv_web/live/auth/link_oidc_account_live.ex:242
#~ #, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
#~ msgid "Failed to link account: %{error}" msgid "Select language"
#~ msgstr "Verknüpfung des Kontos fehlgeschlagen: %{error}" msgstr "Sprache auswählen"

View file

@ -650,8 +650,3 @@ msgstr "E-Mail kann nicht aktualisiert werden: Diese E-Mail-Adresse ist bereits
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "This email is already linked to a different OIDC account. Cannot link multiple OIDC providers to the same account." msgid "This email is already linked to a different OIDC account. Cannot link multiple OIDC providers to the same account."
msgstr "Diese E-Mail-Adresse ist bereits mit einem anderen OIDC-Konto verknüpft. Es können nicht mehrere OIDC-Provider mit demselben Konto verknüpft werden." msgstr "Diese E-Mail-Adresse ist bereits mit einem anderen OIDC-Konto verknüpft. Es können nicht mehrere OIDC-Provider mit demselben Konto verknüpft werden."
#~ #: lib/mv_web/controllers/auth_controller.ex:54
#~ #, elixir-autogen, elixir-format
#~ msgid "Unable to sign in with OIDC. Please try again."
#~ msgstr "Anmeldung mit OIDC fehlgeschlagen. Bitte versuchen Sie es erneut."

View file

@ -32,7 +32,7 @@ msgstr ""
msgid "Need an account?" msgid "Need an account?"
msgstr "" msgstr ""
#: lib/mv_web/live/auth/link_oidc_account_live.ex:266 #: lib/mv_web/live/auth/link_oidc_account_live.ex:268
#, elixir-autogen #, elixir-autogen
msgid "Password" msgid "Password"
msgstr "" msgstr ""
@ -61,12 +61,12 @@ msgstr ""
msgid "Your password has successfully been reset" msgid "Your password has successfully been reset"
msgstr "" msgstr ""
#: lib/mv_web/live/auth/link_oidc_account_live.ex:252 #: lib/mv_web/live/auth/link_oidc_account_live.ex:254
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "An account with email %{email} already exists. Please enter your password to link your OIDC account." msgid "An account with email %{email} already exists. Please enter your password to link your OIDC account."
msgstr "" msgstr ""
#: lib/mv_web/live/auth/link_oidc_account_live.ex:287 #: lib/mv_web/live/auth/link_oidc_account_live.ex:289
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Cancel" msgid "Cancel"
msgstr "" msgstr ""
@ -81,17 +81,17 @@ msgstr ""
msgid "Invalid session. Please try again." msgid "Invalid session. Please try again."
msgstr "" msgstr ""
#: lib/mv_web/live/auth/link_oidc_account_live.ex:279 #: lib/mv_web/live/auth/link_oidc_account_live.ex:281
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Link Account" msgid "Link Account"
msgstr "" msgstr ""
#: lib/mv_web/live/auth/link_oidc_account_live.ex:250 #: lib/mv_web/live/auth/link_oidc_account_live.ex:252
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Link OIDC Account" msgid "Link OIDC Account"
msgstr "" msgstr ""
#: lib/mv_web/live/auth/link_oidc_account_live.ex:278 #: lib/mv_web/live/auth/link_oidc_account_live.ex:280
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "Linking..." msgid "Linking..."
msgstr "" msgstr ""
@ -127,7 +127,12 @@ msgstr ""
msgid "This OIDC account is already linked to another user. Please contact support." msgid "This OIDC account is already linked to another user. Please contact support."
msgstr "" msgstr ""
#~ #: lib/mv_web/live/auth/link_oidc_account_live.ex:118 #: lib/mv_web/live/auth/link_oidc_account_live.ex:235
#~ #, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
#~ msgid "Failed to link account: %{error}" msgid "Language selection"
#~ msgstr "" msgstr ""
#: lib/mv_web/live/auth/link_oidc_account_live.ex:242
#, elixir-autogen, elixir-format
msgid "Select language"
msgstr ""

View file

@ -651,8 +651,3 @@ msgstr ""
#, elixir-autogen, elixir-format #, elixir-autogen, elixir-format
msgid "This email is already linked to a different OIDC account. Cannot link multiple OIDC providers to the same account." msgid "This email is already linked to a different OIDC account. Cannot link multiple OIDC providers to the same account."
msgstr "" msgstr ""
#~ #: lib/mv_web/controllers/auth_controller.ex:54
#~ #, elixir-autogen, elixir-format
#~ msgid "Unable to sign in with OIDC. Please try again."
#~ msgstr ""