101 lines
4.4 KiB
Plaintext
101 lines
4.4 KiB
Plaintext
{{- $page := .page }}
|
|
{{- $outputFormat := .outputFormat }}
|
|
{{- $page.Page.Store.Set (printf "%sIsNested" $outputFormat) true }}
|
|
{{- with $page }}
|
|
{{- $currentNode := . }}
|
|
{{- $isActive := .IsHome }}
|
|
{{- $isShortcut := false }}
|
|
{{- with .Site.Menus.shortcuts }}
|
|
{{- range sort . "Weight" }}
|
|
{{- $shortcut := . }}
|
|
{{- $shortcutPage := $page.Site.GetPage (printf "%s" $shortcut.URL ) }}
|
|
{{- if and $shortcutPage (eq $shortcutPage.RelPermalink $page.RelPermalink) }}
|
|
{{- $isShortcut = true }}
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- $pages := .Site.Home.Sections }}
|
|
{{- $defaultOrdersectionsby := .Site.Params.ordersectionsby | default "weight" }}
|
|
{{- $currentOrdersectionsby := .Site.Home.Params.ordersectionsby | default $defaultOrdersectionsby }}
|
|
{{- if $isShortcut }}
|
|
{{- template "section-print" dict "sect" . "currentnode" $currentNode "outputFormat" $outputFormat }}
|
|
{{- else }}
|
|
{{- if $isActive }}
|
|
{{- template "section-print" dict "sect" . "currentnode" $currentNode "outputFormat" $outputFormat }}
|
|
{{- if $pages }}
|
|
<section>
|
|
<h1 class="a11y-only">{{ T "Subsections" .Title }}</h1>
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- if eq $currentOrdersectionsby "title" }}
|
|
{{- range $pages.ByTitle }}
|
|
{{- template "section-tree-print" dict "sect" . "currentnode" $currentNode "outputFormat" $outputFormat "isActive" $isActive }}
|
|
{{- end }}
|
|
{{- else }}
|
|
{{- range $pages.ByWeight }}
|
|
{{- template "section-tree-print" dict "sect" . "currentnode" $currentNode "outputFormat" $outputFormat "isActive" $isActive }}
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- if $isActive }}
|
|
{{- if $pages }}
|
|
</section>
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- define "section-tree-print" }}
|
|
{{- $currentNode := .currentnode }}
|
|
{{- $outputFormat := .outputFormat }}
|
|
{{- $isActive := .isActive }}
|
|
{{- $currentFileRelPermalink := .currentnode.RelPermalink }}
|
|
{{- with .sect }}
|
|
{{- $isSelf := eq .RelPermalink $currentFileRelPermalink }}
|
|
{{- $isAncestor := and (not $isSelf) (.IsAncestor $currentNode) }}
|
|
{{- $isActive = or $isSelf $isActive }}
|
|
{{- $pages := .Pages }}
|
|
{{- if .Page.IsHome }}
|
|
{{- $pages = .Sections }}
|
|
{{- else if .Page.Sections}}
|
|
{{- $pages = (.Pages | union .Sections) }}
|
|
{{- end }}
|
|
{{- $relearnIsHiddenFrom := index ($currentNode.Scratch.Get "relearnIsHiddenFrom") .RelPermalink }}
|
|
{{- $hidden := and $relearnIsHiddenFrom (not $.showhidden) (not $isSelf) (not $isAncestor) }}
|
|
{{- if $hidden }}
|
|
{{- else }}
|
|
{{- $defaultOrdersectionsby := .Site.Params.ordersectionsby | default "weight" }}
|
|
{{- $currentOrdersectionsby := .Params.ordersectionsby | default $defaultOrdersectionsby }}
|
|
{{- if $isActive }}
|
|
{{- template "section-print" dict "sect" . "currentnode" $currentNode "outputFormat" $outputFormat }}
|
|
{{- if $pages }}
|
|
<section>
|
|
<h1 class="a11y-only">{{ T "Subsections" .Title }}</h1>
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- if eq $currentOrdersectionsby "title" }}
|
|
{{- range $pages.ByTitle }}
|
|
{{- template "section-tree-print" dict "sect" . "currentnode" $currentNode "outputFormat" $outputFormat "isActive" $isActive }}
|
|
{{- end }}
|
|
{{- else }}
|
|
{{- range $pages.ByWeight }}
|
|
{{- template "section-tree-print" dict "sect" . "currentnode" $currentNode "outputFormat" $outputFormat "isActive" $isActive }}
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- if $isActive }}
|
|
{{- if $pages }}
|
|
</section>
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- define "section-print" }}
|
|
{{- $currentNode := .currentnode }}
|
|
{{- $outputFormat := .outputFormat }}
|
|
{{- with .sect }}
|
|
{{- $page := . }}
|
|
{{- partialCached "nested-content.hugo" (dict "page" $page "outputFormat" $outputFormat) $page.RelPermalink "outputFormat" $outputFormat }}
|
|
{{- $currentNode.Page.Store.Set "nestedHasMathJax" (or ($currentNode.Page.Store.Get "nestedHasMathJax") (.Page.Store.Get "hasMathJax")) }}
|
|
{{- $currentNode.Page.Store.Set "nestedHasMermaid" (or ($currentNode.Page.Store.Get "nestedHasMermaid") (.Page.Store.Get "hasMermaid")) }}
|
|
{{- $currentNode.Page.Store.Set "nestedHasSwagger" (or ($currentNode.Page.Store.Get "nestedHasSwagger") (.Page.Store.Get "hasSwagger")) }}
|
|
{{- end }}
|
|
{{- end }} |