(function($){$.extend({ImportBasePath:'',__WaitingTasks:new Object(),__loadedSuccessfully:function(taskId){if(taskId in $.__WaitingTasks){if(($.__WaitingTasks[taskId].loading-=1)<1){var callback=$.__WaitingTasks[taskId].task;if(typeof callback=='function'){callback()}delete $.__WaitingTasks[taskId]}}},fileinfo:function(data){if(typeof data=='object'){if(data[1]=='js'){return{filename:data[0],ext:data[1],tag:'script'}}else if(data[1]=='css'){return{filename:data[0],ext:data[1],tag:'link'}}}else{data=data.replace(/^\s|\s$/g,"");var m;if(/\.\w+$/.test(data)){m=data.match(/([^\/\\]+)\.(\w+)$/);if(m){if(m[2]=='js'){return{filename:data,ext:m[2],tag:'script'}}else if(m[2]=='css'){return{filename:data,ext:m[2],tag:'link'}}}}else{m=data.match(/([^\/\\]+)$/);if(m){return{filename:data,ext:null,tag:null}}}}return{filename:null,ext:null,tag:null}},fileExist:function(filename,filetype,attrCheck){var elementsArray=document.getElementsByTagName(filetype);for(var i=0;i<elementsArray.length;i++){if(elementsArray[i].getAttribute(attrCheck)==$.ImportBasePath+filename){return true}}return false},createElement:function(filename,filetype){switch(filetype){case'script':if(!$.fileExist(filename,filetype,'src')){var scriptTag=document.createElement(filetype);scriptTag.setAttribute('language','javascript');scriptTag.setAttribute('type','text/javascript');scriptTag.setAttribute('src',$.ImportBasePath+filename);return scriptTag}break;case'link':if(!$.fileExist(filename,filetype,'href')){var styleTag=document.createElement(filetype);styleTag.setAttribute('type','text/css');styleTag.setAttribute('rel','stylesheet');styleTag.setAttribute('href',$.ImportBasePath+filename);return styleTag}break}return false},cssReady:function(index,taskId){function check(){if(document.styleSheets[index]){window.clearInterval(checkInterval);$.__loadedSuccessfully(taskId)}}var checkInterval=window.setInterval(check,200)},include:function(file,callback){var headerTag=document.getElementsByTagName('head')[0];var fileArray=[];typeof file=='string'?fileArray[0]=file:fileArray=file;var taskId=new Date().getTime().toString();$.__WaitingTasks[taskId]={'loading':fileArray.length,'task':callback};for(var i=0;i<fileArray.length;i++){var finfo=$.fileinfo(fileArray[i]);var elementTag=finfo.tag;var el=[];if(elementTag!==null){el[i]=$.createElement(finfo.filename,elementTag);if(el[i]){if($.browser.msie){el[i].onreadystatechange=function(){if(this.readyState==='loaded'||this.readyState==='complete'){$.__loadedSuccessfully(taskId)}}}else{if(elementTag=='link'){$.cssReady(i,taskId)}else{if(/WebKit/i.test(navigator.userAgent)){var _timer=setInterval(function(){if(/loaded|complete/.test(document.readyState)){window.clearInterval(_timer);$.__loadedSuccessfully(taskId)}},100)}el[i].onload=function(){$.__loadedSuccessfully(taskId)}}}headerTag.appendChild(el[i])}else{$.__loadedSuccessfully(taskId)}}else{return false}}}})})(jQuery);
