Le repo des sources pour le site web des JM2L
Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.
 
 
 
 
 

155 linhas
4.4 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. }
  25. .EvtBox {
  26. font-size: 0.7em;
  27. line-height: 1.2em;
  28. padding:5px;
  29. height:100%;
  30. max-width: 100%;
  31. }
  32. .EvtBox a {
  33. color: #666;
  34. }
  35. svg {
  36. font: 10px sans-serif;
  37. shape-rendering: crispEdges;
  38. }
  39. rect{fill:red;
  40. stroke:none;
  41. shape-rendering:crispEdges;
  42. }
  43. svg {
  44. margin: 1.5em auto;
  45. max-width: 100%;
  46. display: block;
  47. }
  48. .axis path,
  49. .axis line {
  50. fill: none;
  51. stroke: #222;
  52. }
  53. </style>
  54. </%def>
  55. <div class="row-fluid">
  56. <div class="span9">
  57. <h2 class="shadow">Le Programme ${DisplayYear}</h2>
  58. <a class="pull-right" href="/${DisplayYear}/JM2L.ics">Fichier ICAL ${DisplayYear}</a>
  59. <div class="tabbable" id="main_tab">
  60. <ul class="nav nav-tabs" style="margin-bottom: 5px;">
  61. % for Num, (Day, IdDay) in enumerate(Days):
  62. <li class="${['','active'][Num==0]}"><a href="#Day${Num}" id="Schedule_${Num}" data-toggle="tab">${Day}</a></li>
  63. % endfor
  64. </ul>
  65. <div class="tab-content" style="padding:0">
  66. % for Num, (Day, IdDay) in enumerate(Days):
  67. <div class="tab-pane fade ${['','active '][Num==0]}in" id="Day${Num}">
  68. ## Container for SVG version of Programme
  69. <div id="Schedule_SVG_${IdDay}">
  70. </div>
  71. </div>
  72. % endfor
  73. </div>
  74. </div>
  75. </div>
  76. <div class="span3">
  77. <!--Sidebar content-->
  78. ${helpers.participants(DisplayYear)}
  79. </div>
  80. </div>
  81. <div class="row-fluid">
  82. <div class="span10 offset1">
  83. <div id="DivProg" style="border: 1px solid black;"></div>
  84. ##<div class="accordion" id="accordionEvent">
  85. % for num, (Title, EvtType) in enumerate( TabDisplay ):
  86. <%
  87. Counter = Events.filter(Event.event_type==EvtType).count()
  88. if Counter==0:
  89. continue
  90. %>
  91. <table class="table table-striped table-bordered table-hover">
  92. <thead>
  93. <tr>
  94. <th style="width:7em;text-align:center;">Date</th>
  95. <th style="text-align:center;">${Counter} ${Title}</th>
  96. </tr>
  97. </thead>
  98. <tbody>
  99. % for event in Events.filter(Event.event_type==EvtType):
  100. <tr>
  101. <td style="text-align:center;">
  102. <%
  103. vid = event.video.first()
  104. pres = event.presentation.first()
  105. %>
  106. ${event.start_time.strftime("%a %d %b").decode('utf-8')}<br>
  107. ${event.start_time.strftime("%H:%M")} - ${event.end_time.strftime("%H:%M")}
  108. </td>
  109. <td style="position: relative;">
  110. <strong>
  111. <a href="/event/${event.for_year}/${event.slug}">${event.name}</a>
  112. </strong>
  113. <span style="float:right;">
  114. % if vid:
  115. <a href="${vid.get_path}">
  116. <i class="icon-film"></i>
  117. </a>
  118. % endif
  119. % if pres:
  120. <a href="${pres.get_path}">
  121. <i class="icon-list-alt"></i>
  122. </a>
  123. % endif
  124. </span>
  125. <br/>
  126. avec
  127. % for num, inter in enumerate(event.intervenants.all()):
  128. %if num>0:
  129. ,
  130. %endif
  131. <a href="/user/${inter.slug}">${inter.prenom} ${inter.nom}</a>
  132. % endfor
  133. % if event.Salle:
  134. <div style="position: absolute; bottom: 2px; right: 5px;">
  135. ${event.Salle.name}
  136. </div>
  137. % endif
  138. </td>
  139. </tr>
  140. % endfor
  141. </tbody>
  142. </table>
  143. % endfor
  144. </div>
  145. </div>