Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/amzrk2/hugo-theme-fuji.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDSRKafuU <dsrkafuu@outlook.com>2021-03-01 04:19:56 +0300
committerGitHub <noreply@github.com>2021-03-01 04:19:56 +0300
commitedc2968451aeabb3ee5bb4a90730a6980318aca8 (patch)
treeed5f490b435caeadcd5d0e4affc5b52407373c46
parentef5bd83b41e7816ba9822fb507860d54e4760cc8 (diff)
parent5d8e60e724fef437d65a6f86780d4f771b154ef6 (diff)
fix(pagi): pull request #68 from Qraffa/master
update: tag pagination
-rw-r--r--layouts/_default/archives.html70
-rw-r--r--layouts/_default/list.html57
-rw-r--r--layouts/_default/tag.html76
-rw-r--r--layouts/partials/pagination.html56
4 files changed, 79 insertions, 180 deletions
diff --git a/layouts/_default/archives.html b/layouts/_default/archives.html
index 678a1db..e434e9b 100644
--- a/layouts/_default/archives.html
+++ b/layouts/_default/archives.html
@@ -1,74 +1,22 @@
{{ define "main" }}
<!-- page info section e.g. current tag & total archive pages -->
<div class="page-info">
- <span>{{ i18n "archivesTotalPages" }}{{ len (where .Site.RegularPages "Type" "in" .Site.Params.mainSections) }}</span>
+ <span>{{ i18n "archivesTotalPages" }}{{ len (where .Site.RegularPages "Type" "in" .Site.Params.mainSections) }}</span>
</div>
<!-- archives range in all posts -->
{{ $paginator := .Paginate (where .Site.RegularPages "Type" "in" .Site.Params.mainSections) 50 }}
{{ range $paginator.Pages }}
<div class="post">
- <h3 class="post-item post-title-archive">
- <a href="{{ .Permalink }}">{{ .Title }}</a>
- </h3>
- <div class="post-item post-meta-archive">
- {{ partial "post-meta.html" . }}
- </div>
+ <h3 class="post-item post-title-archive">
+ <a href="{{ .Permalink }}">{{ .Title }}</a>
+ </h3>
+ <div class="post-item post-meta-archive">
+ {{ partial "post-meta.html" . }}
+ </div>
</div>
{{ end }}
<!-- custom smart pagination -->
-{{ $offsetLinks := 2 }}
-{{ $maxLinks := (add (mul $offsetLinks 2) 1) }}
-{{ $lowerLimit := (add $offsetLinks 1) }}
-{{ $upperLimit := (sub $paginator.TotalPages $offsetLinks) }}
-{{ if gt $paginator.TotalPages 1 }}
-<div class="pagination">
- {{ if ne $paginator.PageNumber 1 }}
- <div class="pag-first">
- <a href="{{ $paginator.First.URL }}"><i class="iconfont icon-caret-back-circle-sharp"></a>
- </div>
- {{ end }}
- {{ if $paginator.HasPrev }}
- <div class="pag-previous">
- <a href="{{ $paginator.Prev.URL }}"><i class="iconfont icon-chevron-back-circle-sharp"></i></a>
- </div>
- {{ end }}
- {{ range $paginator.Pagers }}
- {{ $.Scratch.Set "pageNumFlag" false }}
- {{ if gt $paginator.TotalPages $maxLinks }}
- {{ if le $paginator.PageNumber $lowerLimit }}
- {{ if le .PageNumber $maxLinks }}
- {{ $.Scratch.Set "pageNumFlag" true }}
- {{ end }}
- {{ else if ge $paginator.PageNumber $upperLimit }}
- {{ if gt .PageNumber (sub $paginator.TotalPages $maxLinks) }}
- {{ $.Scratch.Set "pageNumFlag" true }}
- {{ end }}
- {{ else }}
- {{ if and ( ge .PageNumber (sub $paginator.PageNumber $offsetLinks) ) ( le .PageNumber (add $paginator.PageNumber $offsetLinks) ) }}
- {{ $.Scratch.Set "pageNumFlag" true }}
- {{ end }}
- {{ end }}
- {{ else }}
- {{ $.Scratch.Set "pageNumFlag" true }}
- {{ end }}
- {{ if eq ($.Scratch.Get "pageNumFlag") true }}
- <div class="pag-item{{ if eq . $paginator }} pag-current{{ end }}">
- <a href="{{ .URL }}">{{ .PageNumber }}</a>
- </div>
- {{ end }}
- {{ end }}
- {{ if $paginator.HasNext }}
- <div class="pag-next">
- <a href="{{ $paginator.Next.URL }}"><i class="iconfont icon-chevron-forward-circle-sharp"></i></a>
- </div>
- {{ end }}
- {{ if ne $paginator.PageNumber $paginator.TotalPages }}
- <div class="pag-last">
- <a href="{{ $paginator.Last.URL }}"><i class="iconfont icon-caret-forward-circle-sharp"></i></a>
- </div>
- {{ end }}
-</div>
-{{ end }}
+{{- partial "pagination.html" (dict "context" . "pagi" $paginator) -}}
-{{ end }} \ No newline at end of file
+{{ end }}
diff --git a/layouts/_default/list.html b/layouts/_default/list.html
index 69f8708..6961c1b 100644
--- a/layouts/_default/list.html
+++ b/layouts/_default/list.html
@@ -15,59 +15,6 @@
</div>
{{ end }}
-<!-- custom smart pagination -->
-{{ $offsetLinks := 2 }}
-{{ $maxLinks := (add (mul $offsetLinks 2) 1) }}
-{{ $lowerLimit := (add $offsetLinks 1) }}
-{{ $upperLimit := (sub $paginator.TotalPages $offsetLinks) }}
-{{ if gt $paginator.TotalPages 1 }}
-<div class="pagination">
- {{ if ne $paginator.PageNumber 1 }}
- <div class="pag-first">
- <a href="{{ $paginator.First.URL }}"><i class="iconfont icon-caret-back-circle-sharp"></i></a>
- </div>
- {{ end }}
- {{ if $paginator.HasPrev }}
- <div class="pag-previous">
- <a href="{{ $paginator.Prev.URL }}"><i class="iconfont icon-chevron-back-circle-sharp"></i></a>
- </div>
- {{ end }}
- {{ range $paginator.Pagers }}
- {{ $.Scratch.Set "pageNumFlag" false }}
- {{ if gt $paginator.TotalPages $maxLinks }}
- {{ if le $paginator.PageNumber $lowerLimit }}
- {{ if le .PageNumber $maxLinks }}
- {{ $.Scratch.Set "pageNumFlag" true }}
- {{ end }}
- {{ else if ge $paginator.PageNumber $upperLimit }}
- {{ if gt .PageNumber (sub $paginator.TotalPages $maxLinks) }}
- {{ $.Scratch.Set "pageNumFlag" true }}
- {{ end }}
- {{ else }}
- {{ if and ( ge .PageNumber (sub $paginator.PageNumber $offsetLinks) ) ( le .PageNumber (add $paginator.PageNumber $offsetLinks) ) }}
- {{ $.Scratch.Set "pageNumFlag" true }}
- {{ end }}
- {{ end }}
- {{ else }}
- {{ $.Scratch.Set "pageNumFlag" true }}
- {{ end }}
- {{ if eq ($.Scratch.Get "pageNumFlag") true }}
- <div class="pag-item{{ if eq . $paginator }} pag-current{{ end }}">
- <a href="{{ .URL }}">{{ .PageNumber }}</a>
- </div>
- {{ end }}
- {{ end }}
- {{ if $paginator.HasNext }}
- <div class="pag-next">
- <a href="{{ $paginator.Next.URL }}"><i class="iconfont icon-chevron-forward-circle-sharp"></i></i></a>
- </div>
- {{ end }}
- {{ if ne $paginator.PageNumber $paginator.TotalPages }}
- <div class="pag-last">
- <a href="{{ $paginator.Last.URL }}"><i class="iconfont icon-caret-forward-circle-sharp"></i></a>
- </div>
- {{ end }}
-</div>
-{{ end }}
+{{- partial "pagination.html" (dict "context" . "pagi" $paginator) -}}
-{{ end }} \ No newline at end of file
+{{ end }}
diff --git a/layouts/_default/tag.html b/layouts/_default/tag.html
index c3df91e..1185f1d 100644
--- a/layouts/_default/tag.html
+++ b/layouts/_default/tag.html
@@ -1,77 +1,25 @@
{{ define "main" }}
<!-- page info section e.g. current tag & total archive pages -->
<div class="page-info">
- <span>{{ i18n "tagsCurrentTag" . }}</span>
+ <span>{{ i18n "tagsCurrentTag" . }}</span>
</div>
<!-- tags page range in posts with current tag -->
{{ $paginator := .Paginator }}
{{ range $paginator.Pages }}
<div class="post">
- <h2 class="post-item post-title">
- <a href="{{ .Permalink }}">{{ .Title }}</a>
- </h2>
- <div class="post-item post-meta">
- {{ partial "post-meta.html" . }}
- </div>
- <div class="post-item post-summary markdown-body">
- {{ .Summary }}
- </div>
+ <h2 class="post-item post-title">
+ <a href="{{ .Permalink }}">{{ .Title }}</a>
+ </h2>
+ <div class="post-item post-meta">
+ {{ partial "post-meta.html" . }}
+ </div>
+ <div class="post-item post-summary markdown-body">
+ {{ .Summary }}
+ </div>
</div>
{{ end }}
<!-- custom smart pagination -->
-{{ $offsetLinks := 2 }}
-{{ $maxLinks := (add (mul $offsetLinks 2) 1) }}
-{{ $lowerLimit := (add $offsetLinks 1) }}
-{{ $upperLimit := (sub $paginator.TotalPages $offsetLinks) }}
-{{ if gt $paginator.TotalPages 1 }}
-<div class="pagination">
- {{ if ne $paginator.PageNumber 1 }}
- <div class="pag-first">
- <a href="{{ $paginator.First.URL }}"><i class="iconfont icon-caret-back-circle-sharp"></i></a>
- </div>
- {{ end }}
- {{ if $paginator.HasPrev }}
- <div class="pag-previous">
- <a href="{{ $paginator.Prev.URL }}"><i class="iconfont icon-chevron-back-circle-sharp"></i></a>
- </div>
- {{ end }}
- {{ range $paginator.Pagers }}
- {{ $.Scratch.Set "pageNumFlag" false }}
- {{ if gt $paginator.TotalPages $maxLinks }}
- {{ if le $paginator.PageNumber $lowerLimit }}
- {{ if le .PageNumber $maxLinks }}
- {{ $.Scratch.Set "pageNumFlag" true }}
- {{ end }}
- {{ else if ge $paginator.PageNumber $upperLimit }}
- {{ if gt .PageNumber (sub $paginator.TotalPages $maxLinks) }}
- {{ $.Scratch.Set "pageNumFlag" true }}
- {{ end }}
- {{ else }}
- {{ if and ( ge .PageNumber (sub $paginator.PageNumber $offsetLinks) ) ( le .PageNumber (add $paginator.PageNumber $offsetLinks) ) }}
- {{ $.Scratch.Set "pageNumFlag" true }}
- {{ end }}
- {{ end }}
- {{ else }}
- {{ $.Scratch.Set "pageNumFlag" true }}
- {{ end }}
- {{ if eq ($.Scratch.Get "pageNumFlag") true }}
- <div class="pag-item{{ if eq . $paginator }} pag-current{{ end }}">
- <a href="{{ .URL }}">{{ .PageNumber }}</a>
- </div>
- {{ end }}
- {{ end }}
- {{ if $paginator.HasNext }}
- <div class="pag-next">
- <a href="{{ $paginator.Next.URL }}"><i class="iconfont icon-chevron-forward-circle-sharp"></i></a>
- </div>
- {{ end }}
- {{ if ne $paginator.PageNumber $paginator.TotalPages }}
- <div class="pag-last">
- <a href="{{ $paginator.Last.URL }}"><i class="iconfont icon-caret-forward-circle-sharp"></i></a>
- </div>
- {{ end }}
-</div>
-{{ end }}
+{{- partial "pagination.html" (dict "context" . "pagi" $paginator) -}}
-{{ end }} \ No newline at end of file
+{{ end }}
diff --git a/layouts/partials/pagination.html b/layouts/partials/pagination.html
new file mode 100644
index 0000000..3db973f
--- /dev/null
+++ b/layouts/partials/pagination.html
@@ -0,0 +1,56 @@
+{{- $paginator := .pagi -}}
+{{- $scratch := newScratch -}}
+<!-- custom smart pagination -->
+{{- $offsetLinks := 2 -}}
+{{- $maxLinks := (add (mul $offsetLinks 2) 1) -}}
+{{- $lowerLimit := (add $offsetLinks 1) -}}
+{{- $upperLimit := (sub $paginator.TotalPages $offsetLinks) -}}
+{{- if gt $paginator.TotalPages 1 -}}
+<div class="pagination">
+ {{- if ne $paginator.PageNumber 1 -}}
+ <div class="pag-first">
+ <a href="{{ $paginator.First.URL }}"><i class="iconfont icon-caret-back-circle-sharp"></i></a>
+ </div>
+ {{- end -}}
+ {{- if $paginator.HasPrev -}}
+ <div class="pag-previous">
+ <a href="{{ $paginator.Prev.URL }}"><i class="iconfont icon-chevron-back-circle-sharp"></i></a>
+ </div>
+ {{- end -}}
+ {{- range $paginator.Pagers -}}
+ {{- $scratch.Set "pageNumFlag" false -}}
+ {{- if gt $paginator.TotalPages $maxLinks -}}
+ {{- if le $paginator.PageNumber $lowerLimit -}}
+ {{- if le .PageNumber $maxLinks -}}
+ {{- $scratch.Set "pageNumFlag" true -}}
+ {{- end -}}
+ {{- else if ge $paginator.PageNumber $upperLimit -}}
+ {{- if gt .PageNumber (sub $paginator.TotalPages $maxLinks) -}}
+ {{- $scratch.Set "pageNumFlag" true -}}
+ {{- end -}}
+ {{- else -}}
+ {{- if and ( ge .PageNumber (sub $paginator.PageNumber $offsetLinks) ) ( le .PageNumber (add $paginator.PageNumber $offsetLinks) ) -}}
+ {{- $scratch.Set "pageNumFlag" true -}}
+ {{- end -}}
+ {{- end -}}
+ {{- else -}}
+ {{- $scratch.Set "pageNumFlag" true -}}
+ {{- end -}}
+ {{- if eq ($scratch.Get "pageNumFlag") true -}}
+ <div class="pag-item{{ if eq . $paginator }} pag-current{{ end }}">
+ <a href="{{ .URL }}">{{- .PageNumber -}}</a>
+ </div>
+ {{- end -}}
+ {{- end -}}
+ {{- if $paginator.HasNext -}}
+ <div class="pag-next">
+ <a href="{{ $paginator.Next.URL }}"><i class="iconfont icon-chevron-forward-circle-sharp"></i></a>
+ </div>
+ {{- end -}}
+ {{- if ne $paginator.PageNumber $paginator.TotalPages -}}
+ <div class="pag-last">
+ <a href="{{ $paginator.Last.URL }}"><i class="iconfont icon-caret-forward-circle-sharp"></i></a>
+ </div>
+ {{- end -}}
+</div>
+{{- end -}}