diff --git a/amelie/activities/ajax_views.py b/amelie/activities/ajax_views.py index 753165d7..7e454581 100644 --- a/amelie/activities/ajax_views.py +++ b/amelie/activities/ajax_views.py @@ -39,8 +39,10 @@ def get_context_data(self, **kwargs): context = super().get_context_data(**kwargs) request_person: Optional[Person] = self.request.person if hasattr(self.request, 'person') else None context['object'] = Participation.objects.get(pk=self.kwargs['pk']) - context['transactions'] = [t for t in context['object'].activitytransaction_set.all() if not t.is_paid()] + context['transactions'] = [t for t in context['object'].activitytransaction_set.filter(settlement=None)] context['transactions_total'] = sum(t.price for t in context['transactions']) + context['settled_transactions'] = [t for t in context['object'].activitytransaction_set.exclude(settlement=None)] + context['settled_transactions_total'] = sum(t.price for t in context['settled_transactions']) context['is_roomduty'] = request_person and request_person.is_room_duty() context['is_committee'] = request_person and context['object'].event.organizer in request_person.current_committees().all() return context diff --git a/amelie/activities/templates/includes/activity_participants_table.html b/amelie/activities/templates/includes/activity_participants_table.html index 9abebe14..f0fefadd 100644 --- a/amelie/activities/templates/includes/activity_participants_table.html +++ b/amelie/activities/templates/includes/activity_participants_table.html @@ -116,6 +116,13 @@
{% trans 'Previous attempt was reversed' %} + {% if request.is_board %} +
+ + {% trans 'Cannot create manual payment here' %} + + + {% endif %} {% elif details.0 == 'unpaid' and details.1 == None %}
{% blocktrans with costs=participation.to_be_paid_costs|intcomma %}Needs manual payment (€ {{ costs }}){% endblocktrans %} @@ -128,6 +135,13 @@ {% trans 'Enter manual payment' %} {% endif %} + {% if request.is_board and details.0 == 'unpaid' and details.1 != None %} +
+ {% trans 'Enter manual payment' %} + + {% endif %} {% endwith %} {% endif %} diff --git a/amelie/activities/templates/includes/activity_participation_create_payment.html b/amelie/activities/templates/includes/activity_participation_create_payment.html index 4c0288b2..8960dd1b 100644 --- a/amelie/activities/templates/includes/activity_participation_create_payment.html +++ b/amelie/activities/templates/includes/activity_participation_create_payment.html @@ -6,6 +6,42 @@

Create manual payment for {{ participation }} {% endblocktrans %}

+ {% if settled_transactions %} +

{% trans 'The following transactions for this participation have already been settled. They will not be included in the payment:' %}

+
+ + + + + + + + + + {% for transaction in settled_transactions %} + + + + + + {% endfor %} + + + + + + +
{% trans 'Timestamp' %}{% trans 'Description' %}{% trans 'Amount' %}
+ {{ transaction.date|date:"d-m-Y H:i" }} + + + {{ transaction.description }} + + + € {{ transaction.price|intcomma }} +
{% trans 'Total' %}€ {{ settled_transactions_total|intcomma }}
+
+ {% endif %}

{% trans 'You are creating a manual payment that will cover the following transactions:' %}

