|
|
|
<% if (paginate.pageCnt > 1) { %>
|
|
|
|
<div style="text-align: center; ">
|
|
|
|
<div class="ui pagination menu" style="box-shadow: none; ">
|
|
|
|
<a class="<% if (paginate.currPage === 1) { %> disabled<% } %> icon item" <% if (paginate.currPage !== 1) { %>href="<%= syzoj.utils.makeUrl(req, Object.assign({}, req.query, { page: paginate.currPage - 1 })) %>" <% } %>id="page_prev">
|
|
|
|
<i class="left chevron icon"></i>
|
|
|
|
</a>
|
|
|
|
<%
|
|
|
|
let leftCnt = paginate.currPage - 2, rightCnt = paginate.pageCnt - paginate.currPage, omitLeft, omitRight;
|
|
|
|
if (leftCnt + rightCnt > 15) {
|
|
|
|
if (leftCnt <= 7) {
|
|
|
|
rightCnt = 14 - leftCnt;
|
|
|
|
omitRight = true;
|
|
|
|
} else if (rightCnt <= 7) {
|
|
|
|
leftCnt = 14 - rightCnt;
|
|
|
|
omitLeft = true;
|
|
|
|
} else {
|
|
|
|
rightCnt = leftCnt = 7;
|
|
|
|
omitLeft = omitRight = true;
|
|
|
|
}
|
|
|
|
} %>
|
|
|
|
|
|
|
|
<% if (paginate.currPage !== 1) { %>
|
|
|
|
<a class="item" href="<%= syzoj.utils.makeUrl(req, Object.assign({}, req.query, { page: 1 })) %>"><%= 1 %></a>
|
|
|
|
<% } %>
|
|
|
|
|
|
|
|
<% if (omitLeft) { %>
|
|
|
|
<div class="disabled item">...</div>
|
|
|
|
<% } %>
|
|
|
|
|
|
|
|
<% for (let i = paginate.currPage - leftCnt; i < paginate.currPage; i++) { %>
|
|
|
|
<a class="item" href="<%= syzoj.utils.makeUrl(req, Object.assign({}, req.query, { page: i })) %>"><%= i %></a>
|
|
|
|
<% } %>
|
|
|
|
|
|
|
|
<a class="active item" href="<%= syzoj.utils.makeUrl(req, Object.assign({}, req.query, { page: paginate.currPage })) %>"><%= paginate.currPage %></a>
|
|
|
|
|
|
|
|
<% for (let i = paginate.currPage + 1; i <= paginate.currPage + rightCnt - 1; i++) { %>
|
|
|
|
<a class="item" href="<%= syzoj.utils.makeUrl(req, Object.assign({}, req.query, { page: i })) %>"><%= i %></a>
|
|
|
|
<% } %>
|
|
|
|
|
|
|
|
<% if (omitRight) { %>
|
|
|
|
<div class="disabled item">...</div>
|
|
|
|
<% } %>
|
|
|
|
|
|
|
|
<% if (paginate.currPage !== paginate.pageCnt) { %>
|
|
|
|
<a class="item" href="<%= syzoj.utils.makeUrl(req, Object.assign({}, req.query, { page: paginate.pageCnt })) %>"><%= paginate.pageCnt %></a>
|
|
|
|
<% } %>
|
|
|
|
|
|
|
|
<a class="<% if (paginate.currPage === paginate.pageCnt) { %> disabled<% } %> icon item" <% if (paginate.currPage !== paginate.pageCnt) { %>href="<%= syzoj.utils.makeUrl(req, Object.assign({}, req.query, { page: paginate.currPage + 1 })) %>" <% } %>id="page_next">
|
|
|
|
<i class="right chevron icon"></i>
|
|
|
|
</a>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<% } %>
|