mailer: add internal_only flag

pull/73/head
Christian Merten 1 year ago
parent 459d4b0e72
commit df16729bd6
Signed by: christian.merten
GPG Key ID: D953D69721B948B3

@ -22,7 +22,8 @@ class AttachmentInline(CommonAdminInlineMixin, admin.TabularInline):
class EmailAddressAdmin(FilteredMemberFieldMixin, admin.ModelAdmin): class EmailAddressAdmin(FilteredMemberFieldMixin, admin.ModelAdmin):
list_display = ('email', ) list_display = ('email', 'internal_only')
fields = ('name', 'to_members', 'to_groups', 'internal_only')
#formfield_overrides = { #formfield_overrides = {
# models.ManyToManyField: {'widget': forms.CheckboxSelectMultiple}, # models.ManyToManyField: {'widget': forms.CheckboxSelectMultiple},
# models.ForeignKey: {'widget': apply_select2(forms.Select)} # models.ForeignKey: {'widget': apply_select2(forms.Select)}

@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2024-12-01 16:56+0100\n" "POT-Creation-Date: 2024-12-01 18:49+0100\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
@ -18,19 +18,19 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n != 1);\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n"
#: mailer/admin.py:68 #: mailer/admin.py:69
msgid "Send message" msgid "Send message"
msgstr "Nachricht verschicken" msgstr "Nachricht verschicken"
#: mailer/admin.py:98 #: mailer/admin.py:99
msgid "Failed to send message" msgid "Failed to send message"
msgstr "Fehler beim Senden der Email" msgstr "Fehler beim Senden der Email"
#: mailer/admin.py:100 #: mailer/admin.py:101
msgid "Failed to send some messages" msgid "Failed to send some messages"
msgstr "Fehler beim Senden der Emails" msgstr "Fehler beim Senden der Emails"
#: mailer/admin.py:102 #: mailer/admin.py:103
msgid "Successfully sent message" msgid "Successfully sent message"
msgstr "Email wurde erfolgreich verschickt" msgstr "Email wurde erfolgreich verschickt"
@ -59,11 +59,21 @@ msgstr "Weiterleitung an Teilnehmer*innen"
msgid "Forward to group" msgid "Forward to group"
msgstr "Weiterleitung an Gruppe" msgstr "Weiterleitung an Gruppe"
#: mailer/models.py:31
msgid "Restrict to internal email addresses"
msgstr "Weiterleitung nur von internen E-Mail Adressen erlaubt"
#: mailer/models.py:32 #: mailer/models.py:32
msgid "Only allow forwarding to this e-mail address from the internal domain."
msgstr ""
"Leite nur E-Mails weiter, die von ...@alpenverein-heidelberg.de verschickt "
"wurden. "
#: mailer/models.py:35
msgid "Allowed sender" msgid "Allowed sender"
msgstr "Erlaubte Absender:innen" msgstr "Erlaubte Absender:innen"
#: mailer/models.py:33 #: mailer/models.py:36
msgid "" msgid ""
"Only forward e-mails of members of selected groups. Leave empty to allow all " "Only forward e-mails of members of selected groups. Leave empty to allow all "
"senders." "senders."
@ -71,100 +81,100 @@ msgstr ""
"Leite nur E-Mails von Mitgliedern dieser Gruppen weiter. Lasse dieses Feld " "Leite nur E-Mails von Mitgliedern dieser Gruppen weiter. Lasse dieses Feld "
"frei, um alle Absender*innen zu erlauben." "frei, um alle Absender*innen zu erlauben."
#: mailer/models.py:51 #: mailer/models.py:54
msgid "email address" msgid "email address"
msgstr "Email-Adresse" msgstr "Email-Adresse"
#: mailer/models.py:52 #: mailer/models.py:55
msgid "email addresses" msgid "email addresses"
msgstr "Email-Adressen" msgstr "Email-Adressen"
#: mailer/models.py:65 #: mailer/models.py:68
msgid "Either a group or at least one member is required as forward recipient." msgid "Either a group or at least one member is required as forward recipient."
msgstr "" msgstr ""
"Es muss entweder eine Gruppe oder mindestens ein*e Teilnehmer*in als " "Es muss entweder eine Gruppe oder mindestens ein*e Teilnehmer*in als "
"Empfänger*in ausgewählt werden." "Empfänger*in ausgewählt werden."
#: mailer/models.py:73 #: mailer/models.py:76
msgid "subject" msgid "subject"
msgstr "Betreff" msgstr "Betreff"
#: mailer/models.py:74 #: mailer/models.py:77
msgid "content" msgid "content"
msgstr "Inhalt" msgstr "Inhalt"
#: mailer/models.py:76 #: mailer/models.py:79
msgid "to group" msgid "to group"
msgstr "An Gruppe" msgstr "An Gruppe"
#: mailer/models.py:79 #: mailer/models.py:82
msgid "to freizeit" msgid "to freizeit"
msgstr "An Ausfahrt" msgstr "An Ausfahrt"
#: mailer/models.py:84 #: mailer/models.py:87
msgid "to notes list" msgid "to notes list"
msgstr "An Notizliste" msgstr "An Notizliste"
#: mailer/models.py:89 #: mailer/models.py:92
msgid "to member" msgid "to member"
msgstr "An Teilnehmer*innen" msgstr "An Teilnehmer*innen"
#: mailer/models.py:92 #: mailer/models.py:95
msgid "reply to participant" msgid "reply to participant"
msgstr "Antwort an Teilnehmer*innen" msgstr "Antwort an Teilnehmer*innen"
#: mailer/models.py:96 #: mailer/models.py:99
msgid "reply to custom email address" msgid "reply to custom email address"
msgstr "Antwort an Email-Adresse" msgstr "Antwort an Email-Adresse"
#: mailer/models.py:99 #: mailer/models.py:102
msgid "sent" msgid "sent"
msgstr "Gesendet" msgstr "Gesendet"
#: mailer/models.py:100 #: mailer/models.py:103
msgid "Created by" msgid "Created by"
msgstr "Erstellt von" msgstr "Erstellt von"
#: mailer/models.py:118 #: mailer/models.py:121
msgid "Some other members" msgid "Some other members"
msgstr "Andere Teilnehmer*innen" msgstr "Andere Teilnehmer*innen"
#: mailer/models.py:120 #: mailer/models.py:123
msgid "recipients" msgid "recipients"
msgstr "Empfänger" msgstr "Empfänger"
#: mailer/models.py:183 #: mailer/models.py:186
msgid "message" msgid "message"
msgstr "Nachricht" msgstr "Nachricht"
#: mailer/models.py:184 #: mailer/models.py:187
msgid "messages" msgid "messages"
msgstr "Nachrichten" msgstr "Nachrichten"
#: mailer/models.py:186 #: mailer/models.py:189
msgid "Can submit mails" msgid "Can submit mails"
msgstr "Kann Mails verschicken" msgstr "Kann Mails verschicken"
#: mailer/models.py:207 #: mailer/models.py:210
msgid "" msgid ""
"Either a group, a memberlist or at least one member is required as recipient" "Either a group, a memberlist or at least one member is required as recipient"
msgstr "" msgstr ""
"Es muss entweder eine Gruppe, eine Teilnehmer*innenliste oder mindestens " "Es muss entweder eine Gruppe, eine Teilnehmer*innenliste oder mindestens "
"ein*e Teilnehmer*in als Empfänger*in ausgewählt werden." "ein*e Teilnehmer*in als Empfänger*in ausgewählt werden."
#: mailer/models.py:214 #: mailer/models.py:217
msgid "file" msgid "file"
msgstr "Datei" msgstr "Datei"
#: mailer/models.py:219 #: mailer/models.py:222
msgid "Empty" msgid "Empty"
msgstr "Leer" msgstr "Leer"
#: mailer/models.py:222 #: mailer/models.py:225
msgid "attachment" msgid "attachment"
msgstr "Anhang" msgstr "Anhang"
#: mailer/models.py:223 #: mailer/models.py:226
msgid "attachments" msgid "attachments"
msgstr "Anhänge" msgstr "Anhänge"

