	function popup_window(url){ 
		var ah=screen.availHeight-30;
		var aw=screen.availWidth-10;
		
		var xc = (aw - 500) / 2;
		var yc = (ah - 500) / 2;
		new_window = window.open(url, 'window_name', 'toolbar=0, menubar=0, resizable=0, scrollbars=1, dependent=0, status=0, width=500, height=500, left=' + xc + ', top=' + yc)
	}

function fncValidateDate(field,caption,ret_field)

{
if(ret_field==null)
ret_field=field;
	var inputstr=field.value;

	var len=inputstr.length;

	if(len==0)

	return true;

	var d1=-1;

	var d2=-1;

	for(i=0;i<len;i++)

	{

		var c=inputstr.substr(i,1);

		if((c!="/")&&(c!="-")&&(c!=" "))

		{

			if(isNaN(c))

			{

				alert(caption+" contains non numeric values");

				ret_field.focus();

				ret_field.select();

				return false;

			}

		}



	}





	if(len<=10)

	{

		d1=inputstr.indexOf("/");

		d2=inputstr.lastIndexOf("/");

	

		if(d1==-1 && d1==d2)

		{

			d1=inputstr.indexOf("-");

			d2=inputstr.lastIndexOf("-");

		

			if(d1==-1 && d1==d2)

			{

				d1=inputstr.indexOf(" ");

				d2=inputstr.lastIndexOf(" ");

			

				if(d1==-1 && d1==d2)

				{

					if(len==8)

					{

						var dd=parseInt(inputstr.substring(0,2),10);

						var mm=parseInt(inputstr.substring(2,4),10);

						var yyyy=parseInt(inputstr.substring(4,inputstr.length),10);

						//alert(dd+" day "+mm+" of "+yyyy);

					}	

					else

					{

						alert(caption+" should be of the Format dd/mm/yyyy");

						ret_field.focus();

						//ret_field.select();

						return false;

					}

				}

			}

		}

	}

	else

	{

		alert(caption+" should be of the format dd/mm/yyyy");

		ret_field.focus();

		//ret_field.select();

		return false;

	}

	

	if(d1!=-1)

	{

		var dd=parseInt(inputstr.substring(0,d1),10);

		var mm=parseInt(inputstr.substring(d1+1,d2),10);

		var yyyy=parseInt(inputstr.substring(d2+1,inputstr.length),10);

		//alert(dd+" day "+mm+" of "+yyyy);

	}

	

	if(isNaN(dd)||isNaN(mm)||isNaN(yyyy))

	{

		alert(caption+" contains non numeric values");

		ret_field.focus();

		//ret_field.select();

		return false;

	}

	if(mm<1||mm>12)

	{

		alert(caption+" - Months must be between 01(January) and 12 (December)");

		ret_field.focus();

		//ret_field.select();

		return false;

	}

	else

	{

		if(mm==1||mm==3||mm==5||mm==7||mm==8||mm==10||mm==12)

		{

			if(dd<1||dd>31)

			{

				alert(caption+" - Days must be between 01 and 31");

				ret_field.focus();

			//	ret_field.select();

				return false;

			}

		}

		else if(mm==4||mm==6||mm==9||mm==11)

		{

			if(dd<1||dd>30)

			{

				alert(caption+" - Days must be between 01 and 30");

				ret_field.focus();

			//	ret_field.select();

				return false;

			}

		}

		else if(mm==2)

		{

			if(yyyy%100==0)

			{

				if(dd<1||dd>29)

				{

					alert(caption+" - Days must be between 01 and 29");

					ret_field.focus();

				//	ret_field.select();

					return false;

				}	

			}

		else if(yyyy%4==0)

		{

			if(dd<1||dd>29)

			{

				alert(caption+" - Days must be between 01 and 29");

				ret_field.focus();

				//ret_field.select();

				return false;

			}

		}

		else if(yyyy%4!=0)

		{

			if(dd<1||dd>28)

			{

				alert(caption+" - Days must be between 01 and 28");

				ret_field.focus();

				//ret_field.select();

				return false;

			}

		}

	}

}

	

	if(yyyy<100||yyyy>9999)

	{

		alert(caption+" - Year is not valid");

		ret_field.focus();

		//ret_field.select();

		return false;

	}

	if(dd<10&&mm<10)

	{

		field.value=yyyy+"/0"+mm+"/"+"0"+dd;

	}

	else if(mm<10)

	{

		field.value=yyyy+"/0"+mm+"/"+dd;

	}

	else if(dd<10)

	{

		field.value=yyyy+"/"+mm+"/"+"0"+dd;

	}

	else 

	{

		field.value=yyyy+"/"+mm+"/"+dd;

	}

	return true;

}





function select(field)

{

	field.focus();

	field.select();

}



	function isEmpty(ivar)

	{		

	if(ivar==""||ivar==null)

		{

		return true;

		}

		return false;

	}

function fncValidateBlank(field,caption)

