{{ define "main" }} {{ $all_posts := where .Site.RegularPages "Section" "post" }} {{ $all_pinned := where $all_posts "Params.pin" true }} {{ $all_normal := where $all_posts "Params.pin" "!=" true }} {{ $posts := slice }} {{ $pinned_size := 0 }} {{ $paginator := .Paginate $all_posts }} {{ $visible_start := sub $paginator.PageNumber 1 | mul $paginator.PagerSize }} {{ $visible_end := add $visible_start $paginator.PagerSize }} {{ if gt (len $all_pinned) $visible_start }} {{ if gt (len $all_pinned) $visible_end }} {{ $pinned_size = $paginator.PagerSize }} {{ else }} {{ $pinned_size = sub (len $all_pinned) $visible_start }} {{ end }} {{ range first $pinned_size (after $visible_start $all_pinned) }} {{ $posts = $posts | append . }} {{ end }} {{ end }} {{ $normal_size := sub $paginator.PagerSize $pinned_size }} {{ if gt $normal_size 0 }} {{ $normal_start := 0 }} {{ if gt $pinned_size 0 }} {{ $normal_start = 0 }} {{ else }} {{ $normal_start = sub $visible_start (len $all_pinned) }} {{ end }} {{ range first $normal_size (after $normal_start $all_normal) }} {{ $posts = $posts | append . }} {{ end }} {{ end }}
{{ range $posts }}
{{ $card_body_col := "12" }} {{ if .Params.image }} {{ $src := .Params.image.path | default .Params.image }} {{ if not (findRE "//" $src) }} {{ $src = .Resources.GetMatch ( .Params.image.path | default .Params.image ) }} {{ $src = $src.RelPermalink }} {{ end }} {{ $alt := .Params.image.alt | default "Preview Image" | htmlEscape }} {{ $lqip := "" }} {{ if .Params.image.lqip }} {{ $lqip = printf `lqip="%s"` .Params.image.lqip }} {{ end }}
{{ $alt }}
{{ $card_body_col = "7" }} {{ end }}

{{ .Title }}

{{ .Description | default .Summary }}

{{ end }}
{{ if gt $paginator.TotalPages 1 }} {{ partial "post-paginator.html" . }} {{ end }} {{ end }}