Return GPX traces as application/gpx+xml instead of text/xml
authorTom Hughes <tom@compton.nu>
Mon, 9 Sep 2013 15:23:38 +0000 (16:23 +0100)
committerTom Hughes <tom@compton.nu>
Mon, 9 Sep 2013 15:23:38 +0000 (16:23 +0100)
app/controllers/trace_controller.rb
app/models/trace.rb

index 0725957bf486ec0b48be40cc9a4e3f646d9a42ed..d54778c6e52018ac5cf1d1d172acd944b67f20fc 100644 (file)
@@ -151,8 +151,8 @@ class TraceController < ApplicationController
     if trace.visible? and (trace.public? or (@user and @user == trace.user))
       if Acl.no_trace_download(request.remote_ip)
         render :text => "", :status => :forbidden
-      elsif request.format == Mime::XML
-        send_file(trace.xml_file, :filename => "#{trace.id}.xml", :type => Mime::XML.to_s, :disposition => 'attachment')
+      elsif request.format == Mime::XML or request.format == Mime::GPX
+        send_file(trace.xml_file, :filename => "#{trace.id}.xml", :type => request.format.to_s, :disposition => 'attachment')
       else
         send_file(trace.trace_name, :filename => "#{trace.id}#{trace.extension_name}", :type => trace.mime_type, :disposition => 'attachment')
       end
@@ -308,8 +308,8 @@ class TraceController < ApplicationController
     trace = Trace.find(params[:id])
 
     if trace.public? or trace.user == @user
-      if request.format == Mime::XML
-        send_file(trace.xml_file, :filename => "#{trace.id}.xml", :type => Mime::XML.to_s, :disposition => 'attachment')
+      if request.format == Mime::XML or request.format == Mime::GPX
+        send_file(trace.xml_file, :filename => "#{trace.id}.xml", :type => request.format.to_s, :disposition => 'attachment')
       else
         send_file(trace.trace_name, :filename => "#{trace.id}#{trace.extension_name}", :type => trace.mime_type, :disposition => 'attachment')
       end
index 5e609786d4d10ffce7b70120afcdd8fa5cef6622..1553c894bce97be04a87e8a4ffa2b3cbec3acad2 100644 (file)
@@ -112,7 +112,7 @@ class Trace < ActiveRecord::Base
     elsif zipped
       mimetype = "application/x-zip"
     else
-      mimetype = "text/xml"
+      mimetype = "application/gpx+xml"
     end
 
     return mimetype