{{ define "title" }}{{ .Site.Title }}{{ end }}

{{ define "main" }}

{{ $enquire := resources.Get "js/enquire.min.js" | resources.Fingerprint }}
<script src="{{ $enquire.RelPermalink }}"></script>

<main class="main inner" data-sidebar-position="{{ $.Param "sidebarPosition" }}">
    <div class="list__main {{ if $.Param "enableSidebar" }}{{ if eq .Site.Params.sidebarPosition "left" }}mr{{ else }}lm{{ end }}{{ else }}lmr{{ end }}">
        <div class="summary__container">
            {{ $filteredPages := .Site.RegularPages }}
            {{ range .Site.Params.notAllowedTypesInHome }}
                {{ $filteredPages = (where $filteredPages "Type" "!=" (lower .)) }}
            {{ end }}
            {{ $paginator := .Paginate $filteredPages }}
            {{ range $paginator.Pages }}
                {{ .Render "summary" }}
            {{ end }}
        </div>

        {{ partial "pagination/pagination" . }}
    </div>

    {{ if $.Param "enableSidebar" }}
        <aside class="list__sidebar {{ if eq .Site.Params.sidebarPosition "left" }}l{{ else }}r{{ end }}">
            {{ partial "sidebar/sidebar-home" . }}
        </aside>
    {{ end }}
</main>
<script>
    {{ $sidebarPosition:= .Site.Params.sidebarPosition }}
    var sidebarPosition = JSON.parse({{ $sidebarPosition | jsonify }});
    {{ $enableSidebar:= .Site.Params.enableSidebar }}
    var enableSidebar = JSON.parse({{ $enableSidebar | jsonify }});
    
    var listMainElem = document.querySelector('.list__main');
    var listSideElem = document.querySelector('.list__sidebar');

    var gridSmall = 'l';
    var gridBig = 'mr';
    var gridFull = 'lmr'

    if (sidebarPosition === "right") {
        gridSmall = 'r';
        gridBig = 'lm'
    }

    enquire.register("screen and (max-width: 769px)", {
        match: function () {
            if (enableSidebar) {
                listMainElem.classList.remove(gridBig);
                listMainElem.classList.add(gridFull);
                listSideElem.classList.remove(gridSmall);
                listSideElem.classList.add('hide');
            } else {
                if (listMainElem && !listMainElem.classList.contains(gridFull)) {
                    listMainElem.classList.remove(gridBig);
                    listMainElem.classList.add(gridFull);
                }

                if (listSideElem && !listSideElem.classList.contains('hide')) {
                    listSideElem.classList.add('hide');
                }
            }
            
        },
        unmatch: function () {
            if (enableSidebar) {
                listMainElem.classList.remove(gridFull);
                listMainElem.classList.add(gridBig);
                listSideElem.classList.add(gridSmall);
                listSideElem.classList.remove('hide');
            } else {
                if (listMainElem && !listMainElem.classList.contains(gridFull)) {
                    listMainElem.classList.remove(gridBig);
                    listMainElem.classList.add(gridFull);
                }

                if (listSideElem && !listSideElem.classList.contains('hide')) {
                    listSideElem.classList.add('hide');
                }
            }

            if (document.getElementsByClassName('navbar__burger')[0]) {
                document.getElementsByClassName('navbar__burger')[0].classList.remove('is-active');
            }
            if (document.getElementsByClassName('navbar__menu')[0]) {
                document.getElementsByClassName('navbar__menu')[0].classList.remove('is-active');
            }
            if (document.getElementsByClassName('mobile-search')[0]) {
                document.getElementsByClassName('mobile-search')[0].classList.add('hide');
            }
        },
        setup: function () { },
        deferSetup: true,
        destroy: function () { },
    });
</script>
{{ partial "script/home-script" . }}
{{ end }}