- @next = Changeset.find(:first, :order => "id ASC", :conditions => [ "id > :id", { :id => @changeset.id }] )
- @prev = Changeset.find(:first, :order => "id DESC", :conditions => [ "id < :id", { :id => @changeset.id }] )
+ @next = Changeset.where("id > ?", @changeset.id).order("id ASC").first
+ @prev = Changeset.where("id < ?", @changeset.id).order("id DESC").first
+
+ if @changeset.user.data_public?
+ @next_by_user = Changeset.where("user_id = ? AND id > ?", @changeset.user_id, @changeset.id).order("id ASC").first
+ @prev_by_user = Changeset.where("user_id = ? AND id < ?", @changeset.user_id, @changeset.id).order("id DESC").first
+ end
+ rescue ActiveRecord::RecordNotFound
+ render :action => "not_found", :status => :not_found
+ end