//to count inserted text
function textCounter(field, countfield, maxlimit) 
{
	if (field.value.length > maxlimit) // if too long...trim it!
		//alert('called');
		field.value = field.value.substring(0, maxlimit);
		// otherwise, update 'characters left' counter
	else 
		countfield.value = maxlimit - field.value.length;
}
function textCounter1(field, countfield, maxlimit) 
{
	if (field.value.length > maxlimit) // if too long...trim it!
		//alert('called');
		field.value = field.value.substring(0, maxlimit);
		// otherwise, update 'characters left' counter
	else 
		countfield.value = maxlimit - field.value.length;
}


//Trim
function ltrim ( s )
{
	return s.replace( /^\s*/, "" )
}

function rtrim ( s )
{
	return s.replace( /\s*$/, "" );
}

function trim ( s )
{
	return rtrim(ltrim(s));
}


	function selectdatabasevalue(toselect,cmb) //compares value not text
	{
		for(i=0;i<eval(cmb).length;i++)
		{
			if(eval(cmb).options[i].value==toselect)
			{
				eval(cmb).selectedIndex = i;
			}
		}
	}


//email validate
function validateEmail(str) {
  var reg1 = /(@.*@)|(\.\.)|(@\.)|(\.@)|(^\.)/; // not valid
  var reg2 = /^.+\@(\[?)[a-zA-Z0-9\_\-\.]+\.([a-zA-Z]{2,5}|[0-9]{1,5})(\]?)$/; // valid
  if (!reg1.test(str) && reg2.test(str)) { // if syntax is valid
    return true;
  }
  return false;
}

function checkdate(dateField,forfield)
{
// ------------- Checking for date in MM/DD/YYYY format ---------------------
	var expirydate=""
	var date=""
	var month=""
	var year=""
	expirydate = eval(dateField).value
	month=expirydate.substring(0,expirydate.indexOf("/"));

	date=expirydate.substring((expirydate.indexOf("/")+1),expirydate.indexOf("/",(expirydate.indexOf("/")+2)));
	year=expirydate.substring((expirydate.lastIndexOf("/")+1));
	if(expirydate.indexOf("/")==-1)
	{
		alert("Enter valid "+ forfield)
		eval(dateField).focus();
			return false;
	}
	/*alert(date)
	alert(month)
	alert(year)
	if(date<10)
		date="01";
	if(month<10)
		month="01";
	alert(month+" , "+date)
	*/
	if(isNaN(date) || isNaN(month) || isNaN(year))
	{
		alert("Enter valid "+forfield);
		eval(dateField).focus();
		return false;
	}
	if(date > 31 || date < 1)
	{
		alert("Enter valid "+forfield);
		eval(dateField).focus();
		return false;
	}
	if(month > 12 || month < 1)
	{
		alert("Enter valid "+forfield);
		eval(dateField).focus();
		return false;
	}
	if(year < 1850 || year > 5002)
	{
		alert("Enter valid "+forfield);
		eval(dateField).focus();
		return false;
	}
	if(month == 4 || month == 6 || month == 9 || month == 11)
	{
		if(date > 30)
		{
			alert("Enter valid "+forfield);
			eval(dateField).focus();
			return false;
		}
	}
	if(month == 2)
	{
//----------- checking for leap year-------------
		var lyear=year-1848
		if((lyear % 4 == 0) && (date<30))
		{
			if(date > 29)
			{
				alert("Enter valid "+forfield);
				eval(dateField).focus();
				return false;
			}
			//alert("leap year")
		}
		else if(date > 28)
		{
			alert("Enter valid "+forfield);
			eval(dateField).focus();
			return false;
		}
	}
	return true;
}


//check date validation



function selectdatabasevalue(toselect,cmb)
{
	var i;
	for(i=0;i<eval(cmb).length;i++)
	{
		if(eval(cmb).options[i].value==toselect)
		{
//			eval(cmb).selectedIndex = i;
			eval(cmb).options[i].selected = true;
		}
	}
}
function isDate(dateStr) 
{
	if(dateStr.charAt(4)!='-' || (dateStr.charAt(6)!='-' && dateStr.charAt(7)!='-' ))
	{
		alert("Enter date only in yyyy-mm-dd format.");
		return false;
	}
	if(isNaN(dateStr.substr(0,4)))
	{
		alert("Enter valid year");
		return false;
	}
	year = dateStr.substr(0,4);
	var dashFirstIndex = 5
	var dashSecondIndex = dateStr.substr(5).indexOf('-') + 5;
	
	if(isNaN(dateStr.substr(5,dashSecondIndex-dashFirstIndex)))
	{
		alert("Enter valid month");
		return false;
	}
	month = dateStr.substr(5,(dashSecondIndex-dashFirstIndex));
	
	if(isNaN(dateStr.substr(dashSecondIndex+1)))
	{
		alert("Enter valid day");
		return false;
	}
	day = dateStr.substr(dashSecondIndex+1);
	if (month < 1 || month > 12)
	{ 
		// check month range
		alert("Month must be between 1 and 12.");
		return false;
	}

	if (day < 1 || day > 31) 
	{
		alert("Day must be between 1 and 31.");
		return false;
	}

	if ((month==4 || month==6 || month==9 || month==11) && day==31) 
	{
		alert("Month "+month+" doesn`t have 31 days!")
		return false;
	}

	if (month == 2)
	{
	 // check for february 29th
		var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
		if (day > 29 || (day==29 && !isleap))
		{
			alert("February " + year + " doesn`t have " + day + " days!");	
			return false;
		}
	}

return true; // date is valid
}





//-----------Checkdate


