1
0

base.html 9.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197
  1. {% load static %}
  2. <!DOCTYPE html>
  3. <html lang="fr" class="h-100">
  4. <head>
  5. <meta charset="utf-8">
  6. <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
  7. <!-- SEO: Métadonnées de base -->
  8. <meta name="keywords" content="{%if page.p_mots_clefs%}{{page.p_mots_clefs}}{% endif %}">
  9. <meta name="description" content="{% if page.p_description %}{{page.p_description}}{% endif %}">
  10. <meta name="author" content="Mr Duhaz">
  11. <meta name="robots" content="index, follow">
  12. <!-- SEO: Langue et localisation -->
  13. <meta property="og:locale" content="fr_FR">
  14. <link rel="alternate" hreflang="fr" href="{{ request.build_absolute_uri }}" />
  15. {% block add_meta_description %}{% endblock %}
  16. <title>{{page.c_sitename}}{% if page.p_meta_title %} | {{page.p_meta_title}}{% elif page.p_titre %} | {{page.p_titre}}{% endif %}</title>
  17. <!-- Flux RSS -->
  18. <link rel="alternate" type="application/rss+xml" title="Blog Duhaz - RSS Feed" href="{% url 'blog_rss_feed' %}">
  19. <link rel="shortcut icon" href="/static/favicon.ico">
  20. <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@4.6.2/dist/css/bootstrap.min.css" integrity="sha384-xOolHFLEh07PJGoPkLv1IbcEPTNtaed2xpHsD9ESMhqIYd0nLMwNLD69Npy4HI+N" crossorigin="anonymous">
  21. <link href="//fonts.googleapis.com/css2?family=Kufam&display=swap" rel="stylesheet">
  22. <script src="https://kit.fontawesome.com/7cf2a101ac.js"></script>
  23. {% if not request.user.is_authenticated %}
  24. <script data-ad-client="ca-pub-0171697375250839" async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
  25. {% endif %}
  26. <style type="text/css">
  27. img {
  28. display: block;
  29. max-width: 100%;
  30. height: auto;
  31. }
  32. body {
  33. background-color:black;
  34. background-image: url('{% static page.c_bgimagelogo %}'), url('{% static page.c_bgimage %}') ;
  35. background-position: 96% 95%, center ;
  36. background-size: 20%,cover;
  37. background-repeat: no-repeat;
  38. background-attachment: fixed;
  39. font-size: 15px;
  40. }
  41. </style>
  42. </head>
  43. <body class="d-flex flex-column h-100">
  44. <header style="color: #fff; font-family: Kufam', cursive;">
  45. <nav class="navbar navbar-expand-lg navbar-dark" style="background-color: {{page.c_bgcolor}};">
  46. <div class="container-fluid">
  47. <div class="collapse navbar-collapse" id="navbarSupportedContent">
  48. <a class="navbar-brand" href="{% url 'core_index' %}"><i class="{{page.c_sitelogo}}"></i> {{page.c_sitename}} </a>
  49. {% if page.p_menu_haut %}
  50. <ul class="navbar-nav mr-auto">
  51. {% regroup page.p_menu_haut by p_menu_parent as menu_with_parent %}
  52. {% for p_menu_parent in menu_with_parent%}
  53. {% if p_menu_parent.grouper != none %}
  54. <div class="navbar-nav dropdown">
  55. <a class="nav-link dropdown-toggle" href="#" id="navbarDropdownMenuLink" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"><i class="fas fa-bars" ></i> {{ p_menu_parent.grouper }}</a>
  56. <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
  57. {% for item in p_menu_parent.list|dictsortreversed:"p_menu_poid" %}
  58. <a class="dropdown-item {% if item.p_proteger == True and user.is_authenticated %} {% elif item.p_proteger == False %} {% else %}disabled{% endif %}" {%if item.p_type == "lien_ext" %}target="_blank"{% endif %} href="{{item.p_adresse}}">{% if item.p_icone %}<i class="{{item.p_icone}}" ></i> {% endif %}{{item.p_titre}}</a></li>
  59. {% endfor %}
  60. </div>
  61. </div>
  62. {% else %}
  63. {% for item in p_menu_parent.list %}
  64. <li class="nav-item"><a class="nav-link {% if item.p_proteger == True and user.is_authenticated %} {% elif item.p_proteger == False %} {% else %}disabled{% endif %}" {%if item.p_type == "lien_ext" %}target="_blank"{% endif %} href="{{item.p_adresse}}">{% if item.p_icone %}<i class="{{item.p_icone}}" ></i> {% endif %}{{item.p_titre}}</a></li>
  65. {% endfor %}
  66. {% endif %}
  67. {% endfor %}
  68. </ul>
  69. {% endif %}
  70. {% if page.c_menulogin == 'True' %}
  71. <div class="navbar-nav dropdown">
  72. <a class="nav-link dropdown-toggle" href="#" id="navbarDropdownMenuLink" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false"><i class="fas fa-id-badge" ></i> Mon profil</a>
  73. <div class="dropdown-menu" aria-labelledby="navbarDropdownMenuLink">
  74. {% if not request.user.is_authenticated %}
  75. <a class="dropdown-item" href="{% url 'core_login' %}" ><i class="fas fa-sign-in-alt"></i> Connexion</a>
  76. {% elif request.user.is_authenticated %}
  77. <a class="dropdown-item" href="{% url 'admin:index' %}" ><i class="fas fa-cog" ></i> Admin</a>
  78. <a class="dropdown-item" href="{% url 'core_logout' %}" ><i class="fas fa-sign-out-alt"></i> Déconnexion</a>
  79. {% endif %}
  80. </div>
  81. </div>
  82. {% endif %}
  83. </div>
  84. <div class="pos-f-t d-lg-none justify-content-end">
  85. <a class="navbar-brand" href="{% url 'core_index' %}"><i class="{{page.c_sitelogo}}"></i> {{page.c_sitename}} </a>
  86. <div class="collapse" id="navbarToggleExternalContent">
  87. <div class="p-3" style="background-color: {{page.c_bgcolor}};">
  88. {% if page.p_menu_haut %}
  89. <ul class="navbar-nav">
  90. {% for item in page.p_menu_haut %}
  91. <li class="nav-item"><a class="nav-link" {%if item.p_type == "lien_ext" %}target="_blank"{% endif %} href="{{item.p_adresse}}">{% if item.p_icone %}<i class="{{item.p_icone}}" ></i> {% endif %}{{item.p_titre}}</a></li>
  92. {% endfor %}
  93. {% if page.c_menulogin == 'True' %}
  94. <hr>
  95. {% if not request.user.is_authenticated %}
  96. <li class="nav-item"><a class="nav-link" href="{% url 'core_login' %}" ><i class="fas fa-sign-in-alt"></i> Connexion</a></li>
  97. {% elif request.user.is_authenticated %}
  98. <li class="nav-item"><a class="nav-link" href="{% url 'admin:index' %}" ><i class="fas fa-cog" ></i> Admin</a></li>
  99. <li class="nav-item"><a class="nav-link" href="{% url 'core_logout' %}" ><i class="fas fa-sign-out-alt"></i> Déconnexion</a></li>
  100. {% endif %}
  101. {% endif %}
  102. </ul>
  103. {% endif %}
  104. </div>
  105. </div>
  106. <nav class="navbar navbar-dark" style="background-color: {{page.c_bgcolor}};">
  107. <button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarToggleExternalContent" aria-controls="navbarToggleExternalContent" aria-expanded="false" aria-label="Toggle navigation">
  108. <span class="navbar-toggler-icon"></span>
  109. </button>
  110. </nav>
  111. </div>
  112. </div>
  113. </nav>
  114. </header>
  115. <main role="main" class="flex-shrink-0">
  116. <div class="container-fluid mw-100">
  117. <div class="row p-2">
  118. {% block left_panel %}
  119. {% endblock %}
  120. <div class="col-lg-9 p-lg-1 p-md-0 mb-sm-1">
  121. {% if messages %}
  122. <div class="card-body messages p-0 mr-3 ml-3">
  123. {% for message in messages %}
  124. <div class="m-2 alert alert-dismissable alert-{{ message.tags }}" data-alert="alert">
  125. <button type="button" class="close" data-dismiss="alert" >&times;</button>
  126. {{ message }}
  127. </div>
  128. {% endfor %}
  129. </div>
  130. {% endif %}
  131. {% if page.c_card_mp == 'True'%}<div class="card" style="background-color: rgba(250,250,250,0.88);" >
  132. {% if page.p_see_title_and_des_in_templates == True %}
  133. <div class="card-header">
  134. <h2>{% block title %}{% if page.p_icone != "" %}<i class="{{page.p_icone}}"></i> {% endif %}{{page.p_titre|safe}}{% endblock %}</h2>
  135. </div>
  136. {% endif %}
  137. {% else %}
  138. <div>
  139. {% endif %}
  140. {% if page.p_include %}
  141. {% include page.p_include %}
  142. {% else %}
  143. {% block main %}{% endblock %}
  144. {% endif %}
  145. </div>
  146. </div>
  147. <div class="col-lg-3 p-lg-1 p-md-0 mb-sm-1">
  148. {% if page.c_card_rp == 'True'%}<div class="card" style="background-color: rgba(250,250,250,0.88);" >{% endif %}
  149. {% comment %} {% if page.c_includ_rp != 'None'%}{% include page.c_includ_rp %}{% endif %} {% endcomment %}
  150. {% block right_panel %}
  151. {% endblock %}
  152. {% if not request.user.is_authenticated and page.p_right and not "account/" in request.path %}
  153. <div class="card-body">
  154. <h5 class="card-title"> Une Pub </h5>
  155. <script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js"></script>
  156. <!-- Pub-1 -->
  157. <ins class="adsbygoogle"
  158. style="display:block"
  159. data-ad-client="ca-pub-0171697375250839"
  160. data-ad-slot="9918621322"
  161. data-ad-format="auto"
  162. data-full-width-responsive="true">
  163. </ins>
  164. <script>
  165. (adsbygoogle = window.adsbygoogle || []).push({});
  166. </script>
  167. {% endif %}
  168. {% if page.c_card_rp != 'None'%}</div>{% endif %}
  169. </div>
  170. </div>
  171. </div>
  172. </main>
  173. <footer class="footer mt-auto py-1 text-white" style="background-color: {{page.c_bgcolor}};">
  174. <div class="container">
  175. {{page.c_sitename}} - {{page.c_siteversion}}
  176. {% if page.p_menu_pied %}
  177. {% for item in page.p_menu_pied %}
  178. <a class="link-light" href="{{item.p_adresse}}">{{item.p_titre}}</a>{% if not forloop.last %}, {% endif %}
  179. {% endfor %}
  180. {% endif %}
  181. </div>
  182. </footer>
  183. {% block modals %}{% endblock %}
  184. <script src="https://cdn.jsdelivr.net/npm/jquery@3.5.1/dist/jquery.min.js" crossorigin="anonymous"></script>
  185. <script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.1/dist/umd/popper.min.js" integrity="sha384-9/reFTGAW83EW2RDu2S0VKaIzap3H66lZH81PoYlFhbGU+6BZp6G7niu735Sk7lN" crossorigin="anonymous"></script>
  186. <script src="https://cdn.jsdelivr.net/npm/bootstrap@4.6.2/dist/js/bootstrap.min.js" integrity="sha384-+sLIOodYLS7CIrQpBjl+C7nPvqq+FbNUBDunl/OZv93DB7Ln/533i8e/mZXLi/P+" crossorigin="anonymous"></script>
  187. {% block script %}
  188. {% endblock %}
  189. </body>
  190. </html>