base.html 5.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. {% load static %}
  2. {% load helpers %}
  3. <!DOCTYPE html>
  4. <html lang="en">
  5. <head>
  6. <title>{% block title %}Home{% endblock %} - NetBox</title>
  7. <link rel="stylesheet"
  8. href="{% static 'bootstrap-3.4.1-dist/css/bootstrap.min.css' %}"
  9. onerror="window.location='{% url 'media_failure' %}?filename=bootstrap-3.4.1-dist/css/bootstrap.min.css'">
  10. <link rel="stylesheet"
  11. href="{% static 'materialdesignicons-5.4.55/css/materialdesignicons.min.css' %}"
  12. onerror="window.location='{% url 'media_failure' %}?filename=materialdesignicons-5.4.55/css/materialdesignicons.min.css'">
  13. <link rel="stylesheet"
  14. href="{% static 'jquery-ui-1.12.1/jquery-ui.css' %}"
  15. onerror="window.location='{% url 'media_failure' %}?filename=jquery-ui-1.12.1/jquery-ui.css'">
  16. <link rel="stylesheet"
  17. href="{% static 'select2-4.0.13/dist/css/select2.min.css' %}"
  18. onerror="window.location='{% url 'media_failure' %}?filename=select2-4.0.13/dist/css/select2.min.css'">
  19. <link rel="stylesheet"
  20. href="{% static 'select2-bootstrap-0.1.0-beta.10/select2-bootstrap.min.css' %}"
  21. onerror="window.location='{% url 'media_failure' %}?filename=select2-bootstrap-0.1.0-beta.10/select2-bootstrap.min.css'">
  22. <link rel="stylesheet"
  23. href="{% static 'flatpickr-4.6.3/themes/light.css' %}"
  24. onerror="window.location='{% url 'media_failure' %}?filename=flatpickr-4.6.3/themes/light.css'">
  25. <link rel="stylesheet"
  26. href="{% static 'css/base.css' %}?v{{ settings.VERSION }}"
  27. onerror="window.location='{% url 'media_failure' %}?filename=css/base.css'">
  28. <link rel="icon" type="image/png" href="{% static 'img/netbox.ico' %}" />
  29. <meta charset="UTF-8">
  30. <meta name="viewport" content="initial-scale=1, maximum-scale=1, user-scalable=no, width=device-width">
  31. </head>
  32. <body>
  33. {% include 'inc/nav_menu.html' %}
  34. <div class="container-fluid wrapper">
  35. {% if settings.BANNER_TOP %}
  36. <div class="alert alert-info text-center" role="alert">
  37. {{ settings.BANNER_TOP|safe }}
  38. </div>
  39. {% endif %}
  40. {% if settings.MAINTENANCE_MODE %}
  41. <div class="alert alert-warning text-center" role="alert">
  42. <h4><i class="mdi mdi-alert"></i> Maintenance Mode</h4>
  43. <p>NetBox is currently in maintenance mode. Functionality may be limited.</p>
  44. </div>
  45. {% endif %}
  46. {% for message in messages %}
  47. <div class="alert alert-{{ message.tags }} alert-dismissable" role="alert">
  48. <button type="button" class="close" data-dismiss="alert" aria-label="Close">
  49. <span>&times;</span>
  50. </button>
  51. {{ message }}
  52. </div>
  53. {% endfor %}
  54. {% block header %}{% endblock %}
  55. {% block content %}{% endblock %}
  56. <div class="push"></div>
  57. {% if settings.BANNER_BOTTOM %}
  58. <div class="alert alert-info text-center banner-bottom" role="alert">
  59. {{ settings.BANNER_BOTTOM|safe }}
  60. </div>
  61. {% endif %}
  62. </div>
  63. <footer class="footer">
  64. <div class="container-fluid">
  65. <div class="row">
  66. <div class="col-xs-4">
  67. <p class="text-muted">{{ settings.HOSTNAME }} (v{{ settings.VERSION }})</p>
  68. </div>
  69. <div class="col-xs-4 text-center">
  70. <p class="text-muted">{% now 'Y-m-d H:i:s T' %}</p>
  71. </div>
  72. <div class="col-xs-4 text-right noprint">
  73. <p class="text-muted">
  74. <i class="mdi mdi-book-open-page-variant text-primary"></i> <a href="https://netbox.readthedocs.io/">Docs</a> &middot;
  75. <i class="mdi mdi-cloud-braces text-primary"></i> <a href="{% url 'api_docs' %}">API</a> &middot;
  76. <i class="mdi mdi-xml text-primary"></i> <a href="https://github.com/netbox-community/netbox">Code</a> &middot;
  77. <i class="mdi mdi-lifebuoy text-primary"></i> <a href="https://github.com/netbox-community/netbox/wiki">Help</a>
  78. </p>
  79. </div>
  80. </div>
  81. </div>
  82. </footer>
  83. <script src="{% static 'jquery/jquery-3.5.1.min.js' %}"
  84. onerror="window.location='{% url 'media_failure' %}?filename=jquery/jquery-3.5.1.min.js'"></script>
  85. <script src="{% static 'jquery-ui-1.12.1/jquery-ui.min.js' %}"
  86. onerror="window.location='{% url 'media_failure' %}?filename=jquery-ui-1.12.1/jquery-ui.min.js'"></script>
  87. <script src="{% static 'bootstrap-3.4.1-dist/js/bootstrap.min.js' %}"
  88. onerror="window.location='{% url 'media_failure' %}?filename=bootstrap-3.4.1-dist/js/bootstrap.min.js'"></script>
  89. <script src="{% static 'select2-4.0.13/dist/js/select2.min.js' %}"
  90. onerror="window.location='{% url 'media_failure' %}?filename=select2-4.0.13/dist/js/select2.min.js'"></script>
  91. <script src="{% static 'clipboard.js/clipboard-2.0.6.min.js' %}"
  92. onerror="window.location='{% url 'media_failure' %}?filename=clipboard.js/clipboard-2.0.6.min.js'"></script>
  93. <script src="{% static 'flatpickr-4.6.3/flatpickr.min.js' %}"
  94. onerror="window.location='{% url 'media_failure' %}?filename=flatpickr-4.6.3/flatpickr.min.js'"></script>
  95. <script src="{% static 'js/forms.js' %}?v{{ settings.VERSION }}"
  96. onerror="window.location='{% url 'media_failure' %}?filename=js/forms.js'"></script>
  97. <script type="text/javascript">
  98. var netbox_api_path = "/{{ settings.BASE_PATH }}api/";
  99. var netbox_csrf_token = "{{ csrf_token }}";
  100. var loading = $(".loading");
  101. $(document).ajaxStart(function() {
  102. loading.show();
  103. }).ajaxStop(function() {
  104. loading.hide();
  105. });
  106. </script>
  107. {% block javascript %}{% endblock %}
  108. </body>
  109. </html>