Use full list of osm xml root attributes in builder templates
authorAndy Allan <git@gravitystorm.co.uk>
Wed, 9 Jan 2019 13:15:39 +0000 (14:15 +0100)
committerAndy Allan <git@gravitystorm.co.uk>
Wed, 9 Jan 2019 13:15:39 +0000 (14:15 +0100)
app/views/api/permissions.builder
app/views/notes/index.xml.builder
app/views/notes/show.xml.builder
app/views/users/api_read.builder
app/views/users/api_users.builder
lib/osm.rb

index 6d26a9e532521d05f826c3a38edb8a9d0462bb8e..f97dd55f88fbbe0c83cde0ee0653ccfcc76a80f4 100644 (file)
@@ -1,6 +1,6 @@
 # create list of permissions
 xml.instruct! :xml, :version => "1.0"
-xml.osm("version" => API_VERSION.to_s, "generator" => "OpenStreetMap Server") do
+xml.osm(OSM::API.new.xml_root_attributes) do
   xml.permissions do
     @permissions.each do |permission|
       xml.permission :name => permission
index c1c2be7e40a79d2e1eec16a6129443d2119c7f49..286b1e1ccecd0b8513e77d41bc442aff826e21a1 100644 (file)
@@ -1,5 +1,5 @@
 xml.instruct!
 
-xml.osm(:version => API_VERSION, :generator => GENERATOR) do |osm|
+xml.osm(OSM::API.new.xml_root_attributes) do |osm|
   osm << (render(:partial => "note", :collection => @notes) || "")
 end
index f16cda3a620746dbef9bdc20b3f8c19849ddd4c1..51b3daebd330db43c1cae2036a4efcff42cf2781 100644 (file)
@@ -1,5 +1,5 @@
 xml.instruct!
 
-xml.osm(:version => API_VERSION, :generator => GENERATOR) do |osm|
+xml.osm(OSM::API.new.xml_root_attributes) do |osm|
   osm << render(:partial => "note", :object => @note)
 end
index 1598f3c535c59dec65af27a0402cb3bc884fb162..78533279c6adcec93c86c2d820d328c80ad04247 100644 (file)
@@ -1,4 +1,4 @@
 xml.instruct! :xml, :version => "1.0"
-xml.osm("version" => API_VERSION, "generator" => GENERATOR) do |osm|
+xml.osm(OSM::API.new.xml_root_attributes) do |osm|
   osm << render(:partial => "api_user", :object => @user)
 end
index 1d2475743ae931c9a5eaf3a166e3688eb5112202..a3c0f4d9a493e2168e40257dbad4739ca47694de 100644 (file)
@@ -1,4 +1,4 @@
 xml.instruct! :xml, :version => "1.0"
-xml.osm("version" => API_VERSION, "generator" => GENERATOR) do |osm|
+xml.osm(OSM::API.new.xml_root_attributes) do |osm|
   osm << render(:partial => "api_user", :collection => @users)
 end
index 841cce17b8f49dba022de129d7d50b04aba63335..1951e3c31287f82d1bc15929a17573834e3a0c6e 100644 (file)
@@ -494,14 +494,20 @@ module OSM
       doc = XML::Document.new
       doc.encoding = XML::Encoding::UTF_8
       root = XML::Node.new "osm"
-      root["version"] = API_VERSION.to_s
-      root["generator"] = GENERATOR
-      root["copyright"] = COPYRIGHT_OWNER
-      root["attribution"] = ATTRIBUTION_URL
-      root["license"] = LICENSE_URL
+      xml_root_attributes.each do |k, v|
+        root[k] = v
+      end
       doc.root = root
       doc
     end
+
+    def xml_root_attributes
+      { "version" => API_VERSION.to_s,
+        "generator" => GENERATOR,
+        "copyright" => COPYRIGHT_OWNER,
+        "attribution" => ATTRIBUTION_URL,
+        "license" => LICENSE_URL }
+    end
   end
 
   def self.ip_to_country(ip_address)