8
0
Fork 0
mirror of https://gitlab2.federez.net/re2o/re2o synced 2024-12-26 00:43:46 +00:00

Merge branch 'klafyvel' of https://gitlab.rezometz.org/rezo/re2o into klafyvel

This commit is contained in:
Gabriel Detraz 2017-10-26 21:44:41 +02:00 committed by root
commit bb0db9ef13
2 changed files with 19 additions and 16 deletions

View file

@ -35,7 +35,9 @@ from . import views
urlpatterns = [ urlpatterns = [
url(r'^$', views.index, name='index'), url(r'^$', views.index, name='index'),
url(r'^new_switch/$', views.new_switch, name='new-switch'), url(r'^new_switch/$', views.new_switch, name='new-switch'),
url(r'^create_ports/(?P<switch_id>[0-9]+)$', views.create_ports, name='create-ports'), url(r'^create_ports/(?P<switch_id>[0-9]+)$',
views.create_ports,
name='create-ports'),
url(r'^index_room/$', views.index_room, name='index-room'), url(r'^index_room/$', views.index_room, name='index-room'),
url(r'^new_room/$', views.new_room, name='new-room'), url(r'^new_room/$', views.new_room, name='new-room'),
url(r'^edit_room/(?P<room_id>[0-9]+)$', views.edit_room, name='edit-room'), url(r'^edit_room/(?P<room_id>[0-9]+)$', views.edit_room, name='edit-room'),

View file

@ -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,
@ -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):
@ -503,8 +506,6 @@ def create_ports(request, switch_id):
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,7 +529,7 @@ 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