|
|
@ -38,7 +38,7 @@ from __future__ import unicode_literals |
|
|
|
|
|
|
|
|
from django.utils import timezone |
|
|
from django.utils import timezone |
|
|
from django.db.models import Q |
|
|
from django.db.models import Q |
|
|
from django.contrib.auth.models import Permission |
|
|
from django.contrib.auth.models import Permission, Group |
|
|
|
|
|
|
|
|
from cotisations.models import Cotisation, Facture, Vente |
|
|
from cotisations.models import Cotisation, Facture, Vente |
|
|
from machines.models import Interface, Machine |
|
|
from machines.models import Interface, Machine |
|
|
@ -58,11 +58,20 @@ def get_group_having_permission(*permission_name): |
|
|
""" |
|
|
""" |
|
|
groups = set() |
|
|
groups = set() |
|
|
for name in permission_name: |
|
|
for name in permission_name: |
|
|
app_label, codename = name.split(".") |
|
|
if "." in name: |
|
|
permission = Permission.objects.get( |
|
|
app_label, codename = name.split(".") |
|
|
content_type__app_label=app_label, codename=codename |
|
|
permission = Permission.objects.get( |
|
|
) |
|
|
content_type__app_label=app_label, codename=codename |
|
|
groups = groups.union(permission.group_set.all()) |
|
|
) |
|
|
|
|
|
groups = groups.union(permission.group_set.all()) |
|
|
|
|
|
else: |
|
|
|
|
|
groups = groups.union( |
|
|
|
|
|
Group.objects.filter( |
|
|
|
|
|
permissions__in=Permission.objects.filter( |
|
|
|
|
|
content_type__app_label="users" |
|
|
|
|
|
) |
|
|
|
|
|
).distinct() |
|
|
|
|
|
) |
|
|
return groups |
|
|
return groups |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|