summaryrefslogtreecommitdiff
path: root/lib/uploadify/jquery.uploadify.min.js
diff options
context:
space:
mode:
authorBharat Mediratta <bharat@menalto.com>2013-05-09 01:40:46 -0400
committerBharat Mediratta <bharat@menalto.com>2013-05-09 01:40:46 -0400
commit80bb0f2222dd99ed2ce59e804b833bab63cc376a (patch)
treea5255a4615192c42473ef32bd841dc8c7bab0dd6 /lib/uploadify/jquery.uploadify.min.js
parent9f8435c7f5665f153407c2b1476dadc0a3ba34a1 (diff)
Strip URL fragments off of direct requests to uploadify SWF files.
Fixes #2068.
Diffstat (limited to 'lib/uploadify/jquery.uploadify.min.js')
-rw-r--r--lib/uploadify/jquery.uploadify.min.js64
1 files changed, 37 insertions, 27 deletions
diff --git a/lib/uploadify/jquery.uploadify.min.js b/lib/uploadify/jquery.uploadify.min.js
index 17127a71..c7edbeb1 100644
--- a/lib/uploadify/jquery.uploadify.min.js
+++ b/lib/uploadify/jquery.uploadify.min.js
@@ -1,27 +1,37 @@
-
-if(jQuery)(function(jQuery){jQuery.extend(jQuery.fn,{uploadify:function(options){jQuery(this).each(function(){settings=jQuery.extend({id:jQuery(this).attr('id'),uploader:'uploadify.swf',script:'uploadify.php',expressInstall:null,folder:'',height:30,width:110,cancelImg:'cancel.png',wmode:'opaque',scriptAccess:'sameDomain',fileDataName:'Filedata',method:'POST',queueSizeLimit:999,simUploadLimit:1,queueID:false,displayData:'percentage',onInit:function(){},onSelect:function(){},onQueueFull:function(){},onCheck:function(){},onCancel:function(){},onError:function(){},onProgress:function(){},onComplete:function(){},onAllComplete:function(){}},options);var pagePath=location.pathname;pagePath=pagePath.split('/');pagePath.pop();pagePath=pagePath.join('/')+'/';var data={};data.uploadifyID=settings.id;data.pagepath=pagePath;if(settings.buttonImg)data.buttonImg=escape(settings.buttonImg);if(settings.buttonText)data.buttonText=escape(settings.buttonText);if(settings.rollover)data.rollover=true;data.script=settings.script;data.folder=escape(settings.folder);if(settings.scriptData){var scriptDataString='';for(var name in settings.scriptData){scriptDataString+='&'+name+'='+settings.scriptData[name];}
-data.scriptData=escape(scriptDataString.substr(1));}
-data.width=settings.width;data.height=settings.height;data.wmode=settings.wmode;data.method=settings.method;data.queueSizeLimit=settings.queueSizeLimit;data.simUploadLimit=settings.simUploadLimit;if(settings.hideButton)data.hideButton=true;if(settings.fileDesc)data.fileDesc=settings.fileDesc;if(settings.fileExt)data.fileExt=settings.fileExt;if(settings.multi)data.multi=true;if(settings.auto)data.auto=true;if(settings.sizeLimit)data.sizeLimit=settings.sizeLimit;if(settings.checkScript)data.checkScript=settings.checkScript;if(settings.fileDataName)data.fileDataName=settings.fileDataName;if(settings.queueID)data.queueID=settings.queueID;if(settings.onInit()!==false){jQuery(this).css('display','none');jQuery(this).after('<div id="'+jQuery(this).attr('id')+'Uploader"></div>');swfobject.embedSWF(settings.uploader,settings.id+'Uploader',settings.width,settings.height,'9.0.24',settings.expressInstall,data,{'quality':'high','wmode':settings.wmode,'allowScriptAccess':settings.scriptAccess});if(settings.queueID==false){jQuery("#"+jQuery(this).attr('id')+"Uploader").after('<div id="'+jQuery(this).attr('id')+'Queue" class="uploadifyQueue"></div>');}}
-if(typeof(settings.onOpen)=='function'){jQuery(this).bind("uploadifyOpen",settings.onOpen);}
-jQuery(this).bind("uploadifySelect",{'action':settings.onSelect,'queueID':settings.queueID},function(event,ID,fileObj){if(event.data.action(event,ID,fileObj)!==false){var byteSize=Math.round(fileObj.size/1024*100)*.01;var suffix='KB';if(byteSize>1000){byteSize=Math.round(byteSize*.001*100)*.01;suffix='MB';}
-var sizeParts=byteSize.toString().split('.');if(sizeParts.length>1){byteSize=sizeParts[0]+'.'+sizeParts[1].substr(0,2);}else{byteSize=sizeParts[0];}
-if(fileObj.name.length>20){fileName=fileObj.name.substr(0,20)+'...';}else{fileName=fileObj.name;}
-queue='#'+jQuery(this).attr('id')+'Queue';if(event.data.queueID){queue='#'+event.data.queueID;}
-jQuery(queue).append('<div id="'+jQuery(this).attr('id')+ID+'" class="uploadifyQueueItem">\
- <div class="cancel">\
- <a href="javascript:jQuery(\'#'+jQuery(this).attr('id')+'\').uploadifyCancel(\''+ID+'\')"><img src="'+settings.cancelImg+'" border="0" /></a>\
- </div>\
- <span class="fileName"></span><span class="percentage"></span>\
- <div class="uploadifyProgress">\
- <div id="'+jQuery(this).attr('id')+ID+'ProgressBar" class="uploadifyProgressBar"><!--Progress Bar--></div>\
- </div>\
- </div>');jQuery('div#'+jQuery(this).attr('id')+ID+' span.fileName').text(fileName+' ('+byteSize+suffix+')');}});if(typeof(settings.onSelectOnce)=='function'){jQuery(this).bind("uploadifySelectOnce",settings.onSelectOnce);}
-jQuery(this).bind("uploadifyQueueFull",{'action':settings.onQueueFull},function(event,queueSizeLimit){if(event.data.action(event,queueSizeLimit)!==false){alert('The queue is full. The max size is '+queueSizeLimit+'.');}});jQuery(this).bind("uploadifyCheckExist",{'action':settings.onCheck},function(event,checkScript,fileQueueObj,folder,single){var postData=new Object();postData=fileQueueObj;postData.folder=pagePath+folder;if(single){for(var ID in fileQueueObj){var singleFileID=ID;}}
-jQuery.post(checkScript,postData,function(data){for(var key in data){if(event.data.action(event,checkScript,fileQueueObj,folder,single)!==false){var replaceFile=confirm("Do you want to replace the file "+data[key]+"?");if(!replaceFile){document.getElementById(jQuery(event.target).attr('id')+'Uploader').cancelFileUpload(key,true,true);}}}
-if(single){document.getElementById(jQuery(event.target).attr('id')+'Uploader').startFileUpload(singleFileID,true);}else{document.getElementById(jQuery(event.target).attr('id')+'Uploader').startFileUpload(null,true);}},"json");});jQuery(this).bind("uploadifyCancel",{'action':settings.onCancel},function(event,ID,fileObj,data,clearFast){if(event.data.action(event,ID,fileObj,data,clearFast)!==false){var fadeSpeed=(clearFast==true)?0:250;jQuery("#"+jQuery(this).attr('id')+ID).fadeOut(fadeSpeed,function(){jQuery(this).remove()});}});if(typeof(settings.onClearQueue)=='function'){jQuery(this).bind("uploadifyClearQueue",settings.onClearQueue);}
-var errorArray=[];jQuery(this).bind("uploadifyError",{'action':settings.onError},function(event,ID,fileObj,errorObj){if(event.data.action(event,ID,fileObj,errorObj)!==false){var fileArray=new Array(ID,fileObj,errorObj);errorArray.push(fileArray);jQuery("#"+jQuery(this).attr('id')+ID+" .percentage").text(" - "+errorObj.type+" Error");jQuery("#"+jQuery(this).attr('id')+ID).addClass('uploadifyError');}});jQuery(this).bind("uploadifyProgress",{'action':settings.onProgress,'toDisplay':settings.displayData},function(event,ID,fileObj,data){if(event.data.action(event,ID,fileObj,data)!==false){jQuery("#"+jQuery(this).attr('id')+ID+"ProgressBar").css('width',data.percentage+'%');if(event.data.toDisplay=='percentage')displayData=' - '+data.percentage+'%';if(event.data.toDisplay=='speed')displayData=' - '+data.speed+'KB/s';if(event.data.toDisplay==null)displayData=' ';jQuery("#"+jQuery(this).attr('id')+ID+" .percentage").text(displayData);}});jQuery(this).bind("uploadifyComplete",{'action':settings.onComplete},function(event,ID,fileObj,response,data){if(event.data.action(event,ID,fileObj,unescape(response),data)!==false){jQuery("#"+jQuery(this).attr('id')+ID+" .percentage").text(' - Completed');jQuery("#"+jQuery(this).attr('id')+ID).fadeOut(250,function(){jQuery(this).remove()});}});if(typeof(settings.onAllComplete)=='function'){jQuery(this).bind("uploadifyAllComplete",{'action':settings.onAllComplete},function(event,uploadObj){if(event.data.action(event,uploadObj)!==false){errorArray=[];}});}});},uploadifySettings:function(settingName,settingValue,resetObject){var returnValue=false;jQuery(this).each(function(){if(settingName=='scriptData'&&settingValue!=null){if(resetObject){var scriptData=settingValue;}else{var scriptData=jQuery.extend(settings.scriptData,settingValue);}
-var scriptDataString='';for(var name in scriptData){scriptDataString+='&'+name+'='+escape(scriptData[name]);}
-settingValue=scriptDataString.substr(1);}
-returnValue=document.getElementById(jQuery(this).attr('id')+'Uploader').updateSettings(settingName,settingValue);});if(settingValue==null){if(settingName=='scriptData'){var returnSplit=unescape(returnValue).split('&');var returnObj=new Object();for(var i=0;i<returnSplit.length;i++){var iSplit=returnSplit[i].split('=');returnObj[iSplit[0]]=iSplit[1];}
-returnValue=returnObj;}
-return returnValue;}},uploadifyUpload:function(ID){jQuery(this).each(function(){document.getElementById(jQuery(this).attr('id')+'Uploader').startFileUpload(ID,false);});},uploadifyCancel:function(ID){jQuery(this).each(function(){document.getElementById(jQuery(this).attr('id')+'Uploader').cancelFileUpload(ID,true,false);});},uploadifyClearQueue:function(){jQuery(this).each(function(){document.getElementById(jQuery(this).attr('id')+'Uploader').clearFileUploadQueue(false);});}})})(jQuery); \ No newline at end of file
+/*
+Uploadify v2.1.0
+Release Date: August 24, 2009
+
+Copyright (c) 2009 Ronnie Garcia, Travis Nickels
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+THE SOFTWARE.
+*/
+jQuery&&function(a){a.extend(a.fn,{uploadify:function(e){a(this).each(function(){settings=a.extend({id:a(this).attr("id"),uploader:"uploadify.swf",script:"uploadify.php",expressInstall:null,folder:"",height:30,width:110,cancelImg:"cancel.png",wmode:"opaque",scriptAccess:"sameDomain",fileDataName:"Filedata",method:"POST",queueSizeLimit:999,simUploadLimit:1,queueID:!1,displayData:"percentage",onInit:function(){},onSelect:function(){},onQueueFull:function(){},onCheck:function(){},onCancel:function(){},
+onError:function(){},onProgress:function(){},onComplete:function(){},onAllComplete:function(){}},e);var f=location.pathname,f=f.split("/");f.pop();var f=f.join("/")+"/",b={};b.uploadifyID=settings.id;b.pagepath=f;settings.buttonImg&&(b.buttonImg=escape(settings.buttonImg));settings.buttonText&&(b.buttonText=escape(settings.buttonText));settings.rollover&&(b.rollover=!0);b.script=settings.script;b.folder=escape(settings.folder);if(settings.scriptData){var g="",j;for(j in settings.scriptData)g+="&"+
+j+"="+settings.scriptData[j];b.scriptData=escape(g.substr(1))}b.width=settings.width;b.height=settings.height;b.wmode=settings.wmode;b.method=settings.method;b.queueSizeLimit=settings.queueSizeLimit;b.simUploadLimit=settings.simUploadLimit;settings.hideButton&&(b.hideButton=!0);settings.fileDesc&&(b.fileDesc=settings.fileDesc);settings.fileExt&&(b.fileExt=settings.fileExt);settings.multi&&(b.multi=!0);settings.auto&&(b.auto=!0);settings.sizeLimit&&(b.sizeLimit=settings.sizeLimit);settings.checkScript&&
+(b.checkScript=settings.checkScript);settings.fileDataName&&(b.fileDataName=settings.fileDataName);settings.queueID&&(b.queueID=settings.queueID);!1!==settings.onInit()&&(a(this).css("display","none"),a(this).after('<div id="'+a(this).attr("id")+'Uploader"></div>'),swfobject.embedSWF(settings.uploader,settings.id+"Uploader",settings.width,settings.height,"9.0.24",settings.expressInstall,b,{quality:"high",wmode:settings.wmode,allowScriptAccess:settings.scriptAccess}),!1==settings.queueID&&a("#"+a(this).attr("id")+
+"Uploader").after('<div id="'+a(this).attr("id")+'Queue" class="uploadifyQueue"></div>'));"function"==typeof settings.onOpen&&a(this).bind("uploadifyOpen",settings.onOpen);a(this).bind("uploadifySelect",{action:settings.onSelect,queueID:settings.queueID},function(k,d,b){if(!1!==k.data.action(k,d,b)){var c=0.01*Math.round(100*(b.size/1024)),h="KB";1E3<c&&(c=0.01*Math.round(0.1*c),h="MB");c=c.toString().split(".");c=1<c.length?c[0]+"."+c[1].substr(0,2):c[0];fileName=20<b.name.length?b.name.substr(0,
+20)+"...":b.name;queue="#"+a(this).attr("id")+"Queue";k.data.queueID&&(queue="#"+k.data.queueID);a(queue).append('<div id="'+a(this).attr("id")+d+'" class="uploadifyQueueItem">\t\t\t\t\t\t\t\t<div class="cancel">\t\t\t\t\t\t\t\t\t<a href="javascript:jQuery(\'#'+a(this).attr("id")+"').uploadifyCancel('"+d+'\')"><img src="'+settings.cancelImg+'" border="0" /></a>\t\t\t\t\t\t\t\t</div>\t\t\t\t\t\t\t\t<span class="fileName"></span><span class="percentage"></span>\t\t\t\t\t\t\t\t<div class="uploadifyProgress">\t\t\t\t\t\t\t\t\t<div id="'+
+a(this).attr("id")+d+'ProgressBar" class="uploadifyProgressBar">\x3c!--Progress Bar--\x3e</div>\t\t\t\t\t\t\t\t</div>\t\t\t\t\t\t\t</div>');a("div#"+a(this).attr("id")+d+" span.fileName").text(fileName+" ("+c+h+")")}});"function"==typeof settings.onSelectOnce&&a(this).bind("uploadifySelectOnce",settings.onSelectOnce);a(this).bind("uploadifyQueueFull",{action:settings.onQueueFull},function(a,b){!1!==a.data.action(a,b)&&alert("The queue is full. The max size is "+b+".")});a(this).bind("uploadifyCheckExist",
+{action:settings.onCheck},function(b,d,m,c,h){var e={},e=m;e.folder=f+c;if(h)for(var g in m)var j=g;a.post(d,e,function(f){for(var e in f)!1!==b.data.action(b,d,m,c,h)&&(confirm("Do you want to replace the file "+f[e]+"?")||document.getElementById(a(b.target).attr("id")+"Uploader").cancelFileUpload(e,!0,!0));h?document.getElementById(a(b.target).attr("id")+"Uploader").startFileUpload(j,!0):document.getElementById(a(b.target).attr("id")+"Uploader").startFileUpload(null,!0)},"json")});a(this).bind("uploadifyCancel",
+{action:settings.onCancel},function(b,d,f,c,e){!1!==b.data.action(b,d,f,c,e)&&a("#"+a(this).attr("id")+d).fadeOut(!0==e?0:250,function(){a(this).remove()})});"function"==typeof settings.onClearQueue&&a(this).bind("uploadifyClearQueue",settings.onClearQueue);var l=[];a(this).bind("uploadifyError",{action:settings.onError},function(b,d,e,c){!1!==b.data.action(b,d,e,c)&&(l.push([d,e,c]),a("#"+a(this).attr("id")+d+" .percentage").text(" - "+c.type+" Error"),a("#"+a(this).attr("id")+d).addClass("uploadifyError"))});
+a(this).bind("uploadifyProgress",{action:settings.onProgress,toDisplay:settings.displayData},function(b,d,e,c){!1!==b.data.action(b,d,e,c)&&(a("#"+a(this).attr("id")+d+"ProgressBar").css("width",c.percentage+"%"),"percentage"==b.data.toDisplay&&(displayData=" - "+c.percentage+"%"),"speed"==b.data.toDisplay&&(displayData=" - "+c.speed+"KB/s"),null==b.data.toDisplay&&(displayData=" "),a("#"+a(this).attr("id")+d+" .percentage").text(displayData))});a(this).bind("uploadifyComplete",{action:settings.onComplete},
+function(b,d,e,c,f){!1!==b.data.action(b,d,e,unescape(c),f)&&(a("#"+a(this).attr("id")+d+" .percentage").text(" - Completed"),a("#"+a(this).attr("id")+d).fadeOut(250,function(){a(this).remove()}))});"function"==typeof settings.onAllComplete&&a(this).bind("uploadifyAllComplete",{action:settings.onAllComplete},function(a,b){!1!==a.data.action(a,b)&&(l=[])})})},uploadifySettings:function(e,f,b){var g=!1;a(this).each(function(){if("scriptData"==e&&null!=f){var d=b?f:a.extend(settings.scriptData,f),c=
+"",h;for(h in d)c+="&"+h+"="+escape(d[h]);f=c.substr(1)}g=document.getElementById(a(this).attr("id")+"Uploader").updateSettings(e,f)});if(null==f){if("scriptData"==e){for(var j=unescape(g).split("&"),l={},k=0;k<j.length;k++){var d=j[k].split("=");l[d[0]]=d[1]}g=l}return g}},uploadifyUpload:function(e){a(this).each(function(){document.getElementById(a(this).attr("id")+"Uploader").startFileUpload(e,!1)})},uploadifyCancel:function(e){a(this).each(function(){document.getElementById(a(this).attr("id")+
+"Uploader").cancelFileUpload(e,!0,!1)})},uploadifyClearQueue:function(){a(this).each(function(){document.getElementById(a(this).attr("id")+"Uploader").clearFileUploadQueue(!1)})}})}(jQuery);