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.
 
 
 
 
 

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