Le repo des sources pour le site web des JM2L
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 

124 lines
7.5 KiB

  1. <%def name="DoTable(Type, Kind, Selection)">
  2. <%
  3. if Kind=='Ask':
  4. What = "demande"
  5. Form = "Ask"
  6. Me = "asker_id"
  7. You = "provider_id"
  8. elif Kind=='Proposal':
  9. What = "offre"
  10. Form = "Prop"
  11. Me = "provider_id"
  12. You = "asker_id"
  13. if Type=='H':
  14. CurTitle = u"d'hébergement"
  15. CurIcon = "icon-home"
  16. elif Type=='C':
  17. CurTitle = "de co-voiturage"
  18. CurIcon = "icon-road"
  19. elif Type=='M':
  20. CurTitle = u"de prêt de matériel"
  21. CurIcon = "icon-shopping-cart"
  22. %>
  23. <table class="table table-striped table-bordered table-hover">
  24. <thead>
  25. <tr>
  26. <th colspan="3"><i class="${CurIcon}"></i> ${What}s ${CurTitle}
  27. <a class="btn btn-mini btn-primary" Myhref="/${CurrentYear}/modal/${Form}${Type}/0"
  28. role="button" data-target="#AjaxModal" style="float:right" handle="modal">
  29. <i class="icon-plus-sign icon-white"></i> Ajouter
  30. </a>
  31. </th>
  32. </tr>
  33. </thead>
  34. <tbody id="${Form}${Type}Table">
  35. % if len(Selection['Ask'])==0 and len(Selection['Proposal'])==0:
  36. <tr>
  37. <td colspan="2" style="text-align:center;">
  38. <i>Vous n'avez fait aucune ${What}e ${CurTitle}</i>
  39. </td>
  40. </tr>
  41. % else:
  42. <tr>
  43. <th style="width:7em;">Etat</th>
  44. <th>Détails</th>
  45. </tr>
  46. % for CurKind in ['Ask', 'Proposal']:
  47. % for item in Selection[CurKind]:
  48. <%
  49. if getattr(item, You)==request.user.uid:
  50. continue
  51. %>
  52. <tr style="cursor:pointer;">
  53. <td>
  54. % if item.exch_done:
  55. <div class="btn-group">
  56. <a class="btn btn-small btn-success" href="javascript:DoGet('/${CurrentYear}/modal/Show${Type}/${item.exch_id}')"><i class="icon-ok icon-white"></i> Validé</a>
  57. <a class="btn btn-small btn-success dropdown-toggle" data-toggle="dropdown" href="#"><span class="caret"></span></a>
  58. <ul class="dropdown-menu">
  59. <li><a href="javascript:DoGet('/${CurrentYear}/modal/Show${Type}/${item.exch_id}')"><i class="icon-search"></i> Détails</a></li>
  60. <li class="divider"></li>
  61. <li><a href="javascript:DoGet('/${CurrentYear}/exchange/${Form}${Type}/${item.exch_id}/refuse')"><i class="icon-remove"></i> Annuler</a></li>
  62. </ul>
  63. % elif getattr(item, You) is None:
  64. <div class="btn-group">
  65. <a class="btn btn-small"><i class="icon-signal"></i> Publié</a>
  66. <a class="btn btn-small dropdown-toggle" data-toggle="dropdown" href="#"><span class="caret"></span></a>
  67. <ul class="dropdown-menu">
  68. <li><a href="javascript:DoGet('/${CurrentYear}/modal/${Form}${Type}/${item.exch_id}')"><i class="icon-pencil"></i> Modifier</a></li>
  69. <li><a onclick="return confirm_click();" href="javascript:DoGet('/${CurrentYear}/exchange/${Form}${Type}/${item.exch_id}/delete')"><i class="icon-trash"></i> Supprimer</a></li>
  70. </ul>
  71. % elif getattr(item, Me)==request.user.uid and item.exch_state==CurKind:
  72. Je ${What} <br>
  73. <div class="btn-group">
  74. <a class="btn btn-small btn-warning" href="javascript:DoGet('/${CurrentYear}/modal/Show${Type}/${item.exch_id}')"><i class="icon-question-sign icon-white"></i> Proposition</a>
  75. <a class="btn btn-small btn-warning dropdown-toggle" data-toggle="dropdown" href="#"><span class="caret"></span></a>
  76. <ul class="dropdown-menu">
  77. <li><a href="javascript:DoGet('/${CurrentYear}/modal/Show${Type}/${item.exch_id}')"><i class="icon-search"></i> Détails</a></li>
  78. <li class="divider"></li>
  79. <li><a href="javascript:DoGet('/${CurrentYear}/exchange/${Form}${Type}/${item.exch_id}/accept')"><i class="icon-ok"></i> Accepter</a></li>
  80. <li><a href="javascript:DoGet('/${CurrentYear}/exchange/${Form}${Type}/${item.exch_id}/refuse')"><i class="icon-remove"></i> Refuser</a></li>
  81. <li class="divider"></li>
  82. <li><a onclick="return confirm_click();" href="javascript:DoGet('/${CurrentYear}/exchange/${Form}${Type}/${item.exch_id}/delete')"><i class="icon-trash"></i> Supprimer</a></li>
  83. </ul>
  84. % elif getattr(item, Me)==request.user.uid:
  85. Je ${What} <br>
  86. <div class="btn-group">
  87. <a class="btn btn-small btn-info" href="javascript:DoGet('/${CurrentYear}/modal/Show${Type}/${item.exch_id}')"><i class="icon-question-sign icon-white"></i> Négociation</a>
  88. <a class="btn btn-small btn-info dropdown-toggle" data-toggle="dropdown" href="#"><span class="caret"></span></a>
  89. <ul class="dropdown-menu">
  90. <li><a href="javascript:DoGet('/${CurrentYear}/modal/Show${Type}/${item.exch_id}')"><i class="icon-search"></i> Détails</a></li>
  91. <li><a href="#"><i class="icon-question-sign"></i> En Attente de réponse </a></li>
  92. <li><a href="javascript:DoGet('/${CurrentYear}/exchange/${Form}${Type}/${item.exch_id}/refuse')"><i class="icon-remove"></i> Se désister </a></li>
  93. </ul>
  94. % endif
  95. </div>
  96. </div>
  97. </td>
  98. <td>
  99. %if Type=='C':
  100. ${item.start_time.strftime('%A %d %b %Y').decode('utf-8')} vers ${item.start_time.strftime('%Hh%M')}
  101. de <a href="javascript:DoGetLieu('/${CurrentYear}/modal/Place/${item.Itin.start.place_id}')">${item.Itin.start.display_name}</a>
  102. à <a href="javascript:DoGetLieu('/${CurrentYear}/modal/Place/${item.Itin.arrival.place_id}')">${item.Itin.arrival.display_name}</a>
  103. %elif Type=='H':
  104. % if item.Category:
  105. <i>${item.Category.exch_subtype}</i>,
  106. % endif
  107. La nuit du ${item.start_time.strftime('%A %d %b %Y').decode('utf-8')}<br>
  108. %elif Type=='M':
  109. de ${item.start_time.strftime('%A %d %b %Y').decode('utf-8')} vers ${item.start_time.strftime('%Hh%M')}
  110. à ${item.end_time.strftime('%A %d %b %Y').decode('utf-8')} vers ${item.end_time.strftime('%Hh%M')}<br>
  111. ${item.Category.exch_subtype}
  112. %endif
  113. %if item.description:
  114. ${item.description}
  115. %endif
  116. </td>
  117. </tr>
  118. % endfor
  119. % endfor
  120. % endif
  121. </tbody>
  122. </table>
  123. </%def>