From: Tom Hughes Date: Tue, 17 Jul 2007 14:45:04 +0000 (+0000) Subject: Improve MIME type determination for trace files. X-Git-Tag: live~8323 X-Git-Url: https://git.openstreetmap.org/rails.git/commitdiff_plain/16358a1d39d96a2d04ab410731c9edcdf155606b Improve MIME type determination for trace files. --- diff --git a/app/models/trace.rb b/app/models/trace.rb index 7097e0973..ed0ba72e8 100644 --- a/app/models/trace.rb +++ b/app/models/trace.rb @@ -73,7 +73,22 @@ class Trace < ActiveRecord::Base end def mime_type - return `file -bi #{trace_name}`.chomp + filetype = `file -bz #{trace_name}`.chomp + gzipped = filetype =~ /gzip compressed/ + bzipped = filetype =~ /bzip2 compressed/ + zipped = filetype =~ /Zip archive/ + + if gzipped then + mimetype = "application/x-gzip" + elsif bzipped then + mimetype = "application/x-bzip2" + elsif zipped + mimetype = "application/x-zip" + else + mimetype = "text/xml" + end + + return mimetype end def extension_name