function isEmail(email)
  {
    invalidChars = " ~\'^\`\"*+=\\|][(){}$&!#%/:,;";
    for (i=0; i<invalidChars.length; i++) {
        badChar = invalidChars.charAt(i);
        if (email.indexOf(badChar,0) > -1) {
            return false;
        }
    }
    lengthOfEmail = email.length;
    if ((email.charAt(lengthOfEmail - 1) == ".") || (email.charAt(lengthOfEmail - 2) == ".")) {
        return false;
    }
    Pos = email.indexOf("@",1);
    if (email.charAt(Pos + 1) == ".") {
        return false;
    }
    while ((Pos < lengthOfEmail) && ( Pos != -1)) {
        Pos = email.indexOf(".",Pos);
        if (email.charAt(Pos + 1) == ".") {
            return false;
        }
        if (Pos != -1) {
            Pos++;
        }
    }
    atPos = email.indexOf("@",1);
    if (atPos == -1) {
        return false;
    }
    if (email.indexOf("@",atPos+1) != -1) {
        return false;
    }
    periodPos = email.indexOf(".",atPos);
    if (periodPos == -1) {
        return false;
    }
    if (periodPos+3 > email.length) {
        return false;
    }
    return true;
	}
	
function isNumeric(obj,eve)
{
	var k;
	if(window.event)
		k = event.keyCode;
	else
		k=eve.which;
	
	if (k==32 || (k>=48 && k<=57) || k==8 || k==0 )
		return true;
	else
	{
		if(window.event)
			event.returnValue=false;
		else
			return false;
	}
}
function isNumeric_shop(obj,eve)
{
	var k;
	if(window.event)
		k = event.keyCode;
	else
		k=eve.which;
	if ((k>=48 && k<=57) || k==8 || k==0 )
		return true;
	else
	{
		if(window.event)
			event.returnValue=false;
		else
			return false;
	}
}
function IsNumeric(sText)
{
	var ValidChars = "0123456789.,:-_ ";
	var IsNumber=true;
	var Char; 
	for (i = 0; i < sText.length && IsNumber == true; i++) 
	{ 
		Char = sText.charAt(i); 
		if (ValidChars.indexOf(Char) == -1) 
		{
			IsNumber = false;
		}
	}
	return IsNumber;   
}

function isNumeric(obj,eve)
{
	var k;
	if(window.event)
		k = event.keyCode;
	else
		k=eve.which;
	
	if (k>=48 && k<=57)
		return true;
	else
	{
		if(window.event)
			event.returnValue=false;
		else
			return false;
	}
}
function trim(str)
{
	var str1=str.replace(/\S/g,"|");
	var i=str1.indexOf("|")-1;
	var j=str1.lastIndexOf("|")+1;
	var trimStr=str.substring(0,i).replace(/\s/g,"") + str.substring(i+1,j)
	trimStr = trimStr + str.substring(j).replace(/\s/g,"");
	return trimStr;
}

function validateZIP(field)
{
	var valid = "0123456789-";
	var hyphencount = 0;
	if (field.length!=5 && field.length!=10)
	{
		return false;
	}
	for (var i=0; i < field.length; i++)
	{
		temp = "" + field.substring(i, i+1);
		if (temp == "-") hyphencount++;
		if (valid.indexOf(temp) == "-1")
		{
			return false;
		}
		
		if ((hyphencount > 1) || ((field.length==10) && ""+field.charAt(5)!="-"))
		{
			return false;
		}
	}
	return true;
}


