Browse Source

Supprime les machines orphelines

infra2.0
Gabriel Detraz 9 years ago
committed by root
parent
commit
e1844a5ab6
  1. 4
      machines/models.py
  2. 3
      machines/views.py
  3. 19
      topologie/migrations/0022_auto_20161211_1622.py
  4. 29
      users/migrations/0042_auto_20161126_2028.py

4
machines/models.py

@ -137,5 +137,7 @@ def interface_post_save(sender, **kwargs):
@receiver(post_delete, sender=Interface) @receiver(post_delete, sender=Interface)
def interface_post_delete(sender, **kwargs): def interface_post_delete(sender, **kwargs):
user = kwargs['instance'].machine.user interface = kwargs['instance']
user = interface.machine.user
user.ldap_sync(base=False, access_refresh=False, mac_refresh=True) user.ldap_sync(base=False, access_refresh=False, mac_refresh=True)

3
machines/views.py

@ -217,8 +217,11 @@ def del_interface(request, interfaceid):
messages.error(request, "Vous ne pouvez pas éditer une machine d'un autre user que vous sans droit") messages.error(request, "Vous ne pouvez pas éditer une machine d'un autre user que vous sans droit")
return redirect("/users/profil/" + str(request.user.id)) return redirect("/users/profil/" + str(request.user.id))
if request.method == "POST": if request.method == "POST":
machine = interface.machine
with transaction.atomic(), reversion.create_revision(): with transaction.atomic(), reversion.create_revision():
interface.delete() interface.delete()
if not machine.interface_set.all():
machine.delete()
reversion.set_user(request.user) reversion.set_user(request.user)
messages.success(request, "L'interface a été détruite") messages.success(request, "L'interface a été détruite")
return redirect("/users/profil/" + str(request.user.id)) return redirect("/users/profil/" + str(request.user.id))

19
topologie/migrations/0022_auto_20161211_1622.py

@ -0,0 +1,19 @@
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('topologie', '0021_port_radius'),
]
operations = [
migrations.AlterField(
model_name='port',
name='radius',
field=models.CharField(max_length=32, default='NO', choices=[('NO', 'NO'), ('STRICT', 'STRICT'), ('BLOQ', 'BLOQ'), ('COMMON', 'COMMON'), ('7', '7'), ('8', '8'), ('42', '42'), ('69', '69')]),
),
]

29
users/migrations/0042_auto_20161126_2028.py

@ -0,0 +1,29 @@
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('users', '0041_listright_details'),
]
operations = [
migrations.AlterField(
model_name='ldapserviceuser',
name='dn',
field=models.CharField(serialize=False, primary_key=True, max_length=200),
),
migrations.AlterField(
model_name='ldapuser',
name='dn',
field=models.CharField(serialize=False, primary_key=True, max_length=200),
),
migrations.AlterField(
model_name='ldapusergroup',
name='dn',
field=models.CharField(serialize=False, primary_key=True, max_length=200),
),
]
Loading…
Cancel
Save