Le repo des sources pour le site web des JM2L
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.
 
 
 
 
 

241 lignes
9.6 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. ${self.cssAddOn()}
  20. <!--[if lte IE 6]>
  21. <link rel="stylesheet" href="/static/ie6.css" type="text/css" media="screen" charset="utf-8" />
  22. <![endif]-->
  23. <script src="/vendor/modernizr-2.8.3-respond-1.4.2.min.js"></script>
  24. ${self.cssAddOn()}
  25. ${self.jsAddOn_head()}
  26. </head>
  27. <body>
  28. <%
  29. context._kwargs['postpone_js']=[]
  30. DisplayYear = request.session.get('year', 2015)
  31. %>
  32. <%def name="jsAddOn_head()"></%def>
  33. <%def name="jsAddOn()"></%def>
  34. <%def name="cssAddOn()"></%def>
  35. ${helpers.uploader_js()}
  36. <div id="wrap">
  37. <div id="top">
  38. % if DisplayYear!=2015:
  39. ## style="background: url( ${"/img/%s/headerbg.png" % DisplayYear} ) repeat-x scroll 0 top #ffffff;">
  40. <div class="align-center">
  41. <a href="/">
  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 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 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 center transparent"></div>
  65. </a>
  66. </div>
  67. </div>
  68. <a class="left Tcarousel-control" href="#TitleCarousel" role="button" data-slide="prev">
  69. <img src="/img/chev-left.png">
  70. </a>
  71. <a class="right Tcarousel-control" href="#TitleCarousel" role="button" data-slide="next">
  72. <img src="/img/chev-right.png">
  73. </a>
  74. <div class="carousel-vote">
  75. % if request.user:
  76. <a href="#" class="btn"></a>
  77. % else:
  78. <a href="/sign/login" class="btn">Je m'identifie !</a>
  79. % endif
  80. </div>
  81. </div><!-- /.carousel -->
  82. % endif
  83. </div>
  84. <div id="middle">
  85. <div class="navbar">
  86. <div class="navbar-inner">
  87. <div class="container">
  88. <div class="nav pull-left">
  89. <div class="btn-group">
  90. <a class="btn dropdown-toggle" data-toggle="dropdown" href="#">
  91. <span class="brand" style="padding: 0 10px 0 18px;">JM2L
  92. <small>${DisplayYear}</small>&nbsp;<span class="caret"></span></span></a>
  93. <ul class="dropdown-menu">
  94. % for tmpyear in range(2015, 2005, -1):
  95. % if tmpyear!=2014:
  96. <li><a href="/year/${tmpyear}">${tmpyear}</a></li>
  97. % endif
  98. % endfor
  99. </ul>
  100. </div>
  101. <div class="btn-group">
  102. <a class="btn dropdown-toggle" data-toggle="dropdown" href="#">
  103. % if request.user:
  104. <i class="icon-user"></i> ${request.user.prenom} ${request.user.nom}
  105. % else:
  106. <i class="icon-user icon-white"></i> Visiteur
  107. % endif
  108. <span class="caret"></span>
  109. </a>
  110. <ul class="dropdown-menu">
  111. % if request.user:
  112. % if request.user.Staff:
  113. <li><a href="/Staff">Partie Staff</a></li>
  114. % endif
  115. <li><a href="/sign/out">Me déconnecter</a></li>
  116. % else:
  117. <li><a href="/participer-l-evenement#inscription">Je m'inscris</a></li>
  118. <li><a href="/sign/login">Je m'identifie</a></li>
  119. % endif
  120. ## <li>Mode
  121. ## <span class="visible-phone"> ✔ Phone</span>
  122. ## <span class="visible-tablet"> ✔ Tablet</span>
  123. ## <span class="visible-desktop"> ✔ Desktop</span>
  124. ## </li>
  125. </ul>
  126. </div>
  127. </div>
  128. <ul class="nav nav-pills pull-right">
  129. <li class="${accueil or ''}"><a href="/">Accueil</a></li>
  130. <li class="${programme or ''}"><a href="/${DisplayYear}/le-programme">Programme</a></li>
  131. <li class="${presse or ''}"><a href="/${DisplayYear}/dossier-de-presse">Presse</a></li>
  132. <li class="${plan or ''}"><a href="/nous-rejoindre">Contact et Plan</a></li>
  133. % if request.user:
  134. <li class="${participer or ''}"><a href="/MesJM2L">Mes JM2L</a></li>
  135. % else:
  136. <li class="${participer or ''}"><a href="/participer-l-evenement">Participer</a></li>
  137. % endif
  138. </ul>
  139. </div>
  140. </div>
  141. </div>
  142. <div class="middle align-center">
  143. </div>
  144. </div>
  145. <div id="bottom">
  146. % for type, message in request.session.pop_flash():
  147. <div class="container-fluid">
  148. <br>
  149. <div class="span6 offset3">
  150. <div class="alert alert-${type}">
  151. <button type="button" class="close" data-dismiss="alert">&times;</button>
  152. ${message}
  153. </div>
  154. </div>
  155. </div>
  156. % endfor
  157. <div class="container-fluid">
  158. <!--Body content-->
  159. ${next.body()}
  160. </div>
  161. </div>
  162. </div>
  163. <footer class="footer">
  164. <div class="container">
  165. <h4>JM2L 2005-2015</h4>
  166. <p>
  167. Concocté par <a href="http://www.linux-azur.org/">Linux Azur</a> ~
  168. <a href="http://creativecommons.org/licenses/by-sa/4.0/">CopyFriendly</a> ~
  169. </p>
  170. <p>
  171. +33 (0) 6 52 42 31 37 ~ contact at jm2l.linux-azur.org
  172. </p>
  173. <p>
  174. Conception et construction en <a href="http://git.linux-azur.org/JM2L/jm2l/src/master">DIY</a> ~
  175. Hébergé par <a href="http://www.heberg-24.com/"> Heberg24 </a>
  176. </p>
  177. <p>
  178. Vous avez trouvé un bug ? <a href="http://git.linux-azur.org/JM2L/jm2l/issues">Reportez le ici</a>
  179. </p>
  180. </div>
  181. </footer>
  182. <script src="/vendor/jquery.min.js"></script>
  183. <script src="/vendor/bootstrap.min.js"></script>
  184. <script src="/vendor/fileupload/js/jquery-uploader.min.js"></script>
  185. <script src="/vendor/ckeditor/ckeditor.js"></script>
  186. <script src="/js/plugins.js"></script>
  187. ${self.jsAddOn()}
  188. ## Then Handle Javascript
  189. <script>
  190. % for jsitem in context._kwargs['postpone_js']:
  191. ${jsitem | n}
  192. % endfor
  193. ## Call Control Handler
  194. HandleControls();
  195. </script>
  196. <!-- Piwik -->
  197. <script type="text/javascript">
  198. var _paq = _paq || [];
  199. _paq.push(["setDocumentTitle", document.domain + "/" + document.title]);
  200. _paq.push(['trackPageView']);
  201. _paq.push(['enableLinkTracking']);
  202. (function() {
  203. var u="//stats.style-python.fr/";
  204. _paq.push(['setTrackerUrl', u+'piwik.php']);
  205. _paq.push(['setSiteId', 4]);
  206. var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0];
  207. g.type='text/javascript'; g.async=true; g.defer=true; g.src=u+'piwik.js'; s.parentNode.insertBefore(g,s);
  208. })();
  209. </script>
  210. <noscript><p><img src="//stats.style-python.fr/piwik.php?idsite=4" style="border:0;" alt="" /></p></noscript>
  211. <!-- End Piwik Code -->
  212. % if request.user:
  213. <script>
  214. function handlevote() {
  215. currentIndex = $('div.active').index() + 1;
  216. $('.carousel-vote a').attr('href', "/vote_logo/" + currentIndex )
  217. if (currentIndex==${request.user.vote_logo}) {
  218. $('.carousel-vote a').removeClass('btn-primary').addClass('btn-success')
  219. $('.carousel-vote a').html("<i class='icon-ok icon-white'></i> Mon préféré ! ");
  220. } else {
  221. $('.carousel-vote a').removeClass('btn-success').addClass('btn-primary');
  222. $('.carousel-vote a').html("<i class='icon-star icon-white'></i> Je vote pour ce logo ! ");
  223. }
  224. }
  225. $('#TitleCarousel').bind('slid', function() {
  226. handlevote();
  227. });
  228. handlevote();
  229. </script>
  230. % endif
  231. </body>
  232. </html>