﻿//-- BEGIN HELP POPUP --//
function openHelp(url, windowtarget) 
{
    var helpPop = window.open(
        url, 
        windowtarget,
        'width=600,height=640,toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=1,resizable=1');
        helpPop.focus();
}
//--* BEGIN ICON LOADER *--//           
		//Specify path to xml file
        var xmlsource='DefaultIcons.xml';
        //load xml file
        if (window.ActiveXObject)
            var xmlDoc = new ActiveXObject('Microsoft.XMLDOM');
        else if (document.implementation && document.implementation.createDocument)
            var xmlDoc= document.implementation.createDocument('','doc',null);
        /*
        //works in IE & Firefox only!
        if (typeof xmlDoc!='undefined'){
        //document.write(tickercontainer);
        xmlDoc.load(xmlsource);
        }
        */

        if (typeof xmlDoc != 'undefined') {
            //document.write(tickercontainer);
            if (window.ActiveXObject) {
                xmlDoc.load(xmlsource);
            } else if (window.XMLHttpRequest) {
                var d = new XMLHttpRequest();
                d.open('GET', xmlsource, false);
                d.send(null);
                xmlDoc = d.responseXML;
            }
        }
        
        function getIconTitle(icon_id){
            //IconNode = xmlDoc.selectSingleNode('//icons/icon[@id=\'' + icon_id + '\']/Title');
            IconNode = SelectTheNode(xmlDoc, '//icons/icon[@id=\'' + icon_id + '\']/Title');
            var strOverview = IconNode.text;
            if(!window.ActiveXObject) strOverview = IconNode.firstChild.nodeValue;
            return strOverview;
        }
        function getIconDescription(icon_id){
            //IconNode = xmlDoc.selectSingleNode('//icons/icon[@id=\'' + icon_id + '\']/Description');
            IconNode = SelectTheNode(xmlDoc, '//icons/icon[@id=\'' + icon_id + '\']/Description');
            var strOverview = IconNode.text;
            if(!window.ActiveXObject) strOverview = IconNode.firstChild.nodeValue;
            return strOverview;
        }
        
        function displayTip(icon_id){
            var strTitle = getIconTitle(icon_id);
            var strText = getIconDescription(icon_id);
            //IconHelpHeader1, IconHelpText1
            var HeaderDiv = document.getElementById('IconHelpHeader1')
            HeaderDiv.innerHTML = strTitle;
            
            var TextDiv = document.getElementById('IconHelpText1')
            TextDiv.innerHTML = strText;
            
            var TopDiv = document.getElementById('IconHelpContainer1');
            TopDiv.style.display = '';
        }
        
        function hideTip(){
            var TopDiv = document.getElementById('IconHelpContainer1');
            TopDiv.style.display = 'none';
        }

        function displayTip2(icon_id){
            var strTitle = getIconTitle(icon_id);
            var strText = getIconDescription(icon_id);
            //IconHelpHeader1, IconHelpText1
            var HeaderDiv = document.getElementById('IconHelpHeader2')
            HeaderDiv.innerHTML = strTitle;
            
            var TextDiv = document.getElementById('IconHelpText2')
            TextDiv.innerHTML = strText;
            
            var TopDiv = document.getElementById('IconHelpContainer2');
            TopDiv.style.display = '';
        }
        
        function hideTip2(){
            var TopDiv = document.getElementById('IconHelpContainer2');
            TopDiv.style.display = 'none';
        }

        function displayTip3(icon_id){
            var strTitle = getIconTitle(icon_id);
            var strText = getIconDescription(icon_id);
            //IconHelpHeader1, IconHelpText1
            var HeaderDiv = document.getElementById('IconHelpHeader3')
            HeaderDiv.innerHTML = strTitle;
            
            var TextDiv = document.getElementById('IconHelpText3')
            TextDiv.innerHTML = strText;
            
            var TopDiv = document.getElementById('IconHelpContainer3');
            TopDiv.style.display = '';
        }
        
        function hideTip3(){
            var TopDiv = document.getElementById('IconHelpContainer3');
            TopDiv.style.display = 'none';
        }
