/* BEGIN: POP-UP WINDOWS */

function openWindow(strLocation,nbrWidth,nbrHeight) { 
	var strOptions = "location=no,menubar=no,toolbar=no,scrollbars=no,width=" + nbrWidth + ",height=" + nbrHeight;

	var nbrRandom=Math.floor(Math.random()*999);

	var objWindow = window.open(strLocation, String(nbrRandom), strOptions);
	objWindow.focus();

	return true;
}

function openReserveWindow(strLocation,nbrWidth,nbrHeight) { 
	var strOptions = "location=yes,resizable=1,menubar=yes,toolbar=yes,scrollbars=yes,width=" + nbrWidth + ",height=" + nbrHeight;

	var nbrRandom=Math.floor(Math.random()*999);

	var objWindow = window.open(strLocation, String(nbrRandom), strOptions);
	objWindow.focus();

	return true;
}

function setPopUpLinks() {

	var hrefs = document.getElementsByTagName('A');

	for (i in hrefs) { 
		if (hrefs[i].className == 'pop_up') {
			hrefs[i].onclick = function() { window.open(this.href); return false; }
			hrefs[i].onkeypress = function() { window.open(this.href); return false; }
		}
	}
}

/* END: POP-UP WINDOWS */

/* BEGIN: FORM VALIDATION */

function formCheck() {

	if(document.getElementById('contact_name').value == "") {
		alert('Please enter the contact name.');
		document.getElementById('contact_name').focus();
		return false;
	}

	if(document.getElementById('email').value.search(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/) == -1) {
		alert('Please enter your valid email value.');
		document.getElementById('email').focus();
		return false;
	}

	return true;
}

/* END: FORM VALIDATION */

/* BEGIN: FLASH RELATED FUNCTIONS */

//Flash Detect Variables
var flashinstalled = 0;
var flashversion = 0;

function checkFlash(nbrFlashversion) {

	if (nbrFlashversion < 1) {
		/* This Flash detection code was originally written by Peter-Paul Koch at http://www.quirksmode.org/.  He has allowed for this to be freely distributed per his copyright located at http://www.quirksmode.org/about/copyright.html. */

		if (navigator.plugins && navigator.plugins.length) {
			x = navigator.plugins["Shockwave Flash"];
			if (x) {

				flashinstalled = 2;
				if (x.description) {
					y = x.description;
					nbrFlashversion = y.charAt(y.indexOf('.')-1);
				}
			} else {
				flashinstalled = 1;
			}

			if (navigator.plugins["Shockwave Flash 2.0"]) {
				flashinstalled = 2;
				nbrFlashversion = 2;
			}

		} else if (navigator.mimeTypes && navigator.mimeTypes.length) {
			x = navigator.mimeTypes['application/x-shockwave-flash'];
			if (x && x.enabledPlugin) {
				flashinstalled = 2;
			} else {
				flashinstalled = 1;
			}
		}
	}

	if(nbrFlashversion < 8) {

		switch(document.body.id) {
			case "homepage":
				removeFlashElement("homepage_video","content_center");
				document.getElementById("content_center").className="homepage_image";
				break;
		}

		if(getCookie("oldflash") != 1){
			box = confirm("To view the video content on this site, please click \"OK\" to download the latest Flash plugin.  To view the site without video, click \"Cancel\"."); 
			
			if(box == true){window.location="http://www.macromedia.com/go/getflashplayer";}
			
			setCookie("oldflash","1",7,setCookieDomain(),"/");
			setCookie("dialup","1",7,setCookieDomain(),"/");
		}
	}
}

function noVideo(nbrVideo) {

	if(getCookie("dialup") != 1 || getCookie("oldflash") != 1) {	
		var arrVideo = new Array();

		//SWF Names
		arrVideo[0] = "video";
		if (getCookie(arrVideo[nbrVideo]) == 1) {
			if (document.getElementById(arrVideo[nbrVideo])) {getFlashMovieObject(arrVideo[nbrVideo]).SetVariable("makeItStop","1");}
		} else {setCookie(arrVideo[nbrVideo],"1",0,setCookieDomain(),"/");}
	}
}

