@@ -43,7 +45,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
{{ type.type }} |
{{ type.extension }} |
- {{ type.need_infra }} |
+ {{ type.need_infra|tick }} |
{{ type.domaine_ip_start }}-{{ type.domaine_ip_stop }} |
{{ type.prefix_v6 }} |
{{ type.vlan }} |
@@ -53,6 +55,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
{% include 'buttons/edit.html' with href='machines:edit-iptype' id=type.id %}
{% acl_end %}
{% history_button type %}
+ {% include 'buttons/history.html' with href='machines:history' name='iptype' id=type.id %}
{% endfor %}
diff --git a/machines/templates/machines/aff_nas.html b/machines/templates/machines/aff_nas.html
index 2c2cfd21..86e75c7d 100644
--- a/machines/templates/machines/aff_nas.html
+++ b/machines/templates/machines/aff_nas.html
@@ -24,6 +24,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
{% load acl %}
{% load logs_extra %}
+{% load design %}
@@ -42,12 +43,13 @@ with this program; if not, write to the Free Software Foundation, Inc.,
{{ nas.nas_type }} |
{{ nas.machine_type }} |
{{ nas.port_access_mode }} |
- {{ nas.autocapture_mac }} |
+ {{ nas.autocapture_mac|tick }} |
{% can_edit nas %}
{% include 'buttons/edit.html' with href='machines:edit-nas' id=nas.id %}
{% acl_end %}
{% history_button nas %}
+ {% include 'buttons/history.html' with href='machines:history' name='nas' id=nas.id %}
|
{% endfor %}
diff --git a/machines/templates/machines/aff_servers.html b/machines/templates/machines/aff_servers.html
index 030afcea..90629e04 100644
--- a/machines/templates/machines/aff_servers.html
+++ b/machines/templates/machines/aff_servers.html
@@ -22,6 +22,8 @@ with this program; if not, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
{% endcomment %}
+{% load design %}
+
@@ -37,8 +39,8 @@ with this program; if not, write to the Free Software Foundation, Inc.,
{{ server.service }} |
{{ server.server }} |
{{ server.last_regen }} |
- {{ server.asked_regen }} |
- {{ server.need_regen }} |
+ {{ server.asked_regen| tick }} |
+ {{ server.need_regen | tick }} |
|
diff --git a/machines/templates/machines/aff_service.html b/machines/templates/machines/aff_service.html
index 6ca6278b..95705858 100644
--- a/machines/templates/machines/aff_service.html
+++ b/machines/templates/machines/aff_service.html
@@ -47,6 +47,7 @@ with this program; if not, write to the Free Software Foundation, Inc.,
{% include 'buttons/edit.html' with href='machines:edit-service' id=service.id %}
{% acl_end %}
{% history_button service %}
+ {% include 'buttons/history.html' with href='machines:history' name='service' id=service.id %}
{% endfor %}
diff --git a/preferences/templates/preferences/display_preferences.html b/preferences/templates/preferences/display_preferences.html
old mode 100644
new mode 100755
index 09395b21..34417695
--- a/preferences/templates/preferences/display_preferences.html
+++ b/preferences/templates/preferences/display_preferences.html
@@ -25,198 +25,201 @@ with this program; if not, write to the Free Software Foundation, Inc.,
{% load bootstrap3 %}
{% load acl %}
+{% load design %}
{% block title %}Création et modification des préférences{% endblock %}
{% block content %}
- Préférences utilisateur
-
+Préférences utilisateur
+
- Editer
-
-
-
-
+ Editer
+
+
+
+
- Téléphone obligatoirement requis |
- {{ useroptions.is_tel_mandatory }} |
- Champ gpg fingerprint |
- {{ useroptions.gpg_fingerprint }} |
+ Téléphone obligatoirement requis |
+ {{ useroptions.is_tel_mandatory|tick }} |
+ Auto inscription |
+ {{ useroptions.self_adhesion|tick }} |
- Creations d'adhérents par tous |
- {{ useroptions.all_can_create_adherent }} |
- Creations de clubs par tous |
- {{ useroptions.all_can_create_club }} |
+ Champ gpg fingerprint |
+ {{ useroptions.gpg_fingerprint|tick }} |
+ Shell par défaut des utilisateurs |
+ {{ useroptions.shell_default }} |
- Auto inscription |
- {{ useroptions.self_adhesion }} |
- Shell par défaut des utilisateurs |
- {{ useroptions.shell_default }} |
-
-
- Préférences machines
-
-
- Editer
-
-
-
-
+ Creations d'adhérents par tous |
+ {{ useroptions.all_can_create_adherent|tick }} |
+ Creations de clubs par tous |
+ {{ useroptions.all_can_create_club|tick }} |
+
+
+
+
+Préférences machines
+
+
+ Editer
+
+
+
+
- Mot de passe par machine |
- {{ machineoptions.password_machine }} |
- Machines/interfaces autorisées par utilisateurs |
- {{ machineoptions.max_lambdauser_interfaces }} |
+ Mot de passe par machine |
+ {{ machineoptions.password_machine|tick }} |
+ Machines/interfaces autorisées par utilisateurs |
+ {{ machineoptions.max_lambdauser_interfaces }} |
- Alias dns autorisé par utilisateur |
- {{ machineoptions.max_lambdauser_aliases }} |
- Support de l'ipv6 |
- {{ machineoptions.ipv6_mode }} |
+ Alias dns autorisé par utilisateur |
+ {{ machineoptions.max_lambdauser_aliases }} |
+ Support de l'ipv6 |
+ {{ machineoptions.ipv6_mode }} |
- Creation de machines |
- {{ machineoptions.create_machine }} |
+ Creation de machines |
+ {{ machineoptions.create_machine|tick }} |
-
- Préférences topologie
-
-
- Editer
-
-
-
-
+Préférences topologie
+
+
+ Editer
+
+
+
+
- Politique générale de placement de vlan |
- {{ topologieoptions.radius_general_policy }} |
- Ce réglage défini la politique vlan après acceptation radius : soit sur le vlan de la plage d'ip de la machine, soit sur un vlan prédéfini dans "Vlan où placer les machines après acceptation RADIUS" |
- |
+ Politique générale de placement de vlan |
+ {{ topologieoptions.radius_general_policy }} |
+ Ce réglage défini la politique vlan après acceptation radius : soit sur le vlan de la plage d'ip de la machine, soit sur un vlan prédéfini dans "Vlan où placer les machines après acceptation RADIUS" |
+ |
- Vlan où placer les machines après acceptation RADIUS |
- {{ topologieoptions.vlan_decision_ok }} |
- Vlan où placer les machines après rejet RADIUS |
- {{ topologieoptions.vlan_decision_nok }} |
+ Vlan où placer les machines après acceptation RADIUS |
+ {{ topologieoptions.vlan_decision_ok }} |
+ Vlan où placer les machines après rejet RADIUS |
+ {{ topologieoptions.vlan_decision_nok }} |
-
- Préférences generales
-
-
- Editer
-
-
-
-
+Préférences generales
+
+
+ Editer
+
+
+
+
- Nom du site web |
- {{ generaloptions.site_name }} |
- Adresse mail d'expedition automatique |
- {{ generaloptions.email_from }} |
+ Nom du site web |
+ {{ generaloptions.site_name }} |
+ Adresse mail d'expedition automatique |
+ {{ generaloptions.email_from }} |
- Affichage de résultats dans le champ de recherche |
- {{ generaloptions.search_display_page }} |
- Nombre d'items affichés en liste (taille normale) |
- {{ generaloptions.pagination_number }} |
+ Affichage de résultats dans le champ de recherche |
+ {{ generaloptions.search_display_page }} |
+ Nombre d'items affichés en liste (taille normale) |
+ {{ generaloptions.pagination_number }} |
- Nombre d'items affichés en liste (taille élevée) |
- {{ generaloptions.pagination_large_number }} |
- Temps avant expiration du lien de reinitialisation de mot de passe (en heures) |
- {{ generaloptions.req_expire_hrs }} |
-
-
- Message global affiché sur le site |
- {{ generaloptions.general_message }} |
- Résumé des CGU |
- {{ generaloptions.GTU_sum_up }} |
-
-
- CGU |
- {{generaloptions.GTU}}
- |
-
- Données de l'association
-
-
- Editer
-
-
-
-
-
- Nom |
- {{ assooptions.name }} |
- SIRET |
- {{ assooptions.siret }} |
+ Nombre d'items affichés en liste (taille élevée) |
+ {{ generaloptions.pagination_large_number }} |
+ Temps avant expiration du lien de reinitialisation de mot de passe (en heures) |
+ {{ generaloptions.req_expire_hrs }} |
- Adresse |
- {{ assooptions.adresse1 }}
- {{ assooptions.adresse2 }} |
- Contact mail |
- {{ assooptions.contact }} |
+ Message global affiché sur le site |
+ {{ generaloptions.general_message }} |
+ Résumé des CGU |
+ {{ generaloptions.GTU_sum_up }} |
+
+
+ CGU |
+ {{generaloptions.GTU}}
+ |
+
+Données de l'association
+
+
+ Editer
+
+
+
+
+
+ Nom |
+ {{ assooptions.name }} |
+ SIRET |
+ {{ assooptions.siret }} |
- Telephone |
- {{ assooptions.telephone }} |
- Pseudo d'usage |
- {{ assooptions.pseudo }} |
+ Adresse |
+ {{ assooptions.adresse1 }}
+ {{ assooptions.adresse2 }} |
+ Contact mail |
+ {{ assooptions.contact }} |
- Objet utilisateur de l'association |
- {{ assooptions.utilisateur_asso }} |
- Description de l'association |
+ Telephone |
+ {{ assooptions.telephone }} |
+ Pseudo d'usage |
+ {{ assooptions.pseudo }} |
+
+
+ Objet utilisateur de l'association |
+ {{ assooptions.utilisateur_asso }} |
+ Description de l'association |
{{ assooptions.description | safe }} |
-
-
-
- Messages personalisé dans les mails
-
-
- Editer
-
-
-
-
-
- Mail de bienvenue (Français) |
- {{ mailmessageoptions.welcome_mail_fr | safe }} |
-
-
- Mail de bienvenue (Anglais) |
- {{ mailmessageoptions.welcome_mail_en | safe }} |
-
- Liste des services et préférences page d'accueil
- {% can_create preferences.Service%}
- Ajouter un service
- {% acl_end %}
- Supprimer un ou plusieurs service
- {% include "preferences/aff_service.html" with service_list=service_list %}
-
-
- Editer
-
-
-
-
+Messages personalisé dans les mails
+
+
+ Editer
+
+
+
+
- Url du compte twitter |
- {{ homeoptions.twitter_url }} |
- Nom utilisé pour afficher le compte |
- {{ homeoptions.twitter_account_name }} |
+ Mail de bienvenue (Français) |
+ {{ mailmessageoptions.welcome_mail_fr | safe }} |
- Url du compte facebook |
- {{ homeoptions.facebook_url }} |
+ Mail de bienvenue (Anglais) |
+ {{ mailmessageoptions.welcome_mail_en | safe }} |
-
-
-
-
+
+Liste des services et préférences page d'accueil
+{% can_create preferences.Service%}
+ Ajouter un service
+{% acl_end %}
+ Supprimer un ou plusieurs service
+{% include "preferences/aff_service.html" with service_list=service_list %}
+
+
+
+ Editer
+
+
+
+
+
+ Url du compte twitter |
+ {{ homeoptions.twitter_url }} |
+ Nom utilisé pour afficher le compte |
+ {{ homeoptions.twitter_account_name }} |
+
+
+ Url du compte facebook |
+ {{ homeoptions.facebook_url }} |
+
+
+
+
+
{% endblock %}
diff --git a/preferences/templatetags/__init__.py b/preferences/templatetags/__init__.py
new file mode 100644
index 00000000..86d112b2
--- /dev/null
+++ b/preferences/templatetags/__init__.py
@@ -0,0 +1,19 @@
+#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 Maël Kervella
+#
+# 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.
diff --git a/re2o/templatetags/design.py b/re2o/templatetags/design.py
new file mode 100644
index 00000000..87a0e0f8
--- /dev/null
+++ b/re2o/templatetags/design.py
@@ -0,0 +1,39 @@
+#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 Maël Kervella
+#
+# 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.
+
+from django import template
+from django.utils.html import conditional_escape
+from django.utils.safestring import mark_safe
+
+register = template.Library()
+
+
+@register.filter(needs_autoescape=False)
+def tick(valeur, autoescape=False):
+
+ if isinstance(valeur,bool):
+ if valeur == True:
+ result = ''
+ else:
+ result = ''
+ return mark_safe(result)
+
+ else: # if the value is not a boolean, display it as if tick was not called
+ return valeur