mirror of
https://gitlab2.federez.net/re2o/re2o
synced 2024-11-30 00:22:25 +00:00
Bricoles
This commit is contained in:
parent
57b6be479c
commit
ecc80b268b
5 changed files with 29 additions and 5 deletions
|
@ -10,6 +10,10 @@
|
||||||
{% if interfaceform %}
|
{% if interfaceform %}
|
||||||
{% bootstrap_form_errors interfaceform %}
|
{% bootstrap_form_errors interfaceform %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
{% if domainform %}
|
||||||
|
{% bootstrap_form_errors interfaceform %}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
|
||||||
<form class="form" method="post">
|
<form class="form" method="post">
|
||||||
{% csrf_token %}
|
{% csrf_token %}
|
||||||
|
|
|
@ -138,7 +138,7 @@
|
||||||
</div>
|
</div>
|
||||||
<ul class="list-group">
|
<ul class="list-group">
|
||||||
{% for interface in interfaces|slice:":5" %}
|
{% for interface in interfaces|slice:":5" %}
|
||||||
<div class="list-group-item">{{interface.dns}}</div>
|
<div class="list-group-item">{{interface}}</div>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
{% if interfaces|length > 5 %}
|
{% if interfaces|length > 5 %}
|
||||||
<a class="list-group-item list-group-item-info" role="button" href="{% url "users:mon-profil" %}">
|
<a class="list-group-item list-group-item-info" role="button" href="{% url "users:mon-profil" %}">
|
||||||
|
|
|
@ -13,7 +13,7 @@
|
||||||
<tr>
|
<tr>
|
||||||
<td>
|
<td>
|
||||||
<a title="Configuer" href="{% url 'topologie:index-port' switch.pk %}">
|
<a title="Configuer" href="{% url 'topologie:index-port' switch.pk %}">
|
||||||
{{switch.switch_interface.dns}}
|
{{switch.switch_interface}}
|
||||||
</a>
|
</a>
|
||||||
</td>
|
</td>
|
||||||
<td>{{switch.switch_interface.ipv4}}</td>
|
<td>{{switch.switch_interface.ipv4}}</td>
|
||||||
|
|
|
@ -13,6 +13,10 @@
|
||||||
{% if interfaceform %}
|
{% if interfaceform %}
|
||||||
{% bootstrap_form_errors interfaceform %}
|
{% bootstrap_form_errors interfaceform %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
{% if domainform %}
|
||||||
|
{% bootstrap_form_errors domainform %}
|
||||||
|
{% endif %}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<form class="form" method="post">
|
<form class="form" method="post">
|
||||||
|
@ -26,6 +30,9 @@
|
||||||
{% if interfaceform %}
|
{% if interfaceform %}
|
||||||
{% bootstrap_form interfaceform %}
|
{% bootstrap_form interfaceform %}
|
||||||
{% endif %}
|
{% endif %}
|
||||||
|
{% if domainform %}
|
||||||
|
{% bootstrap_form domainform %}
|
||||||
|
{% endif %}
|
||||||
{% bootstrap_button "Créer ou modifier" button_type="submit" icon="ok" %}
|
{% bootstrap_button "Créer ou modifier" button_type="submit" icon="ok" %}
|
||||||
</form>
|
</form>
|
||||||
<br />
|
<br />
|
||||||
|
|
|
@ -124,6 +124,7 @@ def new_switch(request):
|
||||||
switch = NewSwitchForm(request.POST or None)
|
switch = NewSwitchForm(request.POST or None)
|
||||||
machine = NewMachineForm(request.POST or None)
|
machine = NewMachineForm(request.POST or None)
|
||||||
interface = AddInterfaceForm(request.POST or None, infra=request.user.has_perms(('infra',)))
|
interface = AddInterfaceForm(request.POST or None, infra=request.user.has_perms(('infra',)))
|
||||||
|
domain = AliasForm(request.POST or None, infra=request.user.has_perms(('infra',)))
|
||||||
if switch.is_valid() and machine.is_valid() and interface.is_valid():
|
if switch.is_valid() and machine.is_valid() and interface.is_valid():
|
||||||
try:
|
try:
|
||||||
user = User.objects.get(pseudo=ASSO_PSEUDO)
|
user = User.objects.get(pseudo=ASSO_PSEUDO)
|
||||||
|
@ -134,7 +135,8 @@ def new_switch(request):
|
||||||
new_machine.user = user
|
new_machine.user = user
|
||||||
new_interface = interface.save(commit=False)
|
new_interface = interface.save(commit=False)
|
||||||
new_switch = switch.save(commit=False)
|
new_switch = switch.save(commit=False)
|
||||||
if full_domain_validator(request, new_interface):
|
new_domain = domain.save(commit=False)
|
||||||
|
if full_domain_validator(request, new_domain):
|
||||||
with transaction.atomic(), reversion.create_revision():
|
with transaction.atomic(), reversion.create_revision():
|
||||||
new_machine.save()
|
new_machine.save()
|
||||||
reversion.set_user(request.user)
|
reversion.set_user(request.user)
|
||||||
|
@ -148,6 +150,11 @@ def new_switch(request):
|
||||||
new_interface.save()
|
new_interface.save()
|
||||||
reversion.set_user(request.user)
|
reversion.set_user(request.user)
|
||||||
reversion.set_comment("Création")
|
reversion.set_comment("Création")
|
||||||
|
new_domain.interface_parent = new_interface
|
||||||
|
with transaction.atomic(), reversion.create_revision():
|
||||||
|
new_domain.save()
|
||||||
|
reversion.set_user(request.user)
|
||||||
|
reversion.set_comment("Création")
|
||||||
new_switch.switch_interface = new_interface
|
new_switch.switch_interface = new_interface
|
||||||
with transaction.atomic(), reversion.create_revision():
|
with transaction.atomic(), reversion.create_revision():
|
||||||
new_switch.save()
|
new_switch.save()
|
||||||
|
@ -155,7 +162,7 @@ def new_switch(request):
|
||||||
reversion.set_comment("Création")
|
reversion.set_comment("Création")
|
||||||
messages.success(request, "Le switch a été crée")
|
messages.success(request, "Le switch a été crée")
|
||||||
return redirect("/topologie/")
|
return redirect("/topologie/")
|
||||||
return form({'topoform':switch, 'machineform': machine, 'interfaceform': interface}, 'topologie/switch.html', request)
|
return form({'topoform':switch, 'machineform': machine, 'interfaceform': interface, 'domainform': domain}, 'topologie/switch.html', request)
|
||||||
|
|
||||||
@login_required
|
@login_required
|
||||||
@permission_required('infra')
|
@permission_required('infra')
|
||||||
|
@ -168,10 +175,12 @@ def edit_switch(request, switch_id):
|
||||||
switch_form = EditSwitchForm(request.POST or None, instance=switch)
|
switch_form = EditSwitchForm(request.POST or None, instance=switch)
|
||||||
machine_form = EditMachineForm(request.POST or None, instance=switch.switch_interface.machine)
|
machine_form = EditMachineForm(request.POST or None, instance=switch.switch_interface.machine)
|
||||||
interface_form = EditInterfaceForm(request.POST or None, instance=switch.switch_interface)
|
interface_form = EditInterfaceForm(request.POST or None, instance=switch.switch_interface)
|
||||||
|
domain_form = AliasForm(request.POST or None, infra=request.user.has_perms(('infra',)), instance=switch.switch_interface.domain)
|
||||||
if switch_form.is_valid() and machine_form.is_valid() and interface_form.is_valid():
|
if switch_form.is_valid() and machine_form.is_valid() and interface_form.is_valid():
|
||||||
new_interface = interface_form.save(commit=False)
|
new_interface = interface_form.save(commit=False)
|
||||||
new_machine = machine_form.save(commit=False)
|
new_machine = machine_form.save(commit=False)
|
||||||
new_switch = switch_form.save(commit=False)
|
new_switch = switch_form.save(commit=False)
|
||||||
|
new_domain = domain.save(commit=False)
|
||||||
if full_domain_validator(request, new_interface):
|
if full_domain_validator(request, new_interface):
|
||||||
with transaction.atomic(), reversion.create_revision():
|
with transaction.atomic(), reversion.create_revision():
|
||||||
new_machine.save()
|
new_machine.save()
|
||||||
|
@ -181,13 +190,17 @@ def edit_switch(request, switch_id):
|
||||||
new_interface.save()
|
new_interface.save()
|
||||||
reversion.set_user(request.user)
|
reversion.set_user(request.user)
|
||||||
reversion.set_comment("Champs modifié(s) : %s" % ', '.join(field for field in interface_form.changed_data))
|
reversion.set_comment("Champs modifié(s) : %s" % ', '.join(field for field in interface_form.changed_data))
|
||||||
|
with transaction.atomic(), reversion.create_revision():
|
||||||
|
new_domain.save()
|
||||||
|
reversion.set_user(request.user)
|
||||||
|
reversion.set_comment("Champs modifié(s) : %s" % ', '.join(field for field in domain_form.changed_data))
|
||||||
with transaction.atomic(), reversion.create_revision():
|
with transaction.atomic(), reversion.create_revision():
|
||||||
new_switch.save()
|
new_switch.save()
|
||||||
reversion.set_user(request.user)
|
reversion.set_user(request.user)
|
||||||
reversion.set_comment("Champs modifié(s) : %s" % ', '.join(field for field in switch_form.changed_data))
|
reversion.set_comment("Champs modifié(s) : %s" % ', '.join(field for field in switch_form.changed_data))
|
||||||
messages.success(request, "Le switch a bien été modifié")
|
messages.success(request, "Le switch a bien été modifié")
|
||||||
return redirect("/topologie/")
|
return redirect("/topologie/")
|
||||||
return form({'topoform':switch_form, 'machineform': machine_form, 'interfaceform': interface_form}, 'topologie/switch.html', request)
|
return form({'topoform':switch_form, 'machineform': machine_form, 'interfaceform': interface_form, 'domainform': domain_form}, 'topologie/switch.html', request)
|
||||||
|
|
||||||
@login_required
|
@login_required
|
||||||
@permission_required('infra')
|
@permission_required('infra')
|
||||||
|
|
Loading…
Reference in a new issue