|
|
@ -184,7 +184,9 @@ def index_port(request, switch_id): |
|
|
.select_related('room')\ |
|
|
.select_related('room')\ |
|
|
.select_related('machine_interface__domain__extension')\ |
|
|
.select_related('machine_interface__domain__extension')\ |
|
|
.select_related('machine_interface__machine__user')\ |
|
|
.select_related('machine_interface__machine__user')\ |
|
|
.select_related('related__switch__switch_interface__domain__extension')\ |
|
|
.select_related( |
|
|
|
|
|
'related__switch__switch_interface__domain__extension' |
|
|
|
|
|
)\ |
|
|
.select_related('switch') |
|
|
.select_related('switch') |
|
|
port_list = SortTable.sort( |
|
|
port_list = SortTable.sort( |
|
|
port_list, |
|
|
port_list, |
|
|
@ -470,7 +472,7 @@ def new_switch(request): |
|
|
reversion.set_comment("Création") |
|
|
reversion.set_comment("Création") |
|
|
messages.success(request, "Le switch a été créé") |
|
|
messages.success(request, "Le switch a été créé") |
|
|
return redirect("/topologie/") |
|
|
return redirect("/topologie/") |
|
|
i_mbf_param = generate_ipv4_mbf_param( interface, False ) |
|
|
i_mbf_param = generate_ipv4_mbf_param(interface, False) |
|
|
return form({ |
|
|
return form({ |
|
|
'topoform': switch, |
|
|
'topoform': switch, |
|
|
'machineform': machine, |
|
|
'machineform': machine, |
|
|
@ -479,6 +481,7 @@ def new_switch(request): |
|
|
'i_mbf_param': i_mbf_param |
|
|
'i_mbf_param': i_mbf_param |
|
|
}, 'topologie/switch.html', request) |
|
|
}, 'topologie/switch.html', request) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@login_required |
|
|
@login_required |
|
|
@permission_required('infra') |
|
|
@permission_required('infra') |
|
|
def create_ports(request, switch_id): |
|
|
def create_ports(request, switch_id): |
|
|
@ -498,13 +501,11 @@ def create_ports(request, switch_id): |
|
|
|
|
|
|
|
|
port_form = CreatePortsForm( |
|
|
port_form = CreatePortsForm( |
|
|
request.POST or None, |
|
|
request.POST or None, |
|
|
initial={'begin':s_begin,'end':s_end} |
|
|
initial={'begin': s_begin, 'end': s_end} |
|
|
) |
|
|
) |
|
|
if port_form.is_valid(): |
|
|
if port_form.is_valid(): |
|
|
begin = port_form.cleaned_data['begin'] |
|
|
begin = port_form.cleaned_data['begin'] |
|
|
end = port_form.cleaned_data['end'] |
|
|
end = port_form.cleaned_data['end'] |
|
|
b = [] |
|
|
|
|
|
e = [] |
|
|
|
|
|
if end < begin: |
|
|
if end < begin: |
|
|
messages.error(request, "Port de fin inférieur au port de début !") |
|
|
messages.error(request, "Port de fin inférieur au port de début !") |
|
|
return redirect("/topologie/switch/" + str(switch.id)) |
|
|
return redirect("/topologie/switch/" + str(switch.id)) |
|
|
@ -512,15 +513,15 @@ def create_ports(request, switch_id): |
|
|
messages.error(request, "Ce switch ne peut avoir autant de ports.") |
|
|
messages.error(request, "Ce switch ne peut avoir autant de ports.") |
|
|
return redirect("/topologie/switch/" + str(switch.id)) |
|
|
return redirect("/topologie/switch/" + str(switch.id)) |
|
|
|
|
|
|
|
|
b = range(begin, s_begin) |
|
|
begin_range = range(begin, s_begin) |
|
|
e = range(s_end+1, end+1) |
|
|
end_range = range(s_end+1, end+1) |
|
|
for i in itertools.chain(b,e): |
|
|
for i in itertools.chain(begin_range, end_range): |
|
|
p = Port() |
|
|
port = Port() |
|
|
p.switch = switch |
|
|
port.switch = switch |
|
|
p.port = i |
|
|
port.port = i |
|
|
try: |
|
|
try: |
|
|
with transaction.atomic(), reversion.create_revision(): |
|
|
with transaction.atomic(), reversion.create_revision(): |
|
|
p.save() |
|
|
port.save() |
|
|
reversion.set_user(request.user) |
|
|
reversion.set_user(request.user) |
|
|
reversion.set_comment("Création") |
|
|
reversion.set_comment("Création") |
|
|
messages.success(request, "Création du port %d" % i) |
|
|
messages.success(request, "Création du port %d" % i) |
|
|
@ -528,8 +529,8 @@ def create_ports(request, switch_id): |
|
|
messages.error(request, "Création d'un port existant.") |
|
|
messages.error(request, "Création d'un port existant.") |
|
|
return redirect("/topologie/switch/" + str(switch.id)) |
|
|
return redirect("/topologie/switch/" + str(switch.id)) |
|
|
|
|
|
|
|
|
return form({'topoform': port_form,}, 'topologie/switch.html', request) |
|
|
return form({'topoform': port_form}, 'topologie/switch.html', request) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@login_required |
|
|
@login_required |
|
|
@permission_required('infra') |
|
|
@permission_required('infra') |
|
|
@ -588,7 +589,7 @@ def edit_switch(request, switch_id): |
|
|
) |
|
|
) |
|
|
messages.success(request, "Le switch a bien été modifié") |
|
|
messages.success(request, "Le switch a bien été modifié") |
|
|
return redirect("/topologie/") |
|
|
return redirect("/topologie/") |
|
|
i_mbf_param = generate_ipv4_mbf_param( interface_form, False ) |
|
|
i_mbf_param = generate_ipv4_mbf_param(interface_form, False) |
|
|
return form({ |
|
|
return form({ |
|
|
'topoform': switch_form, |
|
|
'topoform': switch_form, |
|
|
'machineform': machine_form, |
|
|
'machineform': machine_form, |
|
|
|