rosa-build/lib/ext/angularjs_link_renderer.rb

44 lines
925 B
Ruby

class Array
def html_safe
self
end
end
class AngularjsLinkRenderer < WillPaginate::ActionView::LinkRenderer
def to_html
pagination.map do |item|
item.is_a?(Fixnum) ? page_number(item) : send(item)
end
end
protected
def page_number(page)
unless page == current_page
{:active => true, :number => page, :type => :page}
else
{:active => false, :number => page, :type => :first}
end
end
def gap
nil
end
def next_page
num = @collection.current_page < @collection.total_pages && @collection.current_page + 1
previous_or_next_page(num, @options[:next_label], :next_page)
end
def previous_or_next_page(page, text, classname)
if page
{:active => true, :number => page, :type => classname}
else
{:active => false, :number => page, :type => classname}
end
end
end