function checkEmail(frmName, itemName, msg)
{
	str=document.forms[frmName].elements[itemName].value;
	var supported = 0;
	var valid     = 0;
	if (window.RegExp) {
		var tempStr = "a";
		var tempReg = new RegExp(tempStr);
		if (tempReg.test(tempStr)) supported = 1;
	}
	if (!supported) 
		valid=(str.indexOf(".") > 2) && (str.indexOf("@") > 0)
	else{
		var r1 = new RegExp("(@.*@)|(\\.\\.)|(@\\.)|(^\\.)|(.*\")|(.*\\[|\\]|\\)|\\(|\\{|\\}|\\>|\\<|\\,|\\:|\\;|\\')|(.*\x7F)|(.*[\x01-\x20])");
		var r2 = new RegExp("^.+\\@(\\[?)(([a-zA-Z0-9\\-\\.])|([^a-zA-Z0-9]))+\\.([a-zA-Z]{2,3}|[0-9]{1,3})(\\]?)$");

		valid= (!r1.test(str) && r2.test(str));
		}

	if (!valid) {
		alert("Invalid "+msg);
		document.forms[frmName].elements[itemName].focus();
		return false;
		}
	return true;
}

function checkInt(frmName, itemName, msg)
{
	if (document.forms[frmName].elements[itemName].value.length){
		var val;
		val=parseInt(document.forms[frmName].elements[itemName].value.replace(/,/g, ""));
		if (! isNaN(val)){
			document.forms[frmName].elements[itemName].value=val;
		}
		else{
			alert('Invalid '+msg);
			document.forms[frmName].elements[itemName].focus();
			document.forms[frmName].elements[itemName].select();
			return false;
		}
	}
	return true;
}

function checkNotEmpty(frmName, itemName, msg)
{
	if (document.forms[frmName].elements[itemName].value.length == 0){
		alert(msg);
		document.forms[frmName].elements[itemName].focus();
		document.forms[frmName].elements[itemName].select();
		return false;
	}
	return true;
}

function check_required(field, field_name){
	if (!field.value.length){	
		alert('Please enter '+field_name+'.');
		field.focus();
		return false;
	}
	else
		return true;
}

function check_numeric(field, field_name){
	field.value=field.value.replace(/\s+$/g,'');
	field.value=field.value.replace(/^\s+/g,'');
	if (field.value.match(/\D/)){	
		alert('Please enter a number into '+field_name+'.');
		field.focus();
		return false;
	}
	else
		return true;
}

function check_email(field, field_name){
	if (!field.value.match(/\w+@\w+\.\w+/)){	
		alert('Please enter valid '+field_name+'.');
		field.focus();
		return false;
	}
	else
		return true;
}

function check_passwords(field1, field2){
	if (field1.value != field2.value){	
		alert('Verify password does not match. Please enter and verify the password again.');
		field2.focus();
		return false;
	}
	else
		return true;
}

function check_price(field, field_name){
	field.value=field.value.replace(/\s+$/g,'');
	field.value=field.value.replace(/^\s+/g,'');
	if (field.value.match(/[^0-9,\.\$\,]/)||(parseInt(field.value.replace(/[\.\$\,]/g,''))==0)||(field.value.replace(/[\.\$\,]/g,'')=='')){	
		alert('Please enter a valid '+field_name+'.');
		field.focus();
		return false;
	}
	else
		return true;
}

function check_price_quiet(field){
	field.value=field.value.replace(/\s+$/g,'');
	field.value=field.value.replace(/^\s+/g,'');
	
	if (field.value.match(/[^0-9,\.\$\,]/)||(parseInt(field.value.replace(/[\.\$\,]/g,''))==0)||(field.value.replace(/[\.\$\,]/g,'')=='')){	
		return false;
	}
	else
		return true;
}

function check_default(field,field_name) {
	if (!eval(field.name+'_click')) {
		alert('Please enter a valid '+field_name+'.');
		field.focus();
		return false;
	} else return true;

}

function empty_default(field,field_name) {
	if (!eval(field.name+'_click')) {
		field.value = '';
		eval(field.name+'_click'+' = 1');
	}
}
function checkDate(frmName, itemName, msg, month, day, year)
{
	if (document.forms[frmName].elements[itemName].value.length != 0)
	{
		var d = new Date (year, month-1, day);
		if (	d.getFullYear() != year
			||	(d.getMonth()+1) != month
			||	d.getDate() != day
			||	year < 1753			//SQL Server datetime limits
			||	year > 9999)
		{
			alert("Invalid "+msg+"!");
			document.forms[frmName].elements[itemName].focus();
			return false;
		}
	}
	return true;
}

function validateDateEx(date_element, month, day, year) {
	curr_month = month-1;
	curr_year = (year < 1000)?parseInt(year+2000):year;
	if (curr_month < 0 || curr_month > 12) return false;
	if (day < 1 || day > 31) return false;
	if (year > 2999 || year < 1990) return false;
	end_day = 31;
	check_date = new Date(curr_year,curr_month,end_day);
	while (curr_month != check_date.getMonth()) {
		check_date = new Date(curr_year,curr_month,--end_day);	
	}
	curr_day = (day < end_day)?day:end_day;
	if (curr_day!=day) {
		date_element.value = (parseInt(curr_month++,10)<10?'0':'')+curr_month+'/'+curr_day+'/'+curr_year;
	}
	return true;
}

function checkDateWithValidate(itemName,msg) {
   		date_obj = document.getElementById(itemName);
   		if(date_obj.value.match(/^([^\d])/)||date_obj.value.match(/([^\d])$/)) {
   			alert(msg);
   			return false;
   		}   		
   		re = /(\d+)/g; 
		month = 0;
		day = 0;
		year = 0;
		i = 0;
   		while (re.lastIndex < date_obj.value.length) {   			
   			myArray = re.exec(date_obj.value);
			if (myArray) {
				if (i==0) month = parseInt(myArray[1],10);
				if (i==1) day = parseInt(myArray[1],10);
				if (i==2) year = parseInt(myArray[1],10);	
			} else {
				i = 3;
			}
			if (i > 2) break;	
	  		i++;
   		}
   		re.lastIndex = 0;
   		re = null;
   		
   		if (month==0||day==0||year==0||!validateDateEx(date_obj, month, day, year)) {
   			alert(msg);
   			date_obj.focus();
   			return false;
   		}
		return true;
	}

function CurrencyPopup(usd_direction) {
	CurrencyWindow = window.open ('', 'CurrencyWindow', 'toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=0,resizable=1,height=170,width=600');
    CurrencyWindow.focus();
    CurrencyWindow.location.href = 'http://www.xe.com/ecc/input.cgi?Template=sw&'+usd_direction+'=USD';
 } 	
 
 
 function CurrencyPopupWAmount (amount){
	CurrencyWindow = window.open ('', 'CurrencyWindow', 'toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=0,resizable=1,height=170,width=600');
    CurrencyWindow.focus();
    CurrencyWindow.location.href = 'http://www.xe.com/ecc/input.cgi?Template=sw&From=USD&amount='+amount;
 } 	
