{{- $version := .Scratch.Get "version" -}}
{{- $latest := $version -}}
{{- $devOpts := .Scratch.Get "devOpts" -}}

{{- /* Check for updates */ -}}
{{- if $devOpts.c4u -}}
  {{- /* Select the scope named "public_repo" to generate personal access token */ -}}
  {{- $header := dict "Authorization" "" -}}
  {{- with $devOpts.githubtoken -}}
    {{- $header = dict "Authorization" (printf "token %v" .)  -}}
  {{- end -}}
  {{- $latest = (getJSON "https://api.github.com/repos/hugo-fixit/FixIt/releases/latest" $header).tag_name -}}
{{- end -}}

{{- /* FixIt theme version detection */ -}}
{{- if eq .Site .Sites.First -}}
  {{- if not .Site.Params.version -}}
    {{- errorf "FixIt %v\n%v\n\n" $version (T "configurationError") -}}
  {{- else if gt "0.2.0" (strings.TrimPrefix "v" .Site.Params.version) -}}
    {{- errorf "FixIt %v\n%v\n\n" $version (dict "From" .Site.Params.version "To" $version | T "compatibilityError")  -}}
  {{- end -}}
  {{- if (strings.HasSuffix $version "RC") -}}
    {{- warnf "FixIt %v\n%v\n\n" $version (T "RCVersionWarn") -}}
  {{- end -}}
  {{- if (gt $latest $version) -}}
    {{- warnf "FixIt %v (⬆️ %v)\n%v`git submodule update --remote --merge`\n\n" $version $latest (T "quicklyUpgrade") -}}
  {{- end -}}
{{- end -}}

{{- .Scratch.Set "latest" $latest -}}
