ckfinder_v1.js
6.58 KB
/*
Copyright (c) 2003-2012, CKSource - Frederico Knabben. All rights reserved.
For licensing, see LICENSE.html or http://ckeditor.com/license
*/
(function(){window.CKFinder=function(a,b,c,d){var e=this;e.BasePath=a||CKFinder.DEFAULT_BASEPATH;e.Width=b||'100%';e.Height=c||400;e.SelectFunction=d||null;e.SelectFunctionData=null;e.SelectThumbnailFunction=d||null;e.SelectThumbnailFunctionData=null;e.DisableThumbnailSelection=false;e.ClassName='CKFinderFrame';e.StartupPath=null;e.StartupFolderExpanded=false;e.RememberLastFolder=true;e.ResourceType=null;e.Id=null;e.Skin=null;};CKFinder.DEFAULT_BASEPATH='/ckfinder/';CKFinder.ConnectorLanguage='java';CKFinder._={instanceConfig:[]};(function(){function a(b){var c=1;while(CKFinder._.instanceConfig[c])c++;CKFinder._.instanceConfig[c]=b;return c;};CKFinder.prototype={Create:function(){document.write(this.CreateHtml());},CreateHtml:function(){var d=this;var b=d.ClassName;if(b&&b.length>0)b=' class="'+b+'"';var c=d.Id;if(c&&c.length>0)c=' id="'+c+'"';return '<iframe src="'+d._BuildUrl()+'" width="'+d.Width+'" '+'height="'+d.Height+'"'+b+c+' frameborder="0" scrolling="no"></iframe>';},Popup:function(b,c){b=b||'80%';c=c||'70%';if(typeof b=='string'&&b.length>1&&b.substr(b.length-1,1)=='%')b=parseInt(window.screen.width*parseInt(b,10)/100,10);if(typeof c=='string'&&c.length>1&&c.substr(c.length-1,1)=='%')c=parseInt(window.screen.height*parseInt(c,10)/100,10);if(b<200)b=200;if(c<200)c=200;var d=parseInt((window.screen.height-c)/2,10),e=parseInt((window.screen.width-b)/2,10),f='location=no,menubar=no,toolbar=no,dependent=yes,minimizable=no,modal=yes,alwaysRaised=yes,resizable=yes,width='+b+',height='+c+',top='+d+',left='+e,g=window.open('','CKFinderPopup',f,true);if(!g)return false;var h=this._BuildUrl().replace(/&/g,'&');try{g.moveTo(e,d);g.resizeTo(b,c);g.focus();g.location.href=h;}catch(i){g=window.open(h,'CKFinderPopup',f,true);}return true;},_BuildUrl:function(b){var e=this;b=b||e.BasePath;var c='';if(!b||b.length===0)b=CKFinder.DEFAULT_BASEPATH;if(b.substr(b.length-1,1)!='/')b+='/';b+='ckfinder.html';var d;if(e.SelectFunction){d=e.SelectFunction;if(typeof d=='function')d=d.toString().match(/function ([^(]+)/)[1];c+='?action=js&func='+d;}if(e.Skin){c+=c?'&':'?';c+='skin='+encodeURIComponent(e.Skin);}if(e.SelectFunctionData){c+=c?'&':'?';c+='data='+encodeURIComponent(e.SelectFunctionData);}if(e.ResourceType){c+=c?'&':'?';c+='type='+encodeURIComponent(e.ResourceType);}if(e.DisableThumbnailSelection){c+=c?'&':'?';c+='dts=1';}else if(e.SelectThumbnailFunction||e.SelectFunction){d=e.SelectThumbnailFunction||e.SelectFunction;if(typeof d=='function')d=d.toString().match(/function ([^(]+)/)[1];
c+=c?'&':'?';c+='thumbFunc='+d;if(e.SelectThumbnailFunctionData)c+='&tdata='+encodeURIComponent(e.SelectThumbnailFunctionData);else if(!e.SelectThumbnailFunction&&e.SelectFunctionData)c+='&tdata='+encodeURIComponent(e.SelectFunctionData);}if(e.StartupPath){c+=c?'&':'?';c+='start='+encodeURIComponent(e.StartupPath+(e.StartupFolderExpanded?':1':':0'));}if(e.RememberLastFolder!==undefined&&!e.RememberLastFolder){c+=c?'&':'?';c+='rlf=0';}if(e.Id){c+=c?'&':'?';c+='id='+encodeURIComponent(e.Id);}return b+c;}};CKFinder.Create=function(b,c,d,e){var f;if(b!==null&&typeof b=='object'){f=new CKFinder();for(var g in b)f[g]=b[g];}else f=new CKFinder(b,c,d,e);f.Create();};CKFinder.Popup=function(b,c,d,e){var f,g;if(b!==null&&typeof b=='object'){g=a(b);f=new CKFinder();for(var h in b)f[h]=b[h];}else f=new CKFinder(b,c,d,e);f.Popup(c,d);};CKFinder.SetupFCKeditor=function(b,c,d,e){var f,g;if(c!==null&&typeof c=='object'){g=a(c);f=new CKFinder();for(var h in c){f[h]=c[h];if(h=='Width'){var i=f[h]||800;if(typeof i=='string'&&i.length>1&&i.substr(i.length-1,1)=='%')i=parseInt(window.screen.width*parseInt(i,10)/100,10);b.Config.LinkBrowserWindowWidth=i;b.Config.ImageBrowserWindowWidth=i;b.Config.FlashBrowserWindowWidth=i;}else if(h=='Height'){var j=f[h]||600;if(typeof j=='string'&&j.length>1&&j.substr(j.length-1,1)=='%')j=parseInt(window.screen.height*parseInt(j,10)/100,10);b.Config.LinkBrowserWindowHeight=j;b.Config.ImageBrowserWindowHeight=j;b.Config.FlashBrowserWindowHeight=j;}}}else f=new CKFinder(c);var k=f.BasePath;if(k.substr(0,1)!='/'&&k.indexOf('://')==-1)k=document.location.pathname.substring(0,document.location.pathname.lastIndexOf('/')+1)+k;k=f._BuildUrl(k);var l=k.indexOf('?')!==-1?'&':'?';if(g){k+=l+'configId='+g;l='&';}b.Config.LinkBrowserURL=k;b.Config.ImageBrowserURL=k+l+'type='+(d||'Images');b.Config.FlashBrowserURL=k+l+'type='+(e||'Flash');var m=k.substring(0,1+k.lastIndexOf('/'));b.Config.LinkUploadURL=m+'core/connector/'+CKFinder.ConnectorLanguage+'/connector.'+CKFinder.ConnectorLanguage+'?command=QuickUpload&type=Files';b.Config.ImageUploadURL=m+'core/connector/'+CKFinder.ConnectorLanguage+'/connector.'+CKFinder.ConnectorLanguage+'?command=QuickUpload&type='+(d||'Images');b.Config.FlashUploadURL=m+'core/connector/'+CKFinder.ConnectorLanguage+'/connector.'+CKFinder.ConnectorLanguage+'?command=QuickUpload&type='+(e||'Flash');};CKFinder.SetupCKEditor=function(b,c,d,e){if(b===null){for(var f in CKEDITOR.instances)CKFinder.SetupCKEditor(CKEDITOR.instances[f],c,d,e);
CKEDITOR.on('instanceCreated',function(o){CKFinder.SetupCKEditor(o.editor,c,d,e);});return;}var g,h;if(c!==null&&typeof c=='object'){h=a(c);g=new CKFinder();for(var i in c){g[i]=c[i];if(i=='Width'){var j=g[i]||800;if(typeof j=='string'&&j.length>1&&j.substr(j.length-1,1)=='%')j=parseInt(window.screen.width*parseInt(j,10)/100,10);b.config.filebrowserWindowWidth=j;}else if(i=='Height'){var k=g[i]||600;if(typeof k=='string'&&k.length>1&&k.substr(k.length-1,1)=='%')k=parseInt(window.screen.height*parseInt(k,10)/100,10);b.config.filebrowserWindowHeight=k;}}}else g=new CKFinder(c);var l=g.BasePath;if(l.substr(0,1)!='/'&&l.indexOf('://')==-1)l=document.location.pathname.substring(0,document.location.pathname.lastIndexOf('/')+1)+l;l=g._BuildUrl(l);var m=l.indexOf('?')!==-1?'&':'?';if(h){l+=m+'configId='+h;m='&';}b.config.filebrowserBrowseUrl=l;b.config.filebrowserImageBrowseUrl=l+m+'type='+(d||'Images');b.config.filebrowserFlashBrowseUrl=l+m+'type='+(e||'Flash');var n=l.substring(0,1+l.lastIndexOf('/'));b.config.filebrowserUploadUrl=n+'core/connector/'+CKFinder.ConnectorLanguage+'/connector.'+CKFinder.ConnectorLanguage+'?command=QuickUpload&type=Files';b.config.filebrowserImageUploadUrl=n+'core/connector/'+CKFinder.ConnectorLanguage+'/connector.'+CKFinder.ConnectorLanguage+'?command=QuickUpload&type='+(d||'Images');b.config.filebrowserFlashUploadUrl=n+'core/connector/'+CKFinder.ConnectorLanguage+'/connector.'+CKFinder.ConnectorLanguage+'?command=QuickUpload&type='+(e||'Flash');};})();})();