@ -0,0 +1,18 @@
# Generated by Django 4.0.1 on 2024-12-01 17:45
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('mailer', '0006_emailaddress_allowed_senders'),
]
operations = [
migrations.AddField(
model_name='emailaddress',
name='internal_only',
field=models.BooleanField(default=False, help_text='Only allow forwarding to this e-mail address from the internal domain.', verbose_name='Restrict to internal email addresses'),
),
]

@ -28,6 +28,9 @@ class EmailAddress(models.Model):
to_groups = models.ManyToManyField('members.Group', to_groups = models.ManyToManyField('members.Group',
verbose_name=_('Forward to group'), verbose_name=_('Forward to group'),
blank=True) blank=True)
internal_only = models.BooleanField(verbose_name=_('Restrict to internal email addresses'),
help_text=_('Only allow forwarding to this e-mail address from the internal domain.'),
default=False)
allowed_senders = models.ManyToManyField('members.Group', allowed_senders = models.ManyToManyField('members.Group',
verbose_name=_('Allowed sender'), verbose_name=_('Allowed sender'),
help_text=_('Only forward e-mails of members of selected groups. Leave empty to allow all senders.'), help_text=_('Only forward e-mails of members of selected groups. Leave empty to allow all senders.'),

Loading…
Cancel
Save