% my $page_param = stash( 'page_param' ) || 'page';
% my $current_page = stash( 'current_page' ) || param( $page_param ) || 1;
<ul class="pagination" id="<%= stash( 'id' ) %>">
% if ( $current_page > 1 ) {
<li class="page-item">
<a class="page-link" href="<%= url_with->query( $page_param => $current_page - 1 ) %>">
Previous
</a>
</li>
% } else {
<li class="page-item disabled">
<span class="page-link">Previous</span>
</li>
% }
% for my $page ( 1..$total_pages ) {
% if ( $page == $current_page ) {
<li class="page-item active" aria-current="page">
<span class="page-link">
<%= $page %>
<span class="sr-only">(current)</span>
</span>
</li>
% } else {
<li class="page-item">
<a class="page-link" href="<%= url_with->query( $page_param => $page ) %>">
<%= $page %>
</a>
</li>
% }
% }
% if ( $current_page < $total_pages ) {
<li class="page-item">
<a class="page-link" href="<%= url_with->query( $page_param => $current_page + 1 ) %>">
Next
</a>
</li>
% } else {
<li class="page-item disabled">
<span class="page-link">Next</span>
</li>
% }
</ul>