{{- $context := . -}} {{- $disabled := $context.Params.disable_share | default "false" -}} {{- $config := site.Params.ananke.social -}} {{- with $config.share.disable_share -}} {{- $disabled := . -}} {{- end -}} {{- if eq "false" $disabled -}} {{- $title := $context.Title -}} {{- $url := printf "%s" $context.Permalink | absLangURL -}} {{- $config := site.Params.ananke.social -}} {{- $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/sortNetworks.html" (dict "networks" $networks "setups" $setups) "social-share" -}}
{{- end -}} {{/* if eq "true" $disabled */}} {{ define "partials/func/getShareLink.html" }} {{- $context := .context -}} {{- $setup := .setup -}} {{- $separator := "&" -}} {{- $title := $context.Title | transform.HTMLEscape -}} {{- $description := $context.Summary | transform.HTMLEscape -}} {{- $permalink := $context.Permalink | transform.HTMLEscape -}} {{- with $setup.separator -}} {{- $separator = . -}} {{- end -}} {{- $link := fmt.Printf "%s%s" $setup.link "?" -}} {{- range $key, $value := $setup.particles -}} {{- if compare.Eq $key "params" -}} {{- $link = fmt.Printf "%s%s%s" $permalink $separator $value -}} {{- else -}} {{- if compare.Eq $value "description" -}} {{- $link = fmt.Printf "%s%s%s" $link $separator (collections.Querify $key $description) -}} {{- else if compare.Eq $value "title" -}} {{- $link = fmt.Printf "%s%s%s" $link $separator (collections.Querify $key $title) -}} {{- else if compare.Eq $value "permalink" -}} {{- $link = fmt.Printf "%s%s%s" $link $separator (collections.Querify $key $permalink) -}} {{- end -}} {{- end -}} {{- end -}} {{- return $link -}} {{ end }}