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.
 
 
 
 
 

260 linhas
11 KiB

  1. <!DOCTYPE html>
  2. <html>
  3. <%namespace name="helpers" file="jm2l:templates/helpers.mako"/>
  4. <head>
  5. <title>JM2L 2015</title>
  6. <meta charset="utf-8">
  7. <meta name="keywords" content="python web application" />
  8. <meta name="description" content="jm2l LinuxAzur journée méditéranéenne logiciel libre" />
  9. <!-- Force latest IE rendering engine or ChromeFrame if installed -->
  10. <!--[if IE]>
  11. <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  12. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  13. <![endif]-->
  14. <link rel="shortcut icon" href="/static/favicon.ico" />
  15. <link rel="stylesheet" href="/css/pylons.css" type="text/css" media="screen" />
  16. <link rel="stylesheet" href="/css/bootstrap.min.css" type="text/css" media="screen" />
  17. <link rel="stylesheet" href="/css/jm2l.css" type="text/css" media="screen" />
  18. <link rel="stylesheet" href="/css/bootstrap-responsive.css">
  19. <link rel="stylesheet" href="/css/font-size.css">
  20. ${self.cssAddOn()}
  21. <!--[if lte IE 6]>
  22. <link rel="stylesheet" href="/static/ie6.css" type="text/css" media="screen" charset="utf-8" />
  23. <![endif]-->
  24. <script src="/vendor/modernizr-2.8.3-respond-1.4.2.min.js"></script>
  25. ${self.cssAddOn()}
  26. ${self.jsAddOn_head()}
  27. </head>
  28. <body>
  29. <%
  30. context._kwargs['postpone_js']=[]
  31. DisplayYear = request.session.get('year', 2015)
  32. %>
  33. <%def name="jsAddOn_head()"></%def>
  34. <%def name="jsAddOn()"></%def>
  35. <%def name="cssAddOn()"></%def>
  36. ${helpers.uploader_js()}
  37. <div id="wrap">
  38. <div id="top">
  39. % if DisplayYear!=2015:
  40. <div class="align-center" style="background: url( ${'/img/%s/headerbg.png' % DisplayYear} ) repeat-x scroll 0 top #ffffff;">
  41. <a href="${"/%s/" % DisplayYear}">
  42. <div style="height:215px;background: url( ${"/img/%s/logo.png" % DisplayYear} ) no-repeat scroll center center transparent">
  43. </div>
  44. </a>
  45. </div>
  46. % else:
  47. <!-- Carousel
  48. ================================================== -->
  49. <div id="TitleCarousel" class="carousel slide" data-ride="carousel">
  50. <!-- Indicators -->
  51. <div class="carousel-inner" role="listbox">
  52. <div class="item ${["","active"][request.user and request.user.vote_logo==1 or request.user is None]}">
  53. <a href="/">
  54. <div style="height:215px;background: url(/img/2015/logo.png) no-repeat scroll center transparent"></div>
  55. </a>
  56. </div>
  57. <div class="item ${["","active"][request.user and request.user.vote_logo==2 or 0]}">
  58. <a href="/">
  59. <div style="height:215px;background: url(/img/2015/logo_1.png) no-repeat scroll center transparent"></div>
  60. </a>
  61. </div>
  62. <div class="item ${["","active"][request.user and request.user.vote_logo==3 or 0]}">
  63. <a href="/">
  64. <div style="height:215px;background: url(/img/2015/logo_2.png) no-repeat scroll center transparent"></div>
  65. </a>
  66. </div>
  67. <div class="item ${["","active"][request.user and request.user.vote_logo==4 or 0]}">
  68. <a href="/">
  69. <div style="height:215px;background: url(/img/2015/logo_3.png) no-repeat scroll center transparent"></div>
  70. </a>
  71. </div>
  72. % if request.user and request.user.vote_logo not in [1,2,3,4]:
  73. <div class="item active">
  74. <div class="align-center">
  75. <H1>JM2L 2015</H1>
  76. <H2> &laquo; Do It Yourself &raquo;</H2>
  77. <h3>Choisissez ici votre logo préféré !</h3>
  78. <p>Utilisez les flèches pour choisir et voter !<br>
  79. Vous pouvez changer à tout moment, mais vous n'aurez droit qu'a un seul choix, le vôtre ;)</p>
  80. </div>
  81. </div>
  82. % endif
  83. </div>
  84. <a class="left Tcarousel-control" href="#TitleCarousel" role="button" data-slide="prev">
  85. <img src="/img/chev-left.png" alt="go left">
  86. </a>
  87. <a class="right Tcarousel-control" href="#TitleCarousel" role="button" data-slide="next">
  88. <img src="/img/chev-right.png" alt="go right">
  89. </a>
  90. <div class="carousel-vote">
  91. % if request.user:
  92. <a href="#" class="btn"></a>
  93. % else:
  94. <a href="/sign/login" class="btn">Je m'identifie !</a>
  95. % endif
  96. </div>
  97. </div><!-- /.carousel -->
  98. % endif
  99. </div>
  100. <div id="middle">
  101. <div class="navbar">
  102. <div class="navbar-inner">
  103. <div class="container">
  104. <div class="nav pull-right">
  105. <div class="btn-group">
  106. <a class="btn dropdown-toggle" data-toggle="dropdown" href="#">
  107. Archives&nbsp;<span class="caret"></span></a>
  108. <ul class="dropdown-menu">
  109. % for tmpyear in range(2015, 2005, -1):
  110. % if tmpyear!=2014:
  111. <li><a href="/year/${tmpyear}">${tmpyear}</a></li>
  112. % endif
  113. % endfor
  114. </ul>
  115. </div>
  116. <div class="btn-group">
  117. <a class="btn dropdown-toggle" data-toggle="dropdown" href="#">
  118. % if request.user:
  119. <i class="icon-user"></i> ${request.user.prenom} ${request.user.nom}
  120. % else:
  121. <i class="icon-user icon-white"></i> Visiteur
  122. % endif
  123. <span class="caret"></span>
  124. </a>
  125. <ul class="dropdown-menu">
  126. % if request.user:
  127. % if request.user.Staff:
  128. <li><a href="/Staff">Partie Staff</a></li>
  129. <li><a href="/ListParticipant">Gérer les intervenants</a></li>
  130. <li><a href="/ListSalles">Gérer les salles</a></li>
  131. <li><a href="/entities">Gérer les entités</a></li>
  132. % endif
  133. <li><a href="/sign/out">Me déconnecter</a></li>
  134. % else:
  135. <li><a href="/participer-l-evenement#inscription">Je m'inscris</a></li>
  136. <li><a href="/sign/login">Je m'identifie</a></li>
  137. % endif
  138. ## <li>Mode
  139. ## <span class="visible-phone"> ✔ Phone</span>
  140. ## <span class="visible-tablet"> ✔ Tablet</span>
  141. ## <span class="visible-desktop"> ✔ Desktop</span>
  142. ## </li>
  143. </ul>
  144. </div>
  145. </div>
  146. <ul class="nav nav-pills pull-right">
  147. % if request.user:
  148. <li class="${participer or ''}"><a href="/MesJM2L">Mes JM2L</a></li>
  149. % else:
  150. <li class="${participer or ''}"><a href="/participer-l-evenement">Participer</a></li>
  151. % endif
  152. <li class="${programme or ''}"><a href="/${DisplayYear}/le-programme">Programme</a></li>
  153. <li class="${presse or ''}"><a href="/${DisplayYear}/dossier-de-presse">Presse</a></li>
  154. <li class="${plan or ''}"><a href="/nous-rejoindre">Contact et Plan</a></li>
  155. </ul>
  156. </div>
  157. </div>
  158. </div>
  159. <div class="middle align-center">
  160. </div>
  161. </div>
  162. <div id="bottom">
  163. % for type, message in request.session.pop_flash():
  164. <div class="container-fluid">
  165. <br>
  166. <div class="span6 offset3">
  167. <div class="alert alert-${type}">
  168. <button type="button" class="close" data-dismiss="alert">&times;</button>
  169. ${message}
  170. </div>
  171. </div>
  172. </div>
  173. % endfor
  174. <div class="container-fluid">
  175. <!--Body content-->
  176. ${next.body()}
  177. </div>
  178. </div>
  179. </div>
  180. <footer class="footer">
  181. <div class="container">
  182. <h4>JM2L 2005-2015</h4>
  183. <p>
  184. Concocté par <a href="http://www.linux-azur.org/">Linux Azur</a> ~
  185. <a href="http://creativecommons.org/licenses/by-sa/4.0/">CopyFriendly</a>
  186. </p>
  187. <p>
  188. +33 6 52 42 31 37 ~ contact at jm2l.linux-azur dot org
  189. </p>
  190. <p>
  191. Conception et construction en <a href="http://git.linux-azur.org/JM2L/jm2l/src/master">DIY</a> ~
  192. Hébergé par <a href="http://www.heberg-24.com/"> Heberg24 </a>
  193. </p>
  194. <p>
  195. Vous avez trouvé un bug ? <a href="http://git.linux-azur.org/JM2L/jm2l/issues">Reportez-le ici</a>
  196. </p>
  197. </div>
  198. </footer>
  199. <script src="/vendor/jquery.min.js"></script>
  200. <script src="/vendor/bootstrap.min.js"></script>
  201. <script src="/vendor/fileupload/js/jquery-uploader.min.js"></script>
  202. <script src="/vendor/ckeditor/ckeditor.js"></script>
  203. <script src="/js/plugins.js"></script>
  204. ${self.jsAddOn()}
  205. ## Then Handle Javascript
  206. <script>
  207. % for jsitem in context._kwargs['postpone_js']:
  208. ${jsitem | n}
  209. % endfor
  210. ## Call Control Handler
  211. HandleControls();
  212. </script>
  213. <!-- Piwik -->
  214. <script type="text/javascript">
  215. var _paq = _paq || [];
  216. _paq.push(["setDocumentTitle", document.domain + "/" + document.title]);
  217. _paq.push(['trackPageView']);
  218. _paq.push(['enableLinkTracking']);
  219. (function() {
  220. var u="//stats.style-python.fr/";
  221. _paq.push(['setTrackerUrl', u+'piwik.php']);
  222. _paq.push(['setSiteId', 4]);
  223. var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
  224. g.type='text/javascript'; g.async=true; g.defer=true; g.src=u+'piwik.js'; s.parentNode.insertBefore(g,s);
  225. })();
  226. </script>
  227. <noscript><p><img src="//stats.style-python.fr/piwik.php?idsite=4" style="border:0;" alt="" /></p></noscript>
  228. <!-- End Piwik Code -->
  229. % if request.user:
  230. <script>
  231. function handlevote() {
  232. currentIndex = $('div.active').index() + 1;
  233. $('.carousel-vote a').attr('href', "/vote_logo/" + currentIndex )
  234. if (currentIndex==${request.user.vote_logo or 0}) {
  235. $('.carousel-vote a').removeClass('btn-primary').addClass('btn-success')
  236. $('.carousel-vote a').html("<i class='icon-ok icon-white'></i> Mon préféré ! ");
  237. } else {
  238. $('.carousel-vote a').removeClass('btn-success').addClass('btn-primary');
  239. $('.carousel-vote a').html("<i class='icon-star icon-white'></i> Je vote pour ce logo ! ");
  240. }
  241. }
  242. $('#TitleCarousel').bind('slid', function() {
  243. handlevote();
  244. });
  245. handlevote();
  246. </script>
  247. % endif
  248. </body>
  249. </html>