<!-- Paginator Links -->
<div class="paginator-links">
  {% if include.maxPages %}
    {% assign maxPages = include.maxPages %}
  {% else %}
    <!-- maxPages attribute not passed in Liquid template, defaulting to 5 -->
    {% assign maxPages = 5 %}
  {% endif %}

  {% assign halfPages = maxPages | divided_by: 2 %}
  {% assign right-margin = paginator.total_pages | minus: paginator.page %}
  {% if paginator.page <= halfPages %}
    <!-- left-align -->
    {% assign start = 1 %}
    {% if paginator.total_pages > maxPages %}
        {% assign end = maxPages %}
    {% else %}
        {% assign end = paginator.total_pages %}
    {% endif %}
  {% elsif right-margin <= halfPages %}
    <!-- right-align -->
    {% assign start = paginator.total_pages | minus: maxPages | plus: 1 | append: ',' | append: 1 | split: ',' | sort | last | plus: 0 %}
    {% assign end = paginator.total_pages %}
  {% else %}
    <!-- center-align -->
    {% assign position-less-half = paginator.page | minus: halfPages %}
    {% if position-less-half < 1 %}
        {% assign start = 1 %}
    {% else %}
        {% assign start = position-less-half %}
    {% endif %}

    {% assign position-plus-half = paginator.page | plus: halfPages %}
    {% if position-plus-half > paginator.total_pages %}
        {% assign end = paginator.total_pages %}
    {% else %}
        {% assign end = position-plus-half %}
    {% endif %}
  {% endif %}

  <!-- First page -->
  {% if paginator.previous_page %}
    <a href="{{ site.baseurl }}/" class="first-page"></a>
  {% else %}
    <span class="first-page"></span>
  {% endif %}

  <!-- Previous page -->
  {% if paginator.previous_page %}
    <a href="{{ site.baseurl }}/{{ paginator.previous_page_path }}" class="previous-page"></a>
  {% else %}
    <span class="previous-page"></span>
  {% endif %}

  <!-- Start ellipsis -->
  {% if start > 1 %}
    <span class="start-ellipsis"></span>
  {% endif %}

    <!-- Page numbers -->
    <span class="numbers">
  {% for num  in (start..end)%}
  	{% if num == paginator.page %}
  	  <span class="number current">{{ num }}</span>
  	{% elsif num == 1 %}
  	  <a class="number" href="{{ site.baseurl }}/">{{ num }}</a>
  	{% else %}
  	  <a class="number" href="{{ site.baseurl }}/page{{ num }}">{{ num }}</a>
  	{% endif %}
    {% unless forloop.last %}
      <span class="seperator"></span>
    {% endunless %}
  {% endfor %}
  </span>

  <!-- End ellipsis -->
  {% if end < paginator.total_pages %}
    <span class="end-ellipsis"></span>
  {% endif %}

  <!-- Next page -->
  {% if paginator.next_page %}
    <a href="{{ site.baseurl }}/{{ paginator.next_page_path }}" class="next-page"></a>
  {% else %}
    <span class="next-page"></span>
  {% endif %}

  <!-- Last page -->
  {% if paginator.next_page %}
    <a href="{{ site.baseurl }}/page{{ paginator.total_pages }}" class="last-page"></a>
  {% else %}
    <span class="last-page"></span>
  {% endif %}
</div>