From 2f01fe57a8d37767827d6db42850aef86a767c53 Mon Sep 17 00:00:00 2001 From: Andrew Dolgov Date: Mon, 15 Nov 2010 10:39:52 +0300 Subject: add dijit/dojo stuff; initial ui mockup --- lib/dojo/_base/_loader/bootstrap.js | 120 +++++++ lib/dojo/_base/_loader/hostenv_browser.js | 244 +++++++++++++ lib/dojo/_base/_loader/hostenv_ff_ext.js | 175 ++++++++++ lib/dojo/_base/_loader/hostenv_rhino.js | 153 ++++++++ lib/dojo/_base/_loader/hostenv_spidermonkey.js | 50 +++ lib/dojo/_base/_loader/loader.js | 300 ++++++++++++++++ lib/dojo/_base/_loader/loader_debug.js | 59 ++++ lib/dojo/_base/_loader/loader_xd.js | 465 +++++++++++++++++++++++++ 8 files changed, 1566 insertions(+) create mode 100644 lib/dojo/_base/_loader/bootstrap.js create mode 100644 lib/dojo/_base/_loader/hostenv_browser.js create mode 100644 lib/dojo/_base/_loader/hostenv_ff_ext.js create mode 100644 lib/dojo/_base/_loader/hostenv_rhino.js create mode 100644 lib/dojo/_base/_loader/hostenv_spidermonkey.js create mode 100644 lib/dojo/_base/_loader/loader.js create mode 100644 lib/dojo/_base/_loader/loader_debug.js create mode 100644 lib/dojo/_base/_loader/loader_xd.js (limited to 'lib/dojo/_base/_loader') diff --git a/lib/dojo/_base/_loader/bootstrap.js b/lib/dojo/_base/_loader/bootstrap.js new file mode 100644 index 000000000..7cc168e5d --- /dev/null +++ b/lib/dojo/_base/_loader/bootstrap.js @@ -0,0 +1,120 @@ +/* + Copyright (c) 2004-2010, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + + +(function(){ +if(typeof this["loadFirebugConsole"]=="function"){ +this["loadFirebugConsole"](); +}else{ +this.console=this.console||{}; +var cn=["assert","count","debug","dir","dirxml","error","group","groupEnd","info","profile","profileEnd","time","timeEnd","trace","warn","log"]; +var i=0,tn; +while((tn=cn[i++])){ +if(!console[tn]){ +(function(){ +var _1=tn+""; +console[_1]=("log" in console)?function(){ +var a=Array.apply({},arguments); +a.unshift(_1+":"); +console["log"](a.join(" ")); +}:function(){ +}; +console[_1]._fake=true; +})(); +} +} +} +if(typeof dojo=="undefined"){ +dojo={_scopeName:"dojo",_scopePrefix:"",_scopePrefixArgs:"",_scopeSuffix:"",_scopeMap:{},_scopeMapRev:{}}; +} +var d=dojo; +if(typeof dijit=="undefined"){ +dijit={_scopeName:"dijit"}; +} +if(typeof dojox=="undefined"){ +dojox={_scopeName:"dojox"}; +} +if(!d._scopeArgs){ +d._scopeArgs=[dojo,dijit,dojox]; +} +d.global=this; +d.config={isDebug:false,debugAtAllCosts:false}; +if(typeof djConfig!="undefined"){ +for(var _2 in djConfig){ +d.config[_2]=djConfig[_2]; +} +} +dojo.locale=d.config.locale; +var _3="$Rev: 22487 $".match(/\d+/); +dojo.version={major:1,minor:5,patch:0,flag:"",revision:_3?+_3[0]:NaN,toString:function(){ +with(d.version){ +return major+"."+minor+"."+patch+flag+" ("+revision+")"; +} +}}; +if(typeof OpenAjax!="undefined"){ +OpenAjax.hub.registerLibrary(dojo._scopeName,"http://dojotoolkit.org",d.version.toString()); +} +var _4,_5,_6={}; +for(var i in {toString:1}){ +_4=[]; +break; +} +dojo._extraNames=_4=_4||["hasOwnProperty","valueOf","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","constructor"]; +_5=_4.length; +dojo._mixin=function(_7,_8){ +var _9,s,i; +for(_9 in _8){ +s=_8[_9]; +if(!(_9 in _7)||(_7[_9]!==s&&(!(_9 in _6)||_6[_9]!==s))){ +_7[_9]=s; +} +} +if(_5&&_8){ +for(i=0;i<_5;++i){ +_9=_4[i]; +s=_8[_9]; +if(!(_9 in _7)||(_7[_9]!==s&&(!(_9 in _6)||_6[_9]!==s))){ +_7[_9]=s; +} +} +} +return _7; +}; +dojo.mixin=function(_a,_b){ +if(!_a){ +_a={}; +} +for(var i=1,l=arguments.length;i= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + + +if(typeof window!="undefined"){ +dojo.isBrowser=true; +dojo._name="browser"; +(function(){ +var d=dojo; +if(document&&document.getElementsByTagName){ +var _1=document.getElementsByTagName("script"); +var _2=/dojo(\.xd)?\.js(\W|$)/i; +for(var i=0;i<_1.length;i++){ +var _3=_1[i].getAttribute("src"); +if(!_3){ +continue; +} +var m=_3.match(_2); +if(m){ +if(!d.config.baseUrl){ +d.config.baseUrl=_3.substring(0,m.index); +} +var _4=_1[i].getAttribute("djConfig"); +if(_4){ +var _5=eval("({ "+_4+" })"); +for(var x in _5){ +dojo.config[x]=_5[x]; +} +} +break; +} +} +} +d.baseUrl=d.config.baseUrl; +var n=navigator; +var _6=n.userAgent,_7=n.appVersion,tv=parseFloat(_7); +if(_6.indexOf("Opera")>=0){ +d.isOpera=tv; +} +if(_6.indexOf("AdobeAIR")>=0){ +d.isAIR=1; +} +d.isKhtml=(_7.indexOf("Konqueror")>=0)?tv:0; +d.isWebKit=parseFloat(_6.split("WebKit/")[1])||undefined; +d.isChrome=parseFloat(_6.split("Chrome/")[1])||undefined; +d.isMac=_7.indexOf("Macintosh")>=0; +var _8=Math.max(_7.indexOf("WebKit"),_7.indexOf("Safari"),0); +if(_8&&!dojo.isChrome){ +d.isSafari=parseFloat(_7.split("Version/")[1]); +if(!d.isSafari||parseFloat(_7.substr(_8+7))<=419.3){ +d.isSafari=2; +} +} +if(_6.indexOf("Gecko")>=0&&!d.isKhtml&&!d.isWebKit){ +d.isMozilla=d.isMoz=tv; +} +if(d.isMoz){ +d.isFF=parseFloat(_6.split("Firefox/")[1]||_6.split("Minefield/")[1])||undefined; +} +if(document.all&&!d.isOpera){ +d.isIE=parseFloat(_7.split("MSIE ")[1])||undefined; +var _9=document.documentMode; +if(_9&&_9!=5&&Math.floor(d.isIE)!=_9){ +d.isIE=_9; +} +} +if(dojo.isIE&&window.location.protocol==="file:"){ +dojo.config.ieForceActiveXXhr=true; +} +d.isQuirks=document.compatMode=="BackCompat"; +d.locale=dojo.config.locale||(d.isIE?n.userLanguage:n.language).toLowerCase(); +d._XMLHTTP_PROGIDS=["Msxml2.XMLHTTP","Microsoft.XMLHTTP","Msxml2.XMLHTTP.4.0"]; +d._xhrObj=function(){ +var _a,_b; +if(!dojo.isIE||!dojo.config.ieForceActiveXXhr){ +try{ +_a=new XMLHttpRequest(); +} +catch(e){ +} +} +if(!_a){ +for(var i=0;i<3;++i){ +var _c=d._XMLHTTP_PROGIDS[i]; +try{ +_a=new ActiveXObject(_c); +} +catch(e){ +_b=e; +} +if(_a){ +d._XMLHTTP_PROGIDS=[_c]; +break; +} +} +} +if(!_a){ +throw new Error("XMLHTTP not available: "+_b); +} +return _a; +}; +d._isDocumentOk=function(_d){ +var _e=_d.status||0,lp=location.protocol; +return (_e>=200&&_e<300)||_e==304||_e==1223||(!_e&&(lp=="file:"||lp=="chrome:"||lp=="chrome-extension:"||lp=="app:")); +}; +var _f=window.location+""; +var _10=document.getElementsByTagName("base"); +var _11=(_10&&_10.length>0); +d._getText=function(uri,_12){ +var _13=d._xhrObj(); +if(!_11&&dojo._Url){ +uri=(new dojo._Url(_f,uri)).toString(); +} +if(d.config.cacheBust){ +uri+=""; +uri+=(uri.indexOf("?")==-1?"?":"&")+String(d.config.cacheBust).replace(/\W+/g,""); +} +_13.open("GET",uri,false); +try{ +_13.send(null); +if(!d._isDocumentOk(_13)){ +var err=Error("Unable to load "+uri+" status:"+_13.status); +err.status=_13.status; +err.responseText=_13.responseText; +throw err; +} +} +catch(e){ +if(_12){ +return null; +} +throw e; +} +return _13.responseText; +}; +var _14=window; +var _15=function(_16,fp){ +var _17=_14.attachEvent||_14.addEventListener; +_16=_14.attachEvent?_16:_16.substring(2); +_17(_16,function(){ +fp.apply(_14,arguments); +},false); +}; +d._windowUnloaders=[]; +d.windowUnloaded=function(){ +var mll=d._windowUnloaders; +while(mll.length){ +(mll.pop())(); +} +d=null; +}; +var _18=0; +d.addOnWindowUnload=function(obj,_19){ +d._onto(d._windowUnloaders,obj,_19); +if(!_18){ +_18=1; +_15("onunload",d.windowUnloaded); +} +}; +var _1a=0; +d.addOnUnload=function(obj,_1b){ +d._onto(d._unloaders,obj,_1b); +if(!_1a){ +_1a=1; +_15("onbeforeunload",dojo.unloaded); +} +}; +})(); +dojo._initFired=false; +dojo._loadInit=function(e){ +if(dojo._scrollIntervalId){ +clearInterval(dojo._scrollIntervalId); +dojo._scrollIntervalId=0; +} +if(!dojo._initFired){ +dojo._initFired=true; +if(!dojo.config.afterOnLoad&&window.detachEvent){ +window.detachEvent("onload",dojo._loadInit); +} +if(dojo._inFlightCount==0){ +dojo._modulesLoaded(); +} +} +}; +if(!dojo.config.afterOnLoad){ +if(document.addEventListener){ +document.addEventListener("DOMContentLoaded",dojo._loadInit,false); +window.addEventListener("load",dojo._loadInit,false); +}else{ +if(window.attachEvent){ +window.attachEvent("onload",dojo._loadInit); +if(!dojo.config.skipIeDomLoaded&&self===self.top){ +dojo._scrollIntervalId=setInterval(function(){ +try{ +if(document.body){ +document.documentElement.doScroll("left"); +dojo._loadInit(); +} +} +catch(e){ +} +},30); +} +} +} +} +if(dojo.isIE){ +try{ +(function(){ +document.namespaces.add("v","urn:schemas-microsoft-com:vml"); +var _1c=["*","group","roundrect","oval","shape","rect","imagedata","path","textpath","text"],i=0,l=1,s=document.createStyleSheet(); +if(dojo.isIE>=8){ +i=1; +l=_1c.length; +} +for(;i= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + + +if(typeof window!="undefined"){ +dojo.isBrowser=true; +dojo._name="browser"; +(function(){ +var d=dojo; +d.baseUrl=d.config.baseUrl; +var n=navigator; +var _1=n.userAgent; +var _2=n.appVersion; +var tv=parseFloat(_2); +d.isMozilla=d.isMoz=tv; +if(d.isMoz){ +d.isFF=parseFloat(_1.split("Firefox/")[1])||undefined; +} +d.isQuirks=document.compatMode=="BackCompat"; +d.locale=dojo.config.locale||n.language.toLowerCase(); +d._xhrObj=function(){ +return new XMLHttpRequest(); +}; +var _3=d._loadUri; +d._loadUri=function(_4,cb){ +var _5=["file:","chrome:","resource:"].some(function(_6){ +return String(_4).indexOf(_6)==0; +}); +if(_5){ +var l=Components.classes["@mozilla.org/moz/jssubscript-loader;1"].getService(Components.interfaces.mozIJSSubScriptLoader); +var _7=l.loadSubScript(_4,d.global); +if(cb){ +cb(_7); +} +return true; +}else{ +return _3.apply(d,arguments); +} +}; +d._isDocumentOk=function(_8){ +var _9=_8.status||0; +return (_9>=200&&_9<300)||_9==304||_9==1223||(!_9&&(location.protocol=="file:"||location.protocol=="chrome:")); +}; +var _a=false; +d._getText=function(_b,_c){ +var _d=d._xhrObj(); +if(!_a&&dojo._Url){ +_b=(new dojo._Url(_b)).toString(); +} +if(d.config.cacheBust){ +_b+=""; +_b+=(_b.indexOf("?")==-1?"?":"&")+String(d.config.cacheBust).replace(/\W+/g,""); +} +var _e=["file:","chrome:","resource:"].some(function(_f){ +return String(_b).indexOf(_f)==0; +}); +if(_e){ +var _10=Components.classes["@mozilla.org/network/io-service;1"].getService(Components.interfaces.nsIIOService); +var _11=Components.classes["@mozilla.org/scriptableinputstream;1"].getService(Components.interfaces.nsIScriptableInputStream); +var _12=_10.newChannel(_b,null,null); +var _13=_12.open(); +_11.init(_13); +var str=_11.read(_13.available()); +_11.close(); +_13.close(); +return str; +}else{ +_d.open("GET",_b,false); +try{ +_d.send(null); +if(!d._isDocumentOk(_d)){ +var err=Error("Unable to load "+_b+" status:"+_d.status); +err.status=_d.status; +err.responseText=_d.responseText; +throw err; +} +} +catch(e){ +if(_c){ +return null; +} +throw e; +} +return _d.responseText; +} +}; +d._windowUnloaders=[]; +d.windowUnloaded=function(){ +var mll=d._windowUnloaders; +while(mll.length){ +(mll.pop())(); +} +}; +d.addOnWindowUnload=function(obj,_14){ +d._onto(d._windowUnloaders,obj,_14); +}; +var _15=[]; +var _16=null; +dojo._defaultContext=[window,document]; +dojo.pushContext=function(g,d){ +var old=[dojo.global,dojo.doc]; +_15.push(old); +var n; +if(!g&&!d){ +n=dojo._defaultContext; +}else{ +n=[g,d]; +if(!d&&dojo.isString(g)){ +var t=document.getElementById(g); +if(t.contentDocument){ +n=[t.contentWindow,t.contentDocument]; +} +} +} +_16=n; +dojo.setContext.apply(dojo,n); +return old; +}; +dojo.popContext=function(){ +var oc=_16; +if(!_15.length){ +return oc; +} +dojo.setContext.apply(dojo,_15.pop()); +return oc; +}; +dojo._inContext=function(g,d,f){ +var a=dojo._toArray(arguments); +f=a.pop(); +if(a.length==1){ +d=null; +} +dojo.pushContext(g,d); +var r=f(); +dojo.popContext(); +return r; +}; +})(); +dojo._initFired=false; +dojo._loadInit=function(e){ +dojo._initFired=true; +var _17=(e&&e.type)?e.type.toLowerCase():"load"; +if(arguments.callee.initialized||(_17!="domcontentloaded"&&_17!="load")){ +return; +} +arguments.callee.initialized=true; +if(dojo._inFlightCount==0){ +dojo._modulesLoaded(); +} +}; +if(!dojo.config.afterOnLoad){ +window.addEventListener("DOMContentLoaded",function(e){ +dojo._loadInit(e); +},false); +} +} +(function(){ +var mp=dojo.config["modulePaths"]; +if(mp){ +for(var _18 in mp){ +dojo.registerModulePath(_18,mp[_18]); +} +} +})(); +if(dojo.config.isDebug){ +console.log=function(m){ +var s=Components.classes["@mozilla.org/consoleservice;1"].getService(Components.interfaces.nsIConsoleService); +s.logStringMessage(m); +}; +console.debug=function(){ +}; +} diff --git a/lib/dojo/_base/_loader/hostenv_rhino.js b/lib/dojo/_base/_loader/hostenv_rhino.js new file mode 100644 index 000000000..9cd882713 --- /dev/null +++ b/lib/dojo/_base/_loader/hostenv_rhino.js @@ -0,0 +1,153 @@ +/* + Copyright (c) 2004-2010, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + + +if(dojo.config["baseUrl"]){ +dojo.baseUrl=dojo.config["baseUrl"]; +}else{ +dojo.baseUrl="./"; +} +dojo.locale=dojo.locale||String(java.util.Locale.getDefault().toString().replace("_","-").toLowerCase()); +dojo._name="rhino"; +dojo.isRhino=true; +if(typeof print=="function"){ +console.debug=print; +} +if(!("byId" in dojo)){ +dojo.byId=function(id,_1){ +if(id&&(typeof id=="string"||id instanceof String)){ +if(!_1){ +_1=document; +} +return _1.getElementById(id); +} +return id; +}; +} +dojo._isLocalUrl=function(_2){ +var _3=(new java.io.File(_2)).exists(); +if(!_3){ +var _4; +try{ +_4=(new java.net.URL(_2)).openStream(); +_4.close(); +} +finally{ +if(_4&&_4.close){ +_4.close(); +} +} +} +return _3; +}; +dojo._loadUri=function(_5,cb){ +try{ +var _6; +try{ +_6=dojo._isLocalUrl(_5); +} +catch(e){ +return false; +} +if(cb){ +var _7=(_6?readText:readUri)(_5,"UTF-8"); +if(!eval("'‏'").length){ +_7=String(_7).replace(/[\u200E\u200F\u202A-\u202E]/g,function(_8){ +return "\\u"+_8.charCodeAt(0).toString(16); +}); +} +cb(eval("("+_7+")")); +}else{ +load(_5); +} +return true; +} +catch(e){ +return false; +} +}; +dojo.exit=function(_9){ +quit(_9); +}; +function readText(_a,_b){ +_b=_b||"utf-8"; +var jf=new java.io.File(_a); +var is=new java.io.FileInputStream(jf); +return dj_readInputStream(is,_b); +}; +function readUri(_c,_d){ +var _e=(new java.net.URL(_c)).openConnection(); +_d=_d||_e.getContentEncoding()||"utf-8"; +var is=_e.getInputStream(); +return dj_readInputStream(is,_d); +}; +function dj_readInputStream(is,_f){ +var _10=new java.io.BufferedReader(new java.io.InputStreamReader(is,_f)); +try{ +var sb=new java.lang.StringBuffer(); +var _11=""; +while((_11=_10.readLine())!==null){ +sb.append(_11); +sb.append(java.lang.System.getProperty("line.separator")); +} +return sb.toString(); +} +finally{ +_10.close(); +} +}; +dojo._getText=function(uri,_12){ +try{ +var _13=dojo._isLocalUrl(uri); +var _14=(_13?readText:readUri)(uri,"UTF-8"); +if(_14!==null){ +_14+=""; +} +return _14; +} +catch(e){ +if(_12){ +return null; +}else{ +throw e; +} +} +}; +dojo.doc=typeof document!="undefined"?document:null; +dojo.body=function(){ +return document.body; +}; +if(typeof setTimeout=="undefined"||typeof clearTimeout=="undefined"){ +dojo._timeouts=[]; +clearTimeout=function(idx){ +if(!dojo._timeouts[idx]){ +return; +} +dojo._timeouts[idx].stop(); +}; +setTimeout=function(_15,_16){ +var def={sleepTime:_16,hasSlept:false,run:function(){ +if(!this.hasSlept){ +this.hasSlept=true; +java.lang.Thread.currentThread().sleep(this.sleepTime); +} +try{ +_15(); +} +catch(e){ +} +}}; +var _17=new java.lang.Runnable(def); +var _18=new java.lang.Thread(_17); +_18.start(); +return dojo._timeouts.push(_18)-1; +}; +} +if(dojo.config["modulePaths"]){ +for(var param in dojo.config["modulePaths"]){ +dojo.registerModulePath(param,dojo.config["modulePaths"][param]); +} +} diff --git a/lib/dojo/_base/_loader/hostenv_spidermonkey.js b/lib/dojo/_base/_loader/hostenv_spidermonkey.js new file mode 100644 index 000000000..ca63f16ce --- /dev/null +++ b/lib/dojo/_base/_loader/hostenv_spidermonkey.js @@ -0,0 +1,50 @@ +/* + Copyright (c) 2004-2010, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + + +if(dojo.config["baseUrl"]){ +dojo.baseUrl=dojo.config["baseUrl"]; +}else{ +dojo.baseUrl="./"; +} +dojo._name="spidermonkey"; +dojo.isSpidermonkey=true; +dojo.exit=function(_1){ +quit(_1); +}; +if(typeof print=="function"){ +console.debug=print; +} +if(typeof line2pc=="undefined"){ +throw new Error("attempt to use SpiderMonkey host environment when no 'line2pc' global"); +} +dojo._spidermonkeyCurrentFile=function(_2){ +var s=""; +try{ +throw Error("whatever"); +} +catch(e){ +s=e.stack; +} +var _3=s.match(/[^@]*\.js/gi); +if(!_3){ +throw Error("could not parse stack string: '"+s+"'"); +} +var _4=(typeof _2!="undefined"&&_2)?_3[_2+1]:_3[_3.length-1]; +if(!_4){ +throw Error("could not find file name in stack string '"+s+"'"); +} +return _4; +}; +dojo._loadUri=function(_5){ +var ok=load(_5); +return 1; +}; +if(dojo.config["modulePaths"]){ +for(var param in dojo.config["modulePaths"]){ +dojo.registerModulePath(param,dojo.config["modulePaths"][param]); +} +} diff --git a/lib/dojo/_base/_loader/loader.js b/lib/dojo/_base/_loader/loader.js new file mode 100644 index 000000000..3f31040a1 --- /dev/null +++ b/lib/dojo/_base/_loader/loader.js @@ -0,0 +1,300 @@ +/* + Copyright (c) 2004-2010, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + + +if(!dojo._hasResource["dojo.foo"]){ +dojo._hasResource["dojo.foo"]=true; +(function(){ +var d=dojo; +d.mixin(d,{_loadedModules:{},_inFlightCount:0,_hasResource:{},_modulePrefixes:{dojo:{name:"dojo",value:"."},doh:{name:"doh",value:"../util/doh"},tests:{name:"tests",value:"tests"}},_moduleHasPrefix:function(_1){ +var mp=d._modulePrefixes; +return !!(mp[_1]&&mp[_1].value); +},_getModulePrefix:function(_2){ +var mp=d._modulePrefixes; +if(d._moduleHasPrefix(_2)){ +return mp[_2].value; +} +return _2; +},_loadedUrls:[],_postLoad:false,_loaders:[],_unloaders:[],_loadNotifying:false}); +dojo._loadPath=function(_3,_4,cb){ +var _5=((_3.charAt(0)=="/"||_3.match(/^\w+:/))?"":d.baseUrl)+_3; +try{ +return !_4?d._loadUri(_5,cb):d._loadUriAndCheck(_5,_4,cb); +} +catch(e){ +console.error(e); +return false; +} +}; +dojo._loadUri=function(_6,cb){ +if(d._loadedUrls[_6]){ +return true; +} +d._inFlightCount++; +var _7=d._getText(_6,true); +if(_7){ +d._loadedUrls[_6]=true; +d._loadedUrls.push(_6); +if(cb){ +_7="("+_7+")"; +}else{ +_7=d._scopePrefix+_7+d._scopeSuffix; +} +if(!d.isIE){ +_7+="\r\n//@ sourceURL="+_6; +} +var _8=d["eval"](_7); +if(cb){ +cb(_8); +} +} +if(--d._inFlightCount==0&&d._postLoad&&d._loaders.length){ +setTimeout(function(){ +if(d._inFlightCount==0){ +d._callLoaded(); +} +},0); +} +return !!_7; +}; +dojo._loadUriAndCheck=function(_9,_a,cb){ +var ok=false; +try{ +ok=d._loadUri(_9,cb); +} +catch(e){ +console.error("failed loading "+_9+" with error: "+e); +} +return !!(ok&&d._loadedModules[_a]); +}; +dojo.loaded=function(){ +d._loadNotifying=true; +d._postLoad=true; +var _b=d._loaders; +d._loaders=[]; +for(var x=0;x<_b.length;x++){ +_b[x](); +} +d._loadNotifying=false; +if(d._postLoad&&d._inFlightCount==0&&_b.length){ +d._callLoaded(); +} +}; +dojo.unloaded=function(){ +var _c=d._unloaders; +while(_c.length){ +(_c.pop())(); +} +}; +d._onto=function(_d,_e,fn){ +if(!fn){ +_d.push(_e); +}else{ +if(fn){ +var _f=(typeof fn=="string")?_e[fn]:fn; +_d.push(function(){ +_f.call(_e); +}); +} +} +}; +dojo.ready=dojo.addOnLoad=function(obj,_10){ +d._onto(d._loaders,obj,_10); +if(d._postLoad&&d._inFlightCount==0&&!d._loadNotifying){ +d._callLoaded(); +} +}; +var dca=d.config.addOnLoad; +if(dca){ +d.addOnLoad[(dca instanceof Array?"apply":"call")](d,dca); +} +dojo._modulesLoaded=function(){ +if(d._postLoad){ +return; +} +if(d._inFlightCount>0){ +console.warn("files still in flight!"); +return; +} +d._callLoaded(); +}; +dojo._callLoaded=function(){ +if(typeof setTimeout=="object"||(d.config.useXDomain&&d.isOpera)){ +setTimeout(d.isAIR?function(){ +d.loaded(); +}:d._scopeName+".loaded();",0); +}else{ +d.loaded(); +} +}; +dojo._getModuleSymbols=function(_11){ +var _12=_11.split("."); +for(var i=_12.length;i>0;i--){ +var _13=_12.slice(0,i).join("."); +if(i==1&&!d._moduleHasPrefix(_13)){ +_12[0]="../"+_12[0]; +}else{ +var _14=d._getModulePrefix(_13); +if(_14!=_13){ +_12.splice(0,i,_14); +break; +} +} +} +return _12; +}; +dojo._global_omit_module_check=false; +dojo.loadInit=function(_15){ +_15(); +}; +dojo._loadModule=dojo.require=function(_16,_17){ +_17=d._global_omit_module_check||_17; +var _18=d._loadedModules[_16]; +if(_18){ +return _18; +} +var _19=d._getModuleSymbols(_16).join("/")+".js"; +var _1a=!_17?_16:null; +var ok=d._loadPath(_19,_1a); +if(!ok&&!_17){ +throw new Error("Could not load '"+_16+"'; last tried '"+_19+"'"); +} +if(!_17&&!d._isXDomain){ +_18=d._loadedModules[_16]; +if(!_18){ +throw new Error("symbol '"+_16+"' is not defined after loading '"+_19+"'"); +} +} +return _18; +}; +dojo.provide=function(_1b){ +_1b=_1b+""; +return (d._loadedModules[_1b]=d.getObject(_1b,true)); +}; +dojo.platformRequire=function(_1c){ +var _1d=_1c.common||[]; +var _1e=_1d.concat(_1c[d._name]||_1c["default"]||[]); +for(var x=0;x<_1e.length;x++){ +var _1f=_1e[x]; +if(_1f.constructor==Array){ +d._loadModule.apply(d,_1f); +}else{ +d._loadModule(_1f); +} +} +}; +dojo.requireIf=function(_20,_21){ +if(_20===true){ +var _22=[]; +for(var i=1;i0&&!(j==1&&_2d[0]=="")&&_2d[j]==".."&&_2d[j-1]!=".."){ +if(j==(_2d.length-1)){ +_2d.splice(j,1); +_2d[j-1]=""; +}else{ +_2d.splice(j-1,2); +j-=2; +} +} +} +} +_2a.path=_2d.join("/"); +} +} +} +} +uri=[]; +if(_2a.scheme){ +uri.push(_2a.scheme,":"); +} +if(_2a.authority){ +uri.push("//",_2a.authority); +} +uri.push(_2a.path); +if(_2a.query){ +uri.push("?",_2a.query); +} +if(_2a.fragment){ +uri.push("#",_2a.fragment); +} +} +this.uri=uri.join(""); +var r=this.uri.match(ore); +this.scheme=r[2]||(r[1]?"":n); +this.authority=r[4]||(r[3]?"":n); +this.path=r[5]; +this.query=r[7]||(r[6]?"":n); +this.fragment=r[9]||(r[8]?"":n); +if(this.authority!=n){ +r=this.authority.match(ire); +this.user=r[3]||n; +this.password=r[4]||n; +this.host=r[6]||r[7]; +this.port=r[9]||n; +} +}; +dojo._Url.prototype.toString=function(){ +return this.uri; +}; +dojo.moduleUrl=function(_2e,url){ +var loc=d._getModuleSymbols(_2e).join("/"); +if(!loc){ +return null; +} +if(loc.lastIndexOf("/")!=loc.length-1){ +loc+="/"; +} +var _2f=loc.indexOf(":"); +if(loc.charAt(0)!="/"&&(_2f==-1||_2f>loc.indexOf("/"))){ +loc=d.baseUrl+loc; +} +return new d._Url(loc,url); +}; +})(); +} diff --git a/lib/dojo/_base/_loader/loader_debug.js b/lib/dojo/_base/_loader/loader_debug.js new file mode 100644 index 000000000..a28040f58 --- /dev/null +++ b/lib/dojo/_base/_loader/loader_debug.js @@ -0,0 +1,59 @@ +/* + Copyright (c) 2004-2010, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + + +if(!dojo._hasResource["dojo._base._loader.loader_debug"]){ +dojo._hasResource["dojo._base._loader.loader_debug"]=true; +dojo.provide("dojo._base._loader.loader_debug"); +dojo.nonDebugProvide=dojo.provide; +dojo.provide=function(_1){ +var _2=dojo["_xdDebugQueue"]; +if(_2&&_2.length>0&&_1==_2["currentResourceName"]){ +if(dojo.isAIR){ +window.setTimeout(function(){ +dojo._xdDebugFileLoaded(_1); +},1); +}else{ +window.setTimeout(dojo._scopeName+"._xdDebugFileLoaded('"+_1+"')",1); +} +} +return dojo.nonDebugProvide.apply(dojo,arguments); +}; +dojo._xdDebugFileLoaded=function(_3){ +if(!dojo._xdDebugScopeChecked){ +if(dojo._scopeName!="dojo"){ +window.dojo=window[dojo.config.scopeMap[0][1]]; +window.dijit=window[dojo.config.scopeMap[1][1]]; +window.dojox=window[dojo.config.scopeMap[2][1]]; +} +dojo._xdDebugScopeChecked=true; +} +var _4=dojo._xdDebugQueue; +if(_3&&_3==_4.currentResourceName){ +_4.shift(); +} +if(_4.length==0){ +dojo._xdWatchInFlight(); +} +if(_4.length==0){ +_4.currentResourceName=null; +for(var _5 in dojo._xdInFlight){ +if(dojo._xdInFlight[_5]===true){ +return; +} +} +dojo._xdNotifyLoaded(); +}else{ +if(_3==_4.currentResourceName){ +_4.currentResourceName=_4[0].resourceName; +var _6=document.createElement("script"); +_6.type="text/javascript"; +_6.src=_4[0].resourcePath; +document.getElementsByTagName("head")[0].appendChild(_6); +} +} +}; +} diff --git a/lib/dojo/_base/_loader/loader_xd.js b/lib/dojo/_base/_loader/loader_xd.js new file mode 100644 index 000000000..2ecab3db6 --- /dev/null +++ b/lib/dojo/_base/_loader/loader_xd.js @@ -0,0 +1,465 @@ +/* + Copyright (c) 2004-2010, The Dojo Foundation All Rights Reserved. + Available via Academic Free License >= 2.1 OR the modified BSD license. + see: http://dojotoolkit.org/license for details +*/ + + +if(!dojo._hasResource["dojo._base._loader.loader_xd"]){ +dojo._hasResource["dojo._base._loader.loader_xd"]=true; +dojo.provide("dojo._base._loader.loader_xd"); +dojo._xdReset=function(){ +dojo._isXDomain=dojo.config.useXDomain||false; +dojo._xdClearInterval(); +dojo._xdInFlight={}; +dojo._xdOrderedReqs=[]; +dojo._xdDepMap={}; +dojo._xdContents=[]; +dojo._xdDefList=[]; +}; +dojo._xdClearInterval=function(){ +if(dojo._xdTimer){ +clearInterval(dojo._xdTimer); +dojo._xdTimer=0; +} +}; +dojo._xdReset(); +dojo._xdCreateResource=function(_1,_2,_3){ +var _4=_1.replace(/(\/\*([\s\S]*?)\*\/|\/\/(.*)$)/mg,""); +var _5=[]; +var _6=/dojo.(require|requireIf|provide|requireAfterIf|platformRequire|requireLocalization)\s*\(([\w\W]*?)\)/mg; +var _7; +while((_7=_6.exec(_4))!=null){ +if(_7[1]=="requireLocalization"){ +eval(_7[0]); +}else{ +_5.push("\""+_7[1]+"\", "+_7[2]); +} +} +var _8=[]; +_8.push(dojo._scopeName+"._xdResourceLoaded(function("+dojo._scopePrefixArgs+"){\n"); +var _9=dojo._xdExtractLoadInits(_1); +if(_9){ +_1=_9[0]; +for(var i=1;i<_9.length;i++){ +_8.push(_9[i]+";\n"); +} +} +_8.push("return {"); +if(_5.length>0){ +_8.push("depends: ["); +for(i=0;i<_5.length;i++){ +if(i>0){ +_8.push(",\n"); +} +_8.push("["+_5[i]+"]"); +} +_8.push("],"); +} +_8.push("\ndefineResource: function("+dojo._scopePrefixArgs+"){"); +if(!dojo.config["debugAtAllCosts"]||_2=="dojo._base._loader.loader_debug"){ +_8.push(_1); +} +_8.push("\n}, resourceName: '"+_2+"', resourcePath: '"+_3+"'};});"); +return _8.join(""); +}; +dojo._xdExtractLoadInits=function(_a){ +var _b=/dojo.loadInit\s*\(/g; +_b.lastIndex=0; +var _c=/[\(\)]/g; +_c.lastIndex=0; +var _d=[]; +var _e; +while((_e=_b.exec(_a))){ +_c.lastIndex=_b.lastIndex; +var _f=1; +var _10; +while((_10=_c.exec(_a))){ +if(_10[0]==")"){ +_f-=1; +}else{ +_f+=1; +} +if(_f==0){ +break; +} +} +if(_f!=0){ +throw "unmatched paren around character "+_c.lastIndex+" in: "+_a; +} +var _11=_b.lastIndex-_e[0].length; +_d.push(_a.substring(_11,_c.lastIndex)); +var _12=_c.lastIndex-_11; +_a=_a.substring(0,_11)+_a.substring(_c.lastIndex,_a.length); +_b.lastIndex=_c.lastIndex-_12; +_b.lastIndex=_c.lastIndex; +} +if(_d.length>0){ +_d.unshift(_a); +} +return (_d.length?_d:null); +}; +dojo._xdIsXDomainPath=function(_13){ +var _14=_13.indexOf(":"); +var _15=_13.indexOf("/"); +if(_14>0&&_14<_15){ +return true; +}else{ +var url=dojo.baseUrl; +_14=url.indexOf(":"); +_15=url.indexOf("/"); +if(_14>0&&_14<_15&&(!location.host||url.indexOf("http://"+location.host)!=0)){ +return true; +} +} +return false; +}; +dojo._loadPath=function(_16,_17,cb){ +var _18=dojo._xdIsXDomainPath(_16); +dojo._isXDomain|=_18; +var uri=((_16.charAt(0)=="/"||_16.match(/^\w+:/))?"":dojo.baseUrl)+_16; +try{ +return ((!_17||dojo._isXDomain)?dojo._loadUri(uri,cb,_18,_17):dojo._loadUriAndCheck(uri,_17,cb)); +} +catch(e){ +console.error(e); +return false; +} +}; +dojo._xdCharSet="utf-8"; +dojo._loadUri=function(uri,cb,_19,_1a){ +if(dojo._loadedUrls[uri]){ +return 1; +} +if(dojo._isXDomain&&_1a&&_1a!="dojo.i18n"){ +dojo._xdOrderedReqs.push(_1a); +if(_19||uri.indexOf("/nls/")==-1){ +dojo._xdInFlight[_1a]=true; +dojo._inFlightCount++; +} +if(!dojo._xdTimer){ +if(dojo.isAIR){ +dojo._xdTimer=setInterval(function(){ +dojo._xdWatchInFlight(); +},100); +}else{ +dojo._xdTimer=setInterval(dojo._scopeName+"._xdWatchInFlight();",100); +} +} +dojo._xdStartTime=(new Date()).getTime(); +} +if(_19){ +var _1b=uri.lastIndexOf("."); +if(_1b<=0){ +_1b=uri.length-1; +} +var _1c=uri.substring(0,_1b)+".xd"; +if(_1b!=uri.length-1){ +_1c+=uri.substring(_1b,uri.length); +} +if(dojo.isAIR){ +_1c=_1c.replace("app:/","/"); +} +var _1d=document.createElement("script"); +_1d.type="text/javascript"; +if(dojo._xdCharSet){ +_1d.charset=dojo._xdCharSet; +} +_1d.src=_1c; +if(!dojo.headElement){ +dojo._headElement=document.getElementsByTagName("head")[0]; +if(!dojo._headElement){ +dojo._headElement=document.getElementsByTagName("html")[0]; +} +} +dojo._headElement.appendChild(_1d); +}else{ +var _1e=dojo._getText(uri,null,true); +if(_1e==null){ +return 0; +} +if(dojo._isXDomain&&uri.indexOf("/nls/")==-1&&_1a!="dojo.i18n"){ +var res=dojo._xdCreateResource(_1e,_1a,uri); +dojo.eval(res); +}else{ +if(cb){ +_1e="("+_1e+")"; +}else{ +_1e=dojo._scopePrefix+_1e+dojo._scopeSuffix; +} +var _1f=dojo["eval"](_1e+"\r\n//@ sourceURL="+uri); +if(cb){ +cb(_1f); +} +} +} +dojo._loadedUrls[uri]=true; +dojo._loadedUrls.push(uri); +return true; +}; +dojo._xdResourceLoaded=function(res){ +res=res.apply(dojo.global,dojo._scopeArgs); +var _20=res.depends; +var _21=null; +var _22=null; +var _23=[]; +if(_20&&_20.length>0){ +var dep=null; +var _24=0; +var _25=false; +for(var i=0;i<_20.length;i++){ +dep=_20[i]; +if(dep[0]=="provide"){ +_23.push(dep[1]); +}else{ +if(!_21){ +_21=[]; +} +if(!_22){ +_22=[]; +} +var _26=dojo._xdUnpackDependency(dep); +if(_26.requires){ +_21=_21.concat(_26.requires); +} +if(_26.requiresAfter){ +_22=_22.concat(_26.requiresAfter); +} +} +var _27=dep[0]; +var _28=_27.split("."); +if(_28.length==2){ +dojo[_28[0]][_28[1]].apply(dojo[_28[0]],dep.slice(1)); +}else{ +dojo[_27].apply(dojo,dep.slice(1)); +} +} +if(_23.length==1&&_23[0]=="dojo._base._loader.loader_debug"){ +res.defineResource(dojo); +}else{ +var _29=dojo._xdContents.push({content:res.defineResource,resourceName:res["resourceName"],resourcePath:res["resourcePath"],isDefined:false})-1; +for(i=0;i<_23.length;i++){ +dojo._xdDepMap[_23[i]]={requires:_21,requiresAfter:_22,contentIndex:_29}; +} +} +for(i=0;i<_23.length;i++){ +dojo._xdInFlight[_23[i]]=false; +} +} +}; +dojo._xdLoadFlattenedBundle=function(_2a,_2b,_2c,_2d){ +_2c=_2c||"root"; +var _2e=dojo.i18n.normalizeLocale(_2c).replace("-","_"); +var _2f=[_2a,"nls",_2b].join("."); +var _30=dojo["provide"](_2f); +_30[_2e]=_2d; +var _31=[_2a,_2e,_2b].join("."); +var _32=dojo._xdBundleMap[_31]; +if(_32){ +for(var _33 in _32){ +_30[_33]=_2d; +} +} +}; +dojo._xdInitExtraLocales=function(){ +var _34=dojo.config.extraLocale; +if(_34){ +if(!_34 instanceof Array){ +_34=[_34]; +} +dojo._xdReqLoc=dojo.xdRequireLocalization; +dojo.xdRequireLocalization=function(m,b,_35,_36){ +dojo._xdReqLoc(m,b,_35,_36); +if(_35){ +return; +} +for(var i=0;i<_34.length;i++){ +dojo._xdReqLoc(m,b,_34[i],_36); +} +}; +} +}; +dojo._xdBundleMap={}; +dojo.xdRequireLocalization=function(_37,_38,_39,_3a){ +if(dojo._xdInitExtraLocales){ +dojo._xdInitExtraLocales(); +dojo._xdInitExtraLocales=null; +dojo.xdRequireLocalization.apply(dojo,arguments); +return; +} +var _3b=_3a.split(","); +var _3c=dojo.i18n.normalizeLocale(_39); +var _3d=""; +for(var i=0;i<_3b.length;i++){ +if(_3c.indexOf(_3b[i])==0){ +if(_3b[i].length>_3d.length){ +_3d=_3b[i]; +} +} +} +var _3e=_3d.replace("-","_"); +var _3f=dojo.getObject([_37,"nls",_38].join(".")); +if(!_3f||!_3f[_3e]){ +var _40=[_37,(_3e||"root"),_38].join("."); +var _41=dojo._xdBundleMap[_40]; +if(!_41){ +_41=dojo._xdBundleMap[_40]={}; +} +_41[_3c.replace("-","_")]=true; +dojo.require(_37+".nls"+(_3d?"."+_3d:"")+"."+_38); +} +}; +dojo._xdRealRequireLocalization=dojo.requireLocalization; +dojo.requireLocalization=function(_42,_43,_44,_45){ +var _46=dojo.moduleUrl(_42).toString(); +if(dojo._xdIsXDomainPath(_46)){ +return dojo.xdRequireLocalization.apply(dojo,arguments); +}else{ +return dojo._xdRealRequireLocalization.apply(dojo,arguments); +} +}; +dojo._xdUnpackDependency=function(dep){ +var _47=null; +var _48=null; +switch(dep[0]){ +case "requireIf": +case "requireAfterIf": +if(dep[1]===true){ +_47=[{name:dep[2],content:null}]; +} +break; +case "platformRequire": +var _49=dep[1]; +var _4a=_49["common"]||[]; +_47=(_49[dojo.hostenv.name_])?_4a.concat(_49[dojo.hostenv.name_]||[]):_4a.concat(_49["default"]||[]); +if(_47){ +for(var i=0;i<_47.length;i++){ +if(_47[i] instanceof Array){ +_47[i]={name:_47[i][0],content:null}; +}else{ +_47[i]={name:_47[i],content:null}; +} +} +} +break; +case "require": +_47=[{name:dep[1],content:null}]; +break; +case "i18n._preloadLocalizations": +dojo.i18n._preloadLocalizations.apply(dojo.i18n._preloadLocalizations,dep.slice(1)); +break; +} +if(dep[0]=="requireAfterIf"||dep[0]=="requireIf"){ +_48=_47; +_47=null; +} +return {requires:_47,requiresAfter:_48}; +}; +dojo._xdWalkReqs=function(){ +var _4b=null; +var req; +for(var i=0;i0){ +var req=_4c[_4c.length-1]; +var res=dojo._xdDepMap[req]; +var i,_4d,_4e; +if(res){ +_4d=res.requires; +if(_4d&&_4d.length>0){ +for(i=0;i<_4d.length;i++){ +_4e=_4d[i].name; +if(_4e&&!_4c[_4e]){ +_4c.push(_4e); +_4c[_4e]=true; +dojo._xdEvalReqs(_4c); +} +} +} +var _4f=dojo._xdContents[res.contentIndex]; +if(!_4f.isDefined){ +var _50=_4f.content; +_50["resourceName"]=_4f["resourceName"]; +_50["resourcePath"]=_4f["resourcePath"]; +dojo._xdDefList.push(_50); +_4f.isDefined=true; +} +dojo._xdDepMap[req]=null; +_4d=res.requiresAfter; +if(_4d&&_4d.length>0){ +for(i=0;i<_4d.length;i++){ +_4e=_4d[i].name; +if(_4e&&!_4c[_4e]){ +_4c.push(_4e); +_4c[_4e]=true; +dojo._xdEvalReqs(_4c); +} +} +} +} +_4c.pop(); +} +}; +dojo._xdWatchInFlight=function(){ +var _51=""; +var _52=(dojo.config.xdWaitSeconds||15)*1000; +var _53=(dojo._xdStartTime+_52)<(new Date()).getTime(); +for(var _54 in dojo._xdInFlight){ +if(dojo._xdInFlight[_54]===true){ +if(_53){ +_51+=_54+" "; +}else{ +return; +} +} +} +dojo._xdClearInterval(); +if(_53){ +throw "Could not load cross-domain resources: "+_51; +} +dojo._xdWalkReqs(); +var _55=dojo._xdDefList.length; +for(var i=0;i<_55;i++){ +var _56=dojo._xdDefList[i]; +if(dojo.config["debugAtAllCosts"]&&_56["resourceName"]){ +if(!dojo["_xdDebugQueue"]){ +dojo._xdDebugQueue=[]; +} +dojo._xdDebugQueue.push({resourceName:_56.resourceName,resourcePath:_56.resourcePath}); +}else{ +_56.apply(dojo.global,dojo._scopeArgs); +} +} +for(i=0;i0){ +dojo._xdDebugFileLoaded(); +}else{ +dojo._xdNotifyLoaded(); +} +}; +dojo._xdNotifyLoaded=function(){ +for(var _58 in dojo._xdInFlight){ +if(typeof dojo._xdInFlight[_58]=="boolean"){ +return; +} +} +dojo._inFlightCount=0; +if(dojo._initFired&&!dojo._loadNotifying){ +dojo._callLoaded(); +} +}; +} -- cgit v1.2.3