add decorators for Device and ConnectedDevice
This commit is contained in:
parent
c76576bc79
commit
567761f68f
|
@ -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
|
||||
|
|
Loading…
Reference in New Issue