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.
 
 
 
 
 

164 lines
4.8 KiB

  1. <%inherit file="jm2l:templates/layout.mako"/>
  2. <%namespace name="helpers" file="jm2l:templates/helpers.mako"/>
  3. <%
  4. TabDisplay = [
  5. (u'Tables rondes', 'Table ronde'),
  6. (u'Conférences', 'Conference'),
  7. (u'Ateliers', 'Atelier'),
  8. (u'Stands', 'Stand'),
  9. ]
  10. %>
  11. <%def name="jsAddOn()">
  12. <script type="text/javascript" src="/vendor/d3js/d3.v3.min.js"></script>
  13. <script type="text/javascript" src="/js/programme.js"></script>
  14. </%def>
  15. <%def name="cssAddOn()">
  16. <style>
  17. .myblock {
  18. background-color:#EEE;
  19. border: 1px solid #ccc;
  20. height: 65px;
  21. }
  22. .SvgBody {
  23. padding: 0px;
  24. background-color: transparent;
  25. }
  26. .EvtBox {
  27. font-size: 0.7em;
  28. line-height: 1.2em;
  29. padding:5px;
  30. height:100%;
  31. }
  32. .EvtBox a {
  33. color: #666;
  34. }
  35. svg {
  36. font: 10px sans-serif;
  37. shape-rendering: crispEdges;
  38. }
  39. rect {
  40. stroke-width: 0px;
  41. }
  42. .axis path,
  43. .axis line {
  44. fill: none;
  45. stroke: #222;
  46. }
  47. </style>
  48. </%def>
  49. <div class="row-fluid">
  50. <div class="span9">
  51. <h2 class="shadow">Le Programme ${DisplayYear}</h2>
  52. <a class="pull-right" href="/${DisplayYear}/JM2L.ics">Fichier ICAL ${DisplayYear}</a>
  53. <div class="tabbable" id="main_tab">
  54. <ul class="nav nav-tabs" style="margin-bottom: 5px;">
  55. % for Num, (Day, IdDay) in enumerate(Days):
  56. <li class="${['','active'][Num==0]}"><a href="#Day${Num}" id="Schedule_${Num}" data-toggle="tab">${Day}</a></li>
  57. % endfor
  58. </ul>
  59. <div class="tab-content" style="padding:0">
  60. % for Num, (Day, IdDay) in enumerate(Days):
  61. <div class="tab-pane fade ${['','active '][Num==0]}in" id="Day${Num}">
  62. ## Container for SVG version of Programme
  63. <div id="Schedule_SVG_${IdDay}">
  64. </div>
  65. </div>
  66. % endfor
  67. </div>
  68. </div>
  69. </div>
  70. <div class="span3">
  71. <!--Sidebar content-->
  72. ${helpers.participants(DisplayYear)}
  73. </div>
  74. </div>
  75. <div class="row-fluid">
  76. <div class="span10 offset1">
  77. <div id="DivProg" style="border: 1px solid black;"></div>
  78. ##<div class="accordion" id="accordionEvent">
  79. % for num, (Title, EvtType) in enumerate( TabDisplay ):
  80. <%
  81. Counter = Events.filter(Event.event_type==EvtType).count()
  82. if Counter==0:
  83. continue
  84. %>
  85. ## <div class="accordion-group">
  86. ## <div class="accordion-heading">
  87. ## <a class="accordion-toggle" data-toggle="collapse" data-parent="#accordionEvent" href="#collapseEvent${num}">
  88. ## ${Counter} ${Title}
  89. ## </a>
  90. ## </div>
  91. ## <div id="collapseEvent${num}" class="accordion-body collapse">
  92. ## <div class="accordion-inner">
  93. <table width="100%" class="table table-striped table-bordered table-hover">
  94. <thead>
  95. <tr>
  96. <th style="width:7em;text-align:center;">Date</th>
  97. <th style="text-align:center;">${Counter} ${Title}</th>
  98. </tr>
  99. </thead>
  100. <tbody>
  101. % for event in Events.filter(Event.event_type==EvtType):
  102. <tr>
  103. <td style="text-align:center;">
  104. <%
  105. vid = event.video.first()
  106. pres = event.presentation.first()
  107. %>
  108. ${event.start_time.strftime("%a %d %b").decode('utf-8')}<br>
  109. ${event.start_time.strftime("%H:%M")} - ${event.end_time.strftime("%H:%M")}
  110. </td>
  111. <td style="position: relative;">
  112. <strong>
  113. <a href="/event/${event.for_year}/${event.slug}">${event.name}</a>
  114. </strong>
  115. <span style="float:right;">
  116. % if vid:
  117. <a href="${vid.get_path}">
  118. <i class="icon-film"></i>
  119. </a>
  120. % endif
  121. % if pres:
  122. <a href="${pres.get_path}">
  123. <i class="icon-list-alt"></i>
  124. </a>
  125. % endif
  126. </span>
  127. <br/>
  128. avec
  129. % for num, inter in enumerate(event.intervenants.all()):
  130. %if num>0:
  131. ,
  132. %endif
  133. <a href="/user/${inter.slug}">${inter.prenom} ${inter.nom}</a>
  134. % endfor
  135. % if event.Salle:
  136. <div style="position: absolute; bottom: 2px; right: 5px;">
  137. ${event.Salle.name}
  138. </div>
  139. % endif
  140. </td>
  141. </tr>
  142. % endfor
  143. </tbody>
  144. </table>
  145. ## </div>
  146. ## </div>
  147. ## </div>
  148. % endfor
  149. ##</div>
  150. </div>
  151. </div>