{

	ctr=0;

	str=field.value;

	var l=str.length;

//		alert("Actual Length="+l);

	for(i=l-1;i>=0;i--)

	{

		if((str.charCodeAt(i)==32))

		{ 

			l=l-1;

//			alert("Within for loop:"+l);

		}

		else

		{

		break;

		}

	}

//		alert("Outside Loop1="+l);

	if(l == 0||str==null)

	{

		alert(MSG_LEFT_BLANK+" "+caption);

		field.focus();

		return false;

	}

	else if(l >0)	

	{

		for(i=0;i<=l-1;i++)

		{

			if((str.charCodeAt(i)==32))

			{

				ctr=1;			

//				alert("Ctr="+ctr);

			}

			else

			{

				ctr=0;

	//			alert("Ctr="+ctr);

				break;	

					

			}

			



		}

	}//end of else-if

		

//	alert("Value of Ctr="+ctr);

	

	if(ctr==1)

	{

		alert(MSG_LEFT_BLANK+" "+caption);		

		return false;		

	}

	else

	{

//		alert("Form Submitted");

		return true;

	}

}



	



function fncValidate2Dates(field1,caption1,field2,caption2,opr)

{



	var v1=0;

	var v=0;

	var y=0;

	var mon=new Array(31,0,31,30,31,30,31,31,30,31,30,31);

	var inputstr=field1;



	d1=inputstr.indexOf("/");

	d2=inputstr.lastIndexOf("/");	

	if(d1!=-1)

	{

		var dd=parseInt(inputstr.substring(0,d1),10);

		var mm=parseInt(inputstr.substring(d1+1,d2),10);

		var yyyy=parseInt(inputstr.substring(d2+1,inputstr.length),10);

		//alert(dd+" day "+mm+" of "+yyyy);

	}

	if(yyyy%100==0)

	{

		mon[1]=29;

	}

	else if(yyyy%4==0)

	{

		mon[1]=29;

	}

	else if(yyyy%4!=0)

	{

		mon[1]=28;

	}

	y=(yyyy-1900)*365;

	var y2=parseInt((yyyy-1900)/4);

	var m=0;

	y=y+y2;

//	alert(y2);

	for(i=0;i<mm-1;i++)

	{

		m=m+mon[i];

	}	

	v=y+m+dd;

	v1=v;

	var v2=0;



	y=0;

	

	var mon=new Array(31,0,31,30,31,30,31,31,30,31,30,31);

	var inputstr=field2;



	d1=inputstr.indexOf("/");

	d2=inputstr.lastIndexOf("/");

	if(d1!=-1)

	{

		 dd=parseInt(inputstr.substring(0,d1),10);

		 mm=parseInt(inputstr.substring(d1+1,d2),10);

		 yyyy=parseInt(inputstr.substring(d2+1,inputstr.length),10);

		//alert(dd+" day "+mm+" of "+yyyy);

	}

	if(yyyy%100==0)

	{

		mon[1]=29;

	}

	else if(yyyy%4==0)

	{

		mon[1]=29;

	}

	else if(yyyy%4!=0)

	{

		mon[1]=28;

	}

	y=(yyyy-1900)*365;

	y2=parseInt((yyyy-1900)/4);

	m=0;

	y=y+y2;

	for(i=0;i<mm-1;i++)

	{

		m=m+mon[i];

	}	

	v=y+m+dd;





	v2=v;

//	alert(v1+" "+v2);

//	alert(opr);

	var diff=parseInt(v2)-parseInt(v1);	

	if(opr=="GE")

	{

		if(parseInt(v1)<parseInt(v2))

		{

			alert(caption1+" should be greater than equal to "+caption2);

			return false;

		}

		else

		{

			return true;

		}



		

	}

	

	else if(opr=="GT")

	{



		if(parseInt(v1)<parseInt(v2))

		{

			alert(caption1+" should be greater than "+caption2);

			return false;

		}

		else

		{

			return true;

		}



	}

	else if(opr=="LT")

	{

		if(parseInt(v1)>=parseInt(v2))

		{

			alert(caption1+" should be less than "+caption2);

			return false;

		}

		else

		{

			return true;

		}



	}

	else if(opr=="LE")

	{

		if(parseInt(v1)>parseInt(v2))

		{

			alert(caption1+" should be less than equal to "+caption2);

			return false;			

		}

		else

		{

			return true;

		}



	}

	else if(opr=="EQ")

	{

		if(parseInt(v1)!=parseInt(v2))

		{

			alert(caption1+" should be equal to "+caption2);

			return false;

		}

		else

		{

			return true;

		}



	}

	else if(opr=="NE")

	{

		if(parseInt(v1)==parseInt(v2))

		{

			alert(caption1+" should be not equal to "+caption2);

			return false;

		}

		else

		{

			return true;

		}

	}

	else

	{

		return true;

	}

}

function fncValidateEmail(field,caption){
if((/^[a-zA-Z0-9._-]+@([a-zA-Z0-9.-]+\.)+[a-zA-Z]{2,5}$/).exec(field.value)==null)
	{
		alert(EMAIL_INVALID+caption);
		field.focus();
		field.select();
		return false;
	}
	else
	 return true;
}

//date validation ends here

