feat: adds settings live view and updated seeds

This commit is contained in:
carla 2025-11-27 15:34:10 +01:00
parent 936ed0ace1
commit f8c2c7bbe3
6 changed files with 144 additions and 9 deletions

View file

@ -62,7 +62,7 @@ defmodule Mv.Membership do
Settings should normally be created via the seed script (`priv/repo/seeds.exs`).
If no settings exist, this function will create them as a fallback using the
`ASSOCIATION_NAME` environment variable or "Mitgliederverwaltung" as default.
`ASSOCIATION_NAME` environment variable or "Club Name" as default.
## Returns
@ -82,7 +82,7 @@ defmodule Mv.Membership do
case Ash.read_one(Mv.Membership.Setting, domain: __MODULE__) do
{:ok, nil} ->
# No settings exist - create as fallback (should normally be created via seed script)
default_club_name = System.get_env("ASSOCIATION_NAME") || "Mitgliederverwaltung"
default_club_name = System.get_env("ASSOCIATION_NAME") || "Club Name"
Mv.Membership.Setting
|> Ash.Changeset.for_create(:create, %{club_name: default_club_name})

View file

@ -58,6 +58,11 @@ defmodule Mv.Membership.Setting do
end
end
validations do
validate present(:club_name), on: [:create, :update]
validate string_length(:club_name, min: 1), on: [:create, :update]
end
attributes do
uuid_primary_key :id
@ -72,9 +77,4 @@ defmodule Mv.Membership.Setting do
timestamps()
end
validations do
validate present(:club_name), on: [:create, :update]
validate string_length(:club_name, min: 1), on: [:create, :update]
end
end