{{ $disableImageOptimization := site.Store.Get "disableImageOptimization" }} {{ $useDefault := false }} {{ $featured := "" }} {{ $featuredURL := "" }} {{ with .Params.featureimage }} {{ if or (strings.HasPrefix . "http:") (strings.HasPrefix . "https:") }} {{ if site.Params.hotlinkFeatureImage }} {{ $featuredURL = . }} {{ else }} {{ $featured = resources.GetRemote . }} {{ end }} {{ else }} {{ $featured = resources.Get . }} {{ end }} {{ end }} {{ if not (or $featured $featuredURL) }} {{ $images := .Resources.ByType "image" }} {{ range slice "*background*" "*feature*" "*cover*" "*thumbnail*" }} {{ if not $featured }}{{ $featured = $images.GetMatch . }}{{ end }} {{ end }} {{ end }} {{ if not (or $featured $featuredURL) }} {{ $default := site.Store.Get "defaultBackgroundImage" }} {{ if $default.url }} {{ $featuredURL = $default.url }} {{ $useDefault = true }} {{ else if $default.obj }} {{ $featured = $default.obj }} {{ $useDefault = true }} {{ end }} {{ end }} {{/* generate image URL if not hotlink */}} {{ if not $featuredURL }} {{ with $featured }} {{ $featuredURL = .RelPermalink }} {{ if not (or $disableImageOptimization (eq .MediaType.SubType "svg")) }} {{ $size := site.Store.Get "backgroundImageWidth" }} {{ $featuredURL = (.Resize $size).RelPermalink }} {{ end }} {{ end }} {{ end }} {{ $isParentList := eq (.Scratch.Get "scope") "list" }} {{ $shouldBlur := $.Params.layoutBackgroundBlur | default (or (and ($.Site.Params.article.layoutBackgroundBlur | default true) (not $isParentList)) (and ($.Site.Params.list.layoutBackgroundBlur | default true) ($isParentList)) ) }} {{ $shouldAddHeaderSpace := $.Params.layoutBackgroundHeaderSpace | default (or (and ($.Site.Params.article.layoutBackgroundHeaderSpace | default true) (not $isParentList)) (and ($.Site.Params.list.layoutBackgroundHeaderSpace | default true) ($isParentList)) ) }} {{- with $featuredURL -}} {{ if $shouldAddHeaderSpace | default true }}
{{ end }}