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