diff --git a/layouts/partials/func/social/sortNetworks.html b/layouts/partials/func/social/sortNetworks.html deleted file mode 100644 index 370a577..0000000 --- a/layouts/partials/func/social/sortNetworks.html +++ /dev/null @@ -1,23 +0,0 @@ -{{- /* - -Sorting a list of social networks defined by the order in `networks`. -Only networks present in both `networks` and `setups` will be included. Items missing from `networks` are ignored. -Use `networks` to setup the order of the networks and which network to enable. - -Usage: {{ $setups = partials.IncludeCached "func/sortNetworks.html" (dict "networks" $networks "setups" $setups) }} - -See also `config/_default/params.toml` > `ananke.social` for details. - -*/ -}} -{{- $networks := .networks -}} -{{- $setups := .setups -}} -{{- $output := collections.Slice -}} -{{- range $networks -}} - {{- $network := . -}} - {{- range $setups -}} - {{- if compare.Eq .slug $network -}} - {{- $output = $output | collections.Append . -}} - {{- end -}} - {{- end -}} -{{- end -}} -{{- return $output -}} diff --git a/layouts/partials/social/follow.html b/layouts/partials/social/follow.html index 7c84a1b..de78f4d 100644 --- a/layouts/partials/social/follow.html +++ b/layouts/partials/social/follow.html @@ -2,16 +2,11 @@ {{- $config := site.Params.ananke.social -}} {{- $networks := $config.follow.networks -}} -{{- $setups := (collections.Where $config.networks "slug" "in" $networks) -}} -{{/* This here is an ugly workaround for GoHugo's missing sortByArray feature. - Let's cache it so it does not take away too much time. - PS: It's also a couple of years old, so maybe there is a better solution by now. */}} -{{- $setups = partials.IncludeCached "func/social/sortNetworks.html" (dict "networks" $networks "setups" $setups) "social-follow" -}}
- {{- range $setups -}} - {{- $setup := . -}} - {{- $network := $setup.slug -}} + {{- range $networks -}} + {{- $network := . -}} + {{- $setup := index $config.networks $network -}} {{- $profile := index $config $network -}} {{- $rel := $profile.rel | default "" -}} {{- $label := $profile.label | default $setup.label -}} @@ -27,7 +22,7 @@ title="follow on {{ $label }} - Opens in a new window" aria-label="follow on {{ $label }} - Opens in a new window"> {{/* @todo add the following lines to a partial, reused in social/share.html */}} - {{- with .icon -}} + {{- with $setup.icon -}} {{- $icon := resources.Get (printf "ananke/socials/%s.svg" .) -}} {{- with $icon -}} diff --git a/layouts/partials/social/share.html b/layouts/partials/social/share.html index 68e266d..3a59a1a 100644 --- a/layouts/partials/social/share.html +++ b/layouts/partials/social/share.html @@ -13,22 +13,17 @@ {{- $networks := $config.share.networks -}} {{- $hasLabel := $config.share.sharetext | default "true" -}} {{- $hasIcon := $config.share.icons | default "true" -}} - {{- $setups := (collections.Where $config.networks "slug" "in" $networks) -}} - - {{/* This here is an ugly workaround for GoHugo's missing sortByArray feature. - Let's cache it so it does not take away too much time. - PS: It's also a couple of years old, so maybe there is a better solution by now. */}} - {{- $setups = partials.IncludeCached "func/social/sortNetworks.html" (dict "networks" $networks "setups" $setups) "social-share" -}}
- {{- range $setups -}} - {{- $setup := . -}} + {{- range $networks -}} + {{- $network := . -}} + {{- $setup := index $config.networks $network -}} {{/* @todo i18n $sharetext := lang.Translate (fmt.Printf "share_on_%s" $setup.slug) */}} {{- $label := "" -}} {{ with $config.share.sharetext -}} {{- $label = printf "Share on %s" $setup.label -}} {{- end -}} - {{ if eq .share "false" | default "true" -}} + {{ if eq $setup.share "false" | default "true" -}} {{- continue -}} {{/* @todo notification into CLI that a network is configured but not supported */}} {{- end -}}