From c8b2f95cb91f73f94f68b2ab585b9c43bfbe7209 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ma=C3=ABl=20Kervella?= Date: Sun, 29 Apr 2018 15:41:55 +0000 Subject: [PATCH] Fix #112: Switch representation is only displayed on switch details - The nice switch representation is only displayes on the swithc details page and not on any other page using the `topologie/aff_port.html` (like the search) - Use acl to display links or not on the switch detail page --- topologie/templates/topologie/aff_port.html | 101 ++++----------- .../templates/topologie/aff_repr_switch.html | 116 ++++++++++++++++++ topologie/templates/topologie/index_p.html | 1 + 3 files changed, 141 insertions(+), 77 deletions(-) create mode 100644 topologie/templates/topologie/aff_repr_switch.html diff --git a/topologie/templates/topologie/aff_port.html b/topologie/templates/topologie/aff_port.html index 837c2b53..deeb0655 100644 --- a/topologie/templates/topologie/aff_port.html +++ b/topologie/templates/topologie/aff_port.html @@ -24,69 +24,6 @@ with this program; if not, write to the Free Software Foundation, Inc., {% load acl %} - -
- - - - - {% for port in port_list|slice:"::2" %} - - {% endfor %} - - - - - {% for port in port_list|slice:"::2" %} - {% if port.room %} - - {% endfor %} - - - - - - {% for port in port_list|slice:"1::2" %} - - {% endfor %} - - - - - {% for port in port_list|slice:"1::2" %} - {% if port.room %} - - {% endfor %} - - -
{{ port.port }}
- {{ port.room }} - {% elif port.machine_interface %} - - {{ port.machine_interface }} - {% elif port.related%} - - {{ port.related }} - {% else %} - - Vide - {% endif %} -
{{ port.port }}
- {{ port.room }} - {% elif port.machine_interface %} - - {{ port.machine_interface }} - {% elif port.related%} - - {{ port.related }} - {% else %} - - Vide - {% endif %} -
-
- -
@@ -105,37 +42,47 @@ with this program; if not, write to the Free Software Foundation, Inc., - + {% endfor %} diff --git a/topologie/templates/topologie/aff_repr_switch.html b/topologie/templates/topologie/aff_repr_switch.html new file mode 100644 index 00000000..236dee56 --- /dev/null +++ b/topologie/templates/topologie/aff_repr_switch.html @@ -0,0 +1,116 @@ +{% comment %} +Re2o est un logiciel d'administration développé initiallement au rezometz. Il +se veut agnostique au réseau considéré, de manière à être installable en +quelques clics. + +Copyright © 2017 Gabriel Détraz +Copyright © 2017 Goulven Kermarec +Copyright © 2017 Augustin Lemesle + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 2 of the License, or +(at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License along +with this program; if not, write to the Free Software Foundation, Inc., +51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +{% endcomment %} + +{% load acl %} + +
+
{{ port.port }} - {% if port.room %} - {{ port.room }} - {% endif %} + {% if port.room %}{{ port.room }}{% endif %} - {% if port.machine_interface %} - {{ port.machine_interface }} - {% endif %} + {% if port.machine_interface %} + {% can_view port.machine_interface.machine.user %} + + {{ port.machine_interface }} + + {% acl_else %} + {{ port.machine_interface }} + {% acl_end %} + {% endif %} - {% if port.related %} - {{ port.related }} - {% endif %} + {% if port.related %} + {% can_view port.related.switch %} + + {{ port.related }} + + {% acl_else %} + {{ port.related }} + {% acl_end %} + {% endif %} {{ port.radius }}{% if not port.vlan_force %} Aucun{%else %}{{ port.vlan_force }}{% endif %}{% if not port.vlan_force %}Aucun{% else %}{{ port.vlan_force }}{% endif %} {{ port.details }} - {% can_edit port %} + {% can_edit port %} - {% acl_end %} - {% can_delete port %} + {% acl_end %} + {% can_delete port %} - {% acl_end %} + {% acl_end %}
+ + + + {% for port in port_list|slice:"::2" %} + + {% endfor %} + + + + + {% for port in port_list|slice:"::2" %} + {% if port.room %} + + {% elif port.machine_interface %} + + {% elif port.related%} + + {% else %} + + {% endif %} + {% endfor %} + + + + + + {% for port in port_list|slice:"1::2" %} + + {% endfor %} + + + + + {% for port in port_list|slice:"1::2" %} + {% if port.room %} + + {% elif port.machine_interface %} + + {% elif port.related%} + + {% else %} + + {% endif %} + {% endfor %} + + +
{{ port.port }}
+ {{ port.room }} + + {% can_view port.machine_interface.machine.user %} + + {{ port.machine_interface }} + + {% acl_else %} + {{ port.machine_interface }} + {% acl_end %} + + {% can_view port.related.switch %} + + {{ port.related }} + + {% acl_else %} + {{ port.related }} + {% acl_end %} + + Vide +
{{ port.port }}
+ {{ port.room }} + + {% can_view port.machine_interface.machine.user %} + + {{ port.machine_interface }} + + {% acl_else %} + {{ port.machine_interface }} + {% acl_end %} + + {% can_view port.related.switch %} + + {{ port.related }} + + {% acl_else %} + {{ port.related }} + {% acl_end %} + + Vide +
+
diff --git a/topologie/templates/topologie/index_p.html b/topologie/templates/topologie/index_p.html index 0bd62039..138cc62c 100644 --- a/topologie/templates/topologie/index_p.html +++ b/topologie/templates/topologie/index_p.html @@ -36,6 +36,7 @@ with this program; if not, write to the Free Software Foundation, Inc., Ajouter des ports {% acl_end %}
+{% include "topologie/aff_repr_switch.html" with port_list=port_list %} {% include "topologie/aff_port.html" with port_list=port_list %}