Used unredacted scope rather than explicit SQL

This commit is contained in:
Matt Amos 2012-04-04 15:13:17 +01:00 committed by Tom Hughes
parent 7da8a5a1a8
commit eca8f6e849
2 changed files with 4 additions and 4 deletions

View file

@ -359,13 +359,13 @@ class AmfController < ApplicationController
amf_handle_error_with_timeout("'getway_old' #{id}, #{timestamp}", 'way',id) do
if timestamp == ''
# undelete
old_way = OldWay.where(:visible => true, :way_id => id, :redaction_id => nil).order("version DESC").first
old_way = OldWay.where(:visible => true, :way_id => id).unredacted.order("version DESC").first
points = old_way.get_nodes_undelete unless old_way.nil?
else
begin
# revert
timestamp = DateTime.strptime(timestamp.to_s, "%d %b %Y, %H:%M:%S")
old_way = OldWay.where("way_id = ? AND timestamp <= ? AND redaction_id is NULL", id, timestamp).order("timestamp DESC").first
old_way = OldWay.where("way_id = ? AND timestamp <= ?", id, timestamp).unredacted.order("timestamp DESC").first
unless old_way.nil?
points = old_way.get_nodes_revert(timestamp)
if !old_way.visible
@ -782,7 +782,7 @@ class AmfController < ApplicationController
n = Node.find(id)
v = n.version
unless timestamp == ''
n = OldNode.where("node_id = ? AND timestamp <= ? AND redaction_id is NULL", id, timestamp).order("timestamp DESC").first
n = OldNode.where("node_id = ? AND timestamp <= ?", id, timestamp).unredacted.order("timestamp DESC").first
end
if n

View file

@ -146,7 +146,7 @@ class OldWay < ActiveRecord::Base
def get_nodes_revert(timestamp)
points=[]
self.nds.each do |n|
oldnode = OldNode.where('node_id = ? AND timestamp <= ? AND redaction_id is NULL', n, timestamp).order("timestamp DESC").first
oldnode = OldNode.where('node_id = ? AND timestamp <= ?', n, timestamp).unredacted.order("timestamp DESC").first
curnode = Node.find(n)
id = n; reuse = curnode.visible
if oldnode.lat != curnode.lat or oldnode.lon != curnode.lon or oldnode.tags != curnode.tags then