Add app for PZ.
authorRadek Czajka <rczajka@rczajka.pl>
Mon, 27 Sep 2021 13:53:29 +0000 (15:53 +0200)
committerRadek Czajka <rczajka@rczajka.pl>
Mon, 27 Sep 2021 13:53:29 +0000 (15:53 +0200)
22 files changed:
src/club/admin.py
src/club/migrations/0037_delete_directdebit.py [new file with mode: 0644]
src/club/models.py
src/pz/__init__.py [new file with mode: 0644]
src/pz/admin.py [new file with mode: 0644]
src/pz/apps.py [new file with mode: 0644]
src/pz/locale/de/LC_MESSAGES/django.po [new file with mode: 0644]
src/pz/locale/en/LC_MESSAGES/django.po [new file with mode: 0644]
src/pz/locale/es/LC_MESSAGES/django.po [new file with mode: 0644]
src/pz/locale/fr/LC_MESSAGES/django.po [new file with mode: 0644]
src/pz/locale/it/LC_MESSAGES/django.po [new file with mode: 0644]
src/pz/locale/lt/LC_MESSAGES/django.po [new file with mode: 0644]
src/pz/locale/pl/LC_MESSAGES/django.mo [new file with mode: 0644]
src/pz/locale/pl/LC_MESSAGES/django.po [new file with mode: 0644]
src/pz/locale/ru/LC_MESSAGES/django.po [new file with mode: 0644]
src/pz/locale/uk/LC_MESSAGES/django.po [new file with mode: 0644]
src/pz/migrations/0001_initial.py [new file with mode: 0644]
src/pz/migrations/__init__.py [new file with mode: 0644]
src/pz/models.py [new file with mode: 0644]
src/pz/tests.py [new file with mode: 0644]
src/pz/views.py [new file with mode: 0644]
src/wolnelektury/settings/apps.py

index 1f3c837..d966ad6 100644 (file)
@@ -142,23 +142,6 @@ admin.site.register(models.PayUOrder, PayUOrderAdmin)
 admin.site.register(models.Ambassador)
 
 
-
-@admin.register(models.DirectDebit)
-class DirectDebitAdmin(admin.ModelAdmin):
-    list_display = ['date', 'amount', 'first_name', 'last_name']
-    fields = [
-        ('first_name', 'sex', 'date_of_birth'),
-        'last_name',
-        ('street', 'building'),
-        ('town', 'flat'),
-        ('postal_code', 'phone'),
-        'email',
-        'iban',
-        'payment_id',
-        'agree_newsletter',
-        'date',
-        'amount'
-    ]
     
 
 @admin.register(models.Consent)
diff --git a/src/club/migrations/0037_delete_directdebit.py b/src/club/migrations/0037_delete_directdebit.py
new file mode 100644 (file)
index 0000000..cb33468
--- /dev/null
@@ -0,0 +1,16 @@
+# Generated by Django 2.2.19 on 2021-09-27 13:30
+
+from django.db import migrations
+
+
+class Migration(migrations.Migration):
+
+    dependencies = [
+        ('club', '0036_auto_20210730_1437'),
+    ]
+
+    operations = [
+        migrations.DeleteModel(
+            name='DirectDebit',
+        ),
+    ]
index 77d1bb2..92d62c3 100644 (file)
@@ -370,30 +370,3 @@ class PayUCardToken(payu_models.CardToken):
 
 class PayUNotification(payu_models.Notification):
     order = models.ForeignKey(PayUOrder, models.CASCADE, related_name='notification_set')
