From d53b6ab5ec8d5648201efc6308306e0c222b65fd Mon Sep 17 00:00:00 2001 From: amzrk2 Date: Sat, 18 Apr 2020 18:08:13 +0800 Subject: Smart pagination --- layouts/_default/archives.html | 58 +++++++++++++++++++++-- layouts/_default/list.html | 58 +++++++++++++++++++++-- layouts/_default/tag.html | 63 +++++++++++++++++++++++-- layouts/partials/fas/fa-angle-double-left.html | 1 + layouts/partials/fas/fa-angle-double-right.html | 1 + layouts/partials/fas/fa-angle-left.html | 1 + layouts/partials/fas/fa-angle-right.html | 1 + layouts/partials/fas/fa-angle-up.html | 1 + layouts/partials/scripts.html | 2 +- 9 files changed, 174 insertions(+), 12 deletions(-) create mode 100644 layouts/partials/fas/fa-angle-double-left.html create mode 100644 layouts/partials/fas/fa-angle-double-right.html create mode 100644 layouts/partials/fas/fa-angle-left.html create mode 100644 layouts/partials/fas/fa-angle-right.html create mode 100644 layouts/partials/fas/fa-angle-up.html (limited to 'layouts') diff --git a/layouts/_default/archives.html b/layouts/_default/archives.html index d4459ff..dab458f 100644 --- a/layouts/_default/archives.html +++ b/layouts/_default/archives.html @@ -14,9 +14,61 @@ {{ end }} + +{{ $offsetLinks := 2 }} +{{ $maxLinks := (add (mul $offsetLinks 2) 1) }} +{{ $lowerLimit := (add $offsetLinks 1) }} +{{ $upperLimit := (sub $paginator.TotalPages $offsetLinks) }} {{ if gt $paginator.TotalPages 1 }} - + {{ end }} + {{ end }} \ No newline at end of file diff --git a/layouts/_default/list.html b/layouts/_default/list.html index e459763..567e577 100644 --- a/layouts/_default/list.html +++ b/layouts/_default/list.html @@ -17,9 +17,61 @@ {{ end }} + +{{ $offsetLinks := 2 }} +{{ $maxLinks := (add (mul $offsetLinks 2) 1) }} +{{ $lowerLimit := (add $offsetLinks 1) }} +{{ $upperLimit := (sub $paginator.TotalPages $offsetLinks) }} {{ if gt $paginator.TotalPages 1 }} - + {{ end }} + {{ end }} \ No newline at end of file diff --git a/layouts/_default/tag.html b/layouts/_default/tag.html index 4373558..dd15f58 100644 --- a/layouts/_default/tag.html +++ b/layouts/_default/tag.html @@ -3,7 +3,8 @@ {{ i18n "tagsCurrentTag" . }} -{{ range .Paginator.Pages }} +{{ $paginator := .Paginator }} +{{ range $paginator.Pages }}

{{ .Title }} @@ -19,9 +20,61 @@

{{ end }} -{{ if gt .Paginator.TotalPages 1 }} - + +{{ $offsetLinks := 2 }} +{{ $maxLinks := (add (mul $offsetLinks 2) 1) }} +{{ $lowerLimit := (add $offsetLinks 1) }} +{{ $upperLimit := (sub $paginator.TotalPages $offsetLinks) }} +{{ if gt $paginator.TotalPages 1 }} + {{ end }} + {{ end }} \ No newline at end of file diff --git a/layouts/partials/fas/fa-angle-double-left.html b/layouts/partials/fas/fa-angle-double-left.html new file mode 100644 index 0000000..95887a1 --- /dev/null +++ b/layouts/partials/fas/fa-angle-double-left.html @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/layouts/partials/fas/fa-angle-double-right.html b/layouts/partials/fas/fa-angle-double-right.html new file mode 100644 index 0000000..998f859 --- /dev/null +++ b/layouts/partials/fas/fa-angle-double-right.html @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/layouts/partials/fas/fa-angle-left.html b/layouts/partials/fas/fa-angle-left.html new file mode 100644 index 0000000..39198fc --- /dev/null +++ b/layouts/partials/fas/fa-angle-left.html @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/layouts/partials/fas/fa-angle-right.html b/layouts/partials/fas/fa-angle-right.html new file mode 100644 index 0000000..26cb61e --- /dev/null +++ b/layouts/partials/fas/fa-angle-right.html @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/layouts/partials/fas/fa-angle-up.html b/layouts/partials/fas/fa-angle-up.html new file mode 100644 index 0000000..47ffb0b --- /dev/null +++ b/layouts/partials/fas/fa-angle-up.html @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/layouts/partials/scripts.html b/layouts/partials/scripts.html index eceda37..e807e36 100644 --- a/layouts/partials/scripts.html +++ b/layouts/partials/scripts.html @@ -49,7 +49,7 @@ trailColor: '#E5E2E4', trailWidth: 12, text: { - value: '', + value: '{{ partial "fas/fa-angle-up" . }}', autoStyleContainer: false, style: null }, -- cgit v1.2.3