function writeContent(pageName, id){
    index.LoadContent(pageName, LoadContent_CallBack);
    elementId = id;
}

function LoadContent_CallBack(response){
    if (response.error != null) 
        alert(response.error);
    document.getElementById(elementId).innerHTML = response.value;
    elementId = null;
}

//***************************** Browser Variables ***********************
var gAgent = navigator.userAgent.toLowerCase();
var isIE = (document.all) ? true : false;
var isDOM = (document.getElementById && !document.all) ? true : false;
var isNetscape = (document.layers) ? true : false;
var isSafari = (checkIt('safari')) ? true : false;
//********************************************************************

function TOCshowhide(eID, eImgID_Closed, eImgID_Open){
    var browser;
    var el;
    var eimgO;
    var eimgC;
    if (isIE) {
        browser = "IE";
    }
    if (isDOM) {
        browser = "DOMtype";
    }
    if (isSafari) {
        browser = "Safari";
    }
    if (isNetscape) {
        browser = "Netscape";
    }
    if (document.getElementById) {
        el = document.getElementById(eID);
        eimgO = document.getElementById(eImgID_Open);
        eimgC = document.getElementById(eImgID_Closed);
    }
    //alert ("This browser: " + browser);
    switch (browser) {
        case 'IE':
            el = document.getElementById(eID);
            if (el.currentStyle.display == "none") {
                el.style.display = "inline";
                eimgO.style.display = "inline";
                eimgC.style.display = "none";
            }
            else {
                el.style.display = "none";
                eimgO.style.display = "none";
                eimgC.style.display = "inline";
            }
            break;
            
        case 'DOMtype':
            el = document.getElementById(eID);
            estyle = document.defaultView.getComputedStyle(el, "").display;
            //alert ("getComputedStyle= " + estyle);
            if (estyle == "none") {
                el.style.display = "inline";
                eimgO.style.display = "inline";
                eimgC.style.display = "none";
            }
            else {
                el.style.display = "none";
                eimgO.style.display = "none";
                eimgC.style.display = "inline";
            }
            break;
            
        case 'Safari':
            if (el.style.display == "none") {
                el.style.display = "inline";
                eimgO.style.display = "inline";
                eimgC.style.display = "none";
            }
            else {
                el.style.display = "none";
                eimgO.style.display = "none";
                eimgC.style.display = "inline";
            }
            break;
        case Netscape:
            estyle = document.layers[eId];
            if (estyle == "none") {
                document.layers[eID].display = "inline";
                document.layers[eImgID_Open].display = "inline";
                document.layers[eImgID_Closed].display = "none";
            }
            else {
                document.layers[eID].display = "none";
                document.layers[eImgID_Open].display = "none";
                document.layers[eImgID_Closed].display = "inline";
            }
            break;
        default:
            alert("We're sorry, this browser is not supported");
            break;
    }
} //end function TocShowHide*/
function checkIt(string){
    var place = gAgent.indexOf(string) + 1;
    return place;
    
}

function displayXMLClient(xmlsrc, xslsrc, id){
    //Load XML
    if (isIE) {
        var xml = new ActiveXObject("Microsoft.XMLDOM");
        
        xml.async = false;
        xml.validateOnParse = true;
        xml.resolveExternals = false;
        xml.load(xmlsrc)
        
        //Load XSL
        var xsl = new ActiveXObject("Microsoft.XMLDOM");
        
        xsl.async = false;
        xsl.validateOnParse = true;
        xsl.resolveExternals = false;
        
        xsl.load(xslsrc);
        //Transform
        if ((xml.parseError.errorCode == 0) && (xsl.parseError.errorCode == 0)) {
            document.getElementById(id).innerHTML = xml.transformNode(xsl);
        }
    }
    else 
        if (isDOM || Safari) //DOM browser like FireFox
        {
            var xmlDOM = document.implementation.createDocument("", "", null);
            xmlDOM.async = false;
            var xslDOM = document.implementation.createDocument("", "", null);
            xslDOM.async = false;
            xmlDOM.load(xmlsrc);
            xslDOM.load(xslsrc);
            var processor = new XSLTProcessor();
            processor.importStylesheet(xslDOM);
            var transformResult = processor.transformToDocument(xmlDOM);
            document.getElementById(id).innerHTML = transformResult.documentElement.innerHTML;
        }
}

// create a fade-in effect, element must have width or height -- some layout property
//send the id.
var e;
function initFade(id){
    e = document.getelementByID(id);
    for (var i = 0; i < 11; i++) 
        setTimeout('setOpacity(' + i + ')', 100 * i);
    return false;
}

function setOpacity(value){
    e.style.opacity = value / 10;
    e.style.filter = 'alpha(opacity=' + value * 10 + ')';
}

function swap(menuId){
    var e = document.getElementById(menuId);
    if (e.style.display == "none") {
        e.style.display = "inline";
        e.style.visibility = "visible";
    }
    else {
        e.style.display = "none";
        e.style.visibility = "hidden";
    }
}

function moreLess(menuId, linkId){
    var e = document.getElementById(menuId);
    var l = document.getElementById(linkId);
    if (e.style.display == "none") {
        l.innerHTML = "<em>less..</em>";
        e.style.display = "inline";
        e.style.visibility = "visible";
    }
    else {
        l.innerHTML = "<em>more..</em>";
        e.style.display = "none";
        e.style.visibility = "hidden";
    }
}

function highlight(section, item){
    var t = document.getElementById('toc');
    var d = t.getElementsByTagName('td');
    if (d == null || t == null) {
        return;
    }
    
    for (var x = 0; x < d.length; x++) {
        //alert(d[x].innerHTML);
        //alert(d[x].style.backgroundColor);
        if (isIE) {
            if (d[x].style.backgroundColor == "#7f7f7f") {
                d[x].style.backgroundColor = "#4d4d4d";
            }
        }
        if (isDOM) {
            if (d[x].style.backgroundColor == "rgb(127, 127, 127)") {
                d[x].style.backgroundColor = "#4d4d4d";
            }
        }
    }
    
    var e = document.getElementById(item);
    if (e) {
        e.style.backgroundColor = "#7F7F7F";
    }
}

function doPrint() {
        window.print();
}

function hideElement(element) {
	var e = document.getElementById(element);
	if(e) {
		e.style.visibility = "hidden";
	}
}

function showElement(element) {
	var e = document.getElementById(element);
	if(e) {
		e.style.visibility = "visible";
	}
}