{{- $enableFooterSwitches := .Scratch.Get "enableFooterSwitches" | default false -}}
{{- $displayThemeToggle := site.Params.theme.displayToggle | default true -}}
{{- $footerSwitchesVisible := and $enableFooterSwitches (or hugo.IsMultilingual $displayThemeToggle) -}}
{{- $copyrightSectionVisible := or (.Site.Params.footer.displayPoweredBy | default true) .Site.Params.footer.displayCopyright -}}

{{- $copyright := (T "copyright") | default "© 2024 Hextra." -}}
{{- $poweredBy := (T "poweredBy") | default "Powered by Hextra" -}}

{{- $footerWidth := "hx-max-w-screen-xl" -}}
{{- with .Site.Params.footer.width -}}
  {{ if eq . "wide" -}}
    {{ $footerWidth = "hx-max-w-[90rem]" -}}
  {{ else if eq . "full" -}}
    {{ $footerWidth = "max-w-full" -}}
  {{ end -}}
{{- end -}}


<footer class="hextra-footer hx-bg-gray-100 hx-pb-[env(safe-area-inset-bottom)] dark:hx-bg-neutral-900 print:hx-bg-transparent">
  {{- if $footerSwitchesVisible -}}
    <div class="hx-mx-auto hx-flex hx-gap-2 hx-py-2 hx-px-4 {{ $footerWidth }}">
      {{- partial "language-switch.html" (dict "context" .) -}}
      {{- with $displayThemeToggle }}{{ partial "theme-toggle.html" }}{{ end -}}
    </div>
    {{- if or hugo.IsMultilingual $displayThemeToggle -}}
      <hr class="dark:hx-border-neutral-800" />
    {{- end -}}
  {{- end -}}
    <div
      class="hextra-custom-footer {{ $footerWidth }} hx-pl-[max(env(safe-area-inset-left),1.5rem)] hx-pr-[max(env(safe-area-inset-right),1.5rem)] hx-text-gray-600 dark:hx-text-gray-400"
    >
      {{- partial "custom/footer.html" (dict "context" . "switchesVisible" $footerSwitchesVisible "copyrightVisible" $copyrightSectionVisible) -}}
    </div>
    {{- if $copyrightSectionVisible -}}
      <div
        class="{{ $footerWidth }} hx-mx-auto hx-flex hx-justify-center hx-py-12 hx-pl-[max(env(safe-area-inset-left),1.5rem)] hx-pr-[max(env(safe-area-inset-right),1.5rem)] hx-text-gray-600 dark:hx-text-gray-400 md:hx-justify-start"
      >
        <div class="hx-flex hx-w-full hx-flex-col hx-items-center sm:hx-items-start">
            {{- if (.Site.Params.footer.displayPoweredBy | default true) }}<div class="hx-font-semibold">{{ template "theme-credit" $poweredBy }}</div>{{- end -}}
            {{- if .Site.Params.footer.displayCopyright }}<div class="hx-mt-6 hx-text-xs">{{ $copyright | markdownify }}</div>{{- end -}}
        </div>
      </div>
    {{- end -}}
</footer>

{{- define "theme-credit" -}}
  <a class="hx-flex hx-text-sm hx-items-center hx-gap-1 hx-text-current" target="_blank" rel="noopener noreferrer" title="Hextra GitHub Homepage" href="https://github.com/imfing/hextra">
    <span>
      {{- . | markdownify -}}
      {{- if strings.Contains . "Hextra" -}}
        {{- partial "utils/icon.html" (dict "name" "hextra" "attributes" `height=1em class="hx-inline-block ltr:hx-ml-1 rtl:hx-mr-1 hx-align-[-2.5px]"`) -}}
      {{- end -}}
    </span>
  </a>
{{- end -}}
