forked from moodle/moodle
-
Notifications
You must be signed in to change notification settings - Fork 0
/
paging_bar.mustache
99 lines (94 loc) · 3.64 KB
/
paging_bar.mustache
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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
{{!
This file is part of Moodle - http://moodle.org/
Moodle is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
Moodle is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with Moodle. If not, see <http://www.gnu.org/licenses/>.
}}
{{!
@template core/paging_bar
This template renders the horizontal bar with page links, e.g.
| « | 1 | 2 | 3 | » |
Example context (json):
{
"previous": null,
"next": {
"page": 2,
"url": "./page.php?p=1"
},
"first": null,
"last": {
"page": 100,
"url": "./page.php?p=99"
},
"label": "Page",
"pages": [
{
"page": 1,
"active": true,
"url": null
},
{
"page": 2,
"active": false,
"url": "./page.php?p=1"
}
],
"haspages": true,
"pagesize": 10
}
}}
{{#haspages}}
<nav aria-label="{{label}}" class="pagination pagination-centered justify-content-center">
<ul class="mt-1 pagination " data-page-size="{{pagesize}}">
{{#previous}}
<li class="page-item" data-page-number="{{page}}">
<a href="{{url}}" class="page-link" aria-label="{{# str }} previouspage, moodle {{/ str }}">
<span aria-hidden="true">«</span>
<span class="sr-only">{{#str}}previouspage, moodle{{/str}}</span>
</a>
</li>
{{/previous}}
{{#first}}
<li class="page-item" data-page-number="{{page}}">
<a href="{{url}}" class="page-link">{{page}}</a>
</li>
<li class="page-item disabled" data-page-number="{{page}}">
<span class="page-link">…</span>
</li>
{{/first}}
{{#pages}}
<li class="page-item {{#active}}active{{/active}}" data-page-number="{{page}}">
<a href="{{#url}}{{.}}{{/url}}{{^url}}#{{/url}}" class="page-link">
{{page}}
{{#active}}
<span class="sr-only">{{#str}}currentinparentheses, theme_boost{{/str}}</span>
{{/active}}
</a>
</li>
{{/pages}}
{{#last}}
<li class="page-item disabled" data-page-number="{{page}}">
<span class="page-link">…</span>
</li>
<li class="page-item" data-page-number="{{page}}">
<a href="{{url}}" class="page-link">{{page}}</a>
</li>
{{/last}}
{{#next}}
<li class="page-item" data-page-number="{{page}}">
<a href="{{url}}" class="page-link" aria-label="{{# str }} nextpage, moodle {{/ str }}">
<span aria-hidden="true">»</span>
<span class="sr-only">{{#str}}nextpage, moodle{{/str}}</span>
</a>
</li>
{{/next}}
</ul>
</nav>
{{/haspages}}