/* See license.txt for terms of usage */ define("tabs/domTab",["domplate/domplate","domplate/tabView","core/lib","i18n!nls/domTab","domplate/toolbar","tabs/search","core/dragdrop","domplate/domTree","core/cookies","domplate/tableView","core/trace","json-query/JSONQuery"],function(Domplate,TabView,Lib,Strings,Toolbar,Search,DragDrop,DomTree,Cookies,TableView,Trace){with(Domplate){var jsonQueryOption="searchJsonQuery";function DomTab(){this.toolbar=new Toolbar,this.toolbar.addButtons(this.getToolbarButtons()),this.tableView=!1}return DomTab.prototype=domplate(TabView.Tab.prototype,{id:"DOM",label:Strings.domTabLabel,separator:DIV({"class":"separator"}),tabBodyTag:DIV({"class":"tab$tab.id\\Body tabBody",_repObject:"$tab"},DIV({"class":"domToolbar"}),DIV({"class":"domContent"})),domBox:TABLE({"class":"domBox",cellpadding:0,cellspacing:0},TBODY(TR(TD({"class":"content"},DIV({"class":"title"},"$title")),TD({"class":"splitter"}),TD({"class":"results"},DIV({"class":"resultsDefaultContent"},Strings.searchResultsDefaultText))))),queryResultsViewType:DIV({"class":"queryResultsViewType"},INPUT({"class":"type",type:"checkbox",onclick:"$onTableView"}),SPAN({"class":"label"},Strings.queryResultsTableView)),onUpdateBody:function(e,t){this.toolbar.render(Lib.$(t,"domToolbar"));if(!Lib.supportsSelectElementText){var n=Lib.getElementByClass(t,"searchBox"),r=Lib.getElementByClass(n,"searchInput");r.setAttribute("disabled","true"),r.setAttribute("title",Strings.searchDisabledForIE);var i=Lib.getElementByClass(n,"arrow");i.setAttribute("disabled","true")}this.updateSearchResultsUI()},getToolbarButtons:function(){var e=[];return e.push({id:"search",tag:Search.Box.tag,initialize:Search.Box.initialize}),e},createSearchObject:function(e){var t=Lib.getElementsByClass(this._body,"domTable");t=Lib.cloneArray(t);var n=t.map(function(e){return e.repObject.input});return new Search.ObjectSearch(e,n,!1,!1)},getSearchOptions:function(){var e=[];return e.push({label:Strings.searchOptionJsonQuery,checked:Cookies.getBooleanCookie(jsonQueryOption),command:Lib.bindFixed(this.onOption,this,jsonQueryOption)}),e},onOption:function(e){Search.Box.onOption(e),this.updateSearchResultsUI()},updateSearchResultsUI:function(){var e=Cookies.getBooleanCookie(jsonQueryOption),t=Lib.getElementsByClass(this._body,"domBox");for(var n=0;n0&&(this.currSearch=this.createSearchObject(e)),!1},evalJsonQuery:function(e,t){if(t!=13)return!0;var n=Lib.getElementsByClass(this._body,"domBox");for(var r=0;r