From 455fe354c1ede32cdeb74ad62488ad2a0c134610 Mon Sep 17 00:00:00 2001 From: shibao Date: Tue, 8 Feb 2022 22:13:01 -0500 Subject: [PATCH] gettext User --- lib/cannery/accounts/user.ex | 11 +++++++---- priv/gettext/errors.pot | 20 ++++++++++++++++++++ 2 files changed, 27 insertions(+), 4 deletions(-) diff --git a/lib/cannery/accounts/user.ex b/lib/cannery/accounts/user.ex index 2545c9b6..a22267a3 100644 --- a/lib/cannery/accounts/user.ex +++ b/lib/cannery/accounts/user.ex @@ -5,6 +5,7 @@ defmodule Cannery.Accounts.User do use Ecto.Schema import Ecto.Changeset + import CanneryWeb.Gettext alias Ecto.{Changeset, UUID} alias Cannery.{Accounts.User, Invites.Invite} @@ -77,7 +78,9 @@ defmodule Cannery.Accounts.User do defp validate_email(changeset) do changeset |> validate_required([:email]) - |> validate_format(:email, ~r/^[^\s]+@[^\s]+$/, message: "must have the @ sign and no spaces") + |> validate_format(:email, ~r/^[^\s]+@[^\s]+$/, + message: dgettext("errors", "must have the @ sign and no spaces") + ) |> validate_length(:email, max: 160) |> unsafe_validate_unique(:email, Cannery.Repo) |> unique_constraint(:email) @@ -122,7 +125,7 @@ defmodule Cannery.Accounts.User do |> validate_email() |> case do %{changes: %{email: _}} = changeset -> changeset - %{} = changeset -> add_error(changeset, :email, "did not change") + %{} = changeset -> add_error(changeset, :email, dgettext("errors", "did not change")) end end @@ -143,7 +146,7 @@ defmodule Cannery.Accounts.User do def password_changeset(user, attrs, opts \\ []) do user |> cast(attrs, [:password]) - |> validate_confirmation(:password, message: "does not match password") + |> validate_confirmation(:password, message: dgettext("errors", "does not match password")) |> validate_password(opts) end @@ -180,6 +183,6 @@ defmodule Cannery.Accounts.User do def validate_current_password(changeset, password) do if valid_password?(changeset.data, password), do: changeset, - else: changeset |> add_error(:current_password, "is not valid") + else: changeset |> add_error(:current_password, dgettext("errors", "is not valid")) end end diff --git a/priv/gettext/errors.pot b/priv/gettext/errors.pot index 29f2e559..63fa85a5 100644 --- a/priv/gettext/errors.pot +++ b/priv/gettext/errors.pot @@ -99,3 +99,23 @@ msgid "There is still %{amount} ammo group in this container!" msgid_plural "There are still %{amount} ammo groups in this container!" msgstr[0] "" msgstr[1] "" + +#, elixir-format, ex-autogen +#: lib/cannery/accounts/user.ex:128 +msgid "did not change" +msgstr "" + +#, elixir-format, ex-autogen +#: lib/cannery/accounts/user.ex:149 +msgid "does not match password" +msgstr "" + +#, elixir-format, ex-autogen +#: lib/cannery/accounts/user.ex:186 +msgid "is not valid" +msgstr "" + +#, elixir-format, ex-autogen +#: lib/cannery/accounts/user.ex:82 +msgid "must have the @ sign and no spaces" +msgstr ""