footer.html 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. {% load static %}
  2. <footer class="app-footer">
  3. <strong>
  4. Copyright &copy; 2014-2025&nbsp;
  5. <a href="https://www.luminadatamatics.com/" target="_blank" class="text-decoration-none">Lumina
  6. Datamatics LTD</a>.
  7. </strong>
  8. All rights reserved.
  9. </footer>
  10. </div>
  11. <!-- Scripts -->
  12. <script src="https://code.jquery.com/jquery-3.7.1.min.js"></script>
  13. <script src="https://cdn.jsdelivr.net/npm/overlayscrollbars@2.3.0/browser/overlayscrollbars.browser.es6.min.js"></script>
  14. <script src="https://cdn.jsdelivr.net/npm/@popperjs/core@2.11.8/dist/umd/popper.min.js"></script>
  15. <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/js/bootstrap.min.js"></script>
  16. <script src="https://cdn.jsdelivr.net/npm/select2@4.1.0-rc.0/dist/js/select2.min.js"></script>
  17. <script src="{% static 'js/adminlte.js' %}"></script>
  18. <script>
  19. const SELECTOR_SIDEBAR_WRAPPER = ".sidebar-wrapper";
  20. const Default = {
  21. scrollbarTheme: "os-theme-light",
  22. scrollbarAutoHide: "leave",
  23. scrollbarClickScroll: true,
  24. };
  25. document.addEventListener("DOMContentLoaded", function () {
  26. const sidebarWrapper = document.querySelector(SELECTOR_SIDEBAR_WRAPPER);
  27. if (
  28. sidebarWrapper &&
  29. typeof OverlayScrollbarsGlobal?.OverlayScrollbars !== "undefined"
  30. ) {
  31. OverlayScrollbarsGlobal.OverlayScrollbars(sidebarWrapper, {
  32. scrollbars: {
  33. theme: Default.scrollbarTheme,
  34. autoHide: Default.scrollbarAutoHide,
  35. clickScroll: Default.scrollbarClickScroll,
  36. },
  37. });
  38. }
  39. });
  40. </script>
  41. </body>
  42. </html>