]> git.openstreetmap.org Git - rails.git/blobdiff - app/controllers/node_controller.rb
Eager load nodes and node tags for the way when doing a getway call.
[rails.git] / app / controllers / node_controller.rb
index eed00a01606c01e24581ecd80c47568bc5039d47..6e96d31ca4cac18a5a9130369eade7b402056083 100644 (file)
@@ -5,8 +5,9 @@ class NodeController < ApplicationController
 
   session :off
   before_filter :authorize, :only => [:create, :update, :delete]
-  before_filter :check_write_availability, :only => [:create, :update, :delete]
-  before_filter :check_read_availability, :except => [:create, :update, :delete]
+  before_filter :require_public_data, :only => [:create, :update, :delete]
+  before_filter :check_api_writable, :only => [:create, :update, :delete]
+  before_filter :check_api_readable, :except => [:create, :update, :delete]
   after_filter :compress_output
 
   # Create a node from XML.
@@ -44,21 +45,6 @@ class NodeController < ApplicationController
     end
   end
   
-  # Dump a specific version of the node based on the given params[:id] and params[:version]
-  def version
-    begin
-      node = Node.find(:first, :conditions => { :id => params[:id], :version => params[:version] } )
-      if node.visible
-        response.headers['Last-Modified'] = node.timestamp.rfc822
-        render :text => node.to_xml.to_s, :content_type => "text/xml"
-      else
-        render :nothing => true, :status => :gone
-      end
-    rescue ActiveRecord::RecordNotFound
-      render :nothing => true, :status => :not_found
-    end
-  end
-
   # Update a node from given XML
   def update
     begin
@@ -99,7 +85,7 @@ class NodeController < ApplicationController
     end
   end
 
-  # WTF does this do?
+  # Dump the details on many nodes whose ids are given in the "nodes" parameter.
   def nodes
     ids = params['nodes'].split(',').collect { |n| n.to_i }