From 74c3012f04b80ec74cbd4e163037aceccedfd7aa Mon Sep 17 00:00:00 2001 From: tr4ck3ur Date: Sat, 30 Sep 2017 15:22:17 +0200 Subject: [PATCH] Added physical rooms list --- jm2l/__init__.py | 1 + jm2l/templates/Salles/list_phy.mako | 67 +++++++++++++++++++++++++++++ jm2l/templates/helpers.mako | 35 +++++++++++++++ jm2l/templates/layout.mako | 21 ++++----- jm2l/views.py | 14 ++++++ 5 files changed, 128 insertions(+), 10 deletions(-) create mode 100644 jm2l/templates/Salles/list_phy.mako diff --git a/jm2l/__init__.py b/jm2l/__init__.py index 3dfb885..1f23a02 100644 --- a/jm2l/__init__.py +++ b/jm2l/__init__.py @@ -121,6 +121,7 @@ def main(global_config, **settings): config.add_route('action_task_area', '/{year:\d+}/Staff/pole/{action:(\w+)}/{pole_id:(\d+)}') config.add_route('list_salles', '/ListSalles') + config.add_route('list_salles_phy', '/ListSallesPhy') config.add_route('handle_salle', '/Salles{sep:/*}{salle_id:(\d+)?}') config.add_route('handle_salle_phy', '/PhySalles{sep:/*}{salle_id:(\d+)?}') config.add_route('action_salle', '/Salles/{action:(\w+)}/{salle_id:(\d+)}') diff --git a/jm2l/templates/Salles/list_phy.mako b/jm2l/templates/Salles/list_phy.mako new file mode 100644 index 0000000..d58319f --- /dev/null +++ b/jm2l/templates/Salles/list_phy.mako @@ -0,0 +1,67 @@ +# -*- coding: utf-8 -*- +<%inherit file="jm2l:templates/layout.mako"/> +<%namespace name="helpers" file="jm2l:templates/helpers.mako"/> +<% +from slugify import slugify +%> + + Ajouter une Salle + +

Gestion des salles physique aux JM2L

+ +
+
+ + + + + + + + + % if len(DicSallePhy)==0: + + + + % endif + % for SallePhy in DicSallePhy: + + + + % endfor + +
+ Liste des salles physique +
+ Il n'y a pas de salle définie pour le moment. +
+
+
+ ${helpers.show_salles_phy(SallePhy)} +
+
+
+ Modifier +
+
+ % if SallePhy.uid: + [ ${SallePhy.nb_places} places ] + % else: + [ Créer ] + % endif +
+ +
+

${SallePhy.name | n}

+ % if SallePhy.description: + ${SallePhy.description | n} + % endif +
+
+
+ +
+
+<%def name="jsAddOn()"> + + diff --git a/jm2l/templates/helpers.mako b/jm2l/templates/helpers.mako index 1ad8be5..3811474 100644 --- a/jm2l/templates/helpers.mako +++ b/jm2l/templates/helpers.mako @@ -555,6 +555,41 @@ TabJs = {'select':[], 'desc':[]} \ +## -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= +<%def name="show_salles_phy(SallePhy)"> \ +
+ <% + photos = SallePhy.PhotosLinks + %> +
${len(photos)} Photo(s)
+ +
+ \ + ## -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= ## Wrapper pour les photos de l'année ## -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= diff --git a/jm2l/templates/layout.mako b/jm2l/templates/layout.mako index f2005cb..8b49244 100644 --- a/jm2l/templates/layout.mako +++ b/jm2l/templates/layout.mako @@ -126,16 +126,17 @@ ${helpers.uploader_js()} % if request.user: % if request.user.Staff:
  • Partie Staff
  • -
  • Gérer les intervenants
  • -
  • Gérer les salles
  • -
  • Gérer les entités
  • -
  • Participations à l'orga
  • -
  • Comptabilité
  • +
  • Gérer les intervenants
  • +
  • Gérer les salles
  • +
  • Gérer les entités
  • +
  • Participations à l'orga
  • +
  • Comptabilité
  • +
  • Les salles à Poly'tech
  • % endif
  • Mon profil
  • Mon profil public
  • -
  • Me déconnecter
  • +
  • Me déconnecter
  • % else:
  • Je m'inscris
  • Je m'identifie
  • @@ -190,7 +191,7 @@ ${helpers.uploader_js()}

    JM2L 2005-2017

    - Concocté par Linux Azur ~ + Concocté par Linux Azur ~ CopyFriendly

    @@ -198,10 +199,10 @@ ${helpers.uploader_js()}

    Conception et construction en DIY ~ - Hébergé par Heberg24 + Hébergé par Heberg24

    - Vous avez trouvé un bug ? Reportez-le ici + Vous avez trouvé un bug ? Reportez-le ici

    @@ -247,7 +248,7 @@ function handlevote() { $('.carousel-vote a').attr('href', "/vote_logo/" + currentIndex ) if (currentIndex==${request.user.vote_logo or 0}) { $('.carousel-vote a').removeClass('btn-primary').addClass('btn-success') - $('.carousel-vote a').html(" Mon préféré ! "); + $('.carousel-vote a').html(" Mon préféré ! "); } else { $('.carousel-vote a').removeClass('btn-success').addClass('btn-primary'); $('.carousel-vote a').html(" Je vote pour ce logo ! "); diff --git a/jm2l/views.py b/jm2l/views.py index 8cfbcb2..7f6fd76 100644 --- a/jm2l/views.py +++ b/jm2l/views.py @@ -686,6 +686,20 @@ def list_salles(request): DicSalle[year] = salles return {'DicSalle': DicSalle } + +@view_config(route_name='list_salles_phy', renderer='jm2l:templates/Salles/list_phy.mako') +def list_salles_phy(request): + if request.user is None: + # Don't answer to users that aren't logged + raise HTTPForbidden(u'Vous devez vous identifier pour obtenir une réponse.') + if not request.user.Staff: + # Don't answer to users that aren't logged + raise HTTPForbidden(u'Vous n\'avez pas l\'autorité suffisante pour effectuer cette action.') + salles_phy = DBSession.query( SallePhy )\ + .order_by(SallePhy.name).all() + return {'DicSallePhy': salles_phy } + + @view_config(route_name='handle_salle', renderer='jm2l:templates/Salles/salle.mako') def handle_salle(request): if request.user is None: