Restore prev/next changeset by user links
authorJohn Firebaugh <john.firebaugh@gmail.com>
Fri, 22 Nov 2013 20:13:12 +0000 (12:13 -0800)
committerJohn Firebaugh <john.firebaugh@gmail.com>
Fri, 22 Nov 2013 20:17:27 +0000 (12:17 -0800)
app/controllers/browse_controller.rb
app/views/browse/changeset.html.erb

index 29cd670..cdcd906 100644 (file)
@@ -60,6 +60,10 @@ class BrowseController < ApplicationController
     @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')
+    if @changeset.user.data_public?
+      @next_by_user = @changeset.user.changesets.where("id > ?", @changeset.id).reorder(:id => :asc).first
+      @prev_by_user = @changeset.user.changesets.where("id < ?", @changeset.id).reorder(:id => :desc).first
+    end
   rescue ActiveRecord::RecordNotFound
     render :action => "not_found", :status => :not_found
   end
index aa333cf..736abf1 100644 (file)
   <% end %>
 </div>
 
+<% if @next_by_user || @prev_by_user %>
+  <div class='secondary-actions'>
+    <% if @prev_by_user %>
+      <%= link_to "<< #{@prev_by_user.id}", :id => @prev_by_user.id %>
+      &middot;
+    <% end %>
+    <%=
+        user = (@prev_by_user || @next_by_user).user.display_name
+        link_to user, :controller => "changeset", :action => "list", :display_name => user
+    %>
+    <% if @next_by_user %>
+      &middot;
+      <%= link_to "#{@next_by_user.id} >>", :id => @next_by_user.id %>
+    <% end %>
+  </div>
+<% end %>
+
 <div class='secondary-actions'>
   <%= link_to(t('browse.changeset.changesetxml'), :controller => "changeset", :action => "read") %>
   &middot;