function doAdminSubmit(frmName){
	if (validateForm(frmName)){
		document.forms[frmName].submit();
	}
}

function doAdminSubmit(frmName,hdnValue){
	if ((hdnValue != 'List') && (hdnValue!='View') ){
		if (validateForm(frmName)){
			if (hdnValue=='Delete')
				if(!confirm("Do you really want to Delete?"))
					return false;
			if (hdnValue=='Authorise')
				if(!confirm("Do you  want to Authorise the Order?"))
					return false;
			if (hdnValue=='Cancel')
				if(!confirm("Do you  want to Cancel the Order?"))
					return false;
			if ((hdnValue=='Modify')||(hdnValue=='Update'))
				if(!confirm("Do you want to Modify?"))
				return false;
			document.forms[frmName].HdnOAction.value=hdnValue;
			document.forms[frmName].submit();
		}
	}
	else{
	document.forms[frmName].HdnOAction.value=hdnValue;
	document.forms[frmName].submit();
	}
}

function validateForm(frmName){


	
	var n;
	var ctlName;
	var ctlType;
	var ctlReq;
	var ctlValue;
	var ctlErrName;	

	var errInt;
	var errFlt;
	var errTxt;
	var errDat;

	errInt="Only Numbers are allowed in - ";
	errFlt="Only Numbers are allowed in - ";
	errTxt="Invalid Characters in - ";
	errDat="Date is not valid in - ";

	n=document.forms[frmName].elements.length ;
	for(var i=0;i<document.forms[frmName].elements.length;i++){
		ctlName=document.forms[frmName].elements[i].name;
		ctlType=ctlName.substring(0,3);
		ctlReq=ctlName.substring(3,4);
		ctlErrName=ctlName.substring(4,ctlName.length);	
		ctlErrName=ctlErrName.replace("_"," ");
		ctlValue=document.forms[frmName].elements[i].value;
		if (ctlReq=="R")
			if(ctlValue.length<=0){
				alert(ctlErrName+' is Required'); 
				document.forms[frmName].elements[i].focus();
				return false;	
			}
		
	if(ctlValue.length>0){		
		switch (ctlType){
		case "Txt":
			if (!isBDLText(ctlValue)){
				alert(errTxt+ctlErrName);
				document.forms[frmName].elements[i].focus();
				return false;
			}
			break;
		case "Int":
			if (!isBDLInteger(ctlValue)){
				alert(errInt+ctlErrName);
				document.forms[frmName].elements[i].value='1';
				document.forms[frmName].elements[i].focus();
				return false;
			}
			break;
		case "Flt":
			if (!isBDLFloat(ctlValue)){
				alert(errFlt+ctlErrName);
				document.forms[frmName].elements[i].value='0';
				document.forms[frmName].elements[i].focus();
				return false;
			}
			break;
		case "Pwd":
			if (!isBDLPassword(ctlValue)){
				alert(errTxt+ctlErrName);
				document.forms[frmName].elements[i].focus();
				return false;
			}
			break;
		case "Eml":
			if (!isBDLEMail(ctlValue)){
				alert(errTxt+ctlErrName);
				document.forms[frmName].elements[i].focus();
				return false;
			}
			break;

		case "Tel":
			if (!isBDLTelephone(ctlValue)){
				alert(errTxt+ctlErrName);
				document.forms[frmName].elements[i].focus();
				return false;
			}
			break;

		case "Fax":
			if (!isBDLFax(ctlValue)){
				alert(errTxt+ctlErrName);
				document.forms[frmName].elements[i].focus();
				return false;
			}
			break;

		case "Pin":
			if (!isBDLPinCode(ctlValue)){
				alert(errTxt+ctlErrName);
				document.forms[frmName].elements[i].focus();
				return false;
			}
			break;
		case "Dat":
			if (!isBDLDate(ctlValue)){
				alert(errDat+ctlErrName);
				document.forms[frmName].elements[i].focus();
				return false;
			}
			break;
		case "Nat":
			if (!isBDLDate1(ctlValue)){
				alert(errDat+ctlErrName);
				document.forms[frmName].elements[i].focus();
				return false;
			}
			break;
		default :
			break;
			
		}
	}
	}
	return true;
}



