diff --git a/jm2l/__init__.py b/jm2l/__init__.py index a55bdb8..3dfb885 100644 --- a/jm2l/__init__.py +++ b/jm2l/__init__.py @@ -168,6 +168,7 @@ def main(global_config, **settings): # HTML Routes - Logged #config.add_route('profil', 'MesJM2L') config.add_route('jm2l', '/MesJM2L') + config.add_route('drop_sejour', '/DropSejour') config.add_route('miam', '/MonMiam') config.add_route('sejour', '/MonSejour') config.add_route('orga', '/MonOrga') diff --git a/jm2l/static/img/warn.png b/jm2l/static/img/warn.png new file mode 100644 index 0000000..57b503e Binary files /dev/null and b/jm2l/static/img/warn.png differ diff --git a/jm2l/templates/Profil/Sejour.mako b/jm2l/templates/Profil/Sejour.mako index 18d0d90..67520ed 100644 --- a/jm2l/templates/Profil/Sejour.mako +++ b/jm2l/templates/Profil/Sejour.mako @@ -4,6 +4,21 @@ fieldset:disabled { color:#CCC; } + % if mytrip.Sejour: +
+ Ooops !! J'ai rendez-vous pour un poney-piscine...
+ + J'annule ma venue en ${CurrentYear}. + +
+ % else: + + Attention ! + Vous n'avez pas confirmé votre venue aux JM2L ${CurrentYear} + +

Complétez et validez vite ce formulaire !

+ % endif +
Arrivée diff --git a/jm2l/views.py b/jm2l/views.py index aaf4c63..8cfbcb2 100644 --- a/jm2l/views.py +++ b/jm2l/views.py @@ -1031,6 +1031,21 @@ def list_orga(request): .all() return { 'Users':Data } +@view_config(route_name='drop_sejour') +def drop_sejour(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.') + + # Feed FicheSejour if any + FicheSejour = Sejour.by_user(request.user.uid, CurrentYear) + if FicheSejour: + DBSession.delete(FicheSejour) + request.session.flash(('warning', u'Votre participation %s a été supprimé avec succès.' % CurrentYear )) + else: + raise HTTPNotFound() + return HTTPFound(location='/MesJM2L#Sejour') + @view_config(route_name='jm2l', renderer="jm2l:templates/jm2l.mako") def jm2l_page(request): if request.user is None: