Permission rethinking
* No detailed permissions due to django constraints on model-based permissions * instead: logic controlled permission by group membership * adds translations
This commit is contained in:
@@ -83,18 +83,10 @@ class Command(BaseCommand):
|
||||
self._write_warning("--- Groups ---")
|
||||
for group_data in GROUPS_DATA:
|
||||
name = group_data.get("name")
|
||||
perms_data = group_data.get("permissions")
|
||||
perms_objects = [
|
||||
Permission.objects.get_or_create(
|
||||
codename=perm[0],
|
||||
name=perm[1]
|
||||
)
|
||||
for perm in perms_data
|
||||
]
|
||||
group = Group.objects.get_or_create(
|
||||
Group.objects.get_or_create(
|
||||
name=name,
|
||||
)
|
||||
group.permissions.set(perms_objects)
|
||||
self._write_success(CREATED_TEMPLATE.format(name))
|
||||
|
||||
self._break_line()
|
||||
|
||||
|
||||
@@ -26,36 +26,14 @@ TEST_ORGANISATION_DATA = [
|
||||
},
|
||||
]
|
||||
|
||||
# Groups permissions are declared in konova/settings.py
|
||||
GROUPS_DATA = [
|
||||
{
|
||||
"name": _("Default"),
|
||||
"permissions": [
|
||||
ADD_INTERVENTION,
|
||||
EDIT_INTERVENTION,
|
||||
DELETE_INTERVENTION,
|
||||
ADD_COMPENSATION,
|
||||
EDIT_COMPENSATION,
|
||||
DELETE_COMPENSATION,
|
||||
ADD_ECOACCOUNT,
|
||||
EDIT_ECOACCOUNT,
|
||||
DELETE_ECOACCOUNT,
|
||||
CREATE_SHARE_LINK,
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": _("Registration office"),
|
||||
"permissions": [
|
||||
VALIDITY_CHECK,
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": _("Conservation office"),
|
||||
"permissions": [
|
||||
RECORD_DATA,
|
||||
ADD_EMA,
|
||||
EDIT_EMA,
|
||||
DELETE_EMA,
|
||||
]
|
||||
},
|
||||
]
|
||||
Reference in New Issue
Block a user