/*
    Suckerfish dropdowns
*/
sfHover = function() {
	var sfEls = document.getElementById("nav").getElementsByTagName("LI");
	for (var i=0; i<sfEls.length; i++) {
		sfEls[i].onmouseover=function() {
			this.className+=" sfhover";
		}
		sfEls[i].onmouseout=function() {
			this.className=this.className.replace(new RegExp(" sfhover\\b"), "");
		}
	}
	
}
if (window.attachEvent) window.attachEvent("onload", sfHover);


/* Pop ups  */
function standard(popUp) {
	popWindow = window.open(popUp, "popWin", "toolbar=no, location=no, scrollbars=no, statusbar=no, width=558, height=448")
	popWindow.focus()
}

/*
    Written by Jonathan Snook, http://www.snook.ca/jonathan
    Add-ons by Robert Nyman, http://www.robertnyman.com
*/

function getElementsByClassName(oElm, strTagName, strClassName){
    var arrElements = (strTagName == "*" && document.all)? document.all : 
    oElm.getElementsByTagName(strTagName);
    var arrReturnElements = new Array();
    strClassName = strClassName.replace(/\-/g, "\\-");
    var oRegExp = new RegExp("(^|\\s)" + strClassName + "(\\s|$)");
    var oElement;
    for(var i=0; i<arrElements.length; i++){
        oElement = arrElements[i];      
        if(oRegExp.test(oElement.className)){
            arrReturnElements.push(oElement);
        }   
    }
    return (arrReturnElements)
}

/*
    Empty form fields
*/
function clearText(objField){
	if (objField.defaultValue==objField.value)
	objField.value = ""
}
/*
    adds page to favorites
*/
function bookmark()
{
	var ver = navigator.appName;
	var num = parseInt(navigator.appVersion);

	netscape="Please hit CTRL+D to add a bookmark to this site."
	if ((ver == "Microsoft Internet Explorer")&&(num >= 4))
	{
		window.external.AddFavorite("http://www.ar-d.com/", "Audience Research and Development - The Premier Television Branding Company");
	}
	else if (navigator.appName=='Netscape')
	{
		alert(netscape);
	}
}


/*
    nav rollover functions
*/

function showSub(navitem)
{
	var theMain
	// loop through and find subnav
	var numberMain = navitem.childNodes.length;

	for (i=0; i<numberMain;i++){ 	
		if (navitem.childNodes && navitem.childNodes[i].nodeName.toLowerCase() == 'ul') {
			navitem.childNodes[i].style.display = "block";
		}
		if (navitem.childNodes && navitem.childNodes[i].nodeName.toLowerCase() == 'a' && navitem.childNodes[i].className.toLowerCase() == 'rollover' && navitem.childNodes[i].firstChild.src.indexOf('_r.') == -1) {
			navitem.childNodes[i].firstChild.src = navitem.childNodes[i].firstChild.src.replace(/(\.[^.]+)$/, '_r$1');
		}
	}
}

function hideSub(navitem)
{
	var theMain
	// loop through and find subnav
	var numberMain = navitem.childNodes.length;

	for (i=0; i<numberMain;i++){ 	
		if (navitem.childNodes && navitem.childNodes[i].nodeName.toLowerCase() == 'ul') {
			navitem.childNodes[i].style.display = "none";
		}
		if (navitem.childNodes && navitem.childNodes[i].nodeName.toLowerCase() == 'a' && navitem.childNodes[i].className.toLowerCase() == 'rollover') {
			navitem.childNodes[i].firstChild.src = navitem.childNodes[i].firstChild.src.replace(/_r(\.[^.]+)$/, '$1');
		}
	}
}

function hideAllSubs()
{
	var allSubs = getElementsByClassName(document.getElementById("navigation"), "ul", "subnav");
	
	// loop through and hide all subs
	var numberSubs = allSubs.length;
	
	for (i=0; i<numberSubs;i++){ 
		allSubs[i].style.display = "none";
	}
}

/*
    Change images on rollover
*/
function changeImages() {
  if (document.images) {
    for (var i=0; i<changeImages.arguments.length; i+=2) {
      document.images[changeImages.arguments[i]].src = eval(changeImages.arguments[i+1] + ".src");
    }
  }
}

