Lines Matching defs:this

5  * COPYING  file in the root directory of this source tree.
35 this.reJavascript=/\s*javascript:\s*(.*)/;
36 this.reChrome=/chrome:\/\/([^\/]*)\//;
37 this.reFile=/file:\/\/([^\/]*)\//;
39 this.isFirefox=/firefox/.test(userAgent);
40 this.isOpera=/opera/.test(userAgent);
41 this.isSafari=/webkit/.test(userAgent);
42 this.isIE=/msie/.test(userAgent)&&!/opera/.test(userAgent);
43 this.isIE6=/msie 6/i.test(navigator.appVersion);
44 this.browserVersion=(userAgent.match(/.+(?:rv|it|ra|ie)[\/: ]([\d.]+)/)||[0,"0"])[1];
45 this.isIElt8=this.isIE&&(this.browserVersion-0<8);
46 this.NS=null;
47 this.pixelsPerInch=null;
49 this.ns=function(fn){var ns={};
54 this.initialize=function(){if(window.firebug&&firebug.firebuglite||window.console&&console.firebuglite){return
73 }this.isQuiksMode=FBL.Env.browser.document.compatMode=="BackCompat";
74 this.isIEQuiksMode=this.isIE&&this.isQuiksMode;
75 this.isIEStantandMode=this.isIE&&!this.isQuiksMode;
76 this.noFixedPosition=this.isIE6||this.isIEQuiksMode;
108 this.Env={Options:{saveCookies:true,saveWindowPosition:false,saveCommandLineHistory:false,startOpened:false,startInNewWindow:false,showIconWhenHidden:true,overrideConsole:true,ignoreFirebugElements:true,disableWhenFirebugActive:true,disableXHRListener:false,disableResourceFetching:false,enableTrace:false,enablePersistent:false},Location:{sourceDir:null,baseDir:null,skinDir:null,skin:null,app:null},skin:"xp",useLocalSkin:false,isDevelopmentMode:false,isDebugMode:false,isChromeContext:false,browser:null,chrome:null};
198 this.bind=function(){var args=cloneArray(arguments),fn=args.shift(),object=args.shift();
202 this.bindFixed=function(){var args=cloneArray(arguments),fn=args.shift(),object=args.shift();
206 this.extend=function(l,r){var newOb={};
211 this.descend=function(prototypeParent,childProperties){function protoSetter(){}protoSetter.prototype=prototypeParent;
216 this.append=function(l,r){for(var n in r){l[n]=r[n]
219 this.keys=function(map){var keys=[];
223 this.values=function(map){var values=[];
229 this.remove=function(list,item){for(var i=0;
234 this.sliceArray=function(array,index){var slice=[];
252 }this.extendArray=extendArray;
253 this.cloneArray=cloneArray;
258 }this.createStyleSheet=function(doc,url){var style=this.createElement("link");
266 this.addStyleSheet=function(doc,style){var heads=doc.getElementsByTagName("head");
270 this.appendStylesheet=function(doc,uri){if(this.$(uri,doc)){return
271 }var styleSheet=this.createStyleSheet(doc,uri);
273 this.addStyleSheet(doc,styleSheet)
275 this.addScript=function(doc,id,src){var element=doc.createElementNS("http://www.w3.org/1999/xhtml","html:script");
284 this.getStyle=this.isIE?function(el,name){return el.currentStyle[name]||el.style[name]||undefined
287 var entityConversionLists=this.entityConversionLists={normal:{whitespace:{"\t":"\u200c\u2192","\n":"\u200c\u00b6","\r":"\u200c\u00ac"," ":"\u200c\u00b7"}},reverse:{whitespace:{"&Tab;":"\t","&NewLine;":"\n","\u200c\u2192":"\t","\u200c\u00b6":"\n","\u200c\u00ac":"\r","\u200c\u00b7":" "}}};
362 }this.escapeGroupsForEntities=escapeGroupsForEntities;
379 }var escapeForTextNode=this.escapeForTextNode=createSimpleEscape("text","normal");
380 var escapeForHtmlEditor=this.escapeForHtmlEditor=createSimpleEscape("editor","normal");
381 var escapeForElementAttribute=this.escapeForElementAttribute=createSimpleEscape("attributes","normal");
382 var escapeForCss=this.escapeForCss=createSimpleEscape("css","normal");
383 var escapeForSourceLine=this.escapeForSourceLine=createSimpleEscape("text","normal");
385 this.unescapeForTextNode=function(str){if(Firebug.showTextNodesWithWhitespace){str=unescapeWhitespace(str)
389 this.escapeNewLines=function(value){return value.replace(/\r/g,"\\r").replace(/\n/g,"\\n")
391 this.stripNewLines=function(value){return typeof(value)=="string"?value.replace(/[\r\n]/g," "):value
393 this.escapeJS=function(value){return value.replace(/\r/g,"\\r").replace(/\n/g,"\\n").replace('"','\\"',"g")
412 }this.escapeHTML=escapeHTML;
413 this.cropString=function(text,limit){text=text+"";
416 }if(text.length>limit){return this.escapeNewLines(text.substr(0,halfLimit)+"..."+text.substr(text.length-halfLimit))
417 }else{return this.escapeNewLines(text)
419 this.isWhitespace=function(text){return !reNotWhitespace.exec(text)
421 this.splitLines=function(text){var reSplitLines2=/.*(:?\r\n|\n|\r)?/mg;
429 this.safeToString=function(ob){if(this.isIE){try{return ob+""
435 this.hasProperties=function(ob){try{for(var name in ob){return true
439 this.trim=function(s){return s.replace(reTrim,"")
441 this.emptyFn=function(){};
442 this.isVisible=function(elt){return this.getStyle(elt,"visibility")!="hidden"&&(elt.offsetWidth>0||elt.offsetHeight>0||elt.tagName in invisibleTags||elt.namespaceURI=="http://www.w3.org/2000/svg"||elt.namespaceURI=="http://www.w3.org/1998/Math/MathML")
444 this.collapse=function(elt,collapsed){if(this.isIElt8){if(collapsed){this.setClass(elt,"collapsed")
445 }else{this.removeClass(elt,"collapsed")
448 this.obscure=function(elt,obscured){if(obscured){this.setClass(elt,"obscured")
449 }else{this.removeClass(elt,"obscured")
451 this.hide=function(elt,hidden){elt.style.visibility=hidden?"hidden":"visible"
453 this.clearNode=function(node){var nodeName=" "+node.nodeName.toLowerCase()+" ";
455 if(this.isIE&&ignoreTags.indexOf(nodeName)!=-1){this.eraseNode(node)
458 this.eraseNode=function(node){while(node.lastChild){node.removeChild(node.lastChild)
460 this.iterateWindows=function(win,handler){if(!win||!win.document){return
466 if(subWin!=win){this.iterateWindows(subWin,handler)
468 this.getRootWindow=function(win){for(;
470 win=win.parent){if(!win.parent||win==win.parent||!this.instanceOf(win.parent,"Window")){return win
473 this.getClientOffset=function(elt){var addOffset=function addOffset(elt,coords,view){var p=elt.offsetParent;
481 var isIE=this.isIE;
487 this.getViewOffset=function(elt,singleFrame){function addOffset(elt,coords,view){var p=elt.offsetParent;
519 this.getLTRBWH=function(elt){var bcrect,dims={left:0,top:0,right:0,bottom:0,width:0,height:0};
531 this.applyBodyOffsets=function(elt,clientRect){var od=elt.ownerDocument;
549 this.getOffsetSize=function(elt){return{width:elt.offsetWidth,height:elt.offsetHeight}
551 this.getOverflowParent=function(element){for(var scrollParent=element.parentNode;
555 this.isScrolledToBottom=function(element){var onBottom=(element.scrollTop+element.offsetHeight)==element.scrollHeight;
559 this.scrollToBottom=function(element){element.scrollTop=element.scrollHeight;
564 this.move=function(element,x,y){element.style.left=x+"px";
567 this.resize=function(element,w,h){element.style.width=w+"px";
570 this.linesIntoCenterView=function(element,scrollBox){if(!scrollBox){scrollBox=this.getOverflowParent(element)
572 }var offset=this.getClientOffset(element);
582 this.scrollIntoCenterView=function(element,scrollBox,notX,notY){if(!element){return
583 }if(!scrollBox){scrollBox=this.getOverflowParent(element)
585 }var offset=this.getClientOffset(element);
600 this.getCSSKeywordsByProperty=function(propName){if(!cssKeywordMap){cssKeywordMap={};
601 for(var name in this.cssInfo){var list=[];
602 var types=this.cssInfo[name];
605 ++i){var keywords=this.cssKeywords[types[i]];
610 this.getCSSPropertyNames=function(){if(!cssPropNames){cssPropNames=[];
611 for(var name in this.cssInfo){cssPropNames.push(name)
614 this.isColorKeyword=function(keyword){if(keyword=="transparent"){return false
616 var colors=this.cssKeywords.color;
620 }var systemColors=this.cssKeywords.systemColor;
626 this.isImageRule=function(rule){if(!imageRules){imageRules=[];
627 for(var i in this.cssInfo){var r=i.toLowerCase();
632 this.copyTextStyles=function(fromNode,toNode,style){var view=this.isIE?fromNode.ownerDocument.parentWindow:fromNode.ownerDocument.defaultView;
633 if(view){if(!style){style=this.isIE?fromNode.currentStyle:view.getComputedStyle(fromNode,"")
640 this.copyBoxStyles=function(fromNode,toNode,style){var view=this.isIE?fromNode.ownerDocument.parentWindow:fromNode.ownerDocument.defaultView;
641 if(view){if(!style){style=this.isIE?fromNode.currentStyle:view.getComputedStyle(fromNode,"")
652 this.readBoxStyles=function(style){var styleNames={"margin-top":"marginTop","margin-right":"marginRight","margin-left":"marginLeft","margin-bottom":"marginBottom","border-top-width":"borderTop","border-right-width":"borderRight","border-left-width":"borderLeft","border-bottom-width":"borderBottom","padding-top":"paddingTop","padding-right":"paddingRight","padding-left":"paddingLeft","padding-bottom":"paddingBottom","z-index":"zIndex"};
658 this.getBoxFromStyles=function(style,element){var args=this.readBoxStyles(style);
663 this.getElementCSSSelector=function(element){var label=element.localName.toLowerCase();
668 this.getURLForStyleSheet=function(styleSheet){return(styleSheet.href?styleSheet.href:styleSheet.ownerNode.ownerDocument.URL)
670 this.getDocumentForStyleSheet=function(styleSheet){while(styleSheet.parentStyleSheet&&!styleSheet.ownerNode){styleSheet=styleSheet.parentStyleSheet
673 this.getInstanceForStyleSheet=function(styleSheet,ownerDocument){if(FBL.isSystemStyleSheet(styleSheet)){return 0
685 var getElementType=this.getElementType=function(node){if(isElementXUL(node)){return"xul"
691 var getElementSimpleType=this.getElementSimpleType=function(node){if(isElementSVG(node)){return"svg"
695 var isElementHTML=this.isElementHTML=function(node){return node.nodeName==node.nodeName.toUpperCase()
697 var isElementXHTML=this.isElementXHTML=function(node){return node.nodeName==node.nodeName.toLowerCase()
699 var isElementMathML=this.isElementMathML=function(node){return node.namespaceURI=="http://www.w3.org/1998/Math/MathML"
701 var isElementSVG=this.isElementSVG=function(node){return node.namespaceURI=="http://www.w3.org/2000/svg"
703 var isElementXUL=this.isElementXUL=function(node){return node instanceof XULElement
705 this.isSelfClosing=function(element){if(isElementSVG(element)||isElementMathML(element)){return true
707 return(this.selfClosingTags.hasOwnProperty(tag))
709 this.getElementHTML=function(element){var self=this;
738 this.getElementXML=function(element){function toXML(elt){if(elt.nodeType==Node.ELEMENT_NODE){if(unwrapObject(elt).firebugIgnore){return
759 this.hasClass=function(node,name){if(arguments.length==2){return(" "+node.className+" ").indexOf(" "+name+" ")!=-1
768 this.old_hasClass=function(node,name){if(!node||node.nodeType!=1){return false
776 this.setClass=function(node,name){if(node&&(" "+node.className+" ").indexOf(" "+name+" ")==-1){node.className+=" "+name
778 this.getClassValue=function(node,name){var re=new RegExp(name+"-([^ ]+)");
782 this.removeClass=function(node,name){if(node&&node.className){var index=node.className.indexOf(name);
786 this.toggleClass=function(elt,name){if((" "+elt.className+" ").indexOf(" "+name+" ")!=-1){this.removeClass(elt,name)
787 }else{this.setClass(elt,name)
789 this.setClassTimed=function(elt,name,context,timeout){if(!timeout){timeout=1300
791 }else{this.setClass(elt,name)
796 this.cancelClassTimed=function(elt,name,context){if(elt.__setClassTimeout){FBL.removeClass(elt,name);
800 this.$=function(id,doc){if(doc){return doc.getElementById(id)
803 this.$$=function(selector,doc){if(doc||!FBL.Firebug.chrome){return FBL.Firebug.Selector(selector,doc)
806 this.getChildByClass=function(node){for(var i=1;
813 child=child.nextSibling){if(this.hasClass(child,className)){node=child;
817 this.getAncestorByClass=function(node,className){for(var parent=node;
819 parent=parent.parentNode){if(this.hasClass(parent,className)){return parent
822 this.getElementsByClass=function(node,className){var result=[];
825 child=child.nextSibling){if(this.hasClass(child,className)){result.push(child)
828 this.getElementByClass=function(node,className){var args=cloneArray(arguments);
839 this.isAncestor=function(node,potentialAncestor){for(var parent=node;
844 this.getNextElement=function(node){while(node&&node.nodeType!=1){node=node.nextSibling
847 this.getPreviousElement=function(node){while(node&&node.nodeType!=1){node=node.previousSibling
850 this.getBody=function(doc){if(doc.body){return doc.body
855 this.findNextDown=function(node,criteria){if(!node){return null
859 }var next=this.findNextDown(child,criteria);
862 this.findPreviousUp=function(node,criteria){if(!node){return null
865 child=child.previousSibling){var next=this.findPreviousUp(child,criteria);
869 this.findNext=function(node,criteria,upOnly,maxRoot){if(!node){return null
870 }if(!upOnly){var next=this.findNextDown(node,criteria);
875 }var next=this.findNextDown(sib,criteria);
877 }}if(node.parentNode&&node.parentNode!=maxRoot){return this.findNext(node.parentNode,criteria,true)
879 this.findPrevious=function(node,criteria,downOnly,maxRoot){if(!node){return null
882 sib=sib.previousSibling){var prev=this.findPreviousUp(sib,criteria);
885 }}if(!downOnly){var next=this.findPreviousUp(node,criteria);
888 }return this.findPrevious(node.parentNode,criteria,true)
890 this.getNextByClass=function(root,state){var iter=function iter(node){return node.nodeType==1&&FBL.hasClass(node,state)
892 return this.findNext(root,iter)
894 this.getPreviousByClass=function(root,state){var iter=function iter(node){return node.nodeType==1&&FBL.hasClass(node,state)
896 return this.findPrevious(root,iter)
898 this.isElement=function(o){try{return o&&this.instanceOf(o,"Element")
902 this.appendInnerHTML=function(element,html,referenceElement){referenceElement=referenceElement||null;
918 this.createElement=function(tagName,properties){properties=properties||{};
924 this.createGlobalElement=function(tagName,properties){properties=properties||{};
926 var element=this.NS&&doc.createElementNS?doc.createElementNS(FBL.NS,tagName):doc.createElement(tagName);
932 this.safeGetWindowLocation=function(window){try{if(window){if(window.closed){return"(window.closed)"
940 this.isLeftClick=function(event){return(this.isIE&&event.type!="click"&&event.type!="dblclick"?event.button==1:event.button==0)&&this.noKeyModifiers(event)
942 this.isMiddleClick=function(event){return(this.isIE&&event.type!="click"&&event.type!="dblclick"?event.button==4:event.button==1)&&this.noKeyModifiers(event)
944 this.isRightClick=function(event){return(this.isIE&&event.type!="click"&&event.type!="dblclick"?event.button==2:event.button==2)&&this.noKeyModifiers(event)
946 this.noKeyModifiers=function(event){return !event.ctrlKey&&!event.shiftKey&&!event.altKey&&!event.metaKey
948 this.isControlClick=function(event){return(this.isIE&&event.type!="click"&&event.type!="dblclick"?event.button==1:event.button==0)&&this.isControl(event)
950 this.isShiftClick=function(event){return(this.isIE&&event.type!="click"&&event.type!="dblclick"?event.button==1:event.button==0)&&this.isShift(event)
952 this.isControl=function(event){return(event.metaKey||event.ctrlKey)&&!event.shiftKey&&!event.altKey
954 this.isAlt=function(event){return event.altKey&&!event.ctrlKey&&!event.shiftKey&&!event.metaKey
956 this.isAltClick=function(event){return(this.isIE&&event.type!="click"&&event.type!="dblclick"?event.button==1:event.button==0)&&this.isAlt(event)
958 this.isControlShift=function(event){return(event.metaKey||event.ctrlKey)&&event.shiftKey&&!event.altKey
960 this.isShift=function(event){return event.shiftKey&&!event.metaKey&&!event.ctrlKey&&!event.altKey
962 this.addEvent=function(object,name,handler,useCapture){if(object.addEventListener){object.addEventListener(name,handler,useCapture)
965 this.removeEvent=function(object,name,handler,useCapture){try{if(object.removeEventListener){object.removeEventListener(name,handler,useCapture)
969 this.cancelEvent=function(e,preventDefault){if(!e){return
975 this.addGlobalEvent=function(name,handler){var doc=this.Firebug.browser.document;
976 var frames=this.Firebug.browser.window.frames;
977 this.addEvent(doc,name,handler);
978 if(this.Firebug.chrome.type=="popup"){this.addEvent(this.Firebug.chrome.document,name,handler)
981 i++){try{this.addEvent(frame.document,name,handler)
983 this.removeGlobalEvent=function(name,handler){var doc=this.Firebug.browser.document;
984 var frames=this.Firebug.browser.window.frames;
985 this.removeEvent(doc,name,handler);
986 if(this.Firebug.chrome.type=="popup"){this.removeEvent(this.Firebug.chrome.document,name,handler)
989 i++){try{this.removeEvent(frame.document,name,handler)
991 this.dispatch=function(listeners,name,args){if(!listeners){return
1005 this.disableTextSelection=function(e){if(typeof e.onselectstart!="undefined"){this.addEvent(e,"selectstart",disableTextSelectionHandler)
1007 if(!this.isFirefox){this.addEvent(e,"mousedown",disableTextSelectionHandler)
1010 this.restoreTextSelection=function(e){if(typeof e.onselectstart!="undefined"){this.removeEvent(e,"selectstart",disableTextSelectionHandler)
1012 if(!this.isFirefox){this.removeEvent(e,"mousedown",disableTextSelectionHandler)
1015 this.getEventFamily=function(eventType){if(!this.families){this.families={};
1019 ++i){this.families[types[i]]=family
1020 }}}return this.families[eventType]
1022 this.getFileName=function(url){var split=this.splitURLBase(url);
1025 this.splitURLBase=function(url){if(this.isDataURL(url)){return this.splitDataURL(url)
1026 }return this.splitURLTrue(url)
1028 this.splitDataURL=function(url){var mark=url.indexOf(":",3);
1040 var caller_split=this.splitURLTrue(caller_URL);
1051 this.splitURLTrue=function(url){var m=reSplitFile.exec(url);
1056 this.getFileExtension=function(url){if(!url){return null
1062 this.isSystemURL=function(url){if(!url){return true
1072 this.isSystemPage=function(win){try{var doc=win.document;
1079 this.isSystemStyleSheet=function(sheet){var href=sheet&&sheet.href;
1082 this.getURIHost=function(uri){try{if(uri){return uri.host
1086 this.isLocalURL=function(url){if(url.substr(0,5)=="file:"){return true
1090 this.isDataURL=function(url){return(url&&url.substr(0,5)=="data:")
1092 this.getLocalPath=function(url){if(this.isLocalURL(url)){var fileHandler=ioService.getProtocolHandler("file").QueryInterface(Ci.nsIFileProtocolHandler);
1096 this.getURLFromLocalFile=function(file){var fileHandler=ioService.getProtocolHandler("file").QueryInterface(Ci.nsIFileProtocolHandler);
1100 this.getDataURLForContent=function(content,url){var uri="data:text/html;";
1104 },this.getDomain=function(url){var m=/[^:]+:\/{1,3}([^\/]+)/.exec(url);
1107 this.getURLPath=function(url){var m=/[^:]+:\/{1,3}[^\/]+(\/.*?)$/.exec(url);
1110 this.getPrettyDomain=function(url){var m=/[^:]+:\/{1,3}(www\.)?([^\/]+)/.exec(url);
1113 this.absoluteURL=function(url,baseURL){return this.absoluteURLWithDots(url,baseURL).replace("/./","/","g")
1115 this.absoluteURLWithDots=function(url,baseURL){if(url[0]=="?"){return baseURL+url
1129 this.normalizeURL=function(url){if(!url){return""
1137 this.denormalizeURL=function(url){return url.replace(/file:\/\/\//g,"file:/")
1139 this.parseURLParams=function(url){var q=url?url.indexOf("?"):-1;
1145 }return this.parseURLEncodedText(search)
1147 this.parseURLEncodedText=function(text){var maxValueLength=25000;
1154 if(parts.length==2){if(parts[1].length>maxValueLength){parts[1]=this.$STR("LargeData")
1163 this.parseURLParamsArray=function(url){var q=url?url.indexOf("?"):-1;
1169 }return this.parseURLEncodedTextArray(search)
1171 this.parseURLEncodedTextArray=function(text){var maxValueLength=25000;
1178 if(parts.length==2){if(parts[1].length>maxValueLength){parts[1]=this.$STR("LargeData")
1187 this.reEncodeURL=function(file,text){var lines=text.split("\n");
1188 var params=this.parseURLEncodedText(lines[lines.length-1]);
1197 this.getResource=function(aURL){try{var channel=ioService.newChannel(aURL,null,null);
1202 this.parseJSONString=function(jsonString,originURL){var regex=new RegExp(/^\/\*-secure-([\s\S]*)\*\/\s*$/);
1218 this.objectToString=function(object){try{return object+""
1221 this.setSelectionRange=function(input,start,length){if(input.createTextRange){var range=input.createTextRange();
1228 this.getInputSelectionStart=function(input){if(document.selection){var range=input.ownerDocument.selection.createRange();
1236 function onOperaTabBlur(e){if(this.lastKey==9){this.focus()
1237 }}function onOperaTabKeyDown(e){this.lastKey=e.keyCode
1238 }function onOperaTabFocus(e){this.lastKey=null
1239 }this.fixOperaTabKey=function(el){el.onfocus=onOperaTabFocus;
1243 this.Property=function(object,name){this.object=object;
1244 this.name=name;
1245 this.getObject=function(){return object[name]
1248 this.ErrorCopy=function(message){this.message=message
1250 function EventCopy(event){for(var name in event){try{this[name]=event[name]
1251 }catch(exc){}}}this.EventCopy=EventCopy;
1254 this.isArray=function(object){return toString.call(object)==="[object Array]"
1256 this.isFunction=function(object){if(!object){return false
1257 }try{return toString.call(object)==="[object Function]"||this.isIE&&typeof object!="string"&&reFunction.test(""+object)
1261 this.instanceOf=function(object,className){if(!object||typeof object!="object"){return false
1273 if(n=="property"&&!(value in object)||n=="method"&&!this.isFunction(object[value])||n=="value"&&(""+object[name]).toLowerCase()!=(""+value).toLowerCase()){return false
1297 this.getDOMMembers=function(object){if(!domMemberCache){FBL.domMemberCache=domMemberCache={};
1303 }}}try{if(this.instanceOf(object,"Window")){return domMemberCache.Window
1304 }else{if(this.instanceOf(object,"Document")||this.instanceOf(object,"XMLDocument")){return domMemberCache.Document
1305 }else{if(this.instanceOf(object,"Location")){return domMemberCache.Location
1306 }else{if(this.instanceOf(object,"HTMLImageElement")){return domMemberCache.HTMLImageElement
1307 }else{if(this.instanceOf(object,"HTMLAnchorElement")){return domMemberCache.HTMLAnchorElement
1308 }else{if(this.instanceOf(object,"HTMLInputElement")){return domMemberCache.HTMLInputElement
1309 }else{if(this.instanceOf(object,"HTMLButtonElement")){return domMemberCache.HTMLButtonElement
1310 }else{if(this.instanceOf(object,"HTMLFormElement")){return domMemberCache.HTMLFormElement
1311 }else{if(this.instanceOf(object,"HTMLBodyElement")){return domMemberCache.HTMLBodyElement
1312 }else{if(this.instanceOf(object,"HTMLHtmlElement")){return domMemberCache.HTMLHtmlElement
1313 }else{if(this.instanceOf(object,"HTMLScriptElement")){return domMemberCache.HTMLScriptElement
1314 }else{if(this.instanceOf(object,"HTMLTableElement")){return domMemberCache.HTMLTableElement
1315 }else{if(this.instanceOf(object,"HTMLTableRowElement")){return domMemberCache.HTMLTableRowElement
1316 }else{if(this.instanceOf(object,"HTMLTableCellElement")){return domMemberCache.HTMLTableCellElement
1317 }else{if(this.instanceOf(object,"HTMLIFrameElement")){return domMemberCache.HTMLIFrameElement
1318 }else{if(this.instanceOf(object,"SVGSVGElement")){return domMemberCache.SVGSVGElement
1319 }else{if(this.instanceOf(object,"SVGElement")){return domMemberCache.SVGElement
1320 }else{if(this.instanceOf(object,"Element")){return domMemberCache.Element
1321 }else{if(this.instanceOf(object,"Text")||this.instanceOf(object,"CDATASection")){return domMemberCache.Text
1322 }else{if(this.instanceOf(object,"Attr")){return domMemberCache.Attr
1323 }else{if(this.instanceOf(object,"Node")){return domMemberCache.Node
1324 }else{if(this.instanceOf(object,"Event")||this.instanceOf(object,"EventCopy")){return domMemberCache.Event
1329 this.isDOMMember=function(object,propName){var members=this.getDOMMembers(object);
1356 this.domConstantMap={ELEMENT_NODE:1,ATTRIBUTE_NODE:1,TEXT_NODE:1,CDATA_SECTION_NODE:1,ENTITY_REFERENCE_NODE:1,ENTITY_NODE:1,PROCESSING_INSTRUCTION_NODE:1,COMMENT_NODE:1,DOCUMENT_NODE:1,DOCUMENT_TYPE_NODE:1,DOCUMENT_FRAGMENT_NODE:1,NOTATION_NODE:1,DOCUMENT_POSITION_DISCONNECTED:1,DOCUMENT_POSITION_PRECEDING:1,DOCUMENT_POSITION_FOLLOWING:1,DOCUMENT_POSITION_CONTAINS:1,DOCUMENT_POSITION_CONTAINED_BY:1,DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC:1,UNKNOWN_RULE:1,STYLE_RULE:1,CHARSET_RULE:1,IMPORT_RULE:1,MEDIA_RULE:1,FONT_FACE_RULE:1,PAGE_RULE:1,CAPTURING_PHASE:1,AT_TARGET:1,BUBBLING_PHASE:1,SCROLL_PAGE_UP:1,SCROLL_PAGE_DOWN:1,MOUSEUP:1,MOUSEDOWN:1,MOUSEOVER:1,MOUSEOUT:1,MOUSEMOVE:1,MOUSEDRAG:1,CLICK:1,DBLCLICK:1,KEYDOWN:1,KEYUP:1,KEYPRESS:1,DRAGDROP:1,FOCUS:1,BLUR:1,SELECT:1,CHANGE:1,RESET:1,SUBMIT:1,SCROLL:1,LOAD:1,UNLOAD:1,XFER_DONE:1,ABORT:1,ERROR:1,LOCATE:1,MOVE:1,RESIZE:1,FORWARD:1,HELP:1,BACK:1,TEXT:1,ALT_MASK:1,CONTROL_MASK:1,SHIFT_MASK:1,META_MASK:1,DOM_VK_TAB:1,DOM_VK_PAGE_UP:1,DOM_VK_PAGE_DOWN:1,DOM_VK_UP:1,DOM_VK_DOWN:1,DOM_VK_LEFT:1,DOM_VK_RIGHT:1,DOM_VK_CANCEL:1,DOM_VK_HELP:1,DOM_VK_BACK_SPACE:1,DOM_VK_CLEAR:1,DOM_VK_RETURN:1,DOM_VK_ENTER:1,DOM_VK_SHIFT:1,DOM_VK_CONTROL:1,DOM_VK_ALT:1,DOM_VK_PAUSE:1,DOM_VK_CAPS_LOCK:1,DOM_VK_ESCAPE:1,DOM_VK_SPACE:1,DOM_VK_END:1,DOM_VK_HOME:1,DOM_VK_PRINTSCREEN:1,DOM_VK_INSERT:1,DOM_VK_DELETE:1,DOM_VK_0:1,DOM_VK_1:1,DOM_VK_2:1,DOM_VK_3:1,DOM_VK_4:1,DOM_VK_5:1,DOM_VK_6:1,DOM_VK_7:1,DOM_VK_8:1,DOM_VK_9:1,DOM_VK_SEMICOLON:1,DOM_VK_EQUALS:1,DOM_VK_A:1,DOM_VK_B:1,DOM_VK_C:1,DOM_VK_D:1,DOM_VK_E:1,DOM_VK_F:1,DOM_VK_G:1,DOM_VK_H:1,DOM_VK_I:1,DOM_VK_J:1,DOM_VK_K:1,DOM_VK_L:1,DOM_VK_M:1,DOM_VK_N:1,DOM_VK_O:1,DOM_VK_P:1,DOM_VK_Q:1,DOM_VK_R:1,DOM_VK_S:1,DOM_VK_T:1,DOM_VK_U:1,DOM_VK_V:1,DOM_VK_W:1,DOM_VK_X:1,DOM_VK_Y:1,DOM_VK_Z:1,DOM_VK_CONTEXT_MENU:1,DOM_VK_NUMPAD0:1,DOM_VK_NUMPAD1:1,DOM_VK_NUMPAD2:1,DOM_VK_NUMPAD3:1,DOM_VK_NUMPAD4:1,DOM_VK_NUMPAD5:1,DOM_VK_NUMPAD6:1,DOM_VK_NUMPAD7:1,DOM_VK_NUMPAD8:1,DOM_VK_NUMPAD9:1,DOM_VK_MULTIPLY:1,DOM_VK_ADD:1,DOM_VK_SEPARATOR:1,DOM_VK_SUBTRACT:1,DOM_VK_DECIMAL:1,DOM_VK_DIVIDE:1,DOM_VK_F1:1,DOM_VK_F2:1,DOM_VK_F3:1,DOM_VK_F4:1,DOM_VK_F5:1,DOM_VK_F6:1,DOM_VK_F7:1,DOM_VK_F8:1,DOM_VK_F9:1,DOM_VK_F10:1,DOM_VK_F11:1,DOM_VK_F12:1,DOM_VK_F13:1,DOM_VK_F14:1,DOM_VK_F15:1,DOM_VK_F16:1,DOM_VK_F17:1,DOM_VK_F18:1,DOM_VK_F19:1,DOM_VK_F20:1,DOM_VK_F21:1,DOM_VK_F22:1,DOM_VK_F23:1,DOM_VK_F24:1,DOM_VK_NUM_LOCK:1,DOM_VK_SCROLL_LOCK:1,DOM_VK_COMMA:1,DOM_VK_PERIOD:1,DOM_VK_SLASH:1,DOM_VK_BACK_QUOTE:1,DOM_VK_OPEN_BRACKET:1,DOM_VK_BACK_SLASH:1,DOM_VK_CLOSE_BRACKET:1,DOM_VK_QUOTE:1,DOM_VK_META:1,SVG_ZOOMANDPAN_DISABLE:1,SVG_ZOOMANDPAN_MAGNIFY:1,SVG_ZOOMANDPAN_UNKNOWN:1};
1357 this.cssInfo={background:["bgRepeat","bgAttachment","bgPosition","color","systemColor","none"],"background-attachment":["bgAttachment"],"background-color":["color","systemColor"],"background-image":["none"],"background-position":["bgPosition"],"background-repeat":["bgRepeat"],border:["borderStyle","thickness","color","systemColor","none"],"border-top":["borderStyle","borderCollapse","color","systemColor","none"],"border-right":["borderStyle","borderCollapse","color","systemColor","none"],"border-bottom":["borderStyle","borderCollapse","color","systemColor","none"],"border-left":["borderStyle","borderCollapse","color","systemColor","none"],"border-collapse":["borderCollapse"],"border-color":["color","systemColor"],"border-top-color":["color","systemColor"],"border-right-color":["color","systemColor"],"border-bottom-color":["color","systemColor"],"border-left-color":["color","systemColor"],"border-spacing":[],"border-style":["borderStyle"],"border-top-style":["borderStyle"],"border-right-style":["borderStyle"],"border-bottom-style":["borderStyle"],"border-left-style":["borderStyle"],"border-width":["thickness"],"border-top-width":["thickness"],"border-right-width":["thickness"],"border-bottom-width":["thickness"],"border-left-width":["thickness"],bottom:["auto"],"caption-side":["captionSide"],clear:["clear","none"],clip:["auto"],color:["color","systemColor"],content:["content"],"counter-increment":["none"],"counter-reset":["none"],cursor:["cursor","none"],direction:["direction"],display:["display","none"],"empty-cells":[],"float":["float","none"],font:["fontStyle","fontVariant","fontWeight","fontFamily"],"font-family":["fontFamily"],"font-size":["fontSize"],"font-size-adjust":[],"font-stretch":[],"font-style":["fontStyle"],"font-variant":["fontVariant"],"font-weight":["fontWeight"],height:["auto"],left:["auto"],"letter-spacing":[],"line-height":[],"list-style":["listStyleType","listStylePosition","none"],"list-style-image":["none"],"list-style-position":["listStylePosition"],"list-style-type":["listStyleType","none"],margin:[],"margin-top":[],"margin-right":[],"margin-bottom":[],"margin-left":[],"marker-offset":["auto"],"min-height":["none"],"max-height":["none"],"min-width":["none"],"max-width":["none"],outline:["borderStyle","color","systemColor","none"],"outline-color":["color","systemColor"],"outline-style":["borderStyle"],"outline-width":[],overflow:["overflow","auto"],"overflow-x":["overflow","auto"],"overflow-y":["overflow","auto"],padding:[],"padding-top":[],"padding-right":[],"padding-bottom":[],"padding-left":[],position:["position"],quotes:["none"],right:["auto"],"table-layout":["tableLayout","auto"],"text-align":["textAlign"],"text-decoration":["textDecoration","none"],"text-indent":[],"text-shadow":[],"text-transform":["textTransform","none"],top:["auto"],"unicode-bidi":[],"vertical-align":["verticalAlign"],"white-space":["whiteSpace"],width:["auto"],"word-spacing":[],"z-index":[],"-moz-appearance":["mozAppearance"],"-moz-border-radius":[],"-moz-border-radius-bottomleft":[],"-moz-border-radius-bottomright":[],"-moz-border-radius-topleft":[],"-moz-border-radius-topright":[],"-moz-border-top-colors":["color","systemColor"],"-moz-border-right-colors":["color","systemColor"],"-moz-border-bottom-colors":["color","systemColor"],"-moz-border-left-colors":["color","systemColor"],"-moz-box-align":["mozBoxAlign"],"-moz-box-direction":["mozBoxDirection"],"-moz-box-flex":[],"-moz-box-ordinal-group":[],"-moz-box-orient":["mozBoxOrient"],"-moz-box-pack":["mozBoxPack"],"-moz-box-sizing":["mozBoxSizing"],"-moz-opacity":[],"-moz-user-focus":["userFocus","none"],"-moz-user-input":["userInput"],"-moz-user-modify":[],"-moz-user-select":["userSelect","none"],"-moz-background-clip":[],"-moz-background-inline-policy":[],"-moz-background-origin":[],"-moz-binding":[],"-moz-column-count":[],"-moz-column-gap":[],"-moz-column-width":[],"-moz-image-region":[]};
1358 this.inheritedStyleNames={"border-collapse":1,"border-spacing":1,"border-style":1,"caption-side":1,color:1,cursor:1,direction:1,"empty-cells":1,font:1,"font-family":1,"font-size-adjust":1,"font-size":1,"font-style":1,"font-variant":1,"font-weight":1,"letter-spacing":1,"line-height":1,"list-style":1,"list-style-image":1,"list-style-position":1,"list-style-type":1,quotes:1,"text-align":1,"text-decoration":1,"text-indent":1,"text-shadow":1,"text-transform":1,"white-space":1,"word-spacing":1};
1359 this.cssKeywords={appearance:["button","button-small","checkbox","checkbox-container","checkbox-small","dialog","listbox","menuitem","menulist","menulist-button","menulist-textfield","menupopup","progressbar","radio","radio-container","radio-small","resizer","scrollbar","scrollbarbutton-down","scrollbarbutton-left","scrollbarbutton-right","scrollbarbutton-up","scrollbartrack-horizontal","scrollbartrack-vertical","separator","statusbar","tab","tab-left-edge","tabpanels","textfield","toolbar","toolbarbutton","toolbox","tooltip","treeheadercell","treeheadersortarrow","treeitem","treetwisty","treetwistyopen","treeview","window"],systemColor:["ActiveBorder","ActiveCaption","AppWorkspace","Background","ButtonFace","ButtonHighlight","ButtonShadow","ButtonText","CaptionText","GrayText","Highlight","HighlightText","InactiveBorder","InactiveCaption","InactiveCaptionText","InfoBackground","InfoText","Menu","MenuText","Scrollbar","ThreeDDarkShadow","ThreeDFace","ThreeDHighlight","ThreeDLightShadow","ThreeDShadow","Window","WindowFrame","WindowText","-moz-field","-moz-fieldtext","-moz-workspace","-moz-visitedhyperlinktext","-moz-use-text-color"],color:["AliceBlue","AntiqueWhite","Aqua","Aquamarine","Azure","Beige","Bisque","Black","BlanchedAlmond","Blue","BlueViolet","Brown","BurlyWood","CadetBlue","Chartreuse","Chocolate","Coral","CornflowerBlue","Cornsilk","Crimson","Cyan","DarkBlue","DarkCyan","DarkGoldenRod","DarkGray","DarkGreen","DarkKhaki","DarkMagenta","DarkOliveGreen","DarkOrange","DarkOrchid","DarkRed","DarkSalmon","DarkSeaGreen","DarkSlateBlue","DarkSlateGray","DarkTurquoise","DarkViolet","DeepPink","DarkSkyBlue","DimGray","DodgerBlue","Feldspar","FireBrick","FloralWhite","ForestGreen","Fuchsia","Gainsboro","GhostWhite","Gold","GoldenRod","Gray","Green","GreenYellow","HoneyDew","HotPink","IndianRed","Indigo","Ivory","Khaki","Lavender","LavenderBlush","LawnGreen","LemonChiffon","LightBlue","LightCoral","LightCyan","LightGoldenRodYellow","LightGrey","LightGreen","LightPink","LightSalmon","LightSeaGreen","LightSkyBlue","LightSlateBlue","LightSlateGray","LightSteelBlue","LightYellow","Lime","LimeGreen","Linen","Magenta","Maroon","MediumAquaMarine","MediumBlue","MediumOrchid","MediumPurple","MediumSeaGreen","MediumSlateBlue","MediumSpringGreen","MediumTurquoise","MediumVioletRed","MidnightBlue","MintCream","MistyRose","Moccasin","NavajoWhite","Navy","OldLace","Olive","OliveDrab","Orange","OrangeRed","Orchid","PaleGoldenRod","PaleGreen","PaleTurquoise","PaleVioletRed","PapayaWhip","PeachPuff","Peru","Pink","Plum","PowderBlue","Purple","Red","RosyBrown","RoyalBlue","SaddleBrown","Salmon","SandyBrown","SeaGreen","SeaShell","Sienna","Silver","SkyBlue","SlateBlue","SlateGray","Snow","SpringGreen","SteelBlue","Tan","Teal","Thistle","Tomato","Turquoise","Violet","VioletRed","Wheat","White","WhiteSmoke","Yellow","YellowGreen","transparent","invert"],auto:["auto"],none:["none"],captionSide:["top","bottom","left","right"],clear:["left","right","both"],cursor:["auto","cell","context-menu","crosshair","default","help","pointer","progress","move","e-resize","all-scroll","ne-resize","nw-resize","n-resize","se-resize","sw-resize","s-resize","w-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","col-resize","row-resize","text","vertical-text","wait","alias","copy","move","no-drop","not-allowed","-moz-alias","-moz-cell","-moz-copy","-moz-grab","-moz-grabbing","-moz-contextmenu","-moz-zoom-in","-moz-zoom-out","-moz-spinning"],direction:["ltr","rtl"],bgAttachment:["scroll","fixed"],bgPosition:["top","center","bottom","left","right"],bgRepeat:["repeat","repeat-x","repeat-y","no-repeat"],borderStyle:["hidden","dotted","dashed","solid","double","groove","ridge","inset","outset","-moz-bg-inset","-moz-bg-outset","-moz-bg-solid"],borderCollapse:["collapse","separate"],overflow:["visible","hidden","scroll","-moz-scrollbars-horizontal","-moz-scrollbars-none","-moz-scrollbars-vertical"],listStyleType:["disc","circle","square","decimal","decimal-leading-zero","lower-roman","upper-roman","lower-greek","lower-alpha","lower-latin","upper-alpha","upper-latin","hebrew","armenian","georgian","cjk-ideographic","hiragana","katakana","hiragana-iroha","katakana-iroha","inherit"],listStylePosition:["inside","outside"],content:["open-quote","close-quote","no-open-quote","no-close-quote","inherit"],fontStyle:["normal","italic","oblique","inherit"],fontVariant:["normal","small-caps","inherit"],fontWeight:["normal","bold","bolder","lighter","inherit"],fontSize:["xx-small","x-small","small","medium","large","x-large","xx-large","smaller","larger"],fontFamily:["Arial","Comic Sans MS","Georgia","Tahoma","Verdana","Times New Roman","Trebuchet MS","Lucida Grande","Helvetica","serif","sans-serif","cursive","fantasy","monospace","caption","icon","menu","message-box","small-caption","status-bar","inherit"],display:["block","inline","inline-block","list-item","marker","run-in","compact","table","inline-table","table-row-group","table-column","table-column-group","table-header-group","table-footer-group","table-row","table-cell","table-caption","-moz-box","-moz-compact","-moz-deck","-moz-grid","-moz-grid-group","-moz-grid-line","-moz-groupbox","-moz-inline-block","-moz-inline-box","-moz-inline-grid","-moz-inline-stack","-moz-inline-table","-moz-marker","-moz-popup","-moz-runin","-moz-stack"],position:["static","relative","absolute","fixed","inherit"],"float":["left","right"],textAlign:["left","right","center","justify"],tableLayout:["fixed"],textDecoration:["underline","overline","line-through","blink"],textTransform:["capitalize","lowercase","uppercase","inherit"],unicodeBidi:["normal","embed","bidi-override"],whiteSpace:["normal","pre","nowrap"],verticalAlign:["baseline","sub","super","top","text-top","middle","bottom","text-bottom","inherit"],thickness:["thin","medium","thick"],userFocus:["ignore","normal"],userInput:["disabled","enabled"],userSelect:["normal"],mozBoxSizing:["content-box","padding-box","border-box"],mozBoxAlign:["start","center","end","baseline","stretch"],mozBoxDirection:["normal","reverse"],mozBoxOrient:["horizontal","vertical"],mozBoxPack:["start","center","end"]};
1360 this.nonEditableTags={HTML:1,HEAD:1,html:1,head:1};
1361 this.innerEditableTags={BODY:1,body:1};
1362 this.selfClosingTags={meta:1,link:1,area:1,base:1,col:1,input:1,img:1,br:1,hr:1,param:1,embed:1};
1363 var invisibleTags=this.invisibleTags={HTML:1,HEAD:1,TITLE:1,META:1,LINK:1,STYLE:1,SCRIPT:1,NOSCRIPT:1,BR:1,PARAM:1,COL:1,html:1,head:1,title:1,meta:1,link:1,style:1,script:1,noscript:1,br:1,param:1,col:1};
1364 if(typeof KeyEvent=="undefined"){this.KeyEvent={DOM_VK_CANCEL:3,DOM_VK_HELP:6,DOM_VK_BACK_SPACE:8,DOM_VK_TAB:9,DOM_VK_CLEAR:12,DOM_VK_RETURN:13,DOM_VK_ENTER:14,DOM_VK_SHIFT:16,DOM_VK_CONTROL:17,DOM_VK_ALT:18,DOM_VK_PAUSE:19,DOM_VK_CAPS_LOCK:20,DOM_VK_ESCAPE:27,DOM_VK_SPACE:32,DOM_VK_PAGE_UP:33,DOM_VK_PAGE_DOWN:34,DOM_VK_END:35,DOM_VK_HOME:36,DOM_VK_LEFT:37,DOM_VK_UP:38,DOM_VK_RIGHT:39,DOM_VK_DOWN:40,DOM_VK_PRINTSCREEN:44,DOM_VK_INSERT:45,DOM_VK_DELETE:46,DOM_VK_0:48,DOM_VK_1:49,DOM_VK_2:50,DOM_VK_3:51,DOM_VK_4:52,DOM_VK_5:53,DOM_VK_6:54,DOM_VK_7:55,DOM_VK_8:56,DOM_VK_9:57,DOM_VK_SEMICOLON:59,DOM_VK_EQUALS:61,DOM_VK_A:65,DOM_VK_B:66,DOM_VK_C:67,DOM_VK_D:68,DOM_VK_E:69,DOM_VK_F:70,DOM_VK_G:71,DOM_VK_H:72,DOM_VK_I:73,DOM_VK_J:74,DOM_VK_K:75,DOM_VK_L:76,DOM_VK_M:77,DOM_VK_N:78,DOM_VK_O:79,DOM_VK_P:80,DOM_VK_Q:81,DOM_VK_R:82,DOM_VK_S:83,DOM_VK_T:84,DOM_VK_U:85,DOM_VK_V:86,DOM_VK_W:87,DOM_VK_X:88,DOM_VK_Y:89,DOM_VK_Z:90,DOM_VK_CONTEXT_MENU:93,DOM_VK_NUMPAD0:96,DOM_VK_NUMPAD1:97,DOM_VK_NUMPAD2:98,DOM_VK_NUMPAD3:99,DOM_VK_NUMPAD4:100,DOM_VK_NUMPAD5:101,DOM_VK_NUMPAD6:102,DOM_VK_NUMPAD7:103,DOM_VK_NUMPAD8:104,DOM_VK_NUMPAD9:105,DOM_VK_MULTIPLY:106,DOM_VK_ADD:107,DOM_VK_SEPARATOR:108,DOM_VK_SUBTRACT:109,DOM_VK_DECIMAL:110,DOM_VK_DIVIDE:111,DOM_VK_F1:112,DOM_VK_F2:113,DOM_VK_F3:114,DOM_VK_F4:115,DOM_VK_F5:116,DOM_VK_F6:117,DOM_VK_F7:118,DOM_VK_F8:119,DOM_VK_F9:120,DOM_VK_F10:121,DOM_VK_F11:122,DOM_VK_F12:123,DOM_VK_F13:124,DOM_VK_F14:125,DOM_VK_F15:126,DOM_VK_F16:127,DOM_VK_F17:128,DOM_VK_F18:129,DOM_VK_F19:130,DOM_VK_F20:131,DOM_VK_F21:132,DOM_VK_F22:133,DOM_VK_F23:134,DOM_VK_F24:135,DOM_VK_NUM_LOCK:144,DOM_VK_SCROLL_LOCK:145,DOM_VK_COMMA:188,DOM_VK_PERIOD:190,DOM_VK_SLASH:191,DOM_VK_BACK_QUOTE:192,DOM_VK_OPEN_BRACKET:219,DOM_VK_BACK_SLASH:220,DOM_VK_CLOSE_BRACKET:221,DOM_VK_QUOTE:222,DOM_VK_META:224}
1365 }this.Ajax={requests:[],transport:null,states:["Uninitialized","Loading","Loaded","Interactive","Complete"],initialize:function(){this.transport=FBL.getNativeXHRObject()
1376 this.requests.push(o);
1377 var s=this.getState();
1378 if(s=="Uninitialized"||s=="Complete"||s=="Loaded"){this.sendRequest()
1399 },onStateChange:function(options){var fn,o=options,t=this.transport;
1400 var state=this.getState(t);
1401 if(fn=o["on"+state]){fn(this.getResponse(o),o)
1402 }if(state=="Complete"){var success=t.status==200,response=this.getResponse(o);
1406 if(this.requests.length>0){setTimeout(this.sendRequest,10)
1407 }}},getResponse:function(options){var t=this.transport,type=options.dataType;
1413 }}}}}},getState:function(){return this.states[this.transport.readyState]
1415 this.createCookie=function(name,value,days){if("cookie" in document){if(days){var date=new Date();
1421 this.readCookie=function(name){if("cookie" in document){var nameEQ=name+"=";
1430 this.removeCookie=function(name){this.createCookie(name,"",-1)
1442 this.SourceLink=function(url,line,type,object,instance){this.href=url;
1443 this.instance=instance;
1444 this.line=line;
1445 this.type=type;
1446 this.object=object
1448 this.SourceLink.prototype={toString:function(){return this.href
1449 },toJSON:function(){return'{"href":"'+this.href+'", '+(this.line?('"line":'+this.line+","):"")+(this.type?(' "type":"'+this.type+'",'):"")+"}"
1451 this.SourceText=function(lines,owner){this.lines=lines;
1452 this.owner=owner
1454 this.SourceText.getLineAsHTML=function(lineNo){return escapeForSourceLine(this.lines[lineNo-1])
1457 FBL.ns(function(){with(FBL){var oSTR={NoMembersWarning:"There are no properties to show for this object.",EmptyStyleSheet:"There are no rules in this stylesheet.",EmptyElementCSS:"This element has no style rules.",AccessRestricted:"Access to restricted URI denied.","net.label.Parameters":"Parameters","net.label.Source":"Source",URLParameters:"Params",EditStyle:"Edit Element Style...",NewRule:"New Rule...",NewProp:"New Property...",EditProp:'Edit "%s"',DeleteProp:'Delete "%s"',DisableProp:'Disable "%s"'};
1578 }},loadPrefs:function(){this.restorePrefs();
1593 this.restorePrefs()
1605 Firebug.Listener=function(){this.fbListeners=null
1607 Firebug.Listener.prototype={addListener:function(listener){if(!this.fbListeners){this.fbListeners=[]
1608 }this.fbListeners.push(listener)
1609 },removeListener:function(listener){remove(this.fbListeners,listener)
1612 Firebug.Panel={name:"HelloWorld",title:"Hello World!",parentPanel:null,options:{hasCommandLine:false,hasStatusBar:false,hasToolButtons:false,isPreRendered:false,innerHTMLSync:false},tabNode:null,panelNode:null,sidePanelNode:null,statusBarNode:null,toolButtonsNode:null,panelBarNode:null,sidePanelBarBoxNode:null,sidePanelBarNode:null,sidePanelBar:null,searchable:false,editable:true,order:2147483647,statusSeparator:"<",create:function(context,doc){this.hasSidePanel=parentPanelMap.hasOwnProperty(this.name);
1613 this.panelBarNode=$("fbPanelBar1");
1614 this.sidePanelBarBoxNode=$("fbPanelBar2");
1615 if(this.hasSidePanel){this.sidePanelBar=extend({},PanelBar);
1616 this.sidePanelBar.create(this)
1617 }var options=this.options=extend(Firebug.Panel.options,this.options);
1618 var panelId="fb"+this.name;
1619 if(options.isPreRendered){this.panelNode=$(panelId);
1620 this.tabNode=$(panelId+"Tab");
1621 this.tabNode.style.display="block";
1622 if(options.hasToolButtons){this.toolButtonsNode=$(panelId+"Buttons")
1623 }if(options.hasStatusBar){this.statusBarBox=$("fbStatusBarBox");
1624 this.statusBarNode=$(panelId+"StatusBar")
1625 }}else{var containerSufix=this.parentPanel?"2":"1";
1626 var panelNode=this.panelNode=createElement("div",{id:panelId,className:"fbPanel"});
1628 var tabHTML='<span class="fbTabL"></span><span class="fbTabText">'+this.title+'</span><span class="fbTabR"></span>';
1629 var tabNode=this.tabNode=createElement("a",{id:panelId+"Tab",className:"fbTab fbHover",innerHTML:tabHTML});
1631 }var panelBarNode=this.parentPanel?Firebug.chrome.getPanel(this.parentPanel).sidePanelBarNode:this.panelBarNode;
1634 if(options.hasToolButtons){this.toolButtonsNode=createElement("span",{id:panelId+"Buttons",className:"fbToolbarButtons"});
1635 $("fbToolbarButtons").appendChild(this.toolButtonsNode)
1636 }if(options.hasStatusBar){this.statusBarBox=$("fbStatusBarBox");
1637 this.statusBarNode=createElement("span",{id:panelId+"StatusBar",className:"fbToolbarButtons fbStatusBar"});
1638 this.statusBarBox.appendChild(this.statusBarNode)
1639 }}this.containerNode=this.panelNode.parentNode;
1640 if(FBTrace.DBG_INITIALIZE){FBTrace.sysout("Firebug.Panel.create",this.name)
1641 }this.onContextMenu=bind(this.onContextMenu,this)
1642 },destroy:function(state){if(FBTrace.DBG_INITIALIZE){FBTrace.sysout("Firebug.Panel.destroy",this.name)
1643 }if(this.hasSidePanel){this.sidePanelBar.destroy();
1644 this.sidePanelBar=null
1645 }this.options=null;
1646 this.name=null;
1647 this.parentPanel=null;
1648 this.tabNode=null;
1649 this.panelNode=null;
1650 this.containerNode=null;
1651 this.toolButtonsNode=null;
1652 this.statusBarBox=null;
1653 this.statusBarNode=null
1654 },initialize:function(){if(FBTrace.DBG_INITIALIZE){FBTrace.sysout("Firebug.Panel.initialize",this.name)
1655 }if(this.hasSidePanel){this.sidePanelBar.initialize()
1656 }var options=this.options=extend(Firebug.Panel.options,this.options);
1657 var panelId="fb"+this.name;
1658 this.panelNode=$(panelId);
1659 this.tabNode=$(panelId+"Tab");
1660 this.tabNode.style.display="block";
1661 if(options.hasStatusBar){this.statusBarBox=$("fbStatusBarBox");
1662 this.statusBarNode=$(panelId+"StatusBar")
1663 }if(options.hasToolButtons){this.toolButtonsNode=$(panelId+"Buttons")
1664 }this.containerNode=this.panelNode.parentNode;
1665 this.containerNode.scrollTop=this.lastScrollTop;
1666 addEvent(this.containerNode,"contextmenu",this.onContextMenu);
1670 }},shutdown:function(){if(FBTrace.DBG_INITIALIZE){FBTrace.sysout("Firebug.Panel.shutdown",this.name)
1673 }if(this.hasSidePanel){}this.lastScrollTop=this.containerNode.scrollTop;
1674 removeEvent(this.containerNode,"contextmenu",this.onContextMenu)
1675 },detach:function(oldChrome,newChrome){if(oldChrome&&oldChrome.selectedPanel&&oldChrome.selectedPanel.name==this.name){this.lastScrollTop=oldChrome.selectedPanel.containerNode.scrollTop
1676 }},reattach:function(doc){if(this.options.innerHTMLSync){this.synchronizeUI()
1677 }},synchronizeUI:function(){this.containerNode.scrollTop=this.lastScrollTop||0
1678 },show:function(state){var options=this.options;
1679 if(options.hasStatusBar){this.statusBarBox.style.display="inline";
1680 this.statusBarNode.style.display="inline"
1681 }if(options.hasToolButtons){this.toolButtonsNode.style.display="inline"
1682 }this.panelNode.style.display="block";
1683 this.visible=true;
1684 if(!this.parentPanel){Firebug.chrome.layout(this)
1685 }},hide:function(state){var options=this.options;
1686 if(options.hasStatusBar){this.statusBarBox.style.display="none";
1687 this.statusBarNode.style.display="none"
1688 }if(options.hasToolButtons){this.toolButtonsNode.style.display="none"
1689 }this.panelNode.style.display="none";
1690 this.visible=false
1691 },watchWindow:function(win){},unwatchWindow:function(win){},updateOption:function(name,value){},showToolbarButtons:function(buttonsId,show){try{if(!this.context.browser){if(FBTrace.DBG_ERRORS){FBTrace.sysout("firebug.Panel showToolbarButtons this.context has no browser, this:",this)
1693 }var buttons=this.context.browser.chrome.$(buttonsId);
1696 if(!this.context.browser){FBTrace.dumpStack("firebug.Panel showToolbarButtons no browser")
1699 },select:function(object,forceUpdate){if(!object){object=this.getDefaultSelection(this.context)
1700 }if(FBTrace.DBG_PANELS){FBTrace.sysout("firebug.select "+this.name+" forceUpdate: "+forceUpdate+" "+object+((object==this.selection)?"==":"!=")+this.selection)
1701 }if(forceUpdate||object!=this.selection){this.selection=object;
1702 this.updateSelection(object)
1703 }},updateSelection:function(object){},markChange:function(skipSelf){if(this.dependents){if(skipSelf){for(var i=0;
1704 i<this.dependents.length;
1705 ++i){var panelName=this.dependents[i];
1706 if(panelName!=this.name){this.context.invalidatePanels(panelName)
1707 }}}else{this.context.invalidatePanels.apply(this.context,this.dependents)
1709 },navigateToNextDocument:function(match,reverse){var self=this;
1717 }var allLocs=this.getLocationList().sort(compare);
1719 curPos<allLocs.length&&allLocs[curPos]!=this.location;
1726 if(match(object)){this.navigate(object);
1738 },getObjectDescription:function(object){var url=this.getObjectLocation(object);
1740 },highlight:function(show){var tab=this.getTab();
1745 var tab=chrome.$("fbPanelBar2").getTab(this.name);
1746 if(!tab){tab=chrome.$("fbPanelBar1").getTab(this.name)
1750 },onContextMenu:function(event){if(!this.getContextMenuItems){return
1753 var menu=this.getContextMenuItems(this.selection,target);
1759 Firebug.MeasureBox={startMeasuring:function(target){if(!this.measureBox){this.measureBox=target.ownerDocument.createElement("span");
1760 this.measureBox.className="measureBox"
1761 }copyTextStyles(target,this.measureBox);
1762 target.ownerDocument.body.appendChild(this.measureBox)
1763 },getMeasuringElement:function(){return this.measureBox
1764 },measureText:function(value){this.measureBox.innerHTML=value?escapeForSourceLine(value):"m";
1765 return{width:this.measureBox.offsetWidth,height:this.measureBox.offsetHeight-1}
1768 }this.measureBox.innerHTML=value;
1769 return{width:this.measureBox.offsetWidth,height:this.measureBox.offsetHeight-1}
1770 },getBox:function(target){var style=this.measureBox.ownerDocument.defaultView.getComputedStyle(this.measureBox,"");
1771 var box=getBoxFromStyles(style,this.measureBox);
1773 },stopMeasuring:function(){this.measureBox.parentNode.removeChild(this.measureBox)
1793 FBL.ns(function(){with(FBL){FBL.Controller={controllers:null,controllerContext:null,initialize:function(context){this.controllers=[];
1794 this.controllerContext=context||Firebug.chrome
1795 },shutdown:function(){this.removeControllers()
1798 i++){if(typeof arg[0]=="string"){arg[0]=$$(arg[0],this.controllerContext)
1800 arg[2]=bind(handler,this);
1802 this.controllers.push(arg);
1803 addEvent.apply(this,arg)
1807 c=this.controllers[j];
1808 j++){if(arg[0]==c[0]&&arg[1]==c[1]&&arg[2]==c[3]){removeEvent.apply(this,c)
1810 c=this.controllers[i];
1811 i++){removeEvent.apply(this,c)
1813 FBL.PanelBar={panelMap:null,selectedPanel:null,parentPanelName:null,create:function(ownerPanel){this.panelMap={};
1814 this.ownerPanel=ownerPanel;
1821 i++){if(!ownerPanel&&!p.prototype.parentPanel||ownerPanel&&p.prototype.parentPanel&&ownerPanel.name==p.prototype.parentPanel){this.addPanel(p.prototype.name)
1822 }}},destroy:function(){PanelBar.shutdown.call(this);
1823 for(var name in this.panelMap){this.removePanel(name);
1824 var panel=this.panelMap[name];
1826 this.panelMap[name]=null;
1827 delete this.panelMap[name]
1828 }this.panelMap=null;
1829 this.ownerPanel=null
1830 },initialize:function(){if(this.ownerPanel){this.ownerPanel.sidePanelBarNode.style.display="inline"
1831 }for(var name in this.panelMap){(function(self,name){var onTabClick=function onTabClick(){self.selectPanel(name);
1835 })(this,name)
1836 }},shutdown:function(){var selectedPanel=this.selectedPanel;
1840 }if(this.ownerPanel){this.ownerPanel.sidePanelBarNode.style.display="none"
1841 }this.selectedPanel=null
1843 var panel=this.panelMap[panelName]=new PanelType();
1845 },removePanel:function(panelName){var panel=this.panelMap[panelName];
1847 }},selectPanel:function(panelName){var selectedPanel=this.selectedPanel;
1848 var panel=this.panelMap[panelName];
1853 }this.selectedPanel=panel;
1857 }},getPanel:function(panelName){var panel=this.panelMap[panelName];
1861 append(this,options);
1862 this.state="unpressed";
1863 this.display="unpressed";
1864 if(this.element){this.container=this.element.parentNode
1865 }else{this.shouldDestroy=true;
1866 this.container=this.owner.getPanel().toolButtonsNode;
1867 this.element=createElement("a",{className:this.baseClassName+" "+this.className+" fbHover",innerHTML:this.caption});
1868 if(this.title){this.element.title=this.title
1869 }this.container.appendChild(this.element)
1871 Button.prototype=extend(Controller,{type:"normal",caption:"caption",title:null,className:"",baseClassName:"fbButton",pressedClassName:"fbBtnPressed",element:null,container:null,owner:null,state:null,display:null,destroy:function(){this.shutdown();
1872 if(this.shouldDestroy){this.container.removeChild(this.element)
1873 }this.element=null;
1874 this.container=null;
1875 this.owner=null
1876 },initialize:function(){Controller.initialize.apply(this);
1877 var element=this.element;
1878 this.addController([element,"mousedown",this.handlePress]);
1879 if(this.type=="normal"){this.addController([element,"mouseup",this.handleUnpress],[element,"mouseout",this.handleUnpress],[element,"click",this.handleClick])
1880 }},shutdown:function(){Controller.shutdown.apply(this)
1881 },restore:function(){this.changeState("unpressed")
1882 },changeState:function(state){this.state=state;
1883 this.changeDisplay(state)
1884 },changeDisplay:function(display){if(display!=this.display){if(display=="pressed"){setClass(this.element,this.pressedClassName)
1885 }else{if(display=="unpressed"){removeClass(this.element,this.pressedClassName)
1886 }}this.display=display
1888 if(this.type=="normal"){this.changeDisplay("pressed");
1889 this.beforeClick=true
1890 }else{if(this.type=="toggle"){if(this.state=="pressed"){this.changeState("unpressed");
1891 if(this.onUnpress){this.onUnpress.apply(this.owner,arguments)
1892 }}else{this.changeState("pressed");
1893 if(this.onPress){this.onPress.apply(this.owner,arguments)
1894 }}if(this.onClick){this.onClick.apply(this.owner,arguments)
1897 if(this.beforeClick){this.changeDisplay("unpressed")
1900 if(this.type=="normal"){if(this.onClick){this.onClick.apply(this.owner)
1901 }this.changeState("unpressed")
1902 }this.beforeClick=false;
1905 FBL.IconButton=function(){Button.apply(this,arguments)
1914 if(typeof item=="string"&&item.indexOf("-")==0){result.push({tag:this.separatorTag});
1920 item.tag=this.itemTag;
1924 item.tag=this.checkBoxTag
1926 item.tag=this.radioButtonTag
1928 item.tag=this.groupTag
1930 item.tag=this.shortcutTag
1941 }append(this,options);
1942 if(typeof this.element=="string"){this.id=this.element;
1943 this.element=$(this.id)
1944 }else{if(this.id){this.element.id=this.id
1945 }}this.element.firebugIgnore=true;
1946 this.elementStyle=this.element.style;
1947 this.isVisible=false;
1948 this.handleMouseDown=bind(this.handleMouseDown,this);
1949 this.handleMouseOver=bind(this.handleMouseOver,this);
1950 this.handleMouseOut=bind(this.handleMouseOut,this);
1951 this.handleWindowMouseDown=bind(this.handleWindowMouseDown,this)
1954 Menu.prototype=extend(Controller,{destroy:function(){this.hide();
1955 if(this.parentMenu){this.parentMenu.childMenu=null
1956 }this.element.parentNode.removeChild(this.element);
1957 this.element=null;
1958 this.elementStyle=null;
1959 this.parentMenu=null;
1960 this.parentTarget=null
1961 },initialize:function(){Controller.initialize.call(this);
1962 this.addController([this.element,"mousedown",this.handleMouseDown],[this.element,"mouseover",this.handleMouseOver])
1963 },shutdown:function(){Controller.shutdown.call(this)
1964 },show:function(x,y){this.initialize();
1965 if(this.isVisible){return
1968 if(this.parentMenu){var oldChildMenu=this.parentMenu.childMenu;
1969 if(oldChildMenu&&oldChildMenu!=this){oldChildMenu.destroy()
1970 }this.parentMenu.childMenu=this
1971 }else{addEvent(Firebug.chrome.document,"mousedown",this.handleWindowMouseDown)
1972 }this.elementStyle.display="block";
1973 this.elementStyle.visibility="hidden";
1975 x=Math.min(x,size.width-this.element.clientWidth-10);
1977 y=Math.min(y,size.height-this.element.clientHeight-10);
1979 this.elementStyle.left=x+"px";
1980 this.elementStyle.top=y+"px";
1981 this.elementStyle.visibility="visible";
1982 this.isVisible=true;
1983 if(isFunction(this.onShow)){this.onShow.apply(this,arguments)
1984 }},hide:function(){this.clearHideTimeout();
1985 this.clearShowChildTimeout();
1986 if(!this.isVisible){return
1987 }this.elementStyle.display="none";
1988 if(this.childMenu){this.childMenu.destroy();
1989 this.childMenu=null
1990 }if(this.parentTarget){removeClass(this.parentTarget,"fbMenuGroupSelected")
1991 }this.isVisible=false;
1992 this.shutdown();
1993 if(isFunction(this.onHide)){this.onHide.apply(this,arguments)
1995 var parent=this;
1997 this.showChildTimeout=Firebug.chrome.window.setTimeout(function(){var box=Firebug.chrome.getElementBox(target);
2004 },clearHideTimeout:function(){if(this.hideTimeout){Firebug.chrome.window.clearTimeout(this.hideTimeout);
2005 delete this.hideTimeout
2006 }},clearShowChildTimeout:function(){if(this.showChildTimeout){Firebug.chrome.window.clearTimeout(this.showChildTimeout);
2007 this.showChildTimeout=null
2009 var topParent=this;
2022 }if(isFunction(this.onCheck)){this.onCheck.call(this,target,value,!wasChecked)
2035 }else{if(typeof cmd=="string"){handler=this[cmd]
2037 if(handler){closeMenu=handler.call(this,target)!==false
2042 if(!target){removeEvent(Firebug.chrome.document,"mousedown",this.handleWindowMouseDown);
2043 this.hide()
2044 }},handleMouseOver:function(event){this.clearHideTimeout();
2045 this.clearShowChildTimeout();
2049 }var childMenu=this.childMenu;
2054 }}if(hasClass(target,"fbMenuGroup")){this.showChildMenu(target)
2072 FBL.Context=function(win){this.window=win.window;
2073 this.document=win.document;
2074 this.browser=Env.browser;
2075 if(isIE&&!this.window.eval){this.window.execScript("null");
2076 if(!this.window.eval){throw new Error("Firebug Error: eval() method not found in this window")
2077 }}this.eval=this.window.eval("new Function('try{ return window.eval.apply(window,arguments) }catch(E){ E."+evalError+"=true; return E }')")
2079 FBL.Context.prototype={browser:null,loaded:true,setTimeout:function(fn,delay){var win=this.window;
2080 if(win.setTimeout==this.setTimeout){throw new Error("setTimeout recursion")
2082 if(!this.timeouts){this.timeouts={}
2083 }this.timeouts[timeout]=1;
2086 if(this.timeouts){delete this.timeouts[timeout]
2087 }},setInterval:function(fn,delay){var win=this.window;
2089 if(!this.intervals){this.intervals={}
2090 }this.intervals[timeout]=1;
2093 if(this.intervals){delete this.intervals[timeout]
2094 }},invalidatePanels:function(){if(!this.invalidPanels){this.invalidPanels={}
2100 if(panel&&!panel.noRefresh){this.invalidPanels[panelName]=1
2101 }}if(this.refreshTimeout){this.clearTimeout(this.refreshTimeout);
2102 delete this.refreshTimeout
2103 }this.refreshTimeout=this.setTimeout(bindFixed(function(){var invalids=[];
2104 for(var panelName in this.invalidPanels){var panel=Firebug.chrome.selectedPanel.sidePanelBar?Firebug.chrome.selectedPanel.sidePanelBar.getPanel(panelName,true):null;
2108 }}}delete this.invalidPanels;
2109 delete this.refreshTimeout;
2110 if(invalids.length){this.invalidatePanels.apply(this,invalids)
2111 }},this),refreshDelay)
2117 }result=this.eval(cmd);
2124 if(typeof this.window.innerWidth=="number"){width=this.window.innerWidth;
2125 height=this.window.innerHeight
2126 }else{if((el=this.document.documentElement)&&(el.clientHeight||el.clientWidth)){width=el.clientWidth;
2128 }else{if((el=this.document.body)&&(el.clientHeight||el.clientWidth)){width=el.clientWidth;
2132 if(!isIEQuiksMode&&(el=this.document.documentElement)&&(el.scrollHeight||el.scrollWidth)){width=el.scrollWidth;
2134 }if((el=this.document.body)&&(el.scrollHeight||el.scrollWidth)&&(el.scrollWidth>width||el.scrollHeight>height)){width=el.scrollWidth;
2138 if(typeof this.window.pageYOffset=="number"){top=this.window.pageYOffset;
2139 left=this.window.pageXOffset
2140 }else{if((el=this.document.body)&&(el.scrollTop||el.scrollLeft)){top=el.scrollTop;
2142 }else{if((el=this.document.documentElement)&&(el.scrollTop||el.scrollLeft)){top=el.scrollTop;
2145 },getElementFromPoint:function(x,y){if(shouldFixElementFromPoint){var scroll=this.getWindowScrollPosition();
2146 return this.document.elementFromPoint(x+scroll.left,y+scroll.top)
2147 }else{return this.document.elementFromPoint(x,y)
2156 var offset=isIE?this.document.body.clientTop||this.document.documentElement.clientTop:0;
2157 var scroll=this.getWindowScrollPosition();
2162 }else{var position=this.getElementPosition(el);
2169 var cssValue=this.getStyle(el,name);
2178 }var m=this.getMeasurement(el,name);
2182 }else{if(unit=="pt"){return this.pointsToPixels(name,value)
2183 }else{if(unit=="em"){return this.emToPixels(el,value)
2184 }else{if(unit=="%"){return this.percentToPixels(el,value)
2185 }else{if(unit=="ex"){return this.exToPixels(el,value)
2190 i++){result[i]=Math.round(this.getMeasurementInPixels(el,name+sufix))
2200 if(cssValue=="auto"){if(!autoMargin){autoMargin=this.getCSSAutoMarginBox(el)
2202 }else{result[i]=this.getMeasurementInPixels(el,propName)
2205 i++){result[i]=this.getMeasurementInPixels(el,name+sufix)
2212 }var box=this.document.createElement("div");
2215 var text=this.document.createTextNode("&nbsp;");
2218 this.document.body.appendChild(box);
2223 this.document.body.removeChild(box);
2225 },getFontSizeInPixels:function(el){var size=this.getMeasurement(el,"fontSize");
2227 }var computeDirtyFontSize=function(el,calibration){var div=this.document.createElement("div");
2244 }var fontSize=this.getFontSizeInPixels(el);
2247 }var div=this.document.createElement("div");
2254 }var div=this.document.createElement("div");
2261 }:function(el,name){return this.document.defaultView.getComputedStyle(el,null)[name]||el.style[name]||undefined
2277 if(FBChrome.hasOwnProperty(name)&&!isFunction(prop)){this[name]=prop
2386 append(this,Base);
2387 append(this,chrome);
2388 append(this,new Context(chrome.window));
2389 FirebugChrome.chromeMap[type]=this;
2390 Firebug.chrome=this;
2392 this.commandLineVisible=false;
2393 this.sidePanelVisible=false;
2394 this.create();
2395 return this
2400 append(ChromeBase,{node:null,type:null,document:null,window:null,sidePanelVisible:false,commandLineVisible:false,largeCommandLineVisible:false,inspectButton:null,create:function(){PanelBar.create.call(this);
2401 if(Firebug.Inspector){this.inspectButton=new Button({type:"toggle",element:$("fbChrome_btInspect"),owner:Firebug.Inspector,onPress:Firebug.Inspector.startInspecting,onUnpress:Firebug.Inspector.stopInspecting})
2402 }},destroy:function(){if(Firebug.Inspector){this.inspectButton.destroy()
2403 }PanelBar.destroy.call(this);
2404 this.shutdown()
2410 },visitWebsite:function(){this.visit("http://getfirebug.com/lite.html")
2411 },visitDiscussionGroup:function(){this.visit("http://groups.google.com/group/firebug")
2412 },visitIssueTracker:function(){this.visit("http://code.google.com/p/fbug/issues/list")
2419 if(target){this.updateMenu(target)
2452 }Controller.initialize.call(this);
2453 PanelBar.initialize.call(this);
2489 }}if(Firebug.Inspector){this.inspectButton.initialize()
2490 }this.addController([$("fbLargeCommandLineIcon"),"click",this.showLargeCommandLine]);
2491 var self=this;
2526 this.addController([fbPanel1,"mousedown",onPanelMouseDown],[fbPanel2,"mousedown",onPanelMouseDown]);
2527 if(FBL.domplate){this.testMenu()
2528 }},shutdown:function(){if(Firebug.Inspector){this.inspectButton.shutdown()
2533 Controller.shutdown.call(this);
2534 PanelBar.shutdown.call(this);
2561 },toggle:function(forceOpen,popup){if(popup){this.detach()
2569 if(shouldOpen){this.open()
2570 }else{this.close()
2571 }}},detach:function(){if(!FirebugChrome.chromeMap.popup){this.close();
2583 },draw:function(){var size=this.getSize();
2602 }}},getSize:function(){return this.type=="div"?{height:this.node.offsetHeight,width:this.node.offsetWidth}:this.getWindowSize()
2603 },resize:function(){var self=this;
2634 }},focusCommandLine:function(){var selectedPanelName=this.selectedPanel.name,panelToSelect;
2639 }this.selectPanel(panelToSelect);
2644 var ChromeFrameBase=extend(ChromeBase,{create:function(){ChromeBase.create.call(this);
2645 if(isFirefox){this.node.style.display="block"
2646 }if(Env.Options.startInNewWindow){this.close();
2647 this.toggle(true,true);
2649 }if(Env.Options.startOpened){this.open()
2650 }else{this.close()
2655 ChromeBase.destroy.call(this);
2656 this.document=null;
2657 delete this.document;
2658 this.window=null;
2659 delete this.window;
2660 this.node.parentNode.removeChild(this.node);
2661 this.node=null;
2662 delete this.node
2663 },initialize:function(){ChromeBase.initialize.call(this);
2664 this.addController([Firebug.browser.window,"resize",this.resize],[$("fbWindow_btClose"),"click",this.close],[$("fbWindow_btDetach"),"click",this.detach],[$("fbWindow_btDeactivate"),"click",this.deactivate]);
2665 if(!Env.Options.enablePersistent){this.addController([Firebug.browser.window,"unload",Firebug.shutdown])
2666 }if(noFixedPosition){this.addController([Firebug.browser.window,"scroll",this.fixIEPosition])
2669 this.isInitialized=true
2672 ChromeBase.shutdown.apply(this);
2673 this.isInitialized=false
2675 ChromeBase.reattach(FirebugChrome.chromeMap.popup,this)
2678 }var node=this.node;
2684 var self=this;
2690 }},close:function(){if(Firebug.context.persistedState.isOpen){if(this.isInitialized){this.shutdown()
2693 }var node=this.node;
2704 }},fixIEPosition:function(){var doc=this.document;
2709 var height=this.node.offsetHeight;
2711 this.node.style.top=maxHeight-height+scroll.top+"px";
2712 if((this.type=="frame"||this.type=="div")&&(bodyStyle.marginLeft||bodyStyle.marginRight)){this.node.style.width=size.width+"px"
2714 }this.draw()
2716 var ChromeMini=extend(Controller,{create:function(chrome){append(this,chrome);
2717 this.type="mini"
2718 },initialize:function(){Controller.initialize.apply(this);
2727 }var node=this.node;
2732 if(this.node.nodeName.toLowerCase()=="iframe"){node.setAttribute("allowTransparency","true");
2733 this.document.body.style.backgroundColor="transparent"
2735 }if(noFixedPosition){this.fixIEPosition()
2736 }this.addController([$("fbMiniIcon",doc),"click",onMiniIconClick]);
2737 if(noFixedPosition){this.addController([Firebug.browser.window,"scroll",this.fixIEPosition])
2738 }this.isInitialized=true
2739 },shutdown:function(){var node=this.node;
2744 if(this.node.nodeName.toLowerCase()=="iframe"){node.setAttribute("allowTransparency","false");
2745 this.document.body.style.backgroundColor="#fff"
2747 }if(noFixedPosition){this.fixIEPosition()
2751 Controller.shutdown.apply(this);
2752 this.isInitialized=false
2754 var ChromePopupBase=extend(ChromeBase,{initialize:function(){setClass(this.document.body,"FirebugPopup");
2755 ChromeBase.initialize.call(this);
2756 this.addController([Firebug.chrome.window,"resize",this.resize],[Firebug.chrome.window,"unload",this.destroy]);
2757 if(Env.Options.enablePersistent){this.persist=bind(this.persist,this);
2758 addEvent(Firebug.browser.window,"unload",this.persist)
2759 }else{this.addController([Firebug.browser.window,"unload",this.close])
2771 if(frame){dispatch(frame.panelMap,"detach",[this,frame]);
2772 frame.reattach(this,frame)
2773 }if(Env.Options.enablePersistent){removeEvent(Firebug.browser.window,"unload",this.persist)
2774 }ChromeBase.destroy.apply(this);
2776 this.node.close()
2778 removeEvent(Firebug.browser.window,"unload",this.persist);
2804 },close:function(){this.destroy()
2958 this.loadJSONP(yql,function(data){var source=data.results[0];
2985 FBL.ns(function(){with(FBL){Firebug.Lite.Script=function(window){this.fileName=null;
2986 this.isValid=null;
2987 this.baseLineNumber=null;
2988 this.lineExtent=null;
2989 this.tag=null;
2990 this.functionName=null;
2991 this.functionSource=null
2996 FBL.ns(function(){with(FBL){Firebug.Lite.Browser=function(window){this.contentWindow=window;
2997 this.contentDocument=window.document;
2998 this.currentURI={spec:window.location.href}
3005 }if(typeof Date.prototype.toJSON!=="function"){Date.prototype.toJSON=function(key){return isFinite(this.valueOf())?this.getUTCFullYear()+"-"+f(this.getUTCMonth()+1)+"-"+f(this.getUTCDate())+"T"+f(this.getUTCHours())+":"+f(this.getUTCMinutes())+":"+f(this.getUTCSeconds())+"Z":null
3007 String.prototype.toJSON=Number.prototype.toJSON=Boolean.prototype.toJSON=function(key){return this.valueOf()
3503 },toggleInspect:function(){if(isInspecting){this.stopInspecting()
3505 this.startInspecting()
3515 if(outlineVisible){this.hideOutline()
3597 }if(!outlineVisible){this.showOutline()
3602 }if(boxModelVisible){this.hideBoxModel()
3634 if(!boxModelVisible){this.showBoxModel()
3639 }if(outlineVisible){this.hideOutline()
3711 (function(){FBL.DomplateTag=function DomplateTag(tagName){this.tagName=tagName
3739 FBL.DomplateTag.prototype={merge:function(args,oldTag){if(oldTag){this.tagName=oldTag.tagName
3740 }this.context=oldTag?oldTag.context:null;
3741 this.subject=oldTag?oldTag.subject:null;
3742 this.attrs=oldTag?copyObject(oldTag.attrs):{};
3743 this.classes=oldTag?copyObject(oldTag.classes):{};
3744 this.props=oldTag?copyObject(oldTag.props):null;
3745 this.listeners=oldTag?copyArray(oldTag.listeners):null;
3746 this.children=oldTag?copyArray(oldTag.children):[];
3747 this.vars=oldTag?copyArray(oldTag.vars):[];
3750 this.children=[];
3751 if(domplate.topContext){this.context=domplate.topContext
3752 }if(args.length){parseChildren(args,hasAttrs?1:0,this.vars,this.children)
3753 }if(hasAttrs){this.parseAttrs(attrs)
3754 }return creator(this,DomplateTag)
3756 readPartNames(val,this.vars);
3758 if(!this.listeners){this.listeners=[]
3759 }this.listeners.push(eventName,val)
3761 if(!this.props){this.props={}
3762 }this.props[propName]=val
3764 if(!this.classes){this.classes={}
3765 }this.classes[className]=val
3766 }else{if(name=="class"&&this.attrs.hasOwnProperty(name)){this.attrs[name]+=" "+val
3767 }else{this.attrs[name]=val
3768 }}}}}},compile:function(){if(this.renderMarkup){return
3769 }this.compileMarkup();
3770 this.compileDOM()
3771 },compileMarkup:function(){this.markupArgs=[];
3772 var topBlock=[],topOuts=[],blocks=[],info={args:this.markupArgs,argIndex:0};
3773 this.generateMarkup(topBlock,topOuts,blocks,info);
3774 this.addCode(topBlock,topOuts,blocks);
3780 if(this.subject){fnBlock.push("with (this) {")
3781 }if(this.context){fnBlock.push("with (__context__) {")
3784 if(this.subject){fnBlock.push("}")
3785 }if(this.context){fnBlock.push("}")
3808 fn.apply(this,[value,itemOuts])
3813 this.renderMarkup=r
3814 },getVarNames:function(args){if(this.vars){args.push.apply(args,this.vars)
3816 i<this.children.length;
3817 ++i){var child=this.children[i];
3824 }}}}}},generateMarkup:function(topBlock,topOuts,blocks,info){topBlock.push(',"<',this.tagName,'"');
3825 for(var name in this.attrs){if(name!="class"){var val=this.attrs[name];
3829 }}if(this.listeners){for(var i=0;
3830 i<this.listeners.length;
3831 i+=2){readPartNames(this.listeners[i+1],topOuts)
3832 }}if(this.props){for(var name in this.props){readPartNames(this.props[name],topOuts)
3833 }}if(this.attrs.hasOwnProperty("class")||this.classes){topBlock.push(', " class=\\""');
3834 if(this.attrs.hasOwnProperty("class")){addParts(this.attrs["class"],",",topBlock,info,true)
3836 for(var name in this.classes){topBlock.push(", (");
3837 addParts(this.classes[name],"",topBlock,info);
3841 this.generateChildMarkup(topBlock,topOuts,blocks,info);
3842 topBlock.push(',"</',this.tagName,'>"')
3844 i<this.children.length;
3845 ++i){var child=this.children[i];
3853 this.getVarNames(varNames);
3864 this.domArgs=[];
3869 var nodeCount=this.generateDOM(path,blocks,this.domArgs);
3884 }if(this.subject){fnBlock.push("with (this) {")
3885 }if(this.context){fnBlock.push("with (context) {")
3887 if(this.subject){fnBlock.push("}")
3888 }if(this.context){fnBlock.push("}")
3899 }var self=this;
3905 nodeCount+=fn.apply(this,iter[i])
3918 this.renderDOM=r
3919 },generateDOM:function(path,blocks,args){if(this.listeners||this.props){this.generateNodePath(path,blocks)
3920 }if(this.listeners){for(var i=0;
3921 i<this.listeners.length;
3922 i+=2){var val=this.listeners[i+1];
3924 blocks.push('addEvent(node, "',this.listeners[i],'", __bind__(this, ',arg,"), false);")
3925 }}if(this.props){for(var name in this.props){var val=this.props[name];
3928 }}this.generateChildDOM(path,blocks,args);
3937 i<this.children.length;
3938 ++i){var child=this.children[i];
3943 FBL.DomplateEmbed.prototype=copyObject(FBL.DomplateTag.prototype,{merge:function(args,oldTag){this.value=oldTag?oldTag.value:parseValue(args[0]);
3944 this.attrs=oldTag?oldTag.attrs:{};
3945 this.vars=oldTag?copyArray(oldTag.vars):[];
3948 this.attrs[name]=val;
3949 readPartNames(val,this.vars)
3950 }return creator(this,DomplateEmbed)
3951 },getVarNames:function(names){if(this.value instanceof Parts){names.push(this.value.parts[0].name)
3952 }if(this.vars){names.push.apply(names,this.vars)
3953 }},generateMarkup:function(topBlock,topOuts,blocks,info){this.addCode(topBlock,topOuts,blocks);
3955 addParts(this.value,"",blocks,info);
3958 for(var name in this.attrs){if(lastName){blocks.push(",")
3960 var val=this.attrs[name];
3965 this.generateNodePath(path,blocks);
3971 FBL.DomplateLoop.prototype=copyObject(FBL.DomplateTag.prototype,{merge:function(args,oldTag){this.varName=oldTag?oldTag.varName:args[0];
3972 this.iter=oldTag?oldTag.iter:parseValue(args[1]);
3973 this.vars=[];
3974 this.children=oldTag?copyArray(oldTag.children):[];
3976 parseChildren(args,offset,this.vars,this.children);
3977 return creator(this,DomplateLoop)
3978 },getVarNames:function(names){if(this.iter instanceof Parts){names.push(this.iter.parts[0].name)
3979 }DomplateTag.prototype.getVarNames.apply(this,[names])
3980 },generateMarkup:function(topBlock,topOuts,blocks,info){this.addCode(topBlock,topOuts,blocks);
3982 if(this.iter instanceof Parts){var part=this.iter.parts[0];
3987 }}}else{iterName=this.iter
3988 }blocks.push("__loop__.apply(this, [",iterName,", __out__, function(",this.varName,", __out__) {");
3989 this.generateChildMarkup(topBlock,topOuts,blocks,info);
3990 this.addCode(topBlock,topOuts,blocks);
4002 i<this.children.length;
4004 var child=this.children[i];
4008 blocks.push(loopName," = __loop__.apply(this, [",iterName,", function(",counterName,",",loopName);
4019 function Variable(name,format){this.name=name;
4020 this.format=format
4021 }function Parts(parts){this.parts=parts
4093 this.next=function(){if(++index>=array.length){throw StopIteration
4099 var markupArgs=[code,this.tag.context,args,outputs];
4100 markupArgs.push.apply(markupArgs,this.tag.markupArgs);
4101 this.tag.renderMarkup.apply(self?self:this.tag.subject,markupArgs);
4103 },insertRows:function(args,before,self){this.tag.compile();
4105 var html=this.renderHTML(args,outputs,self);
4121 }}var domArgs=[firstRow,this.tag.context,offset];
4122 domArgs.push.apply(domArgs,this.tag.domArgs);
4124 this.tag.renderDOM.apply(self?self:this.tag.subject,domArgs);
4126 },insertBefore:function(args,before,self){return this.insertNode(args,before.ownerDocument,before,false,self)
4127 },insertAfter:function(args,after,self){return this.insertNode(args,after.ownerDocument,after,true,self)
4129 }this.tag.compile();
4131 var html=this.renderHTML(args,outputs,self);
4139 }}var domArgs=[root,this.tag.context,0];
4140 domArgs.push.apply(domArgs,this.tag.domArgs);
4142 this.tag.renderDOM.apply(self?self:this.tag.subject,domArgs);
4144 },replace:function(args,parent,self){this.tag.compile();
4146 var html=this.renderHTML(args,outputs,self);
4154 }var domArgs=[root,this.tag.context,0];
4155 domArgs.push.apply(domArgs,this.tag.domArgs);
4157 this.tag.renderDOM.apply(self?self:this.tag.subject,domArgs);
4159 },append:function(args,parent,self){this.tag.compile();
4161 var html=this.renderHTML(args,outputs,self);
4167 var domArgs=[root,this.tag.context,0];
4168 domArgs.push.apply(domArgs,this.tag.domArgs);
4170 this.tag.renderDOM.apply(self?self:this.tag.subject,domArgs);
4182 var FirebugReps=FBL.ns(function(){with(FBL){var OBJECTBOX=this.OBJECTBOX=SPAN({"class":"objectBox objectBox-$className"});
4183 var OBJECTBLOCK=this.OBJECTBLOCK=DIV({"class":"objectBox objectBox-$className"});
4184 var OBJECTLINK=this.OBJECTLINK=isIE6?A({"class":"objectLink objectLink-$className a11yFocus",href:"javascript:void(0)",title:"$object|FBL.getElementXPath",_repObject:"$object"}):A({"class":"objectLink objectLink-$className a11yFocus",title:"$object|FBL.getElementXPath",_repObject:"$object"});
4185 this.Undefined=domplate(Firebug.Rep,{tag:OBJECTBOX("undefined"),className:"undefined",supportsObject:function(object,type){return type=="undefined"
4187 this.Null=domplate(Firebug.Rep,{tag:OBJECTBOX("null"),className:"null",supportsObject:function(object,type){return object==null
4189 this.Nada=domplate(Firebug.Rep,{tag:SPAN(""),className:"nada"});
4190 this.Number=domplate(Firebug.Rep,{tag:OBJECTBOX("$object"),className:"number",supportsObject:function(object,type){return type=="boolean"||type=="number"
4192 this.String=domplate(Firebug.Rep,{tag:OBJECTBOX("&quot;$object&quot;"),shortTag:OBJECTBOX("&quot;$object|cropString&quot;"),className:"string",supportsObject:function(object,type){return type=="string"
4194 this.Text=domplate(Firebug.Rep,{tag:OBJECTBOX("$object"),shortTag:OBJECTBOX("$object|cropString"),className:"text"});
4195 this.Caption=domplate(Firebug.Rep,{tag:SPAN({"class":"caption"},"$object")});
4196 this.Warning=domplate(Firebug.Rep,{tag:DIV({"class":"warning focusRow",role:"listitem"},"$object|STR")});
4197 this.Func=domplate(Firebug.Rep,{tag:OBJECTLINK("$object|summarizeFunction"),summarizeFunction:function(fn){var fnRegex=/function ([^(]+\([^)]*\)) \{/;
4218 return[{label:"CopySource",command:bindFixed(this.copySource,this,fn)},"-",{label:$STRF("ShowCallsInConsole",[name]),nol10n:true,type:"checkbox",checked:monitored,command:bindFixed(this.monitor,this,fn,script,monitored)}]
4220 this.Obj=domplate(Firebug.Rep,{tag:OBJECTLINK(SPAN({"class":"objectTitle"},"$object|getTitle "),SPAN({"class":"objectProps"},SPAN({"class":"objectLeftBrace",role:"presentation"},"{"),FOR("prop","$object|propIterator",SPAN({"class":"objectPropName",role:"presentation"},"$prop.name"),SPAN({"class":"objectEqual",role:"presentation"},"$prop.equal"),TAG("$prop.tag",{object:"$prop.object"}),SPAN({"class":"objectComma",role:"presentation"},"$prop.delim")),SPAN({"class":"objectRightBrace"},"}"))),propNumberTag:SPAN({"class":"objectProp-number"},"$object"),propStringTag:SPAN({"class":"objectProp-string"},"&quot;$object&quot;"),propObjectTag:SPAN({"class":"objectProp-object"},"$object"),propIterator:function(object){var maxLength=55;
4227 var lib=this;
4228 var propRepsMap={"boolean":this.propNumberTag,number:this.propNumberTag,string:this.propStringTag,object:this.propObjectTag};
4266 this.Arr=domplate(Firebug.Rep,{tag:OBJECTBOX({_repObject:"$object"},SPAN({"class":"arrayLeftBracket",role:"presentation"},"["),FOR("item","$object|arrayIterator",TAG("$item.tag",{object:"$item.object"}),SPAN({"class":"arrayComma",role:"presentation"},"$item.delim")),SPAN({"class":"arrayRightBracket",role:"presentation"},"]")),shortTag:OBJECTBOX({_repObject:"$object"},SPAN({"class":"arrayLeftBracket",role:"presentation"},"["),FOR("item","$object|shortArrayIterator",TAG("$item.tag",{object:"$item.object"}),SPAN({"class":"arrayComma",role:"presentation"},"$item.delim")),SPAN({"class":"arrayRightBracket"},"]")),arrayIterator:function(array){var items=[];
4285 },shortPropIterator:this.Obj.propIterator,getItemIndex:function(child){var arrayIndex=0;
4290 },className:"array",supportsObject:function(object){return this.isArray(object)
4303 this.Property=domplate(Firebug.Rep,{supportsObject:function(object){return object instanceof Property
4307 this.NetFile=domplate(this.Obj,{supportsObject:function(object){return object instanceof Firebug.NetFile
4312 this.Except=domplate(Firebug.Rep,{tag:OBJECTBOX({_repObject:"$object"},"$object.message"),className:"exception",supportsObject:function(object){return object instanceof ErrorCopy
4314 this.Element=domplate(Firebug.Rep,{tag:OBJECTLINK("&lt;",SPAN({"class":"nodeTag"},"$object.nodeName|toLowerCase"),FOR("attr","$object|attrIterator","&nbsp;$attr.nodeName=&quot;",SPAN({"class":"nodeValue"},"$attr.nodeValue"),"&quot;"),"&gt;"),shortTag:OBJECTLINK(SPAN({"class":"$object|getVisible"},SPAN({"class":"selectorTag"},"$object|getSelectorTag"),SPAN({"class":"selectorId"},"$object|getSelectorId"),SPAN({"class":"selectorClass"},"$object|getSelectorClass"),SPAN({"class":"selectorValue"},"$object|getValue"))),getVisible:function(elt){return isVisible(elt)?"":"selectorHidden"
4373 return bind(this.persistor,top,xpath)
4375 },getTooltip:function(elt){return this.getXPath(elt)
4377 return[{label:"CopyHTML",command:bindFixed(this.copyHTML,this,elt)},{label:"CopyInnerHTML",command:bindFixed(this.copyInnerHTML,this,elt)},{label:"CopyXPath",command:bindFixed(this.copyXPath,this,elt)},"-",{label:"ShowEventsInConsole",type:"checkbox",checked:monitored,command:bindFixed(toggleMonitorEvents,FBL,elt,null,monitored,context)},"-",{label:"ScrollIntoView",command:bindFixed(elt.scrollIntoView,elt)}]
4379 this.TextNode=domplate(Firebug.Rep,{tag:OBJECTLINK("&lt;",SPAN({"class":"nodeTag"},"TextNode"),"&nbsp;textContent=&quot;",SPAN({"class":"nodeValue"},"$object.textContent|cropString"),"&quot;","&gt;"),className:"textNode",supportsObject:function(object){return object instanceof Text
4381 this.Document=domplate(Firebug.Rep,{tag:OBJECTLINK("Document ",SPAN({"class":"objectPropValue"},"$object|getLocation")),getLocation:function(doc){return doc.location?getFileName(doc.location.href):""
4385 },persistObject:function(doc,context){return this.persistor
4390 this.StyleSheet=domplate(Firebug.Rep,{tag:OBJECTLINK("StyleSheet ",SPAN({"class":"objectPropValue"},"$object|getLocation")),getLocation:function(styleSheet){return getFileName(styleSheet.href)
4396 },persistObject:function(styleSheet,context){return bind(this.persistor,top,styleSheet.href)
4398 },getContextMenuItems:function(styleSheet,target,context){return[{label:"CopyLocation",command:bindFixed(this.copyURL,this,styleSheet)},"-",{label:"OpenInTab",command:bindFixed(this.openInTab,this,styleSheet)}]
4401 this.Window=domplate(Firebug.Rep,{tag:OBJECTLINK("Window ",SPAN({"class":"objectPropValue"},"$object|getLocation")),getLocation:function(win){try{return(win&&win.location&&!win.closed)?getFileName(win.location.href):""
4406 },persistObject:function(win,context){return this.persistor
4411 this.Event=domplate(Firebug.Rep,{tag:TAG("$copyEventTag",{object:"$object|copyEvent"}),copyEventTag:OBJECTLINK("$object|summarizeEvent"),summarizeEvent:function(event){var info=[event.type," "];
4420 this.SourceLink=domplate(Firebug.Rep,{tag:OBJECTLINK({$collapsed:"$object|hideSourceLink"},"$object|getSourceLinkTitle"),hideSourceLink:function(sourceLink){return sourceLink?sourceLink.href.indexOf("XPCSafeJSObjectWrapper")!=-1:true
4444 },getContextMenuItems:function(sourceLink,target,context){return[{label:"CopyLocation",command:bindFixed(this.copyLink,this,sourceLink)},"-",{label:"OpenInTab",command:bindFixed(this.openInTab,this,sourceLink)}]
4446 this.SourceFile=domplate(this.SourceLink,{tag:OBJECTLINK({$collapsed:"$object|hideSourceLink"},"$object|getSourceLinkTitle"),persistor:function(context,href){return getSourceFileByHref(href,context)
4448 },persistObject:function(sourceFile){return bind(this.persistor,top,sourceFile.href)
4451 this.StackFrame=domplate(Firebug.Rep,{tag:OBJECTBLOCK(A({"class":"objectLink objectLink-function focusRow a11yFocus",_repObject:"$object.fn"},"$object|getCallName")," ( ",FOR("arg","$object|argIterator",TAG("$arg.tag",{object:"$arg.value"}),SPAN({"class":"arrayComma"},"$arg.delim"))," )",SPAN({"class":"objectLink-sourceLink objectLink"},"$object|getSourceLinkTitle")),getCallName:function(frame){return frame.name||"anonymous"
4472 this.StackTrace=domplate(Firebug.Rep,{tag:FOR("frame","$object.frames focusRow",TAG(this.StackFrame.tag,{object:"$frame"})),className:"stackTrace",supportsObject:function(object){return object instanceof StackTrace
4474 this.jsdStackFrame=domplate(Firebug.Rep,{inspectable:false,supportsObject:function(object){return(object instanceof jsdIStackFrame)&&(object.isValid)
4484 this.ErrorMessage=domplate(Firebug.Rep,{tag:OBJECTBOX({$hasTwisty:"$object|hasStackTrace",$hasBreakSwitch:"$object|hasBreakSwitch",$breakForError:"$object|hasErrorBreak",_repObject:"$object",_stackTrace:"$object|getLastErrorStackTrace",onclick:"$onToggleError"},DIV({"class":"errorTitle a11yFocus",role:"checkbox","aria-checked":"false"},"$object.message|getMessage"),DIV({"class":"errorTrace"}),DIV({"class":"errorSourceBox errorSource-$object|getSourceType"},IMG({"class":"errorBreak a11yFocus",src:"blank.gif",role:"checkbox","aria-checked":"false",title:"Break on this error"}),A({"class":"errorSource a11yFocus"},"$object|getLine")),TAG(this.SourceLink.tag,{object:"$object|getSourceLink"})),getLastErrorStackTrace:function(error){return error.trace
4503 if(hasClass(event.target,"errorBreak")){this.breakOnThisError(target.repObject)
4505 this.inspectObject(target.repObject,panel.context)
4513 }}}}},copyError:function(error){var message=[this.getMessage(error.message),error.href,"Line "+error.lineNo];
4515 },breakOnThisError:function(error){if(this.hasErrorBreak(error)){Firebug.Debugger.clearErrorBreakpoint(error.href,error.lineNo)
4518 },inspectObject:function(error,context){var sourceLink=this.getSourceLink(error);
4520 },getContextMenuItems:function(error,target,context){var breakOnThisError=this.hasErrorBreak(error);
4521 var items=[{label:"CopyError",command:bindFixed(this.copyError,this,error)}];
4522 if(error.category=="css"){items.push("-",{label:"BreakOnThisError",type:"checkbox",checked:breakOnThisError,command:bindFixed(this.breakOnThisError,this,error)},optionMenu("BreakOnAllErrors","breakOnErrors"))
4525 this.Assert=domplate(Firebug.Rep,{tag:DIV(DIV({"class":"errorTitle"}),DIV({"class":"assertDescription"})),className:"assert",inspectObject:function(error,context){var sourceLink=this.getSourceLink(error);
4527 },getContextMenuItems:function(error,target,context){var breakOnThisError=this.hasErrorBreak(error);
4528 return[{label:"CopyError",command:bindFixed(this.copyError,this,error)},"-",{label:"BreakOnThisError",type:"checkbox",checked:breakOnThisError,command:bindFixed(this.breakOnThisError,this,error)},{label:"BreakOnAllErrors",type:"checkbox",checked:Firebug.breakOnErrors,command:bindFixed(this.breakOnAllErrors,this,error)}]
4530 this.SourceText=domplate(Firebug.Rep,{tag:DIV(FOR("line","$object|lineIterator",DIV({"class":"sourceRow",role:"presentation"},SPAN({"class":"sourceLine",role:"presentation"},"$line.lineNo"),SPAN({"class":"sourceRowText",role:"presentation"},"$line.text")))),lineIterator:function(sourceText){var maxLineNoChars=(sourceText.lines.length+"").length;
4540 this.nsIDOMHistory=domplate(Firebug.Rep,{tag:OBJECTBOX({onclick:"$showHistory"},OBJECTLINK("$object|summarizeHistory")),className:"nsIDOMHistory",summarizeHistory:function(history){try{var items=history.length;
4547 this.ApplicationCache=domplate(Firebug.Rep,{tag:OBJECTBOX({onclick:"$showApplicationCache"},OBJECTLINK("$object|summarizeCache")),summarizeCache:function(applicationCache){try{return applicationCache.length+" items in offline cache"
4552 this.Storage=domplate(Firebug.Rep,{tag:OBJECTBOX({onclick:"$show"},OBJECTLINK("$object|summarize")),summarize:function(storage){return storage.length+" items in Storage"
4556 Firebug.registerRep(this.Undefined,this.Null,this.Number,this.String,this.Window,this.Element,this.Document,this.StyleSheet,this.Event,this.Property,this.Except,this.Arr);
4557 Firebug.setDefaultReps(this.Func,this.Obj)
4572 Firebug.Editor=extend(Firebug.Module,{supportsStopEvent:true,dispatchName:"editor",tabCharacter:" ",startEditing:function(target,value,editor){this.stopEditing();
4598 }this.attachListeners(currentEditor,panel.context)
4600 }if(FBTrace.DBG_EDITOR){FBTrace.sysout("editor.stopEditing cancel:"+cancel+" saveTimeout: "+this.saveTimeout)
4601 }clearTimeout(this.saveTimeout);
4602 delete this.saveTimeout;
4603 this.detachListeners(currentEditor,currentPanel.context);
4610 try{if(cancel){if(value!=originalValue){this.saveEditAndNotifyListeners(currentTarget,originalValue,previousValue)
4612 }}else{if(!value){this.saveEditAndNotifyListeners(currentTarget,null,previousValue);
4614 }}else{this.save(value)
4624 },cancelEditing:function(){return this.stopEditing(true)
4625 },update:function(saveNow){if(this.saveTimeout){clearTimeout(this.saveTimeout)
4628 if(saveNow){this.save()
4630 this.saveTimeout=context.setTimeout(bindFixed(this.save,this),saveTimeout);
4631 if(FBTrace.DBG_EDITOR){FBTrace.sysout("editor.update saveTimeout: "+this.saveTimeout)
4634 }if(FBTrace.DBG_EDITOR){FBTrace.sysout("editor.save saveTimeout: "+this.saveTimeout+" currentPanel: "+(currentPanel?currentPanel.name:"null"))
4635 }try{this.saveEditAndNotifyListeners(currentTarget,value,previousValue);
4641 this.stopEditing()
4642 }else{if(hasClass(element,"insertBefore")){this.insertRow(element,"before")
4643 }else{if(hasClass(element,"insertAfter")){this.insertRow(element,"after")
4644 }else{this.startEditing(element)
4650 this.setEditTarget(nextEditable)
4656 this.setEditTarget(prevEditable)
4658 var value=this.stopEditing();
4665 if(editable){this.setEditTarget(editable)
4668 if(relative){this.insertRow(relative,"before")
4670 addEvent(win,"resize",this.onResize);
4671 addEvent(win,"blur",this.onBlur);
4673 this.listeners=[chrome.keyCodeListen("ESCAPE",null,bind(this.cancelEditing,this))];
4674 if(editor.arrowCompletion){this.listeners.push(chrome.keyCodeListen("UP",null,bindFixed(editor.completeValue,editor,-1)),chrome.keyCodeListen("DOWN",null,bindFixed(editor.completeValue,editor,1)),chrome.keyCodeListen("PAGE_UP",null,bindFixed(editor.completeValue,editor,-pageAmount)),chrome.keyCodeListen("PAGE_DOWN",null,bindFixed(editor.completeValue,editor,pageAmount)))
4675 }if(currentEditor.tabNavigation){this.listeners.push(chrome.keyCodeListen("RETURN",null,bind(this.tabNextEditor,this)),chrome.keyCodeListen("RETURN",isControl,bind(this.insertRow,this,null,"after")),chrome.keyCodeListen("TAB",null,bind(this.tabNextEditor,this)),chrome.keyCodeListen("TAB",isShift,bind(this.tabPreviousEditor,this)))
4676 }else{if(currentEditor.multiLine){this.listeners.push(chrome.keyCodeListen("TAB",null,insertTab))
4677 }else{this.listeners.push(chrome.keyCodeListen("RETURN",null,bindFixed(this.stopEditing,this)));
4678 if(currentEditor.tabCompletion){this.listeners.push(chrome.keyCodeListen("TAB",null,bind(editor.completeValue,editor,1)),chrome.keyCodeListen("TAB",isShift,bind(editor.completeValue,editor,-1)))
4679 }}}},detachListeners:function(editor,context){if(!this.listeners){return
4681 removeEvent(win,"resize",this.onResize);
4682 removeEvent(win,"blur",this.onBlur);
4685 i<this.listeners.length;
4686 ++i){chrome.keyIgnore(this.listeners[i])
4687 }}delete this.listeners
4689 },onBlur:function(event){if(currentEditor.enterOnBlur&&isAncestor(event.target,currentEditor.box)){this.stopEditing()
4690 }},initialize:function(){Firebug.Module.initialize.apply(this,arguments);
4691 this.onResize=bindFixed(this.onResize,this);
4692 this.onBlur=bind(this.onBlur,this)
4693 },disable:function(){this.stopEditing()
4694 },showContext:function(browser,context){this.stopEditing()
4695 },showPanel:function(browser,panel){this.stopEditing()
4708 }Firebug.InlineEditor=function(doc){this.initializeInline(doc)
4710 Firebug.InlineEditor.prototype=domplate(Firebug.BaseEditor,{enterOnBlur:true,outerMargin:8,shadowExpand:7,tag:DIV({"class":"inlineEditor"},DIV({"class":"textEditorTop1"},DIV({"class":"textEditorTop2"})),DIV({"class":"textEditorInner1"},DIV({"class":"textEditorInner2"},INPUT(inlineEditorAttributes))),DIV({"class":"textEditorBottom1"},DIV({"class":"textEditorBottom2"}))),inputTag:INPUT({"class":"textEditorInner",type:"text",onkeypress:"$onKeyPress",onoverflow:"$onOverflow"}),expanderTag:IMG({"class":"inlineExpander",src:"blank.gif"}),initialize:function(){this.fixedWidth=false;
4711 this.completeAsYouType=true;
4712 this.tabNavigation=true;
4713 this.multiLine=false;
4714 this.tabCompletion=false;
4715 this.arrowCompletion=true;
4716 this.noWrap=true;
4717 this.numeric=false
4718 },destroy:function(){this.destroyInput()
4720 }this.box=this.tag.append({},doc.body,this);
4721 this.input=this.box.getElementsByTagName("input")[0];
4722 if(isIElt8){this.input.style.top="-8px"
4723 }this.expander=this.expanderTag.replace({},doc,this);
4724 this.initialize()
4725 },destroyInput:function(){},getValue:function(){return this.input.value
4726 },setValue:function(value){return this.input.value=stripNewLines(value)
4727 },show:function(target,panel,value,targetSize){this.target=target;
4728 this.panel=panel;
4729 this.targetSize=targetSize;
4733 }this.targetOffset={x:target.offsetLeft,y:target.offsetTop};
4735 }this.originalClassName=this.box.className;
4739 ++i){setClass(this.box,"editor-"+classNames[i])
4740 }copyTextStyles(target,this.box);
4741 this.setValue(value);
4742 if(this.fixedWidth){this.updateLayout(true)
4743 }else{this.startMeasuring(target);
4744 this.textSize=this.measureInputText(value);
4745 var parent=this.input.parentNode;
4746 if(hasClass(parent,"textEditorInner2")){var yDiff=this.textSize.height-this.shadowExpand;
4750 }this.updateLayout(true)
4751 }this.getAutoCompleter().reset();
4752 if(isIElt8){panel.panelNode.appendChild(this.box)
4753 }else{target.offsetParent.appendChild(this.box)
4754 }if(isIE){this.input.style.fontFamily="Monospace";
4755 this.input.style.fontSize="11px"
4756 }if(!this.fixedWidth){copyBoxStyles(target,this.expander);
4757 target.parentNode.replaceChild(this.expander,target);
4759 this.expander.parentNode.insertBefore(target,this.expander)
4760 }this.box.style.display="block";
4761 var self=this;
4765 },hide:function(){this.box.className=this.originalClassName;
4766 if(!this.fixedWidth){this.stopMeasuring();
4767 collapse(this.target,false);
4768 if(this.expander.parentNode){this.expander.parentNode.removeChild(this.expander)
4769 }}if(this.box.parentNode){this.input.blur();
4770 this.box.parentNode.removeChild(this.box)
4771 }delete this.target;
4772 delete this.panel
4773 },layout:function(forceAll){if(!this.fixedWidth){this.textSize=this.measureInputText(this.input.value)
4774 }if(forceAll){this.targetOffset=getClientOffset(this.expander)
4775 }this.updateLayout(false,forceAll)
4778 },getAutoCompleteRange:function(value,offset){},getAutoCompleteList:function(preExpr,expr,postExpr){},getAutoCompleter:function(){if(!this.autoCompleter){this.autoCompleter=new Firebug.AutoCompleter(null,bind(this.getAutoCompleteRange,this),bind(this.getAutoCompleteList,this),true,false)
4779 }return this.autoCompleter
4780 },completeValue:function(amt){var selectRangeCallback=this.getAutoCompleter().complete(currentPanel.context,this.input,true,amt<0);
4784 }}else{this.incrementValue(amt)
4785 }},incrementValue:function(amt){var value=this.input.value;
4786 if(isIE){var start=getInputSelectionStart(this.input),end=start
4787 }else{var start=this.input.selectionStart,end=this.input.selectionEnd
4788 }var range=this.getAutoCompleteRange(value,start);
4797 this.input.value=preExpr+completion+digitPost+postExpr;
4798 setSelectionRange(this.input,start,end);
4802 }},onKeyPress:function(event){if(event.keyCode==27&&!this.completeAsYouType){var reverted=this.getAutoCompleter().revert(this.input);
4804 }}else{if(event.charCode&&this.advanceToNext(this.target,event.charCode)){Firebug.Editor.tabNextEditor();
4806 }else{if(this.numeric&&event.charCode&&(event.charCode<48||event.charCode>57)&&event.charCode!=45&&event.charCode!=46){FBL.cancelEvent(event)
4807 }else{this.ignoreNextInput=event.keyCode==8
4808 }}}},onOverflow:function(){this.updateLayout(false,false,3)
4809 },onKeyDown:function(event){if(event.keyCode>46||event.keyCode==32||event.keyCode==8){this.keyDownPressed=true
4810 }},onInput:function(event){if(isIE){if(event.propertyName!="value"||!isVisible(this.input)||!this.keyDownPressed){return
4811 }this.keyDownPressed=false
4813 if(this.ignoreNextInput){this.ignoreNextInput=false;
4814 this.getAutoCompleter().reset()
4815 }else{if(this.completeAsYouType){selectRangeCallback=this.getAutoCompleter().complete(currentPanel.context,this.input,false)
4816 }else{this.getAutoCompleter().reset()
4824 var menu=this.getContextMenuItems(target);
4831 },updateLayout:function(initial,forceAll,extraWidth){if(this.fixedWidth){this.box.style.left=(this.targetOffset.x)+"px";
4832 this.box.style.top=(this.targetOffset.y)+"px";
4833 var w=this.target.offsetWidth;
4834 var h=this.target.offsetHeight;
4835 this.input.style.width=w+"px";
4836 this.input.style.height=(h-3)+"px"
4837 }else{if(initial||forceAll){this.box.style.left=this.targetOffset.x+"px";
4838 this.box.style.top=this.targetOffset.y+"px"
4839 }var approxTextWidth=this.textSize.width;
4840 var maxWidth=(currentPanel.panelNode.scrollWidth-this.targetOffset.x)-this.outerMargin;
4841 var wrapped=initial?this.noWrap&&this.targetSize.height>this.textSize.height+3:this.noWrap&&approxTextWidth>maxWidth;
4842 if(wrapped){var style=isIE?this.target.currentStyle:this.target.ownerDocument.defaultView.getComputedStyle(this.target,"");
4845 this.input.style.width="100%";
4846 this.box.style.width=approxTextWidth+"px"
4847 }else{var charWidth=this.measureInputText("m").width;
4851 this.box.style.width=(inputWidth+xDiff)+"px"
4852 }else{this.box.style.width="auto"
4853 }}else{var xDiff=isIE?13:this.box.scrollWidth-this.input.offsetWidth;
4854 this.box.style.width=(inputWidth+xDiff)+"px"
4855 }this.input.style.width=inputWidth+"px"
4856 }this.expander.style.width=approxTextWidth+"px";
4857 this.expander.style.height=Math.max(this.textSize.height-3,0)+"px"
4858 }if(forceAll){scrollIntoCenterView(this.box,null,true)
4870 this.revert=function(textBox){if(originalOffset!=-1){textBox.value=originalValue;
4872 this.reset();
4874 }else{this.reset();
4877 this.reset=function(){candidates=null;
4884 this.complete=function(context,textBox,cycle,reverse){var value=textBox.value;
4932 }}}if(searchIndex==-1){return this.reset()
4986 }var XHRSpy=function(){this.requestHeaders=[];
4987 this.responseHeaders=[]
4989 XHRSpy.prototype={method:null,url:null,async:null,xhrRequest:null,href:null,loaded:false,logRow:null,responseText:null,requestHeaders:null,responseHeaders:null,sourceLink:null,getURL:function(){return this.href
4991 var XMLHttpRequestWrapper=function(activeXObject){var xhrRequest=typeof activeXObject!="undefined"?activeXObject:new _XMLHttpRequest(),spy=new XHRSpy(),self=this,reqType,reqUrl,reqStartTS;
5044 this.readyState=0;
5045 this.onreadystatechange=function(){};
5046 this.open=function(method,url,async,user,password){updateSelfProperties();
5058 this.send=function(data){spy.data=data;
5066 this.setRequestHeader=function(header,value){spy.requestHeaders.push({name:[header],value:[value]});
5069 this.abort=function(){xhrRequest.abort();
5073 this.getResponseHeader=function(header){return xhrRequest.getResponseHeader(header)
5075 this.getAllResponseHeaders=function(){return xhrRequest.getAllResponseHeaders()
5082 if(isFunction(propValue)){if(typeof self[propName]=="undefined"){this[propName]=(function(name,xhr){return supportsApply?function(){return xhr[name].apply(xhr,arguments)
5086 }}else{this[propName]=propValue
5088 return this
5132 this.panelName=panelName;
5133 Firebug.ActivableModule.initialize.apply(this,arguments);
5134 if(Firebug.TraceModule){Firebug.TraceModule.addListener(this.TraceListener)
5137 Firebug.Debugger.addListener(this.DebuggerListener)
5139 prefs.removeObserver(Firebug.prefDomain,this,false);
5140 if(Firebug.TraceModule){Firebug.TraceModule.removeListener(this.TraceListener)
5143 Firebug.Debugger.removeListener(this.DebuggerListener)
5145 Firebug.NetMonitor.NetInfoBody=domplate(Firebug.Rep,new Firebug.Listener(),{tag:DIV({"class":"netInfoBody",_repObject:"$file"},TAG("$infoTabs",{file:"$file"}),TAG("$infoBodies",{file:"$file"})),infoTabs:DIV({"class":"netInfoTabs focusRow subFocusRow",role:"tablist"},A({"class":"netInfoParamsTab netInfoTab a11yFocus",onclick:"$onClickTab",role:"tab",view:"Params",$collapsed:"$file|hideParams"},$STR("URLParameters")),A({"class":"netInfoHeadersTab netInfoTab a11yFocus",onclick:"$onClickTab",role:"tab",view:"Headers"},$STR("Headers")),A({"class":"netInfoPostTab netInfoTab a11yFocus",onclick:"$onClickTab",role:"tab",view:"Post",$collapsed:"$file|hidePost"},$STR("Post")),A({"class":"netInfoPutTab netInfoTab a11yFocus",onclick:"$onClickTab",role:"tab",view:"Put",$collapsed:"$file|hidePut"},$STR("Put")),A({"class":"netInfoResponseTab netInfoTab a11yFocus",onclick:"$onClickTab",role:"tab",view:"Response",$collapsed:"$file|hideResponse"},$STR("Response")),A({"class":"netInfoCacheTab netInfoTab a11yFocus",onclick:"$onClickTab",role:"tab",view:"Cache",$collapsed:"$file|hideCache"},$STR("Cache")),A({"class":"netInfoHtmlTab netInfoTab a11yFocus",onclick:"$onClickTab",role:"tab",view:"Html",$collapsed:"$file|hideHtml"},$STR("HTML"))),infoBodies:DIV({"class":"netInfoBodies outerFocusRow"},TABLE({"class":"netInfoParamsText netInfoText netInfoParamsTable",role:"tabpanel",cellpadding:0,cellspacing:0},TBODY()),DIV({"class":"netInfoHeadersText netInfoText",role:"tabpanel"}),DIV({"class":"netInfoPostText netInfoText",role:"tabpanel"}),DIV({"class":"netInfoPutText netInfoText",role:"tabpanel"}),PRE({"class":"netInfoResponseText netInfoText",role:"tabpanel"}),DIV({"class":"netInfoCacheText netInfoText",role:"tabpanel"},TABLE({"class":"netInfoCacheTable",cellpadding:0,cellspacing:0,role:"presentation"},TBODY({role:"list","aria-label":$STR("Cache")}))),DIV({"class":"netInfoHtmlText netInfoText",role:"tabpanel"},IFRAME({"class":"netInfoHtmlPreview",role:"document"}))),headerDataTag:FOR("param","$headers",TR({role:"listitem"},TD({"class":"netInfoParamName",role:"presentation"},TAG("$param|getNameTag",{param:"$param"})),TD({"class":"netInfoParamValue",role:"list","aria-label":"$param.name"},FOR("line","$param|getParamValueIterator",CODE({"class":"focusRow subFocusRow",role:"listitem"},"$line"))))),customTab:A({"class":"netInfo$tabId\\Tab netInfoTab",onclick:"$onClickTab",view:"$tabId",role:"tab"},"$tabTitle"),customBody:DIV({"class":"netInfo$tabId\\Text netInfoText",role:"tabpanel"}),nameTag:SPAN("$param|getParamName"),nameWithTooltipTag:SPAN({title:"$param.name"},"$param|getParamName"),getNameTag:function(param){return(this.getParamName(param)==param.name)?this.nameTag:this.nameWithTooltipTag
5161 },onClickTab:function(event){this.selectTab(event.currentTarget||event.srcElement)
5165 this.customTab.append(args,$$(".netInfoTabs",netInfoBox)[0]);
5166 this.customBody.append(args,$$(".netInfoBodies",netInfoBox)[0])
5168 if(tab){this.selectTab(tab)
5184 this.updateInfo(netInfoBox,file,context)
5190 this.insertHeaderRows(netInfoBox,file.urlParams,"Params")
5208 }else{this.setResponseText(file,netInfoBox,responseTextBox,context)
5211 this.insertHeaderRows(netInfoBox,file.cacheEntry,"Cache")
5241 this.headerDataTag.insertRows({headers:headers},titleRow?titleRow:tbody);
5250 this.insertHeaderRows(netInfoBox,headers,target.rowName);
5253 this.insertSource(netInfoBox,source,target.rowName);
5258 var node=this.sourceTag.replace({},tbody);
5268 },init:function(parent){var rootNode=this.tag.append({},parent);
5276 }},renderHeaders:function(parent,headers,rowName){if(!parent.firstChild){this.init(parent)
5277 }this.insertHeaderRows(parent,headers,rowName)
5286 if(params){this.insertParameters(parentNode,params)
5288 if(Firebug.JSONViewerModel.isJSON(contentType,data)){this.insertJSON(parentNode,jsonData,context)
5290 if(postText){this.insertSource(parentNode,postText)
5292 }var paramTable=this.paramsTable.append({object:{}},parentNode);
5297 }var partsTable=this.partsTable.append({object:{}},parentNode);
5303 }var jsonTable=this.jsonTable.append({},parentNode);
5305 if(!this.toggles){this.toggles={}
5306 }Firebug.DOMPanel.DirTable.tag.replace({object:data,toggles:this.toggles},jsonBody)
5308 var jsonTable=this.xmlTable.append(null,parentNode);
5311 },insertSource:function(parentNode,text){var sourceTable=this.sourceTable.append({object:{}},parentNode);
5314 this.sourceBodyTag.insertRows({param:param},row)
5337 Firebug.NetMonitor.NetLimit=domplate(Firebug.Rep,{collapsed:true,tableTag:DIV(TABLE({width:"100%",cellpadding:0,cellspacing:0},TBODY())),limitTag:TR({"class":"netRow netLimitRow",$collapsed:"$isCollapsed"},TD({"class":"netCol netLimitCol",colspan:6},TABLE({cellpadding:0,cellspacing:0},TBODY(TR(TD(SPAN({"class":"netLimitLabel"},$STRP("plural.Limit_Exceeded",[0]))),TD({style:"width:100%"}),TD(BUTTON({"class":"netLimitButton",title:"$limitPrefsTitle",onclick:"$onPreferences"},$STR("LimitPrefs"))),TD("&nbsp;")))))),isCollapsed:function(){return this.collapsed
5342 },createTable:function(parent,limitInfo){var table=this.tableTag.replace({},parent);
5343 var row=this.createRow(table.firstChild.firstChild,limitInfo);
5345 },createRow:function(parent,limitInfo){var row=this.limitTag.insertRows(limitInfo,parent,this)[0];
5349 }if(data.indexOf("net.logLimit")!=-1){this.updateMaxLimit()
5354 Firebug.NetMonitor.ResponseSizeLimit=domplate(Firebug.Rep,{tag:DIV({"class":"netInfoResponseSizeLimit"},SPAN("$object.beforeLink"),A({"class":"objectLink",onclick:"$onClickLink"},"$object.linkText"),SPAN("$object.afterLink")),reLink:/^(.*)<a>(.*)<\/a>(.*$)/,append:function(obj,parent){var m=obj.text.match(this.reLink);
5355 return this.tag.append({onClickLink:obj.onClickLink,object:{beforeLink:m[1],linkText:m[2],afterLink:m[3]}},parent,this)
5421 Firebug.Spy=extend(Firebug.Module,{dispatchName:"spy",initialize:function(){if(Firebug.TraceModule){Firebug.TraceModule.addListener(this.TraceListener)
5422 }Firebug.Module.initialize.apply(this,arguments)
5423 },shutdown:function(){Firebug.Module.shutdown.apply(this,arguments);
5424 if(Firebug.TraceModule){Firebug.TraceModule.removeListener(this.TraceListener)
5426 if(Firebug.showXMLHttpRequests&&Firebug.Console.isAlwaysEnabled()){this.attachObserver(context,context.window)
5428 }},destroyContext:function(context){this.detachObserver(context,null);
5432 }},watchWindow:function(context,win){if(Firebug.showXMLHttpRequests&&Firebug.Console.isAlwaysEnabled()){this.attachObserver(context,win)
5433 }},unwatchWindow:function(context,win){try{this.detachObserver(context,win)
5435 }},updateOption:function(name,value){if(name=="showXMLHttpRequests"){var tach=value?this.attachObserver:this.detachObserver;
5439 iterateWindows(context.window,function(win){tach.apply(this,[context,win])
5492 },getContextMenuItems:function(spy){var items=[{label:"CopyLocation",command:bindFixed(this.copyURL,this,spy)}];
5493 if(spy.postText){items.push({label:"CopyLocationParameters",command:bindFixed(this.copyParams,this,spy)})
5494 }items.push({label:"CopyResponse",command:bindFixed(this.copyResponse,this,spy)},"-",{label:"OpenInTab",command:bindFixed(this.openInTab,this,spy)});
5533 Firebug.JSONViewerModel=extend(Firebug.Module,{dispatchName:"jsonViewer",initialize:function(){Firebug.NetMonitor.NetInfoBody.addListener(this);
5534 this.toggles={}
5535 },shutdown:function(){Firebug.NetMonitor.NetInfoBody.removeListener(this)
5537 }dispatch(this.fbListeners,"onParseJSON",[file]);
5538 if(!file.jsonObject){if(this.isJSON(file.mimeType,file.responseText)){file.jsonObject=this.parseJSON(file)
5551 if(file.jsonObject){Firebug.DOMPanel.DirTable.tag.replace({object:file.jsonObject,toggles:this.toggles},tabBody)
5558 Firebug.XMLViewerModel=extend(Firebug.Module,{dispatchName:"xmlViewer",initialize:function(){Firebug.Module.initialize.apply(this,arguments);
5559 Firebug.NetMonitor.NetInfoBody.addListener(this)
5560 },shutdown:function(){Firebug.Module.shutdown.apply(this,arguments);
5561 Firebug.NetMonitor.NetInfoBody.removeListener(this)
5563 }if(this.isXML(file.mimeType,file.responseText)){Firebug.NetMonitor.NetInfoBody.appendTab(infoBox,"XML",$STR("XML"));
5574 this.insertXML(tabBody,Firebug.NetMonitor.Utils.getResponseText(file,context))
5599 Firebug.ConsoleBase={log:function(object,context,className,rep,noThrottle,sourceLink){return this.logRow(appendObject,object,context,className,rep,sourceLink,noThrottle)
5600 },logFormatted:function(objects,context,className,noThrottle,sourceLink){return this.logRow(appendFormatted,objects,context,className,null,sourceLink,noThrottle)
5601 },openGroup:function(objects,context,className,rep,noThrottle,sourceLink,noPush){return this.logRow(appendOpenGroup,objects,context,className,rep,sourceLink,noThrottle)
5602 },closeGroup:function(context,noThrottle){return this.logRow(appendCloseGroup,null,context,null,null,null,noThrottle,true)
5607 }if(noThrottle||!context){var panel=this.getPanel(context);
5614 context.throttle(this.logRow,this,args)
5616 }var panel=this.getPanel(context);
5619 }var panel=this.getPanel(context,true);
5626 },flush:function(){dispatch(this.fbListeners,"flush",[]);
5630 this.logRow.apply(this,args)
5642 }if(win){return this.injector.attachIfNeeded(context,win)
5646 i++){attached=attached&&this.injector.attachIfNeeded(context,context.windows[i])
5650 }},initialize:function(){this.panelName="console"
5651 },enable:function(){if(Firebug.Console.isAlwaysEnabled()){this.watchForErrors()
5652 }},disable:function(){if(Firebug.Console.isAlwaysEnabled()){this.unwatchForErrors()
5653 }},initContext:function(context,persistedState){Firebug.ActivableModule.initContext.apply(this,arguments);
5656 }this.clearReloadWarning(context)
5657 },clearReloadWarning:function(context){if(context.consoleReloadWarning){var panel=context.getPanel(this.panelName);
5660 }},togglePersist:function(context){var panel=context.getPanel(this.panelName);
5664 Firebug.ActivableModule.showContext.apply(this,arguments)
5666 },onPanelEnable:function(panelName){if(panelName!=this.panelName){return
5668 }this.watchForErrors();
5669 Firebug.Debugger.addDependentModule(this)
5670 },onPanelDisable:function(panelName){if(panelName!=this.panelName){return
5672 }Firebug.Debugger.removeDependentModule(this);
5673 this.unwatchForErrors();
5674 this.clear()
5676 }if(Firebug.Console.isAlwaysEnabled()){this.unwatchForErrors()
5678 }if(Firebug.Console.isAlwaysEnabled()){this.watchForErrors()
5688 }if(this.isAlwaysEnabled()){return Firebug.ConsoleBase.logRow.apply(this,arguments)
5692 Firebug.ConsolePanel.prototype=extend(Firebug.Panel,{wasScrolledToBottom:false,messageCount:0,lastLogTime:0,groups:null,limit:null,append:function(appender,objects,className,rep,sourceLink,noRow){var container=this.getTopContainer();
5693 if(noRow){appender.apply(this,[objects])
5694 }else{var row=this.createRow("logRow",className);
5695 appender.apply(this,[objects,row,rep]);
5698 this.filterLogRow(row,this.wasScrolledToBottom);
5699 if(this.wasScrolledToBottom){scrollToBottom(this.panelNode)
5701 }},clear:function(){if(this.panelNode){if(FBTrace.DBG_CONSOLE){FBTrace.sysout("ConsolePanel.clear")
5702 }clearNode(this.panelNode);
5703 this.insertLogLimit(this.context)
5704 }},insertLogLimit:function(){var row=this.createRow("limitRow");
5709 this.limit=nodes[1];
5710 var container=this.panelNode;
5712 },insertReloadWarning:function(){this.warningRow=this.append(appendObject,$STR("message.Reload to activate window console"),"info")
5713 },clearReloadWarning:function(){if(this.warningRow){this.warningRow.parentNode.removeChild(this.warningRow);
5714 delete this.warningRow
5739 if(typeof(object)!="undefined"){this.appendObject(object,row,part.rep)
5740 }else{this.appendObject(part.type,row,FirebugReps.Text)
5747 }else{this.appendObject(object,row)
5748 }}},appendOpenGroup:function(objects,row,rep){if(!this.groups){this.groups=[]
5751 var innerRow=this.createRow("logRow");
5754 }else{this.appendFormatted(objects,innerRow,rep)
5756 var groupBody=this.createRow("logGroupBody");
5759 this.groups.push(groupBody);
5768 },appendCloseGroup:function(object,row,rep){if(this.groups){this.groups.pop()
5784 }}},name:"Console",title:"Console",options:{hasCommandLine:true,hasToolButtons:true,isPreRendered:true},create:function(){Firebug.Panel.create.apply(this,arguments);
5785 this.context=Firebug.browser.window;
5786 this.document=Firebug.chrome.document;
5787 this.onMouseMove=bind(this.onMouseMove,this);
5788 this.onMouseDown=bind(this.onMouseDown,this);
5789 this.clearButton=new Button({element:$("fbConsole_btClear"),owner:Firebug.Console,onClick:Firebug.Console.clear})
5790 },initialize:function(){Firebug.Panel.initialize.apply(this,arguments);
5791 if(!this.persistedContent&&Firebug.Console.isAlwaysEnabled()){this.insertLogLimit(this.context);
5792 this.updateMaxLimit();
5793 if(this.context.consoleReloadWarning){this.insertReloadWarning()
5794 }}addEvent(this.panelNode,"mouseover",this.onMouseMove);
5795 addEvent(this.panelNode,"mousedown",this.onMouseDown);
5796 this.clearButton.initialize()
5797 },initializeNode:function(){if(FBTrace.DBG_CONSOLE){this.onScroller=bind(this.onScroll,this);
5798 addEvent(this.panelNode,"scroll",this.onScroller)
5799 }this.onResizer=bind(this.onResize,this);
5800 this.resizeEventTarget=Firebug.chrome.$("fbContentBox");
5801 addEvent(this.resizeEventTarget,"resize",this.onResizer)
5802 },destroyNode:function(){if(this.onScroller){removeEvent(this.panelNode,"scroll",this.onScroller)
5803 }},shutdown:function(){this.clearButton.shutdown();
5804 removeEvent(this.panelNode,"mousemove",this.onMouseMove);
5805 removeEvent(this.panelNode,"mousedown",this.onMouseDown);
5806 this.destroyNode();
5807 Firebug.Panel.shutdown.apply(this,arguments)
5808 },ishow:function(state){if(FBTrace.DBG_CONSOLE){FBTrace.sysout("Console.panel show; "+this.context.getName(),state)
5810 if(enabled){Firebug.Console.disabledPanelPage.hide(this);
5811 this.showCommandLine(true);
5812 this.showToolbarButtons("fbConsoleButtons",true);
5813 Firebug.chrome.setGlobalAttribute("cmd_togglePersistConsole","checked",this.persistContent);
5814 if(state&&state.wasScrolledToBottom){this.wasScrolledToBottom=state.wasScrolledToBottom;
5816 }if(this.wasScrolledToBottom){scrollToBottom(this.panelNode)
5817 }if(FBTrace.DBG_CONSOLE){FBTrace.sysout("console.show ------------------ wasScrolledToBottom: "+this.wasScrolledToBottom+", "+this.context.getName())
5818 }}else{this.hide(state);
5819 Firebug.Console.disabledPanelPage.show(this)
5820 }},ihide:function(state){if(FBTrace.DBG_CONSOLE){FBTrace.sysout("Console.panel hide; "+this.context.getName(),state)
5821 }this.showToolbarButtons("fbConsoleButtons",false);
5822 this.showCommandLine(false);
5823 if(FBTrace.DBG_CONSOLE){FBTrace.sysout("console.hide ------------------ wasScrolledToBottom: "+this.wasScrolledToBottom+", "+this.context.getName())
5824 }},destroy:function(state){if(this.panelNode.offsetHeight){this.wasScrolledToBottom=isScrolledToBottom(this.panelNode)
5825 }if(state){state.wasScrolledToBottom=this.wasScrolledToBottom
5826 }if(FBTrace.DBG_CONSOLE){FBTrace.sysout("console.destroy ------------------ wasScrolledToBottom: "+this.wasScrolledToBottom+", "+this.context.getName())
5829 },enablePanel:function(module){if(FBTrace.DBG_CONSOLE){FBTrace.sysout("console.ConsolePanel.enablePanel; "+this.context.getName())
5830 }Firebug.ActivablePanel.enablePanel.apply(this,arguments);
5831 this.showCommandLine(true);
5832 if(this.wasScrolledToBottom){scrollToBottom(this.panelNode)
5833 }},disablePanel:function(module){if(FBTrace.DBG_CONSOLE){FBTrace.sysout("console.ConsolePanel.disablePanel; "+this.context.getName())
5834 }Firebug.ActivablePanel.disablePanel.apply(this,arguments);
5835 this.showCommandLine(false)
5836 },getOptionsMenuItems:function(){return[optionMenu("ShowJavaScriptErrors","showJSErrors"),optionMenu("ShowJavaScriptWarnings","showJSWarnings"),optionMenu("ShowCSSErrors","showCSSErrors"),optionMenu("ShowXMLErrors","showXMLErrors"),optionMenu("ShowXMLHttpRequests","showXMLHttpRequests"),optionMenu("ShowChromeErrors","showChromeErrors"),optionMenu("ShowChromeMessages","showChromeMessages"),optionMenu("ShowExternalErrors","showExternalErrors"),optionMenu("ShowNetworkErrors","showNetworkErrors"),this.getShowStackTraceMenuItem(),this.getStrictOptionMenuItem(),"-",optionMenu("LargeCommandLine","largeCommandLine")]
5846 }if(this.matchSet){for(var i in this.matchSet){removeClass(this.matchSet[i],"matched")
5847 }}this.matchSet=[];
5849 }var search=new TextSearch(this.panelNode,findRow);
5851 if(!logRow){dispatch([Firebug.A11yModel],"onConsoleSearchMatchFound",[this,text,[]]);
5856 this.matchSet.push(logRow)
5857 }dispatch([Firebug.A11yModel],"onConsoleSearchMatchFound",[this,text,this.matchSet]);
5860 },createRow:function(rowName,className){var elt=this.document.createElement("div");
5863 },getTopContainer:function(){if(this.groups&&this.groups.length){return this.groups[this.groups.length-1]
5864 }else{return this.panelNode
5865 }},filterLogRow:function(logRow,scrolledToBottom){if(this.searchText){setClass(logRow,"matching");
5867 setTimeout(bindFixed(function(){if(this.searchFilter(this.searchText,logRow)){this.matchSet.push(logRow)
5870 if(scrolledToBottom){scrollToBottom(this.panelNode)
5871 }},this),100)
5872 }},searchFilter:function(text,logRow){var count=this.panelNode.childNodes.length;
5873 var searchRange=this.document.createRange();
5874 searchRange.setStart(this.panelNode,0);
5875 searchRange.setEnd(this.panelNode,count);
5876 var startPt=this.document.createRange();
5878 var endPt=this.document.createRange();
5884 if(prefName=="console.logLimit"){this.updateMaxLimit()
5892 }},onScroll:function(event){this.wasScrolledToBottom=FBL.isScrolledToBottom(this.panelNode);
5893 if(FBTrace.DBG_CONSOLE){FBTrace.sysout("console.onScroll ------------------ wasScrolledToBottom: "+this.wasScrolledToBottom+", wasScrolledToBottom: "+this.context.getName(),event)
5894 }},onResize:function(event){if(FBTrace.DBG_CONSOLE){FBTrace.sysout("console.onResize ------------------ wasScrolledToBottom: "+this.wasScrolledToBottom+", offsetHeight: "+this.panelNode.offsetHeight+", scrollTop: "+this.panelNode.scrollTop+", scrollHeight: "+this.panelNode.scrollHeight+", "+this.context.getName(),event)
5895 }if(this.wasScrolledToBottom){scrollToBottom(this.panelNode)
5954 }if(this.isAttached(context,win)){return true
5956 }this.attachConsoleInjector(context,win);
5957 this.addConsoleListener(context,win);
5959 var attached=this.isAttached(context,win);
5962 },attachConsoleInjector:function(context,win){var consoleInjection=this.getConsoleInjectionScript();
5966 }},getConsoleInjectionScript:function(){if(!this.consoleInjectionScript){var script="";
5975 this.consoleInjectionScript=script
5976 }return this.consoleInjectionScript
5983 }},evaluateConsoleScript:function(context){var scriptSource=this.getConsoleInjectionScript();
6003 var FirebugConsoleHandler=function FirebugConsoleHandler(context,win){this.window=win;
6004 this.attachTo=function(element){this.element=element;
6005 this.boundHandler=bind(this.handleEvent,this);
6006 this.element.addEventListener("firebugAppendConsole",this.boundHandler,true)
6008 this.detach=function(){this.element.removeEventListener("firebugAppendConsole",this.boundHandler,true)
6010 this.handler_name=++total_handlers;
6011 this.handleEvent=function(event){if(FBTrace.DBG_CONSOLE){FBTrace.sysout("FirebugConsoleHandler("+this.handler_name+") "+event.target.getAttribute("methodName")+", event",event)
6012 }if(!Firebug.CommandLine.CommandHandler.handle(event,this,win)){if(FBTrace.DBG_CONSOLE){FBTrace.sysout("FirebugConsoleHandler",this)
6016 this.firebuglite=Firebug.version;
6017 this.init=function(){var consoleElement=win.document.getElementById("_firebugConsole");
6020 this.log=function(){logFormatted(arguments,"log")
6022 this.debug=function(){logFormatted(arguments,"debug",true)
6024 this.info=function(){logFormatted(arguments,"info",true)
6026 this.warn=function(){logFormatted(arguments,"warn",true)
6028 this.error=function(){logFormatted(arguments,"error",true)
6030 this.exception=function(){logAssert("error",arguments)
6032 this.assert=function(x){if(!x){var rest=[];
6038 this.dir=function(o){Firebug.Console.log(o,context,"dir",Firebug.DOMPanel.DirTable)
6040 this.dirxml=function(o){if(instanceOf(o,"Window")){o=o.document.documentElement
6044 this.group=function(){var sourceLink=null;
6047 this.groupEnd=function(){Firebug.Console.closeGroup(context)
6049 this.groupCollapsed=function(){var sourceLink=getStackLink();
6053 this.profile=function(title){logFormatted(["console.profile() not supported."],"warn",true)
6055 this.profileEnd=function(){logFormatted(["console.profile() not supported."],"warn",true)
6057 this.count=function(key){var frameId="0";
6068 this.trace=function(){var getFuncName=function getFuncName(f){if(f.getName instanceof Function){return f.getName()
6125 this.trace_ok=function(){var getFuncName=function getFuncName(f){if(f.getName instanceof Function){return f.getName()
6146 this.clear=function(){Firebug.Console.clear(context)
6148 this.time=function(name,reset){if(!name){return
6150 if(!this.timeCounters){this.timeCounters={}
6152 if(!reset&&this.timeCounters[key]){return
6153 }this.timeCounters[key]=time
6155 this.timeEnd=function(name){var time=new Date().getTime();
6156 if(!this.timeCounters){return
6158 var timeCounter=this.timeCounters[key];
6161 this.info(label);
6162 delete this.timeCounters[key]
6165 this.evaluated=function(result,context){if(FBTrace.DBG_CONSOLE){FBTrace.sysout("consoleInjector.FirebugConsoleHandler evalutated default called",result)
6168 this.evaluateError=function(result,context){Firebug.Console.log(result,context,"errorMessage")
6236 Firebug.CommandLine=extend(Firebug.Module,{element:null,isMultiLine:false,isActive:false,initialize:function(doc){this.clear=bind(this.clear,this);
6237 this.enter=bind(this.enter,this);
6238 this.onError=bind(this.onError,this);
6239 this.onKeyDown=bind(this.onKeyDown,this);
6240 this.onMultiLineKeyDown=bind(this.onMultiLineKeyDown,this);
6241 addEvent(Firebug.browser.window,"error",this.onError);
6242 addEvent(Firebug.chrome.window,"error",this.onError)
6243 },shutdown:function(doc){this.deactivate();
6244 removeEvent(Firebug.browser.window,"error",this.onError);
6245 removeEvent(Firebug.chrome.window,"error",this.onError)
6249 if(this.isActive){if(this.isMultiLine==multiLine){return
6250 }this.deactivate()
6254 if(multiLine){onRun=onRun||this.enter;
6255 this.isMultiLine=true;
6256 this.element=fbLargeCommandLine;
6257 addEvent(this.element,"keydown",this.onMultiLineKeyDown);
6259 this.runButton=new Button({element:$("fbCommand_btRun"),owner:Firebug.CommandLine,onClick:onRun});
6260 this.runButton.initialize();
6261 this.clearButton=new Button({element:$("fbCommand_btClear"),owner:Firebug.CommandLine,onClick:this.clear});
6262 this.clearButton.initialize()
6263 }else{this.isMultiLine=false;
6264 this.element=fbCommandLine;
6266 }addEvent(this.element,"keydown",this.onKeyDown)
6267 }if(isOpera){fixOperaTabKey(this.element)
6268 }if(this.lastValue){this.element.value=this.lastValue
6269 }this.isActive=true
6270 },deactivate:function(){if(!this.isActive){return
6271 }this.isActive=false;
6272 this.lastValue=this.element.value;
6273 if(this.isMultiLine){removeEvent(this.element,"keydown",this.onMultiLineKeyDown);
6275 this.runButton.destroy();
6276 this.clearButton.destroy()
6277 }else{removeEvent(this.element,"keydown",this.onKeyDown)
6278 }this.element=null;
6279 delete this.element;
6283 },focus:function(){this.element.focus()
6284 },blur:function(){this.element.blur()
6285 },clear:function(){this.element.value=""
6289 },enter:function(){var command=this.element.value;
6293 var result=this.evaluate(command);
6295 },prevCommand:function(){if(Firebug.context.persistedState.commandPointer>0&&Firebug.context.persistedState.commandHistory.length>0){this.element.value=Firebug.context.persistedState.commandHistory[--Firebug.context.persistedState.commandPointer]
6296 }},nextCommand:function(){var element=this.element;
6302 }}},autocomplete:function(reverse){var element=this.element;
6341 }},setMultiLine:function(multiLine){if(multiLine==this.isMultiLine){return
6342 }this.activate(multiLine)
6350 }if(code==13){this.enter();
6351 this.clear()
6352 }else{if(code==27){setTimeout(this.clear,0)
6353 }else{if(code==38){this.prevCommand()
6354 }else{if(code==40){this.nextCommand()
6355 }else{if(code==9){this.autocomplete(e.shiftKey)
6361 if(code==13&&e.ctrlKey){this.enter()
6443 this.appendTreeNode(parentNode.childNodes,html);
6458 if(id){this.selectTreeNode(id)
6461 while(id&&!this.isTreeNodeVisible(id)){stack.push(id);
6468 if(stack.length>0&&ElementCache.get(id).childNodes.length>0){this.appendTreeChildren(node)
6473 function HTMLPanel(){}HTMLPanel.prototype=extend(Firebug.Panel,{name:"HTML",title:"HTML",options:{hasSidePanel:true,isPreRendered:!Firebug.flexChromeEnabled,innerHTMLSync:true},create:function(){Firebug.Panel.create.apply(this,arguments);
6474 this.panelNode.style.padding="4px 3px 1px 15px";
6475 this.panelNode.style.minWidth="500px";
6476 if(Env.Options.enablePersistent||Firebug.chrome.type!="popup"){this.createUI()
6477 }if(this.sidePanelBar&&!this.sidePanelBar.selectedPanel){this.sidePanelBar.selectPanel("css")
6482 Firebug.Panel.destroy.apply(this,arguments)
6486 this.panelNode.innerHTML=html.join("")
6487 },initialize:function(){Firebug.Panel.initialize.apply(this,arguments);
6488 addEvent(this.panelNode,"click",Firebug.HTML.onTreeClick);
6498 removeEvent(this.panelNode,"click",Firebug.HTML.onTreeClick);
6500 Firebug.Panel.shutdown.apply(this,arguments)
6590 },appendObject:function(object,html){try{if(object==undefined){this.appendNull("undefined",html)
6591 }else{if(object==null){this.appendNull("null",html)
6592 }else{if(typeof object=="string"){this.appendString(object,html)
6593 }else{if(typeof object=="number"){this.appendInteger(object,html)
6594 }else{if(typeof object=="boolean"){this.appendInteger(object,html)
6595 }else{if(typeof object=="function"){this.appendFunction(object,html)
6596 }else{if(object.nodeType==1){this.appendSelector(object,html)
6597 }else{if(typeof object=="object"){if(typeof object.length!="undefined"){this.appendArray(object,html)
6598 }else{this.appendObjectFormatted(object,html)
6599 }}else{this.appendText(object,html)
6624 child=child.nextSibling){this.appendNode(child,html)
6632 ++i){this.appendObject(object[i],html);
6674 }}}),initializeBrowser:function(browser){browser.onInfoTipMouseOut=bind(this.onMouseOut,this,browser);
6675 browser.onInfoTipMouseMove=bind(this.onMouseMove,this,browser);
6681 return browser.infoTip=this.tags.infoTipTag.append({},getBody(doc))
6705 }else{this.hideInfoTip(infoTip)
6707 }},onMouseOut:function(event,browser){if(!event.relatedTarget){this.hideInfoTip(browser.infoTip)
6710 this.showInfoTip(browser.infoTip,browser.currentPanel,target,x,y,event.rangeParent,event.rangeOffset)
6711 }else{this.hideInfoTip(browser.infoTip)
6712 }},populateColorInfoTip:function(infoTip,color){this.tags.colorTag.replace({rgbValue:color},infoTip);
6715 }this.tags.imgTag.replace({urlValue:url,repeat:repeat},infoTip);
6718 if(!infoTip){infoTip=this.initializeBrowser(panel.panelBrowser)
6719 }this.hideInfoTip(infoTip)
6720 }},showSidePanel:function(browser,panel){this.showPanel(browser,panel)
6726 r.parent=this;
6727 this.children.push(r);
6729 },lastChild:function(){return this.children[this.children.length-1]
6769 stack.last=function(){return this[this.length-1]
7021 (function(){this.getElementXPath=function(element){try{if(element&&element.id){return'//*[@id="'+element.id+'"]'
7022 }else{return this.getElementTreeXPath(element)
7024 this.getElementTreeXPath=function(element){var paths=[];
7038 this.getElementsByXPath=function(doc,xpath){var nodes=[];
7045 this.getRuleMatchingElements=function(rule,doc){var css=rule.selectorText;
7046 var xpath=this.cssToXPath(css);
7047 return this.getElementsByXPath(doc,xpath)
7065 },isSelectorEditable:function(rule){return rule.isSelectorEditable&&this.isEditable(rule)
7090 }dispatch(this.fbListeners,"onCSSFreeEdit",[styleSheet,value])
7093 dispatch(this.fbListeners,"onCSSInsertRule",[styleSheet,cssText,ruleIndex]);
7096 }dispatch(this.fbListeners,"onCSSDeleteRule",[styleSheet,ruleIndex]);
7105 }if(propName){dispatch(this.fbListeners,"onCSSSetProperty",[style,propName,propValue,propPriority,prevValue,prevPriority,rule,baseText])
7112 }if(propName){dispatch(this.fbListeners,"onCSSRemoveProperty",[style,propName,prevValue,prevPriority,rule,baseText])
7115 Firebug.CSSStyleSheetPanel.prototype=extend(Firebug.SourceBoxPanel,{template:domplate({tag:DIV({"class":"cssSheet insertInto a11yCSSView"},FOR("rule","$rules",CSSRuleTag),DIV({"class":"cssSheet editable insertBefore"},""))}),refresh:function(){if(this.location){this.updateLocation(this.location)
7116 }else{if(this.selection){this.updateSelection(this.selection)
7117 }}},toggleEditing:function(){if(!this.stylesheetEditor){this.stylesheetEditor=new StyleSheetEditor(this.document)
7118 }if(this.editing){Firebug.Editor.stopEditing()
7119 }else{if(!this.location){return
7120 }var styleSheet=this.location.editStyleSheet?this.location.editStyleSheet.sheet:this.location;
7121 var css=getStyleSheetCSS(styleSheet,this.context);
7122 this.stylesheetEditor.styleSheet=this.location;
7123 Firebug.Editor.startEditing(this.panelNode,css,this.stylesheetEditor)
7124 }},getStylesheetURL:function(rule){if(this.location.href){return this.location.href
7125 }else{return this.context.window.location.href
7133 }}}},highlightRule:function(rule){var ruleElement=Firebug.getElementByRepObject(this.panelNode.firstChild,rule);
7134 if(ruleElement){scrollIntoCenterView(ruleElement,this.panelNode);
7135 setClassTimed(ruleElement,"jumpHighlight",this.context)
7140 if(instanceOf(rule,"CSSStyleRule")){var props=this.getRuleProperties(context,rule);
7148 }else{if(instanceOf(rule,"CSSMediaRule")){appendRules.apply(this,[rule.cssRules])
7151 appendRules.apply(this,[styleSheet.cssRules||styleSheet.rules]);
7156 this.addProperty(propName,style.getPropertyValue(propName),!!style.getPropertyPriority(propName),false,inheritMode,props)
7163 }if(m[2]){this.addProperty(m[1],m[2],!!m[3],false,inheritMode,props)
7165 },getRuleProperties:function(context,rule,inheritMode){var props=this.parseCSSProps(rule.style,inheritMode);
7168 this.addOldProperties(context,ruleId,inheritMode,props);
7175 this.addProperty(prop.name,prop.value,prop.important,true,inheritMode,props)
7178 }name=this.translateName(name,value);
7193 }}}}}}}}},editElementStyle:function(){var rulesBox=$$(".cssElementRuleContainer",this.panelNode)[0];
7194 var styleRuleBox=rulesBox&&Firebug.getElementByRepObject(rulesBox,this.selection);
7195 if(!styleRuleBox){var rule={rule:this.selection,inherited:false,selector:"element.style",props:[]};
7196 if(!rulesBox){styleRuleBox=this.template.cascadedTag.replace({rules:[rule],inherited:[],inheritLabel:"Inherited from"},this.panelNode);
7198 }else{styleRuleBox=this.template.ruleTag.insertBefore({rule:rule},rulesBox)
7203 if(!location){location=getChildByClass(this.panelNode,"cssSheet");
7212 if(this.context.selectorMap&&this.context.selectorMap.hasOwnProperty(ruleId)){var map=this.context.selectorMap[ruleId];
7217 }}}if(this.name=="stylesheet"){dispatch([Firebug.A11yModel],"onInlineEditorClose",[this,row.firstChild,true])
7219 this.markChange(this.name=="stylesheet")
7223 if(!this.context.selectorMap){this.context.selectorMap={}
7225 if(!(this.context.selectorMap.hasOwnProperty(ruleId))){this.context.selectorMap[ruleId]=[]
7226 }var map=this.context.selectorMap[ruleId];
7234 }this.markChange(this.name=="stylesheet")
7235 },onMouseDown:function(event){var offset=event.clientX-this.panelNode.parentNode.offsetLeft;
7240 if(row&&hasClass(row,"editGroup")){this.disablePropertyRow(row);
7242 }},onDoubleClick:function(event){var offset=event.clientX-this.panelNode.parentNode.offsetLeft;
7247 if(row&&!getAncestorByClass(target,"cssPropName")&&!getAncestorByClass(target,"cssPropValue")){this.insertPropertyRow(row);
7249 }},name:"stylesheet",title:"CSS",parentPanel:null,searchable:true,dependents:["css","stylesheet","dom","domSide","layout"],options:{hasToolButtons:true},create:function(){Firebug.Panel.create.apply(this,arguments);
7250 this.onMouseDown=bind(this.onMouseDown,this);
7251 this.onDoubleClick=bind(this.onDoubleClick,this);
7252 if(this.name=="stylesheet"){this.onChangeSelect=bind(this.onChangeSelect,this);
7254 var selectNode=this.selectNode=createElement("select");
7261 this.toolButtonsNode.appendChild(selectNode)
7266 this.updateLocation(styleSheet)
7267 },initialize:function(){Firebug.Panel.initialize.apply(this,arguments);
7268 this.context=Firebug.chrome;
7269 this.document=Firebug.chrome.document;
7270 this.initializeNode();
7271 if(this.name=="stylesheet"){var styleSheets=Firebug.browser.document.styleSheets;
7272 if(styleSheets.length>0){addEvent(this.selectNode,"change",this.onChangeSelect);
7273 this.updateLocation(styleSheets[0])
7275 if(this.name=="stylesheet"){removeEvent(this.selectNode,"change",this.onChangeSelect)
7276 }this.destroyNode();
7277 Firebug.Panel.shutdown.apply(this,arguments)
7278 },destroy:function(state){Firebug.Panel.destroy.apply(this,arguments)
7279 },initializeNode:function(oldPanelNode){addEvent(this.panelNode,"mousedown",this.onMouseDown);
7280 addEvent(this.panelNode,"dblclick",this.onDoubleClick)
7281 },destroyNode:function(){removeEvent(this.panelNode,"mousedown",this.onMouseDown);
7282 removeEvent(this.panelNode,"dblclick",this.onDoubleClick)
7284 this.showToolbarButtons("fbCSSButtons",true);
7285 if(this.context.loaded&&!this.location){restoreObjects(this,state);
7286 if(!this.location){this.location=this.getDefaultLocation()
7287 }if(state&&state.scrollTop){this.panelNode.scrollTop=state.scrollTop
7288 }}},ihide:function(){this.showToolbarButtons("fbCSSButtons",false);
7289 this.lastScrollTop=this.panelNode.scrollTop
7297 }if(styleSheet.restricted){FirebugReps.Warning.tag.replace({object:"AccessRestricted"},this.panelNode);
7298 CssAnalyzer.externalStyleSheetWarning.tag.append({object:"The stylesheet could not be loaded due to access restrictions. ",link:"more...",href:"http://getfirebug.com/wiki/index.php/Firebug_Lite_FAQ#I_keep_seeing_.22Access_to_restricted_URI_denied.22"},this.panelNode);
7300 }var rules=this.getStyleSheetRules(this.context,styleSheet);
7302 if(rules.length){result=this.template.tag.replace({rules:rules},this.panelNode)
7303 }else{result=FirebugReps.Warning.tag.replace({object:"EmptyStyleSheet"},this.panelNode)
7304 }},updateSelection:function(object){this.selection=null;
7306 }if(object instanceof CSSStyleRule){this.navigate(object.parentStyleSheet);
7307 this.highlightRule(object)
7308 }else{if(object instanceof CSSStyleSheet){this.navigate(object)
7310 var sourceFile=getSourceFileByHref(sourceLink.href,this.context);
7311 if(sourceFile){clearNode(this.panelNode);
7312 this.showSourceFile(sourceFile);
7314 if(lineNo){this.scrollToLine(lineNo,this.jumpHighlightFactory(lineNo,this.context))
7315 }}else{var stylesheet=getStyleSheetByHref(sourceLink.href,this.context);
7316 if(stylesheet){this.navigate(stylesheet)
7319 }}}}}},updateOption:function(name,value){if(name=="expandShorthandProps"){this.refresh()
7320 }},getLocationList:function(){var styleSheets=getAllStyleSheets(this.context);
7322 },getOptionsMenuItems:function(){return[{label:"Expand Shorthand Properties",type:"checkbox",checked:Firebug.expandShorthandProps,command:bindFixed(Firebug.togglePref,Firebug,"expandShorthandProps")},"-",{label:"Refresh",command:bind(this.refresh,this)}]
7324 if(this.infoTipType=="color"){items.push({label:"CopyColor",command:bindFixed(copyToClipboard,FBL,this.infoTipObject)})
7325 }else{if(this.infoTipType=="image"){items.push({label:"CopyImageLocation",command:bindFixed(copyToClipboard,FBL,this.infoTipObject)},{label:"OpenImageInNewTab",command:bindFixed(openNewTab,FBL,this.infoTipObject)})
7326 }}if(isElement(this.selection)){items.push({label:"EditStyle",command:bindFixed(this.editElementStyle,this)})
7327 }else{if(!isSystemStyleSheet(this.selection)){items.push({label:"NewRule",command:bindFixed(this.insertRule,this,target)})
7329 if(cssRule&&hasClass(cssRule,"cssEditableRule")){items.push("-",{label:"NewProp",command:bindFixed(this.insertPropertyRow,this,target)});
7333 items.push({label:$STRF("EditProp",[propName]),nol10n:true,command:bindFixed(this.editPropertyRow,this,propRow)},{label:$STRF("DeleteProp",[propName]),nol10n:true,command:bindFixed(this.deletePropertyRow,this,propRow)},{label:$STRF("DisableProp",[propName]),nol10n:true,type:"checkbox",checked:isDisabled,command:bindFixed(this.disablePropertyRow,this,propRow)})
7334 }}items.push("-",{label:"Refresh",command:bind(this.refresh,this)});
7336 },browseObject:function(object){if(this.infoTipType=="image"){openNewTab(this.infoTipObject);
7345 if(cssValue){if(cssValue.value==this.infoTipValue){return true
7346 }this.infoTipValue=cssValue.value;
7347 if(cssValue.type=="rgb"||(!cssValue.type&&isColorKeyword(cssValue.value))){this.infoTipType="color";
7348 this.infoTipObject=cssValue.value;
7352 var baseURL=this.getStylesheetURL(rule);
7356 this.infoTipType="image";
7357 this.infoTipObject=absURL;
7359 }}}}}delete this.infoTipType;
7360 delete this.infoTipValue;
7361 delete this.infoTipObject
7362 },getEditor:function(target,value){if(target==this.panelNode||hasClass(target,"cssSelector")||hasClass(target,"cssRule")||hasClass(target,"cssSheet")){if(!this.ruleEditor){this.ruleEditor=new CSSRuleEditor(this.document)
7363 }return this.ruleEditor
7364 }else{if(!this.editor){this.editor=new CSSEditor(this.document)
7365 }return this.editor
7366 }},getDefaultLocation:function(){try{var styleSheets=this.context.window.document.styleSheets;
7375 },search:function(text,reverse){var curDoc=this.searchCurrentDoc(!Firebug.searchGlobal,text,reverse);
7376 if(!curDoc&&Firebug.searchGlobal){return this.searchOtherDocs(text,reverse)
7382 }}}if(this.navigateToNextDocument(scanDoc,reverse)){return this.searchCurrentDoc(true,text,reverse)
7383 }},searchCurrentDoc:function(wrapSearch,text,reverse){if(!text){delete this.currentSearch;
7386 if(this.currentSearch&&text==this.currentSearch.text){row=this.currentSearch.findNext(wrapSearch,false,reverse,Firebug.Search.isCaseSensitive(text))
7387 }else{if(this.editing){this.currentSearch=new TextSearch(this.stylesheetEditor.box);
7388 row=this.currentSearch.find(text,reverse,Firebug.Search.isCaseSensitive(text));
7389 if(row){var sel=this.document.defaultView.getSelection();
7391 sel.addRange(this.currentSearch.range);
7392 scrollSelectionIntoView(this);
7396 }this.currentSearch=new TextSearch(this.panelNode,findRow);
7397 row=this.currentSearch.find(text,reverse,Firebug.Search.isCaseSensitive(text))
7398 }}if(row){this.document.defaultView.getSelection().selectAllChildren(row);
7399 scrollIntoCenterView(row,this.panelNode);
7400 dispatch([Firebug.A11yModel],"onCSSSearchMatchFound",[this,text,row]);
7402 }else{dispatch([Firebug.A11yModel],"onCSSSearchMatchFound",[this,text,null]);
7407 this.getInheritedRules(element,sections,usedProps);
7408 this.getElementRules(element,rules,usedProps);
7410 var result=this.template.cascadedTag.replace({rules:rules,inherited:sections,inheritLabel:inheritLabel},this.panelNode)
7411 }else{var result=FirebugReps.Warning.tag.replace({object:"EmptyElementCSS"},this.panelNode)
7412 }if(CssAnalyzer.hasExternalStyleSheet()){CssAnalyzer.externalStyleSheetWarning.tag.append({object:"The results here may be inaccurate because some stylesheets could not be loaded due to access restrictions. ",link:"more...",href:"http://getfirebug.com/wiki/index.php/Firebug_Lite_FAQ#I_keep_seeing_.22This_element_has_no_style_rules.22"},this.panelNode)
7414 }else{return this.selection.ownerDocument.location.href
7416 if(parent&&parent.nodeType==1){this.getInheritedRules(parent,sections,usedProps);
7418 this.getElementRules(parent,rules,usedProps,true);
7434 }var props=this.getRuleProperties(this.context,rule,inheritMode);
7439 this.markOverridenProps(props,usedProps,inheritMode);
7441 }}if(element.style){this.getStyleProperties(element,rules,usedProps,inheritMode)
7455 }},getStyleProperties:function(element,rules,usedProps,inheritMode){var props=this.parseCSSProps(element.style,inheritMode);
7456 this.addOldProperties(this.context,getElementXPath(element),inheritMode,props);
7458 this.markOverridenProps(props,usedProps,inheritMode);
7460 }},name:"css",title:"Style",parentPanel:"HTML",order:0,initialize:function(){this.context=Firebug.chrome;
7461 this.document=Firebug.chrome.document;
7462 Firebug.CSSStyleSheetPanel.prototype.initialize.apply(this,arguments);
7464 if(selection){this.select(selection,true)
7467 if(isAncestor(this.stateChangeEl,doc)){this.removeStateChangeHandlers()
7469 },updateView:function(element){this.updateCascadeView(element);
7470 if(domUtils){this.contentState=safeGetContentState(element);
7471 this.addStateChangeHandlers(element)
7473 }if(sothinkInstalled){FirebugReps.Warning.tag.replace({object:"SothinkWarning"},this.panelNode);
7476 }this.updateView(element)
7477 },updateOption:function(name,value){if(name=="showUserAgentCSS"||name=="expandShorthandProps"){this.refresh()
7479 if(domUtils&&this.selection){var state=safeGetContentState(this.selection);
7481 ret.push({label:":active",type:"checkbox",checked:state&STATE_ACTIVE,command:bindFixed(this.updateContentState,this,STATE_ACTIVE,state&STATE_ACTIVE)});
7482 ret.push({label:":hover",type:"checkbox",checked:state&STATE_HOVER,command:bindFixed(this.updateContentState,this,STATE_HOVER,state&STATE_HOVER)})
7484 },updateContentState:function(state,remove){domUtils.setContentState(remove?this.selection.ownerDocument.documentElement:this.selection,state);
7485 this.refresh()
7486 },addStateChangeHandlers:function(el){this.removeStateChangeHandlers();
7487 this.stateChangeEl=el
7488 },removeStateChangeHandlers:function(){var sel=this.stateChangeEl;
7489 if(sel){}},contentStateCheck:function(state){if(!state||this.contentState&state){var timeoutRunner=bindFixed(function(){var newState=safeGetContentState(this.selection);
7490 if(newState!=this.contentState){this.context.invalidatePanels(this.name)
7491 }},this);
7510 }}}var result=this.template.computedTag.replace({groups:groups},this.panelNode)
7511 },name:"computed",title:"Computed",parentPanel:"HTML",order:1,updateView:function(element){this.updateComputedView(element)
7512 },getOptionsMenuItems:function(){return[{label:"Refresh",command:bind(this.refresh,this)}]
7514 function CSSEditor(doc){this.initializeInline(doc)
7536 }}}}this.panel.markChange(this.panel.name=="stylesheet")
7538 }},getAutoCompleteRange:function(value,offset){if(hasClass(this.target,"cssPropName")){return{start:0,end:value.length-1}
7540 }},getAutoCompleteList:function(preExpr,expr,postExpr){if(hasClass(this.target,"cssPropName")){return getCSSPropertyNames()
7541 }else{var row=getAncestorByClass(this.target,"cssProp");
7545 function CSSRuleEditor(doc){this.initializeInline(doc);
7546 this.completeAsYouType=false
7555 var styleSheet=this.panel.location;
7586 }this.panel.markChange(this.panel.name=="stylesheet")
7588 function StyleSheetEditor(doc){this.box=this.tag.replace({},doc,this);
7589 this.input=this.box.firstChild
7590 }StyleSheetEditor.prototype=domplate(Firebug.BaseEditor,{multiLine:true,tag:DIV(TEXTAREA({"class":"styleSheetEditor fullPanelEditor",oninput:"$onInput"})),getValue:function(){return this.input.value
7591 },setValue:function(value){return this.input.value=value
7592 },show:function(target,panel,value,textSize,targetSize){this.target=target;
7593 this.panel=panel;
7594 this.panel.panelNode.appendChild(this.box);
7595 this.input.value=value;
7596 this.input.focus();
7601 if(this.box.parentNode==this.panel.panelNode){this.panel.panelNode.removeChild(this.box)
7602 }delete this.target;
7603 delete this.panel;
7604 delete this.styleSheet
7605 },saveEdit:function(target,value,previousValue){Firebug.CSSModule.freeEdit(this.styleSheet,value)
7606 },endEditing:function(){this.panel.refresh();
7609 },scrollToLine:function(line,offset){this.startMeasuring(this.input);
7610 var lineHeight=this.measureText().height;
7611 this.stopMeasuring();
7612 this.input.scrollTop=(line*lineHeight)+offset
7668 },selectSourceCode:function(index){this.getPanel().selectSourceCode(index)
7671 function ScriptPanel(){}ScriptPanel.prototype=extend(Firebug.Panel,{name:"Script",title:"Script",selectIndex:0,sourceIndex:-1,options:{hasToolButtons:true},create:function(){Firebug.Panel.create.apply(this,arguments);
7672 this.onChangeSelect=bind(this.onChangeSelect,this);
7675 var selectNode=this.selectNode=createElement("select");
7683 }this.toolButtonsNode.appendChild(selectNode)
7684 },initialize:function(){this.selectSourceCode(this.selectIndex);
7685 Firebug.Panel.initialize.apply(this,arguments);
7686 addEvent(this.selectNode,"change",this.onChangeSelect)
7687 },shutdown:function(){removeEvent(this.selectNode,"change",this.onChangeSelect);
7688 Firebug.Panel.shutdown.apply(this,arguments)
7689 },detach:function(oldChrome,newChrome){Firebug.Panel.detach.apply(this,arguments);
7692 this.selectNode.selectedIndex=index;
7693 this.selectIndex=index;
7694 this.sourceIndex=-1
7695 },onChangeSelect:function(event){var select=this.selectNode;
7696 this.selectIndex=select.selectedIndex;
7700 this.renderSourceCode(selectedSourceIndex)
7701 },selectSourceCode:function(index){var select=this.selectNode;
7706 this.renderSourceCode(selectedSourceIndex)
7707 },renderSourceCode:function(index){if(this.sourceIndex!=index){var renderProcess=function renderProcess(src){var html=[],hl=0;
7733 var self=this;
7743 }this.sourceIndex=index
7792 this.toggleRow(row)
7810 }}}var rowTag=this.rowTag;
7826 var rowTag=this.rowTag;
7840 },rebuild:function(update,scrollTop){var members=getMembers(this.selection);
7841 expandMembers(members,this.toggles,0,0);
7842 this.showMembers(members,update,scrollTop);
7843 if(!this.parentPanel){updateStatusBar(this)
7844 }},showMembers:function(members,update,scrollTop){if(this.timeouts){for(var i=0;
7845 i<this.timeouts.length;
7846 ++i){this.context.clearTimeout(this.timeouts[i])
7847 }delete this.timeouts
7848 }if(!members.length){return this.showEmptyMembers()
7849 }var panelNode=this.panelNode;
7853 var table=this.tag.replace({domPanel:this,toggles:this.toggles},dest);
7856 var panel=this;
7861 while(members.length){with({slice:members.splice(0,insertSliceSize),isLast:!members.length}){timeouts.push(this.context.setTimeout(function(){if(!tbody.lastChild){return
7866 }}if(offscreen){timeouts.push(this.context.setTimeout(function(){if(panelNode.firstChild){panelNode.replaceChild(table,panelNode.firstChild)
7870 }else{timeouts.push(this.context.setTimeout(function(){panelNode.scrollTop=scrollTop==undefined?0:scrollTop
7872 }this.timeouts=timeouts
7873 },showEmptyMembers:function(){FirebugReps.Warning.tag.replace({object:"NoMembersWarning"},this.panelNode)
7876 i<this.objectPath.length;
7877 ++i){if(this.getPathObject(i)===object){return i
7879 },getPathObject:function(index){var object=this.objectPath[index];
7883 return object?object:this.selection
7884 },getRowPropertyValue:function(row){var object=this.getRowObject(row);
7885 object=this.getRealObject(object);
7887 if(object instanceof jsdIStackFrame){return Firebug.Debugger.evaluate(propName,this.context)
7895 }},create:function(){this.context=Firebug.browser;
7896 this.objectPath=[];
7897 this.propertyPath=[];
7898 this.viewPath=[];
7899 this.pathIndex=-1;
7900 this.toggles={};
7901 Firebug.Panel.create.apply(this,arguments);
7902 this.panelNode.style.padding="0 1px"
7903 },initialize:function(){Firebug.Panel.initialize.apply(this,arguments);
7904 addEvent(this.panelNode,"mousemove",this.onMouseMove)
7905 },shutdown:function(){removeEvent(this.panelNode,"mousemove",this.onMouseMove);
7906 Firebug.Panel.shutdown.apply(this,arguments)
7907 },ishow:function(state){if(this.context.loaded&&!this.selection){if(!state){this.select(null);
7909 }if(state.viewPath){this.viewPath=state.viewPath
7910 }if(state.propertyPath){this.propertyPath=state.propertyPath
7911 }var defaultObject=this.getDefaultSelection(this.context);
7913 if(state.firstSelection){var restored=state.firstSelection(this.context);
7915 this.objectPath=[defaultObject,restored]
7916 }else{this.objectPath=[defaultObject]
7917 }}else{this.objectPath=[defaultObject]
7918 }if(this.propertyPath.length>1){for(var i=1;
7919 i<this.propertyPath.length;
7920 ++i){var name=this.propertyPath[i];
7925 }if(selectObject){this.objectPath.push(new Property(object,name))
7926 }else{this.viewPath.splice(i);
7927 this.propertyPath.splice(i);
7928 this.objectPath.splice(i);
7929 selectObject=this.getPathObject(this.objectPath.length-1);
7931 }}}var selection=state.pathIndex<=this.objectPath.length-1?this.getPathObject(state.pathIndex):this.getPathObject(this.objectPath.length-1);
7932 this.select(selection)
7937 }}},refresh:function(){this.rebuild(true)
7938 },updateSelection:function(object){var previousIndex=this.pathIndex;
7939 var previousView=previousIndex==-1?null:this.viewPath[previousIndex];
7940 var newPath=this.pathToAppend;
7941 delete this.pathToAppend;
7942 var pathIndex=this.findPathObject(object);
7943 if(newPath||pathIndex==-1){this.toggles={};
7944 if(newPath){if(previousView){if(this.panelNode.scrollTop){previousView.scrollTop=this.panelNode.scrollTop
7945 }var start=previousIndex+1,length=this.objectPath.length-start;
7946 this.objectPath.splice(start,length);
7947 this.propertyPath.splice(start,length);
7948 this.viewPath.splice(start,length)
7949 }var value=this.getPathObject(previousIndex);
7959 }++this.pathIndex;
7960 this.objectPath.push(new Property(object,name));
7961 this.propertyPath.push(name);
7962 this.viewPath.push({toggles:this.toggles,scrollTop:0})
7963 }}else{this.toggles={};
7965 if(object===win){this.pathIndex=0;
7966 this.objectPath=[win];
7967 this.propertyPath=[null];
7968 this.viewPath=[{toggles:this.toggles,scrollTop:0}]
7969 }else{this.pathIndex=1;
7970 this.objectPath=[win,object];
7971 this.propertyPath=[null,null];
7972 this.viewPath=[{toggles:{},scrollTop:0},{toggles:this.toggles,scrollTop:0}]
7973 }}this.panelNode.scrollTop=0;
7974 this.rebuild()
7975 }else{this.pathIndex=pathIndex;
7976 var view=this.viewPath[pathIndex];
7977 this.toggles=view.toggles;
7978 if(previousView&&this.panelNode.scrollTop){previousView.scrollTop=this.panelNode.scrollTop
7979 }this.rebuild(false,view.scrollTop)
7980 }},getObjectPath:function(object){return this.objectPath
8003 if(pathIndex){this.select(this.getPathObject(pathIndex))
8006 }this.pathToAppend=getPath(row);
8009 this.pathToAppend.push(arrayIndex)
8010 }this.select(target.repObject,true)
8014 if(row){this.selectRow(row,repNode);
8016 }}},name:"DOM",title:"DOM",searchable:true,statusSeparator:">",options:{hasToolButtons:true,hasStatusBar:true},create:function(){Firebug.DOMBasePanel.prototype.create.apply(this,arguments);
8017 this.onClick=bind(this.onClick,this);
8018 this.onClickStatusBar=bind(this.onClickStatusBar,this);
8019 this.panelNode.style.padding="0 1px"
8020 },initialize:function(oldPanelNode){Firebug.DOMBasePanel.prototype.initialize.apply(this,arguments);
8021 addEvent(this.panelNode,"click",this.onClick);
8022 this.ishow();
8023 addEvent(this.statusBarNode,"click",this.onClickStatusBar)
8024 },shutdown:function(){removeEvent(this.panelNode,"click",this.onClick);
8025 Firebug.DOMBasePanel.prototype.shutdown.apply(this,arguments)
8086 }FBL.ErrorCopy=function(message){this.message=message
8130 }this.pathToAppend=getPath(row);
8133 this.pathToAppend.push(arrayIndex)
8141 if(row){this.selectRow(row,repNode);
8143 }}},name:"DOMSidePanel",parentPanel:"HTML",title:"DOM",options:{hasToolButtons:true},isInitialized:false,create:function(){Firebug.DOMBasePanel.prototype.create.apply(this,arguments);
8144 this.onClick=bind(this.onClick,this)
8145 },initialize:function(){Firebug.DOMBasePanel.prototype.initialize.apply(this,arguments);
8146 addEvent(this.panelNode,"click",this.onClick);
8148 if(selection){this.select(selection,true)
8149 }},shutdown:function(){removeEvent(this.panelNode,"click",this.onClick);
8150 Firebug.DOMBasePanel.prototype.shutdown.apply(this,arguments)
8151 },reattach:function(oldChrome){this.toggles=oldChrome.getPanel("DOMSidePanel").toggles
8157 this.module=null;
8158 this.initialize=function(){if(!this.messageQueue){this.messageQueue=[]
8159 }for(var name in traceOptions){this[name]=traceOptions[name]
8161 this.sysout=function(){return this.logFormatted(arguments,"")
8163 this.dumpProperties=function(title,object){return this.logFormatted("dumpProperties() not supported.","warning")
8165 this.dumpStack=function(){return this.logFormatted("dumpStack() not supported.","warning")
8167 this.flush=function(module){this.module=module;
8168 var queue=this.messageQueue;
8169 this.messageQueue=[];
8172 ++i){this.writeMessage(queue[i][0],queue[i][1],queue[i][2])
8174 this.getPanel=function(){return this.module?this.module.getPanel():null
8176 this.logFormatted=function(objects,className){var html=this.DBG_TIMESTAMP?[getTimestamp()," | "]:[];
8186 }}return this.logRow(html,className)
8188 this.logRow=function(message,className){var panel=this.getPanel();
8189 if(panel&&panel.panelNode){this.writeMessage(message,className)
8190 }else{this.messageQueue.push([message,className])
8191 }return this.LOG_COMMAND
8193 this.writeMessage=function(message,className){var container=this.getPanel().containerNode;
8195 this.writeRow.call(this,message,className);
8198 this.appendRow=function(row){var container=this.getPanel().panelNode;
8201 this.writeRow=function(message,className){var row=this.getPanel().panelNode.ownerDocument.createElement("div");
8204 this.appendRow(row)
8219 },clear:function(){this.getPanel().panelNode.innerHTML=""
8222 function TracePanel(){}TracePanel.prototype=extend(Firebug.Panel,{name:"Trace",title:"Trace",options:{hasToolButtons:true,innerHTMLSync:true},create:function(){Firebug.Panel.create.apply(this,arguments);
8223 this.clearButton=new Button({caption:"Clear",title:"Clear FBTrace logs",owner:Firebug.Trace,onClick:Firebug.Trace.clear})
8224 },initialize:function(){Firebug.Panel.initialize.apply(this,arguments);
8225 this.clearButton.initialize()
8226 },shutdown:function(){this.clearButton.shutdown();
8227 Firebug.Panel.shutdown.apply(this,arguments)
8265 FBL.ns(function(){with(FBL){FirebugChrome.Skin={CSS:'.obscured{left:-999999px !important;}.collapsed{display:none;}[collapsed="true"]{display:none;}#fbCSS{padding:0 !important;}.cssPropDisable{float:left;display:block;width:2em;cursor:default;}.infoTip{z-index:2147483647;position:fixed;padding:2px 3px;border:1px solid #CBE087;background:LightYellow;font-family:Monaco,monospace;color:#000000;display:none;white-space:nowrap;pointer-events:none;}.infoTip[active="true"]{display:block;}.infoTipLoading{width:16px;height:16px;background:url(https://getfirebug.com/releases/lite/latest/skin/xp/chrome://firebug/skin/loading_16.gif) no-repeat;}.infoTipImageBox{font-size:11px;min-width:100px;text-align:center;}.infoTipCaption{font-size:11px;font:Monaco,monospace;}.infoTipLoading > .infoTipImage,.infoTipLoading > .infoTipCaption{display:none;}h1.groupHeader{padding:2px 4px;margin:0 0 4px 0;border-top:1px solid #CCCCCC;border-bottom:1px solid #CCCCCC;background:#eee url(https://getfirebug.com/releases/lite/latest/skin/xp/group.gif) repeat-x;font-size:11px;font-weight:bold;_position:relative;}.inlineEditor,.fixedWidthEditor{z-index:2147483647;position:absolute;display:none;}.inlineEditor{margin-left:-6px;margin-top:-3px;}.textEditorInner,.fixedWidthEditor{margin:0 0 0 0 !important;padding:0;border:none !important;font:inherit;text-decoration:inherit;background-color:#FFFFFF;}.fixedWidthEditor{border-top:1px solid #888888 !important;border-bottom:1px solid #888888 !important;}.textEditorInner{position:relative;top:-7px;left:-5px;outline:none;resize:none;}.textEditorInner1{padding-left:11px;background:url(https://getfirebug.com/releases/lite/latest/skin/xp/textEditorBorders.png) repeat-y;_background:url(https://getfirebug.com/releases/lite/latest/skin/xp/textEditorBorders.gif) repeat-y;_overflow:hidden;}.textEditorInner2{position:relative;padding-right:2px;background:url(https://getfirebug.com/releases/lite/latest/skin/xp/textEditorBorders.png) repeat-y 100% 0;_background:url(https://getfirebug.com/releases/lite/latest/skin/xp/textEditorBorders.gif) repeat-y 100% 0;_position:fixed;}.textEditorTop1{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/textEditorCorners.png) no-repeat 100% 0;margin-left:11px;height:10px;_background:url(https://getfirebug.com/releases/lite/latest/skin/xp/textEditorCorners.gif) no-repeat 100% 0;_overflow:hidden;}.textEditorTop2{position:relative;left:-11px;width:11px;height:10px;background:url(https://getfirebug.com/releases/lite/latest/skin/xp/textEditorCorners.png) no-repeat;_background:url(https://getfirebug.com/releases/lite/latest/skin/xp/textEditorCorners.gif) no-repeat;}.textEditorBottom1{position:relative;background:url(https://getfirebug.com/releases/lite/latest/skin/xp/textEditorCorners.png) no-repeat 100% 100%;margin-left:11px;height:12px;_background:url(https://getfirebug.com/releases/lite/latest/skin/xp/textEditorCorners.gif) no-repeat 100% 100%;}.textEditorBottom2{position:relative;left:-11px;width:11px;height:12px;background:url(https://getfirebug.com/releases/lite/latest/skin/xp/textEditorCorners.png) no-repeat 0 100%;_background:url(https://getfirebug.com/releases/lite/latest/skin/xp/textEditorCorners.gif) no-repeat 0 100%;}.panelNode-css{overflow-x:hidden;}.cssSheet > .insertBefore{height:1.5em;}.cssRule{position:relative;margin:0;padding:1em 0 0 6px;font-family:Monaco,monospace;color:#000000;}.cssRule:first-child{padding-top:6px;}.cssElementRuleContainer{position:relative;}.cssHead{padding-right:150px;}.cssProp{}.cssPropName{color:DarkGreen;}.cssPropValue{margin-left:8px;color:DarkBlue;}.cssOverridden span{text-decoration:line-through;}.cssInheritedRule{}.cssInheritLabel{margin-right:0.5em;font-weight:bold;}.cssRule .objectLink-sourceLink{top:0;}.cssProp.editGroup:hover{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/disable.png) no-repeat 2px 1px;_background:url(https://getfirebug.com/releases/lite/latest/skin/xp/disable.gif) no-repeat 2px 1px;}.cssProp.editGroup.editing{background:none;}.cssProp.disabledStyle{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/disableHover.png) no-repeat 2px 1px;_background:url(https://getfirebug.com/releases/lite/latest/skin/xp/disableHover.gif) no-repeat 2px 1px;opacity:1;color:#CCCCCC;}.disabledStyle .cssPropName,.disabledStyle .cssPropValue{color:#CCCCCC;}.cssPropValue.editing + .cssSemi,.inlineExpander + .cssSemi{display:none;}.cssPropValue.editing{white-space:nowrap;}.stylePropName{font-weight:bold;padding:0 4px 4px 4px;width:50%;}.stylePropValue{width:50%;}.panelNode-net{overflow-x:hidden;}.netTable{width:100%;}.hideCategory-undefined .category-undefined,.hideCategory-html .category-html,.hideCategory-css .category-css,.hideCategory-js .category-js,.hideCategory-image .category-image,.hideCategory-xhr .category-xhr,.hideCategory-flash .category-flash,.hideCategory-txt .category-txt,.hideCategory-bin .category-bin{display:none;}.netHeadRow{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/chrome://firebug/skin/group.gif) repeat-x #FFFFFF;}.netHeadCol{border-bottom:1px solid #CCCCCC;padding:2px 4px 2px 18px;font-weight:bold;}.netHeadLabel{white-space:nowrap;overflow:hidden;}.netHeaderRow{height:16px;}.netHeaderCell{cursor:pointer;-moz-user-select:none;border-bottom:1px solid #9C9C9C;padding:0 !important;font-weight:bold;background:#BBBBBB url(https://getfirebug.com/releases/lite/latest/skin/xp/chrome://firebug/skin/tableHeader.gif) repeat-x;white-space:nowrap;}.netHeaderRow > .netHeaderCell:first-child > .netHeaderCellBox{padding:2px 14px 2px 18px;}.netHeaderCellBox{padding:2px 14px 2px 10px;border-left:1px solid #D9D9D9;border-right:1px solid #9C9C9C;}.netHeaderCell:hover:active{background:#959595 url(https://getfirebug.com/releases/lite/latest/skin/xp/chrome://firebug/skin/tableHeaderActive.gif) repeat-x;}.netHeaderSorted{background:#7D93B2 url(https://getfirebug.com/releases/lite/latest/skin/xp/chrome://firebug/skin/tableHeaderSorted.gif) repeat-x;}.netHeaderSorted > .netHeaderCellBox{border-right-color:#6B7C93;background:url(https://getfirebug.com/releases/lite/latest/skin/xp/chrome://firebug/skin/arrowDown.png) no-repeat right;}.netHeaderSorted.sortedAscending > .netHeaderCellBox{background-image:url(https://getfirebug.com/releases/lite/latest/skin/xp/chrome://firebug/skin/arrowUp.png);}.netHeaderSorted:hover:active{background:#536B90 url(https://getfirebug.com/releases/lite/latest/skin/xp/chrome://firebug/skin/tableHeaderSortedActive.gif) repeat-x;}.panelNode-net .netRowHeader{display:block;}.netRowHeader{cursor:pointer;display:none;height:15px;margin-right:0 !important;}.netRow .netRowHeader{background-position:5px 1px;}.netRow[breakpoint="true"] .netRowHeader{background-image:url(https://getfirebug.com/releases/lite/latest/skin/xp/chrome://firebug/skin/breakpoint.png);}.netRow[breakpoint="true"][disabledBreakpoint="true"] .netRowHeader{background-image:url(https://getfirebug.com/releases/lite/latest/skin/xp/chrome://firebug/skin/breakpointDisabled.png);}.netRow.category-xhr:hover .netRowHeader{background-color:#F6F6F6;}#netBreakpointBar{max-width:38px;}#netHrefCol > .netHeaderCellBox{border-left:0px;}.netRow .netRowHeader{width:3px;}.netInfoRow .netRowHeader{display:table-cell;}.netTable[hiddenCols~=netHrefCol] TD[id="netHrefCol"],.netTable[hiddenCols~=netHrefCol] TD.netHrefCol,.netTable[hiddenCols~=netStatusCol] TD[id="netStatusCol"],.netTable[hiddenCols~=netStatusCol] TD.netStatusCol,.netTable[hiddenCols~=netDomainCol] TD[id="netDomainCol"],.netTable[hiddenCols~=netDomainCol] TD.netDomainCol,.netTable[hiddenCols~=netSizeCol] TD[id="netSizeCol"],.netTable[hiddenCols~=netSizeCol] TD.netSizeCol,.netTable[hiddenCols~=netTimeCol] TD[id="netTimeCol"],.netTable[hiddenCols~=netTimeCol] TD.netTimeCol{display:none;}.netRow{background:LightYellow;}.netRow.loaded{background:#FFFFFF;}.netRow.loaded:hover{background:#EFEFEF;}.netCol{padding:0;vertical-align:top;border-bottom:1px solid #EFEFEF;white-space:nowrap;height:17px;}.netLabel{width:100%;}.netStatusCol{padding-left:10px;color:rgb(128,128,128);}.responseError > .netStatusCol{color:red;}.netDomainCol{padding-left:5px;}.netSizeCol{text-align:right;padding-right:10px;}.netHrefLabel{-moz-box-sizing:padding-box;overflow:hidden;z-index:10;position:absolute;padding-left:18px;padding-top:1px;max-width:15%;font-weight:bold;}.netFullHrefLabel{display:none;-moz-user-select:none;padding-right:10px;padding-bottom:3px;max-width:100%;background:#FFFFFF;z-index:200;}.netHrefCol:hover > .netFullHrefLabel{display:block;}.netRow.loaded:hover .netCol > .netFullHrefLabel{background-color:#EFEFEF;}.useA11y .a11yShowFullLabel{display:block;background-image:none !important;border:1px solid #CBE087;background-color:LightYellow;font-family:Monaco,monospace;color:#000000;font-size:10px;z-index:2147483647;}.netSizeLabel{padding-left:6px;}.netStatusLabel,.netDomainLabel,.netSizeLabel,.netBar{padding:1px 0 2px 0 !important;}.responseError{color:red;}.hasHeaders .netHrefLabel:hover{cursor:pointer;color:blue;text-decoration:underline;}.netLoadingIcon{position:absolute;border:0;margin-left:14px;width:16px;height:16px;background:transparent no-repeat 0 0;background-image:url(https://getfirebug.com/releases/lite/latest/skin/xp/chrome://firebug/skin/loading_16.gif);display:inline-block;}.loaded .netLoadingIcon{display:none;}.netBar,.netSummaryBar{position:relative;border-right:50px solid transparent;}.netResolvingBar{position:absolute;left:0;top:0;bottom:0;background:#FFFFFF url(https://getfirebug.com/releases/lite/latest/skin/xp/chrome://firebug/skin/netBarResolving.gif) repeat-x;z-index:60;}.netConnectingBar{position:absolute;left:0;top:0;bottom:0;background:#FFFFFF url(https://getfirebug.com/releases/lite/latest/skin/xp/chrome://firebug/skin/netBarConnecting.gif) repeat-x;z-index:50;}.netBlockingBar{position:absolute;left:0;top:0;bottom:0;background:#FFFFFF url(https://getfirebug.com/releases/lite/latest/skin/xp/chrome://firebug/skin/netBarWaiting.gif) repeat-x;z-index:40;}.netSendingBar{position:absolute;left:0;top:0;bottom:0;background:#FFFFFF url(https://getfirebug.com/releases/lite/latest/skin/xp/chrome://firebug/skin/netBarSending.gif) repeat-x;z-index:30;}.netWaitingBar{position:absolute;left:0;top:0;bottom:0;background:#FFFFFF url(https://getfirebug.com/releases/lite/latest/skin/xp/chrome://firebug/skin/netBarResponded.gif) repeat-x;z-index:20;min-width:1px;}.netReceivingBar{position:absolute;left:0;top:0;bottom:0;background:#38D63B url(https://getfirebug.com/releases/lite/latest/skin/xp/chrome://firebug/skin/netBarLoading.gif) repeat-x;z-index:10;}.netWindowLoadBar,.netContentLoadBar{position:absolute;left:0;top:0;bottom:0;width:1px;background-color:red;z-index:70;opacity:0.5;display:none;margin-bottom:-1px;}.netContentLoadBar{background-color:Blue;}.netTimeLabel{-moz-box-sizing:padding-box;position:absolute;top:1px;left:100%;padding-left:6px;color:#444444;min-width:16px;}.loaded .netReceivingBar,.loaded.netReceivingBar{background:#B6B6B6 url(https://getfirebug.com/releases/lite/latest/skin/xp/chrome://firebug/skin/netBarLoaded.gif) repeat-x;border-color:#B6B6B6;}.fromCache .netReceivingBar,.fromCache.netReceivingBar{background:#D6D6D6 url(https://getfirebug.com/releases/lite/latest/skin/xp/chrome://firebug/skin/netBarCached.gif) repeat-x;border-color:#D6D6D6;}.netSummaryRow .netTimeLabel,.loaded .netTimeLabel{background:transparent;}.timeInfoTip{width:150px; height:40px}.timeInfoTipBar,.timeInfoTipEventBar{position:relative;display:block;margin:0;opacity:1;height:15px;width:4px;}.timeInfoTipEventBar{width:1px !important;}.timeInfoTipCell.startTime{padding-right:8px;}.timeInfoTipCell.elapsedTime{text-align:right;padding-right:8px;}.sizeInfoLabelCol{font-weight:bold;padding-right:10px;font-family:Lucida Grande,Tahoma,sans-serif;font-size:11px;}.sizeInfoSizeCol{font-weight:bold;}.sizeInfoDetailCol{color:gray;text-align:right;}.sizeInfoDescCol{font-style:italic;}.netSummaryRow .netReceivingBar{background:#BBBBBB;border:none;}.netSummaryLabel{color:#222222;}.netSummaryRow{background:#BBBBBB !important;font-weight:bold;}.netSummaryRow .netBar{border-right-color:#BBBBBB;}.netSummaryRow > .netCol{border-top:1px solid #999999;border-bottom:2px solid;-moz-border-bottom-colors:#EFEFEF #999999;padding-top:1px;padding-bottom:2px;}.netSummaryRow > .netHrefCol:hover{background:transparent !important;}.netCountLabel{padding-left:18px;}.netTotalSizeCol{text-align:right;padding-right:10px;}.netTotalTimeCol{text-align:right;}.netCacheSizeLabel{position:absolute;z-index:1000;left:0;top:0;}.netLimitRow{background:rgb(255,255,225) !important;font-weight:normal;color:black;font-weight:normal;}.netLimitLabel{padding-left:18px;}.netLimitRow > .netCol{border-bottom:2px solid;-moz-border-bottom-colors:#EFEFEF #999999;vertical-align:middle !important;padding-top:2px;padding-bottom:2px;}.netLimitButton{font-size:11px;padding-top:1px;padding-bottom:1px;}.netInfoCol{border-top:1px solid #EEEEEE;background:url(https://getfirebug.com/releases/lite/latest/skin/xp/chrome://firebug/skin/group.gif) repeat-x #FFFFFF;}.netInfoBody{margin:10px 0 4px 10px;}.netInfoTabs{position:relative;padding-left:17px;}.netInfoTab{position:relative;top:-3px;margin-top:10px;padding:4px 6px;border:1px solid transparent;border-bottom:none;_border:none;font-weight:bold;color:#565656;cursor:pointer;}.netInfoTabSelected{cursor:default !important;border:1px solid #D7D7D7 !important;border-bottom:none !important;-moz-border-radius:4px 4px 0 0;-webkit-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0;background-color:#FFFFFF;}.logRow-netInfo.error .netInfoTitle{color:red;}.logRow-netInfo.loading .netInfoResponseText{font-style:italic;color:#888888;}.loading .netInfoResponseHeadersTitle{display:none;}.netInfoResponseSizeLimit{font-family:Lucida Grande,Tahoma,sans-serif;padding-top:10px;font-size:11px;}.netInfoText{display:none;margin:0;border:1px solid #D7D7D7;border-right:none;padding:8px;background-color:#FFFFFF;font-family:Monaco,monospace;white-space:pre-wrap;}.netInfoTextSelected{display:block;}.netInfoParamName{padding-right:10px;font-family:Lucida Grande,Tahoma,sans-serif;font-weight:bold;vertical-align:top;text-align:right;white-space:nowrap;}.netInfoPostText .netInfoParamName{width:1px;}.netInfoParamValue{width:100%;}.netInfoHeadersText,.netInfoPostText,.netInfoPutText{padding-top:0;}.netInfoHeadersGroup,.netInfoPostParams,.netInfoPostSource{margin-bottom:4px;border-bottom:1px solid #D7D7D7;padding-top:8px;padding-bottom:2px;font-family:Lucida Grande,Tahoma,sans-serif;font-weight:bold;color:#565656;}.netInfoPostParamsTable,.netInfoPostPartsTable,.netInfoPostJSONTable,.netInfoPostXMLTable,.netInfoPostSourceTable{margin-bottom:10px;width:100%;}.netInfoPostContentType{color:#bdbdbd;padding-left:50px;font-weight:normal;}.netInfoHtmlPreview{border:0;width:100%;height:100%;}.netHeadersViewSource{color:#bdbdbd;margin-left:200px;font-weight:normal;}.netHeadersViewSource:hover{color:blue;cursor:pointer;}.netActivationRow,.netPageSeparatorRow{background:rgb(229,229,229) !important;font-weight:normal;color:black;}.netActivationLabel{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/chrome://firebug/skin/infoIcon.png) no-repeat 3px 2px;padding-left:22px;}.netPageSeparatorRow{height:5px !important;}.netPageSeparatorLabel{padding-left:22px;height:5px !important;}.netPageRow{background-color:rgb(255,255,255);}.netPageRow:hover{background:#EFEFEF;}.netPageLabel{padding:1px 0 2px 18px !important;font-weight:bold;}.netActivationRow > .netCol{border-bottom:2px solid;-moz-border-bottom-colors:#EFEFEF #999999;padding-top:2px;padding-bottom:3px;}.twisty,.logRow-errorMessage > .hasTwisty > .errorTitle,.logRow-log > .objectBox-array.hasTwisty,.logRow-spy .spyHead .spyTitle,.logGroup > .logRow,.memberRow.hasChildren > .memberLabelCell > .memberLabel,.hasHeaders .netHrefLabel,.netPageRow > .netCol > .netPageTitle{background-image:url(https://getfirebug.com/releases/lite/latest/skin/xp/tree_open.gif);background-repeat:no-repeat;background-position:2px 2px;min-height:12px;}.logRow-errorMessage > .hasTwisty.opened > .errorTitle,.logRow-log > .objectBox-array.hasTwisty.opened,.logRow-spy.opened .spyHead .spyTitle,.logGroup.opened > .logRow,.memberRow.hasChildren.opened > .memberLabelCell > .memberLabel,.nodeBox.highlightOpen > .nodeLabel > .twisty,.nodeBox.open > .nodeLabel > .twisty,.netRow.opened > .netCol > .netHrefLabel,.netPageRow.opened > .netCol > .netPageTitle{background-image:url(https://getfirebug.com/releases/lite/latest/skin/xp/tree_close.gif);}.twisty{background-position:4px 4px;}* html .logRow-spy .spyHead .spyTitle,* html .logGroup .logGroupLabel,* html .hasChildren .memberLabelCell .memberLabel,* html .hasHeaders .netHrefLabel{background-image:url(https://getfirebug.com/releases/lite/latest/skin/xp/tree_open.gif);background-repeat:no-repeat;background-position:2px 2px;}* html .opened .spyHead .spyTitle,* html .opened .logGroupLabel,* html .opened .memberLabelCell .memberLabel{background-image:url(https://getfirebug.com/releases/lite/latest/skin/xp/tree_close.gif);background-repeat:no-repeat;background-position:2px 2px;}.panelNode-console{overflow-x:hidden;}.objectLink{text-decoration:none;}.objectLink:hover{cursor:pointer;text-decoration:underline;}.logRow{position:relative;margin:0;border-bottom:1px solid #D7D7D7;padding:2px 4px 1px 6px;background-color:#FFFFFF;overflow:hidden !important;}.useA11y .logRow:focus{border-bottom:1px solid #000000 !important;outline:none !important;background-color:#FFFFAD !important;}.useA11y .logRow:focus a.objectLink-sourceLink{background-color:#FFFFAD;}.useA11y .a11yFocus:focus,.useA11y .objectBox:focus{outline:2px solid #FF9933;background-color:#FFFFAD;}.useA11y .objectBox-null:focus,.useA11y .objectBox-undefined:focus{background-color:#888888 !important;}.useA11y .logGroup.opened > .logRow{border-bottom:1px solid #ffffff;}.logGroup{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/group.gif) repeat-x #FFFFFF;padding:0 !important;border:none !important;}.logGroupBody{display:none;margin-left:16px;border-left:1px solid #D7D7D7;border-top:1px solid #D7D7D7;background:#FFFFFF;}.logGroup > .logRow{background-color:transparent !important;font-weight:bold;}.logGroup.opened > .logRow{border-bottom:none;}.logGroup.opened > .logGroupBody{display:block;}.logRow-command > .objectBox-text{font-family:Monaco,monospace;color:#0000FF;white-space:pre-wrap;}.logRow-info,.logRow-warn,.logRow-error,.logRow-assert,.logRow-warningMessage,.logRow-errorMessage{padding-left:22px;background-repeat:no-repeat;background-position:4px 2px;}.logRow-assert,.logRow-warningMessage,.logRow-errorMessage{padding-top:0;padding-bottom:0;}.logRow-info,.logRow-info .objectLink-sourceLink{background-color:#FFFFFF;}.logRow-warn,.logRow-warningMessage,.logRow-warn .objectLink-sourceLink,.logRow-warningMessage .objectLink-sourceLink{background-color:cyan;}.logRow-error,.logRow-assert,.logRow-errorMessage,.logRow-error .objectLink-sourceLink,.logRow-errorMessage .objectLink-sourceLink{background-color:LightYellow;}.logRow-error,.logRow-assert,.logRow-errorMessage{color:#FF0000;}.logRow-info{}.logRow-warn,.logRow-warningMessage{}.logRow-error,.logRow-assert,.logRow-errorMessage{}.objectBox-string,.objectBox-text,.objectBox-number,.objectLink-element,.objectLink-textNode,.objectLink-function,.objectBox-stackTrace,.objectLink-profile{font-family:Monaco,monospace;}.objectBox-string,.objectBox-text,.objectLink-textNode{white-space:pre-wrap;}.objectBox-number,.objectLink-styleRule,.objectLink-element,.objectLink-textNode{color:#000088;}.objectBox-string{color:#FF0000;}.objectLink-function,.objectBox-stackTrace,.objectLink-profile{color:DarkGreen;}.objectBox-null,.objectBox-undefined{padding:0 2px;border:1px solid #666666;background-color:#888888;color:#FFFFFF;}.objectBox-exception{padding:0 2px 0 18px;color:red;}.objectLink-sourceLink{position:absolute;right:4px;top:2px;padding-left:8px;font-family:Lucida Grande,sans-serif;font-weight:bold;color:#0000FF;}.errorTitle{margin-top:0px;margin-bottom:1px;padding-top:2px;padding-bottom:2px;}.errorTrace{margin-left:17px;}.errorSourceBox{margin:2px 0;}.errorSource-none{display:none;}.errorSource-syntax > .errorBreak{visibility:hidden;}.errorSource{cursor:pointer;font-family:Monaco,monospace;color:DarkGreen;}.errorSource:hover{text-decoration:underline;}.errorBreak{cursor:pointer;display:none;margin:0 6px 0 0;width:13px;height:14px;vertical-align:bottom;opacity:0.1;}.hasBreakSwitch .errorBreak{display:inline;}.breakForError .errorBreak{opacity:1;}.assertDescription{margin:0;}.logRow-profile > .logRow > .objectBox-text{font-family:Lucida Grande,Tahoma,sans-serif;color:#000000;}.logRow-profile > .logRow > .objectBox-text:last-child{color:#555555;font-style:italic;}.logRow-profile.opened > .logRow{padding-bottom:4px;}.profilerRunning > .logRow{padding-left:22px !important;}.profileSizer{width:100%;overflow-x:auto;overflow-y:scroll;}.profileTable{border-bottom:1px solid #D7D7D7;padding:0 0 4px 0;}.profileTable tr[odd="1"]{background-color:#F5F5F5;vertical-align:middle;}.profileTable a{vertical-align:middle;}.profileTable td{padding:1px 4px 0 4px;}.headerCell{cursor:pointer;-moz-user-select:none;border-bottom:1px solid #9C9C9C;padding:0 !important;font-weight:bold;}.headerCellBox{padding:2px 4px;border-left:1px solid #D9D9D9;border-right:1px solid #9C9C9C;}.headerCell:hover:active{}.headerSorted{}.headerSorted > .headerCellBox{border-right-color:#6B7C93;}.headerSorted.sortedAscending > .headerCellBox{}.headerSorted:hover:active{}.linkCell{text-align:right;}.linkCell > .objectLink-sourceLink{position:static;}.logRow-stackTrace{padding-top:0;background:#f8f8f8;}.logRow-stackTrace > .objectBox-stackFrame{position:relative;padding-top:2px;}.objectLink-object{font-family:Lucida Grande,sans-serif;font-weight:bold;color:DarkGreen;white-space:pre-wrap;}.objectProp-object{color:DarkGreen;}.objectProps{color:#000;font-weight:normal;}.objectPropName{color:#777;}.objectProps .objectProp-string{color:#f55;}.objectProps .objectProp-number{color:#55a;}.objectProps .objectProp-object{color:#585;}.selectorTag,.selectorId,.selectorClass{font-family:Monaco,monospace;font-weight:normal;}.selectorTag{color:#0000FF;}.selectorId{color:DarkBlue;}.selectorClass{color:red;}.selectorHidden > .selectorTag{color:#5F82D9;}.selectorHidden > .selectorId{color:#888888;}.selectorHidden > .selectorClass{color:#D86060;}.selectorValue{font-family:Lucida Grande,sans-serif;font-style:italic;color:#555555;}.panelNode.searching .logRow{display:none;}.logRow.matched{display:block !important;}.logRow.matching{position:absolute;left:-1000px;top:-1000px;max-width:0;max-height:0;overflow:hidden;}.objectLeftBrace,.objectRightBrace,.objectEqual,.objectComma,.arrayLeftBracket,.arrayRightBracket,.arrayComma{font-family:Monaco,monospace;}.objectLeftBrace,.objectRightBrace,.arrayLeftBracket,.arrayRightBracket{font-weight:bold;}.objectLeftBrace,.arrayLeftBracket{margin-right:4px;}.objectRightBrace,.arrayRightBracket{margin-left:4px;}.logRow-dir{padding:0;}.logRow-errorMessage .hasTwisty .errorTitle,.logRow-spy .spyHead .spyTitle,.logGroup .logRow{cursor:pointer;padding-left:18px;background-repeat:no-repeat;background-position:3px 3px;}.logRow-errorMessage > .hasTwisty > .errorTitle{background-position:2px 3px;}.logRow-errorMessage > .hasTwisty > .errorTitle:hover,.logRow-spy .spyHead .spyTitle:hover,.logGroup > .logRow:hover{text-decoration:underline;}.logRow-spy{padding:0 !important;}.logRow-spy,.logRow-spy .objectLink-sourceLink{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/group.gif) repeat-x #FFFFFF;padding-right:4px;right:0;}.logRow-spy.opened{padding-bottom:4px;border-bottom:none;}.spyTitle{color:#000000;font-weight:bold;-moz-box-sizing:padding-box;overflow:hidden;z-index:100;padding-left:18px;}.spyCol{padding:0;white-space:nowrap;height:16px;}.spyTitleCol:hover > .objectLink-sourceLink,.spyTitleCol:hover > .spyTime,.spyTitleCol:hover > .spyStatus,.spyTitleCol:hover > .spyTitle{display:none;}.spyFullTitle{display:none;-moz-user-select:none;max-width:100%;background-color:Transparent;}.spyTitleCol:hover > .spyFullTitle{display:block;}.spyStatus{padding-left:10px;color:rgb(128,128,128);}.spyTime{margin-left:4px;margin-right:4px;color:rgb(128,128,128);}.spyIcon{margin-right:4px;margin-left:4px;width:16px;height:16px;vertical-align:middle;background:transparent no-repeat 0 0;display:none;}.loading .spyHead .spyRow .spyIcon{background-image:url(https://getfirebug.com/releases/lite/latest/skin/xp/loading_16.gif);display:block;}.logRow-spy.loaded:not(.error) .spyHead .spyRow .spyIcon{width:0;margin:0;}.logRow-spy.error .spyHead .spyRow .spyIcon{background-image:url(https://getfirebug.com/releases/lite/latest/skin/xp/errorIcon-sm.png);display:block;background-position:2px 2px;}.logRow-spy .spyHead .netInfoBody{display:none;}.logRow-spy.opened .spyHead .netInfoBody{margin-top:10px;display:block;}.logRow-spy.error .spyTitle,.logRow-spy.error .spyStatus,.logRow-spy.error .spyTime{color:red;}.logRow-spy.loading .spyResponseText{font-style:italic;color:#888888;}.caption{font-family:Lucida Grande,Tahoma,sans-serif;font-weight:bold;color:#444444;}.warning{padding:10px;font-family:Lucida Grande,Tahoma,sans-serif;font-weight:bold;color:#888888;}.panelNode-dom{overflow-x:hidden !important;}.domTable{font-size:1em;width:100%;table-layout:fixed;background:#fff;}.domTableIE{width:auto;}.memberLabelCell{padding:2px 0 2px 0;vertical-align:top;}.memberValueCell{padding:1px 0 1px 5px;display:block;overflow:hidden;}.memberLabel{display:block;cursor:default;-moz-user-select:none;overflow:hidden;padding-left:18px;background-color:#FFFFFF;text-decoration:none;}.memberRow.hasChildren .memberLabelCell .memberLabel:hover{cursor:pointer;color:blue;text-decoration:underline;}.userLabel{color:#000000;font-weight:bold;}.userClassLabel{color:#E90000;font-weight:bold;}.userFunctionLabel{color:#025E2A;font-weight:bold;}.domLabel{color:#000000;}.domFunctionLabel{color:#025E2A;}.ordinalLabel{color:SlateBlue;font-weight:bold;}.scopesRow{padding:2px 18px;background-color:LightYellow;border-bottom:5px solid #BEBEBE;color:#666666;}.scopesLabel{background-color:LightYellow;}.watchEditCell{padding:2px 18px;background-color:LightYellow;border-bottom:1px solid #BEBEBE;color:#666666;}.editor-watchNewRow,.editor-memberRow{font-family:Monaco,monospace !important;}.editor-memberRow{padding:1px 0 !important;}.editor-watchRow{padding-bottom:0 !important;}.watchRow > .memberLabelCell{font-family:Monaco,monospace;padding-top:1px;padding-bottom:1px;}.watchRow > .memberLabelCell > .memberLabel{background-color:transparent;}.watchRow > .memberValueCell{padding-top:2px;padding-bottom:2px;}.watchRow > .memberLabelCell,.watchRow > .memberValueCell{background-color:#F5F5F5;border-bottom:1px solid #BEBEBE;}.watchToolbox{z-index:2147483647;position:absolute;right:0;padding:1px 2px;}#fbConsole{overflow-x:hidden !important;}#fbCSS{font:1em Monaco,monospace;padding:0 7px;}#fbstylesheetButtons select,#fbScriptButtons select{font:11px Lucida Grande,Tahoma,sans-serif;margin-top:1px;padding-left:3px;background:#fafafa;border:1px inset #fff;width:220px;outline:none;}.Selector{margin-top:10px}.CSSItem{margin-left:4%}.CSSText{padding-left:20px;}.CSSProperty{color:#005500;}.CSSValue{padding-left:5px; color:#000088;}#fbHTMLStatusBar{display:inline;}.fbToolbarButtons{display:none;}.fbStatusSeparator{display:block;float:left;padding-top:4px;}#fbStatusBarBox{display:none;}#fbToolbarContent{display:block;position:absolute;_position:absolute;top:0;padding-top:4px;height:23px;clip:rect(0,2048px,27px,0);}.fbTabMenuTarget{display:none !important;float:left;width:10px;height:10px;margin-top:6px;background:url(https://getfirebug.com/releases/lite/latest/skin/xp/tabMenuTarget.png);}.fbTabMenuTarget:hover{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/tabMenuTargetHover.png);}.fbShadow{float:left;background:url(https://getfirebug.com/releases/lite/latest/skin/xp/shadowAlpha.png) no-repeat bottom right !important;background:url(https://getfirebug.com/releases/lite/latest/skin/xp/shadow2.gif) no-repeat bottom right;margin:10px 0 0 10px !important;margin:10px 0 0 5px;}.fbShadowContent{display:block;position:relative;background-color:#fff;border:1px solid #a9a9a9;top:-6px;left:-6px;}.fbMenu{display:none;position:absolute;font-size:11px;line-height:13px;z-index:2147483647;}.fbMenuContent{padding:2px;}.fbMenuSeparator{display:block;position:relative;padding:1px 18px 0;text-decoration:none;color:#000;cursor:default;background:#ACA899;margin:4px 0;}.fbMenuOption{display:block;position:relative;padding:2px 18px;text-decoration:none;color:#000;cursor:default;}.fbMenuOption:hover{color:#fff;background:#316AC5;}.fbMenuGroup{background:transparent url(https://getfirebug.com/releases/lite/latest/skin/xp/tabMenuPin.png) no-repeat right 0;}.fbMenuGroup:hover{background:#316AC5 url(https://getfirebug.com/releases/lite/latest/skin/xp/tabMenuPin.png) no-repeat right -17px;}.fbMenuGroupSelected{color:#fff;background:#316AC5 url(https://getfirebug.com/releases/lite/latest/skin/xp/tabMenuPin.png) no-repeat right -17px;}.fbMenuChecked{background:transparent url(https://getfirebug.com/releases/lite/latest/skin/xp/tabMenuCheckbox.png) no-repeat 4px 0;}.fbMenuChecked:hover{background:#316AC5 url(https://getfirebug.com/releases/lite/latest/skin/xp/tabMenuCheckbox.png) no-repeat 4px -17px;}.fbMenuRadioSelected{background:transparent url(https://getfirebug.com/releases/lite/latest/skin/xp/tabMenuRadio.png) no-repeat 4px 0;}.fbMenuRadioSelected:hover{background:#316AC5 url(https://getfirebug.com/releases/lite/latest/skin/xp/tabMenuRadio.png) no-repeat 4px -17px;}.fbMenuShortcut{padding-right:85px;}.fbMenuShortcutKey{position:absolute;right:0;top:2px;width:77px;}#fbFirebugMenu{top:22px;left:0;}.fbMenuDisabled{color:#ACA899 !important;}#fbFirebugSettingsMenu{left:245px;top:99px;}#fbConsoleMenu{top:42px;left:48px;}.fbIconButton{display:block;}.fbIconButton{display:block;}.fbIconButton{display:block;float:left;height:20px;width:20px;color:#000;margin-right:2px;text-decoration:none;cursor:default;}.fbIconButton:hover{position:relative;top:-1px;left:-1px;margin-right:0;_margin-right:1px;color:#333;border:1px solid #fff;border-bottom:1px solid #bbb;border-right:1px solid #bbb;}.fbIconPressed{position:relative;margin-right:0;_margin-right:1px;top:0 !important;left:0 !important;height:19px;color:#333 !important;border:1px solid #bbb !important;border-bottom:1px solid #cfcfcf !important;border-right:1px solid #ddd !important;}#fbErrorPopup{position:absolute;right:0;bottom:0;height:19px;width:75px;background:url(https://getfirebug.com/releases/lite/latest/skin/xp/sprite.png) #f1f2ee 0 0;z-index:999;}#fbErrorPopupContent{position:absolute;right:0;top:1px;height:18px;width:75px;_width:74px;border-left:1px solid #aca899;}#fbErrorIndicator{position:absolute;top:2px;right:5px;}.fbBtnInspectActive{background:#aaa;color:#fff !important;}.fbBody{margin:0;padding:0;overflow:hidden;font-family:Lucida Grande,Tahoma,sans-serif;font-size:11px;background:#fff;}.clear{clear:both;}#fbMiniChrome{display:none;right:0;height:27px;background:url(https://getfirebug.com/releases/lite/latest/skin/xp/sprite.png) #f1f2ee 0 0;margin-left:1px;}#fbMiniContent{display:block;position:relative;left:-1px;right:0;top:1px;height:25px;border-left:1px solid #aca899;}#fbToolbarSearch{float:right;border:1px solid #ccc;margin:0 5px 0 0;background:#fff url(https://getfirebug.com/releases/lite/latest/skin/xp/search.png) no-repeat 4px 2px !important;background:#fff url(https://getfirebug.com/releases/lite/latest/skin/xp/search.gif) no-repeat 4px 2px;padding-left:20px;font-size:11px;}#fbToolbarErrors{float:right;margin:1px 4px 0 0;font-size:11px;}#fbLeftToolbarErrors{float:left;margin:7px 0px 0 5px;font-size:11px;}.fbErrors{padding-left:20px;height:14px;background:url(https://getfirebug.com/releases/lite/latest/skin/xp/errorIcon.png) no-repeat !important;background:url(https://getfirebug.com/releases/lite/latest/skin/xp/errorIcon.gif) no-repeat;color:#f00;font-weight:bold;}#fbMiniErrors{display:inline;display:none;float:right;margin:5px 2px 0 5px;}#fbMiniIcon{float:right;margin:3px 4px 0;height:20px;width:20px;float:right;background:url(https://getfirebug.com/releases/lite/latest/skin/xp/sprite.png) 0 -135px;cursor:pointer;}#fbChrome{font-family:Lucida Grande,Tahoma,sans-serif;font-size:11px;position:absolute;_position:static;top:0;left:0;height:100%;width:100%;border-collapse:collapse;border-spacing:0;background:#fff;overflow:hidden;}#fbChrome > tbody > tr > td{padding:0;}#fbTop{height:49px;}#fbToolbar{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/sprite.png) #f1f2ee 0 0;height:27px;font-size:11px;line-height:13px;}#fbPanelBarBox{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/sprite.png) #dbd9c9 0 -27px;height:22px;}#fbContent{height:100%;vertical-align:top;}#fbBottom{height:18px;background:#fff;}#fbToolbarIcon{float:left;padding:0 5px 0;}#fbToolbarIcon a{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/sprite.png) 0 -135px;}#fbToolbarButtons{padding:0 2px 0 5px;}#fbToolbarButtons{padding:0 2px 0 5px;}.fbButton{text-decoration:none;display:block;float:left;color:#000;padding:4px 6px 4px 7px;cursor:default;}.fbButton:hover{color:#333;background:#f5f5ef url(https://getfirebug.com/releases/lite/latest/skin/xp/buttonBg.png);padding:3px 5px 3px 6px;border:1px solid #fff;border-bottom:1px solid #bbb;border-right:1px solid #bbb;}.fbBtnPressed{background:#e3e3db url(https://getfirebug.com/releases/lite/latest/skin/xp/buttonBgHover.png) !important;padding:3px 4px 2px 6px !important;margin:1px 0 0 1px !important;border:1px solid #ACA899 !important;border-color:#ACA899 #ECEBE3 #ECEBE3 #ACA899 !important;}#fbStatusBarBox{top:4px;cursor:default;}.fbToolbarSeparator{overflow:hidden;border:1px solid;border-color:transparent #fff transparent #777;_border-color:#eee #fff #eee #777;height:7px;margin:6px 3px;float:left;}.fbBtnSelected{font-weight:bold;}.fbStatusBar{color:#aca899;}.fbStatusBar a{text-decoration:none;color:black;}.fbStatusBar a:hover{color:blue;cursor:pointer;}#fbWindowButtons{position:absolute;white-space:nowrap;right:0;top:0;height:17px;width:48px;padding:5px;z-index:6;background:url(https://getfirebug.com/releases/lite/latest/skin/xp/sprite.png) #f1f2ee 0 0;}#fbPanelBar1{width:1024px; z-index:8;left:0;white-space:nowrap;background:url(https://getfirebug.com/releases/lite/latest/skin/xp/sprite.png) #dbd9c9 0 -27px;position:absolute;left:4px;}#fbPanelBar2Box{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/sprite.png) #dbd9c9 0 -27px;position:absolute;height:22px;width:300px; z-index:9;right:0;}#fbPanelBar2{position:absolute;width:290px; height:22px;padding-left:4px;}.fbPanel{display:none;}#fbPanelBox1,#fbPanelBox2{max-height:inherit;height:100%;font-size:1em;}#fbPanelBox2{background:#fff;}#fbPanelBox2{width:300px;background:#fff;}#fbPanel2{margin-left:6px;background:#fff;}#fbLargeCommandLine{display:none;position:absolute;z-index:9;top:27px;right:0;width:294px;height:201px;border-width:0;margin:0;padding:2px 0 0 2px;resize:none;outline:none;font-size:11px;overflow:auto;border-top:1px solid #B9B7AF;_right:-1px;_border-left:1px solid #fff;}#fbLargeCommandButtons{display:none;background:#ECE9D8;bottom:0;right:0;width:294px;height:21px;padding-top:1px;position:fixed;border-top:1px solid #ACA899;z-index:9;}#fbSmallCommandLineIcon{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/down.png) no-repeat;position:absolute;right:2px;bottom:3px;z-index:99;}#fbSmallCommandLineIcon:hover{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/downHover.png) no-repeat;}.hide{overflow:hidden !important;position:fixed !important;display:none !important;visibility:hidden !important;}#fbCommand{height:18px;}#fbCommandBox{position:fixed;_position:absolute;width:100%;height:18px;bottom:0;overflow:hidden;z-index:9;background:#fff;border:0;border-top:1px solid #ccc;}#fbCommandIcon{position:absolute;color:#00f;top:2px;left:6px;display:inline;font:11px Monaco,monospace;z-index:10;}#fbCommandLine{position:absolute;width:100%;top:0;left:0;border:0;margin:0;padding:2px 0 2px 32px;font:11px Monaco,monospace;z-index:9;outline:none;}#fbLargeCommandLineIcon{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/up.png) no-repeat;position:absolute;right:1px;bottom:1px;z-index:10;}#fbLargeCommandLineIcon:hover{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/upHover.png) no-repeat;}div.fbFitHeight{overflow:auto;position:relative;}.fbSmallButton{overflow:hidden;width:16px;height:16px;display:block;text-decoration:none;cursor:default;}#fbWindowButtons .fbSmallButton{float:right;}#fbWindow_btClose{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/min.png);}#fbWindow_btClose:hover{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/minHover.png);}#fbWindow_btDetach{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/detach.png);}#fbWindow_btDetach:hover{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/detachHover.png);}#fbWindow_btDeactivate{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/off.png);}#fbWindow_btDeactivate:hover{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/offHover.png);}.fbTab{text-decoration:none;display:none;float:left;width:auto;float:left;cursor:default;font-family:Lucida Grande,Tahoma,sans-serif;font-size:11px;line-height:13px;font-weight:bold;height:22px;color:#565656;}.fbPanelBar span{float:left;}.fbPanelBar .fbTabL,.fbPanelBar .fbTabR{height:22px;width:8px;}.fbPanelBar .fbTabText{padding:4px 1px 0;}a.fbTab:hover{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/sprite.png) 0 -73px;}a.fbTab:hover .fbTabL{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/sprite.png) -16px -96px;}a.fbTab:hover .fbTabR{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/sprite.png) -24px -96px;}.fbSelectedTab{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/sprite.png) #f1f2ee 0 -50px !important;color:#000;}.fbSelectedTab .fbTabL{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/sprite.png) 0 -96px !important;}.fbSelectedTab .fbTabR{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/sprite.png) -8px -96px !important;}#fbHSplitter{position:fixed;_position:absolute;left:0;top:0;width:100%;height:5px;overflow:hidden;cursor:n-resize !important;background:url(https://getfirebug.com/releases/lite/latest/skin/xp/pixel_transparent.gif);z-index:9;}#fbHSplitter.fbOnMovingHSplitter{height:100%;z-index:100;}.fbVSplitter{background:#ece9d8;color:#000;border:1px solid #716f64;border-width:0 1px;border-left-color:#aca899;width:4px;cursor:e-resize;overflow:hidden;right:294px;text-decoration:none;z-index:10;position:absolute;height:100%;top:27px;}div.lineNo{font:1em/1.4545em Monaco,monospace;position:relative;float:left;top:0;left:0;margin:0 5px 0 0;padding:0 5px 0 10px;background:#eee;color:#888;border-right:1px solid #ccc;text-align:right;}.sourceBox{position:absolute;}.sourceCode{font:1em Monaco,monospace;overflow:hidden;white-space:pre;display:inline;}.nodeControl{margin-top:3px;margin-left:-14px;float:left;width:9px;height:9px;overflow:hidden;cursor:default;background:url(https://getfirebug.com/releases/lite/latest/skin/xp/tree_open.gif);_float:none;_display:inline;_position:absolute;}div.nodeMaximized{background:url(https://getfirebug.com/releases/lite/latest/skin/xp/tree_close.gif);}div.objectBox-element{padding:1px 3px;}.objectBox-selector{cursor:default;}.selectedElement{background:highlight;color:#fff !important;}.selectedElement span{color:#fff !important;}* html .selectedElement{position:relative;}@media screen and (-webkit-min-device-pixel-ratio:0){.selectedElement{background:#316AC5;color:#fff !important;}}.logRow *{font-size:1em;}.logRow{position:relative;border-bottom:1px solid #D7D7D7;padding:2px 4px 1px 6px;zbackground-color:#FFFFFF;}.logRow-command{font-family:Monaco,monospace;color:blue;}.objectBox-string,.objectBox-text,.objectBox-number,.objectBox-function,.objectLink-element,.objectLink-textNode,.objectLink-function,.objectBox-stackTrace,.objectLink-profile{font-family:Monaco,monospace;}.objectBox-null{padding:0 2px;border:1px solid #666666;background-color:#888888;color:#FFFFFF;}.objectBox-string{color:red;}.objectBox-number{color:#000088;}.objectBox-function{color:DarkGreen;}.objectBox-object{color:DarkGreen;font-weight:bold;font-family:Lucida Grande,sans-serif;}.objectBox-array{color:#000;}.logRow-info,.logRow-error,.logRow-warn{background:#fff no-repeat 2px 2px;padding-left:20px;padding-bottom:3px;}.logRow-info{background-image:url(https://getfirebug.com/releases/lite/latest/skin/xp/infoIcon.png) !important;background-image:url(https://getfirebug.com/releases/lite/latest/skin/xp/infoIcon.gif);}.logRow-warn{background-color:cyan;background-image:url(https://getfirebug.com/releases/lite/latest/skin/xp/warningIcon.png) !important;background-image:url(https://getfirebug.com/releases/lite/latest/skin/xp/warningIcon.gif);}.logRow-error{background-color:LightYellow;background-image:url(https://getfirebug.com/releases/lite/latest/skin/xp/errorIcon.png) !important;background-image:url(https://getfirebug.com/releases/lite/latest/skin/xp/errorIcon.gif);color:#f00;}.errorMessage{vertical-align:top;color:#f00;}.objectBox-sourceLink{position:absolute;right:4px;top:2px;padding-left:8px;font-family:Lucida Grande,sans-serif;font-weight:bold;color:#0000FF;}.selectorTag,.selectorId,.selectorClass{font-family:Monaco,monospace;font-weight:normal;}.selectorTag{color:#0000FF;}.selectorId{color:DarkBlue;}.selectorClass{color:red;}.objectBox-element{font-family:Monaco,monospace;color:#000088;}.nodeChildren{padding-left:26px;}.nodeTag{color:blue;cursor:pointer;}.nodeValue{color:#FF0000;font-weight:normal;}.nodeText,.nodeComment{margin:0 2px;vertical-align:top;}.nodeText{color:#333333;font-family:Monaco,monospace;}.nodeComment{color:DarkGreen;}.nodeHidden,.nodeHidden *{color:#888888;}.nodeHidden .nodeTag{color:#5F82D9;}.nodeHidden .nodeValue{color:#D86060;}.selectedElement .nodeHidden,.selectedElement .nodeHidden *{color:SkyBlue !important;}.log-object{}.property{position:relative;clear:both;height:15px;}.propertyNameCell{vertical-align:top;float:left;width:28%;position:absolute;left:0;z-index:0;}.propertyValueCell{float:right;width:68%;background:#fff;position:absolute;padding-left:5px;display:table-cell;right:0;z-index:1;}.propertyName{font-weight:bold;}.FirebugPopup{height:100% !important;}.FirebugPopup #fbWindowButtons{display:none !important;}.FirebugPopup #fbHSplitter{display:none !important;}',HTML:'<table id="fbChrome" cellpadding="0" cellspacing="0" border="0"><tbody><tr><td id="fbTop" colspan="2"><div id="fbWindowButtons"><a id="fbWindow_btDeactivate" class="fbSmallButton fbHover" title="Deactivate Firebug for this web page">&nbsp;</a><a id="fbWindow_btDetach" class="fbSmallButton fbHover" title="Open Firebug in popup window">&nbsp;</a><a id="fbWindow_btClose" class="fbSmallButton fbHover" title="Minimize Firebug">&nbsp;</a></div><div id="fbToolbar"><div id="fbToolbarContent"><span id="fbToolbarIcon"><a id="fbFirebugButton" class="fbIconButton" class="fbHover" target="_blank">&nbsp;</a></span><span id="fbToolbarButtons"><span id="fbFixedButtons"><a id="fbChrome_btInspect" class="fbButton fbHover" title="Click an element in the page to inspect">Inspect</a></span><span id="fbConsoleButtons" class="fbToolbarButtons"><a id="fbConsole_btClear" class="fbButton fbHover" title="Clear the console">Clear</a></span></span><span id="fbStatusBarBox"><span class="fbToolbarSeparator"></span></span></div></div><div id="fbPanelBarBox"><div id="fbPanelBar1" class="fbPanelBar"><a id="fbConsoleTab" class="fbTab fbHover"><span class="fbTabL"></span><span class="fbTabText">Console</span><span class="fbTabMenuTarget"></span><span class="fbTabR"></span></a><a id="fbHTMLTab" class="fbTab fbHover"><span class="fbTabL"></span><span class="fbTabText">HTML</span><span class="fbTabR"></span></a><a class="fbTab fbHover"><span class="fbTabL"></span><span class="fbTabText">CSS</span><span class="fbTabR"></span></a><a class="fbTab fbHover"><span class="fbTabL"></span><span class="fbTabText">Script</span><span class="fbTabR"></span></a><a class="fbTab fbHover"><span class="fbTabL"></span><span class="fbTabText">DOM</span><span class="fbTabR"></span></a></div><div id="fbPanelBar2Box" class="hide"><div id="fbPanelBar2" class="fbPanelBar"></div></div></div><div id="fbHSplitter">&nbsp;</div></td></tr><tr id="fbContent"><td id="fbPanelBox1"><div id="fbPanel1" class="fbFitHeight"><div id="fbConsole" class="fbPanel"></div><div id="fbHTML" class="fbPanel"></div></div></td><td id="fbPanelBox2" class="hide"><div id="fbVSplitter" class="fbVSplitter">&nbsp;</div><div id="fbPanel2" class="fbFitHeight"><div id="fbHTML_Style" class="fbPanel"></div><div id="fbHTML_Layout" class="fbPanel"></div><div id="fbHTML_DOM" class="fbPanel"></div></div><textarea id="fbLargeCommandLine" class="fbFitHeight"></textarea><div id="fbLargeCommandButtons"><a id="fbCommand_btRun" class="fbButton fbHover">Run</a><a id="fbCommand_btClear" class="fbButton fbHover">Clear</a><a id="fbSmallCommandLineIcon" class="fbSmallButton fbHover"></a></div></td></tr><tr id="fbBottom" class="hide"><td id="fbCommand" colspan="2"><div id="fbCommandBox"><div id="fbCommandIcon">&gt;&gt;&gt;</div><input id="fbCommandLine" name="fbCommandLine" type="text"/><a id="fbLargeCommandLineIcon" class="fbSmallButton fbHover"></a></div></td></tr></tbody></table><span id="fbMiniChrome"><span id="fbMiniContent"><span id="fbMiniIcon" title="Open Firebug Lite"></span><span id="fbMiniErrors" class="fbErrors"></span></span></span>'}