{{- $context := . -}} {{- $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 -}} {{- $profile := index $config $network -}} {{- $rel := $profile.rel | default "" -}} {{- $label := $profile.label | default $setup.label -}} {{- $link := (printf $setup.profile $profile.username) -}} {{- with $profile.profilelink -}} {{- $link = $profile.profilelink -}} {{- end -}} {{- $languageDirection := cond (eq $.Site.Language.LanguageDirection "rtl") "ml1" "mr1" -}} {{/* @todo add the following lines to a partial, reused in social/share.html */}} {{- with .icon -}} {{- $icon := resources.Get (printf "ananke/socials/%s.svg" .) -}} {{- with $icon -}} {{ .Content | safeHTML }} {{/* @todo indicator for missing or misconfigured icon */}} {{- end -}} {{- else -}} {{- $label -}} {{- end -}} {{- with $config.follow.new_window_icon -}} {{- partial "new-window-icon.html" . -}} {{- end -}} {{- end -}}