diff --git a/amelie/calendar/models.py b/amelie/calendar/models.py index ff985cab..a3621f4d 100644 --- a/amelie/calendar/models.py +++ b/amelie/calendar/models.py @@ -110,6 +110,10 @@ def calculate_costs(self) -> Tuple[Decimal, bool]: def unpaid_transactions(self): return [t for t in self.activitytransaction_set.all() if not t.is_paid()] + @property + def unsettled_transactions(self): + return [t for t in self.activitytransaction_set.filter(settlement=None)] + @property def to_be_paid_costs(self): """ @@ -126,7 +130,7 @@ def mark_as_paid(self, payment_method, actor: Optional[Person] = None): from amelie.personal_tab.models import ManualPaymentSettlement # Get the ActivityTransaction(s) for this Participation that still need to be paid - ats = self.unpaid_transactions + ats = self.unsettled_transactions if not ats: return None diff --git a/amelie/members/ajax_views.py b/amelie/members/ajax_views.py index fa69b703..99d42657 100644 --- a/amelie/members/ajax_views.py +++ b/amelie/members/ajax_views.py @@ -148,8 +148,10 @@ def get_context_data(self, **kwargs): context = super().get_context_data(**kwargs) context['person'] = get_object_or_404(Person, id=self.kwargs['id']) context['membership'] = get_object_or_404(Membership, id=self.kwargs['membership']) - context['transactions'] = [t for t in context['membership'].contributiontransaction_set.all() if not t.is_paid()] + context['transactions'] = [t for t in context['membership'].contributiontransaction_set.filter(settlement=None)] context['transactions_total'] = sum(t.price for t in context['transactions']) + context['settled_transactions'] = [t for t in context['membership'].contributiontransaction_set.exclude(settlement=None)] + context['settled_transactions_total'] = sum(t.price for t in context['settled_transactions']) return context def get_success_url(self, query: Optional[Dict] = None): diff --git a/amelie/members/models.py b/amelie/members/models.py index 1214737e..1f9a32a7 100644 --- a/amelie/members/models.py +++ b/amelie/members/models.py @@ -1090,7 +1090,7 @@ def mark_as_paid(self, payment_method, actor: Optional[Person] = None): from amelie.personal_tab.models import ManualPaymentSettlement # Get the ContributionTransaction(s) for this Membership that still need to be paid - cts = [t for t in self.contributiontransaction_set.all() if not t.is_paid()] + cts = [t for t in self.contributiontransaction_set.filter(settlement=None)] if not cts: return None diff --git a/amelie/members/templates/person_membership.html b/amelie/members/templates/person_membership.html index 224e921c..0ba2d6d9 100644 --- a/amelie/members/templates/person_membership.html +++ b/amelie/members/templates/person_membership.html @@ -121,6 +121,13 @@
{% trans 'Previous attempt was reversed' %} + {% if request.is_board %} +
+ + {% trans 'Cannot create manual payment here' %} + + + {% endif %} {% elif details.0 == 'unpaid' %} {% if details.1 == None %}
@@ -135,6 +142,13 @@ {% trans 'Enter manual payment' %} {% endif %} + {% if request.is_board and details.0 == 'unpaid' and details.1 != None %} +
+ {% trans 'Enter manual payment' %} + + {% endif %} {% endwith %} {% endif %} diff --git a/amelie/members/templates/person_membership_create_payment.html b/amelie/members/templates/person_membership_create_payment.html index 1998f918..c99c2b20 100644 --- a/amelie/members/templates/person_membership_create_payment.html +++ b/amelie/members/templates/person_membership_create_payment.html @@ -6,6 +6,42 @@

Create manual payment for {{ membership }} of {{ person }} {% endblocktrans %}

+ {% if settled_transactions %} +

{% trans 'The following transactions for this membership have already been settled. They will not be included in the payment:' %}

+
+ + + + + + + + + + {% for transaction in settled_transactions %} + + + + + + {% endfor %} + + + + + + +
{% trans 'Timestamp' %}{% trans 'Description' %}{% trans 'Amount' %}
+ {{ transaction.date|date:"d-m-Y H:i" }} + + + {{ transaction.description }} + + + € {{ transaction.price|intcomma }} +
{% trans 'Total' %}€ {{ settled_transactions_total|intcomma }}
+
+ {% endif %}

{% trans 'You are creating a manual payment that will cover the following transactions:' %}

diff --git a/locale/nl/LC_MESSAGES/django.mo b/locale/nl/LC_MESSAGES/django.mo index 103ced34..32aef1d9 100644 Binary files a/locale/nl/LC_MESSAGES/django.mo and b/locale/nl/LC_MESSAGES/django.mo differ diff --git a/locale/nl/LC_MESSAGES/django.po b/locale/nl/LC_MESSAGES/django.po index dd0e9da5..a8079ca3 100644 --- a/locale/nl/LC_MESSAGES/django.po +++ b/locale/nl/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2026-08-17 14:55+0200\n" -"PO-Revision-Date: 2026-08-17 19:55+0000\n" +"POT-Creation-Date: 2026-08-20 12:13+0200\n" +"PO-Revision-Date: 2026-08-20 10:17+0000\n" "Last-Translator: Kevin Alberts \n" "Language-Team: Dutch \n" "Language: nl\n" @@ -343,8 +343,8 @@ msgstr "Achternaam" #: amelie/activities/templates/activity_list.html:115 #: amelie/activities/templates/activity_old.html:4 #: amelie/activities/templates/activity_old.html:34 -#: amelie/calendar/models.py:31 amelie/calendar/models.py:209 -#: amelie/calendar/models.py:210 +#: amelie/calendar/models.py:31 amelie/calendar/models.py:213 +#: amelie/calendar/models.py:214 #: amelie/companies/templates/companies/company_event_list.html:4 #: amelie/companies/templates/companies/company_event_old.html:34 #: amelie/personal_tab/models.py:225 amelie/personal_tab/statistics.py:289 @@ -360,7 +360,7 @@ msgstr "Achternaam" msgid "Activities" msgstr "Activiteiten" -#: amelie/activities/forms.py:383 amelie/calendar/models.py:192 +#: amelie/activities/forms.py:383 amelie/calendar/models.py:196 #: amelie/education/models.py:258 amelie/education/models.py:286 #: amelie/education/templates/education_event_overview.html:18 #: amelie/oauth/forms.py:11 amelie/videos/models.py:20 @@ -1111,7 +1111,7 @@ msgstr "Opslaan en inschrijfopties toevoegen" #: amelie/activities/templates/activities/activity_form.html:107 #: amelie/activities/templates/activities/enrollmentoption_confirm_delete.html:21 #: amelie/activities/templates/activity_enrollment_form.html:194 -#: amelie/activities/templates/includes/activity_participation_create_payment.html:60 +#: amelie/activities/templates/includes/activity_participation_create_payment.html:96 #: amelie/claudia/templates/accounts/mailing_alias.html:18 #: amelie/claudia/templates/claudia/extrapersonalalias_delete.html:21 #: amelie/companies/templates/companies/company_event_form.html:111 @@ -1135,7 +1135,7 @@ msgstr "Opslaan en inschrijfopties toevoegen" #: amelie/members/templates/person_end_membership.html:21 #: amelie/members/templates/person_existing_mandate.html:17 #: amelie/members/templates/person_mandate_sign.html:48 -#: amelie/members/templates/person_membership_create_payment.html:60 +#: amelie/members/templates/person_membership_create_payment.html:96 #: amelie/members/templates/person_membership_sign.html:48 #: amelie/members/templates/person_new_mandate.html:11 #: amelie/members/templates/person_new_membership.html:11 @@ -1851,7 +1851,7 @@ msgstr "Start/eindtijd" #: amelie/activities/templates/activities/eventdesk/message_list.html:153 #: amelie/activities/templates/activities/eventdesk/message_list.html:194 -#: amelie/calendar/models.py:189 +#: amelie/calendar/models.py:193 msgid "Location" msgstr "Locatie" @@ -1935,7 +1935,7 @@ msgstr "Wijzig inschrijfopties" msgid "Undo event cancellation" msgstr "Maak annuleren van evenement ongedaan" -#: amelie/activities/templates/activity.html:45 amelie/calendar/models.py:200 +#: amelie/activities/templates/activity.html:45 amelie/calendar/models.py:204 msgid "Cancel event" msgstr "Annuleer evenement" @@ -2289,8 +2289,10 @@ msgstr "" #: amelie/activities/templates/activity_enrollment_form.html:168 #: amelie/activities/templates/activity_enrollment_print.html:90 #: amelie/activities/templates/includes/activity_enrollment_overview.html:89 -#: amelie/activities/templates/includes/activity_participation_create_payment.html:45 -#: amelie/members/templates/person_membership_create_payment.html:45 +#: amelie/activities/templates/includes/activity_participation_create_payment.html:38 +#: amelie/activities/templates/includes/activity_participation_create_payment.html:81 +#: amelie/members/templates/person_membership_create_payment.html:38 +#: amelie/members/templates/person_membership_create_payment.html:81 #: amelie/members/templates/statistics/overview.html:44 #: amelie/members/templates/statistics/overview.html:133 #: amelie/personal_tab/templates/balance/balance.html:57 @@ -2458,13 +2460,13 @@ msgstr "Betaling" #: amelie/activities/templates/activity_enrollment_print.html:55 #: amelie/activities/templates/includes/activity_enrollment_overview.html:172 #: amelie/activities/templates/includes/activity_participants_table.html:65 -#: amelie/activities/templates/includes/activity_participants_table.html:137 +#: amelie/activities/templates/includes/activity_participants_table.html:151 msgid "N/A (free)" msgstr "n.v.t. (gratis)" #: amelie/activities/templates/activity_enrollment_print.html:59 #: amelie/activities/templates/includes/activity_participants_table.html:79 -#: amelie/activities/templates/includes/activity_participants_table.html:141 +#: amelie/activities/templates/includes/activity_participants_table.html:155 #: amelie/activities/templates/includes/activity_participation_payments.html:25 #: amelie/members/templates/person_membership.html:84 #: amelie/members/templates/person_membership_payments.html:25 @@ -2476,8 +2478,8 @@ msgstr "Betaald" #: amelie/activities/templates/includes/activity_enrollment_overview.html:175 #: amelie/activities/templates/includes/activity_participants_table.html:83 #: amelie/activities/templates/includes/activity_participants_table.html:85 -#: amelie/activities/templates/includes/activity_participants_table.html:144 -#: amelie/activities/templates/includes/activity_participants_table.html:146 +#: amelie/activities/templates/includes/activity_participants_table.html:158 +#: amelie/activities/templates/includes/activity_participants_table.html:160 #: amelie/members/templates/person_membership.html:88 #: amelie/members/templates/person_membership.html:90 msgid "To be debited" @@ -2485,13 +2487,13 @@ msgstr "Nog te incasseren" #: amelie/activities/templates/activity_enrollment_print.html:67 #: amelie/activities/templates/includes/activity_enrollment_overview.html:177 -#: amelie/members/templates/person_membership.html:127 +#: amelie/members/templates/person_membership.html:134 msgid "Needs manual payment" msgstr "Handmatige betaling vereist" #: amelie/activities/templates/activity_enrollment_print.html:69 #: amelie/activities/templates/includes/activity_participants_table.html:87 -#: amelie/activities/templates/includes/activity_participants_table.html:148 +#: amelie/activities/templates/includes/activity_participants_table.html:162 #: amelie/activities/templates/includes/activity_participation_payments.html:27 #: amelie/members/templates/person_membership.html:92 #: amelie/members/templates/person_membership_payments.html:27 @@ -2516,9 +2518,11 @@ msgstr "Gerecht" #: amelie/activities/templates/activity_enrollment_print.html:86 #: amelie/activities/templates/includes/activity_enrollment_overview.html:83 -#: amelie/activities/templates/includes/activity_participation_create_payment.html:18 +#: amelie/activities/templates/includes/activity_participation_create_payment.html:17 +#: amelie/activities/templates/includes/activity_participation_create_payment.html:54 #: amelie/activities/templates/includes/activity_participation_payments.html:37 -#: amelie/members/templates/person_membership_create_payment.html:18 +#: amelie/members/templates/person_membership_create_payment.html:17 +#: amelie/members/templates/person_membership_create_payment.html:54 #: amelie/members/templates/person_membership_payments.html:37 #: amelie/members/templates/statistics/overview.html:35 #: amelie/members/templates/statistics/overview.html:124 @@ -2573,7 +2577,7 @@ msgstr "iCal-document met activiteit" #: amelie/activities/templates/activity_list.html:70 #: amelie/activities/templates/activity_list.html:71 #: amelie/activities/templates/activity_list.html:127 -#: amelie/calendar/models.py:194 +#: amelie/calendar/models.py:198 #: amelie/companies/templates/companies/company_event_list.html:36 #: amelie/companies/templates/companies/company_event_list.html:86 #: templates/frontpage.html:28 templates/frontpage.html:29 @@ -2921,13 +2925,13 @@ msgstr "Uitschrijven van de wachtlijst" #: amelie/activities/templates/includes/activity_enrollment.html:123 #: amelie/activities/templates/includes/activity_enrollment_overview.html:190 -#: amelie/activities/templates/includes/activity_participants_table.html:167 +#: amelie/activities/templates/includes/activity_participants_table.html:181 msgid "Deregister" msgstr "Uitschrijven" #: amelie/activities/templates/includes/activity_enrollment.html:126 #: amelie/activities/templates/includes/activity_enrollment_overview.html:185 -#: amelie/activities/templates/includes/activity_participants_table.html:162 +#: amelie/activities/templates/includes/activity_participants_table.html:176 msgid "Edit enrollment" msgstr "Inschrijving aanpassen" @@ -3177,17 +3181,29 @@ msgid "Previous attempt was reversed" msgstr "Vorige poging is teruggeboekt" #: amelie/activities/templates/includes/activity_participants_table.html:121 -#: amelie/activities/templates/includes/activity_participants_table.html:151 +#: amelie/members/templates/person_membership.html:126 +msgid "Because this transaction was reversed, we can't create a payment for it here (the reversal might have included other transactions). To mark this as paid, create a payment manually in the person's personal tab." +msgstr "Omdat deze transactie is teruggeboekt, kunnen we er hier geen betaling voor aanmaken (de terugboeking kan andere transacties bevatten). Om dit te betalen, maak je een handmatige betaling aan in de streeplijst van de persoon." + +#: amelie/activities/templates/includes/activity_participants_table.html:122 +#: amelie/members/templates/person_membership.html:127 +msgid "Cannot create manual payment here" +msgstr "Kan hier geen betaling maken" + +#: amelie/activities/templates/includes/activity_participants_table.html:128 +#: amelie/activities/templates/includes/activity_participants_table.html:165 #, python-format msgid "Needs manual payment (€ %(costs)s)" msgstr "Handmatige betaling vereist (€ %(costs)s)" -#: amelie/activities/templates/includes/activity_participants_table.html:128 -#: amelie/members/templates/person_membership.html:135 +#: amelie/activities/templates/includes/activity_participants_table.html:135 +#: amelie/activities/templates/includes/activity_participants_table.html:142 +#: amelie/members/templates/person_membership.html:142 +#: amelie/members/templates/person_membership.html:149 msgid "Enter manual payment" msgstr "Handmatige betaling invoeren" -#: amelie/activities/templates/includes/activity_participants_table.html:188 +#: amelie/activities/templates/includes/activity_participants_table.html:202 #, python-format msgid "" "\n" @@ -3218,16 +3234,17 @@ msgstr "" " " #: amelie/activities/templates/includes/activity_participation_create_payment.html:10 -#: amelie/members/templates/person_membership_create_payment.html:10 -msgid "You are creating a manual payment that will cover the following transactions:" -msgstr "Je maakt een handmatige betaling aan voor de volgende transacties:" +msgid "The following transactions for this participation have already been settled. They will not be included in the payment:" +msgstr "De volgende transacties voor deze deelname zijn al verrekend. Deze zullen niet worden meegenomen in de betaling:" -#: amelie/activities/templates/includes/activity_participation_create_payment.html:16 +#: amelie/activities/templates/includes/activity_participation_create_payment.html:15 +#: amelie/activities/templates/includes/activity_participation_create_payment.html:52 #: amelie/activities/templates/includes/activity_participation_payments.html:35 #: amelie/blame/templates/blame/blame_changelog.html:25 #: amelie/blame/templates/blame/blame_detail.html:29 #: amelie/blame/templates/blame/model_overview.html:21 -#: amelie/members/templates/person_membership_create_payment.html:16 +#: amelie/members/templates/person_membership_create_payment.html:15 +#: amelie/members/templates/person_membership_create_payment.html:52 #: amelie/members/templates/person_membership_payments.html:35 #: amelie/personal_tab/templates/print/log_list.html:29 #: amelie/personal_tab/templates/print/refund.html:14 amelie/tools/models.py:46 @@ -3235,9 +3252,10 @@ msgstr "Je maakt een handmatige betaling aan voor de volgende transacties:" msgid "Timestamp" msgstr "Tijdstempel" -#: amelie/activities/templates/includes/activity_participation_create_payment.html:17 +#: amelie/activities/templates/includes/activity_participation_create_payment.html:16 +#: amelie/activities/templates/includes/activity_participation_create_payment.html:53 #: amelie/activities/templates/includes/activity_participation_payments.html:36 -#: amelie/calendar/models.py:185 +#: amelie/calendar/models.py:189 #: amelie/claudia/templates/claudia/aliasgroup_list.html:23 #: amelie/claudia/templates/claudia/contact_list.html:22 #: amelie/claudia/templates/claudia/email_detail.html:18 @@ -3253,7 +3271,8 @@ msgstr "Tijdstempel" #: amelie/companies/templates/companies/company_event_form.html:87 #: amelie/education/templates/education_event_form.html:50 #: amelie/members/models.py:847 -#: amelie/members/templates/person_membership_create_payment.html:17 +#: amelie/members/templates/person_membership_create_payment.html:16 +#: amelie/members/templates/person_membership_create_payment.html:53 #: amelie/members/templates/person_membership_payments.html:36 #: amelie/oauth/templates/oauth_access_request.mail:12 #: amelie/oauth/templates/request_oauth_sent.html:23 @@ -3288,25 +3307,32 @@ msgstr "Tijdstempel" msgid "Description" msgstr "Omschrijving" -#: amelie/activities/templates/includes/activity_participation_create_payment.html:28 +#: amelie/activities/templates/includes/activity_participation_create_payment.html:27 +#: amelie/activities/templates/includes/activity_participation_create_payment.html:64 #: amelie/activities/templates/includes/activity_participation_payments.html:48 -#: amelie/members/templates/person_membership_create_payment.html:28 +#: amelie/members/templates/person_membership_create_payment.html:27 +#: amelie/members/templates/person_membership_create_payment.html:64 #: amelie/members/templates/person_membership_payments.html:48 msgid "Transaction details (opens in new tab)" msgstr "Transactiedetails (opent nieuw tabblad)" -#: amelie/activities/templates/includes/activity_participation_create_payment.html:39 -#: amelie/members/templates/person_membership_create_payment.html:39 +#: amelie/activities/templates/includes/activity_participation_create_payment.html:46 +#: amelie/members/templates/person_membership_create_payment.html:46 +msgid "You are creating a manual payment that will cover the following transactions:" +msgstr "Je maakt een handmatige betaling aan voor de volgende transacties:" + +#: amelie/activities/templates/includes/activity_participation_create_payment.html:75 +#: amelie/members/templates/person_membership_create_payment.html:75 msgid "No transactions found. This is probably wrong! Please contact the WWW." msgstr "Geen transacties gevonden. Dit klopt waarschijnlijk niet! Neem contact op met de WWW." -#: amelie/activities/templates/includes/activity_participation_create_payment.html:52 -#: amelie/members/templates/person_membership_create_payment.html:52 +#: amelie/activities/templates/includes/activity_participation_create_payment.html:88 +#: amelie/members/templates/person_membership_create_payment.html:88 msgid "Please select the payment method that was used for the payment." msgstr "Selecteer de betaalmethode die gebruikt is voor de betaling." -#: amelie/activities/templates/includes/activity_participation_create_payment.html:63 -#: amelie/members/templates/person_membership_create_payment.html:63 +#: amelie/activities/templates/includes/activity_participation_create_payment.html:99 +#: amelie/members/templates/person_membership_create_payment.html:99 msgid "Create payment" msgstr "Betaling toevoegen" @@ -3954,72 +3980,72 @@ msgstr "Deelnames" msgid "deleted activity" msgstr "verwijderde activiteit" -#: amelie/calendar/models.py:136 +#: amelie/calendar/models.py:140 #, python-brace-format msgid "Payment for enrollment to {event} on {date}" msgstr "Betaling voor inschrijving voor {event} op {date}" -#: amelie/calendar/models.py:170 amelie/education/models.py:134 +#: amelie/calendar/models.py:174 amelie/education/models.py:134 #: amelie/room_duty/models.py:40 amelie/room_duty/models.py:109 #: amelie/room_duty/models.py:206 msgid "Starts" msgstr "Begint" -#: amelie/calendar/models.py:171 amelie/education/models.py:135 +#: amelie/calendar/models.py:175 amelie/education/models.py:135 #: amelie/room_duty/models.py:110 amelie/room_duty/models.py:207 msgid "Ends" msgstr "Eindigt" -#: amelie/calendar/models.py:172 +#: amelie/calendar/models.py:176 msgid "All day" msgstr "Hele dag" -#: amelie/calendar/models.py:174 amelie/education/models.py:253 +#: amelie/calendar/models.py:178 amelie/education/models.py:253 msgid "Summary" msgstr "Samenvatting" -#: amelie/calendar/models.py:175 +#: amelie/calendar/models.py:179 msgid "Summary (en)" msgstr "Samenvatting (en)" -#: amelie/calendar/models.py:177 amelie/calendar/models.py:180 +#: amelie/calendar/models.py:181 amelie/calendar/models.py:184 msgid "Short promotional message" msgstr "Korte promotietekst" -#: amelie/calendar/models.py:178 amelie/calendar/models.py:182 +#: amelie/calendar/models.py:182 amelie/calendar/models.py:186 msgid "This text can be used by the board for promotion, for example on our socials or in our weekmail. Let it be a teaser, so people would want to read your full activity description." msgstr "Deze tekst kan gebruikt worden door het bestuur voor promotie, bijvoorbeeld op onze social media kanalen of in onze weekmail. Laat het een teaser zijn, zodat mensen die geïnteresseerd zijn jouw volledige beschrijving willen lezen." -#: amelie/calendar/models.py:186 +#: amelie/calendar/models.py:190 msgid "Description (en)" msgstr "Omschrijving (en)" -#: amelie/calendar/models.py:188 +#: amelie/calendar/models.py:192 msgid "Organizer" msgstr "Organisator" -#: amelie/calendar/models.py:191 +#: amelie/calendar/models.py:195 msgid "Participants" msgstr "Deelnemers" -#: amelie/calendar/models.py:193 amelie/files/models.py:149 +#: amelie/calendar/models.py:197 amelie/files/models.py:149 #: amelie/personal_tab/forms.py:479 amelie/tools/pdf.py:574 msgid "Attachments" msgstr "Bijlagen" -#: amelie/calendar/models.py:196 +#: amelie/calendar/models.py:200 msgid "Callback URL" msgstr "Callback URL" -#: amelie/calendar/models.py:197 +#: amelie/calendar/models.py:201 msgid "URL has to start with https://" msgstr "URL moet met https:// beginnen" -#: amelie/calendar/models.py:201 +#: amelie/calendar/models.py:205 msgid "Whether this event is cancelled, only cancel when needed. Participants will receive an email notification!" msgstr "Of dit evenement geannuleerd is, annuleer deze alleen wanneer nodig is. Deelnemers ontvangen hiervan een email!" -#: amelie/calendar/models.py:272 amelie/education/models.py:160 +#: amelie/calendar/models.py:276 amelie/education/models.py:160 #: amelie/room_duty/models.py:122 msgid "Start may not be after of simultaneous to end." msgstr "Begin kan niet na het einde voorkomen of gelijk zijn aan het einde." @@ -7282,7 +7308,7 @@ msgstr "" "Er zijn %(mail_count)s berichten verstuurd. Hiervan zijn er %(sent_count)s geaccepteerd\n" "en %(error_count)s niet geaccepteerd." -#: amelie/members/ajax_views.py:220 +#: amelie/members/ajax_views.py:222 #, python-brace-format msgid "Early termination of membership {membership_type} ({begin_year}/{end_year})" msgstr "Voortijdige beëindiging van lidmaatschap {membership_type} ({begin_year}/{end_year})" @@ -10305,7 +10331,7 @@ msgid "View signature" msgstr "Handtekening tonen" #: amelie/members/templates/person_mandate.html:94 -#: amelie/members/templates/person_membership.html:149 +#: amelie/members/templates/person_membership.html:163 #: amelie/members/templates/preregistration_resend_confirm.html:4 #: amelie/members/templates/preregistration_resend_confirm.html:8 #: amelie/members/templates/preregistration_status.html:84 @@ -10318,7 +10344,7 @@ msgstr "Handtekening opnieuw aanvragen" #: amelie/members/templates/person_mandate.html:96 #: amelie/members/templates/person_mandate_sign.html:3 -#: amelie/members/templates/person_membership.html:151 +#: amelie/members/templates/person_membership.html:165 #: amelie/members/templates/person_membership_sign.html:3 msgid "Send digital signature request" msgstr "Verstuur digitaal ondertekeningsverzoek" @@ -10336,7 +10362,7 @@ msgid "View in sign tool" msgstr "Tonen in ondertekeningstool" #: amelie/members/templates/person_mandate.html:102 -#: amelie/members/templates/person_membership.html:157 +#: amelie/members/templates/person_membership.html:171 #: amelie/members/templates/preregistration_status.html:90 msgid "Try to retrieve signed file from Documenso" msgstr "Probeer het ondertekende document op te halen uit Documenso" @@ -10423,7 +10449,7 @@ msgstr "" "%(obj)s is geen lid." #: amelie/members/templates/person_membership.html:21 -#: amelie/members/templates/person_membership.html:179 +#: amelie/members/templates/person_membership.html:193 msgid "Add membership" msgstr "Voeg lidmaatschap toe" @@ -10472,23 +10498,23 @@ msgstr "n.v.t." msgid "For some reason this free membership has payments! This should not happen." msgstr "Om de een of andere reden heeft dit gratis lidmaatschap betalingen! Dit zou niet mogen gebeuren." -#: amelie/members/templates/person_membership.html:143 +#: amelie/members/templates/person_membership.html:157 msgid "Download PDF form" msgstr "Download PDF-formulier" -#: amelie/members/templates/person_membership.html:145 +#: amelie/members/templates/person_membership.html:159 msgid "View signed member form" msgstr "Ondertekend lidmaatschapsformulier tonen" -#: amelie/members/templates/person_membership.html:156 +#: amelie/members/templates/person_membership.html:170 msgid "A signature request for this membership is in progress. Click to open the request in Documenso." msgstr "Een ondertekeningsverzoek voor deze machtiging is in behandeling. Klik om het verzoek te openen in Documenso." -#: amelie/members/templates/person_membership.html:160 +#: amelie/members/templates/person_membership.html:174 msgid "This membership was created before we introduced digital signatures. Its signed copy may be in the physical folders." msgstr "Dit lidmaatschap is aangemaakt voordat we digitale handtekeningen hebben geintroduceerd. Het ondertekende exemplaar bevindt zich mogelijk in de fysieke mappen." -#: amelie/members/templates/person_membership.html:175 +#: amelie/members/templates/person_membership.html:189 msgid "Terminate membership" msgstr "Einde lidmaatschap" @@ -10503,6 +10529,10 @@ msgstr "" " Handmatige betaling aanmaken voor %(membership)s van %(person)s\n" " " +#: amelie/members/templates/person_membership_create_payment.html:10 +msgid "The following transactions for this membership have already been settled. They will not be included in the payment:" +msgstr "De volgende transacties voor dit lidmaatschap zijn al verrekend. Deze zullen niet worden meegenomen in de betaling:" + #: amelie/members/templates/person_membership_payments.html:20 #, python-format msgid "" @@ -13351,13 +13381,14 @@ msgid "Only people without a mandate are shown." msgstr "Alleen mensen zonder machtiging worden getoond." #: amelie/personal_tab/templates/cookie_corner_unpaid_transactions_list.html:26 +#, python-format msgid "" "\n" -" Only people with a mandate of type 'filtered_type' are shown.\n" +" Only people with a mandate of type '%(filtered_type)s' are shown.\n" " " msgstr "" "\n" -" Alleen mensen met een machtiging van soort 'filtered_type' worden getoond.\n" +" Alleen mensen met een machtiging van soort '%(filtered_type)s' worden getoond.\n" " " #: amelie/personal_tab/templates/cookie_corner_unpaid_transactions_list.html:30