From c6103c7c9a6b6971d2aa0b8e3997608cb5f2c36f Mon Sep 17 00:00:00 2001 From: lresende Date: Mon, 2 Nov 2009 22:22:29 +0000 Subject: Move the das folder as new trunk for das sub project git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@832144 13f79535-47bb-0310-9956-ffa450edef68 --- .../advanced-webapp/src/main/webapp/js/ajax.js | 188 +++++++++++++++++++++ 1 file changed, 188 insertions(+) create mode 100644 das-java/trunk/samples/advanced-webapp/src/main/webapp/js/ajax.js (limited to 'das-java/trunk/samples/advanced-webapp/src/main/webapp/js/ajax.js') diff --git a/das-java/trunk/samples/advanced-webapp/src/main/webapp/js/ajax.js b/das-java/trunk/samples/advanced-webapp/src/main/webapp/js/ajax.js new file mode 100644 index 0000000000..c0b0be5e54 --- /dev/null +++ b/das-java/trunk/samples/advanced-webapp/src/main/webapp/js/ajax.js @@ -0,0 +1,188 @@ +// + +var req; +var url; +var xslFileName; +var brwsr; +var htmlunitlimit; + +function startup(pageName) { + if(pageName == 'adhoc'){ + document.forms[0].sqlQuery.focus = true; + } + + if(pageName == 'command') { + document.forms[0].DasCommand.focus = true; + } +} + +function init() { + if (window.XMLHttpRequest) { + brwsr="NOIE"; + req = new XMLHttpRequest(); + } else if (window.ActiveXObject) { + brwsr="IE"; + req = new ActiveXObject("Microsoft.XMLHTTP"); + } + var url = "../CommandServlet"; + req.open("POST", url, true); + req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); +} + +function formWaitMessage(){ + var swappableSection = document.getElementById('msg'); + if (window.XSLTProcessor) + { + swappableSection.innerHTML = ''; + var x = document.createTextNode('Retreiving result..please wait'); + swappableSection.appendChild(x); + } + else if(window.ActiveXObject) + { + swappableSection.innerHTML = 'Retreiving result..please wait' ; + } +} + +function executeQuery(reqParams, xslFileNameVal) { + init(); + req.onreadystatechange = resultHandler; + xslFileName = xslFileNameVal; + //alert(reqParams); + xsldocloaded = false; + loadXsl(); + req.send(reqParams); + //alert('req sent'); +} + + var xsldocloaded = false; + var xsldoc; + +function loadXsl(){ + if(xslFileName != ''){ + if (window.XSLTProcessor) + { + // support Mozilla/Gecko based browsers + xsldoc = document.implementation.createDocument("", "", null); + xsldoc.addEventListener("load", onXslLoad, false); + xsldoc.load(xslFileName); + //alert("done loadXsl Mozilla"); + htmlunitlimit='false'; + } + else if(window.ActiveXObject) + { + // support Windows / ActiveX + xsldoc = new ActiveXObject("Microsoft.XMLDOM"); + xsldoc.ondataavailable = onXslLoad; + xsldoc.load(xslFileName); + //alert("done loadXsl IE"); + htmlunitlimit='false'; + } + else{ + //alert('setiing htmlunitlimit true'); + htmlunitlimit='true'; + } + } +} + +function onXslLoad() +{ + // flag that the xsl is loaded + xsldocloaded = true; +} + +function resultHandler() +{ + // Make sure the request is loaded (readyState = 4) + if (req.readyState == 4) + { + // Make sure the status is "OK" + if (req.status == 200) + { + // Make sure the XSL document is loaded + if (!xsldocloaded && xslFileName != '') + { + if(htmlunitlimit=='false'){ + alert("Unable to transform data. XSL is not yet loaded."); + // break out of the function + return; + } + else{ + var swappableSectionUT = document.getElementById('msg'); + if(brwsr=='NOIE'){ + //alert('limit case, xsl present, noie'); + swappableSectionUT.removeChild(swappableSectionUT.childNodes[0]);//remove wait message + var x = document.createTextNode(req.responseText); + swappableSectionUT.appendChild(x); + } + else{ + swappableSectionUT.innerHTML = req.responseText; + } + //alert('returning result:'+req.responseText); + return; + } + } + + var swappableSection = document.getElementById("msg"); + + if (window.XSLTProcessor) + { + if(xslFileName == ''){ + swappableSection.removeChild(swappableSection.childNodes[0]);//remove wait message + var x = document.createTextNode(req.responseText); + swappableSection.appendChild(x); + } + else{ + // support Mozilla/Gecko based browsers + var xsltProcessor = new XSLTProcessor(); + xsltProcessor.importStylesheet(xsldoc); + var outputXHTML = xsltProcessor + .transformToFragment(req.responseXML, document); + swappableSection.innerHTML = ""; + swappableSection.appendChild(outputXHTML); + } + } + else if(window.ActiveXObject) + { + if(xslFileName == ''){ + swappableSection.innerHTML = req.responseText; + } + else{ + // support Windows/ActiveX enabled browsers + var outputXHTML = req.responseXML.transformNode(xsldoc); + swappableSection.innerHTML = outputXHTML; + } + } + else{ + var swappableSectionUT = document.getElementById('msg'); + if(brwsr=='NOIE'){ + swappableSectionUT.removeChild(swappableSectionUT.childNodes[0]);//remove wait message + var x = document.createTextNode(req.responseText); + swappableSectionUT.appendChild(x); + } + else{ + swappableSectionUT.innerHTML = req.responseText; + } + return; + } + } + else + { + alert("There was a problem retrieving the XML data:\n" + + req.statusText); + } + } +} -- cgit v1.2.3