feat: gettext

This commit is contained in:
Moritz 2025-06-17 19:02:35 +02:00
parent 2ab3332941
commit ca4ac3a1c0
Signed by: moritz
GPG key ID: 1020A035E5DD0824
15 changed files with 998 additions and 51 deletions

View file

@ -5,10 +5,10 @@ defmodule MvWeb.MemberLive.Index do
def render(assigns) do
~H"""
<.header>
Listing Members
{gettext("Listing Members")}
<:actions>
<.link patch={~p"/members/new"}>
<.button>New Member</.button>
<.button>{gettext("New Member")}</.button>
</.link>
</:actions>
</.header>
@ -19,26 +19,26 @@ defmodule MvWeb.MemberLive.Index do
row_click={fn {_id, member} -> JS.navigate(~p"/members/#{member}") end}
>
<!-- <:col :let={{_id, member}} label="Id">{member.id}</:col> -->
<:col :let={{_id, member}} label="First Name">{member.first_name}</:col>
<:col :let={{_id, member}} label="Last Name">{member.last_name}</:col>
<:col :let={{_id, member}} label="Email">{member.email}</:col>
<:col :let={{_id, member}} label="City">{member.city}</:col>
<:col :let={{_id, member}} label="Join Date">{member.join_date}</:col>
<:col :let={{_id, member}} label={gettext("First Name")}>{member.first_name}</:col>
<:col :let={{_id, member}} label={gettext("Last Name")}>{member.last_name}</:col>
<:col :let={{_id, member}} label={gettext("Email")}>{member.email}</:col>
<:col :let={{_id, member}} label={gettext("City")}>{member.city}</:col>
<:col :let={{_id, member}} label={gettext("Join Date")}>{member.join_date}</:col>
<:action :let={{_id, member}}>
<div class="sr-only">
<.link navigate={~p"/members/#{member}"}>Show</.link>
<.link navigate={~p"/members/#{member}"}>{gettext("Show")}</.link>
</div>
<.link patch={~p"/members/#{member}/edit"}>Edit</.link>
<.link patch={~p"/members/#{member}/edit"}>{gettext("Edit")}</.link>
</:action>
<:action :let={{id, member}}>
<.link
phx-click={JS.push("delete", value: %{id: member.id}) |> hide("##{id}")}
data-confirm="Are you sure?"
data-confirm={gettext("Are you sure?")}
>
Delete
{gettext("Delete")}
</.link>
</:action>
</.table>
@ -73,19 +73,19 @@ defmodule MvWeb.MemberLive.Index do
defp apply_action(socket, :edit, %{"id" => id}) do
socket
|> assign(:page_title, "Edit Member")
|> assign(:page_title, gettext("Edit Member"))
|> assign(:member, Ash.get!(Mv.Membership.Member, id))
end
defp apply_action(socket, :new, _params) do
socket
|> assign(:page_title, "New Member")
|> assign(:page_title, gettext("New Member"))
|> assign(:member, nil)
end
defp apply_action(socket, :index, _params) do
socket
|> assign(:page_title, "Listing Members")
|> assign(:page_title, gettext("Listing Members"))
|> assign(:member, nil)
end