add decorators for Device and ConnectedDevice

This commit is contained in:
Andreas Zweili 2019-07-19 16:10:33 +02:00
parent c76576bc79
commit 567761f68f
1 changed files with 29 additions and 1 deletions

View File

@ -1,5 +1,5 @@
from django.http import HttpResponseForbidden
from inventory.models import Computer, Customer
from inventory.models import Computer, Customer, Device, ConnectedDevice
def computer_view_permission(old_fuction):
@ -14,3 +14,31 @@ def computer_view_permission(old_fuction):
"You're not allowed to access this device."
)
return new_function
def device_view_permission(old_function):
def new_function(request, device_id, *args, **kwargs):
computer = Device.objects.get(pk=device_id)
customer = Customer.objects.get(pk=device.customer.pk)
user = request.user
if user.has_perm('inventory.view_customer', customer):
return old_fuction(request, device_id)
else:
return HttpResponseForbidden(
"You're not allowed to access this device."
)
return new_function
def connect_device_view_permission(old_function):
def new_function(request, device_id, *args, **kwargs):
computer = Device.objects.get(pk=device_id)
customer = Customer.objects.get(pk=device.customer.pk)
user = request.user
if user.has_perm('inventory.view_customer', customer):
return old_fuction(request, device_id)
else:
return HttpResponseForbidden(
"You're not allowed to access this device."
)
return new_function