drawer.html 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. <div id="myDrawer" class="drawer" style="{{ if eq ($.Param "languagedir") "rtl" }}right: -100%{{ end }}">
  2. <div class="drawer__header">
  3. <a href="/" class="drawer__header--text">
  4. {{ .Site.Params.logoText }}
  5. </a>
  6. <div class="grow"></div>
  7. <div class="drawer__close">
  8. {{ partial "svgs/close.svg" (dict "width" 22 "height" 22) }}
  9. </div>
  10. </div>
  11. <div class="drawer__body">
  12. {{ partial "main/sections/list-menu.html" . }}
  13. </div>
  14. </div>
  15. <div id="myModal" class="modal" style="{{ if eq ($.Param "languagedir") "rtl" }}opacity: 0; right: -100%{{ end }}"></div>
  16. <script>
  17. var isDrawerOpen = localStorage.getItem('isDrawerOpen');
  18. var modal = document.getElementById("myModal");
  19. var drawer = document.getElementById('myDrawer');
  20. {{ $languagedir := ($.Param "languagedir" | default "ltr") }}
  21. var languagedir = JSON.parse({{ $languagedir | jsonify }});
  22. var openDrawer = function () {
  23. modal.style.opacity = 1;
  24. if (languagedir === "rtl") {
  25. modal.style.right = 0;
  26. drawer.style.right = 0;
  27. } else {
  28. modal.style.left = 0;
  29. drawer.style.left = 0;
  30. }
  31. }
  32. if (isDrawerOpen && isDrawerOpen === 'true') {
  33. openDrawer();
  34. }
  35. </script>