From 9e181739e87f72adc8b749df7fa28adcec0df1a0 Mon Sep 17 00:00:00 2001 From: Anthony Alberto Date: Sun, 10 Feb 2013 16:44:53 -0800 Subject: [PATCH] Issue #310 fixed. Refactored code to use a single method to know if a tag page should be displayed. --- kaminari-core/app/views/kaminari/_paginator.html.erb | 2 +- kaminari-core/app/views/kaminari/_paginator.html.haml | 2 +- kaminari-core/app/views/kaminari/_paginator.html.slim | 2 +- kaminari-core/lib/kaminari/helpers/paginator.rb | 5 +++++ 4 files changed, 8 insertions(+), 3 deletions(-) diff --git a/kaminari-core/app/views/kaminari/_paginator.html.erb b/kaminari-core/app/views/kaminari/_paginator.html.erb index 26689bd..26e0ca2 100644 --- a/kaminari-core/app/views/kaminari/_paginator.html.erb +++ b/kaminari-core/app/views/kaminari/_paginator.html.erb @@ -11,7 +11,7 @@ <%= first_page_tag unless current_page.first? %> <%= prev_page_tag unless current_page.first? %> <% each_page do |page| -%> - <% if page.left_outer? || page.right_outer? || page.inside_window? -%> + <% if page.display_tag? -%> <%= page_tag page %> <% elsif !page.was_truncated? -%> <%= gap_tag %> diff --git a/kaminari-core/app/views/kaminari/_paginator.html.haml b/kaminari-core/app/views/kaminari/_paginator.html.haml index 4f33e2d..0a34338 100644 --- a/kaminari-core/app/views/kaminari/_paginator.html.haml +++ b/kaminari-core/app/views/kaminari/_paginator.html.haml @@ -10,7 +10,7 @@ = first_page_tag unless current_page.first? = prev_page_tag unless current_page.first? - each_page do |page| - - if page.left_outer? || page.right_outer? || page.inside_window? + - if page.display_tag? = page_tag page - elsif !page.was_truncated? = gap_tag diff --git a/kaminari-core/app/views/kaminari/_paginator.html.slim b/kaminari-core/app/views/kaminari/_paginator.html.slim index 6a587d7..fd263b8 100644 --- a/kaminari-core/app/views/kaminari/_paginator.html.slim +++ b/kaminari-core/app/views/kaminari/_paginator.html.slim @@ -11,7 +11,7 @@ == first_page_tag unless current_page.first? == prev_page_tag unless current_page.first? - each_page do |page| - - if page.left_outer? || page.right_outer? || page.inside_window? + - if page.display_tag? == page_tag page - elsif !page.was_truncated? == gap_tag diff --git a/kaminari-core/lib/kaminari/helpers/paginator.rb b/kaminari-core/lib/kaminari/helpers/paginator.rb index 2c7a7f9..e6339e7 100644 --- a/kaminari-core/lib/kaminari/helpers/paginator.rb +++ b/kaminari-core/lib/kaminari/helpers/paginator.rb @@ -159,6 +159,11 @@ module Kaminari @last.is_a? Gap end + #Should we display the link tag? + def display_tag? + left_outer? || right_outer? || inside_window? || single_gap? + end + def to_i #:nodoc: number end