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.
 
 
 
 
 

241 lines
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>