mirror of
https://github.com/by-jp/www.byjp.me.git
synced 2025-08-09 09:46:11 +01:00
25 lines
1.1 KiB
Text
25 lines
1.1 KiB
Text
{{- $count := .Get 0 | default 5 -}}
|
|
{{- $url := printf "https://%s" site.Params.clapsHost -}}
|
|
{{- $cacheKey := print $url (now.Format "-2006-01-02-15") -}}
|
|
{{- with try (resources.GetRemote $url (dict "key" $cacheKey)) -}}
|
|
{{- with .Err -}}
|
|
{{- errorf "Unable to get top claps: %v" . -}}
|
|
{{- else with .Value -}}
|
|
{{- $data := .Content | transform.Unmarshal -}}
|
|
{{- $claps := slice -}}
|
|
{{- range $path, $count := $data -}}
|
|
{{- $interactionCount := partial "interaction-count.obj" (site.GetPage $path) -}}
|
|
{{ $claps = $claps | append (dict "path" $path "count" (add $interactionCount $count)) }}
|
|
{{- end -}}
|
|
{{- range (sort $claps "count" "desc" | first $count) -}}
|
|
{{- $count := .count -}}
|
|
{{- with site.GetPage .path }}
|
|
=> {{.RelPermalink}} {{ with .Params.emoji }}{{ . }} {{ end}}{{ with .Title -}}{{ . }}{{ else }}{{ .Type | singularize | title }}{{ end }} ({{ $count }})
|
|
{{- end -}}
|
|
{{- end }}
|
|
{{- else -}}
|
|
{{- errorf "Unable to get top claps" -}}
|
|
{{- end -}}
|
|
{{- else -}}
|
|
{{- errorf "Unable to get all clap counts" -}}
|
|
{{- end -}}
|