From 4d5419fdbc84ad580303f9121b131e6e54661039 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20P=C3=A9pin?= Date: Fri, 20 Dec 2019 23:49:24 +0100 Subject: [PATCH] Use permissions to authenticate bds buro members I prefer using a permission (namely `bds.is_team`) to determine if a user is member of the BDS staff rather that using a `is_buro` boolean field. We already use this approach is the kfet app --- bds/migrations/0003_staff_permission.py | 22 ++++++++++++++++++++++ bds/models.py | 2 +- 2 files changed, 23 insertions(+), 1 deletion(-) create mode 100644 bds/migrations/0003_staff_permission.py diff --git a/bds/migrations/0003_staff_permission.py b/bds/migrations/0003_staff_permission.py new file mode 100644 index 00000000..1f038eaa --- /dev/null +++ b/bds/migrations/0003_staff_permission.py @@ -0,0 +1,22 @@ +# Generated by Django 2.2.8 on 2019-12-20 22:48 + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ("bds", "0002_bds_group"), + ] + + operations = [ + migrations.AlterModelOptions( + name="bdsprofile", + options={ + "permissions": (("is_team", "est membre du burô"),), + "verbose_name": "Profil BDS", + "verbose_name_plural": "Profils BDS", + }, + ), + migrations.RemoveField(model_name="bdsprofile", name="is_buro",), + ] diff --git a/bds/models.py b/bds/models.py index f262ee26..eb5a67aa 100644 --- a/bds/models.py +++ b/bds/models.py @@ -63,7 +63,6 @@ class BDSProfile(models.Model): ) mails_bds = models.BooleanField(_("recevoir les mails du BDS"), default=False) - is_buro = models.BooleanField(_("membre du Burô du BDS"), default=False) has_certificate = models.BooleanField(_("certificat médical"), default=False) certificate_file = models.FileField( @@ -90,6 +89,7 @@ class BDSProfile(models.Model): class Meta: verbose_name = _("Profil BDS") verbose_name_plural = _("Profils BDS") + permissions = (("is_team", _("est membre du burô")),) def __str__(self): return self.user.username