network_inventory/backend/computers/decorators.py

18 lines
572 B
Python
Raw Normal View History

from django.http import HttpResponseForbidden
from django.shortcuts import get_object_or_404
2019-12-31 16:16:41 +01:00
from .models import Computer
def computer_view_permission(old_fuction):
def new_function(request, pk, *args, **kwargs):
computer = get_object_or_404(Computer, pk=pk)
user = request.user
2020-01-10 00:01:06 +01:00
if user.has_perm('customers.view_customer', computer.customer):
return old_fuction(request, pk)
else:
return HttpResponseForbidden(
"You're not allowed to access this device."
2020-08-03 13:41:49 +02:00
)
return new_function