function getFlashMovieObject(menu) {
  	if (window.document[menu]) {
      		return window.document[menu];
  	}
  	if (navigator.appName.indexOf("Microsoft Internet")==-1) {
    		if (document.embeds && document.embeds[menu]){
      			return document.embeds[menu]; 
		}
  	}
  	else // if (navigator.appName.indexOf("Microsoft Internet")!=-1) 
	{
    		return document.getElementById(menu);
  	}
}

function removeFlashElement(childDiv,parentDiv) {
  
  	if(document.getElementById(childDiv)){
		
		var objParent = document.getElementById(parentDiv);

		var objChild = document.getElementById(childDiv);
  
		objParent.removeChild(objChild);
	}
}

/* END: FLASH RELATED FUNCTIONS */

/* BEGIN: SPEED DETECT */

function CurrentTime() {
	time = new Date();
	return time.getTime();
}

function returnKBPS(kbps){
	return kbps;
}

function GetKBPS(ST,section) {
	ET = CurrentTime();
	Factor	= 1000;
	DT = ((ET - ST)/Factor);
	DataSize = 29;
	kbps1    = (DataSize/DT);
	kbpsA    = ((kbps1*8)*10*1.02);
	kbyteA   = ((DataSize*10)/DT);
	kbps     = (Math.round(kbpsA)/10);
	kbyte    = (Math.round(kbyteA)/10);

	if (getCookie("dialup") == 1 || kbps <= 80) {

		switch(section) {
			case 1:
				removeFlashElement("homepage_video","content_center");
				document.getElementById("content_center").className="homepage_image";
			break;
		} 
		setCookie("dialup","1",7,setCookieDomain(),"/");
	}
}

/* END: SPEED DETECT */

/* BEGIN: COOKIE FUNCTIONS */

function getCookie(strName) {
	var nbrStart = document.cookie.indexOf(strName + "=");
	var nbrLength = nbrStart + strName.length + 1;
	if ((!nbrStart) && (strName != document.cookie.substring(0, strName.length))) {
		return null;
	}
	if (nbrStart == -1) return null;
	var nbrEnd = document.cookie.indexOf(';', nbrLength);
	if (nbrEnd == -1) nbrEnd = document.cookie.length;
	return unescape(document.cookie.substring(nbrLength, nbrEnd));
}

function setCookie(strName,strValue,strDuration,strDomain,strPath) {

	var strCookie="";

	if (strDuration == 0) {strCookie=strName+"="+escape(strValue)+";DOMAIN="+strDomain+";PATH="+strPath;} else {strCookie=strName+"="+escape(strValue)+";EXPIRES="+getExpiryDate(strDuration)+";DOMAIN="+strDomain+";PATH="+strPath;}

	document.cookie=strCookie;

	if(!getCookie(strName)){
		return false;
	}
	else{
		return true;
	}
}

function deleteCookie(strName) {setCookie(strName,"",-1,setCookieDomain(),"/");}

function getExpiryDate(intDays) {

	var strUTC; //This will hold the UTC value

	strToday = new Date(); //Get the current date.
	strToday.setTime(strToday.getTime() + 3600000*24*intDays); //Add the number of days to keep alive
	strUTC = strToday.toUTCString(); //Convert the UTC back to a string.

	return strUTC; //Return the date.
}

function setCookieDomain() {
	var strDomain = document.domain;
	
	strDomain.replace('www.','');

	return '.'+strDomain;
}

/* END: COOKIE FUNCTIONS */

//v1.0
//Copyright 2006 Adobe Systems, Inc. All rights reserved.
function AC_AddExtension(src, ext)
{
  if (src.indexOf('?') != -1)
    return src.replace(/\?/, ext+'?'); 
  else
    return src + ext;
}

