|
- <%namespace name="h" file="jm2l:templates/helpers.mako"/>
- <%namespace name="tables" file="jm2l:templates/Logistique/Tables.mako"/>
- ## -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- <%def name="Main(Exchanges, miam_form)">
- <%
- DicExch = Exchanges.get_overview( request.user.uid )
- %>
- <div class="tabbable tabs-left" id="Intendance_tab">
-
- <ul class="nav nav-tabs navbar" style="margin-bottom:0;background-color: #f7f7f7;">
- <li class="active"> <a href="#ResumeInt" data-toggle="tab">Resumé</a> </li>
- <li> <a href="#Miam" data-toggle="tab">Miam</a> </li>
- <li> <a href="#Covoiturage" data-toggle="tab"><i class="icon-road"></i> Covoiturage</a> </li>
- <li> <a href="#Hebergement" data-toggle="tab"><i class="icon-home"></i> Hébergement</a> </li>
- <li> <a href="#Materiel" data-toggle="tab"><i class="icon-shopping-cart"></i> Matériel</a> </li>
- </ul>
-
- <div class="tab-content">
- <div class="tab-pane fade active in" id="ResumeInt">${Route_wrapper(DicExch)}</div>
- <div class="tab-pane fade" id="Miam">${Miam_wrapper(miam_form)}</div>
- <div class="tab-pane fade" id="Covoiturage">${Exchange_wrapper('C', DicExch['C'])}</div>
- <div class="tab-pane fade" id="Hebergement">${Exchange_wrapper('H', DicExch['H'])}</div>
- <div class="tab-pane fade" id="Materiel">${Exchange_wrapper('M', DicExch['M'])}</div>
- </div>
-
- </div>
- </%def>
- ## -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- <%def name="Exchange_wrapper(Type, DicExch)">
- ${tables.DoTable(Type, 'Ask', DicExch)}
- ${tables.DoTable(Type, 'Proposal', DicExch)}
- <fieldset>
- <legend>Tous les échanges</legend>
- ${Missing(Type, DicExch['Missing'])}
- </fieldset>
- </%def>
- ## -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- <%def name="Miam_wrapper(miam_form)">
- <fieldset>
- <legend>Qu'est ce qu'on mange ?</legend>
- <form id="MiamForm" action="/MonMiam" method="POST">
-
- <%
- DicForm = {
- }
- %>
- ${h.DisplayForm(miam_form, DicForm)}
- <div class="span2 offset5">
- <input class="btn btn-primary" type="submit" value="Enregistrer !" />
- </div>
- </form>
- </fieldset>
- </%def>
- ## -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- <%def name="Missing(Type, Selection)">
- <%
- if Type=='H':
- CurTitle = u"d'hébergement"
- CurIcon = "icon-home"
- elif Type=='C':
- CurTitle = "de co-voiturage"
- CurIcon = "icon-road"
- elif Type=='M':
- CurTitle = u"de prêt de matériel"
- CurIcon = "icon-shopping-cart"
- %>
- <table class="table table-striped table-bordered table-hover">
- <thead>
- <tr>
- <th colspan="5">
- Les échanges ${CurTitle}
- % if 0:
- <span style="float:right;">
- <a data-original-title="Afficher les demandes" data-toggle="tooltip" id="${Type}_Demande">
- <label class="checkbox inline">
- <input type="checkbox" id="Demandes">
- <i class="icon-comment"></i>
- </input>
- </label>
- </a>
- <a data-original-title="Afficher les propositions" data-toggle="tooltip" id="${Type}_Props">
- <label class="checkbox inline">
- <input type="checkbox" value="#">
- <i class="${CurIcon}"></i>
- </input>
- </label>
- </a>
- <span>
- % endif
- </th>
- </tr>
-
- <tr>
- <th style="width:1em;"></th>
- <th>Détails</th>
- <th style="width:1em;"></th>
- <tr>
- </thead>
- <tbody id="Missing${Type}Table">
- % if len(Selection)==0:
- <tr>
- <td colspan="5" style="text-align:center;">
- <i>Il n'y a aucun échange ${CurTitle} proposé actuellement...</i>
- </td>
- </tr>
- % else:
- % for item in Selection:
- <%
- if (item.provider_id and item.asker_id):
- continue
- %>
- <tr style="cursor:pointer;">
- % if item.exch_state=='Ask':
- <td style="vertical-align: middle;"><i class="${CurIcon}"></i></td>
- % elif item.exch_state=='Proposal':
- <td style="vertical-align: middle;"><i class="icon-comment"></i></td>
- % endif
- <td>
- <p style="text-align:center">
- %if item.asker and item.exch_state=='Ask':
- <a href="/user/${item.asker.slug}"> ${item.asker.prenom} ${item.asker.nom} </a> demande
- %elif item.provider and item.exch_state=='Proposal':
- <a href="/user/${item.provider.slug}"> ${item.provider.prenom} ${item.provider.nom} </a> offre
- % endif
- % if item.exch_type=="C":
- un co-voiturage le ${item.start_time.strftime('%a %d %b vers %Hh%M').decode('utf-8')}
- de <a href="javascript:DoGetLieu('/2015/modal/Place/${item.Itin.start.place_id}')">${item.Itin.start.display_name}</a>
- à <a href="javascript:DoGetLieu('/2015/modal/Place/${item.Itin.arrival.place_id}')">${item.Itin.arrival.display_name}</a>
- % elif item.exch_type=="M":
- % if item.Category:
- <i>${item.Category.exch_subtype}</i>
- % endif
- % if item.description:
- ${item.description[:30]}
- % endif
- de ${item.start_time.strftime('%a %d %b %Hh%M').decode('utf-8')}
- à ${item.end_time.strftime('%a %d %b %Hh%M').decode('utf-8')}
- % else:
- % if item.Category:
- <i>${item.Category.exch_subtype}</i>
- % endif
- % if item.description:
- ${item.description[:30]}
- % endif
- ${item.start_time.strftime('%a %d %b').decode('utf-8')} soir
- % endif
- </p>
- </td>
- <td style="vertical-align: middle;">
- % if item.provider_id==request.user.uid or item.asker_id==request.user.uid:
- <a class="btn btn-mini btn-primary" style="float:right"
- href="javascript:DoGet('/2015/modal/Show${Type}/${item.exch_id}')">
- <i class="icon-search icon-white"></i>
- </a>
- % elif (item.provider_id and item.asker_id):
- <a class="btn btn-mini btn-primary" style="float:right"
- href="javascript:DoGet('/2015/modal/Show${Type}/${item.exch_id}')">
- <i class="icon-search icon-white"></i>
- </a> <br/> <br/>
- ## <a id="Ask${Type}-${item.exch_id}"
- ## class="btn btn-mini btn-info" style="float:right"
- ## data-original-title="En attente"
- ## data-toggle="popover" data-placement="left"
- ## data-content="Déjà en attente d'une réponse."
- ## href="#Missing${Type}Table">
- ## <i class="icon-random icon-white"></i>
- ## </a>
- ## <script>$("#Ask${Type}-${item.exch_id}").popover();</script>
- % else:
- <a class="btn btn-mini btn-primary" style="float:right"
- href="javascript:DoGet('/2015/modal/Show${Type}/${item.exch_id}')">
- <i class="icon-search icon-white"></i>
- </a> <br/> <br/>
- ## <a class="btn btn-mini btn-primary" style="float:right"
- ## href="javascript:DoGet('/2015/exchange/Ask${Type}/${item.exch_id}/deal')">
- ## <i class="icon-random icon-white"></i>
- ## </a>
- % endif
- </td>
- </tr>
- % endfor
- % endif
- </tbody>
- </table>
-
- <%
- context._kwargs['postpone_js'].append( "$('#%s_Props').tooltip();" % Type )
- context._kwargs['postpone_js'].append( "$('#%s_Demande').tooltip();" % Type )
- %>
- ## <script>
- ## $('#${Type}_Props').tooltip()
- ## $('#${Type}_Demande').tooltip()
- ## </script>
-
- </%def>
- ## -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- <%def name="Route_wrapper(DicExch)">
- <%
- AskSelection = Exchanges.get_my_counters( int(request.user.uid) )
- AllSelection = Exchanges.get_counters()
- ListWrap = ["Co-voiturage",u"Hébergement","Matos"]
- %>
- <div class="accordion" id="AccordionCounter">
- <div class="accordion-group">
- <div class="accordion-heading">
- <a class="accordion-toggle" data-toggle="collapse" data-parent="#AccordionCounter" href="#collapseMe"> Mes compteurs </a>
- </div>
- <div id="collapseMe" class="accordion-body collapse in">
- <div class="accordion-inner">
-
- <table class="table table-striped table-bordered table-hover LogistiqueTable">
- <thead style="text-align:center">
- <tr>
- <th>Section</th>
- <th>Mes demandes</th>
- <th>Mes offres</th>
- <th>Accords</th>
- </tr>
- </thead>
- <tbody id="MyCounters">
- <tr>
- <td>Miam</td>
- <td>?</td>
- <td>-</td>
- <td>?</td>
- </tr>
- % for Wrap in ListWrap:
- <tr>
- <td>${Wrap | h}</td>
- <td>
- <span class="badge">
- ${len(DicExch[Wrap[0]]['Ask'])}
- </span>
- </td>
- <td>
- <span class="badge">
- ${len(DicExch[Wrap[0]]['Proposal'])}
- </span>
- </td>
- <td>
- <span class="badge">
- ${len(DicExch[Wrap[0]]['Agree'])}
- </span>
- </td>
- </tr>
- % endfor
- </tbody>
- </table>
-
- </div>
- </div>
- </div>
- <div class="accordion-group">
- <div class="accordion-heading">
- <a class="accordion-toggle" data-toggle="collapse" data-parent="#AccordionCounter" href="#collapseAll">Les compteur de l´évenement</a>
- </div>
- <div id="collapseAll" class="accordion-body collapse">
- <div class="accordion-inner">
-
- <table class="table table-striped table-bordered table-hover LogistiqueTable">
- <thead style="text-align:center">
- <tr>
- <th>Section</th>
- <th>Les demandes</th>
- <th>Les propositions</th>
- <th>Les Accords</th>
- </tr>
- </thead>
- <tbody id="AllCounters">
- <tr>
- <td>Miam</td>
- <td>?</td>
- <td>-</td>
- <td>?</td>
- </tr>
- % for Wrap in ListWrap:
- <tr>
- <td>${Wrap | h}</td>
- <td>
- <span class="badge">
- ${DicExch[Wrap[0]]['Counters']['AllAsk']}
- </span>
- </td>
- <td>
- <span class="badge">
- ${DicExch[Wrap[0]]['Counters']['AllProp']}
- </span>
- </td>
- <td>
- <span class="badge">
- ${DicExch[Wrap[0]]['Counters']['AllAgree']}
- </span>
- </td>
- </tr>
- % endfor
- </tbody>
- </table>
-
- </div>
- </div>
- </div>
- </div>
-
- <fieldset>
- <legend>Mon Badge</legend>
- <p>
- Rendez-vous à l'accueil pour retirer votre badge !
- <br>
- Pour que tout se passe pour le mieux dans l'organisation de l'événement, nous vous invitons à :
- <ul>
- <li>Renseigner et valider vos horaires d'arrivée / de départ dans la section "Mon Séjour".</li>
- <li>Procéder à la réservation de vos repas dans la section "Miam" !</li>
- <li>Préparer et réserver vos transports au plus vite dans la section "Mes Frais".</li>
- </ul>
- </p>
- <div class="center">
- <a href="/user/${request.user.slug}/badge"> Télécharger mon badge (PDF)</a>
- <br>
- </div>
- <br>
- <div align="center">
- <a href="/user/${request.user.slug}/badge">
- <img style="border:solid black 1px;" src="/user/${request.user.slug}/badge?png=true" alt="Badge de ${request.user.slug}" />
- </a>
- </div>
- </fieldset>
- </%def>
- ## -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- ## Handle the Javascript Refresh to live update Current Page
- ## -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
- % if reload:
- <%
- DicExch = Exchanges.get_overview( request.user.uid )
- context._kwargs['postpone_js'] = []
- %>
- ${Route_wrapper(DicExch)}
- ${Exchange_wrapper(Type, DicExch[Type])}
- %endif
|