//=============================================================================
// MSDG CODE Nov 1, 2007.
//-----------------------------------------------------------------------------

function countWords(objField) {
	var fullStr = objField.value + " ";
	var initial_whitespace_rExp = /^[^A-Za-z0-9]+/gi;
	var left_trimmedStr = fullStr.replace(initial_whitespace_rExp, "");
	var non_alphanumerics_rExp = rExp = /[^A-Za-z0-9]+/gi;
	var cleanedStr = left_trimmedStr.replace(non_alphanumerics_rExp, " ");
	var splitString = cleanedStr.split(" ");
	var word_count = splitString.length -1;
	if (fullStr.length <2) word_count = 0;
	return word_count;
}

//-----------------------------------------------------------------------------

function radioFieldValue(radioField) {   
	var checkedButton = "";

	for (var i=0; i< radioField.length; i++) {      
		if (radioField[i].checked) {
			checkedButton = radioField[i].value;
		}
	}
	
	return checkedButton;
}

//-----------------------------------------------------------------------------

function checkValidDate(intYear, intMonth, intDay) {
	var ndt = new Date(intYear, intMonth-1, intDay);

	var blnDTOk = true;
	if(ndt.getMonth() + 1 != intMonth) blnDTOk = false;

	return blnDTOk;		
}

//-----------------------------------------------------------------------------

function checkNumber(strVal) {
	return (strVal == parseFloat(strVal))
}

//-----------------------------------------------------------------------------

function checkInteger(strVal) {
	return (strVal == parseInt(strVal))
}

//-----------------------------------------------------------------------------

function checkAlphanumeric(strVal) {
	var blnOk = true;

	var compareString = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890&- ";

	for (var c=0; c<strVal.length; c++) {  
		if (compareString.indexOf(strVal.charAt(c)) < 0) {  
			blnOk = false;
			break;
		}
	}

	return blnOk;
}

//-----------------------------------------------------------------------------

function checkEmail(sVal) {
	var bOk = true;

	var aAreas = sVal.split("@");

	if (aAreas.length != 2) {
		bOk = false;
	}

	if (bOk) {
		var aParts = aAreas[0].split(".");
				
		var compareString = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890-_&";

		for (i=0; i<aParts.length; i++) {
			var minLength = 1;
			if (aParts[i].length < minLength) {
				bOk = false;
			} else {
				for (var c=0; c<aParts[i].length; c++) {  
					if (compareString.indexOf(aParts[i].charAt(c)) < 0) {  
						bOk = false;
						break;
						break;
					}
				}
			}
		}
	}

	if (bOk) {
		var aParts = aAreas[1].split(".");
				
		if (aParts.length < 2) {
			bOk = false;
		} else {
			var compareString = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890-";

			for (i=0; i<aParts.length; i++) {
				if (i == aParts.length - 1) {
					var minLength = 2;
				} else {
					var minLength = 1;
				}
				if (aParts[i].length < minLength) {
					bOk = false;
				} else {
					for (var c=0; c<aParts[i].length; c++) {  
						if (compareString.indexOf(aParts[i].charAt(c)) < 0) {  
							bOk = false;
							break;
							break;
						}
					}
				}
			}
		}
	}

	return !bOk;
}

//-----------------------------------------------------------------------------

function checkPostalCode_CA(objField1, objField2) {
	if (!objField2) {
		return checkPostalCode(objField1.value, "CA");
	} else {
		return checkPostalCode(objField1.value + " " + objField2.value, "CA");
	}
}

function checkPostalCode(entry, country) {
	var bOk = true;
	
	switch (country) {
		case "CA":
			var entry = entry.toUpperCase();
			if (entry.length == 6) entry = entry.substring(0, 3) + " " + entry.substring(3);
			if (entry.length == 7) {
				if (  'ABCEGHJKLMNPRSTVXY'.indexOf(entry.charAt(0)) < 0) bOk = false;
				if (          '0123456789'.indexOf(entry.charAt(1)) < 0) bOk = false;
				if ('ABCEGHJKLMNPRSTVWXYZ'.indexOf(entry.charAt(2)) < 0) bOk = false;
				if (                  ' -'.indexOf(entry.charAt(3)) < 0) bOk = false;
				if (          '0123456789'.indexOf(entry.charAt(4)) < 0) bOk = false;
				if ('ABCEGHJKLMNPRSTVWXYZ'.indexOf(entry.charAt(5)) < 0) bOk = false;
				if (          '0123456789'.indexOf(entry.charAt(6)) < 0) bOk = false;
			} else {
				bOk = false;
			}
			break;
		case "US":
			if (entry != parseInt(entry)) {
				bOk = false;
			} else if (entry < 10000) {
				bOk = false;
			}
			break;
		case "":
			bOk = false;
			break;
		default:
			break;
	}

	return !bOk;

}

//-----------------------------------------------------------------------------

function trim(strObj) {
	var newValue = trimStr(strObj.value);
	strObj.value = newValue;
	return newValue;
}

function trimStr(str) {
	var newStr = "" + str;

	var intChar = 0;
	var intLen = newStr.length - 1;
	var intPos1 = -1;
	for (var x=0; x<=intLen; x++) {
		if ((newStr.charCodeAt(x) == 32 || (newStr.charCodeAt(x) == 10 || newStr.charCodeAt(x) == 13)) && intChar == 0)
			intPos1 = x;
		else
			intChar++;
	}
	if (intPos1 >= 0) newStr = newStr.substr(intPos1 + 1, intLen);

	var intChar = 0;
	var intLen = newStr.length - 1;
	var intPos2 = -1;
	for (var y=intLen; y>=0; y--) {
		if ((newStr.charCodeAt(y) == 32 || (newStr.charCodeAt(y) == 10 || newStr.charCodeAt(y) == 13)) && intChar == 0)
			intPos2 = y;
		else
			intChar++;
	}
	if (intPos2 > 0) newStr = newStr.substr(0, intPos2);
		
	return newStr;
}

//-----------------------------------------------------------------------------

function check7DigitPhone(str) {

	var phone = str;
	var newPhone = "";
	
	var blnIs7digits = false;
	
	for(i=0; i<phone.length; i++) {
		if(phone.charCodeAt(i) >= 48 && phone.charCodeAt(i) <=57) {
			newPhone += phone.charAt(i);
		}
	}
	
	if(newPhone.length == 7) {
		blnIs7digits = true;
	}
	
	return blnIs7digits;
}

//-----------------------------------------------------------------------------

function popupWindow(pageURL, pageWidth, pageHeight) {
	popUp = window.open(pageURL, "", "menubar=0,scrollbars=yes,resizable=0,status=0,width=" + pageWidth + ",height=" + pageHeight);
	popUp.focus();
} 
 
//=============================================================================


//=============================================================================
// MACROMEDIA CODE.
//-----------------------------------------------------------------------------

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];
			}
		}
	}
}

function MM_findObj(n, d) { //v4.0
	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 && document.getElementById) x=document.getElementById(n);
	return x;
}

function MM_openBrWindow(theURL, winName, features) { //v2.0
	window.open(theURL, winName, features);
}

function MM_swapImage() { //v3.0
	var i, j=0, x, a=MM_swapImage.arguments;
	document.MM_sr = new Array;
	for (i=0; i<(a.length-2); i+=3) {
		if ((x = MM_findObj(a[i])) != null) {
			document.MM_sr[j++] = x;
			if (!x.oSrc) x.oSrc = x.src;
			x.src = a[i+2];
		}
	}
}

//=============================================================================