function AC_Generateobj(objAttrs, params, embedAttrs) 
{ 
  var str = '<object ';
  for (var i in objAttrs)
    str += i + '="' + objAttrs[i] + '" ';
  str += '>';
  for (var i in params)
    str += '<param name="' + i + '" value="' + params[i] + '" /> ';
  str += '<embed ';
  for (var i in embedAttrs)
    str += i + '="' + embedAttrs[i] + '" ';
  str += ' ></embed></object>';

  document.write(str);
}

function AC_FL_RunContent(){
  var ret = 
    AC_GetArgs
    (  arguments, ".swf", "movie", "clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"
     , "application/x-shockwave-flash"
    );
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_SW_RunContent(){
  var ret = 
    AC_GetArgs
    (  arguments, ".dcr", "src", "clsid:166B1BCA-3F9C-11CF-8075-444553540000"
     , null
    );
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);
}

function AC_GetArgs(args, ext, srcParamName, classid, mimeType){
  var ret = new Object();
  ret.embedAttrs = new Object();
  ret.params = new Object();
  ret.objAttrs = new Object();
  for (var i=0; i < args.length; i=i+2){
    var currArg = args[i].toLowerCase();    

    switch (currArg){	
      case "classid":
        break;
      case "pluginspage":
        ret.embedAttrs[args[i]] = args[i+1];
        break;
      case "src":
      case "movie":	
        args[i+1] = AC_AddExtension(args[i+1], ext);
        ret.embedAttrs["src"] = args[i+1];
        ret.params[srcParamName] = args[i+1];
        break;
      case "wmode":
	ret.params[args[i]] = args[i+1];
	break;
      case "onafterupdate":
      case "onbeforeupdate":
      case "onblur":
      case "oncellchange":
      case "onclick":
      case "ondblClick":
      case "ondrag":
      case "ondragend":
      case "ondragenter":
      case "ondragleave":
      case "ondragover":
      case "ondrop":
      case "onfinish":
      case "onfocus":
      case "onhelp":
      case "onmousedown":
      case "onmouseup":
      case "onmouseover":
      case "onmousemove":
      case "onmouseout":
      case "onkeypress":
      case "onkeydown":
      case "onkeyup":
      case "onload":
      case "onlosecapture":
      case "onpropertychange":
      case "onreadystatechange":
      case "onrowsdelete":
      case "onrowenter":
      case "onrowexit":
      case "onrowsinserted":
      case "onstart":
      case "onscroll":
      case "onbeforeeditfocus":
      case "onactivate":
      case "onbeforedeactivate":
      case "ondeactivate":
      case "type":
      case "codebase":
        ret.objAttrs[args[i]] = args[i+1];
        break;
      case "width":
      case "height":
      case "align":
      case "vspace": 
      case "hspace":
      case "class":
      case "title":
      case "accesskey":
      case "name":
      case "id":
      case "tabindex":
        ret.embedAttrs[args[i]] = ret.objAttrs[args[i]] = args[i+1];
        break;
      default:
        ret.embedAttrs[args[i]] = ret.params[args[i]] = args[i+1];
    }
  }
  ret.objAttrs["classid"] = classid;
  if (mimeType) ret.embedAttrs["type"] = mimeType;
  return ret;
}
/* END ADOBE CODE */
/* CONTACT FORM VALIDATOR */
function contactCheck() {
	if(document.contactform.email.value.search(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/) == -1){
		alert('Please enter a valid email value.');
		return false;
	}
	if(document.contactform.first.value == "") {
		alert('Please enter your name.');
		return false;
	}
	if(document.contactform.last.value == "") {
		alert('Please enter your name.');
		return false;
	}

	if(document.contactform.zip.value == "") {
		alert('Please enter your zip code.');
		return false;
	}

	if(document.contactform.phone.value == "") {
		alert('Please enter a phone number.');
		return false;
	}

	return true;
}
/* END CONTACT FORM VALIDATOR */