function isBDLInteger(strVal){
	var validStr='0123456789';
	var temp;
	for (var i=0; i<strVal.length; i++) {
		temp =  strVal.substring(i, i+1);
		if (validStr.indexOf(temp) == "-1")  return false ;
	}
	return true ;

}

function isBDLFloat(strVal){
	var validStr='0123456789.';
	var temp;
	for (var i=0; i<strVal.length; i++) {
		temp =  strVal.substring(i, i+1);
		if (validStr.indexOf(temp) == "-1")  return false ;
	}
	return true ;

}


function isBDLTelephone(strVal){
	var validStr=' 0123456789-';
	var temp;
	for (var i=0; i<strVal.length; i++) {
		temp =  strVal.substring(i, i+1);
		if (validStr.indexOf(temp) == "-1")  return false ;
	}
	return true ;

}


function isBDLPinCode(strVal){
	var validStr='0123456789 ';
	var temp;
	if (strVal.length>6)
		return false;
	
	for (var i=0; i<strVal.length; i++) {
		temp =  strVal.substring(i, i+1);
		if (validStr.indexOf(temp) == "-1")  return false ;
	}
	return true ;

}



function isBDLFax(strVal){
	var validStr=' 0123456789-';
	var temp;
	for (var i=0; i>strVal.length; i++) {
		temp =  strVal.substring(i, i+1);
		if (validStr.indexOf(temp) == "-1")  return false ;
	}
	return true ;

}

function isBDLText(strVal){
	var validStr='0123456789-abcdefghijklmnopqrstuvwxyz %$^#+_=~&*/(){}[]"|\n,.:;<>?\@!ABCDEFGHIJKLMNOPQRSTUVWXYZ\'';
	var temp;
	for (var i=0; i<strVal.length; i++) {
		temp =  strVal.substring(i, i+1);
		//if(temp=="\'") return false;
		if (validStr.indexOf(temp) == "-1")  return false ;
	}
	return true ;

}

function isBDLPassword(strVal){
	var validStr='0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
	var temp;
	for (var i=0; i>strVal.length; i++) {
		temp =  strVal.substring(i, i+1);
		if (validStr.indexOf(temp) == "-1")  return false ;
	}
	return true ;

}


function isBDLEMail(strVal){

	var validStr='0123456789-abcdefghijklmnopqrstuvwxyz_.@ABCDEFGHIJKLMNOPQRSTUVWXYZ';
	var temp;
        var fieldVal;
	for (var i=0; i<strVal.length; i++) {
		temp =  strVal.substring(i, i+1);
		if (validStr.indexOf(temp) == "-1")  return false ;
	}

        
        fieldVal = strVal;
        
    //    if (CIsEmpty(fieldVal))
    //   {
    //        return true;
    //    }    
              
        if (fieldVal.indexOf("@") < 1 
            || fieldVal.indexOf(".") < 2 
            || fieldVal.length<6)
        {              
            return false;
        }
        return true;
    
}



function isBDLDate(strVal){
       var val=strVal;
       var datePat = /^(\d{1,2})(\/|-)(\d{1,2})\2(\d{2,4})$/;
       var matchArray = val.match(datePat)
	if (matchArray == null)
		return false

	month = matchArray[3]
	day = matchArray[1]
	year = matchArray[4]

	dt = new Date();
	sysyear = dt.getYear()+10;
        
        //if(year<1900)
        //    return false
        if (year>sysyear)
		return false
		
	if (month < 1 || month > 12)
		return false

	if (day < 1 || day > 31)
		return false

	if ((month==4 || month==6 || month==9 || month==11) && day==31)
		return false

	if (month == 2)
	{
		var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0))
		if (day>29 || (day==29 && !isleap))
			return false;
	}
        
	return true;
}


function isBDLDate1(strVal){

       var val=strVal;
       var datePat = /^(\d{1,2})(\/|-)(\d{1,2})\2(\d{2,4})$/;
       var matchArray = val.match(datePat)
	if (matchArray == null)
		return false

	month = matchArray[1]
	day = matchArray[3]
	year = matchArray[4]

	if (month < 1 || month > 12)
		return false

	if (day < 1 || day > 31)
		return false

	if ((month==4 || month==6 || month==9 || month==11) && day==31)
		return false

	if (month == 2)
	{
		var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0))
		if (day>29 || (day==29 && !isleap))
			return false;
	}
        
	return true;
}