function validatenewZIP(field)
{
	var valid = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-";
	var hyphencount = 0;
	
	/*
	if (field.length!=5 && field.length!=10)
	{
		return false;
	}
	*/
	for (var i=0; i < field.length; i++)
	{
		temp = "" + field.substring(i, i+1);
		if (temp == "-") hyphencount++;
		if (valid.indexOf(temp) == "-1")
		{
			return false;
		}
		
	}
	return true;
}
function isValidURL(url)
{
    var RegExp = /^(([\w]+:)?\/\/)?(([\d\w]|%[a-fA-f\d]{2,2})+(:([\d\w]|%[a-fA-f\d]{2,2})+)?@)?([\d\w][-\d\w]{0,253}[\d\w]\.)+[\w]{2,4}(:[\d]+)?(\/([-+_~.\d\w]|%[a-fA-f\d]{2,2})*)*(\?(&?([-+_~.\d\w]|%[a-fA-f\d]{2,2})=?)*)?(#([-+_~.\d\w]|%[a-fA-f\d]{2,2})*)?$/; 
	if(RegExp.test(url))
	{
		return true; 
	}
	else
	{
		return false; 
	}
}

var dFilterStep;
//onKeyDown="javascript:return dFilter (event.keyCode, this, '(###) ###-####');"
function dFilter (key, textbox, dFilterMask)
{
	dFilterNum = dFilterStrip(textbox.value, dFilterMask);
	//alert(key);
	if (key >= 96 && key <= 105) { 
	key=(key-48);
	 	}
	if (key==9)
	{
		return true;
	}
	else if (key==8&&dFilterNum.length!=0)
	{
			dFilterNum = dFilterNum.substring(0,dFilterNum.length-1);
	}
	else if ( ((key>47&&key<58)||(key>95&&key<106)) && dFilterNum.length<dFilterMax(dFilterMask) )
	{
	dFilterNum=dFilterNum+String.fromCharCode(key);
	
	}
	
	
	var dFilterFinal='';
	for (dFilterStep = 0; dFilterStep < dFilterMask.length; dFilterStep++)
	{
		if (dFilterMask.charAt(dFilterStep)=='#')
		{
			if (dFilterNum.length!=0)
			{
				dFilterFinal = dFilterFinal + dFilterNum.charAt(0);
				dFilterNum = dFilterNum.substring(1,dFilterNum.length);
			}
			else
			{
				dFilterFinal = dFilterFinal + "";
			}
		}
		else if (dFilterMask.charAt(dFilterStep)!='#')
		{
			dFilterFinal = dFilterFinal + dFilterMask.charAt(dFilterStep); 			
		}
	}
	textbox.value = dFilterFinal;
	return false;
}

function replace(fullString,text,by)
{
	var strLength = fullString.length, txtLength = text.length;
	if ((strLength == 0) || (txtLength == 0))
		return fullString;
	var i = fullString.indexOf(text);
	if ((!i) && (text != fullString.substring(0,txtLength)))
		return fullString;
	if (i == -1)
		return fullString;
	var newstr = fullString.substring(0,i) + by;
	if (i+txtLength < strLength)
		newstr += replace(fullString.substring(i+txtLength,strLength),text,by);
	return newstr;
}

function dFilterStrip (dFilterTemp, dFilterMask)
{
	dFilterMask = replace(dFilterMask,'#','');
	for (dFilterStep = 0; dFilterStep < dFilterMask.length++; dFilterStep++)
	{
		dFilterTemp = replace(dFilterTemp,dFilterMask.substring(dFilterStep,dFilterStep+1),'');
	}
	return dFilterTemp;
}

function dFilterMax (dFilterMask)
{
	dFilterTemp = dFilterMask;
	for (dFilterStep = 0; dFilterStep < (dFilterMask.length+1); dFilterStep++)
	{
		if (dFilterMask.charAt(dFilterStep)!='#')
		{
			dFilterTemp = replace(dFilterTemp,dFilterMask.charAt(dFilterStep),'');
		}
	}
	return dFilterTemp.length;
}

function validate(form_id,email) {
   var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
   var address = document.forms[form_id].elements[email].value;
   if (trim(address) == '') {
	  $('#'+email).select();
	  return 1;
   } else if(reg.test(address) == false) {
	  $('#'+email).select();
      return 2;
   }
   
   return 3;
}

function CheckField(field_id, error_msg, display_in) {
	var field_value = jQuery.trim($('#'+field_id).val());
	
	if (field_value == '') {
		
		if (display_in != "") {
			$("#"+display_in).html(error_msg);
			
		} else {
			
			alert(error_msg);
		}
		
		$('#'+field_id).select();
		return false;
	}
	return true;
}

function CheckFields(field_id, error_msg) {
	var field_value = jQuery.trim($('#'+field_id).val());
	
	
	if (field_value == '') {
			alert(error_msg);
		
		
		$('#'+field_id).select();
		return false;
		}
	
	return true;
}
function numbersOnly(obj, eve)
{
	var k;
	if(window.event)
		k = event.keyCode;
	else
		k=eve.which;
	
	//alert(k);
	if (k==32 || k==8 || k==0 ) return true;
	if (k>=48 && k<=57) return true;
	else return false;
}

function IsNumeric(sText)
{
	var ValidChars = "0123456789.,:-_ ";
	var IsNumber=true;
	var Char; 
	for (i = 0; i < sText.length && IsNumber == true; i++) 
	{ 
		Char = sText.charAt(i); 
		if (ValidChars.indexOf(Char) == -1) 
		{
			IsNumber = false;
		}
	}
	return IsNumber;   
}