/*
    Preload images
*/
if (document.images) {
	
    whoon = new Image();
    whoon.src = "/images/amdev/n_who_o.gif";
    whooff = new Image();
    whooff.src = "/images/amdev/n_who.gif";
	
	
    healthcareon = new Image();
    healthcareon.src = "/images/amdev/n_healthcare_o.gif";
    healthcareoff = new Image();
    healthcareoff.src = "/images/amdev/n_healthcare.gif";
	
	
    mixedon = new Image();
    mixedon.src = "/images/amdev/n_mixed_o.gif";
    mixedoff = new Image();
    mixedoff.src = "/images/amdev/n_mixed.gif";
	
	
    investoron = new Image();
    investoron.src = "/images/amdev/n_investor_o.gif";
    investoroff = new Image();
    investoroff.src = "/images/amdev/n_investor.gif";
	
	
    newson = new Image();
    newson.src = "/images/amdev/n_news_o.gif";
    newsoff = new Image();
    newsoff.src = "/images/amdev/n_news.gif";
	
	newinvoppon = new Image();
	newinvoppon.src = "/images/amdev/new_investment_opportunities_btn_hov.gif";
	newinvoppoff = new Image();
	newinvoppoff.src = "/images/amdev/new_investment_opportunities_btn.gif";
    	
}


