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

pagination.html « partials « layouts - github.com/amzrk2/hugo-theme-fuji.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: 3db973f3cef62ff231f15982c5e561bf78642743 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
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 -}}