From bc02cb8df3a52cf797d5a628d4a27731c22b1e0f Mon Sep 17 00:00:00 2001 From: cogitantium Date: Mon, 23 Nov 2020 14:24:32 +0100 Subject: [PATCH] [mobilepaytool] Add permissions to MobilePaytool --- ...13_mobilepayment_permission_20201123_1344.py | 17 +++++++++++++++++ stregsystem/models.py | 4 ++++ stregsystem/templates/admin/index.html | 5 ++++- stregsystem/views.py | 1 + 4 files changed, 26 insertions(+), 1 deletion(-) create mode 100644 stregsystem/migrations/0013_mobilepayment_permission_20201123_1344.py diff --git a/stregsystem/migrations/0013_mobilepayment_permission_20201123_1344.py b/stregsystem/migrations/0013_mobilepayment_permission_20201123_1344.py new file mode 100644 index 00000000..dc425368 --- /dev/null +++ b/stregsystem/migrations/0013_mobilepayment_permission_20201123_1344.py @@ -0,0 +1,17 @@ +# Generated by Django 2.2.13 on 2020-11-23 12:44 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('stregsystem', '0012_mobilepayment'), + ] + + operations = [ + migrations.AlterModelOptions( + name='mobilepayment', + options={'permissions': (('mobilepaytool_access', 'MobilePaytool access'),)}, + ), + ] diff --git a/stregsystem/models.py b/stregsystem/models.py index 2db2430e..8ead975b 100644 --- a/stregsystem/models.py +++ b/stregsystem/models.py @@ -334,6 +334,10 @@ def delete(self, *args, **kwargs): class MobilePayment(models.Model): + class Meta: + permissions = ( + ("mobilepaytool_access", "MobilePaytool access"), + ) UNSET = 'U' APPROVED = 'A' IGNORED = 'I' diff --git a/stregsystem/templates/admin/index.html b/stregsystem/templates/admin/index.html index 4a65895f..0f929323 100644 --- a/stregsystem/templates/admin/index.html +++ b/stregsystem/templates/admin/index.html @@ -75,20 +75,23 @@ {% endif %} - {% if perms.stregsystem.import_batch_payments %} + {% if perms.stregsystem.import_batch_payments or perms.stregsystem.mobilepaytool_access %}
+ {% if perms.stregsystem.mobilepaytool_access %} + {% elif perms.stregsystem.import_batch_payments %} + {% endif %}
{% blocktrans with app.name as name %}Indbetalinger{% endblocktrans %}
MobilePaytool    
Multi-indbetaling    
{% endif %} diff --git a/stregsystem/views.py b/stregsystem/views.py index 531fb17d..1787137f 100644 --- a/stregsystem/views.py +++ b/stregsystem/views.py @@ -306,6 +306,7 @@ def batch_payment(request): @staff_member_required() +@permission_required("stregsystem.mobilepaytool_access") def mobilepaytool(request): paytool_form_set = modelformset_factory(MobilePayment, form=MobilePayToolForm, extra=0, fields=( 'timestamp', 'amount', 'member', 'comment', 'status')) # TODO: 'customer_name' removed, MobilepayAPI does not