// Show Hide

<!--
function ACXswitchMenu(obj) {
	var el = document.getElementById(obj);
	if ( el.style.display != "none" ) {
		el.style.display = 'none';
	}
	else {
		el.style.display = '';
	}
}
//-->

/* Function that does the date. */
function copyrightDate()
{
	document.write(new Date().getFullYear())
}

var message="";
///////////////////////////////////
function clickIE() {if (document.all) {(message);return false;}}
function clickNS(e) {if 
(document.layers||(document.getElementById&&!document.all)) {
if (e.which==2||e.which==3) {(message);return false;}}}
if (document.layers) 
{document.captureEvents(Event.MOUSEDOWN);document.onmousedown=clickNS;}
else{document.onmouseup=clickNS;document.oncontextmenu=clickIE;}

document.oncontextmenu=new Function("return false")


/* Function that does rollovers. */
function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}
  
function MM_swapImage() { //v3.0
    try{
        var j = 0; 
        var args = MM_swapImage.arguments;
        document.MM_sr = new Array; 
        for(var i = 0; i < (args.length - 2); i += 3){
            var imgObject = MM_findObj(args[i]);
            if (imgObject != null){
                document.MM_sr[j++] = imgObject; 
                if(!imgObject.oSrc)
                    imgObject.oSrc = imgObject.src; 
                imgObject.src = args[i+2];
            }
            UpdatePageState(args[i], "MM_swapImage('" + args[i] + "', '" + args[i+1] + "', '" + args[i+2] + "');");
        }
    }
    catch (ex){
    }
}
function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}
function MM_preloadImages() { //v3.0
 var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
   var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
   if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

/* Select Tab */

function SelectTab(DivId){
    try{
        var SelectedTab = document.getElementById(DivId);
        var AllTabs = document.getElementsByTagName(SelectedTab.getAttribute("tagName"));
        for (var i = 0; i < AllTabs.length; i++){
            if (AllTabs.item(i).getAttribute("name") == SelectedTab.getAttribute("name")){
                document.getElementById(AllTabs.item(i).getAttribute("id")).style["display"] = "none";
            }
        }
        SelectedTab.style["display"] = "block";
        UpdatePageState(SelectedTab.getAttribute("name"), "SelectTab('" + DivId + "');");
    }
    catch (ex){
    }
}

/* Expand / Collapse Functionality */

function ExpandContent(DivId){
    try{
        document.getElementById(DivId).style["display"] = "block";
        UpdatePageState(DivId, "ExpandContent('" + DivId + "');");
    }
    catch (ex){
    }
}

function CollapseContent(DivId){
    try{
        document.getElementById(DivId).style["display"] = "none";
        UpdatePageState(DivId, "CollapseContent('" + DivId + "');");
    }
    catch (ex){
    }
}

/* Page State Persistence */

var PersistenceKeys = new Array();
var PersistenceMethods = new Array();

function UpdatePageState(Key, Method){
    var Index = -1;
    var Counter = 0;
    for (Counter = 0; Counter < PersistenceKeys.length; Counter = Counter + 1){
        if (PersistenceKeys[Counter] == Key){
            Index = Counter;
            break;
        }
    }
    if (Index != -1){
        PersistenceMethods[Index] = Method;
    }
    else{
        PersistenceKeys[PersistenceKeys.length] = Key
        PersistenceMethods[PersistenceMethods.length] = Method;
    }
    SavePageState();
}

function SavePageState(){
    var PSP = document.getElementById("PageStatePersistence");
    if (PSP != null){
        PSP.value = PersistenceKeys.join("#") + "@" + PersistenceMethods.join("#");    
    }
}

function RecoverPageState(){
    LoadPageState();
    var Counter = 0;
    for (Counter = 0; Counter < PersistenceMethods.length; Counter = Counter + 1){
        eval(PersistenceMethods[Counter]);
    }
}

function LoadPageState(){
    var PSP = document.getElementById("PageStatePersistence");
    if (PSP != null){
        var Persistences = PSP.value.split("@");
        if (Persistences.length == 2){
            PersistenceKeys = Persistences[0].split("#");
            PersistenceMethods = Persistences[1].split("#");
        }
    }
}

function OfferPopper()
{
    this.m_Initialized = false;
}

OfferPopper.prototype.m_InputElements;
OfferPopper.prototype.m_SelectElements;
OfferPopper.prototype.m_TextAreaElements;
OfferPopper.prototype.m_Initialized;

OfferPopper.prototype.GetValue = function(Id)
{
    var RetVal = '';
    
    var IdRegExp = new RegExp(Id + '$');
   
    if (RetVal == '')
    {
        for (i = 0; i < this.m_InputElements.length; i++)
        {
            if (IdRegExp.test(this.m_InputElements[i].id))
            {
                RetVal = this.m_InputElements[i].value;
                break;
            }
        }
    }
    
    if (RetVal == '')
    {
        for (i = 0; i < this.m_SelectElements.length; i++)
        {
            if (IdRegExp.test(this.m_SelectElements[i].id))
            {
                RetVal = this.m_SelectElements[i].options[this.m_SelectedElements[i].selectedIndex].value;
                break;
            }
        }
    }

    if (RetVal == '')
    {
        for (i = 0; i < this.m_TextAreaElements.length; i++)
        {
            if (IdRegExp.test(this.m_TextAreaElements[i].id))
            {
                RetVal = this.m_TextAreaElements[i].value;
                break;
            }
        }
    }
    
    return (RetVal);
}

OfferPopper.prototype.Init = function()
{
    if (!this.m_Initialized)
    {
        // get all elements
        this.m_InputElements = document.getElementsByTagName('input');
        this.m_SelectElements = document.getElementsByTagName('select');
        this.m_TextAreaElements = document.getElementsByTagName('textarea');
        
        // prevent reinitialzation
        this.m_Initialized = true;
    }
}

OfferPopper.prototype.PrePop = function(url)
{
    var FieldIdRegExp = /#[^#]+#/g;
    
    var FieldIds = url.match(FieldIdRegExp);
    if (FieldIds != null)
    {
        for (j = 0; j < FieldIds.length; j++)
        {        
            var FieldId = FieldIds[j].replace(/#/g, '');
            url = url.replace(FieldIds[j], this.GetValue(FieldId)); 
        }
    }
    
    return (url);
}

OfferPopper.prototype.doPopUnder = function(url, specs)
{
    this.Init();
    url = this.PrePop(url);
    
    if (url != null && url != '')
    {
        var Win = window.open(url, '_blank', specs);
        Win.blur();
    }
}

var OriginOfferPopper = new OfferPopper();

function createXMLHttpRequest() {
	try { return new XMLHttpRequest(); } catch(e) {}
	try { return new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) {}
	try { return new ActiveXObject("Microsoft.XMLHTTP"); } catch (e) {}
	return null;
}

function GetElementText(xml, elementName) {
	if (document.implementation.hasFeature("XPath", "3.0")) {
		if (typeof XMLDocument == "undefined") {
			XMLDocument = Document;
		}
		var oNSResolver = xml.createNSResolver(xml.documentElement);
		var xpath = "*[name()='" + elementName + "']/text()";
		var aItems = xml.evaluate(xpath, xml.documentElement, oNSResolver, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null);
		if (aItems == null || aItems.snapshotLength == 0) {
			return "";
		}
		else {
			return aItems.snapshotItem(0).data;
		}
	}
	else {
		var node = xml.documentElement.selectSingleNode(elementName);
		if (node == null) {
			return "";
		}
		else {
			return node.text;
		}
	}
}

function GetCityStateFromZip(zip) {
	var xhr = createXMLHttpRequest();
	if (xhr == null) {
		return null;
	}
	xhr.onreadystatechange = function() {
		if (xhr.readyState == 4) {
			if (xhr.status == 200) {
				var xml = xhr.responseXML;
				if (xml != null) {
					var _state = document.getElementById('_state');
					if (_state != null) {
						_state.value = GetElementText(xml, 'State');
					}
					var _city = document.getElementById('_city');
					if (_city != null) {
						_city.value = GetElementText(xml, 'City');
					}
				}
			}
		}
	}
	xhr.open("POST", "GetCityState.asmx/GetCityStateFromZip", true);
	xhr.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
	xhr.send('zip=' + zip);
}