-
-
-class DirectDebit(models.Model):
-    first_name = models.CharField(_('first name'), max_length=255, blank=True)
-    last_name = models.CharField(_('last name'), max_length=255, blank=True)
-    sex = models.CharField(_('sex'), max_length=1, blank=True, choices=[
-        ('M', 'M'),
-        ('F', 'F'),
-    ])
-    date_of_birth = models.DateField(_('date of birth'), null=True, blank=True)
-    street = models.CharField(_('street'), max_length=255, blank=True)
-    building = models.CharField(_('building'), max_length=255, blank=True)
-    flat = models.CharField(_('flat'), max_length=255, blank=True)
-    town = models.CharField(_('town'), max_length=255, blank=True)
-    postal_code = models.CharField(_('postal code'),  max_length=255, blank=True)
-    phone = models.CharField(_('phone'), max_length=255, blank=True)
-    email = models.CharField(_('e-mail'), max_length=255, blank=True)
-    iban = models.CharField(_('IBAN'), max_length=255, blank=True)
-    payment_id = models.CharField(_('payment identifier'), max_length=255, blank=True)
-    agree_newsletter = models.BooleanField(_('agree newsletter'))
-    date = models.DateField(_('date'))
-    amount = models.IntegerField(_('amount'))
-
-    class Meta:
-        verbose_name = _('direct debit')
-        verbose_name_plural = _('direct debits')
-
diff --git a/src/pz/__init__.py b/src/pz/__init__.py
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/src/pz/admin.py b/src/pz/admin.py
new file mode 100644 (file)
index 0000000..8677931
--- /dev/null
@@ -0,0 +1,52 @@
+from django.contrib import admin
+from django.utils.translation import gettext_lazy as _
+from . import models
+
+
+admin.site.register(models.Fundraiser)
+admin.site.register(models.Campaign)
+
+@admin.register(models.DirectDebit)
+class DirectDebitAdmin(admin.ModelAdmin):
+    list_display = ['acquisition_date', 'amount', 'first_name', 'last_name']
+    fieldsets = [
+        (None, {
+            "fields": [
+                ('first_name', 'sex', 'date_of_birth'),
+                'last_name',
+                ('street', 'building'),
+                ('town', 'flat'),
+                ('postal_code', 'phone'),
+                'email',
+                'iban',
+                'payment_id',
+                'agree_contact',
+                'agree_fundraising',
+                'agree_newsletter',
+                ('acquisition_date', 'amount'),
+                'is_consumer',
+                'fundraiser',
+                'campaign',
+            ]
+        }),
+        (_('Processing'), {"fields": [
+            ('is_cancelled', 'needs_redo', 'optout'),
+            'submission_date',
+            'fundraiser_commission',
+            'fundraiser_bill',
+            'bank_submission_date',
+            'bank_acceptance_date',
+            'notes',
+            ]
+        })
+    ]
+    readonly_fields = ['agree_contact']
+
+    def agree_contact(self, obj):
+        return _('obligatory')
+    agree_contact.short_description = _('agree contact')
+
+    def get_changeform_initial_data(self, request):
+        return {
+            'payment_id': models.DirectDebit.get_next_payment_id(),
+        }
diff --git a/src/pz/apps.py b/src/pz/apps.py
new file mode 100644 (file)
index 0000000..3687aaa
--- /dev/null
@@ -0,0 +1,5 @@
+from django.apps import AppConfig
+
+
+class PzConfig(AppConfig):
+    name = 'pz'
diff --git a/src/pz/locale/de/LC_MESSAGES/django.po b/src/pz/locale/de/LC_MESSAGES/django.po
new file mode 100644 (file)
index 0000000..3641710
--- /dev/null
@@ -0,0 +1,193 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+#: pz/admin.py:32
+msgid "Processing"
+msgstr ""
+
+#: pz/admin.py:46
+msgid "obligatory"
+msgstr ""
+
+#: pz/admin.py:47
+msgid "agree contact"
+msgstr ""
+
+#: pz/models.py:6 pz/models.py:18
+msgid "name"
+msgstr ""
+
+#: pz/models.py:7
+msgid "description"
+msgstr ""
+
+#: pz/models.py:10 pz/models.py:66
+msgid "campaign"
+msgstr ""
+
+#: pz/models.py:11
+msgid "campaigns"
+msgstr ""
+
+#: pz/models.py:21 pz/models.py:54
+msgid "fundraiser"
+msgstr ""
+
+#: pz/models.py:22
+msgid "fundraisers"
+msgstr ""
+
+#: pz/models.py:29
+msgid "first name"
+msgstr ""
+
+#: pz/models.py:30
+msgid "last name"
+msgstr ""
+
+#: pz/models.py:31
+msgid "sex"
+msgstr ""
+
+#: pz/models.py:32
+msgid "M"
+msgstr ""
+
+#: pz/models.py:33
+msgid "F"
+msgstr ""
+
+#: pz/models.py:35
+msgid "date of birth"
+msgstr ""
+
+#: pz/models.py:36
+msgid "street"
+msgstr ""
+
+#: pz/models.py:37
+msgid "building"
+msgstr ""
+
+#: pz/models.py:38
+msgid "flat"
+msgstr ""
+
+#: pz/models.py:39
+msgid "town"
+msgstr ""
+
+#: pz/models.py:40
+msgid "postal code"
+msgstr ""
+
+#: pz/models.py:41
+msgid "phone"
+msgstr ""
+
+#: pz/models.py:42
+msgid "e-mail"
+msgstr ""
+
+#: pz/models.py:43
+msgid "IBAN"
+msgstr ""
+
+#: pz/models.py:44
+msgid "is a consumer"
+msgstr ""
+
+#: pz/models.py:45
+msgid "payment identifier"
+msgstr ""
+
+#: pz/models.py:46
+msgid "agree fundraising"
+msgstr ""
+
+#: pz/models.py:47
+msgid "agree newsletter"
+msgstr ""
+
+#: pz/models.py:49
+msgid "acquisition date"
+msgstr ""
+
+#: pz/models.py:49
+msgid "Date from the form"
+msgstr ""
+
+#: pz/models.py:50
+msgid "submission date"
+msgstr ""
+
+#: pz/models.py:50
+msgid "Date the fundaiser submitted the form"
+msgstr ""
+
+#: pz/models.py:51
+msgid "bank submission date"
+msgstr ""
+
+#: pz/models.py:51
+msgid "Date when the form data is submitted to the bank"
+msgstr ""
+
+#: pz/models.py:52
+msgid "bank accepted date"
+msgstr ""
+
+#: pz/models.py:52
+msgid "Date when bank accepted the form"
+msgstr ""
+
+#: pz/models.py:55
+msgid "fundraiser commission"
+msgstr ""
+
+#: pz/models.py:56
+msgid "fundaiser bill number"
+msgstr ""
+
+#: pz/models.py:58
+msgid "amount"
+msgstr ""
+
+#: pz/models.py:60
+msgid "notes"
+msgstr ""
+
+#: pz/models.py:62
+msgid "needs redo"
+msgstr ""
+
+#: pz/models.py:63
+msgid "is cancelled"
+msgstr ""
+
+#: pz/models.py:64
+msgid "optout"
+msgstr ""
+
+#: pz/models.py:69
+msgid "direct debit"
+msgstr ""
+
+#: pz/models.py:70
+msgid "direct debits"
+msgstr ""
diff --git a/src/pz/locale/en/LC_MESSAGES/django.po b/src/pz/locale/en/LC_MESSAGES/django.po
new file mode 100644 (file)
index 0000000..3641710
--- /dev/null
@@ -0,0 +1,193 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+#: pz/admin.py:32
+msgid "Processing"
+msgstr ""
+
+#: pz/admin.py:46
+msgid "obligatory"
+msgstr ""
+
+#: pz/admin.py:47
+msgid "agree contact"
+msgstr ""
+
+#: pz/models.py:6 pz/models.py:18
+msgid "name"
+msgstr ""
+
+#: pz/models.py:7
+msgid "description"
+msgstr ""
+
+#: pz/models.py:10 pz/models.py:66
+msgid "campaign"
+msgstr ""
+
+#: pz/models.py:11
+msgid "campaigns"
+msgstr ""
+
+#: pz/models.py:21 pz/models.py:54
+msgid "fundraiser"
+msgstr ""
+
+#: pz/models.py:22
+msgid "fundraisers"
+msgstr ""
+
+#: pz/models.py:29
+msgid "first name"
+msgstr ""
+
+#: pz/models.py:30
+msgid "last name"
+msgstr ""
+
+#: pz/models.py:31
+msgid "sex"
+msgstr ""
+
+#: pz/models.py:32
+msgid "M"
+msgstr ""
+
+#: pz/models.py:33
+msgid "F"
+msgstr ""
+
+#: pz/models.py:35
+msgid "date of birth"
+msgstr ""
+
+#: pz/models.py:36
+msgid "street"
+msgstr ""
+
+#: pz/models.py:37
+msgid "building"
+msgstr ""
+
+#: pz/models.py:38
+msgid "flat"
+msgstr ""
+
+#: pz/models.py:39
+msgid "town"
+msgstr ""
+
+#: pz/models.py:40
+msgid "postal code"
+msgstr ""
+
+#: pz/models.py:41
+msgid "phone"
+msgstr ""
+
+#: pz/models.py:42
+msgid "e-mail"
+msgstr ""
+
+#: pz/models.py:43
+msgid "IBAN"
+msgstr ""
+
+#: pz/models.py:44
+msgid "is a consumer"
+msgstr ""
+
+#: pz/models.py:45
+msgid "payment identifier"
+msgstr ""
+
+#: pz/models.py:46
+msgid "agree fundraising"
+msgstr ""
+
+#: pz/models.py:47
+msgid "agree newsletter"
+msgstr ""
+
+#: pz/models.py:49
+msgid "acquisition date"
+msgstr ""
+
+#: pz/models.py:49
+msgid "Date from the form"
+msgstr ""
+
+#: pz/models.py:50
+msgid "submission date"
+msgstr ""
+
+#: pz/models.py:50
+msgid "Date the fundaiser submitted the form"
+msgstr ""
+
+#: pz/models.py:51
+msgid "bank submission date"
+msgstr ""
+
+#: pz/models.py:51
+msgid "Date when the form data is submitted to the bank"
+msgstr ""
+
+#: pz/models.py:52
+msgid "bank accepted date"
+msgstr ""
+
+#: pz/models.py:52
+msgid "Date when bank accepted the form"
+msgstr ""
+
+#: pz/models.py:55
+msgid "fundraiser commission"
+msgstr ""
+
+#: pz/models.py:56
+msgid "fundaiser bill number"
+msgstr ""
+
+#: pz/models.py:58
+msgid "amount"
+msgstr ""
+
+#: pz/models.py:60
+msgid "notes"
+msgstr ""
+
+#: pz/models.py:62
+msgid "needs redo"
+msgstr ""
+
+#: pz/models.py:63
+msgid "is cancelled"
+msgstr ""
+
+#: pz/models.py:64
+msgid "optout"
+msgstr ""
+
+#: pz/models.py:69
+msgid "direct debit"
+msgstr ""
+
+#: pz/models.py:70
+msgid "direct debits"
+msgstr ""
diff --git a/src/pz/locale/es/LC_MESSAGES/django.po b/src/pz/locale/es/LC_MESSAGES/django.po
new file mode 100644 (file)
index 0000000..3641710
--- /dev/null
@@ -0,0 +1,193 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+#: pz/admin.py:32
+msgid "Processing"
+msgstr ""
+
+#: pz/admin.py:46
+msgid "obligatory"
+msgstr ""
+
+#: pz/admin.py:47
+msgid "agree contact"
+msgstr ""
+
+#: pz/models.py:6 pz/models.py:18
+msgid "name"
+msgstr ""
+
+#: pz/models.py:7
+msgid "description"
+msgstr ""
+
+#: pz/models.py:10 pz/models.py:66
+msgid "campaign"
+msgstr ""
+
+#: pz/models.py:11
+msgid "campaigns"
+msgstr ""
+
+#: pz/models.py:21 pz/models.py:54
+msgid "fundraiser"
+msgstr ""
+
+#: pz/models.py:22
+msgid "fundraisers"
+msgstr ""
+
+#: pz/models.py:29
+msgid "first name"
+msgstr ""
+
+#: pz/models.py:30
+msgid "last name"
+msgstr ""
+
+#: pz/models.py:31
+msgid "sex"
+msgstr ""
+
+#: pz/models.py:32
+msgid "M"
+msgstr ""
+
+#: pz/models.py:33
+msgid "F"
+msgstr ""
+
+#: pz/models.py:35
+msgid "date of birth"
+msgstr ""
+
+#: pz/models.py:36
+msgid "street"
+msgstr ""
+
+#: pz/models.py:37
+msgid "building"
+msgstr ""
+
+#: pz/models.py:38
+msgid "flat"
+msgstr ""
+
+#: pz/models.py:39
+msgid "town"
+msgstr ""
+
+#: pz/models.py:40
+msgid "postal code"
+msgstr ""
+
+#: pz/models.py:41
+msgid "phone"
+msgstr ""
+
+#: pz/models.py:42
+msgid "e-mail"
+msgstr ""
+
+#: pz/models.py:43
+msgid "IBAN"
+msgstr ""
+
+#: pz/models.py:44
+msgid "is a consumer"
+msgstr ""
+
+#: pz/models.py:45
+msgid "payment identifier"
+msgstr ""
+
+#: pz/models.py:46
+msgid "agree fundraising"
+msgstr ""
+
+#: pz/models.py:47
+msgid "agree newsletter"
+msgstr ""
+
+#: pz/models.py:49
+msgid "acquisition date"
+msgstr ""
+
+#: pz/models.py:49
+msgid "Date from the form"
+msgstr ""
+
+#: pz/models.py:50
+msgid "submission date"
+msgstr ""
+
+#: pz/models.py:50
+msgid "Date the fundaiser submitted the form"
+msgstr ""
+
+#: pz/models.py:51
+msgid "bank submission date"
+msgstr ""
+
+#: pz/models.py:51
+msgid "Date when the form data is submitted to the bank"
+msgstr ""
+
+#: pz/models.py:52
+msgid "bank accepted date"
+msgstr ""
+
+#: pz/models.py:52
+msgid "Date when bank accepted the form"
+msgstr ""
+
+#: pz/models.py:55
+msgid "fundraiser commission"
+msgstr ""
+
+#: pz/models.py:56
+msgid "fundaiser bill number"
+msgstr ""
+
+#: pz/models.py:58
+msgid "amount"
+msgstr ""
+
+#: pz/models.py:60
+msgid "notes"
+msgstr ""
+
+#: pz/models.py:62
+msgid "needs redo"
+msgstr ""
+
+#: pz/models.py:63
+msgid "is cancelled"
+msgstr ""
+
+#: pz/models.py:64
+msgid "optout"
+msgstr ""
+
+#: pz/models.py:69
+msgid "direct debit"
+msgstr ""
+
+#: pz/models.py:70
+msgid "direct debits"
+msgstr ""
diff --git a/src/pz/locale/fr/LC_MESSAGES/django.po b/src/pz/locale/fr/LC_MESSAGES/django.po
new file mode 100644 (file)
index 0000000..365b74b
--- /dev/null
@@ -0,0 +1,193 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+#: pz/admin.py:32
+msgid "Processing"
+msgstr ""
+
+#: pz/admin.py:46
+msgid "obligatory"
+msgstr ""
+
+#: pz/admin.py:47
+msgid "agree contact"
+msgstr ""
+
+#: pz/models.py:6 pz/models.py:18
+msgid "name"
+msgstr ""
+
+#: pz/models.py:7
+msgid "description"
+msgstr ""
+
+#: pz/models.py:10 pz/models.py:66
+msgid "campaign"
+msgstr ""
+
+#: pz/models.py:11
+msgid "campaigns"
+msgstr ""
+
+#: pz/models.py:21 pz/models.py:54
+msgid "fundraiser"
+msgstr ""
+
+#: pz/models.py:22
+msgid "fundraisers"
+msgstr ""
+
+#: pz/models.py:29
+msgid "first name"
+msgstr ""
+
+#: pz/models.py:30
+msgid "last name"
+msgstr ""
+
+#: pz/models.py:31
+msgid "sex"
+msgstr ""
+
+#: pz/models.py:32
+msgid "M"
+msgstr ""
+
+#: pz/models.py:33
+msgid "F"
+msgstr ""
+
+#: pz/models.py:35
+msgid "date of birth"
+msgstr ""
+
+#: pz/models.py:36
+msgid "street"
+msgstr ""
+
+#: pz/models.py:37
+msgid "building"
+msgstr ""
+
+#: pz/models.py:38
+msgid "flat"
+msgstr ""
+
+#: pz/models.py:39
+msgid "town"
+msgstr ""
+
+#: pz/models.py:40
+msgid "postal code"
+msgstr ""
+
+#: pz/models.py:41
+msgid "phone"
+msgstr ""
+
+#: pz/models.py:42
+msgid "e-mail"
+msgstr ""
+
+#: pz/models.py:43
+msgid "IBAN"
+msgstr ""
+
+#: pz/models.py:44
+msgid "is a consumer"
+msgstr ""
+
+#: pz/models.py:45
+msgid "payment identifier"
+msgstr ""
+
+#: pz/models.py:46
+msgid "agree fundraising"
+msgstr ""
+
+#: pz/models.py:47
+msgid "agree newsletter"
+msgstr ""
+
+#: pz/models.py:49
+msgid "acquisition date"
+msgstr ""
+
+#: pz/models.py:49
+msgid "Date from the form"
+msgstr ""
+
+#: pz/models.py:50
+msgid "submission date"
+msgstr ""
+
+#: pz/models.py:50
+msgid "Date the fundaiser submitted the form"
+msgstr ""
+
+#: pz/models.py:51
+msgid "bank submission date"
+msgstr ""
+
+#: pz/models.py:51
+msgid "Date when the form data is submitted to the bank"
+msgstr ""
+
+#: pz/models.py:52
+msgid "bank accepted date"
+msgstr ""
+
+#: pz/models.py:52
+msgid "Date when bank accepted the form"
+msgstr ""
+
+#: pz/models.py:55
+msgid "fundraiser commission"
+msgstr ""
+
+#: pz/models.py:56
+msgid "fundaiser bill number"
+msgstr ""
+
+#: pz/models.py:58
+msgid "amount"
+msgstr ""
+
+#: pz/models.py:60
+msgid "notes"
+msgstr ""
+
+#: pz/models.py:62
+msgid "needs redo"
+msgstr ""
+
+#: pz/models.py:63
+msgid "is cancelled"
+msgstr ""
+
+#: pz/models.py:64
+msgid "optout"
+msgstr ""
+
+#: pz/models.py:69
+msgid "direct debit"
+msgstr ""
+
+#: pz/models.py:70
+msgid "direct debits"
+msgstr ""
diff --git a/src/pz/locale/it/LC_MESSAGES/django.po b/src/pz/locale/it/LC_MESSAGES/django.po
new file mode 100644 (file)
index 0000000..3641710
--- /dev/null
@@ -0,0 +1,193 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+#: pz/admin.py:32
+msgid "Processing"
+msgstr ""
+
+#: pz/admin.py:46
+msgid "obligatory"
+msgstr ""
+
+#: pz/admin.py:47
+msgid "agree contact"
+msgstr ""
+
+#: pz/models.py:6 pz/models.py:18
+msgid "name"
+msgstr ""
+
+#: pz/models.py:7
+msgid "description"
+msgstr ""
+
+#: pz/models.py:10 pz/models.py:66
+msgid "campaign"
+msgstr ""
+
+#: pz/models.py:11
+msgid "campaigns"
+msgstr ""
+
+#: pz/models.py:21 pz/models.py:54
+msgid "fundraiser"
+msgstr ""
+
+#: pz/models.py:22
+msgid "fundraisers"
+msgstr ""
+
+#: pz/models.py:29
+msgid "first name"
+msgstr ""
+
+#: pz/models.py:30
+msgid "last name"
+msgstr ""
+
+#: pz/models.py:31
+msgid "sex"
+msgstr ""
+
+#: pz/models.py:32
+msgid "M"
+msgstr ""
+
+#: pz/models.py:33
+msgid "F"
+msgstr ""
+
+#: pz/models.py:35
+msgid "date of birth"
+msgstr ""
+
+#: pz/models.py:36
+msgid "street"
+msgstr ""
+
+#: pz/models.py:37
+msgid "building"
+msgstr ""
+
+#: pz/models.py:38
+msgid "flat"
+msgstr ""
+
+#: pz/models.py:39
+msgid "town"
+msgstr ""
+
+#: pz/models.py:40
+msgid "postal code"
+msgstr ""
+
+#: pz/models.py:41
+msgid "phone"
+msgstr ""
+
+#: pz/models.py:42
+msgid "e-mail"
+msgstr ""
+
+#: pz/models.py:43
+msgid "IBAN"
+msgstr ""
+
+#: pz/models.py:44
+msgid "is a consumer"
+msgstr ""
+
+#: pz/models.py:45
+msgid "payment identifier"
+msgstr ""
+
+#: pz/models.py:46
+msgid "agree fundraising"
+msgstr ""
+
+#: pz/models.py:47
+msgid "agree newsletter"
+msgstr ""
+
+#: pz/models.py:49
+msgid "acquisition date"
+msgstr ""
+
+#: pz/models.py:49
+msgid "Date from the form"
+msgstr ""
+
+#: pz/models.py:50
+msgid "submission date"
+msgstr ""
+
+#: pz/models.py:50
+msgid "Date the fundaiser submitted the form"
+msgstr ""
+
+#: pz/models.py:51
+msgid "bank submission date"
+msgstr ""
+
+#: pz/models.py:51
+msgid "Date when the form data is submitted to the bank"
+msgstr ""
+
+#: pz/models.py:52
+msgid "bank accepted date"
+msgstr ""
+
+#: pz/models.py:52
+msgid "Date when bank accepted the form"
+msgstr ""
+
+#: pz/models.py:55
+msgid "fundraiser commission"
+msgstr ""
+
+#: pz/models.py:56
+msgid "fundaiser bill number"
+msgstr ""
+
+#: pz/models.py:58
+msgid "amount"
+msgstr ""
+
+#: pz/models.py:60
+msgid "notes"
+msgstr ""
+
+#: pz/models.py:62
+msgid "needs redo"
+msgstr ""
+
+#: pz/models.py:63
+msgid "is cancelled"
+msgstr ""
+
+#: pz/models.py:64
+msgid "optout"
+msgstr ""
+
+#: pz/models.py:69
+msgid "direct debit"
+msgstr ""
+
+#: pz/models.py:70
+msgid "direct debits"
+msgstr ""
diff --git a/src/pz/locale/lt/LC_MESSAGES/django.po b/src/pz/locale/lt/LC_MESSAGES/django.po
new file mode 100644 (file)
index 0000000..fc345f0
--- /dev/null
@@ -0,0 +1,195 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < "
+"11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? "
+"1 : n % 1 != 0 ? 2: 3);\n"
+#: pz/admin.py:32
+msgid "Processing"
+msgstr ""
+
+#: pz/admin.py:46
+msgid "obligatory"
+msgstr ""
+
+#: pz/admin.py:47
+msgid "agree contact"
+msgstr ""
+
+#: pz/models.py:6 pz/models.py:18
+msgid "name"
+msgstr ""
+
+#: pz/models.py:7
+msgid "description"
+msgstr ""
+
+#: pz/models.py:10 pz/models.py:66
+msgid "campaign"
+msgstr ""
+
+#: pz/models.py:11
+msgid "campaigns"
+msgstr ""
+
+#: pz/models.py:21 pz/models.py:54
+msgid "fundraiser"
+msgstr ""
+
+#: pz/models.py:22
+msgid "fundraisers"
+msgstr ""
+
+#: pz/models.py:29
+msgid "first name"
+msgstr ""
+
+#: pz/models.py:30
+msgid "last name"
+msgstr ""
+
+#: pz/models.py:31
+msgid "sex"
+msgstr ""
+
+#: pz/models.py:32
+msgid "M"
+msgstr ""
+
+#: pz/models.py:33
+msgid "F"
+msgstr ""
+
+#: pz/models.py:35
+msgid "date of birth"
+msgstr ""
+
+#: pz/models.py:36
+msgid "street"
+msgstr ""
+
+#: pz/models.py:37
+msgid "building"
+msgstr ""
+
+#: pz/models.py:38
+msgid "flat"
+msgstr ""
+
+#: pz/models.py:39
+msgid "town"
+msgstr ""
+
+#: pz/models.py:40
+msgid "postal code"
+msgstr ""
+
+#: pz/models.py:41
+msgid "phone"
+msgstr ""
+
+#: pz/models.py:42
+msgid "e-mail"
+msgstr ""
+
+#: pz/models.py:43
+msgid "IBAN"
+msgstr ""
+
+#: pz/models.py:44
+msgid "is a consumer"
+msgstr ""
+
+#: pz/models.py:45
+msgid "payment identifier"
+msgstr ""
+
+#: pz/models.py:46
+msgid "agree fundraising"
+msgstr ""
+
+#: pz/models.py:47
+msgid "agree newsletter"
+msgstr ""
+
+#: pz/models.py:49
+msgid "acquisition date"
+msgstr ""
+
+#: pz/models.py:49
+msgid "Date from the form"
+msgstr ""
+
+#: pz/models.py:50
+msgid "submission date"
+msgstr ""
+
+#: pz/models.py:50
+msgid "Date the fundaiser submitted the form"
+msgstr ""
+
+#: pz/models.py:51
+msgid "bank submission date"
+msgstr ""
+
+#: pz/models.py:51
+msgid "Date when the form data is submitted to the bank"
+msgstr ""
+
+#: pz/models.py:52
+msgid "bank accepted date"
+msgstr ""
+
+#: pz/models.py:52
+msgid "Date when bank accepted the form"
+msgstr ""
+
+#: pz/models.py:55
+msgid "fundraiser commission"
+msgstr ""
+
+#: pz/models.py:56
+msgid "fundaiser bill number"
+msgstr ""
+
+#: pz/models.py:58
+msgid "amount"
+msgstr ""
+
+#: pz/models.py:60
+msgid "notes"
+msgstr ""
+
+#: pz/models.py:62
+msgid "needs redo"
+msgstr ""
+
+#: pz/models.py:63
+msgid "is cancelled"
+msgstr ""
+
+#: pz/models.py:64
+msgid "optout"
+msgstr ""
+
+#: pz/models.py:69
+msgid "direct debit"
+msgstr ""
+
+#: pz/models.py:70
+msgid "direct debits"
+msgstr ""
diff --git a/src/pz/locale/pl/LC_MESSAGES/django.mo b/src/pz/locale/pl/LC_MESSAGES/django.mo
new file mode 100644 (file)
index 0000000..7277c23
Binary files /dev/null and b/src/pz/locale/pl/LC_MESSAGES/django.mo differ
diff --git a/src/pz/locale/pl/LC_MESSAGES/django.po b/src/pz/locale/pl/LC_MESSAGES/django.po
new file mode 100644 (file)
index 0000000..5237793
--- /dev/null
@@ -0,0 +1,196 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: \n"
+"Report-Msgid-Bugs-To: \n"
+"PO-Revision-Date: 2021-09-27 15:35+0200\n"
+"Last-Translator: \n"
+"Language-Team: \n"
+"Language: pl\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n"
+"%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n"
+"%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n"
+"X-Generator: Poedit 2.4.2\n"
+
+#: pz/admin.py:32
+msgid "Processing"
+msgstr "Przetwarzanie"
+
+#: pz/admin.py:46
+msgid "obligatory"
+msgstr "obowiązkowo"
+
+#: pz/admin.py:47
+msgid "agree contact"
+msgstr "zgoda na kontakt"
+
+#: pz/models.py:6 pz/models.py:18
+msgid "name"
+msgstr "nazwa"
+
+#: pz/models.py:7
+msgid "description"
+msgstr "opis"
+
+#: pz/models.py:10 pz/models.py:66
+msgid "campaign"
+msgstr "kampania"
+
+#: pz/models.py:11
+msgid "campaigns"
+msgstr "kampanie"
+
+#: pz/models.py:21 pz/models.py:54
+msgid "fundraiser"
+msgstr "fundraiser"
+
+#: pz/models.py:22
+msgid "fundraisers"
+msgstr "fundraiserzy"
+
+#: pz/models.py:29
+msgid "first name"
+msgstr "imię"
+
+#: pz/models.py:30
+msgid "last name"
+msgstr "nazwisko"
+
+#: pz/models.py:31
+msgid "sex"
+msgstr "płeć"
+
+#: pz/models.py:32
+msgid "M"
+msgstr "M"
+
+#: pz/models.py:33
+msgid "F"
+msgstr "K"
+
+#: pz/models.py:35
+msgid "date of birth"
+msgstr "data urodzenia"
+
+#: pz/models.py:36
+msgid "street"
+msgstr "ulica"
+
+#: pz/models.py:37
+msgid "building"
+msgstr "nr domu"
+
+#: pz/models.py:38
+msgid "flat"
+msgstr "nr mieszkania"
+
+#: pz/models.py:39
+msgid "town"
+msgstr "miejscowość"
+
+#: pz/models.py:40
+msgid "postal code"
+msgstr "kod pocztowy"
+
+#: pz/models.py:41
+msgid "phone"
+msgstr "telefon"
+
+#: pz/models.py:42
+msgid "e-mail"
+msgstr "e-mail"
+
+#: pz/models.py:43
+msgid "IBAN"
+msgstr "nr rachunku"
+
+#: pz/models.py:44
+msgid "is a consumer"
+msgstr "konsument"
+
+#: pz/models.py:45
+msgid "payment identifier"
+msgstr "identyfikator płatności"
+
+#: pz/models.py:46
+msgid "agree fundraising"
+msgstr "zgoda na kontakt fundraisingowy"
+
+#: pz/models.py:47
+msgid "agree newsletter"
+msgstr "zgoda na newsletter"
+
+#: pz/models.py:49
+msgid "acquisition date"
+msgstr "data pozyskania"
+
+#: pz/models.py:49
+msgid "Date from the form"
+msgstr "Data z formularza"
+
+#: pz/models.py:50
+msgid "submission date"
+msgstr "data dostarczenia"
+
+#: pz/models.py:50
+msgid "Date the fundaiser submitted the form"
+msgstr "Data złożenia formularza przez fundraisera"
+
+#: pz/models.py:51
+msgid "bank submission date"
+msgstr "data złożenia do banku"
+
+#: pz/models.py:51
+msgid "Date when the form data is submitted to the bank"
+msgstr "Data przesłania danych z formularza do banku"
+
+#: pz/models.py:52
+msgid "bank accepted date"
+msgstr "data akceptacji przez bank"
+
+#: pz/models.py:52
+msgid "Date when bank accepted the form"
+msgstr "Data kiedy bank przekazał informację o akceptacji danych z formularza"
+
+#: pz/models.py:55
+msgid "fundraiser commission"
+msgstr "prowizja fundraisera"
+
+#: pz/models.py:56
+msgid "fundaiser bill number"
+msgstr "nr rachunku wystawionego przez fundraisera"
+
+#: pz/models.py:58
+msgid "amount"
+msgstr "kwota"
+
+#: pz/models.py:60
+msgid "notes"
+msgstr "uwagi"
+
+#: pz/models.py:62
+msgid "needs redo"
+msgstr "do powtórki"
+
+#: pz/models.py:63
+msgid "is cancelled"
+msgstr "anulowane"
+
+#: pz/models.py:64
+msgid "optout"
+msgstr "optout"
+
+#: pz/models.py:69
+msgid "direct debit"
+msgstr "polecenie zapłaty"
+
+#: pz/models.py:70
+msgid "direct debits"
+msgstr "polecenia zapłaty"
diff --git a/src/pz/locale/ru/LC_MESSAGES/django.po b/src/pz/locale/ru/LC_MESSAGES/django.po
new file mode 100644 (file)
index 0000000..27621a5
--- /dev/null
@@ -0,0 +1,195 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
+"%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n"
+"%100>=11 && n%100<=14)? 2 : 3);\n"
+#: pz/admin.py:32
+msgid "Processing"
+msgstr ""
+
+#: pz/admin.py:46
+msgid "obligatory"
+msgstr ""
+
+#: pz/admin.py:47
+msgid "agree contact"
+msgstr ""
+
+#: pz/models.py:6 pz/models.py:18
+msgid "name"
+msgstr ""
+
+#: pz/models.py:7
+msgid "description"
+msgstr ""
+
+#: pz/models.py:10 pz/models.py:66
+msgid "campaign"
+msgstr ""
+
+#: pz/models.py:11
+msgid "campaigns"
+msgstr ""
+
+#: pz/models.py:21 pz/models.py:54
+msgid "fundraiser"
+msgstr ""
+
+#: pz/models.py:22
+msgid "fundraisers"
+msgstr ""
+
+#: pz/models.py:29
+msgid "first name"
+msgstr ""
+
+#: pz/models.py:30
+msgid "last name"
+msgstr ""
+
+#: pz/models.py:31
+msgid "sex"
+msgstr ""
+
+#: pz/models.py:32
+msgid "M"
+msgstr ""
+
+#: pz/models.py:33
+msgid "F"
+msgstr ""
+
+#: pz/models.py:35
+msgid "date of birth"
+msgstr ""
+
+#: pz/models.py:36
+msgid "street"
+msgstr ""
+
+#: pz/models.py:37
+msgid "building"
+msgstr ""
+
+#: pz/models.py:38
+msgid "flat"
+msgstr ""
+
+#: pz/models.py:39
+msgid "town"
+msgstr ""
+
+#: pz/models.py:40
+msgid "postal code"
+msgstr ""
+
+#: pz/models.py:41
+msgid "phone"
+msgstr ""
+
+#: pz/models.py:42
+msgid "e-mail"
+msgstr ""
+
+#: pz/models.py:43
+msgid "IBAN"
+msgstr ""
+
+#: pz/models.py:44
+msgid "is a consumer"
+msgstr ""
+
+#: pz/models.py:45
+msgid "payment identifier"
+msgstr ""
+
+#: pz/models.py:46
+msgid "agree fundraising"
+msgstr ""
+
+#: pz/models.py:47
+msgid "agree newsletter"
+msgstr ""
+
+#: pz/models.py:49
+msgid "acquisition date"
+msgstr ""
+
+#: pz/models.py:49
+msgid "Date from the form"
+msgstr ""
+
+#: pz/models.py:50
+msgid "submission date"
+msgstr ""
+
+#: pz/models.py:50
+msgid "Date the fundaiser submitted the form"
+msgstr ""
+
+#: pz/models.py:51
+msgid "bank submission date"
+msgstr ""
+
+#: pz/models.py:51
+msgid "Date when the form data is submitted to the bank"
+msgstr ""
+
+#: pz/models.py:52
+msgid "bank accepted date"
+msgstr ""
+
+#: pz/models.py:52
+msgid "Date when bank accepted the form"
+msgstr ""
+
+#: pz/models.py:55
+msgid "fundraiser commission"
+msgstr ""
+
+#: pz/models.py:56
+msgid "fundaiser bill number"
+msgstr ""
+
+#: pz/models.py:58
+msgid "amount"
+msgstr ""
+
+#: pz/models.py:60
+msgid "notes"
+msgstr ""
+
+#: pz/models.py:62
+msgid "needs redo"
+msgstr ""
+
+#: pz/models.py:63
+msgid "is cancelled"
+msgstr ""
+
+#: pz/models.py:64
+msgid "optout"
+msgstr ""
+
+#: pz/models.py:69
+msgid "direct debit"
+msgstr ""
+
+#: pz/models.py:70
+msgid "direct debits"
+msgstr ""
diff --git a/src/pz/locale/uk/LC_MESSAGES/django.po b/src/pz/locale/uk/LC_MESSAGES/django.po
new file mode 100644 (file)
index 0000000..afd46a1
--- /dev/null
@@ -0,0 +1,196 @@
+# SOME DESCRIPTIVE TITLE.
+# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
+# This file is distributed under the same license as the PACKAGE package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+#, fuzzy
+msgid ""
+msgstr ""
+"Project-Id-Version: PACKAGE VERSION\n"
+"Report-Msgid-Bugs-To: \n"
+"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: LANGUAGE <LL@li.org>\n"
+"Language: \n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != "
+"11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % "
+"100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || "
+"(n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\n"
+#: pz/admin.py:32
+msgid "Processing"
+msgstr ""
+
+#: pz/admin.py:46
+msgid "obligatory"
+msgstr ""
+
+#: pz/admin.py:47
+msgid "agree contact"
+msgstr ""
+
+#: pz/models.py:6 pz/models.py:18
+msgid "name"
+msgstr ""
+
+#: pz/models.py:7
+msgid "description"
+msgstr ""
+
+#: pz/models.py:10 pz/models.py:66
+msgid "campaign"
+msgstr ""
+
+#: pz/models.py:11
+msgid "campaigns"
+msgstr ""
+
+#: pz/models.py:21 pz/models.py:54
+msgid "fundraiser"
+msgstr ""
+
+#: pz/models.py:22
+msgid "fundraisers"
+msgstr ""
+
+#: pz/models.py:29
+msgid "first name"
+msgstr ""
+
+#: pz/models.py:30
+msgid "last name"
+msgstr ""
+
+#: pz/models.py:31
+msgid "sex"
+msgstr ""
+
+#: pz/models.py:32
+msgid "M"
+msgstr ""
+
+#: pz/models.py:33
+msgid "F"
+msgstr ""
+
+#: pz/models.py:35
+msgid "date of birth"
+msgstr ""
+
+#: pz/models.py:36
+msgid "street"
+msgstr ""
+
+#: pz/models.py:37
+msgid "building"
+msgstr ""
+
+#: pz/models.py:38
+msgid "flat"
+msgstr ""
+
+#: pz/models.py:39
+msgid "town"
+msgstr ""
+
+#: pz/models.py:40
+msgid "postal code"
+msgstr ""
+
+#: pz/models.py:41
+msgid "phone"
+msgstr ""
+
+#: pz/models.py:42
+msgid "e-mail"
+msgstr ""
+
+#: pz/models.py:43
+msgid "IBAN"
+msgstr ""
+
+#: pz/models.py:44
+msgid "is a consumer"
+msgstr ""
+
+#: pz/models.py:45
+msgid "payment identifier"
+msgstr ""
+
+#: pz/models.py:46
+msgid "agree fundraising"
+msgstr ""
+
+#: pz/models.py:47
+msgid "agree newsletter"
+msgstr ""
+
+#: pz/models.py:49
+msgid "acquisition date"
+msgstr ""
+
+#: pz/models.py:49
+msgid "Date from the form"
+msgstr ""
+
+#: pz/models.py:50
+msgid "submission date"
+msgstr ""
+
+#: pz/models.py:50
+msgid "Date the fundaiser submitted the form"
+msgstr ""
+
+#: pz/models.py:51
+msgid "bank submission date"
+msgstr ""
+
+#: pz/models.py:51
+msgid "Date when the form data is submitted to the bank"
+msgstr ""
+
+#: pz/models.py:52
+msgid "bank accepted date"
+msgstr ""
+
+#: pz/models.py:52
+msgid "Date when bank accepted the form"
+msgstr ""
+
+#: pz/models.py:55
+msgid "fundraiser commission"
+msgstr ""
+
+#: pz/models.py:56
+msgid "fundaiser bill number"
+msgstr ""
+
+#: pz/models.py:58
+msgid "amount"
+msgstr ""
+
+#: pz/models.py:60
+msgid "notes"
+msgstr ""
+
+#: pz/models.py:62
+msgid "needs redo"
+msgstr ""
+
+#: pz/models.py:63
+msgid "is cancelled"
+msgstr ""
+
+#: pz/models.py:64
+msgid "optout"
+msgstr ""
+
+#: pz/models.py:69
+msgid "direct debit"
+msgstr ""
+
+#: pz/models.py:70
+msgid "direct debits"
+msgstr ""
diff --git a/src/pz/migrations/0001_initial.py b/src/pz/migrations/0001_initial.py
new file mode 100644 (file)
index 0000000..2637fea
--- /dev/null
@@ -0,0 +1,77 @@
+# Generated by Django 2.2.19 on 2021-09-27 13:30
+
+from django.db import migrations, models
+import django.db.models.deletion
+
+
+class Migration(migrations.Migration):
+
+    initial = True
+
+    dependencies = [
+    ]
+
+    operations = [
+        migrations.CreateModel(
+            name='Campaign',
+            fields=[
+                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+                ('name', models.CharField(max_length=255, unique=True, verbose_name='name')),
+                ('description', models.TextField(blank=True, verbose_name='description')),
+            ],
+            options={
+                'verbose_name': 'campaign',
+                'verbose_name_plural': 'campaigns',
+            },
+        ),
+        migrations.CreateModel(
+            name='Fundraiser',
+            fields=[
+                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+                ('name', models.CharField(max_length=255, unique=True, verbose_name='name')),
+            ],
+            options={
+                'verbose_name': 'fundraiser',
+                'verbose_name_plural': 'fundraisers',
+            },
+        ),
+        migrations.CreateModel(
+            name='DirectDebit',
+            fields=[
+                ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
+                ('first_name', models.CharField(blank=True, max_length=255, verbose_name='first name')),
+                ('last_name', models.CharField(blank=True, max_length=255, verbose_name='last name')),
+                ('sex', models.CharField(blank=True, choices=[('M', 'M'), ('F', 'F')], max_length=1, verbose_name='sex')),
+                ('date_of_birth', models.DateField(blank=True, null=True, verbose_name='date of birth')),
+                ('street', models.CharField(blank=True, max_length=255, verbose_name='street')),
+                ('building', models.CharField(blank=True, max_length=255, verbose_name='building')),
+                ('flat', models.CharField(blank=True, max_length=255, verbose_name='flat')),
+                ('town', models.CharField(blank=True, max_length=255, verbose_name='town')),
+                ('postal_code', models.CharField(blank=True, max_length=255, verbose_name='postal code')),
+                ('phone', models.CharField(blank=True, max_length=255, verbose_name='phone')),
+                ('email', models.CharField(blank=True, max_length=255, verbose_name='e-mail')),
+                ('iban', models.CharField(blank=True, max_length=255, verbose_name='IBAN')),
+                ('is_consumer', models.BooleanField(default=True, verbose_name='is a consumer')),
+                ('payment_id', models.CharField(blank=True, max_length=255, unique=True, verbose_name='payment identifier')),
+                ('agree_fundraising', models.BooleanField(verbose_name='agree fundraising')),
+                ('agree_newsletter', models.BooleanField(verbose_name='agree newsletter')),
+                ('acquisition_date', models.DateField(help_text='Date from the form', verbose_name='acquisition date')),
+                ('submission_date', models.DateField(blank=True, help_text='Date the fundaiser submitted the form', null=True, verbose_name='submission date')),
+                ('bank_submission_date', models.DateField(blank=True, help_text='Date when the form data is submitted to the bank', null=True, verbose_name='bank submission date')),
+                ('bank_acceptance_date', models.DateField(blank=True, help_text='Date when bank accepted the form', null=True, verbose_name='bank accepted date')),
+                ('fundraiser_commission', models.IntegerField(blank=True, null=True, verbose_name='fundraiser commission')),
+                ('fundraiser_bill', models.CharField(blank=True, max_length=255, verbose_name='fundaiser bill number')),
+                ('amount', models.IntegerField(verbose_name='amount')),
+                ('notes', models.TextField(blank=True, verbose_name='notes')),
+                ('needs_redo', models.BooleanField(default=False, verbose_name='needs redo')),
+                ('is_cancelled', models.BooleanField(default=False, verbose_name='is cancelled')),
+                ('optout', models.BooleanField(default=False, verbose_name='optout')),
+                ('campaign', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='pz.Campaign')),
+                ('fundraiser', models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to='pz.Fundraiser')),
+            ],
+            options={
+                'verbose_name': 'direct debit',
+                'verbose_name_plural': 'direct debits',
+            },
+        ),
+    ]
diff --git a/src/pz/migrations/__init__.py b/src/pz/migrations/__init__.py
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/src/pz/models.py b/src/pz/models.py
new file mode 100644 (file)
index 0000000..3b52961
--- /dev/null
@@ -0,0 +1,90 @@
+from django.db import models
+from django.utils.translation import ugettext_lazy as _
+
+
+class Campaign(models.Model):
+    name = models.CharField(_('name'), max_length=255, unique=True)
+    description = models.TextField(_('description'), blank=True)
+
+    class Meta: 
+        verbose_name = _('campaign')
+        verbose_name_plural = _('campaigns')
+   
+    def __str__(self):
+        return self.name
+
+
+class Fundraiser(models.Model):
+    name = models.CharField(_('name'), max_length=255, unique=True)
+
+    class Meta: 
+        verbose_name = _('fundraiser')
+        verbose_name_plural = _('fundraisers')
+
+    def __str__(self):
+        return self.name
+
+
+class DirectDebit(models.Model):
+    first_name = models.CharField(_('first name'), max_length=255, blank=True)
+    last_name = models.CharField(_('last name'), max_length=255, blank=True)
+    sex = models.CharField(_('sex'), max_length=1, blank=True, choices=[
+        ('M', _('M')),
+        ('F', _('F')),
+    ])
+    date_of_birth = models.DateField(_('date of birth'), null=True, blank=True)
+    street = models.CharField(_('street'), max_length=255, blank=True)
+    building = models.CharField(_('building'), max_length=255, blank=True)
+    flat = models.CharField(_('flat'), max_length=255, blank=True)
+    town = models.CharField(_('town'), max_length=255, blank=True)
+    postal_code = models.CharField(_('postal code'),  max_length=255, blank=True)
+    phone = models.CharField(_('phone'), max_length=255, blank=True)
+    email = models.CharField(_('e-mail'), max_length=255, blank=True)
+    iban = models.CharField(_('IBAN'), max_length=255, blank=True)
+    is_consumer = models.BooleanField(_('is a consumer'), default=True)
+    payment_id = models.CharField(_('payment identifier'), max_length=255, blank=True, unique=True)
+    agree_fundraising = models.BooleanField(_('agree fundraising'))
+    agree_newsletter = models.BooleanField(_('agree newsletter'))
+
+    acquisition_date = models.DateField(_('acquisition date'), help_text=_('Date from the form'))
+    submission_date = models.DateField(_('submission date'), null=True, blank=True, help_text=_('Date the fundaiser submitted the form'))
+    bank_submission_date = models.DateField(_('bank submission date'), null=True, blank=True, help_text=_('Date when the form data is submitted to the bank'))
+    bank_acceptance_date = models.DateField(_('bank accepted date'), null=True, blank=True, help_text=_('Date when bank accepted the form'))
+
+    fundraiser = models.ForeignKey(Fundraiser, models.PROTECT, blank=True, null=True, verbose_name=_('fundraiser'))
+    fundraiser_commission = models.IntegerField(_('fundraiser commission'), null=True, blank=True)
+    fundraiser_bill = models.CharField(_('fundaiser bill number'), max_length=255, blank=True)
+
+    amount = models.IntegerField(_('amount'))
+
+    notes = models.TextField(_('notes'), blank=True)
+
+    needs_redo = models.BooleanField(_('needs redo'), default=False)
+    is_cancelled = models.BooleanField(_('is cancelled'), default=False)
+    optout = models.BooleanField(_('optout'), default=False)
+
+    campaign = models.ForeignKey(Campaign, models.PROTECT, null=True, blank=True, verbose_name=_('campaign'))
+
+    class Meta:
+        verbose_name = _('direct debit')
+        verbose_name_plural = _('direct debits')
+
+    @classmethod
+    def get_next_payment_id(cls):
+        # Find the last object added.
+        last = cls.objects.order_by('-id').first()
+        if last is None:
+            return ''
+        match = re.match(r'^(.*?)(\d+)$', last.payment_id)
+        if match is None:
+            return ''
+        prefix = match.group(1)
+        number = int(match.group(2))
+        number_length = len(match.group(2))
+        while True:
+            number += 1
+            payment_id = f'{prefix}{number:0{number_length}}'
+            if not cls.objects.filter(payment_id=payment_id).exists():
+                break
+        return payment_id
+
diff --git a/src/pz/tests.py b/src/pz/tests.py
new file mode 100644 (file)
index 0000000..7ce503c
--- /dev/null
@@ -0,0 +1,3 @@
+from django.test import TestCase
+
+# Create your tests here.
diff --git a/src/pz/views.py b/src/pz/views.py
new file mode 100644 (file)
index 0000000..91ea44a
--- /dev/null
@@ -0,0 +1,3 @@
+from django.shortcuts import render
+
+# Create your views here.
index e6f10f8..0facb8e 100644 (file)
@@ -17,6 +17,7 @@ INSTALLED_APPS_OUR = [
     'newtagging',
     'opds',
     'pdcounter',
+    'pz',
     'references',
     'reporting',
     'sponsors',