From 9f3dace353d08417d23624781f059bd61dd56c52 Mon Sep 17 00:00:00 2001 From: Aaron Lidman Date: Tue, 5 Nov 2013 12:25:54 -0800 Subject: [PATCH] Improve pagination --- app/assets/stylesheets/common.css.scss | 4 ++++ app/controllers/browse_controller.rb | 6 +++--- app/views/browse/_paging_nav.html.erb | 19 ++++++++++--------- app/views/browse/changeset.html.erb | 12 ++++++------ 4 files changed, 23 insertions(+), 18 deletions(-) diff --git a/app/assets/stylesheets/common.css.scss b/app/assets/stylesheets/common.css.scss index 3fddd669e..6e1c8e016 100644 --- a/app/assets/stylesheets/common.css.scss +++ b/app/assets/stylesheets/common.css.scss @@ -1013,6 +1013,10 @@ a.donate { } } + .paginate ul { + padding-left: 20px; + } + .browse-field { margin-bottom: 10px; diff --git a/app/controllers/browse_controller.rb b/app/controllers/browse_controller.rb index 9f0683aef..2820e242d 100644 --- a/app/controllers/browse_controller.rb +++ b/app/controllers/browse_controller.rb @@ -62,9 +62,9 @@ class BrowseController < ApplicationController @type = "changeset" @changeset = Changeset.find(params[:id]) - @node_pages, @nodes = paginate(:old_nodes, :conditions => {:changeset_id => @changeset.id}, :per_page => 20, :parameter => 'node_page') - @way_pages, @ways = paginate(:old_ways, :conditions => {:changeset_id => @changeset.id}, :per_page => 20, :parameter => 'way_page') - @relation_pages, @relations = paginate(:old_relations, :conditions => {:changeset_id => @changeset.id}, :per_page => 20, :parameter => 'relation_page') + @node_pages, @nodes = paginate(:old_nodes, :conditions => {:changeset_id => @changeset.id}, :per_page => 10, :parameter => 'node_page') + @way_pages, @ways = paginate(:old_ways, :conditions => {:changeset_id => @changeset.id}, :per_page => 10, :parameter => 'way_page') + @relation_pages, @relations = paginate(:old_relations, :conditions => {:changeset_id => @changeset.id}, :per_page => 10, :parameter => 'relation_page') @title = "#{I18n.t('browse.changeset.title')} | #{@changeset.id}" @next = Changeset.where("id > ?", @changeset.id).order(:id => :asc).first diff --git a/app/views/browse/_paging_nav.html.erb b/app/views/browse/_paging_nav.html.erb index f236b4465..f691d4504 100644 --- a/app/views/browse/_paging_nav.html.erb +++ b/app/views/browse/_paging_nav.html.erb @@ -1,14 +1,15 @@
<% current_page = pages.current_page %> -<%= t'browse.paging_nav.showing_page' %> -<%= current_page.number %> (<%= current_page.first_item %><% -if (current_page.first_item < current_page.last_item) # if more than 1 trace on page - %>-<%= current_page.last_item %><% -end %> -<%= t'browse.paging_nav.of'%> <%= pages.item_count %>) - <% if pages.page_count > 1 %> -| <%= raw pagination_links_each(pages, {}) { |n| link_to_page(n, page_param) } %> + <%= t'browse.paging_nav.showing_page' %> + <%= current_page.number %> (<%= current_page.first_item %><% + if (current_page.first_item < current_page.last_item) # if more than 1 trace on page + %>-<%= current_page.last_item %><% + end %> + <%= t'browse.paging_nav.of'%> <%= pages.item_count %>) + +· +<%= raw pagination_links_each(pages, {}) { |n| link_to_page(n, page_param) } %> <% end %> -
\ No newline at end of file + diff --git a/app/views/browse/changeset.html.erb b/app/views/browse/changeset.html.erb index e6a4db707..d8a60a66c 100644 --- a/app/views/browse/changeset.html.erb +++ b/app/views/browse/changeset.html.erb @@ -21,39 +21,39 @@ <%= render :partial => "tag_details", :object => @changeset %> <% unless @nodes.empty? %> -
+

<%= t 'browse.changeset_details.has_nodes', :count => @node_pages.item_count %>

    <% @nodes.each do |node| %>
  • <%= link_to h(printable_name(node, true)), { :action => "node", :id => node.node_id.to_s }, :class => link_class('node', node), :title => link_title(node) %>
  • <% end %>
+ <%= render :partial => 'paging_nav', :locals => { :pages => @node_pages, :page_param => "node_page"} %>
- <%= render :partial => 'paging_nav', :locals => { :pages => @node_pages, :page_param => "node_page"} %> <% end %> <% unless @ways.empty? %> -
+

<%= t 'browse.changeset_details.has_ways', :count => @way_pages.item_count %>

    <% @ways.each do |way| %>
  • <%= link_to h(printable_name(way, true)), { :action => "way", :id => way.way_id.to_s }, :class => link_class('way', way), :title => link_title(way) %>
  • <% end %>
+ <%= render :partial => 'paging_nav', :locals => { :pages => @way_pages, :page_param => "way_page" } %>
- <%= render :partial => 'paging_nav', :locals => { :pages => @way_pages, :page_param => "way_page" } %> <% end %> <% unless @relations.empty? %> -
+

<%= t 'browse.changeset_details.has_relations', :count => @relation_pages.item_count %>

    <% @relations.each do |relation| %>
  • <%= link_to h(printable_name(relation, true)), { :action => "relation", :id => relation.relation_id.to_s }, :class => link_class('relation', relation), :title => link_title(relation) %>
  • <% end %>
+ <%= render :partial => 'paging_nav', :locals => { :pages => @relation_pages, :page_param => "relation_page" } %>
- <%= render :partial => 'paging_nav', :locals => { :pages => @relation_pages, :page_param => "relation_page" } %> <% end %>
-- 2.43.2