Le repo des sources pour le site web des JM2L
您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符
 
 
 
 
 

155 行
6.4 KiB

  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <title>JM2L 2015</title>
  5. <meta charset="utf-8">
  6. <meta name="keywords" content="python web application" />
  7. <meta name="description" content="jm2l LinuxAzur journée méditéranéenne logiciel libre" />
  8. <!-- Force latest IE rendering engine or ChromeFrame if installed -->
  9. <!--[if IE]>
  10. <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  11. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  12. <![endif]-->
  13. <link rel="shortcut icon" href="/static/favicon.ico" />
  14. <link rel="stylesheet" href="/css/pylons.css" type="text/css" media="screen" charset="utf-8" />
  15. <link rel="stylesheet" href="/css/bootstrap.min.css" type="text/css" media="screen" />
  16. <link rel="stylesheet" href="/css/jm2l.css" type="text/css" media="screen" />
  17. <link rel="stylesheet" href="/css/bootstrap-responsive.css">
  18. ${self.cssAddOn()}
  19. <!--[if lte IE 6]>
  20. <link rel="stylesheet" href="/static/ie6.css" type="text/css" media="screen" charset="utf-8" />
  21. <![endif]-->
  22. <script src="/vendor/modernizr-2.8.3-respond-1.4.2.min.js"></script>
  23. </head>
  24. <body>
  25. <%
  26. context._kwargs['postpone_js']=[]
  27. DisplayYear = request.session.get('year', 2015)
  28. %>
  29. <%def name="jsAddOn()"></%def>
  30. <%def name="cssAddOn()"></%def>
  31. <div id="wrap">
  32. <div id="top" style="background: url( ${"/img/%s/headerbg.png" % DisplayYear} ) repeat-x scroll 0 top #ffffff;">
  33. <div class="align-center">
  34. <div><img src="${"/img/%s/logo.png" % DisplayYear}" height="215" alt="JM2L 2015"/></div>
  35. </div>
  36. </div>
  37. <div id="middle">
  38. <div class="navbar">
  39. <div class="navbar-inner">
  40. <div class="container">
  41. <ul class="nav pull-left">
  42. <div class="btn-group">
  43. <a class="btn dropdown-toggle" data-toggle="dropdown" href="#">
  44. <span class="brand" href="/" style="padding: 0 10px 0 18px;">JM2L
  45. <small>${DisplayYear}</small>&nbsp;<span class="caret"></span></a>
  46. <ul class="dropdown-menu">
  47. % for tmpyear in range(2015, 2005, -1):
  48. % if tmpyear!=2014:
  49. <li><a href="/year/${tmpyear}">${tmpyear}</a></li>
  50. % endif
  51. % endfor
  52. </ul>
  53. </div>
  54. <div class="btn-group">
  55. <a class="btn dropdown-toggle" data-toggle="dropdown" href="#">
  56. % if request.user:
  57. <i class="icon-user"></i> ${request.user.prenom} ${request.user.nom}
  58. % else:
  59. <i class="icon-user icon-white"></i> Visiteur
  60. % endif
  61. <span class="caret"></span>
  62. </a>
  63. <ul class="dropdown-menu">
  64. % if request.user:
  65. % if request.user.Staff:
  66. <li><a href="/Staff">Partie Staff</a></li>
  67. % endif
  68. <li><a href="/sign/out">Me déconnecter</a></li>
  69. % else:
  70. <li><a href="/participer-l-evenement#inscription">Je m'inscris</a></li>
  71. <li><a href="/sign/login">Je m'identifier</a></li>
  72. % endif
  73. </ul>
  74. </div>
  75. </ul>
  76. <ul class="nav nav-pills pull-right">
  77. <li class="${programme or ''}"><a href="/${DisplayYear}/le-programme">Programme</a></li>
  78. <li class="${presse or ''}"><a href="/${DisplayYear}/dossier-de-presse">Presse</a></li>
  79. <li class="${plan or ''}"><a href="/nous-rejoindre">Contact et Plan</a></li>
  80. % if request.user:
  81. <li class="${participer or ''}"><a href="/MesJM2L">Mes JM2L</a></li>
  82. % else:
  83. <li class="${participer or ''}"><a href="/participer-l-evenement">Participer</a></li>
  84. % endif
  85. </ul>
  86. </div>
  87. </div>
  88. </div>
  89. <div class="middle align-center">
  90. </div>
  91. </div>
  92. <div id="bottom">
  93. <div class="bottom">
  94. ${next.body()}
  95. </div>
  96. </div>
  97. </div>
  98. ## <br><br><br>
  99. ## <div id="footer">
  100. ## <div class="footer">CopyFriendly ~ JM2L 2005-2015 ~ +33 (0) 6 52 42 31 37
  101. ## <br>Ni les représentant légaux de l'équipe de Linux-Azur,
  102. ## ni l'équipe de coordination des JM2L ne sont résponsable des
  103. ## informations publiés par les intervenants, dans le doute merci de nous contacter.
  104. ## </div>
  105. <script src="/vendor/jquery.min.js"></script>
  106. <script src="/vendor/bootstrap.min.js"></script>
  107. <script src="/vendor/fileupload/js/jquery-uploader.min.js"></script>
  108. ${self.jsAddOn()}
  109. ## Then Handle Javascript
  110. <script>
  111. % for jsitem in context._kwargs['postpone_js']:
  112. ${jsitem | n}
  113. % endfor
  114. $.each( $('.fileupload'),
  115. function( NumCtrl, Ctrl ) {
  116. $("#"+Ctrl.id).fileupload({
  117. // Uncomment the following to send cross-domain cookies:
  118. //xhrFields: {withCredentials: true},
  119. //url: '/uploader/proceed/'
  120. url: this.action
  121. });
  122. // Enable iframe cross-domain access via redirect option:
  123. $("#"+Ctrl.id).fileupload(
  124. 'option',
  125. 'redirect',
  126. window.location.href.replace(
  127. /\/[^\/]*$/,
  128. '/cors/result.html?%s'
  129. )
  130. );
  131. $("#"+Ctrl.id).addClass('fileupload-processing');
  132. $.ajax({
  133. // Uncomment the following to send cross-domain cookies:
  134. //xhrFields: {withCredentials: true},
  135. //url: this.action,
  136. url: $("#"+Ctrl.id).fileupload('option', 'url'),
  137. //url: "uploader/proceed/",
  138. dataType: 'json',
  139. context: $("#"+Ctrl.id)[0]
  140. }).always(function () {
  141. $(this).removeClass('fileupload-processing');
  142. }).done(function (result) {
  143. $(this).fileupload('option', 'done')
  144. .call(this, $.Event('done'), {result: result}); //$(this)});
  145. });
  146. }
  147. );
  148. </script>
  149. </body>
  150. </html>