//-- BEGIN JAVASCRIPT FOR BOB - FIREFOX FIX --//   
if (!window.ActiveXObject)
{     
    Element.prototype.selectSingleNode = function (sXPath) 
    {
        var oEvaluator = new XPathEvaluator();
        var oResult = oEvaluator.evaluate(sXPath, xmlDoc, null, 
		    XPathResult.FIRST_ORDERED_NODE_TYPE, null);
	    if (oResult != null) {
            return oResult.singleNodeValue;
        } else {
            return null;
        }              
    }
}


function SelectTheNode(xmldoc_object, node_path)
{
    if(window.ActiveXObject)
    {    return xmldoc_object.selectSingleNode(node_path);}
    else
    {
       return xmldoc_object.documentElement.selectSingleNode(node_path);
    }
    
}
//-- END JAVASCRIPT FOR BOB - FIREFOX FIX --//
    function toggleDiv(id,flagit) {
        if (flagit=="1"){
            if (document.layers) document.layers[''+id+''].visibility = "show"
            else if (document.all) document.all[''+id+''].style.visibility = "visible"
            else if (document.getElementById) document.getElementById(''+id+'').style.visibility = "visible"
        }
        else
            if (flagit=="0"){
                if (document.layers) document.layers[''+id+''].visibility = "hide"
                else if (document.all) document.all[''+id+''].style.visibility = "hidden"
                else if (document.getElementById) document.getElementById(''+id+'').style.visibility = "hidden"
            }
        }
//-- Auto Tab for Phone Numbers
		var phone_field_length=0;
		function TabNext(obj,event,len,next_field) {
			if (event == "down") {
				phone_field_length=obj.value.length;
				}
			else if (event == "up") {
				if (obj.value.length != phone_field_length) {
					phone_field_length=obj.value.length;
					if (phone_field_length == len) {
						next_field.focus();
						}
					}
				}
			}

//-- Browser Detector 
var BrowserDetect = {
	init: function () {
		this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
		this.version = this.searchVersion(navigator.userAgent)
			|| this.searchVersion(navigator.appVersion)
			|| "an unknown version";
		this.OS = this.searchString(this.dataOS) || "an unknown OS";
	},
	searchString: function (data) {
		for (var i=0;i<data.length;i++)	{
			var dataString = data[i].string;
			var dataProp = data[i].prop;
			this.versionSearchString = data[i].versionSearch || data[i].identity;
			if (dataString) {
				if (dataString.indexOf(data[i].subString) != -1)
					return data[i].identity;
			}
			else if (dataProp)
				return data[i].identity;
		}
	},
	searchVersion: function (dataString) {
		var index = dataString.indexOf(this.versionSearchString);
		if (index == -1) return;
		return parseFloat(dataString.substring(index+this.versionSearchString.length+1));
	},
	dataBrowser: [
		{ 	string: navigator.userAgent,
			subString: "OmniWeb",
			versionSearch: "OmniWeb/",
			identity: "OmniWeb"
		},
		{
			string: navigator.vendor,
			subString: "Apple",
			identity: "Safari"
		},
		{
			prop: window.opera,
			identity: "Opera"
		},
		{
			string: navigator.vendor,
			subString: "iCab",
			identity: "iCab"
		},
		{
			string: navigator.vendor,
			subString: "KDE",
			identity: "Konqueror"
		},
		{
			string: navigator.userAgent,
			subString: "Firefox",
			identity: "Firefox"
		},
		{
			string: navigator.vendor,
			subString: "Camino",
			identity: "Camino"
		},
		{		// for newer Netscapes (6+)
			string: navigator.userAgent,
			subString: "Netscape",
			identity: "Netscape"
		},
		{
			string: navigator.userAgent,
			subString: "MSIE",
			identity: "Explorer",
			versionSearch: "MSIE"
		},
		{
			string: navigator.userAgent,
			subString: "Gecko",
			identity: "Mozilla",
			versionSearch: "rv"
		},
		{ 		// for older Netscapes (4-)
			string: navigator.userAgent,
			subString: "Mozilla",
			identity: "Netscape",
			versionSearch: "Mozilla"
		}
	],
	dataOS : [
		{
			string: navigator.platform,
			subString: "Win",
			identity: "Windows"
		},
		{
			string: navigator.platform,
			subString: "Mac",
			identity: "Mac"
		},
		{
			string: navigator.platform,
			subString: "Linux",
			identity: "Linux"
		}
	]

};
BrowserDetect.init();
