Visual hierarchy for fields in member view and edit form - closes #231 #247

Merged
moritz merged 2 commits from feature/231_member_view_ui into main 2025-12-03 15:33:02 +01:00
5 changed files with 1477 additions and 186 deletions
Showing only changes of commit 2542bcf9e4 - Show all commits

View file

@ -238,8 +238,8 @@ defmodule MvWeb.MemberLive.Form do
id -> Ash.get!(Mv.Membership.Member, id)
end
action = if is_nil(member), do: gettext("New"), else: gettext("Edit")
page_title = "#{action} #{gettext("Member")}"
page_title =
if is_nil(member), do: gettext("Create Member"), else: gettext("Edit Member")
moritz marked this conversation as resolved Outdated

This won't work in german, I think

This won't work in german, I think
{:ok,
socket

View file

@ -74,7 +74,7 @@ defmodule MvWeb.MemberLive.Show do
<div>
<.data_field label={gettext("Email")}>
<a
href={"mailto:#{format_email_mailto(@member.first_name, @member.last_name, @member.email)}"}
href={"mailto:#{MvWeb.MemberLive.Index.format_member_email(@member)}"}
class="text-blue-700 hover:text-blue-800 underline"
>
{@member.email}
@ -240,23 +240,10 @@ defmodule MvWeb.MemberLive.Show do
# Helper Functions
# -----------------------------------------------------------------
defp display_value(nil), do: ""
defp display_value(""), do: ""
defp display_value(nil), do: ""
moritz marked this conversation as resolved Outdated

For nil, this should be an empty string (this is how we do it in other parts of the UI)

For nil, this should be an empty string (this is how we do it in other parts of the UI)
defp display_value(""), do: ""
defp display_value(value), do: value
defp format_email_mailto(first_name, last_name, email) do
name =
[first_name, last_name]
|> Enum.filter(&(&1 && &1 != ""))
|> Enum.join(" ")
if name != "" do
"#{name} <#{email}>"
else
email
end
end
defp format_address(member) do
moritz marked this conversation as resolved Outdated

can we move this somewhere else so we can reuse it in the member overview?

can we move this somewhere else so we can reuse it in the member overview?
street_part =
[member.street, member.house_number]

View file

@ -10,13 +10,14 @@ msgid ""
msgstr ""
"Language: en\n"
#: lib/mv_web/components/core_components.ex:386
#: lib/mv_web/components/core_components.ex:387
#: lib/mv_web/live/contribution_period_live/show.ex:141
#, elixir-autogen, elixir-format
msgid "Actions"
msgstr "Aktionen"
#: lib/mv_web/live/member_live/index.html.heex:248
#: lib/mv_web/live/user_live/index.html.heex:72
#: lib/mv_web/live/user_live/index.html.heex:71
#, elixir-autogen, elixir-format
msgid "Are you sure?"
msgstr "Bist du sicher?"
@ -33,32 +34,35 @@ msgstr "Verbindung wird wiederhergestellt"
msgid "City"
msgstr "Stadt"
#: lib/mv_web/live/contribution_type_live/index.ex:78
#: lib/mv_web/live/member_live/index.html.heex:250
#: lib/mv_web/live/user_live/index.html.heex:74
#: lib/mv_web/live/user_live/index.html.heex:73
#, elixir-autogen, elixir-format
msgid "Delete"
msgstr "Löschen"
#: lib/mv_web/live/member_live/form.ex:241
#: lib/mv_web/live/contribution_type_live/index.ex:66
#: lib/mv_web/live/member_live/index.html.heex:242
#: lib/mv_web/live/user_live/form.ex:265
#: lib/mv_web/live/user_live/index.html.heex:66
#: lib/mv_web/live/user_live/form.ex:267
#: lib/mv_web/live/user_live/index.html.heex:65
#, elixir-autogen, elixir-format
msgid "Edit"
msgstr "Bearbeite"
#: lib/mv_web/live/member_live/form.ex:242
#: lib/mv_web/live/member_live/show.ex:40
#: lib/mv_web/live/member_live/show.ex:197
#, elixir-autogen, elixir-format
msgid "Edit Member"
msgstr "Mitglied bearbeiten"
#: lib/mv_web/live/contribution_period_live/show.ex:58
#: lib/mv_web/live/member_live/form.ex:106
#: lib/mv_web/live/member_live/index.html.heex:112
#: lib/mv_web/live/member_live/show.ex:75
#: lib/mv_web/live/user_live/form.ex:46
#: lib/mv_web/live/user_live/index.html.heex:44
#: lib/mv_web/live/user_live/show.ex:50
#: lib/mv_web/live/user_live/show.ex:49
#, elixir-autogen, elixir-format
msgid "Email"
msgstr "E-Mail"
@ -89,7 +93,7 @@ msgid "New Member"
msgstr "Neues Mitglied"
#: lib/mv_web/live/member_live/index.html.heex:239
#: lib/mv_web/live/user_live/index.html.heex:63
#: lib/mv_web/live/user_live/index.html.heex:62
#, elixir-autogen, elixir-format
msgid "Show"
msgstr "Anzeigen"
@ -120,6 +124,7 @@ msgstr "Austrittsdatum"
msgid "House Number"
msgstr "Hausnummer"
#: lib/mv_web/live/contribution_period_live/show.ex:140
#: lib/mv_web/live/member_live/form.ex:126
#: lib/mv_web/live/member_live/show.ex:124
#, elixir-autogen, elixir-format
@ -128,6 +133,8 @@ msgstr "Notizen"
#: lib/mv_web/live/components/payment_filter_component.ex:94
#: lib/mv_web/live/components/payment_filter_component.ex:144
#: lib/mv_web/live/contribution_period_live/show.ex:186
#: lib/mv_web/live/contribution_period_live/show.ex:241
#: lib/mv_web/live/member_live/form.ex:199
#: lib/mv_web/live/member_live/index.html.heex:229
#: lib/mv_web/live/member_live/show.ex:162
@ -157,7 +164,7 @@ msgstr "Mitglied speichern"
#: lib/mv_web/live/global_settings_live.ex:55
#: lib/mv_web/live/member_live/form.ex:48
#: lib/mv_web/live/member_live/form.ex:210
#: lib/mv_web/live/user_live/form.ex:248
#: lib/mv_web/live/user_live/form.ex:249
#, elixir-autogen, elixir-format
msgid "Saving..."
msgstr "Speichern..."
@ -169,8 +176,8 @@ msgid "Street"
msgstr "Straße"
#: lib/mv_web/live/member_live/index.html.heex:234
#: lib/mv_web/live/member_live/index/formatter.ex:61
#: lib/mv_web/live/member_live/show.ex:303
#: lib/mv_web/live/member_live/index/formatter.ex:62
#: lib/mv_web/live/member_live/show.ex:290
#, elixir-autogen, elixir-format
msgid "No"
msgstr "Nein"
@ -181,8 +188,8 @@ msgid "Show Member"
msgstr "Mitglied anzeigen"
#: lib/mv_web/live/member_live/index.html.heex:234
#: lib/mv_web/live/member_live/index/formatter.ex:60
#: lib/mv_web/live/member_live/show.ex:303
#: lib/mv_web/live/member_live/index/formatter.ex:61
#: lib/mv_web/live/member_live/show.ex:290
#, elixir-autogen, elixir-format
msgid "Yes"
msgstr "Ja"
@ -240,7 +247,7 @@ msgstr "Ihr Passwort wurde erfolgreich zurückgesetzt"
#: lib/mv_web/live/custom_field_live/index.ex:120
#: lib/mv_web/live/custom_field_value_live/form.ex:77
#: lib/mv_web/live/member_live/form.ex:208
#: lib/mv_web/live/user_live/form.ex:251
#: lib/mv_web/live/user_live/form.ex:252
#, elixir-autogen, elixir-format
msgid "Cancel"
msgstr "Abbrechen"
@ -260,22 +267,17 @@ msgstr "Beschreibung"
msgid "Edit User"
msgstr "Benutzer*in bearbeiten"
#: lib/mv_web/live/user_live/show.ex:53
#: lib/mv_web/live/user_live/show.ex:51
#, elixir-autogen, elixir-format
msgid "Enabled"
msgstr "Aktiviert"
#: lib/mv_web/live/user_live/show.ex:49
#, elixir-autogen, elixir-format
msgid "ID"
msgstr "ID"
#: lib/mv_web/live/custom_field_live/form.ex:62
#, elixir-autogen, elixir-format
msgid "Immutable"
msgstr "Unveränderlich"
#: lib/mv_web/components/layouts/navbar.ex:102
#: lib/mv_web/components/layouts/navbar.ex:113
#, elixir-autogen, elixir-format
msgid "Logout"
msgstr "Abmelden"
@ -287,18 +289,19 @@ msgid "Listing Users"
msgstr "Benutzer*innen auflisten"
#: lib/mv_web/live/custom_field_value_live/form.ex:60
#: lib/mv_web/live/member_live/form.ex:242
#, elixir-autogen, elixir-format
msgid "Member"
msgstr "Mitglied"
#: lib/mv_web/components/layouts/navbar.ex:25
#: lib/mv_web/live/member_live/index.ex:73
#: lib/mv_web/live/contribution_type_live/index.ex:61
#: lib/mv_web/live/member_live/index.ex:74
#: lib/mv_web/live/member_live/index.html.heex:3
#, elixir-autogen, elixir-format
msgid "Members"
msgstr "Mitglieder"
#: lib/mv_web/live/contribution_type_live/index.ex:48
#: lib/mv_web/live/custom_field_live/form.ex:51
#, elixir-autogen, elixir-format
msgid "Name"
@ -309,16 +312,12 @@ msgstr "Name"
msgid "New User"
msgstr "Neue*r Benutzer*in"
#: lib/mv_web/live/user_live/show.ex:53
#: lib/mv_web/live/user_live/show.ex:51
#, elixir-autogen, elixir-format
msgid "Not enabled"
msgstr "Nicht aktiviert"
#: lib/mv_web/live/user_live/show.ex:51
#, elixir-autogen, elixir-format
msgid "Not set"
msgstr "Nicht gesetzt"
#: lib/mv_web/live/contribution_period_live/show.ex:207
#: lib/mv_web/live/user_live/form.ex:107
#: lib/mv_web/live/user_live/form.ex:115
#: lib/mv_web/live/user_live/form.ex:224
@ -326,18 +325,12 @@ msgstr "Nicht gesetzt"
msgid "Note"
msgstr "Hinweis"
#: lib/mv_web/live/user_live/index.html.heex:52
#: lib/mv_web/live/user_live/show.ex:51
#, elixir-autogen, elixir-format
msgid "OIDC ID"
msgstr "OIDC ID"
#: lib/mv_web/live/user_live/show.ex:52
#: lib/mv_web/live/user_live/show.ex:50
#, elixir-autogen, elixir-format
msgid "Password Authentication"
msgstr "Passwort-Authentifizierung"
#: lib/mv_web/components/layouts/navbar.ex:95
#: lib/mv_web/components/layouts/navbar.ex:106
#, elixir-autogen, elixir-format
msgid "Profil"
msgstr "Profil"
@ -357,17 +350,17 @@ msgstr "Alle Mitglieder auswählen"
msgid "Select member"
msgstr "Mitglied auswählen"
#: lib/mv_web/components/layouts/navbar.ex:99
#: lib/mv_web/components/layouts/navbar.ex:110
#, elixir-autogen, elixir-format
msgid "Settings"
msgstr "Einstellungen"
#: lib/mv_web/live/user_live/form.ex:249
#: lib/mv_web/live/user_live/form.ex:250
#, elixir-autogen, elixir-format
msgid "Save User"
msgstr "Benutzer*in speichern"
#: lib/mv_web/live/user_live/show.ex:79
#: lib/mv_web/live/user_live/show.ex:77
#, elixir-autogen, elixir-format
msgid "Show User"
msgstr "Benutzer*in anzeigen"
@ -387,7 +380,7 @@ msgstr "Nicht unterstützter Wertetyp: %{type}"
msgid "Use this form to manage user records in your database."
msgstr "Verwenden Sie dieses Formular, um Benutzer*innen-Datensätze zu verwalten."
#: lib/mv_web/live/user_live/form.ex:266
#: lib/mv_web/live/user_live/form.ex:268
#: lib/mv_web/live/user_live/show.ex:34
#, elixir-autogen, elixir-format
msgid "User"
@ -415,8 +408,7 @@ msgstr "aufsteigend"
msgid "descending"
msgstr "absteigend"
#: lib/mv_web/live/member_live/form.ex:241
#: lib/mv_web/live/user_live/form.ex:265
#: lib/mv_web/live/user_live/form.ex:267
#, elixir-autogen, elixir-format
msgid "New"
msgstr "Neue*r"
@ -492,8 +484,8 @@ msgid "User will be created without a password. Check 'Set Password' to add one.
msgstr "Benutzer*in wird ohne Passwort erstellt. Aktivieren Sie 'Passwort setzen', um eines hinzuzufügen."
#: lib/mv_web/live/user_live/form.ex:126
#: lib/mv_web/live/user_live/index.html.heex:53
#: lib/mv_web/live/user_live/show.ex:55
#: lib/mv_web/live/user_live/index.html.heex:52
#: lib/mv_web/live/user_live/show.ex:53
#, elixir-autogen, elixir-format
msgid "Linked Member"
msgstr "Verknüpftes Mitglied"
@ -503,8 +495,8 @@ msgstr "Verknüpftes Mitglied"
msgid "Linked User"
msgstr "Verknüpfte*r Benutzer*in"
#: lib/mv_web/live/user_live/index.html.heex:57
#: lib/mv_web/live/user_live/show.ex:65
#: lib/mv_web/live/user_live/index.html.heex:56
#: lib/mv_web/live/user_live/show.ex:63
#, elixir-autogen, elixir-format
msgid "No member linked"
msgstr "Kein Mitglied verknüpft"
@ -525,14 +517,14 @@ msgstr "Zurück zur Mitgliederliste"
msgid "Back to users list"
msgstr "Zurück zur Benutzer*innen-Liste"
#: lib/mv_web/components/layouts/navbar.ex:33
#: lib/mv_web/components/layouts/navbar.ex:39
#: lib/mv_web/components/layouts/navbar.ex:44
#: lib/mv_web/components/layouts/navbar.ex:50
#, elixir-autogen, elixir-format
msgid "Select language"
msgstr "Sprache auswählen"
#: lib/mv_web/components/layouts/navbar.ex:46
#: lib/mv_web/components/layouts/navbar.ex:66
#: lib/mv_web/components/layouts/navbar.ex:57
#: lib/mv_web/components/layouts/navbar.ex:77
#, elixir-autogen, elixir-format
msgid "Toggle dark mode"
msgstr "Dunklen Modus umschalten"
@ -700,6 +692,7 @@ msgstr "Vereinsdaten"
msgid "Manage global settings for the association."
msgstr "Passe übergreifende Einstellungen für den Verein an."
#: lib/mv_web/live/contribution_settings_live.ex:102
#: lib/mv_web/live/global_settings_live.ex:56
#, elixir-autogen, elixir-format, fuzzy
msgid "Save Settings"
@ -720,7 +713,7 @@ msgstr "Ein Mitglied mit dieser E-Mail-Adresse existiert bereits. Um mit einem a
msgid "Available members"
msgstr "Verfügbare Mitglieder"
#: lib/mv_web/live/user_live/form.ex:357
#: lib/mv_web/live/user_live/form.ex:359
#, elixir-autogen, elixir-format
msgid "Failed to link member: %{error}"
msgstr "Fehler beim Verlinken des Mitglieds: %{error}"
@ -760,7 +753,7 @@ msgstr "Mitglied entverknüpfen"
msgid "Unlinking scheduled"
msgstr "Entverknüpfung geplant"
#: lib/mv_web/live/member_live/index.ex:159
#: lib/mv_web/live/member_live/index.ex:160
#, elixir-autogen, elixir-format
msgid "Copied %{count} email address to clipboard"
msgid_plural "Copied %{count} email addresses to clipboard"
@ -777,12 +770,12 @@ msgstr "E-Mail-Adressen der ausgewählten Mitglieder kopieren"
msgid "Copy emails"
msgstr "E-Mails kopieren"
#: lib/mv_web/live/member_live/index.ex:148
#: lib/mv_web/live/member_live/index.ex:149
#, elixir-autogen, elixir-format
msgid "No email addresses found"
msgstr "Keine E-Mail-Adressen gefunden"
#: lib/mv_web/live/member_live/index.ex:145
#: lib/mv_web/live/member_live/index.ex:146
#, elixir-autogen, elixir-format
msgid "No members selected"
msgstr "Keine Mitglieder ausgewählt"
@ -797,7 +790,7 @@ msgstr "E-Mail-Programm mit BCC-Empfänger*innen öffnen"
msgid "Open in email program"
msgstr "Im E-Mail-Programm öffnen"
#: lib/mv_web/live/member_live/index.ex:168
#: lib/mv_web/live/member_live/index.ex:169
#, elixir-autogen, elixir-format
msgid "Tip: Paste email addresses into the BCC field for privacy compliance"
msgstr "Tipp: E-Mail-Adressen ins BCC-Feld einfügen für Datenschutzkonformität"
@ -923,11 +916,458 @@ msgstr "monatlich"
msgid "yearly"
msgstr "jährlich"
#: lib/mv_web/live/member_live/form.ex:242
#, elixir-autogen, elixir-format
msgid "Create Member"
msgstr "Mitglied erstellen"
#: lib/mv_web/live/contribution_period_live/show.ex:107
#, elixir-autogen, elixir-format
msgid "%{count} period selected"
msgid_plural "%{count} periods selected"
msgstr[0] ""
msgstr[1] ""
#: lib/mv_web/live/contribution_type_live/index.ex:113
#, elixir-autogen, elixir-format
msgid "About Contribution Types"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:138
#: lib/mv_web/live/contribution_type_live/index.ex:53
#, elixir-autogen, elixir-format
msgid "Amount"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:48
#, elixir-autogen, elixir-format
msgid "Back to Settings"
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:124
#, elixir-autogen, elixir-format
msgid "Can be changed at any time. Amount changes affect future periods only."
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:77
#, elixir-autogen, elixir-format
msgid "Cannot delete - members assigned"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:83
#, elixir-autogen, elixir-format
msgid "Change Contribution Type"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:42
#, elixir-autogen, elixir-format
msgid "Configure global settings for membership contributions."
msgstr ""
#: lib/mv_web/components/layouts/navbar.ex:34
#: lib/mv_web/live/contribution_settings_live.ex:27
#: lib/mv_web/live/contribution_settings_live.ex:40
#, elixir-autogen, elixir-format, fuzzy
msgid "Contribution Settings"
msgstr "Beitrag"
#: lib/mv_web/live/contribution_period_live/show.ex:62
#, elixir-autogen, elixir-format, fuzzy
msgid "Contribution Start"
msgstr "Beitrag"
#: lib/mv_web/components/layouts/navbar.ex:32
#: lib/mv_web/live/contribution_type_live/index.ex:25
#: lib/mv_web/live/contribution_type_live/index.ex:36
#, elixir-autogen, elixir-format, fuzzy
msgid "Contribution Types"
msgstr "Beitrag"
#: lib/mv_web/live/contribution_settings_live.ex:224
#, elixir-autogen, elixir-format, fuzzy
msgid "Contribution start"
msgstr "Beitrag"
#: lib/mv_web/live/contribution_period_live/show.ex:41
#, elixir-autogen, elixir-format, fuzzy
msgid "Contribution type"
msgstr "Beitrag"
#: lib/mv_web/live/contribution_type_live/index.ex:117
#, elixir-autogen, elixir-format
msgid "Contribution types define different membership fee structures. Each type has a fixed interval (monthly, quarterly, half-yearly, yearly) that cannot be changed after creation."
msgstr ""
#: lib/mv_web/components/layouts/navbar.ex:30
#, elixir-autogen, elixir-format, fuzzy
msgid "Contributions"
msgstr "Beitrag"
#: lib/mv_web/live/contribution_period_live/show.ex:39
#, elixir-autogen, elixir-format, fuzzy
msgid "Contributions for %{name}"
msgstr "Beitrag"
#: lib/mv_web/live/contribution_period_live/show.ex:159
#, elixir-autogen, elixir-format
msgid "Current"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:60
#, elixir-autogen, elixir-format
msgid "Default Contribution Type"
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:133
#, elixir-autogen, elixir-format, fuzzy
msgid "Deletion"
msgstr "Löschen"
#: lib/mv_web/live/contribution_settings_live.ex:173
#, elixir-autogen, elixir-format
msgid "Example: Member Contribution View"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:113
#, elixir-autogen, elixir-format
msgid "Examples"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:262
#: lib/mv_web/live/contribution_type_live/index.ex:172
#, elixir-autogen, elixir-format
msgid "Family"
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:128
#, elixir-autogen, elixir-format
msgid "Fixed after creation. Members can only switch between types with the same interval."
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:228
#, elixir-autogen, elixir-format
msgid "Generated periods"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:52
#, elixir-autogen, elixir-format, fuzzy
msgid "Global Settings"
msgstr "Vereinsdaten"
#: lib/mv_web/live/contribution_period_live/show.ex:343
#: lib/mv_web/live/contribution_settings_live.ex:275
#: lib/mv_web/live/contribution_type_live/index.ex:203
#, elixir-autogen, elixir-format
msgid "Half-yearly"
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:181
#, elixir-autogen, elixir-format
msgid "Half-yearly contribution for supporting members"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:87
#: lib/mv_web/live/contribution_type_live/index.ex:188
#, elixir-autogen, elixir-format
msgid "Honorary"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:85
#, elixir-autogen, elixir-format
msgid "Include joining period"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:137
#: lib/mv_web/live/contribution_type_live/index.ex:57
#: lib/mv_web/live/contribution_type_live/index.ex:127
#, elixir-autogen, elixir-format
msgid "Interval"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:220
#, elixir-autogen, elixir-format, fuzzy
msgid "Joining date"
msgstr "Beitrittsdatum"
#: lib/mv_web/live/contribution_period_live/show.ex:331
#, elixir-autogen, elixir-format
msgid "Joining year - reduced to 0"
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:38
#, elixir-autogen, elixir-format
msgid "Manage contribution types for membership fees."
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:116
#, elixir-autogen, elixir-format
msgid "Mark as Paid"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:120
#, elixir-autogen, elixir-format
msgid "Mark as Suspended"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:124
#, elixir-autogen, elixir-format
msgid "Mark as Unpaid"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:26
#, elixir-autogen, elixir-format
msgid "Member Contributions"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:122
#, elixir-autogen, elixir-format
msgid "Member pays for the year they joined"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:155
#, elixir-autogen, elixir-format
msgid "Member pays from the joining month"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:144
#, elixir-autogen, elixir-format
msgid "Member pays from the next full quarter"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:133
#, elixir-autogen, elixir-format
msgid "Member pays from the next full year"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:43
#, elixir-autogen, elixir-format, fuzzy
msgid "Member since"
msgstr "Mitglieder"
#: lib/mv_web/live/contribution_period_live/show.ex:92
#, elixir-autogen, elixir-format
msgid "Members can only switch between contribution types with the same payment interval (e.g., yearly to yearly). This prevents complex period overlaps."
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:341
#: lib/mv_web/live/contribution_settings_live.ex:273
#: lib/mv_web/live/contribution_type_live/index.ex:201
#, elixir-autogen, elixir-format, fuzzy
msgid "Monthly"
msgstr "monatlich"
#: lib/mv_web/live/contribution_settings_live.ex:150
#, elixir-autogen, elixir-format
msgid "Monthly Interval - Joining Period Included"
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:165
#, elixir-autogen, elixir-format
msgid "Monthly fee for students and trainees"
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:123
#, elixir-autogen, elixir-format
msgid "Name & Amount"
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:42
#, elixir-autogen, elixir-format, fuzzy
msgid "New Contribution Type"
msgstr "Beitrag"
#: lib/mv_web/live/contribution_type_live/index.ex:189
#, elixir-autogen, elixir-format
msgid "No fee for honorary members"
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:134
#, elixir-autogen, elixir-format
msgid "Only possible if no members are assigned to this type."
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:70
#, elixir-autogen, elixir-format
msgid "Open Contributions"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:301
#, elixir-autogen, elixir-format
msgid "Paid via bank transfer"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:225
#: lib/mv_web/live/contribution_settings_live.ex:197
#: lib/mv_web/live/contribution_type_live/index.ex:97
#, elixir-autogen, elixir-format
msgid "Preview Mockup"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:342
#: lib/mv_web/live/contribution_settings_live.ex:274
#: lib/mv_web/live/contribution_type_live/index.ex:202
#, elixir-autogen, elixir-format
msgid "Quarterly"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:139
#, elixir-autogen, elixir-format
msgid "Quarterly Interval - Joining Period Excluded"
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:173
#, elixir-autogen, elixir-format
msgid "Quarterly fee for family memberships"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:86
#: lib/mv_web/live/contribution_settings_live.ex:250
#: lib/mv_web/live/contribution_type_live/index.ex:156
#, elixir-autogen, elixir-format
msgid "Reduced"
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:157
#, elixir-autogen, elixir-format
msgid "Reduced fee for unemployed, pensioners, or low income"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:275
#: lib/mv_web/live/contribution_settings_live.ex:244
#: lib/mv_web/live/contribution_type_live/index.ex:148
#, elixir-autogen, elixir-format
msgid "Regular"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:204
#, elixir-autogen, elixir-format
msgid "Reopen"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:176
#, elixir-autogen, elixir-format
msgid "See how the contribution periods will be displayed for an individual member. This example shows Maria Weber with multiple contribution periods."
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:149
#, elixir-autogen, elixir-format
msgid "Standard membership fee for regular members"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:139
#, elixir-autogen, elixir-format
msgid "Status"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:256
#: lib/mv_web/live/contribution_type_live/index.ex:164
#, elixir-autogen, elixir-format
msgid "Student"
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:180
#, elixir-autogen, elixir-format
msgid "Supporting Member"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:195
#, elixir-autogen, elixir-format
msgid "Suspend"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:259
#, elixir-autogen, elixir-format
msgid "Suspended"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:69
#, elixir-autogen, elixir-format
msgid "This contribution type is automatically assigned to all new members. Can be changed individually per member."
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:227
#: lib/mv_web/live/contribution_settings_live.ex:199
#: lib/mv_web/live/contribution_type_live/index.ex:99
#, elixir-autogen, elixir-format
msgid "This page is not functional and only displays the planned features."
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:136
#, elixir-autogen, elixir-format
msgid "Time Period"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:66
#, elixir-autogen, elixir-format
msgid "Total Contributions"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:250
#, elixir-autogen, elixir-format
msgid "Unpaid"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:183
#, elixir-autogen, elixir-format
msgid "View Example Member"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:90
#, elixir-autogen, elixir-format
msgid "When active: Members pay from the period of their joining."
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:93
#, elixir-autogen, elixir-format
msgid "When inactive: Members pay from the next full period after joining."
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:98
#, elixir-autogen, elixir-format
msgid "Why are not all contribution types shown?"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:85
#: lib/mv_web/live/contribution_period_live/show.ex:86
#: lib/mv_web/live/contribution_period_live/show.ex:87
#: lib/mv_web/live/contribution_period_live/show.ex:344
#: lib/mv_web/live/contribution_settings_live.ex:276
#: lib/mv_web/live/contribution_type_live/index.ex:204
#, elixir-autogen, elixir-format, fuzzy
msgid "Yearly"
msgstr "jährlich"
#: lib/mv_web/live/contribution_settings_live.ex:128
#, elixir-autogen, elixir-format
msgid "Yearly Interval - Joining Period Excluded"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:117
#, elixir-autogen, elixir-format
msgid "Yearly Interval - Joining Period Included"
msgstr ""
#~ #: lib/mv_web/live/user_live/show.ex:49
#~ #, elixir-autogen, elixir-format
#~ msgid "ID"
#~ msgstr "ID"
#~ #: lib/mv_web/live/member_live/show.ex:47
#~ #, elixir-autogen, elixir-format
#~ msgid "Id"
#~ msgstr "ID"
#~ #: lib/mv_web/live/user_live/show.ex:51
#~ #, elixir-autogen, elixir-format
#~ msgid "Not set"
#~ msgstr "Nicht gesetzt"
#~ #: lib/mv_web/live/user_live/index.html.heex:52
#~ #: lib/mv_web/live/user_live/show.ex:51
#~ #, elixir-autogen, elixir-format
#~ msgid "OIDC ID"
#~ msgstr "OIDC ID"
#~ #: lib/mv_web/live/member_live/show.ex:33
#~ #, elixir-autogen, elixir-format
#~ msgid "This is a member record from your database."

View file

@ -11,13 +11,14 @@
msgid ""
msgstr ""
#: lib/mv_web/components/core_components.ex:386
#: lib/mv_web/components/core_components.ex:387
#: lib/mv_web/live/contribution_period_live/show.ex:141
#, elixir-autogen, elixir-format
msgid "Actions"
msgstr ""
#: lib/mv_web/live/member_live/index.html.heex:248
#: lib/mv_web/live/user_live/index.html.heex:72
#: lib/mv_web/live/user_live/index.html.heex:71
#, elixir-autogen, elixir-format
msgid "Are you sure?"
msgstr ""
@ -34,32 +35,35 @@ msgstr ""
msgid "City"
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:78
#: lib/mv_web/live/member_live/index.html.heex:250
#: lib/mv_web/live/user_live/index.html.heex:74
#: lib/mv_web/live/user_live/index.html.heex:73
#, elixir-autogen, elixir-format
msgid "Delete"
msgstr ""
#: lib/mv_web/live/member_live/form.ex:241
#: lib/mv_web/live/contribution_type_live/index.ex:66
#: lib/mv_web/live/member_live/index.html.heex:242
#: lib/mv_web/live/user_live/form.ex:265
#: lib/mv_web/live/user_live/index.html.heex:66
#: lib/mv_web/live/user_live/form.ex:267
#: lib/mv_web/live/user_live/index.html.heex:65
#, elixir-autogen, elixir-format
msgid "Edit"
msgstr ""
#: lib/mv_web/live/member_live/form.ex:242
#: lib/mv_web/live/member_live/show.ex:40
#: lib/mv_web/live/member_live/show.ex:197
#, elixir-autogen, elixir-format
msgid "Edit Member"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:58
#: lib/mv_web/live/member_live/form.ex:106
#: lib/mv_web/live/member_live/index.html.heex:112
#: lib/mv_web/live/member_live/show.ex:75
#: lib/mv_web/live/user_live/form.ex:46
#: lib/mv_web/live/user_live/index.html.heex:44
#: lib/mv_web/live/user_live/show.ex:50
#: lib/mv_web/live/user_live/show.ex:49
#, elixir-autogen, elixir-format
msgid "Email"
msgstr ""
@ -90,7 +94,7 @@ msgid "New Member"
msgstr ""
#: lib/mv_web/live/member_live/index.html.heex:239
#: lib/mv_web/live/user_live/index.html.heex:63
#: lib/mv_web/live/user_live/index.html.heex:62
#, elixir-autogen, elixir-format
msgid "Show"
msgstr ""
@ -121,6 +125,7 @@ msgstr ""
msgid "House Number"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:140
#: lib/mv_web/live/member_live/form.ex:126
#: lib/mv_web/live/member_live/show.ex:124
#, elixir-autogen, elixir-format
@ -129,6 +134,8 @@ msgstr ""
#: lib/mv_web/live/components/payment_filter_component.ex:94
#: lib/mv_web/live/components/payment_filter_component.ex:144
#: lib/mv_web/live/contribution_period_live/show.ex:186
#: lib/mv_web/live/contribution_period_live/show.ex:241
#: lib/mv_web/live/member_live/form.ex:199
#: lib/mv_web/live/member_live/index.html.heex:229
#: lib/mv_web/live/member_live/show.ex:162
@ -158,7 +165,7 @@ msgstr ""
#: lib/mv_web/live/global_settings_live.ex:55
#: lib/mv_web/live/member_live/form.ex:48
#: lib/mv_web/live/member_live/form.ex:210
#: lib/mv_web/live/user_live/form.ex:248
#: lib/mv_web/live/user_live/form.ex:249
#, elixir-autogen, elixir-format
msgid "Saving..."
msgstr ""
@ -170,8 +177,8 @@ msgid "Street"
msgstr ""
#: lib/mv_web/live/member_live/index.html.heex:234
#: lib/mv_web/live/member_live/index/formatter.ex:61
#: lib/mv_web/live/member_live/show.ex:303
#: lib/mv_web/live/member_live/index/formatter.ex:62
#: lib/mv_web/live/member_live/show.ex:290
#, elixir-autogen, elixir-format
msgid "No"
msgstr ""
@ -182,8 +189,8 @@ msgid "Show Member"
msgstr ""
#: lib/mv_web/live/member_live/index.html.heex:234
#: lib/mv_web/live/member_live/index/formatter.ex:60
#: lib/mv_web/live/member_live/show.ex:303
#: lib/mv_web/live/member_live/index/formatter.ex:61
#: lib/mv_web/live/member_live/show.ex:290
#, elixir-autogen, elixir-format
msgid "Yes"
msgstr ""
@ -241,7 +248,7 @@ msgstr ""
#: lib/mv_web/live/custom_field_live/index.ex:120
#: lib/mv_web/live/custom_field_value_live/form.ex:77
#: lib/mv_web/live/member_live/form.ex:208
#: lib/mv_web/live/user_live/form.ex:251
#: lib/mv_web/live/user_live/form.ex:252
#, elixir-autogen, elixir-format
msgid "Cancel"
msgstr ""
@ -261,22 +268,17 @@ msgstr ""
msgid "Edit User"
msgstr ""
#: lib/mv_web/live/user_live/show.ex:53
#: lib/mv_web/live/user_live/show.ex:51
#, elixir-autogen, elixir-format
msgid "Enabled"
msgstr ""
#: lib/mv_web/live/user_live/show.ex:49
#, elixir-autogen, elixir-format
msgid "ID"
msgstr ""
#: lib/mv_web/live/custom_field_live/form.ex:62
#, elixir-autogen, elixir-format
msgid "Immutable"
msgstr ""
#: lib/mv_web/components/layouts/navbar.ex:102
#: lib/mv_web/components/layouts/navbar.ex:113
#, elixir-autogen, elixir-format
msgid "Logout"
msgstr ""
@ -288,18 +290,19 @@ msgid "Listing Users"
msgstr ""
#: lib/mv_web/live/custom_field_value_live/form.ex:60
#: lib/mv_web/live/member_live/form.ex:242
#, elixir-autogen, elixir-format
msgid "Member"
msgstr ""
#: lib/mv_web/components/layouts/navbar.ex:25
#: lib/mv_web/live/member_live/index.ex:73
#: lib/mv_web/live/contribution_type_live/index.ex:61
#: lib/mv_web/live/member_live/index.ex:74
#: lib/mv_web/live/member_live/index.html.heex:3
#, elixir-autogen, elixir-format
msgid "Members"
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:48
#: lib/mv_web/live/custom_field_live/form.ex:51
#, elixir-autogen, elixir-format
msgid "Name"
@ -310,16 +313,12 @@ msgstr ""
msgid "New User"
msgstr ""
#: lib/mv_web/live/user_live/show.ex:53
#: lib/mv_web/live/user_live/show.ex:51
#, elixir-autogen, elixir-format
msgid "Not enabled"
msgstr ""
#: lib/mv_web/live/user_live/show.ex:51
#, elixir-autogen, elixir-format
msgid "Not set"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:207
#: lib/mv_web/live/user_live/form.ex:107
#: lib/mv_web/live/user_live/form.ex:115
#: lib/mv_web/live/user_live/form.ex:224
@ -327,18 +326,12 @@ msgstr ""
msgid "Note"
msgstr ""
#: lib/mv_web/live/user_live/index.html.heex:52
#: lib/mv_web/live/user_live/show.ex:51
#, elixir-autogen, elixir-format
msgid "OIDC ID"
msgstr ""
#: lib/mv_web/live/user_live/show.ex:52
#: lib/mv_web/live/user_live/show.ex:50
#, elixir-autogen, elixir-format
msgid "Password Authentication"
msgstr ""
#: lib/mv_web/components/layouts/navbar.ex:95
#: lib/mv_web/components/layouts/navbar.ex:106
#, elixir-autogen, elixir-format
msgid "Profil"
msgstr ""
@ -358,17 +351,17 @@ msgstr ""
msgid "Select member"
msgstr ""
#: lib/mv_web/components/layouts/navbar.ex:99
#: lib/mv_web/components/layouts/navbar.ex:110
#, elixir-autogen, elixir-format
msgid "Settings"
msgstr ""
#: lib/mv_web/live/user_live/form.ex:249
#: lib/mv_web/live/user_live/form.ex:250
#, elixir-autogen, elixir-format
msgid "Save User"
msgstr ""
#: lib/mv_web/live/user_live/show.ex:79
#: lib/mv_web/live/user_live/show.ex:77
#, elixir-autogen, elixir-format
msgid "Show User"
msgstr ""
@ -388,7 +381,7 @@ msgstr ""
msgid "Use this form to manage user records in your database."
msgstr ""
#: lib/mv_web/live/user_live/form.ex:266
#: lib/mv_web/live/user_live/form.ex:268
#: lib/mv_web/live/user_live/show.ex:34
#, elixir-autogen, elixir-format
msgid "User"
@ -416,8 +409,7 @@ msgstr ""
msgid "descending"
msgstr ""
#: lib/mv_web/live/member_live/form.ex:241
#: lib/mv_web/live/user_live/form.ex:265
#: lib/mv_web/live/user_live/form.ex:267
#, elixir-autogen, elixir-format
msgid "New"
msgstr ""
@ -493,8 +485,8 @@ msgid "User will be created without a password. Check 'Set Password' to add one.
msgstr ""
#: lib/mv_web/live/user_live/form.ex:126
#: lib/mv_web/live/user_live/index.html.heex:53
#: lib/mv_web/live/user_live/show.ex:55
#: lib/mv_web/live/user_live/index.html.heex:52
#: lib/mv_web/live/user_live/show.ex:53
#, elixir-autogen, elixir-format
msgid "Linked Member"
msgstr ""
@ -504,8 +496,8 @@ msgstr ""
msgid "Linked User"
msgstr ""
#: lib/mv_web/live/user_live/index.html.heex:57
#: lib/mv_web/live/user_live/show.ex:65
#: lib/mv_web/live/user_live/index.html.heex:56
#: lib/mv_web/live/user_live/show.ex:63
#, elixir-autogen, elixir-format
msgid "No member linked"
msgstr ""
@ -526,14 +518,14 @@ msgstr ""
msgid "Back to users list"
msgstr ""
#: lib/mv_web/components/layouts/navbar.ex:33
#: lib/mv_web/components/layouts/navbar.ex:39
#: lib/mv_web/components/layouts/navbar.ex:44
#: lib/mv_web/components/layouts/navbar.ex:50
#, elixir-autogen, elixir-format
msgid "Select language"
msgstr ""
#: lib/mv_web/components/layouts/navbar.ex:46
#: lib/mv_web/components/layouts/navbar.ex:66
#: lib/mv_web/components/layouts/navbar.ex:57
#: lib/mv_web/components/layouts/navbar.ex:77
#, elixir-autogen, elixir-format
msgid "Toggle dark mode"
msgstr ""
@ -701,6 +693,7 @@ msgstr ""
msgid "Manage global settings for the association."
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:102
#: lib/mv_web/live/global_settings_live.ex:56
#, elixir-autogen, elixir-format
msgid "Save Settings"
@ -721,7 +714,7 @@ msgstr ""
msgid "Available members"
msgstr ""
#: lib/mv_web/live/user_live/form.ex:357
#: lib/mv_web/live/user_live/form.ex:359
#, elixir-autogen, elixir-format
msgid "Failed to link member: %{error}"
msgstr ""
@ -761,7 +754,7 @@ msgstr ""
msgid "Unlinking scheduled"
msgstr ""
#: lib/mv_web/live/member_live/index.ex:159
#: lib/mv_web/live/member_live/index.ex:160
#, elixir-autogen, elixir-format
msgid "Copied %{count} email address to clipboard"
msgid_plural "Copied %{count} email addresses to clipboard"
@ -778,12 +771,12 @@ msgstr ""
msgid "Copy emails"
msgstr ""
#: lib/mv_web/live/member_live/index.ex:148
#: lib/mv_web/live/member_live/index.ex:149
#, elixir-autogen, elixir-format
msgid "No email addresses found"
msgstr ""
#: lib/mv_web/live/member_live/index.ex:145
#: lib/mv_web/live/member_live/index.ex:146
#, elixir-autogen, elixir-format
msgid "No members selected"
msgstr ""
@ -798,7 +791,7 @@ msgstr ""
msgid "Open in email program"
msgstr ""
#: lib/mv_web/live/member_live/index.ex:168
#: lib/mv_web/live/member_live/index.ex:169
#, elixir-autogen, elixir-format
msgid "Tip: Paste email addresses into the BCC field for privacy compliance"
msgstr ""
@ -923,3 +916,434 @@ msgstr ""
#, elixir-autogen, elixir-format
msgid "yearly"
msgstr ""
#: lib/mv_web/live/member_live/form.ex:242
#, elixir-autogen, elixir-format
msgid "Create Member"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:107
#, elixir-autogen, elixir-format
msgid "%{count} period selected"
msgid_plural "%{count} periods selected"
msgstr[0] ""
msgstr[1] ""
#: lib/mv_web/live/contribution_type_live/index.ex:113
#, elixir-autogen, elixir-format
msgid "About Contribution Types"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:138
#: lib/mv_web/live/contribution_type_live/index.ex:53
#, elixir-autogen, elixir-format
msgid "Amount"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:48
#, elixir-autogen, elixir-format
msgid "Back to Settings"
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:124
#, elixir-autogen, elixir-format
msgid "Can be changed at any time. Amount changes affect future periods only."
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:77
#, elixir-autogen, elixir-format
msgid "Cannot delete - members assigned"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:83
#, elixir-autogen, elixir-format
msgid "Change Contribution Type"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:42
#, elixir-autogen, elixir-format
msgid "Configure global settings for membership contributions."
msgstr ""
#: lib/mv_web/components/layouts/navbar.ex:34
#: lib/mv_web/live/contribution_settings_live.ex:27
#: lib/mv_web/live/contribution_settings_live.ex:40
#, elixir-autogen, elixir-format
msgid "Contribution Settings"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:62
#, elixir-autogen, elixir-format
msgid "Contribution Start"
msgstr ""
#: lib/mv_web/components/layouts/navbar.ex:32
#: lib/mv_web/live/contribution_type_live/index.ex:25
#: lib/mv_web/live/contribution_type_live/index.ex:36
#, elixir-autogen, elixir-format
msgid "Contribution Types"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:224
#, elixir-autogen, elixir-format
msgid "Contribution start"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:41
#, elixir-autogen, elixir-format
msgid "Contribution type"
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:117
#, elixir-autogen, elixir-format
msgid "Contribution types define different membership fee structures. Each type has a fixed interval (monthly, quarterly, half-yearly, yearly) that cannot be changed after creation."
msgstr ""
#: lib/mv_web/components/layouts/navbar.ex:30
#, elixir-autogen, elixir-format
msgid "Contributions"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:39
#, elixir-autogen, elixir-format
msgid "Contributions for %{name}"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:159
#, elixir-autogen, elixir-format
msgid "Current"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:60
#, elixir-autogen, elixir-format
msgid "Default Contribution Type"
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:133
#, elixir-autogen, elixir-format
msgid "Deletion"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:173
#, elixir-autogen, elixir-format
msgid "Example: Member Contribution View"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:113
#, elixir-autogen, elixir-format
msgid "Examples"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:262
#: lib/mv_web/live/contribution_type_live/index.ex:172
#, elixir-autogen, elixir-format
msgid "Family"
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:128
#, elixir-autogen, elixir-format
msgid "Fixed after creation. Members can only switch between types with the same interval."
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:228
#, elixir-autogen, elixir-format
msgid "Generated periods"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:52
#, elixir-autogen, elixir-format
msgid "Global Settings"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:343
#: lib/mv_web/live/contribution_settings_live.ex:275
#: lib/mv_web/live/contribution_type_live/index.ex:203
#, elixir-autogen, elixir-format
msgid "Half-yearly"
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:181
#, elixir-autogen, elixir-format
msgid "Half-yearly contribution for supporting members"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:87
#: lib/mv_web/live/contribution_type_live/index.ex:188
#, elixir-autogen, elixir-format
msgid "Honorary"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:85
#, elixir-autogen, elixir-format
msgid "Include joining period"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:137
#: lib/mv_web/live/contribution_type_live/index.ex:57
#: lib/mv_web/live/contribution_type_live/index.ex:127
#, elixir-autogen, elixir-format
msgid "Interval"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:220
#, elixir-autogen, elixir-format
msgid "Joining date"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:331
#, elixir-autogen, elixir-format
msgid "Joining year - reduced to 0"
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:38
#, elixir-autogen, elixir-format
msgid "Manage contribution types for membership fees."
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:116
#, elixir-autogen, elixir-format
msgid "Mark as Paid"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:120
#, elixir-autogen, elixir-format
msgid "Mark as Suspended"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:124
#, elixir-autogen, elixir-format
msgid "Mark as Unpaid"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:26
#, elixir-autogen, elixir-format
msgid "Member Contributions"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:122
#, elixir-autogen, elixir-format
msgid "Member pays for the year they joined"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:155
#, elixir-autogen, elixir-format
msgid "Member pays from the joining month"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:144
#, elixir-autogen, elixir-format
msgid "Member pays from the next full quarter"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:133
#, elixir-autogen, elixir-format
msgid "Member pays from the next full year"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:43
#, elixir-autogen, elixir-format
msgid "Member since"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:92
#, elixir-autogen, elixir-format
msgid "Members can only switch between contribution types with the same payment interval (e.g., yearly to yearly). This prevents complex period overlaps."
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:341
#: lib/mv_web/live/contribution_settings_live.ex:273
#: lib/mv_web/live/contribution_type_live/index.ex:201
#, elixir-autogen, elixir-format
msgid "Monthly"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:150
#, elixir-autogen, elixir-format
msgid "Monthly Interval - Joining Period Included"
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:165
#, elixir-autogen, elixir-format
msgid "Monthly fee for students and trainees"
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:123
#, elixir-autogen, elixir-format
msgid "Name & Amount"
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:42
#, elixir-autogen, elixir-format
msgid "New Contribution Type"
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:189
#, elixir-autogen, elixir-format
msgid "No fee for honorary members"
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:134
#, elixir-autogen, elixir-format
msgid "Only possible if no members are assigned to this type."
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:70
#, elixir-autogen, elixir-format
msgid "Open Contributions"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:301
#, elixir-autogen, elixir-format
msgid "Paid via bank transfer"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:225
#: lib/mv_web/live/contribution_settings_live.ex:197
#: lib/mv_web/live/contribution_type_live/index.ex:97
#, elixir-autogen, elixir-format
msgid "Preview Mockup"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:342
#: lib/mv_web/live/contribution_settings_live.ex:274
#: lib/mv_web/live/contribution_type_live/index.ex:202
#, elixir-autogen, elixir-format
msgid "Quarterly"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:139
#, elixir-autogen, elixir-format
msgid "Quarterly Interval - Joining Period Excluded"
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:173
#, elixir-autogen, elixir-format
msgid "Quarterly fee for family memberships"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:86
#: lib/mv_web/live/contribution_settings_live.ex:250
#: lib/mv_web/live/contribution_type_live/index.ex:156
#, elixir-autogen, elixir-format
msgid "Reduced"
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:157
#, elixir-autogen, elixir-format
msgid "Reduced fee for unemployed, pensioners, or low income"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:275
#: lib/mv_web/live/contribution_settings_live.ex:244
#: lib/mv_web/live/contribution_type_live/index.ex:148
#, elixir-autogen, elixir-format
msgid "Regular"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:204
#, elixir-autogen, elixir-format
msgid "Reopen"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:176
#, elixir-autogen, elixir-format
msgid "See how the contribution periods will be displayed for an individual member. This example shows Maria Weber with multiple contribution periods."
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:149
#, elixir-autogen, elixir-format
msgid "Standard membership fee for regular members"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:139
#, elixir-autogen, elixir-format
msgid "Status"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:256
#: lib/mv_web/live/contribution_type_live/index.ex:164
#, elixir-autogen, elixir-format
msgid "Student"
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:180
#, elixir-autogen, elixir-format
msgid "Supporting Member"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:195
#, elixir-autogen, elixir-format
msgid "Suspend"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:259
#, elixir-autogen, elixir-format
msgid "Suspended"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:69
#, elixir-autogen, elixir-format
msgid "This contribution type is automatically assigned to all new members. Can be changed individually per member."
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:227
#: lib/mv_web/live/contribution_settings_live.ex:199
#: lib/mv_web/live/contribution_type_live/index.ex:99
#, elixir-autogen, elixir-format
msgid "This page is not functional and only displays the planned features."
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:136
#, elixir-autogen, elixir-format
msgid "Time Period"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:66
#, elixir-autogen, elixir-format
msgid "Total Contributions"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:250
#, elixir-autogen, elixir-format
msgid "Unpaid"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:183
#, elixir-autogen, elixir-format
msgid "View Example Member"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:90
#, elixir-autogen, elixir-format
msgid "When active: Members pay from the period of their joining."
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:93
#, elixir-autogen, elixir-format
msgid "When inactive: Members pay from the next full period after joining."
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:98
#, elixir-autogen, elixir-format
msgid "Why are not all contribution types shown?"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:85
#: lib/mv_web/live/contribution_period_live/show.ex:86
#: lib/mv_web/live/contribution_period_live/show.ex:87
#: lib/mv_web/live/contribution_period_live/show.ex:344
#: lib/mv_web/live/contribution_settings_live.ex:276
#: lib/mv_web/live/contribution_type_live/index.ex:204
#, elixir-autogen, elixir-format
msgid "Yearly"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:128
#, elixir-autogen, elixir-format
msgid "Yearly Interval - Joining Period Excluded"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:117
#, elixir-autogen, elixir-format
msgid "Yearly Interval - Joining Period Included"
msgstr ""

View file

@ -11,13 +11,14 @@ msgstr ""
"Language: en\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: lib/mv_web/components/core_components.ex:386
#: lib/mv_web/components/core_components.ex:387
#: lib/mv_web/live/contribution_period_live/show.ex:141
#, elixir-autogen, elixir-format
msgid "Actions"
msgstr ""
#: lib/mv_web/live/member_live/index.html.heex:248
#: lib/mv_web/live/user_live/index.html.heex:72
#: lib/mv_web/live/user_live/index.html.heex:71
#, elixir-autogen, elixir-format
msgid "Are you sure?"
msgstr ""
@ -34,32 +35,35 @@ msgstr ""
msgid "City"
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:78
#: lib/mv_web/live/member_live/index.html.heex:250
#: lib/mv_web/live/user_live/index.html.heex:74
#: lib/mv_web/live/user_live/index.html.heex:73
#, elixir-autogen, elixir-format
msgid "Delete"
msgstr ""
#: lib/mv_web/live/member_live/form.ex:241
#: lib/mv_web/live/contribution_type_live/index.ex:66
#: lib/mv_web/live/member_live/index.html.heex:242
#: lib/mv_web/live/user_live/form.ex:265
#: lib/mv_web/live/user_live/index.html.heex:66
#: lib/mv_web/live/user_live/form.ex:267
#: lib/mv_web/live/user_live/index.html.heex:65
#, elixir-autogen, elixir-format
msgid "Edit"
msgstr ""
#: lib/mv_web/live/member_live/form.ex:242
#: lib/mv_web/live/member_live/show.ex:40
#: lib/mv_web/live/member_live/show.ex:197
#, elixir-autogen, elixir-format
msgid "Edit Member"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:58
#: lib/mv_web/live/member_live/form.ex:106
#: lib/mv_web/live/member_live/index.html.heex:112
#: lib/mv_web/live/member_live/show.ex:75
#: lib/mv_web/live/user_live/form.ex:46
#: lib/mv_web/live/user_live/index.html.heex:44
#: lib/mv_web/live/user_live/show.ex:50
#: lib/mv_web/live/user_live/show.ex:49
#, elixir-autogen, elixir-format
msgid "Email"
msgstr ""
@ -90,7 +94,7 @@ msgid "New Member"
msgstr ""
#: lib/mv_web/live/member_live/index.html.heex:239
#: lib/mv_web/live/user_live/index.html.heex:63
#: lib/mv_web/live/user_live/index.html.heex:62
#, elixir-autogen, elixir-format
msgid "Show"
msgstr ""
@ -121,6 +125,7 @@ msgstr ""
msgid "House Number"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:140
#: lib/mv_web/live/member_live/form.ex:126
#: lib/mv_web/live/member_live/show.ex:124
#, elixir-autogen, elixir-format
@ -129,6 +134,8 @@ msgstr ""
#: lib/mv_web/live/components/payment_filter_component.ex:94
#: lib/mv_web/live/components/payment_filter_component.ex:144
#: lib/mv_web/live/contribution_period_live/show.ex:186
#: lib/mv_web/live/contribution_period_live/show.ex:241
#: lib/mv_web/live/member_live/form.ex:199
#: lib/mv_web/live/member_live/index.html.heex:229
#: lib/mv_web/live/member_live/show.ex:162
@ -158,7 +165,7 @@ msgstr ""
#: lib/mv_web/live/global_settings_live.ex:55
#: lib/mv_web/live/member_live/form.ex:48
#: lib/mv_web/live/member_live/form.ex:210
#: lib/mv_web/live/user_live/form.ex:248
#: lib/mv_web/live/user_live/form.ex:249
#, elixir-autogen, elixir-format
msgid "Saving..."
msgstr ""
@ -170,8 +177,8 @@ msgid "Street"
msgstr ""
#: lib/mv_web/live/member_live/index.html.heex:234
#: lib/mv_web/live/member_live/index/formatter.ex:61
#: lib/mv_web/live/member_live/show.ex:303
#: lib/mv_web/live/member_live/index/formatter.ex:62
#: lib/mv_web/live/member_live/show.ex:290
#, elixir-autogen, elixir-format
msgid "No"
msgstr ""
@ -182,8 +189,8 @@ msgid "Show Member"
msgstr ""
#: lib/mv_web/live/member_live/index.html.heex:234
#: lib/mv_web/live/member_live/index/formatter.ex:60
#: lib/mv_web/live/member_live/show.ex:303
#: lib/mv_web/live/member_live/index/formatter.ex:61
#: lib/mv_web/live/member_live/show.ex:290
#, elixir-autogen, elixir-format
msgid "Yes"
msgstr ""
@ -241,7 +248,7 @@ msgstr ""
#: lib/mv_web/live/custom_field_live/index.ex:120
#: lib/mv_web/live/custom_field_value_live/form.ex:77
#: lib/mv_web/live/member_live/form.ex:208
#: lib/mv_web/live/user_live/form.ex:251
#: lib/mv_web/live/user_live/form.ex:252
#, elixir-autogen, elixir-format
msgid "Cancel"
msgstr ""
@ -261,22 +268,17 @@ msgstr ""
msgid "Edit User"
msgstr ""
#: lib/mv_web/live/user_live/show.ex:53
#: lib/mv_web/live/user_live/show.ex:51
#, elixir-autogen, elixir-format
msgid "Enabled"
msgstr ""
#: lib/mv_web/live/user_live/show.ex:49
#, elixir-autogen, elixir-format
msgid "ID"
msgstr ""
#: lib/mv_web/live/custom_field_live/form.ex:62
#, elixir-autogen, elixir-format
msgid "Immutable"
msgstr ""
#: lib/mv_web/components/layouts/navbar.ex:102
#: lib/mv_web/components/layouts/navbar.ex:113
#, elixir-autogen, elixir-format
msgid "Logout"
msgstr ""
@ -288,18 +290,19 @@ msgid "Listing Users"
msgstr ""
#: lib/mv_web/live/custom_field_value_live/form.ex:60
#: lib/mv_web/live/member_live/form.ex:242
#, elixir-autogen, elixir-format
msgid "Member"
msgstr ""
#: lib/mv_web/components/layouts/navbar.ex:25
#: lib/mv_web/live/member_live/index.ex:73
#: lib/mv_web/live/contribution_type_live/index.ex:61
#: lib/mv_web/live/member_live/index.ex:74
#: lib/mv_web/live/member_live/index.html.heex:3
#, elixir-autogen, elixir-format
msgid "Members"
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:48
#: lib/mv_web/live/custom_field_live/form.ex:51
#, elixir-autogen, elixir-format
msgid "Name"
@ -310,16 +313,12 @@ msgstr ""
msgid "New User"
msgstr ""
#: lib/mv_web/live/user_live/show.ex:53
#: lib/mv_web/live/user_live/show.ex:51
#, elixir-autogen, elixir-format
msgid "Not enabled"
msgstr ""
#: lib/mv_web/live/user_live/show.ex:51
#, elixir-autogen, elixir-format, fuzzy
msgid "Not set"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:207
#: lib/mv_web/live/user_live/form.ex:107
#: lib/mv_web/live/user_live/form.ex:115
#: lib/mv_web/live/user_live/form.ex:224
@ -327,18 +326,12 @@ msgstr ""
msgid "Note"
msgstr ""
#: lib/mv_web/live/user_live/index.html.heex:52
#: lib/mv_web/live/user_live/show.ex:51
#, elixir-autogen, elixir-format
msgid "OIDC ID"
msgstr ""
#: lib/mv_web/live/user_live/show.ex:52
#: lib/mv_web/live/user_live/show.ex:50
#, elixir-autogen, elixir-format
msgid "Password Authentication"
msgstr ""
#: lib/mv_web/components/layouts/navbar.ex:95
#: lib/mv_web/components/layouts/navbar.ex:106
#, elixir-autogen, elixir-format
msgid "Profil"
msgstr ""
@ -358,17 +351,17 @@ msgstr ""
msgid "Select member"
msgstr ""
#: lib/mv_web/components/layouts/navbar.ex:99
#: lib/mv_web/components/layouts/navbar.ex:110
#, elixir-autogen, elixir-format
msgid "Settings"
msgstr ""
#: lib/mv_web/live/user_live/form.ex:249
#: lib/mv_web/live/user_live/form.ex:250
#, elixir-autogen, elixir-format, fuzzy
msgid "Save User"
msgstr ""
#: lib/mv_web/live/user_live/show.ex:79
#: lib/mv_web/live/user_live/show.ex:77
#, elixir-autogen, elixir-format, fuzzy
msgid "Show User"
msgstr ""
@ -388,7 +381,7 @@ msgstr ""
msgid "Use this form to manage user records in your database."
msgstr ""
#: lib/mv_web/live/user_live/form.ex:266
#: lib/mv_web/live/user_live/form.ex:268
#: lib/mv_web/live/user_live/show.ex:34
#, elixir-autogen, elixir-format
msgid "User"
@ -416,8 +409,7 @@ msgstr ""
msgid "descending"
msgstr ""
#: lib/mv_web/live/member_live/form.ex:241
#: lib/mv_web/live/user_live/form.ex:265
#: lib/mv_web/live/user_live/form.ex:267
#, elixir-autogen, elixir-format
msgid "New"
msgstr ""
@ -493,8 +485,8 @@ msgid "User will be created without a password. Check 'Set Password' to add one.
msgstr "User will be created without a password. Check 'Set Password' to add one."
#: lib/mv_web/live/user_live/form.ex:126
#: lib/mv_web/live/user_live/index.html.heex:53
#: lib/mv_web/live/user_live/show.ex:55
#: lib/mv_web/live/user_live/index.html.heex:52
#: lib/mv_web/live/user_live/show.ex:53
#, elixir-autogen, elixir-format, fuzzy
msgid "Linked Member"
msgstr ""
@ -504,8 +496,8 @@ msgstr ""
msgid "Linked User"
msgstr ""
#: lib/mv_web/live/user_live/index.html.heex:57
#: lib/mv_web/live/user_live/show.ex:65
#: lib/mv_web/live/user_live/index.html.heex:56
#: lib/mv_web/live/user_live/show.ex:63
#, elixir-autogen, elixir-format
msgid "No member linked"
msgstr ""
@ -526,14 +518,14 @@ msgstr ""
msgid "Back to users list"
msgstr ""
#: lib/mv_web/components/layouts/navbar.ex:33
#: lib/mv_web/components/layouts/navbar.ex:39
#: lib/mv_web/components/layouts/navbar.ex:44
#: lib/mv_web/components/layouts/navbar.ex:50
#, elixir-autogen, elixir-format, fuzzy
msgid "Select language"
msgstr ""
#: lib/mv_web/components/layouts/navbar.ex:46
#: lib/mv_web/components/layouts/navbar.ex:66
#: lib/mv_web/components/layouts/navbar.ex:57
#: lib/mv_web/components/layouts/navbar.ex:77
#, elixir-autogen, elixir-format
msgid "Toggle dark mode"
msgstr ""
@ -701,6 +693,7 @@ msgstr ""
msgid "Manage global settings for the association."
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:102
#: lib/mv_web/live/global_settings_live.ex:56
#, elixir-autogen, elixir-format, fuzzy
msgid "Save Settings"
@ -721,7 +714,7 @@ msgstr ""
msgid "Available members"
msgstr ""
#: lib/mv_web/live/user_live/form.ex:357
#: lib/mv_web/live/user_live/form.ex:359
#, elixir-autogen, elixir-format
msgid "Failed to link member: %{error}"
msgstr ""
@ -761,7 +754,7 @@ msgstr ""
msgid "Unlinking scheduled"
msgstr ""
#: lib/mv_web/live/member_live/index.ex:159
#: lib/mv_web/live/member_live/index.ex:160
#, elixir-autogen, elixir-format
msgid "Copied %{count} email address to clipboard"
msgid_plural "Copied %{count} email addresses to clipboard"
@ -778,12 +771,12 @@ msgstr ""
msgid "Copy emails"
msgstr ""
#: lib/mv_web/live/member_live/index.ex:148
#: lib/mv_web/live/member_live/index.ex:149
#, elixir-autogen, elixir-format
msgid "No email addresses found"
msgstr ""
#: lib/mv_web/live/member_live/index.ex:145
#: lib/mv_web/live/member_live/index.ex:146
#, elixir-autogen, elixir-format, fuzzy
msgid "No members selected"
msgstr ""
@ -798,7 +791,7 @@ msgstr ""
msgid "Open in email program"
msgstr ""
#: lib/mv_web/live/member_live/index.ex:168
#: lib/mv_web/live/member_live/index.ex:169
#, elixir-autogen, elixir-format
msgid "Tip: Paste email addresses into the BCC field for privacy compliance"
msgstr ""
@ -924,11 +917,458 @@ msgstr ""
msgid "yearly"
msgstr ""
#: lib/mv_web/live/member_live/form.ex:242
#, elixir-autogen, elixir-format
msgid "Create Member"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:107
#, elixir-autogen, elixir-format
msgid "%{count} period selected"
msgid_plural "%{count} periods selected"
msgstr[0] ""
msgstr[1] ""
#: lib/mv_web/live/contribution_type_live/index.ex:113
#, elixir-autogen, elixir-format
msgid "About Contribution Types"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:138
#: lib/mv_web/live/contribution_type_live/index.ex:53
#, elixir-autogen, elixir-format
msgid "Amount"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:48
#, elixir-autogen, elixir-format
msgid "Back to Settings"
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:124
#, elixir-autogen, elixir-format
msgid "Can be changed at any time. Amount changes affect future periods only."
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:77
#, elixir-autogen, elixir-format
msgid "Cannot delete - members assigned"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:83
#, elixir-autogen, elixir-format
msgid "Change Contribution Type"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:42
#, elixir-autogen, elixir-format
msgid "Configure global settings for membership contributions."
msgstr ""
#: lib/mv_web/components/layouts/navbar.ex:34
#: lib/mv_web/live/contribution_settings_live.ex:27
#: lib/mv_web/live/contribution_settings_live.ex:40
#, elixir-autogen, elixir-format, fuzzy
msgid "Contribution Settings"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:62
#, elixir-autogen, elixir-format, fuzzy
msgid "Contribution Start"
msgstr ""
#: lib/mv_web/components/layouts/navbar.ex:32
#: lib/mv_web/live/contribution_type_live/index.ex:25
#: lib/mv_web/live/contribution_type_live/index.ex:36
#, elixir-autogen, elixir-format, fuzzy
msgid "Contribution Types"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:224
#, elixir-autogen, elixir-format, fuzzy
msgid "Contribution start"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:41
#, elixir-autogen, elixir-format, fuzzy
msgid "Contribution type"
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:117
#, elixir-autogen, elixir-format
msgid "Contribution types define different membership fee structures. Each type has a fixed interval (monthly, quarterly, half-yearly, yearly) that cannot be changed after creation."
msgstr ""
#: lib/mv_web/components/layouts/navbar.ex:30
#, elixir-autogen, elixir-format, fuzzy
msgid "Contributions"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:39
#, elixir-autogen, elixir-format, fuzzy
msgid "Contributions for %{name}"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:159
#, elixir-autogen, elixir-format
msgid "Current"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:60
#, elixir-autogen, elixir-format
msgid "Default Contribution Type"
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:133
#, elixir-autogen, elixir-format, fuzzy
msgid "Deletion"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:173
#, elixir-autogen, elixir-format
msgid "Example: Member Contribution View"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:113
#, elixir-autogen, elixir-format
msgid "Examples"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:262
#: lib/mv_web/live/contribution_type_live/index.ex:172
#, elixir-autogen, elixir-format
msgid "Family"
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:128
#, elixir-autogen, elixir-format
msgid "Fixed after creation. Members can only switch between types with the same interval."
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:228
#, elixir-autogen, elixir-format
msgid "Generated periods"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:52
#, elixir-autogen, elixir-format, fuzzy
msgid "Global Settings"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:343
#: lib/mv_web/live/contribution_settings_live.ex:275
#: lib/mv_web/live/contribution_type_live/index.ex:203
#, elixir-autogen, elixir-format
msgid "Half-yearly"
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:181
#, elixir-autogen, elixir-format
msgid "Half-yearly contribution for supporting members"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:87
#: lib/mv_web/live/contribution_type_live/index.ex:188
#, elixir-autogen, elixir-format
msgid "Honorary"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:85
#, elixir-autogen, elixir-format
msgid "Include joining period"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:137
#: lib/mv_web/live/contribution_type_live/index.ex:57
#: lib/mv_web/live/contribution_type_live/index.ex:127
#, elixir-autogen, elixir-format
msgid "Interval"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:220
#, elixir-autogen, elixir-format, fuzzy
msgid "Joining date"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:331
#, elixir-autogen, elixir-format
msgid "Joining year - reduced to 0"
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:38
#, elixir-autogen, elixir-format
msgid "Manage contribution types for membership fees."
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:116
#, elixir-autogen, elixir-format
msgid "Mark as Paid"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:120
#, elixir-autogen, elixir-format
msgid "Mark as Suspended"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:124
#, elixir-autogen, elixir-format
msgid "Mark as Unpaid"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:26
#, elixir-autogen, elixir-format
msgid "Member Contributions"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:122
#, elixir-autogen, elixir-format
msgid "Member pays for the year they joined"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:155
#, elixir-autogen, elixir-format
msgid "Member pays from the joining month"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:144
#, elixir-autogen, elixir-format
msgid "Member pays from the next full quarter"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:133
#, elixir-autogen, elixir-format
msgid "Member pays from the next full year"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:43
#, elixir-autogen, elixir-format, fuzzy
msgid "Member since"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:92
#, elixir-autogen, elixir-format
msgid "Members can only switch between contribution types with the same payment interval (e.g., yearly to yearly). This prevents complex period overlaps."
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:341
#: lib/mv_web/live/contribution_settings_live.ex:273
#: lib/mv_web/live/contribution_type_live/index.ex:201
#, elixir-autogen, elixir-format, fuzzy
msgid "Monthly"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:150
#, elixir-autogen, elixir-format
msgid "Monthly Interval - Joining Period Included"
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:165
#, elixir-autogen, elixir-format
msgid "Monthly fee for students and trainees"
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:123
#, elixir-autogen, elixir-format
msgid "Name & Amount"
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:42
#, elixir-autogen, elixir-format, fuzzy
msgid "New Contribution Type"
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:189
#, elixir-autogen, elixir-format
msgid "No fee for honorary members"
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:134
#, elixir-autogen, elixir-format
msgid "Only possible if no members are assigned to this type."
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:70
#, elixir-autogen, elixir-format
msgid "Open Contributions"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:301
#, elixir-autogen, elixir-format
msgid "Paid via bank transfer"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:225
#: lib/mv_web/live/contribution_settings_live.ex:197
#: lib/mv_web/live/contribution_type_live/index.ex:97
#, elixir-autogen, elixir-format
msgid "Preview Mockup"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:342
#: lib/mv_web/live/contribution_settings_live.ex:274
#: lib/mv_web/live/contribution_type_live/index.ex:202
#, elixir-autogen, elixir-format
msgid "Quarterly"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:139
#, elixir-autogen, elixir-format
msgid "Quarterly Interval - Joining Period Excluded"
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:173
#, elixir-autogen, elixir-format
msgid "Quarterly fee for family memberships"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:86
#: lib/mv_web/live/contribution_settings_live.ex:250
#: lib/mv_web/live/contribution_type_live/index.ex:156
#, elixir-autogen, elixir-format
msgid "Reduced"
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:157
#, elixir-autogen, elixir-format
msgid "Reduced fee for unemployed, pensioners, or low income"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:275
#: lib/mv_web/live/contribution_settings_live.ex:244
#: lib/mv_web/live/contribution_type_live/index.ex:148
#, elixir-autogen, elixir-format
msgid "Regular"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:204
#, elixir-autogen, elixir-format
msgid "Reopen"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:176
#, elixir-autogen, elixir-format
msgid "See how the contribution periods will be displayed for an individual member. This example shows Maria Weber with multiple contribution periods."
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:149
#, elixir-autogen, elixir-format
msgid "Standard membership fee for regular members"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:139
#, elixir-autogen, elixir-format
msgid "Status"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:256
#: lib/mv_web/live/contribution_type_live/index.ex:164
#, elixir-autogen, elixir-format
msgid "Student"
msgstr ""
#: lib/mv_web/live/contribution_type_live/index.ex:180
#, elixir-autogen, elixir-format
msgid "Supporting Member"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:195
#, elixir-autogen, elixir-format
msgid "Suspend"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:259
#, elixir-autogen, elixir-format
msgid "Suspended"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:69
#, elixir-autogen, elixir-format
msgid "This contribution type is automatically assigned to all new members. Can be changed individually per member."
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:227
#: lib/mv_web/live/contribution_settings_live.ex:199
#: lib/mv_web/live/contribution_type_live/index.ex:99
#, elixir-autogen, elixir-format
msgid "This page is not functional and only displays the planned features."
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:136
#, elixir-autogen, elixir-format
msgid "Time Period"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:66
#, elixir-autogen, elixir-format
msgid "Total Contributions"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:250
#, elixir-autogen, elixir-format
msgid "Unpaid"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:183
#, elixir-autogen, elixir-format
msgid "View Example Member"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:90
#, elixir-autogen, elixir-format
msgid "When active: Members pay from the period of their joining."
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:93
#, elixir-autogen, elixir-format
msgid "When inactive: Members pay from the next full period after joining."
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:98
#, elixir-autogen, elixir-format
msgid "Why are not all contribution types shown?"
msgstr ""
#: lib/mv_web/live/contribution_period_live/show.ex:85
#: lib/mv_web/live/contribution_period_live/show.ex:86
#: lib/mv_web/live/contribution_period_live/show.ex:87
#: lib/mv_web/live/contribution_period_live/show.ex:344
#: lib/mv_web/live/contribution_settings_live.ex:276
#: lib/mv_web/live/contribution_type_live/index.ex:204
#, elixir-autogen, elixir-format, fuzzy
msgid "Yearly"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:128
#, elixir-autogen, elixir-format
msgid "Yearly Interval - Joining Period Excluded"
msgstr ""
#: lib/mv_web/live/contribution_settings_live.ex:117
#, elixir-autogen, elixir-format
msgid "Yearly Interval - Joining Period Included"
msgstr ""
#~ #: lib/mv_web/live/user_live/show.ex:49
#~ #, elixir-autogen, elixir-format
#~ msgid "ID"
#~ msgstr ""
#~ #: lib/mv_web/live/member_live/show.ex:47
#~ #, elixir-autogen, elixir-format
#~ msgid "Id"
#~ msgstr ""
#~ #: lib/mv_web/live/user_live/show.ex:51
#~ #, elixir-autogen, elixir-format, fuzzy
#~ msgid "Not set"
#~ msgstr ""
#~ #: lib/mv_web/live/user_live/index.html.heex:52
#~ #: lib/mv_web/live/user_live/show.ex:51
#~ #, elixir-autogen, elixir-format
#~ msgid "OIDC ID"
#~ msgstr ""
#~ #: lib/mv_web/live/member_live/show.ex:33
#~ #, elixir-autogen, elixir-format
#~ msgid "This is a member record from your database."