/* change active tab area on homepage */
function changeTab(theTab)
{
	// turn off all tabs
	document.getElementById("wktab").src = document.getElementById("wktab").src.replace(/_r(\.[^.]+)$/, '$1');
	document.getElementById("relatedtab").src = document.getElementById("relatedtab").src.replace(/_r(\.[^.]+)$/, '$1');
	

	// turn on current tab image
	var theImageID = theTab + "tab";
	var theImage = document.getElementById(theImageID);
	
	if (theImage.src.indexOf('_r.') == -1) {
		theImage.src = theImage.src.replace(/(\.[^.]+)$/, '_r$1');
	} 

	// turn off all tab areas
	document.getElementById("wktabarea").style.display  = "none";
	document.getElementById("relatedtabarea").style.display  = "none";

	// swap visible tab content areas
	var theTabAreaID = theTab + "tabarea";
	var theTabArea = document.getElementById(theTabAreaID);

	theTabArea.style.display = "block";
}
function validate(theForm)
	{
	var returnFlag = true;
	var frmLength;
	var firstBlank;
	var strEmailAddress;
	var strPhoneNumber;
	var strNewPhone = "";
	var strPhoneLength;
	var strMessage;
		
	var arrReqFields = getElementsByClassName(document.getElementById(theForm.id), "*", "required");
	
	strMessage = "Please complete all required fields."
	firstBlank = -1;
	
	// loop through fields to clear out default values
	frmLength = arrReqFields.length;
	
	for (i=0; i<frmLength;i++){ 
		if(arrReqFields[i].value == "")
		{
			
			arrReqFields[i].className = "required warning";
			returnFlag = false;
			if(firstBlank == -1) {
				firstBlank = i
			}
		}
		else if(arrReqFields[i].name == "email") {
			strEmailAddress = arrReqFields[i].value;
			intAtPosition = strEmailAddress.indexOf("@");
			intLastDotPosition = strEmailAddress.lastIndexOf(".");
			if((strEmailAddress=="") || (intAtPosition == 0) || (intAtPosition == 1) || (intLastDotPosition == -1) || (intAtPosition > intLastDotPosition) || (intLastDotPosition+1 == strEmailAddress.length)){
				arrReqFields[i].className = "required warning";
				returnFlag = false;
				if(firstBlank == -1) {
					firstBlank = i;
					strMessage = "Please enter a valid email address";
					
				}
			}
		}
		else if(arrReqFields[i].name.indexOf('phone') != -1 || arrReqFields[i].name.indexOf('fax') != -1) {
			// check to make sure phone numbers are 10 digits for phone and fax numbers
			strPhoneNumber = arrReqFields[i].value;
			strPhoneLength = strPhoneNumber.length;
			strNewPhone = "";
			
			if (strPhoneLength >= 10)
			{
				// strip out non-numeric characters
				for(var j=0;j<strPhoneLength;j++)
				{
					if(isDigit(strPhoneNumber.charAt(j)))
					{
						strNewPhone = strNewPhone + strPhoneNumber.charAt(j);
					}
				}
				if (strNewPhone.length != 10)
				{
					// phone number value invalid
					arrReqFields[i].className = "required warning";
					returnFlag = false;
					if(firstBlank == -1)
					{
						firstBlank = i;
						strMessage = "Please enter a valid phone number";
					}
				}
				else
				{
					arrReqFields[i].className = "required";
					arrReqFields[i].value = strNewPhone.substring(0,3) + "-" + strNewPhone.substring(3,6) + "-" + strNewPhone.substring(6,10);
				}
				
			}
			else
			{
				// phone number value too short
				arrReqFields[i].className = "required warning";
				returnFlag = false;
				if(firstBlank == -1) {
					firstBlank = i;
					strMessage = "Please enter a valid phone number";
					
				}
			}
		}
		else {
			arrReqFields[i].className = "required";
		}
	}
	
	// validate any required check boxes
	var arrReqChecks = getElementsByClassName(document.getElementById(theForm.id), "*", "reqcheck");
	var chkDone = false;
	
	frmLength = arrReqChecks.length;
	
	if(returnFlag == true && frmLength != 0)
	{ 
		returnFlag = false;
		
		for (i=0; i<frmLength;i++)
			{
				if(arrReqChecks[i].checked == false)
				{
					// checkbox is empty
				}
				else {
					chkDone = true;
					i = frmLength;
					returnFlag = true;
				}
			}
		
		if(returnFlag == false)
		{
			returnFlag = false;
			strMessage = "You must check at least one checkbox to continue.";
			firstBlank = 1;
		}
	}
		
	// check any other email addresses for errors
	var arrEmails = getElementsByClassName(document.getElementById(theForm.id), "*", "emailfield");
	
	frmLength = arrEmails.length;

	for (i=0; i<frmLength;i++)
		{
			strEmailAddress = arrEmails[i].value;
			if(strEmailAddress != "")
			{
				intAtPosition = strEmailAddress.indexOf("@");
				intLastDotPosition = strEmailAddress.lastIndexOf(".");
				if((strEmailAddress=="") || (intAtPosition == 0) || (intAtPosition == 1) || (intLastDotPosition == -1) || (intAtPosition > intLastDotPosition) || (intLastDotPosition+1 == strEmailAddress.length)){
					arrEmails[i].className = "emailfield warning";
					returnFlag = false;
					if(firstBlank == -1) {
						firstBlank = i;
						strMessage = "Please enter a valid email address.";
						
					}
				}
				else { arrEmails[i].className = "emailfield"; }
			}
			else { arrEmails[i].className = "emailfield"; }
		}
		
	// check any other phone fields for errors
	var arrPhones = getElementsByClassName(document.getElementById(theForm.id), "*", "phonefield");
	
	frmLength = arrPhones.length;

	for (i=0; i<frmLength;i++)
		{
			if(arrPhones[i].value != "")
			{
				// check to make sure phone numbers are 10 digits
				strPhoneNumber = arrPhones[i].value;
				strPhoneLength = strPhoneNumber.length;
				strNewPhone = "";
				
				if (strPhoneLength >= 10)
				{
					// strip out non-numeric characters
					for(var j=0;j<strPhoneLength;j++)
					{
						if(isDigit(strPhoneNumber.charAt(j)))
						{
							strNewPhone = strNewPhone + strPhoneNumber.charAt(j);
						}
					}
					if (strNewPhone.length != 10)
					{
						// phone number value invalid
						arrPhones[i].className = "phonefield warning";
						returnFlag = false;
						if(firstBlank == -1)
						{
							firstBlank = i;
							strMessage = "Please enter a valid phone number";
						}
					}
					else
					{
						arrPhones[i].className = "phonefield";
						arrPhones[i].value = strNewPhone.substring(0,3) + "-" + strNewPhone.substring(3,6) + "-" + strNewPhone.substring(6,10);
					}
					
				}
				else
				{
					// phone number value too short
					arrPhones[i].className = "phonefield warning";
					returnFlag = false;
					if(firstBlank == -1) {
						firstBlank = i;
						strMessage = "Please enter a valid phone number";
						
					}
				}
			}
		}


	
	if(document.getElementById('sigcheck'))
		{
			if(returnFlag == true)
			{
				if(document.getElementById('sigcheck').checked == false)
				{
					returnFlag = false;
					strMessage = "You must check the checkbox to continue.";
					firstBlank = 1;
				}
			}
		}
		
	if(returnFlag == false)
		{
			alert(strMessage);
			arrReqFields[firstBlank].focus()
		}
		
	return returnFlag;
	}

