/*************************************************************
* creator:  Monkey <http://studio17.subelement17.net/> monkey@subelement17.net
* date:     May 2005
* version:  1.0
* copyrights:   Well, I do not have any..But please leave this statement in the file. I have ways of finding you :-)
**************************************************************/
var studio17XML = {
	sIsActive:null,
	req:null,
	loading:false,
	loadXML:function(sWhat,sTable,bReload)
	{
		if((studio17XML.sIsActive != sWhat) || bReload)
		{
		    studio17XML.sIsActive = sWhat;
            if(window.XMLHttpRequest) 
            {
                studio17XML.req = new XMLHttpRequest();
                studio17XML.req.onreadystatechange = studio17XML._showInfo;
                var tempPHPString = sServerPath;
                tempPHPString = tempPHPString.replace('_!sWhat!_',sWhat);
                tempPHPString = tempPHPString.replace('_!sTable!_',sTable)
                
                studio17XML.req.open("GET", tempPHPString, true);
                studio17XML.req.send(null);
                
            } 
            else if (window.ActiveXObject) 
            {
                studio17XML.req = new ActiveXObject("Microsoft.XMLHTTP");
                var tempPHPString = sServerPath;
                tempPHPString = tempPHPString.replace('_!sWhat!_',sWhat);
                tempPHPString = tempPHPString.replace('_!sTable!_',sTable)
                if (studio17XML.req) 
                {
                    studio17XML.req.onreadystatechange = studio17XML._showInfo;
                    studio17XML.req.open("GET", tempPHPString, true);
                    studio17XML.req.send();
                }
            }
		}
	},
	 _showInfo: function()
    {
        if (studio17XML.req && studio17XML.req.readyState == 4) 
        {
          studio17XML.loading = false;
          studio17XML.createXMLArr(studio17XML.req.responseXML)
        }
        else if(!studio17XML.loading)
        {
            studio17XML.loading = true;
            studio17XML.presentWait();
        }
    },
    presentWait: function()
    {
        var showOf = document.getElementById('showOf');
        showOf.innerHTML = '';
        var oDiv = document.createElement('div')
        oDiv.className = 'orangeCap';
        oDiv.id = 'loadingdata';
        var oText = document.createTextNode('loading XML data..'); 
        oDiv.appendChild(oText);
        showOf.appendChild(oDiv);
    },
    createXMLArr:function(oXML)
    {
        var aXMLData = new Array();
        var oHeading = oXML.getElementsByTagName("heading")[0];
        sHeading = oHeading.firstChild.nodeValue;        aXMLData.push(sHeading)
        
        var oIngress = oXML.getElementsByTagName("ingress")[0];
        var sIngress = '';
        if(oIngress.firstChild)
            sIngress = oIngress.firstChild.nodeValue;        aXMLData.push(sIngress)

        var oDescr = oXML.getElementsByTagName("description")[0];
        var sDescr = '';
        if(oDescr.firstChild)
            sDescr = oDescr.firstChild.nodeValue;
        aXMLData.push(sDescr)
        var oLink = oXML.getElementsByTagName("to_link")[0];
        sLink = oLink.firstChild.nodeValue;
        aXMLData.push(sLink)
        // Now, present the GUI ...
        studio17XML.parseandCreate(aXMLData);
    },
    parseandCreate: function(aXML)
    {
        var showOf = document.getElementById('showOf');
        document.getElementById('loadingdata').parentNode.removeChild(document.getElementById('loadingdata'));

        var sHeading = aXML[0];        var sIngress = aXML[1];
        var sDescr  = aXML[2];
        var sLink  = aXML[3]; 
	
		// heading
		var oDiv = document.createElement('div');
		oDiv.style.padding = '7px';
		oDiv.className = 'orangeCap'
		var sText = document.createTextNode(sHeading);
		oDiv.appendChild(sText);
		showOf.appendChild(oDiv);

		// ingress
		var oDiv = document.createElement('div');
		oDiv.style.paddingLeft = '7px';
		oDiv.className = 'greyCaps'
		var sText = document.createTextNode(sIngress);
		oDiv.appendChild(sText);
		showOf.appendChild(oDiv);

		// text - description
		var oDiv = document.createElement('div');
		oDiv.style.paddingLeft = '7px';
    	oDiv.style.marginTop = '10px';
		oDiv.style.color = 'black'; 
		var sText = document.createTextNode(sDescr);
		oDiv.appendChild(sText);
		showOf.appendChild(oDiv);
			
		// link
		var oDiv = document.createElement('div');
		oDiv.style.paddingLeft = '7px';
        var sText = document.createTextNode(sHeading);
		var oA =  document.createElement('a');
		oA.href = sLink
		oA.target = '_blank';
		oA.appendChild(sText);
		oDiv.appendChild(document.createElement('br'));
		oDiv.appendChild(oA);
		showOf.appendChild(oDiv);   
		this.req = null;
		this.loading = false;
    }
}
showInfo = studio17XML.loadXML;
