base.html 3.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. {% load i18n static misago_json %}
  2. <!DOCTYPE html>
  3. <html lang="{{ LANGUAGE_CODE_SHORT }}">
  4. <head>
  5. <meta charset="utf-8">
  6. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  7. <meta name="viewport" content="width=device-width,initial-scale=1">
  8. <title>{% spaceless %}{% block title %}{{ settings.forum_name }}{% endblock %}{% endspaceless %}</title>
  9. <meta name="description" content="{% spaceless %}{% block meta-description %}{% endblock %}{% endspaceless %}">
  10. {% spaceless %}
  11. {% block meta-extra %}{% endblock meta-extra %}
  12. {% block og-tags %}
  13. <meta property="og:site_name" content="{% spaceless %}{% block og-site-name %}{{ settings.forum_name }}{% endblock og-site-name %}{% endspaceless %}" />
  14. <meta property="og:title" content="{% spaceless %}{% block og-title %}{% endblock og-title %}{% endspaceless %}" />
  15. <meta property="og:description" content="{% spaceless %}{% block og-description %}{{ settings.forum_index_meta_description|default:'' }}{% endblock og-description %}{% endspaceless %}" />
  16. <meta property="og:type" content="website" />
  17. <meta property="og:url" content="{% spaceless %}{% block og-url %}{{ settings.forum_address }}{% endblock og-url %}{% endspaceless %}" />
  18. <meta property="og:image" content="{% spaceless %}{% block og-image %}{% static 'og-image.jpg' %}{% endblock og-image %}{% endspaceless %}" />
  19. {% endblock og-tags %}
  20. {% endspaceless %}
  21. {% include "misago/head.html" %}
  22. <script type="application/ld+json">{"@context":"http://schema.org","@type":"WebSite","url":"{{ settings.forum_address }}"}</script>
  23. </head>
  24. <body {% if misago_agreement %}class="agreement-overlay-visible"{% endif %}>
  25. <div id="auth-message-mount"></div>
  26. <div id="snackbar-mount"></div>
  27. <div id="misago-container" {% if misago_agreement %}aria-hidden="true"{% endif %}>
  28. {% include "misago/jumbotron.html" %}
  29. {% include "misago/navbar.html" %}
  30. <div id="page-mount">
  31. {% block content %}{% endblock content %}
  32. </div>
  33. {% include "misago/posting.html" %}
  34. {% include "misago/footer.html" %}
  35. </div>
  36. {% include "misago/auth.html" %}
  37. <div class="modal fade" id="modal-mount" tabindex="-1" role="dialog" aria-labelledby="misago-modal-label"></div>
  38. {% if misago_agreement %}
  39. {% include "misago/required_agreement.html" %}
  40. {% endif %}
  41. <script src="{% url 'django-i18n' %}?{{ LANGUAGE_CODE }}"></script>
  42. <script type="text/javascript">
  43. if (!(Object.assign && Array.from)) {
  44. var polyfill = document.createElement('script');
  45. polyfill.src = '{% static "misago/js/es2015.js" %}';
  46. document.getElementsByTagName('head')[0].appendChild(polyfill);
  47. }
  48. </script>
  49. <script src="{% static 'misago/js/vendor.js' %}"></script>
  50. {% if LANGUAGE_CODE != "en-us" and MOMENTJS_LOCALE_URL %}
  51. <script src="{% static MOMENTJS_LOCALE_URL %}"></script>
  52. {% endif %}
  53. <script src="{% static 'misago/js/misago.js' %}"></script>
  54. {% include "misago/scripts.html" %}
  55. <script type="text/javascript">
  56. misago.init({{ frontend_context|as_json }});
  57. </script>
  58. </body>
  59. </html>