a:63:{s:9:"#provides";s:21:"dojo._firebug.firebug";s:9:"#resource";s:19:"_firebug/firebug.js";s:15:"dojo.deprecated";a:4:{s:4:"type";s:8:"Function";s:10:"parameters";a:3:{s:9:"behaviour";a:1:{s:4:"type";s:6:"String";}s:5:"extra";a:3:{s:8:"optional";b:1;s:4:"type";s:6:"String";s:7:"summary";s:30:"Text to append to the message.";}s:7:"removal";a:3:{s:8:"optional";b:1;s:4:"type";s:6:"String";s:7:"summary";s:65:"Text to indicate when in the future the behavior will be removed.";}}s:6:"source";s:177:" var message = "DEPRECATED: " + behaviour; if(extra){ message += " " + extra; } if(removal){ message += " -- will be removed in version: " + removal; } console.warn(message);";s:7:"summary";s:68:"Log a debug message to indicate that a behavior has been deprecated.";}s:17:"dojo.experimental";a:6:{s:4:"type";s:8:"Function";s:10:"parameters";a:2:{s:10:"moduleName";a:2:{s:4:"type";s:6:"String";s:7:"summary";s:73:"The name of a module, or the name of a module file or a specific function";}s:5:"extra";a:3:{s:8:"optional";b:1;s:4:"type";s:6:"String";s:7:"summary";s:36:"some additional message for the user";}}s:6:"source";s:154:" var message = "EXPERIMENTAL: " + moduleName + " -- APIs subject to change without notice."; if(extra){ message += " " + extra; } console.warn(message);";s:7:"summary";s:27:"Marks code as experimental.";s:11:"description";s:262:"This can be used to mark a function, file, or module as experimental. Experimental code is not ready to be used, and the APIs are subject to change without notice. Experimental code may be completed deleted without going through the normal deprecation process.";s:8:"examples";a:2:{i:0;s:41:" dojo.experimental("dojo.data.Result");";i:1;s:78:" dojo.experimental("dojo.weather.toKelvin()", "PENDING approval from NOAA");";}}s:14:"window.console";a:2:{s:4:"type";s:6:"Object";s:7:"summary";s:0:"";}s:26:"consoleFrame.style.display";a:1:{s:7:"summary";s:0:"";}s:28:"dojo.config.debugContainerId";a:1:{s:7:"summary";s:0:"";}s:11:"window.dojo";a:1:{s:7:"summary";s:0:"";}s:17:"styleElement.href";a:1:{s:7:"summary";s:0:"";}s:16:"styleElement.rel";a:1:{s:7:"summary";s:0:"";}s:17:"styleElement.type";a:1:{s:7:"summary";s:0:"";}s:25:"consoleFrame.style.height";a:1:{s:7:"summary";s:0:"";}s:22:"consoleFrame.innerHTML";a:1:{s:7:"summary";s:0:"";}s:17:"commandLine.value";a:1:{s:7:"summary";s:0:"";}s:21:"consoleBody.style.top";a:1:{s:7:"summary";s:0:"";}s:24:"consoleBody.style.height";a:1:{s:7:"summary";s:0:"";}s:35:"consoleObjectInspector.style.height";a:1:{s:7:"summary";s:0:"";}s:32:"consoleObjectInspector.style.top";a:1:{s:7:"summary";s:0:"";}s:32:"consoleDomInspector.style.height";a:1:{s:7:"summary";s:0:"";}s:29:"consoleDomInspector.style.top";a:1:{s:7:"summary";s:0:"";}s:24:"commandLine.style.bottom";a:1:{s:7:"summary";s:0:"";}s:7:"handler";a:1:{s:7:"summary";s:0:"";}s:21:"consoleBody.scrollTop";a:1:{s:7:"summary";s:0:"";}s:13:"row.className";a:1:{s:7:"summary";s:0:"";}s:13:"row.innerHTML";a:1:{s:7:"summary";s:0:"";}s:21:"groupRowBox.className";a:1:{s:7:"summary";s:0:"";}s:7:"btn.obj";a:1:{s:7:"summary";s:0:"";}s:18:"event.cancelBubble";a:1:{s:7:"summary";s:0:"";}s:5:"event";a:1:{s:7:"summary";s:0:"";}s:15:"document.cookie";a:1:{s:7:"summary";s:0:"";}s:3:"txt";a:1:{s:7:"summary";s:0:"";}s:4:"used";a:1:{s:7:"summary";s:0:"";}s:11:"getViewport";a:3:{s:4:"type";s:8:"Function";s:6:"source";s:59:" return{w:dc.body.clientWidth, h:dc.body.clientHeight};";s:7:"summary";s:0:"";}s:15:"onFirebugResize";a:3:{s:4:"type";s:8:"Function";s:6:"source";s:13330:"dojo.provide("dojo._firebug.firebug"); dojo.deprecated = function(/*String*/ behaviour, /*String?*/ extra, /*String?*/ removal){ // summary: // Log a debug message to indicate that a behavior has been // deprecated. // extra: Text to append to the message. // removal: // Text to indicate when in the future the behavior will be removed. var message = "DEPRECATED: " + behaviour; if(extra){ message += " " + extra; } if(removal){ message += " -- will be removed in version: " + removal; } console.warn(message); }; dojo.experimental = function(/* String */ moduleName, /* String? */ extra){ // summary: Marks code as experimental. // description: // This can be used to mark a function, file, or module as // experimental. Experimental code is not ready to be used, and the // APIs are subject to change without notice. Experimental code may be // completed deleted without going through the normal deprecation // process. // moduleName: // The name of a module, or the name of a module file or a specific // function // extra: // some additional message for the user // example: // | dojo.experimental("dojo.data.Result"); // example: // | dojo.experimental("dojo.weather.toKelvin()", "PENDING approval from NOAA"); var message = "EXPERIMENTAL: " + moduleName + " -- APIs subject to change without notice."; if(extra){ message += " " + extra; } console.warn(message); }; // FIREBUG LITE // summary: Firebug Lite, the baby brother to Joe Hewitt's Firebug for Mozilla Firefox // description: // Opens a console for logging, debugging, and error messages. // Contains partial functionality to Firebug. See function list below. // NOTE: // Firebug is a Firefox extension created by Joe Hewitt (see license). You do not need Dojo to run Firebug. // Firebug Lite is included in Dojo by permission from Joe Hewitt // If you are new to Firebug, or used to the Dojo 0.4 dojo.debug, you can learn Firebug // functionality by reading the function comments below or visiting http://www.getfirebug.com/docs.html // NOTE: // To test Firebug Lite in Firefox: // FF2: set "console = null" before loading dojo and set djConfig.isDebug=true // FF3: disable Firebug and set djConfig.isDebug=true // // example: // Supports inline objects in object inspector window (only simple trace of dom nodes, however) // | console.log("my object", {foo:"bar"}) // example: // Option for console to open in popup window // | var djConfig = {isDebug: true, popup:true }; // example: // Option for console height (ignored for popup) // | var djConfig = {isDebug: true, debugHeight:100 } if( !window.firebug && // Testing for mozilla firebug lite !dojo.config.useCustomLogger && !dojo.isAIR && // isDebug triggers AIRInsector, not Firebug (!dojo.isMoz || // if not Firefox, there's no firebug (dojo.isMoz && !("console" in window)) || // Firefox, but Firebug is not installed. (dojo.isMoz && !(window.loadFirebugConsole || console.firebug)) // Firefox, but Firebug is disabled (1.2 check, 1.0 check) )){ (function(){ // don't build firebug in iframes try{ if(window != window.parent){ // but if we've got a parent logger, connect to it if(window.parent["console"]){ window.console = window.parent.console; } return; } }catch(e){/*squelch*/} // *************************************************************************** // Placing these variables before the functions that use them to avoid a // shrinksafe bug where variable renaming does not happen correctly otherwise. // most of the objects in this script are run anonomously var _firebugDoc = document; var _firebugWin = window; var __consoleAnchorId__ = 0; var consoleFrame = null; var consoleBody = null; var consoleObjectInspector = null; var fireBugTabs = null; var commandLine = null; var consoleToolbar = null; var frameVisible = false; var messageQueue = []; var groupStack = []; var timeMap = {}; var countMap = {}; var consoleDomInspector = null; var _inspectionMoveConnection; var _inspectionClickConnection; var _inspectionEnabled = false; var _inspectionTimer = null; var _inspectTempNode = document.createElement("div"); var _inspectCurrentNode; var _restoreBorderStyle; // *************************************************************************** window.console = { _connects: [], log: function(){ // summary: // Sends arguments to console. logFormatted(arguments, ""); }, debug: function(){ // summary: // Sends arguments to console. Missing finctionality to show script line of trace. logFormatted(arguments, "debug"); }, info: function(){ // summary: // Sends arguments to console, highlighted with (I) icon. logFormatted(arguments, "info"); }, warn: function(){ // summary: // Sends warning arguments to console, highlighted with (!) icon and blue style. logFormatted(arguments, "warning"); }, error: function(){ // summary: // Sends error arguments (object) to console, highlighted with (X) icon and yellow style // NEW: error object now displays in object inspector logFormatted(arguments, "error"); }, assert: function(truth, message){ // summary: // Tests for true. Throws exception if false. if(!truth){ var args = []; for(var i = 1; i < arguments.length; ++i){ args.push(arguments[i]); } logFormatted(args.length ? args : ["Assertion Failure"], "error"); throw message ? message : "Assertion Failure"; } }, dir: function(obj){ var str = printObject( obj ); str = str.replace(/\n/g, "
"); str = str.replace(/\t/g, "    "); logRow([str], "dir"); }, dirxml: function(node){ // summary: // var html = []; appendNode(node, html); logRow(html, "dirxml"); }, group: function(){ // summary: // collects log messages into a group, starting with this call and ending with // groupEnd(). Missing collapse functionality logRow(arguments, "group", pushGroup); }, groupEnd: function(){ // summary: // Closes group. See above logRow(arguments, "", popGroup); }, time: function(name){ // summary: // Starts timers assigned to name given in argument. Timer stops and displays on timeEnd(title); // example: // | console.time("load"); // | console.time("myFunction"); // | console.timeEnd("load"); // | console.timeEnd("myFunction"); timeMap[name] = new Date().getTime(); }, timeEnd: function(name){ // summary: // See above. if(name in timeMap){ var delta = (new Date()).getTime() - timeMap[name]; logFormatted([name+ ":", delta+"ms"]); delete timeMap[name]; } }, count: function(name){ // summary: // Not supported if(!countMap[name]) countMap[name] = 0; countMap[name]++; logFormatted([name+": "+countMap[name]]); }, trace: function(_value){ var stackAmt = _value || 3; var f = console.trace.caller; //function that called trace console.log(">>> console.trace(stack)"); for(var i=0;i=0&&s.href) { var h=s.href.replace(/(&|%5C?)forceReload=\d+/,''); s.href=h+(h.indexOf('?')>=0?'&':'?')+'forceReload='+new Date().valueOf(); } } } }; // *************************************************************************** function toggleConsole(forceOpen){ frameVisible = forceOpen || !frameVisible; if(consoleFrame){ consoleFrame.style.display = frameVisible ? "block" : "none"; } } function focusCommandLine(){ toggleConsole(true); if(commandLine){ commandLine.focus(); } } function openWin(x,y,w,h){ var win = window.open("","_firebug","status=0,menubar=0,resizable=1,top="+y+",left="+x+",width="+w+",height="+h+",scrollbars=1,addressbar=0"); if(!win){ var msg = "Firebug Lite could not open a pop-up window, most likely because of a blocker.\n" + "Either enable pop-ups for this domain, or change the djConfig to popup=false."; alert(msg); } createResizeHandler(win); var newDoc=win.document; //Safari needs an HTML height var HTMLstring= 'Firebug Lite\n' + '\n' + '
' + ''; newDoc.write(HTMLstring); newDoc.close(); return win; } function createResizeHandler(wn){ // summary // Creates handle for onresize window. Called from script in popup's body tag (so that it will work with IE). // var d = new Date(); d.setTime(d.getTime()+(60*24*60*60*1000)); // 60 days d = d.toUTCString(); var dc = wn.document, getViewport; if (wn.innerWidth){ getViewport = function(){ return{w:wn.innerWidth, h:wn.innerHeight}; }; }else if (dc.documentElement && dc.documentElement.clientWidth){ getViewport = function(){ return{w:dc.documentElement.clientWidth, h:dc.documentElement.clientHeight}; }; }else if (dc.body){ getViewport = function(){ return{w:dc.body.clientWidth, h:dc.body.clientHeight}; }; } window.onFirebugResize = function(){ //resize the height of the console log body layout(getViewport().h); clearInterval(wn._firebugWin_resize); wn._firebugWin_resize = setTimeout(function(){ var x = wn.screenLeft, y = wn.screenTop, w = wn.outerWidth || wn.document.body.offsetWidth, h = wn.outerHeight || wn.document.body.offsetHeight; document.cookie = "_firebugPosition=" + [x,y,w,h].join(",") + "; expires="+d+"; path=/"; }, 5000); //can't capture window.onMove - long timeout gives better chance of capturing a resize, then the move";s:7:"summary";s:0:"";}s:24:"window.console._connects";a:2:{s:7:"private";b:1;s:7:"summary";s:0:"";}s:11:"console.log";a:3:{s:4:"type";s:8:"Function";s:6:"source";s:31:" logFormatted(arguments, "");";s:7:"summary";s:27:"Sends arguments to console.";}s:13:"console.debug";a:3:{s:4:"type";s:8:"Function";s:6:"source";s:36:" logFormatted(arguments, "debug");";s:7:"summary";s:79:"Sends arguments to console. Missing finctionality to show script line of trace.";}s:12:"console.info";a:3:{s:4:"type";s:8:"Function";s:6:"source";s:35:" logFormatted(arguments, "info");";s:7:"summary";s:54:"Sends arguments to console, highlighted with (I) icon.";}s:12:"console.warn";a:3:{s:4:"type";s:8:"Function";s:6:"source";s:38:" logFormatted(arguments, "warning");";s:7:"summary";s:77:"Sends warning arguments to console, highlighted with (!) icon and blue style.";}s:13:"console.error";a:3:{s:4:"type";s:8:"Function";s:6:"source";s:36:" logFormatted(arguments, "error");";s:7:"summary";s:136:"Sends error arguments (object) to console, highlighted with (X) icon and yellow style NEW: error object now displays in object inspector";}s:14:"console.assert";a:4:{s:4:"type";s:8:"Function";s:10:"parameters";a:2:{s:5:"truth";a:1:{s:4:"type";s:0:"";}s:7:"message";a:1:{s:4:"type";s:0:"";}}s:6:"source";s:249:" if(!truth){ var args = []; for(var i = 1; i < arguments.length; ++i){ args.push(arguments[i]); } logFormatted(args.length ? args : ["Assertion Failure"], "error"); throw message ? message : "Assertion Failure"; }";s:7:"summary";s:42:"Tests for true. Throws exception if false.";}s:11:"console.dir";a:4:{s:4:"type";s:8:"Function";s:10:"parameters";a:1:{s:3:"obj";a:1:{s:4:"type";s:0:"";}}s:6:"source";s:153:" var str = printObject( obj ); str = str.replace(/\n/g, "
"); str = str.replace(/\t/g, "    "); logRow([str], "dir");";s:7:"summary";s:0:"";}s:14:"console.dirxml";a:4:{s:4:"type";s:8:"Function";s:10:"parameters";a:1:{s:4:"node";a:1:{s:4:"type";s:0:"";}}s:6:"source";s:71:" var html = []; appendNode(node, html); logRow(html, "dirxml");";s:7:"summary";s:0:"";}s:13:"console.group";a:3:{s:4:"type";s:8:"Function";s:6:"source";s:41:" logRow(arguments, "group", pushGroup);";s:7:"summary";s:118:"collects log messages into a group, starting with this call and ending with groupEnd(). Missing collapse functionality";}s:16:"console.groupEnd";a:3:{s:4:"type";s:8:"Function";s:6:"source";s:35:" logRow(arguments, "", popGroup);";s:7:"summary";s:23:"Closes group. See above";}s:12:"console.time";a:5:{s:4:"type";s:8:"Function";s:10:"parameters";a:1:{s:4:"name";a:1:{s:4:"type";s:0:"";}}s:6:"source";s:40:" timeMap[name] = new Date().getTime();";s:7:"summary";s:93:"Starts timers assigned to name given in argument. Timer stops and displays on timeEnd(title);";s:8:"examples";a:1:{i:0;s:111:" console.time("load"); console.time("myFunction"); console.timeEnd("load"); console.timeEnd("myFunction");";}}s:15:"console.timeEnd";a:4:{s:4:"type";s:8:"Function";s:10:"parameters";a:1:{s:4:"name";a:1:{s:4:"type";s:0:"";}}s:6:"source";s:153:" if(name in timeMap){ var delta = (new Date()).getTime() - timeMap[name]; logFormatted([name+ ":", delta+"ms"]); delete timeMap[name]; }";s:7:"summary";s:10:"See above.";}s:13:"console.count";a:4:{s:4:"type";s:8:"Function";s:10:"parameters";a:1:{s:4:"name";a:1:{s:4:"type";s:0:"";}}s:6:"source";s:108:" if(!countMap[name]) countMap[name] = 0; countMap[name]++; logFormatted([name+": "+countMap[name]]);";s:7:"summary";s:13:"Not supported";}s:13:"console.trace";a:4:{s:4:"type";s:8:"Function";s:10:"parameters";a:1:{s:6:"_value";a:1:{s:4:"type";s:0:"";}}s:6:"source";s:470:" var stackAmt = _value || 3; var f = console.trace.caller; //function that called trace console.log(">>> console.trace(stack)"); for(var i=0;i"); str = str.replace(/\t/g, "    "); logRow([str], "dir"); }, dirxml: function(node){ // summary: // var html = []; appendNode(node, html); logRow(html, "dirxml"); }, group: function(){ // summary: // collects log messages into a group, starting with this call and ending with // groupEnd(). Missing collapse functionality logRow(arguments, "group", pushGroup); }, groupEnd: function(){ // summary: // Closes group. See above logRow(arguments, "", popGroup); }, time: function(name){ // summary: // Starts timers assigned to name given in argument. Timer stops and displays on timeEnd(title); // example: // | console.time("load"); // | console.time("myFunction"); // | console.timeEnd("load"); // | console.timeEnd("myFunction"); timeMap[name] = new Date().getTime(); }, timeEnd: function(name){ // summary: // See above. if(name in timeMap){ var delta = (new Date()).getTime() - timeMap[name]; logFormatted([name+ ":", delta+"ms"]); delete timeMap[name]; } }, count: function(name){ // summary: // Not supported if(!countMap[name]) countMap[name] = 0; countMap[name]++; logFormatted([name+": "+countMap[name]]); }, trace: function(_value){ var stackAmt = _value || 3; var f = console.trace.caller; //function that called trace console.log(">>> console.trace(stack)"); for(var i=0;i=0&&s.href) { var h=s.href.replace(/(&|%5C?)forceReload=\d+/,''); s.href=h+(h.indexOf('?')>=0?'&':'?')+'forceReload='+new Date().valueOf(); } }";s:7:"summary";s:0:"";}s:21:"dojo._firebug.firebug";a:3:{s:4:"type";s:6:"Object";s:14:"private_parent";b:1;s:7:"summary";s:0:"";}s:13:"dojo._firebug";a:3:{s:4:"type";s:6:"Object";s:7:"private";b:1;s:7:"summary";s:0:"";}s:4:"dojo";a:2:{s:4:"type";s:6:"Object";s:7:"summary";s:0:"";}}