mirror of
https://github.com/McShelby/hugo-theme-relearn.git
synced 2024-11-27 09:43:06 +00:00
351 lines
No EOL
21 KiB
HTML
351 lines
No EOL
21 KiB
HTML
|
|
{{- $showvisitedlinks := .Site.Params.showVisitedLinks }}
|
|
<aside id="R-sidebar" class="default-animation{{ if $showvisitedlinks }} showVisitedLinks{{ end }}">
|
|
{{- $currentNode := . }}
|
|
<div id="R-header-topbar" class="default-animation"></div>
|
|
<div id="R-header-wrapper" class="default-animation">
|
|
<div id="R-header" class="default-animation">
|
|
{{ partial "logo.html" . }}
|
|
</div>{{ partial "search.html" . }}
|
|
</div>
|
|
<div id="R-homelinks" class="default-animation{{ if not .Site.Params.disableLandingPageButton }} homelinks{{ end }}">
|
|
{{- if not .Site.Params.disableLandingPageButton }}
|
|
{{- if (ne .Site.Params.landingPageURL nil) }}
|
|
{{- warnf "UNSUPPORTED usage of 'landingPageURL' config parameter found, remove it and optionally overwrite the `logo.html` partial to provide a link if it should not point to the project's home page; see https://mcshelby.github.io/hugo-theme-relearn/introduction/releasenotes/4/#4-2-0" }}
|
|
{{- end }}
|
|
<ul>
|
|
<li><a class="padding" href="{{ partial "permalink.gotmpl" (dict "to" .Site.Home) }}">{{ .Site.Params.landingPageName | default `<i class="fa-fw fas fa-home"></i> Home` | safeHTML }}</a></li>
|
|
</ul>
|
|
{{- end }}
|
|
<hr class="padding">
|
|
</div>
|
|
<div id="R-content-wrapper" class="highlightable">
|
|
{{- $menuconfigs := .Params.sidebarmenus | default site.Params.sidebarmenus | default (slice
|
|
(dict "type" "page" "identifier" "home")
|
|
(dict "type" "menu" "identifier" "shortcuts")
|
|
) }}
|
|
{{- range $menuconfigs }}
|
|
{{- $config := . }}
|
|
{{- if eq $config.type "page" }}
|
|
{{- partial "partials/inline/page-tree" (dict "currentnode" $currentNode "config" $config "showvisitedlinks" $showvisitedlinks) }}
|
|
{{- else if eq $config.type "menu" }}
|
|
{{- partial "partials/inline/menu-tree" (dict "currentnode" $currentNode "config" $config "showvisitedlinks" $showvisitedlinks) }}
|
|
{{- else }}
|
|
{{- warnf "WARNING: unknown menu type '%s' found in parameter 'sidebarmenus' for menu '%s'; use either 'page' or 'menu'" $config.type $config.identifier }}
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- $siteLanguages := .Site.Languages }}
|
|
{{- $showlangswitch := and hugo.IsMultilingual (not .Site.Params.disableLanguageSwitchingButton) (gt (int (len $siteLanguages)) 1) }}
|
|
{{- $themevariants := partialCached "_relearn/themeVariants.gotmpl" . }}
|
|
{{- $showvariantswitch := gt (int (len $themevariants)) 1 }}
|
|
{{- $footer := partial "menu-footer.html" . }}
|
|
{{- $showfooter := not (eq 0 (int (len ($footer | plainify)))) }}
|
|
<div class="padding footermargin footerLangSwitch footerVariantSwitch footerVisitedLinks footerFooter{{if $showlangswitch}} showLangSwitch{{end}}{{if $showvariantswitch}} showVariantSwitch{{end}}{{if $showvisitedlinks}} showVisitedLinks{{end}}{{if $showfooter}} showFooter{{end}}"></div>
|
|
<div id="R-menu-footer">
|
|
<hr class="padding default-animation footerLangSwitch footerVariantSwitch footerVisitedLinks footerFooter{{if $showlangswitch}} showLangSwitch{{end}}{{if $showvariantswitch}} showVariantSwitch{{end}}{{if $showvisitedlinks}} showVisitedLinks{{end}}{{if $showfooter}} showFooter{{end}}">
|
|
<div id="R-prefooter" class="footerLangSwitch footerVariantSwitch footerVisitedLinks{{if $showlangswitch}} showLangSwitch{{end}}{{if $showvariantswitch}} showVariantSwitch{{end}}{{if $showvisitedlinks}} showVisitedLinks{{end}}">
|
|
<ul>
|
|
<li id="R-select-language-container" class="footerLangSwitch{{if $showlangswitch}} showLangSwitch{{end}}">
|
|
<div class="padding menu-control">
|
|
<i class="fa-fw fas fa-language"></i>
|
|
<span> </span>
|
|
<div class="control-style">
|
|
<label class="a11y-only" for="R-select-language">{{ T "Language" }}</label>
|
|
<select id="R-select-language" onchange="location = this.querySelector( this.value ).dataset.url;">
|
|
{{- $page := .Page }}
|
|
{{- $pageLang := .Page.Language.Lang }}
|
|
{{- range .Page.AllTranslations }}
|
|
<option id="R-select-language-{{ .Language.Lang }}" value="#R-select-language-{{ .Language.Lang }}" data-url="{{ partial "permalink.gotmpl" (dict "to" .) }}" lang="{{ .Language.LanguageCode }}"{{ if eq $pageLang .Language.Lang }} selected{{ end }}>{{ .Language.LanguageName }}</option>
|
|
{{- end }}
|
|
</select>
|
|
</div>
|
|
<div class="clear"></div>
|
|
</div>
|
|
</li>
|
|
<li id="R-select-variant-container" class="footerVariantSwitch{{if $showvariantswitch}} showVariantSwitch{{end}}">
|
|
<div class="padding menu-control">
|
|
<i class="fa-fw fas fa-paint-brush"></i>
|
|
<span> </span>
|
|
<div class="control-style">
|
|
<label class="a11y-only" for="R-select-variant">{{ T "Theme" }}</label>
|
|
<select id="R-select-variant" onchange="window.variants && variants.changeVariant( this.value );">
|
|
{{- $firstvariant := true }}
|
|
{{- range $themevariants }}
|
|
{{- $themevariant := . }}
|
|
<option id="R-select-variant-{{ $themevariant.identifier }}" value="{{ $themevariant.identifier }}"{{- if $firstvariant }} selected{{ end }}>{{ $themevariant.name }}</option>
|
|
{{- $firstvariant = false }}
|
|
{{- end }}
|
|
</select>
|
|
</div>
|
|
<div class="clear"></div>
|
|
</div>
|
|
<script>window.variants && variants.markSelectedVariant();</script>
|
|
</li>
|
|
<li class="footerVisitedLinks{{if $showvisitedlinks}} showVisitedLinks{{end}}">
|
|
<div class="padding menu-control">
|
|
<i class="fa-fw fas fa-history"></i>
|
|
<span> </span>
|
|
<div class="control-style">
|
|
<button onclick="clearHistory();">{{ T "Clear-History" }}</button>
|
|
</div>
|
|
<div class="clear"></div>
|
|
</div>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
<div id="R-footer" class="footerFooter{{if $showfooter}} showFooter{{end}}">
|
|
{{- $footer }}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</aside>
|
|
{{- define "partials/inline/page-tree" }}
|
|
{{- $currentNode := .currentnode }}
|
|
{{- $config := .config }}
|
|
{{- $showvisitedlinks := .showvisitedlinks }}
|
|
<div id="R-shortcutmenu-{{ $config.identifier }}" class="R-sidebarmenu">
|
|
{{- with site.Home.GetPage ($config.pageRef | default "") }}
|
|
{{- $entry := . }}
|
|
{{- $entries := partialCached "_relearn/pages.gotmpl" (dict "page" $entry) $entry.Path }}
|
|
{{- $title := "" }}
|
|
{{- if not ($config.disableTitle | default true) }}
|
|
{{ $title = $entry.Params.menuTitle | default (T (print $config.identifier "-menuTitle")) }}
|
|
{{- end }}
|
|
{{- with $title }}
|
|
<div class="nav-title padding">{{ . }}</div>
|
|
{{- end }}
|
|
{{- $classes := "space " }}
|
|
{{- if ($config.main | default true) }}
|
|
{{- $classes = "enlarge morespace " }}
|
|
{{- end }}
|
|
<ul class="{{ $classes }}collapsible-menu">
|
|
{{- $defaultAlwaysopen := site.Params.alwaysopen | default false }}
|
|
{{- range $entries }}
|
|
{{- $isSubSelf := eq . $currentNode }}
|
|
{{- $isSubAncestor := and (not $isSubSelf) (.IsAncestor $currentNode) }}
|
|
{{- $isSubHidden := or (.Params.hidden) (eq .Title "") }}
|
|
{{- $isSubCollapsible := .Params.collapsibleMenu | default site.Params.collapsibleMenu }}
|
|
{{- if or $isSubSelf $isSubAncestor }}
|
|
{{- partial "partials/inline/page-walker" (dict "sect" . "currentnode" $currentNode "showvisitedlinks" $showvisitedlinks "alwaysopen" $defaultAlwaysopen "isSelf" $isSubSelf "isAncestor" $isSubAncestor "isHidden" $isSubHidden) }}
|
|
{{- else if and (not $isSubHidden) (or $isSubCollapsible (not $entry.RelPermalink) (eq $entry $currentNode) ($entry.IsAncestor $currentNode)) }}
|
|
{{- $id := md5 .Path }}
|
|
{{- partialCached "partials/inline/page-walker" (dict "sect" . "currentnode" $currentNode "showvisitedlinks" $showvisitedlinks "alwaysopen" $defaultAlwaysopen "isSelf" $isSubSelf "isAncestor" $isSubAncestor "isHidden" $isSubHidden) $id }}
|
|
{{- end }}
|
|
{{- end }}
|
|
</ul>
|
|
</div>
|
|
{{- else }}
|
|
{{- warnf "WARNING: page '%s' not found for sidebar menu '%s'" ($config.pageRef | default "") $config.identifier }}
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- define "partials/inline/page-walker" }}
|
|
{{- $currentNode := .currentnode }}
|
|
{{- $showvisitedlinks := .showvisitedlinks }}
|
|
{{- $alwaysopen := .alwaysopen }}
|
|
{{- $isSelf := .isSelf }}
|
|
{{- $isAncestor := .isAncestor }}
|
|
{{- $isHidden := .isHidden }}
|
|
{{- with .sect }}
|
|
{{- $isActive := $isSelf }}
|
|
{{- $entry := . }}
|
|
{{- $entries := partialCached "_relearn/pages.gotmpl" (dict "page" .) .Path }}
|
|
{{- $hasVisibleChildren := false }}
|
|
{{- range $entries }}
|
|
{{- $isSubSelf := eq . $currentNode }}
|
|
{{- $isSubAncestor := and (not $isSubSelf) (.IsAncestor $currentNode) }}
|
|
{{- $isSubHidden := or (.Params.hidden) (eq .Title "") }}
|
|
{{- if or $isSubAncestor $isSubSelf (not $isSubHidden) }}
|
|
{{- $hasVisibleChildren = true }}
|
|
{{- break }}
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- $title := partial "title.gotmpl" (dict "page" . "linkTitle" true) }}
|
|
{{- $url := partial "permalink.gotmpl" (dict "to" .) }}
|
|
{{- $isCrosslink := false }}
|
|
{{- $target := "" }}
|
|
{{- if .Params.menuPageRef }}
|
|
{{- with site.Home.GetPage (.Params.menuPageRef) }}
|
|
{{- $url = partial "permalink.gotmpl" (dict "to" .) }}
|
|
{{- $isCrosslink = true }}
|
|
{{- end }}
|
|
{{- else if .Params.menuUrl }}
|
|
{{- $url = .Params.menuUrl }}
|
|
{{- $isCrosslink = true }}
|
|
{{- $u := urls.Parse $url }}
|
|
{{- if $u.IsAbs }}
|
|
{{- $target = "_blank" }}
|
|
{{- if isset site.Params "externallinktarget" }}
|
|
{{- $target = site.Params.externalLinkTarget }}
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- $pre := partial "menu-pre.html" . }}
|
|
{{- $post := partial "menu-post.html" . }}
|
|
{{- if and $hasVisibleChildren (not $isCrosslink) }}
|
|
{{- $isCollapsible := .Params.collapsibleMenu | default site.Params.collapsibleMenu }}
|
|
{{- $currentAlwaysopen := .Params.alwaysopen | default $alwaysopen }}
|
|
{{- if and (not $url) (not $isCollapsible) }}
|
|
{{- $currentAlwaysopen = true }}
|
|
{{- end }}
|
|
{{- $entryId := md5 .Path }}
|
|
{{- $isOpen := or $currentAlwaysopen $isSelf $isAncestor }}
|
|
<li class="{{if $isActive }}active {{end}}{{if (or $isSelf $isAncestor) }}parent {{end}}{{if $isHidden }}hidden {{end}}{{if not $url }}headless {{end}}{{if $currentAlwaysopen}}alwaysopen {{end}}" data-nav-id="{{ $url }}">
|
|
{{- if $isCollapsible }}<input type="checkbox" id="R-section-{{ $entryId }}" aria-controls="R-subsections-{{ $entryId }}"{{ if $isOpen }} checked{{ end }}><label for="R-section-{{ $entryId }}"><i class="fa-fw fas fa-chevron-down"></i><i class="fa-fw fas fa-chevron-right"></i><span class="a11y-only">{{ T "Submenu" $title }}</span></label>{{ end }}
|
|
{{- if $url }}<a class="padding" href="{{ $url }}"{{ if gt (len $target) 0 }} target="{{ $target }}"{{ end }}>{{ else }}<span class="padding">{{ end }}
|
|
{{- $pre }}{{ $title }}{{ $post }}
|
|
{{- if $url }}{{ if $showvisitedlinks }}<i class="fa-fw fas fa-check read-icon"></i>{{ end }}</a>{{ else }}</span>{{ end }}<ul id="R-subsections-{{ $entryId }}" class="collapsible-menu">
|
|
{{- $defaultAlwaysopen := site.Params.alwaysopen | default true }}
|
|
{{- range $entries }}
|
|
{{- $isSubSelf := eq . $currentNode }}
|
|
{{- $isSubAncestor := and (not $isSubSelf) (.IsAncestor $currentNode) }}
|
|
{{- $isSubHidden := or (.Params.hidden) (eq .Title "") }}
|
|
{{- $isSubCollapsible := .Params.collapsibleMenu | default site.Params.collapsibleMenu }}
|
|
{{- if or $isSubSelf $isSubAncestor }}
|
|
{{- partial "partials/inline/page-walker" (dict "sect" . "currentnode" $currentNode "showvisitedlinks" $showvisitedlinks "alwaysopen" $defaultAlwaysopen "isSelf" $isSubSelf "isAncestor" $isSubAncestor "isHidden" $isSubHidden) }}
|
|
{{- else if and (not $isSubHidden) (or $isSubCollapsible (not $entry.RelPermalink) (eq $entry $currentNode) ($entry.IsAncestor $currentNode)) }}
|
|
{{- $id := md5 .Path }}
|
|
{{- partialCached "partials/inline/page-walker" (dict "sect" . "currentnode" $currentNode "showvisitedlinks" $showvisitedlinks "alwaysopen" $defaultAlwaysopen "isSelf" $isSubSelf "isAncestor" $isSubAncestor "isHidden" $isSubHidden) $id }}
|
|
{{- end }}
|
|
{{- end }}</ul></li>
|
|
{{- else if $url }}
|
|
<li class="{{if $isActive }}active {{end}}{{if $isHidden }}hidden {{end}}{{if not $url }}headless {{end}}{{if $isCrosslink }}crosslink {{end}}" data-nav-id="{{ $url }}">
|
|
{{- if $url }}<a class="padding" href="{{ $url }}"{{ if gt (len $target) 0 }} target="{{ $target }}"{{ end }}>{{ else }}<span class="padding">{{ end }}
|
|
{{- $pre }}{{ $title }}{{ $post }}
|
|
{{- if $url }}{{ if $showvisitedlinks }}<i class="fa-fw fas fa-check read-icon"></i>{{ end }}</a>{{ else }}</span>{{ end }}</li>
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- define "partials/inline/menu-tree" }}
|
|
{{- $currentNode := .currentnode }}
|
|
{{- $config := .config }}
|
|
{{- $showvisitedlinks := .showvisitedlinks }}
|
|
{{- with index site.Menus $config.identifier }}
|
|
<div id="R-shortcutmenu-{{ $config.identifier }}" class="R-sidebarmenu">
|
|
{{- $entry := "" }}
|
|
{{- $entries := . }}
|
|
{{- if eq (len $entries) 1 }}
|
|
{{- with index $entries 0 }}
|
|
{{- if not (partial "menupermalink.gotmpl" .) }}
|
|
{{- /* because in Hugo menus can not have parameter but menu entries can,
|
|
we can flag a single top level menu entry as a container; this container
|
|
entry carrys just meta information and parameter, uses its children
|
|
to build the "real" menu, and has no own `url` or `pageRef` */}}
|
|
{{- $entry = . }}
|
|
{{- $entries = .Children }}
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- $title := "" }}
|
|
{{- if not ($config.disableTitle | default false) }}
|
|
{{- if $entry }}
|
|
{{- $title = partial "menutitle.gotmpl" $entry }}
|
|
{{- else if eq $config.identifier "shortcuts" }}
|
|
{{- if not site.Params.DisableShortcutsTitle }}
|
|
{{- $title = T (print $config.identifier "-menuTitle") }}
|
|
{{- end }}
|
|
{{- else }}
|
|
{{- $title = T (print $config.identifier "-menuTitle") }}
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- with $title }}
|
|
<div class="nav-title padding">{{ . }}</div>
|
|
{{- end }}
|
|
{{- $classes := "space " }}
|
|
{{- if ($config.main | default false) }}
|
|
{{- $classes = "enlarge morespace " }}
|
|
{{- end }}
|
|
<ul class="{{ $classes }}collapsible-menu">
|
|
{{- $root := or $entry site }}
|
|
{{- $defaultAlwaysopen := site.Params.alwaysopen | default false }}
|
|
{{- range $entries }}
|
|
{{- $isSubSelf := eq .Page $currentNode }}
|
|
{{- $isSubAncestor := and (not $isSubSelf) ($currentNode.HasMenuCurrent .Menu .) }}
|
|
{{- $isSubHidden := or (.Params.hidden) (eq (partial "menutitle.gotmpl" .) "") }}
|
|
{{- $isSubCollapsible := .Params.collapsibleMenu | default $root.Params.collapsibleMenu | default site.Params.collapsibleMenu }}
|
|
{{- if or $isSubSelf $isSubAncestor }}
|
|
{{- partial "partials/inline/menu-walker" (dict "menu" . "currentnode" $currentNode "showvisitedlinks" $showvisitedlinks "alwaysopen" $defaultAlwaysopen "isSelf" $isSubSelf "isAncestor" $isSubAncestor "isHidden" $isSubHidden "root" $root) }}
|
|
{{- else if and (not $isSubHidden) (or $isSubCollapsible (not (partial "menupermalink.gotmpl" $entry)) (and $entry (eq $entry.Page $currentNode)) (and $entry ($currentNode.HasMenuCurrent $entry.Menu $entry))) }}
|
|
{{- $id := md5 (print .) }}
|
|
{{- partialCached "partials/inline/menu-walker" (dict "menu" . "currentnode" $currentNode "showvisitedlinks" $showvisitedlinks "alwaysopen" $defaultAlwaysopen "isSelf" $isSubSelf "isAncestor" $isSubAncestor "isHidden" $isSubHidden "root" $root) $id }}
|
|
{{- end }}
|
|
{{- end }}
|
|
</ul>
|
|
</div>
|
|
{{- else }}
|
|
{{ if ne $config.identifier "shortcuts" }}
|
|
{{- warnf "WARNING: menu '%s' not found for sidebar menu '%s'" $config.identifier $config.identifier }}
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- define "partials/inline/menu-walker" }}
|
|
{{- $currentNode := .currentnode }}
|
|
{{- $showvisitedlinks := .showvisitedlinks }}
|
|
{{- $alwaysopen := .alwaysopen }}
|
|
{{- $isSelf := .isSelf }}
|
|
{{- $isAncestor := .isAncestor }}
|
|
{{- $isHidden := .isHidden }}
|
|
{{- $root := .root }}
|
|
{{- with .menu }}
|
|
{{- $isActive := $isSelf }}
|
|
{{- $entry := . }}
|
|
{{- $entries := .Children }}
|
|
{{- $hasVisibleChildren := false }}
|
|
{{- range $entries }}
|
|
{{- $isSubSelf := eq .Page $currentNode }}
|
|
{{- $isSubAncestor := and (not $isSubSelf) ($currentNode.HasMenuCurrent .Menu .) }}
|
|
{{- $isSubHidden := or (.Params.hidden) (eq (partial "menutitle.gotmpl" .) "") }}
|
|
{{- if or $isSubAncestor $isSubSelf (not $isSubHidden) }}
|
|
{{- $hasVisibleChildren = true }}
|
|
{{- break }}
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- $title := partial "menutitle.gotmpl" . }}
|
|
{{- $url := partial "menupermalink.gotmpl" . }}
|
|
{{- $target := "" }}
|
|
{{- $u := urls.Parse $url }}
|
|
{{- if $u.IsAbs }}
|
|
{{- $target = "_blank" }}
|
|
{{- if isset site.Params "externallinktarget" }}
|
|
{{- $target = site.Params.externalLinkTarget }}
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- $pre := .Pre }}
|
|
{{- $post := .Post }}
|
|
{{- with .Page }}
|
|
{{- $pre = or $pre (partial "menu-pre.html" .) }}
|
|
{{- $post = or $post (partial "menu-post.html" .) }}
|
|
{{- end }}
|
|
{{- if $hasVisibleChildren }}
|
|
{{- $isCollapsible := .Params.collapsibleMenu | default $root.Params.collapsibleMenu | default site.Params.collapsibleMenu }}
|
|
{{- $currentAlwaysopen := .Params.alwaysopen | default $root.Params.alwaysopen | default $alwaysopen }}
|
|
{{- if and (not $url) (not $isCollapsible) }}
|
|
{{- $currentAlwaysopen = true }}
|
|
{{- end }}
|
|
{{- $entryId := md5 (print .) }}
|
|
{{- $isOpen := or $currentAlwaysopen $isSelf $isAncestor }}
|
|
<li class="{{if $isActive }}active {{end}}{{if (or $isSelf $isAncestor) }}parent {{end}}{{if $isHidden }}hidden {{end}}{{if not $url }}headless {{end}}{{if $currentAlwaysopen}}alwaysopen {{end}}" data-nav-id="{{ $url }}">
|
|
{{- if $isCollapsible }}<input type="checkbox" id="R-section-{{ $entryId }}" aria-controls="R-subsections-{{ $entryId }}"{{ if $isOpen }} checked{{ end }}><label for="R-section-{{ $entryId }}"><i class="fa-fw fas fa-chevron-down"></i><i class="fa-fw fas fa-chevron-right"></i><span class="a11y-only">{{ T "Submenu" $title }}</span></label>{{ end }}
|
|
{{- if $url }}<a class="padding" href="{{ $url }}"{{ if gt (len $target) 0 }} target="{{ $target }}"{{ end }}>{{ else }}<span class="padding">{{ end }}
|
|
{{- $pre }}{{ $title }}{{ $post }}
|
|
{{- if $url }}{{ if $showvisitedlinks }}<i class="fa-fw fas fa-check read-icon"></i>{{ end }}</a>{{ else }}</span>{{ end }}<ul id="R-subsections-{{ $entryId }}" class="collapsible-menu">
|
|
{{- $defaultAlwaysopen := site.Params.alwaysopen | default true }}
|
|
{{- range $entries }}
|
|
{{- $isSubSelf := eq .Page $currentNode }}
|
|
{{- $isSubAncestor := and (not $isSubSelf) ($currentNode.HasMenuCurrent .Menu .) }}
|
|
{{- $isSubHidden := or (.Params.hidden) (eq (partial "menutitle.gotmpl" .) "") }}
|
|
{{- $isSubCollapsible := .Params.collapsibleMenu | default $root.Params.collapsibleMenu | default site.Params.collapsibleMenu }}
|
|
{{- if or $isSubSelf $isSubAncestor }}
|
|
{{- partial "partials/inline/menu-walker" (dict "menu" . "currentnode" $currentNode "showvisitedlinks" $showvisitedlinks "alwaysopen" $defaultAlwaysopen "isSelf" $isSubSelf "isAncestor" $isSubAncestor "isHidden" $isSubHidden "root" $root) }}
|
|
{{- else if and (not $isSubHidden) (or $isSubCollapsible (not (partial "menupermalink.gotmpl" $entry)) (eq $entry.Page $currentNode) ($currentNode.HasMenuCurrent $entry.Menu $entry)) }}
|
|
{{- $id := md5 (print .) }}
|
|
{{- partialCached "partials/inline/menu-walker" (dict "menu" . "currentnode" $currentNode "showvisitedlinks" $showvisitedlinks "alwaysopen" $defaultAlwaysopen "isSelf" $isSubSelf "isAncestor" $isSubAncestor "isHidden" $isSubHidden "root" $root) $id }}
|
|
{{- end }}
|
|
{{- end }}</ul></li>
|
|
{{- else if $url }}
|
|
<li class="{{if $isActive }}active {{end}}{{if $isHidden }}hidden {{end}}{{if not $url }}headless {{end}}" data-nav-id="{{ $url }}">
|
|
{{- if $url }}<a class="padding" href="{{ $url }}"{{ if gt (len $target) 0 }} target="{{ $target }}"{{ end }}>{{ else }}<span class="padding">{{ end }}
|
|
{{- $pre }}{{ $title }}{{ $post }}
|
|
{{- if $url }}{{ if $showvisitedlinks }}<i class="fa-fw fas fa-check read-icon"></i>{{ end }}</a>{{ else }}</span>{{ end }}</li>
|
|
{{- end }}
|
|
{{- end }}
|
|
{{- end }} |