_layout.html 7.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177
  1. {% load staticfiles %}
  2. {% load notifications_tags %}
  3. {% notifications_unread as notif_unread_count %}
  4. <!DOCTYPE html>
  5. <html lang="fr">
  6. <head>
  7. <title>{% block title %}Backlog{% endblock %}</title>
  8. <meta charset="utf-8" />
  9. <link rel="icon" type="image/png" href="{% static 'images/favicon.png' %}" />
  10. <link rel="stylesheet" type="text/css" href="{% static 'css/templated.css' %}"/>
  11. <link rel="stylesheet" type="text/css" href="{% static 'jquery-ui-1.12.1/jquery-ui.css' %}">
  12. <!-- From Martor plugin -->
  13. <link href="{% static 'plugins/css/ace.min.css' %}" type="text/css" media="all" rel="stylesheet" />
  14. <link href="{% static 'plugins/css/semantic.min.css' %}" type="text/css" media="all" rel="stylesheet" />
  15. <link href="{% static 'plugins/css/resizable.min.css' %}" type="text/css" media="all" rel="stylesheet" />
  16. <link href="{% static 'martor/css/martor.min.css' %}" type="text/css" media="all" rel="stylesheet" />
  17. <link rel="stylesheet" type="text/css" href="{% static 'css/select2.min.css' %}">
  18. <link rel="stylesheet" type="text/css" href="{% static 'css/custom.css' %}"/>
  19. <script src="{% static 'js/jquery.min.js' %}"></script>
  20. <script src="{% static 'js/jquery.scrolly.min.js' %}"></script>
  21. <script src="{% static 'js/skel.min.js' %}"></script>
  22. <script src="{% static 'js/util.js' %}"></script>
  23. <script src="{% static 'js/URI.js' %}"></script>
  24. <script src="{% static 'js/templated.js' %}"></script>
  25. <script src="{% static 'jquery-ui-1.12.1/external/jquery/jquery.js' %}"></script>
  26. <script src="{% static 'jquery-ui-1.12.1/jquery-ui.js' %}"></script>
  27. <script src="{% static 'jquery-ui-1.12.1/datepicker-fr.js' %}"></script>
  28. <!-- From Martor plugin -->
  29. <script type="text/javascript" src="{% static 'plugins/js/ace.js' %}"></script>
  30. <script type="text/javascript" src="{% static 'plugins/js/semantic.min.js' %}"></script>
  31. <script type="text/javascript" src="{% static 'plugins/js/mode-markdown.js' %}"></script>
  32. <script type="text/javascript" src="{% static 'plugins/js/ext-language_tools.js' %}"></script>
  33. <script type="text/javascript" src="{% static 'plugins/js/theme-github.js' %}"></script>
  34. <script type="text/javascript" src="{% static 'plugins/js/highlight.min.js' %}"></script>
  35. <script type="text/javascript" src="{% static 'plugins/js/resizable.min.js' %}"></script>
  36. <script type="text/javascript" src="{% static 'plugins/js/emojis.min.js' %}"></script>
  37. <script type="text/javascript" src="{% static 'martor/js/martor.min.js' %}"></script>
  38. <script type="text/javascript" src="{% static 'js/Chart.bundle.js' %}"></script>
  39. <script type="text/javascript" src="{% static 'js/select2.min.js' %}"></script>
  40. <script type="text/javascript" src="{% static 'js/common.js' %}"></script>
  41. <script type="text/javascript" src="{% static 'js/custom.js' %}"></script>
  42. </head>
  43. <body class="wrapper">
  44. <header id="header">
  45. <nav class="left">
  46. <a href="#menu"><span>Menu</span></a>
  47. </nav>
  48. <a href="{% url 'index' %}" class="logo">Backlog</a>
  49. <nav class="right">
  50. {% if request.user.is_authenticated %}
  51. <form id="search-bar" action="{% url 'search' %}" method="get" accept-charset="utf-8">
  52. <i class="fa fa-search"></i>
  53. <input name="q" type="text" placeholder="Rechercher...">
  54. </form>
  55. <div id="notif-panel" class="dropdown">
  56. <a href="#" id="notif-show-btn">
  57. <i class="fa fa-bell"></i><span class="notif-count">{{ notif_unread_count }}</span> <i class="fa fa-caret-down" style="margin-left: 0.5em;"></i>
  58. </a>
  59. <div id="notif-dropdown" class="dropdown-content">
  60. {% if notif_unread_count > 0 %}
  61. <ul class="alt notif-list" style="">
  62. {% for notification in request.user.notifications.unread %}
  63. <li class="notif" data-id='{{ notification.id }}'>
  64. <span class="notif-head">
  65. <i class="flex-extend">Il y a {{ notification.timesince }}</i>
  66. <a href="" class="notif-seen"><i class="fa fa-times"></i></a>
  67. </span>
  68. <span class="notif-content">
  69. <span>{{ notification.verb|safe }}</span>
  70. </span>
  71. </li>
  72. {% endfor %}
  73. </ul>
  74. <div class="notif-footer">
  75. <a href="" class="notif-all-seen">Tout marquer comme vu</a>
  76. </div>
  77. {% else %}
  78. <div class="notif-footer">
  79. <i>Aucune notification à afficher</i>
  80. </div>
  81. {% endif %}
  82. </div>
  83. </div>
  84. <a class="tool-btn" href="{% url 'story_create' %}" style="margin-right: 1em;" title="Nouvelle Story">
  85. <i class="fa fa-plus" style="color:#4183c4;"></i><span class="hide-on-medium-screen"> Nouvelle Story</span>
  86. </a>
  87. <div id="stories-panel" class="dropdown">
  88. <a href="{% url 'story_index' %}?assignee={{ request.user.id }}" id="stories-show-btn">
  89. <i class="fa fa-check-square-o"></i>
  90. <span class="hide-on-medium-screen"> Mes Stories</span>
  91. <i class="fa fa-caret-down" style="margin-left: 0.5em;"></i>
  92. </a>
  93. <div id="stories-dropdown" class="dropdown-content">
  94. <a href="{% url 'story_index' %}?assignee={{ request.user.id }}">Mes Stories</a>
  95. <a href="{% url 'story_index_cur' %}">Sprint en cours</a>
  96. <a href="{% url 'story_index_prev' %}">Sprint précédent</a>
  97. <a href="{% url 'story_index_next' %}">Sprint suivant</a>
  98. <a href="{% url 'story_index' %}?sprint=None">En attente</a>
  99. <a href="{% url 'story_index' %}">Toutes</a>
  100. </div>
  101. </div>
  102. <div id="user-panel" class="dropdown">
  103. <a href="" id="user-show-btn"><i class="fa fa-user"></i><span class="hide-on-medium-screen"> {{ request.user.first_name }} {{ request.user.last_name }}</span> <i class="fa fa-caret-down" style="margin-left: 0.5em;"></i></a>
  104. <div id="user-dropdown" class="dropdown-content">
  105. <a href="{% url 'profile_update' %}">Mise à jour du profil</a>
  106. <a href="{% url 'change_password' %}">Changer de mot de passe</a>
  107. <a href="{% url 'logout' %}">Se déconnecter</a>
  108. </div>
  109. </div>
  110. {% else %}
  111. <a href="">Se Connecter</a>
  112. {% endif %}
  113. </nav>
  114. </header>
  115. <div id="breadcrumb"><ul>{% block breadcrumb %}{% endblock %}</ul></div>
  116. <!-- Menu -->
  117. <nav id="menu">
  118. <ul class="links">
  119. <li><a href="{% url 'index' %}"><i class="fa fa-home"></i> Accueil</a></li>
  120. <li><a href="{% url 'story_index' %}"><i class="fa fa-check-square"></i> Stories</a></li>
  121. <li><a href="{% url 'sprint_end' %}"><i class="fa fa-flag"></i> Cloture de sprint</a></li>
  122. <li><a href="{% url 'report_projects' %}"><i class="fa fa-map"></i> Suivi de projets</a></li>
  123. <li><a href="{% url 'report_activity' %}"><i class="fa fa-line-chart"></i> Rapport d'Activité</a></li>
  124. <li><a href="{% url 'report_sprints' %}"><i class="fa fa-calendar"></i> Suivi des Sprints</a></li>
  125. <li><a href="{% url 'backlog_editor' %}"><i class="fa fa-pencil-square"></i> Modifier le Backlog</a></li>
  126. <li><a href="{% url 'admin:index' %}"><i class="fa fa-gear"></i> Administration</a></li>
  127. </ul>
  128. </nav>
  129. <section id="main">
  130. <div class="inner">
  131. {% if messages %}
  132. <ul class="messages">
  133. {% for message in messages %}
  134. <li{% if message.tags %} class="{{ message.tags }}"{% endif %}>{{ message }}</li>
  135. {% endfor %}
  136. </ul>
  137. {% endif %}
  138. {% block main %}
  139. {% endblock %}
  140. </div>
  141. </section>
  142. <!--
  143. <footer id="footer">
  144. Manche Numérique, 2018 - <a href="">Contact</a>
  145. </footer>
  146. -->
  147. </body>
  148. </html>