From bcfd9d6849520fddfac80b70fbf3e96a8a8905f7 Mon Sep 17 00:00:00 2001 From: "vit.jonas@gmail.com" Date: Wed, 6 Jul 2011 17:09:55 +0000 Subject: [PATCH] * fixed Issue 99: Upload doesn't works correctly in different browsers * for opera by skipping flash runtime git-svn-id: http://redmine-dmsf.googlecode.com/svn/trunk/redmine_dmsf@189 5e329b0b-a2ee-ea63-e329-299493fc886d --- app/views/dmsf/_multi_upload.html.erb | 1 + assets/javascripts/bowser.min.js | 12 ++++++++++++ assets/javascripts/plupload/plupload.flash.js | 5 +++++ 3 files changed, 18 insertions(+) create mode 100644 assets/javascripts/bowser.min.js diff --git a/app/views/dmsf/_multi_upload.html.erb b/app/views/dmsf/_multi_upload.html.erb index aea3a75d..ab887ab1 100644 --- a/app/views/dmsf/_multi_upload.html.erb +++ b/app/views/dmsf/_multi_upload.html.erb @@ -65,6 +65,7 @@ <% content_for :header_tags do %> + <%= javascript_include_tag "bowser.min.js", :plugin => "redmine_dmsf" %> <%= javascript_include_tag "plupload/plupload.js", :plugin => "redmine_dmsf" %> <%= javascript_include_tag "plupload/plupload.flash.js", :plugin => "redmine_dmsf" %> <%= javascript_include_tag "plupload/plupload.gears.js", :plugin => "redmine_dmsf" %> diff --git a/assets/javascripts/bowser.min.js b/assets/javascripts/bowser.min.js new file mode 100644 index 00000000..c2e4ab12 --- /dev/null +++ b/assets/javascripts/bowser.min.js @@ -0,0 +1,12 @@ +/*! + * Bowser - a browser detector + * copyright Dustin Diaz 2011 + * https://github.com/ded/bowser + * MIT License + *//*! + * Bowser - a browser detector + * copyright Dustin Diaz 2011 + * https://github.com/ded/bowser + * MIT License + */ +!function(a){function i(){if(c)return{msie:1,version:b.match(/msie (\d+(\.\d+)?);/i)[1]};if(d)return{webkit:1,chrome:1,version:b.match(/chrome\/(\d+(\.\d+)?)/i)[1]};if(e)return{webkit:1,safari:1,version:b.match(/version\/(\d+(\.\d+)?)/i)[1]};if(f)return{opera:1,version:b.match(/version\/(\d+(\.\d+)?)/i)[1]};if(h){var a={gecko:1,version:b.match(/firefox\/(\d+(\.\d+)?)/i)[1]};g&&(a.firefox=1);return a}}var b=navigator.userAgent,c=/msie/i.test(b),d=/chrome/i.test(b),e=/safari/i.test(b)&&!d,f=/opera/i.test(b),g=/firefox/i.test(b),h=/gecko\//i.test(b),j=i();j.msie&&j.version>=6||j.chrome&&j.version>=8||j.firefox&&j.version>=3.6||j.safari&&j.version>=5||j.opera&&j.version>=9.5?j.a=!0:j.msie&&j.version<6||j.chrome&&j.version<8||j.firefox&&j.version<3.6||j.safari&&j.version<5||j.opera&&j.version<9.5?j.c=!0:j.x=!0,typeof module!="undefined"&&module.exports?module.exports.browser=j:a.bowser=j}(this) \ No newline at end of file diff --git a/assets/javascripts/plupload/plupload.flash.js b/assets/javascripts/plupload/plupload.flash.js index c0db314f..28941d97 100644 --- a/assets/javascripts/plupload/plupload.flash.js +++ b/assets/javascripts/plupload/plupload.flash.js @@ -90,6 +90,11 @@ init : function(uploader, callback) { var browseButton, flashContainer, flashVars, waitCount = 0, container = document.body; + if (bowser.opera) { + callback({success : false}); + return; + } + if (getFlashVersion() < 10) { callback({success : false}); return;