/**************************************************************************************************************************** Licensed Materials - Property of IBM BI and PM: QFW © Copyright IBM Corp. 2005, 2010 US Government Users Restricted Rights - Use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM Corp. *****************************************************************************************************************************/ G_QanDBQuery = {}; G_QanDBQuery.F_Init = function( divContainer ) { this.m_doc = document; this.m_divContainer = divContainer; } G_QanDBQuery.F_Show = function() { var v_divHeader = this.m_doc.createElement( "div" ); this.m_divContainer.innerHTML = ""; v_divHeader.className = "planDetailHeader"; this.m_divContainer.appendChild( v_divHeader ); var v_tblPropTitles = this.m_doc.createElement("table"); v_tblPropTitles.className = "planPropTable"; v_tblPropTitles.cellPadding = 0; v_tblPropTitles.cellSpacing = 0; //v_tblPropTitles.width = "100%"; v_divHeader.appendChild( v_tblPropTitles ); this.m_trPropTitles = v_tblPropTitles.insertRow(); var v_tdLang = this.m_trPropTitles.insertCell(); v_tdLang.innerHTML = '  Query type:  '; v_tdLang.noWrap = "true"; var v_tdSpacer = this.m_trPropTitles.insertCell(); v_tdSpacer.innerText = " "; v_tdSpacer.width = "3px"; var v_tdSQL = this.m_trPropTitles.insertCell(); v_tdSQL.innerText = "SQL"; v_tdSQL.noWrap = "true"; v_tdSQL.onclick = this.f_title_onclick.F_CreateMethodCallback( this ); v_tdSpacer = this.m_trPropTitles.insertCell(); v_tdSpacer.innerText = " "; v_tdSpacer.width = "3px"; var v_tdMDX = this.m_trPropTitles.insertCell(); v_tdMDX.innerText = "MDX"; v_tdMDX.noWrap = "true"; v_tdMDX.onclick = this.f_title_onclick.F_CreateMethodCallback( this ); var v_tdRemainder = this.m_trPropTitles.insertCell(); v_tdRemainder.width = "100%"; v_tdRemainder.innerText = " "; G_QanDBQuery.f_showPropertyValue( v_tdSQL ); this.m_divMenu = this.m_doc.createElement( "div" ); this.m_divMenu.className = "menu"; this.m_divContainer.appendChild( this.m_divMenu ); this.m_divMenu.innerHTML = 'FormattedText' var v_divMenu = this.m_doc.createElement( "div" ); this.m_divContainer.appendChild( v_divMenu ); v_divMenu.innerText = " "; this.m_divMenu.onclick = this.f_menu_onclick.F_CreateMethodCallback( this ); this.m_divValueContainer = this.m_doc.createElement( "textArea" ); this.m_divValueContainer.className = "planPropValue"; this.m_divContainer.appendChild( this.m_divValueContainer ); this.m_divValueContainer.style.width = "100%"; this.m_divValueContainer.style.height = document.body.offsetHeight - (this.m_divMenu.offsetTop + this.m_divMenu.offsetHeight + 5); this.m_divValueContainer.style.border = "none"; this.m_divValueContainer.style.marginRight = "3px"; this.m_divValueContainer.style.border = "solid 1px #DDDDDD"; this.m_divValueContainer.style.backgroundColor = "white"; this.m_divValueContainer.style.fontFamily = "arial"; this.m_divValueContainer.style.fontSize = "1em"; this.m_divFormatted = this.m_doc.createElement( "div" ); this.m_divContainer.appendChild( this.m_divFormatted ); this.m_divFormatted.className = "formatted"; this.m_divFormatted.style.display = "none"; this.m_divFormatted.style.border = "solid 1px #DDDDDD"; this.m_divFormatted.style.overflow = "auto"; this.m_divFormatted.style.height = document.body.offsetHeight - (this.m_divMenu.offsetTop + this.m_divMenu.offsetHeight + 5); this.m_divFormatted.onclick = function() { G_QanPrettyPrint.F_OnClick(event.srcElement); }; document.body.onresize = this.f_content_onresize.F_CreateMethodCallback( this ); this.m_oSQLParser = new C_QanParser(); // this.m_divValueContainer.contentEditable = "true"; // this.m_divValueContainer.canHaveHTML = "false"; } G_QanDBQuery.f_showPropertyValue = function( tdProp ) { this.m_sActiveLang = tdProp.innerText; tdProp.className = "planActiveProperty"; for( var i = 2; i < this.m_trPropTitles.children.length - 1; i += 2 ) if( this.m_trPropTitles.children[i] != tdProp ) this.m_trPropTitles.children[i].className = "planProperty"; } G_QanDBQuery.f_content_onresize = function() { this.m_divValueContainer.style.height = document.body.offsetHeight - (this.m_divMenu.offsetTop + this.m_divMenu.offsetHeight + 5); this.m_divFormatted.style.height = document.body.offsetHeight - (this.m_divMenu.offsetTop + this.m_divMenu.offsetHeight + 5); } G_QanDBQuery.f_title_onclick = function() { this.f_showPropertyValue( event.srcElement ); } G_QanDBQuery.f_menu_onclick = function() { if( event.srcElement.innerText == "Text" ) { this.m_divValueContainer.style.display = ""; this.m_divFormatted.style.display = "none"; } else if( event.srcElement.innerText == "Formatted" ) { this.m_divValueContainer.style.display = "none"; this.m_divFormatted.style.display = "block"; var v_xmlResult = this.m_oSQLParser.F_TransformToXML( this.m_divValueContainer.innerText ); if( v_xmlResult ) this.m_divFormatted.innerHTML = this.m_oSQLParser.F_TransformBlockToHTML( v_xmlResult ); } }