diff options
Diffstat (limited to 'generators/hugo/themes/edwin/layouts/partials/paginator.html')
-rw-r--r-- | generators/hugo/themes/edwin/layouts/partials/paginator.html | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/generators/hugo/themes/edwin/layouts/partials/paginator.html b/generators/hugo/themes/edwin/layouts/partials/paginator.html new file mode 100644 index 0000000..7f1ca0d --- /dev/null +++ b/generators/hugo/themes/edwin/layouts/partials/paginator.html @@ -0,0 +1,45 @@ +{{ $pag := $.Paginator }} +{{ if gt $pag.TotalPages 1 }} +<nav class="blog-pagination"> + <ul class="pagination justify-content-center"> + {{ with $pag.First }} + <li class="page-item"> + <a class="page-link" href="{{ .URL }}" aria-label="First"><span aria-hidden="true">««</span></a> + </li> + {{ end }} + <li class="page-item {{ if not $pag.HasPrev }}disabled{{ end }}"> + <a class="page-link" href="{{ if $pag.HasPrev }}{{ $pag.Prev.URL }}{{ end }}" aria-label="Previous"><span aria-hidden="true">«</span></a> + </li> + {{ $.Scratch.Set "__paginator.ellipsed" false }} + {{ range $pag.Pagers }} + {{ $right := sub .TotalPages .PageNumber }} + {{ $showNumber := or (le .PageNumber 3) (eq $right 0) }} + {{ $showNumber := or $showNumber (and (gt .PageNumber (sub $pag.PageNumber 2)) (lt .PageNumber (add $pag.PageNumber 2))) }} + {{ if $showNumber }} + {{ $.Scratch.Set "__paginator.ellipsed" false }} + {{ $.Scratch.Set "__paginator.shouldEllipse" false }} + {{ else }} + {{ $.Scratch.Set "__paginator.shouldEllipse" (not ($.Scratch.Get "__paginator.ellipsed") ) }} + {{ $.Scratch.Set "__paginator.ellipsed" true }} + {{ end }} + {{ if $showNumber }} + <li class="page-item {{ if eq . $pag }}active{{ end }}"> + <a class="page-link" href="{{ .URL }}">{{ .PageNumber }}</a> + </li> + {{ else if ($.Scratch.Get "__paginator.shouldEllipse") }} + <li class="page-item disabled"> + <span class="page-link" aria-hidden="true">…</span> + </li> + {{ end }} + {{ end }} + <li class="page-item {{ if not $pag.HasNext }}disabled{{ end }}"> + <a class="page-link" href="{{ if $pag.HasNext }}{{ $pag.Next.URL }}{{ end }}" aria-label="Next"><span aria-hidden="true">»</span></a> + </li> + {{ with $pag.Last }} + <li class="page-item"> + <a class="page-link" href="{{ .URL }}" aria-label="Last"><span aria-hidden="true">»»</span></a> + </li> + {{ end }} + </ul> +</nav> +{{ end }}
\ No newline at end of file |