Browse Source

Fonction qui permet de savoir si une machine a le droit à internet ou non

test_david
chirac 10 years ago
parent
commit
2bcf765c57
  1. 6
      machines/views.py
  2. 5
      users/views.py

6
machines/views.py

@ -10,6 +10,7 @@ from django.contrib import messages
from .models import NewMachineForm, EditMachineForm, EditInterfaceForm, AddInterfaceForm, NewInterfaceForm from .models import NewMachineForm, EditMachineForm, EditInterfaceForm, AddInterfaceForm, NewInterfaceForm
from .models import Machine, Interface, IpList from .models import Machine, Interface, IpList
from users.models import User from users.models import User
from users.views import has_access
def unassign_ips(user): def unassign_ips(user):
machines = Interface.objects.filter(machine=Machine.objects.filter(user=user)) machines = Interface.objects.filter(machine=Machine.objects.filter(user=user))
@ -41,6 +42,11 @@ def unassign_ipv4(interface):
interface.ipv4 = None interface.ipv4 = None
interface.save() interface.save()
def is_active(interface):
machine = interface.machine
user = machine.user
return machine.active and has_access(user)
def form(ctx, template, request): def form(ctx, template, request):
c = ctx c = ctx
c.update(csrf(request)) c.update(csrf(request))

5
users/views.py

@ -62,10 +62,7 @@ def is_whitelisted(user):
def has_access(user): def has_access(user):
""" Renvoie si un utilisateur a accès à internet""" """ Renvoie si un utilisateur a accès à internet"""
if user.state == User.STATE_ACTIVE and not is_ban(user) and ( is_adherent(user) or is_whitelisted(user)): return user.state == User.STATE_ACTIVE and not is_ban(user) and ( is_adherent(user) or is_whitelisted(user))
return True
else:
return False
def form(ctx, template, request): def form(ctx, template, request):
c = ctx c = ctx

Loading…
Cancel
Save