From 750d370ba7b4df0c5c8f775d1b1443883abd2bf9 Mon Sep 17 00:00:00 2001 From: Radek Czajka Date: Mon, 27 Sep 2021 15:53:29 +0200 Subject: [PATCH] Add app for PZ. --- src/club/admin.py | 17 -- .../migrations/0037_delete_directdebit.py | 16 ++ src/club/models.py | 27 --- src/pz/__init__.py | 0 src/pz/admin.py | 52 +++++ src/pz/apps.py | 5 + src/pz/locale/de/LC_MESSAGES/django.po | 193 +++++++++++++++++ src/pz/locale/en/LC_MESSAGES/django.po | 193 +++++++++++++++++ src/pz/locale/es/LC_MESSAGES/django.po | 193 +++++++++++++++++ src/pz/locale/fr/LC_MESSAGES/django.po | 193 +++++++++++++++++ src/pz/locale/it/LC_MESSAGES/django.po | 193 +++++++++++++++++ src/pz/locale/lt/LC_MESSAGES/django.po | 195 +++++++++++++++++ src/pz/locale/pl/LC_MESSAGES/django.mo | Bin 0 -> 2738 bytes src/pz/locale/pl/LC_MESSAGES/django.po | 196 ++++++++++++++++++ src/pz/locale/ru/LC_MESSAGES/django.po | 195 +++++++++++++++++ src/pz/locale/uk/LC_MESSAGES/django.po | 196 ++++++++++++++++++ src/pz/migrations/0001_initial.py | 77 +++++++ src/pz/migrations/__init__.py | 0 src/pz/models.py | 90 ++++++++ src/pz/tests.py | 3 + src/pz/views.py | 3 + src/wolnelektury/settings/apps.py | 1 + 22 files changed, 1994 insertions(+), 44 deletions(-) create mode 100644 src/club/migrations/0037_delete_directdebit.py create mode 100644 src/pz/__init__.py create mode 100644 src/pz/admin.py create mode 100644 src/pz/apps.py create mode 100644 src/pz/locale/de/LC_MESSAGES/django.po create mode 100644 src/pz/locale/en/LC_MESSAGES/django.po create mode 100644 src/pz/locale/es/LC_MESSAGES/django.po create mode 100644 src/pz/locale/fr/LC_MESSAGES/django.po create mode 100644 src/pz/locale/it/LC_MESSAGES/django.po create mode 100644 src/pz/locale/lt/LC_MESSAGES/django.po create mode 100644 src/pz/locale/pl/LC_MESSAGES/django.mo create mode 100644 src/pz/locale/pl/LC_MESSAGES/django.po create mode 100644 src/pz/locale/ru/LC_MESSAGES/django.po create mode 100644 src/pz/locale/uk/LC_MESSAGES/django.po create mode 100644 src/pz/migrations/0001_initial.py create mode 100644 src/pz/migrations/__init__.py create mode 100644 src/pz/models.py create mode 100644 src/pz/tests.py create mode 100644 src/pz/views.py diff --git a/src/club/admin.py b/src/club/admin.py index 1f3c837a7..d966ad64d 100644 --- a/src/club/admin.py +++ b/src/club/admin.py @@ -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 index 000000000..cb334687f --- /dev/null +++ b/src/club/migrations/0037_delete_directdebit.py @@ -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', + ), + ] diff --git a/src/club/models.py b/src/club/models.py index 77d1bb260..92d62c3bd 100644 --- a/src/club/models.py +++ b/src/club/models.py @@ -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 index 000000000..e69de29bb diff --git a/src/pz/admin.py b/src/pz/admin.py new file mode 100644 index 000000000..86779316c --- /dev/null +++ b/src/pz/admin.py @@ -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 index 000000000..3687aaa4c --- /dev/null +++ b/src/pz/apps.py @@ -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 index 000000000..364171033 --- /dev/null +++ b/src/pz/locale/de/LC_MESSAGES/django.po @@ -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 , 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 \n" +"Language-Team: LANGUAGE \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 index 000000000..364171033 --- /dev/null +++ b/src/pz/locale/en/LC_MESSAGES/django.po @@ -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 , 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 \n" +"Language-Team: LANGUAGE \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 index 000000000..364171033 --- /dev/null +++ b/src/pz/locale/es/LC_MESSAGES/django.po @@ -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 , 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 \n" +"Language-Team: LANGUAGE \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 index 000000000..365b74b95 --- /dev/null +++ b/src/pz/locale/fr/LC_MESSAGES/django.po @@ -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 , 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 \n" +"Language-Team: LANGUAGE \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 index 000000000..364171033 --- /dev/null +++ b/src/pz/locale/it/LC_MESSAGES/django.po @@ -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 , 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 \n" +"Language-Team: LANGUAGE \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 index 000000000..fc345f030 --- /dev/null +++ b/src/pz/locale/lt/LC_MESSAGES/django.po @@ -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 , 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 \n" +"Language-Team: LANGUAGE \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 index 0000000000000000000000000000000000000000..7277c239fbcf1a913ce37fe0811728b917366594 GIT binary patch literal 2738 zcmZ{kO^g&p6vs=zui-;MMFBqwl#c~^nHiP{y9~sYk8E^hLsp_EQ`22DQ`_BDZCAC! zbU2ue=*5GYn24C@!4TukNc7@G-6iqpiHq^`r14^+F)=3ke?2`r3u0wze)a0(y;tvb zy>Bsbq~hP(w_1MV#6 z$3W6I36lLO5J%Z8cn|n&Id4ii2T9LsAo=$WNcuhm$=;_Ro&OvpeOEyI*w>|e6(oB< zg5>|tAb#v`{E^-jSVYL!I*|5lz~3FFNDC6N6703^MifE4d5;6vb5@GkIAko;PWOKk?%gZF`ZL6~C4L2O~uCC`BC zAU_9^pBkk5*^)1VaG6~IN$-0g`Ed!{4PFK*Uf+R~&tE`_>pviVYz-EP8$q(mLDDk< z(!PDAe7KY+L9%xW+ytHh$?v3GKU=P!2T9MXAjR_ykoq3=Rx$Apu-m718l4hANT`%{IK z=|CteQ*N_ntelgtzK9c{+IneV8J*&$#hWU19TrIIrz#=WSfEnrJ08fUa@Po!NiP;E zVl9C=P$X;?V?QKcXkSK= z3|J%v#tMsC%E0ne28LqG=Q zfn-*mW!519j$I!&XS$jaH-|WQQ-OCzrWDk1UO6ojlR9tOwpHLwW^L=u8cffe@=nVa zkTj#cV+iaxuUG3euX@O|C4l_!O6XQGYuB&tkLO&=esu8meJkK;># z$KGr&!4@aax_wC`l%C*zN2FG|#?!MWyo1AisnE71Q}4LOm5}Iheh^8k%tTo#BJTtq zfF0*LDMZ^Cn}AtbY3$OCMvWikRX)yl>Fu@Zkw%^G*uiOdxG^?D<6^#gxK`)q&J_#Q zBQ>lXWqo_-dIG#BN};=Eb>Oll>TE%7AH zCH9sN4hs95LnVV=zYx%lP~>89o-0lDMEG+H7r5afqzVB^;U(*y-?@QNI&2r`1zEkp zCLWl=NXDLEI_0VGJDCo%qGaUKb;*0JBt2BY6O;FBNUB)gHi5w7;~~|J(EVp(=|=b< zOt&{&Usg!Mu5qHTdf8R_0V(QNVKpCyZOK`<8kjg^A(a&JryP`yW~m8s3N+rLvUqTj z^dU-~iv+Q7y`?GSX)slm6&0(63lxi3Nt^d?yDT!i+r#Va;*H6+xk2)ViDXG?x+AEjJPD91Au4pTi8t7d(pNFPv z2F0c*GQE}x>3ihGCAC?+=qu)ABwHw`p$VYL&rw!z{l$5?@CwT!<(CNvs3@g=KWe!8 Mob{o8@gjEp3&e1t^Z)<= literal 0 HcmV?d00001 diff --git a/src/pz/locale/pl/LC_MESSAGES/django.po b/src/pz/locale/pl/LC_MESSAGES/django.po new file mode 100644 index 000000000..5237793ac --- /dev/null +++ b/src/pz/locale/pl/LC_MESSAGES/django.po @@ -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 , 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 index 000000000..27621a5b4 --- /dev/null +++ b/src/pz/locale/ru/LC_MESSAGES/django.po @@ -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 , 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 \n" +"Language-Team: LANGUAGE \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 index 000000000..afd46a103 --- /dev/null +++ b/src/pz/locale/uk/LC_MESSAGES/django.po @@ -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 , 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 \n" +"Language-Team: LANGUAGE \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 index 000000000..2637feaf1 --- /dev/null +++ b/src/pz/migrations/0001_initial.py @@ -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 index 000000000..e69de29bb diff --git a/src/pz/models.py b/src/pz/models.py new file mode 100644 index 000000000..3b52961f6 --- /dev/null +++ b/src/pz/models.py @@ -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 index 000000000..7ce503c2d --- /dev/null +++ b/src/pz/tests.py @@ -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 index 000000000..91ea44a21 --- /dev/null +++ b/src/pz/views.py @@ -0,0 +1,3 @@ +from django.shortcuts import render + +# Create your views here. diff --git a/src/wolnelektury/settings/apps.py b/src/wolnelektury/settings/apps.py index e6f10f885..0facb8e3c 100644 --- a/src/wolnelektury/settings/apps.py +++ b/src/wolnelektury/settings/apps.py @@ -17,6 +17,7 @@ INSTALLED_APPS_OUR = [ 'newtagging', 'opds', 'pdcounter', + 'pz', 'references', 'reporting', 'sponsors', -- 2.20.1