1{%- if paginator.total_pages > 1 -%} 2 <div class="pagination"> 3 4 {%- include snippets/get-locale-string.html key='STATISTICS' -%} 5 {%- assign _locale_statistics = __return -%} 6 7 {%- assign _post_count = site.posts | size -%} 8 {%- assign _page_count = paginator.total_pages -%} 9 <p>{{ _locale_statistics | replace: '[POST_COUNT]', _post_count | replace: '[PAGE_COUNT]', _page_count }}</p> 10 <div class="pagination__menu"> 11 <ul class="menu menu--nowrap"> 12 {%- assign _max_show = 5 -%} 13 {%- assign _max_show_modulo_two = _max_show | modulo: 2 -%} 14 {%- assign _length = paginator.total_pages -%} 15 {%- assign _length_mimus_one = _length | minus: 1 -%} 16 {%- assign _cur = paginator.page -%} 17 {%- assign _extra = _max_show | minus: 3 -%} 18 {%- assign _extra_half = _extra | divided_by: 2 -%} 19 20 {%- if _max_show > 4 and _max_show_modulo_two == 1 and paginator.total_pages > _max_show -%} 21 {%- assign _condition0 = _extra | divided_by: 2 | plus: 1 -%} 22 {%- assign _condition1 = _length | minus: _extra_half -%} 23 {%- if _cur <= _condition0 -%} 24 {%- assign _n0 = 2 -%} 25 {%- assign _n1 = _extra | plus: 2 -%} 26 {%- elsif _cur >= _condition1 -%} 27 {%- assign _n0 = _length | minus: _extra | minus: 1 -%} 28 {%- assign _n1 = _length | minus: 1 -%} 29 {%- else -%} 30 {%- assign _n0 = _cur | minus: _extra_half -%} 31 {%- assign _n1 = _cur | plus: _extra_half -%} 32 {%- endif -%} 33 {%- endif -%} 34 35 {%- if paginator.previous_page -%} 36 {%- include snippets/prepend-baseurl.html path=paginator.previous_page_path -%} 37 {%- assign _href = __return -%} 38 <li><a class="button button--secondary button--circle" href="{{ _href }}"> 39 <i class="fas fa-angle-left"></i> 40 </a></li> 41 {%- else -%} 42 <li><div class="button button--secondary button--circle disabled"> 43 <i class="fas fa-angle-left"></i> 44 </div></li> 45 {%- endif -%} 46 47 {%- for page in (1.._length) -%} 48 {%- if page == _cur -%} 49 <li> 50 <div class="button button--primary button--circle focus"><span>{{ page }}</span></div> 51 </li> 52 53 {%- elsif page == 1 -%} 54 {%- assign _home_path = site.paths.home | default: site.data.variables.default.paths.home -%} 55 {%- include snippets/prepend-baseurl.html path=_home_path -%} 56 {%- assign _href = __return -%} 57 <li> 58 <a class="button button--secondary button--circle" href="{{ _href }}"><span>{{ page }}</span></a> 59 </li> 60 61 {%- else -%} 62 {%- if _n0 and _n1 -%} 63 {%- if page > 1 and page < _n0 -%} 64 {%- if page == 2 -%}<li><span class="pagination__omit"><i class="fas fa-ellipsis-h"></i></span></li>{%- endif -%} 65 {%- elsif page > _n1 and page < _length -%} 66 {%- if page == _length_mimus_one -%}<li><span class="pagination__omit"><i class="fas fa-ellipsis-h"></i></span></li>{%- endif -%} 67 {%- else -%} 68 {%- include snippets/prepend-baseurl.html path=site.paginate_path -%} 69 {%- assign _href = __return -%} 70 <li> 71 <a class="button button--secondary button--circle" href="{{ _href | replace: ':num', page }}"><span>{{ page }}</span></a> 72 </li> 73 {%- endif -%} 74 {%- else -%} 75 {%- include snippets/prepend-baseurl.html path=site.paginate_path -%} 76 {%- assign _href = __return -%} 77 <li> 78 <a class="button button--secondary button--circle" href="{{ _href | replace: ':num', page }}"><span>{{ page }}</span></a> 79 </li> 80 {%- endif -%} 81 {%- endif -%} 82 {%- endfor -%} 83 84 {%- if paginator.next_page -%} 85 {%- include snippets/prepend-baseurl.html path=paginator.next_page_path -%} 86 {%- assign _href = __return -%} 87 <li><a class="button button--secondary button--circle" href="{{ _href }}"> 88 <i class="fas fa-angle-right"></i> 89 </a></li> 90 {%- else -%} 91 <li><div class="button button--secondary button--circle disabled"> 92 <i class="fas fa-angle-right"></i> 93 </div></li> 94 {%- endif -%} 95 </ul> 96 </div> 97 </div> 98{%- endif -%}