// PLEASE REFER THE TEST.HTM FILE 
// function for validating whether the value is not null..For all the fields call this function only once.
// set the id also with the name in the input tag of the field.
// Ex <input type="text" name="fieldname" id="First Name" >
// the input parameter has to be the  fieldname(s) .... 
// Ex .. value= document.formname.fieldname(,document.formname.fieldname1,document.formname.fieldname2)
var mousex = 0;
var mousey = 0;
function fnDisp(imgNam,htmlCont)
{
	if (document.getElementById('Layer1').style.visibility == 'hidden')
	{
		e = window.event;
		getMouseXY(e);	
		//window.document.onmouseclick = getMouseXYPos
		document.getElementById('Layer1').style.left =	mousex + "px";
		document.getElementById('Layer1').style.top =	mousey + "px";		
		document.getElementById('Layer1').innerHTML = htmlCont;
		document.getElementById('Layer1').style.visibility = 'visible';
	}
	/*else
	{
		document.getElementById('Layer1').style.visibility = 'hidden';
	}*/
}

function maxchars(fldObj,maxchars)
{
	if(fldObj.value.length > maxchars)
	{
		alert("Maximum No of characters should not exceed "+maxchars+" characters.");
		fldObj.focus();
		return false;		
	}
}

function containsAlphabets(checkString)
{
    // Get the ASCII value of the key that the user entered
    var key = window.event.keyCode;
    // Verify if the key entered was a numeric character (0-9) or a decimal (.)
    if ( (key >= 65 && key <= 90) || (key >= 97 && key <= 122) || (key >= 1569 && key <= 1610) || (key == 46) || (key == 32))
	{
        // If it was, then allow the entry to continue
        return;
	}
    else
	{
        // If it was not, then dispose the key and continue with entry
        window.event.returnValue = null; 
		checkString.focus();
	}
		
		
}

function specialcharacter(field)    
{

	validnum = "ABCDEFGHIJLKMNOPQRSTUVWXYZabcdefghijlkmnopqrstuvwxyz1234567890'-_ ";
	var num= eval('document.frm.'+field+'.value');
	var flag = "Y";

	for (i=0; i<=num.length; i++)
	{
		if (validnum.indexOf(num.charAt(i)) == -1)
		{
			flag = "N"
		}
	}
	if (flag == "N")
	{
		alert ("Special characters not allowed ");


		if (field=='accid') {
			document.frm.accid.focus();
			document.frm.accid.select();
			return false;
		}
		if (field=='userid') {
			document.frm.userid.focus();
			document.frm.userid.select();
			return false;
		}
		if (field=='passwd') {
			document.frm.passwd.focus();
			document.frm.passwd.select();
			return false;
		}
	}

}

function Finddifference() 
{ 
  var Date1=document.F_DYN.POL_ISSUE_DT.value;
  var Date2=mmddyy(document.F_DYN.POL_FM_DT.value);
  //alert(Date1)
  //alert(Date2)
  //alert(new Date(Date1.replace(/-/g, '/')))
  //alert(new Date(Date2.replace(/-/g, '/')))
  var Diff1 = DaysDiff(
    new Date(Date2.replace(/-/g, '/')),
    new Date(Date1.replace(/-/g, '/')) )
  //alert(Diff1);  
  return Diff1;
  //alert(Diff2)  
  //Date1.focus() 
  }

function getMouseXY(e) // works on IE6,FF,Moz,Opera7
{ 
  if (!e) e = window.event; // works on IE, but not NS (we rely on NS passing us the event)

  if (e)
  { 
    if (e.pageX || e.pageY)
    { // this doesn't work on IE6!! (works on FF,Moz,Opera7)
      mousex = e.pageX;
      mousey = e.pageY;
      algor = '[e.pageX]';
      if (e.clientX || e.clientY) algor += ' [e.clientX] '
    }
    else if (e.clientX || e.clientY)
    { // works on IE6,FF,Moz,Opera7
      mousex = e.clientX + document.body.scrollLeft;
      mousey = e.clientY + document.body.scrollTop;
      algor = '[e.clientX]';
      if (e.pageX || e.pageY) algor += ' [e.pageX] '
    }  
  }
}


function fncDisp(txtId)
{
	//if (eval("document.getElementById('"+txtId+"').style.display") == 'none'); 
	if (eval("document.getElementById('"+ txtId +"').style.display") == 'none') 
	{
		eval("document.getElementById('" + txtId + "' ).style.display = ''");	
	}
	else
	{
		eval("document.getElementById('" + txtId + "' ).style.display = 'none'");	
		//document.getElementById("INS_CODE_MOTOR").style.display = 'none';
	}	
	
}

function goreset()
{
	document.frm.reset();
}
function fnvalidatenull(name)
{

  for(i=0;i <fnvalidatenull.arguments.length;i++)
  {
      name= fnvalidatenull.arguments[i] ;
	if( (name.value=="") || (name.value.length< 1))
	{  
		 alert(name.id+" cannot be blank");
		 name.focus();
		 return false;
    	}
  }  
	return true;
}


// function for validating whether the value is a corrrect date  or not ... 
// the input parameter has to be the  field name(s).... 
// Ex .. value= document.formname.fieldname,document.formname.fieldname,


function fnvalidatedate(value)
{
  
 for(i=0;i<fnvalidatedate.arguments.length;i++)
  {
    indatefieldtext= fnvalidatedate.arguments[i];
    indatefield=indatefieldtext.value;
	if (indatefield.indexOf("-")!=-1)
	{
		var sdate = indatefield.split("-");
	}
	else
	{  
		var sdate = indatefield.split("/");
	}
	var cmpDate;
	var chkDate=new Date(Date.parse(indatefield))
	
	var cmpDate1=(chkDate.getMonth()+1)+"/"+(chkDate.getDate())+"/"+(chkDate.getFullYear());
	var cmpDate2=(chkDate.getMonth()+1)+"/"+(chkDate.getDate())+"/"+(chkDate.getYear());
	var indate2=(Math.abs(sdate[0]))+"/"+(Math.abs(sdate[1]))+"/"+(Math.abs(sdate[2]));
	var num=sdate[2];
	var num1=num+"8";

	var num2=num1.length 
    if(num2==3)
    {
        cmpDate=cmpDate2;
    }
    if(num2==5)
    {  
        cmpDate=cmpDate1;
    }
    if(indate2!=cmpDate)
	{
		alert("Invalid date or date format on field "+indatefieldtext.id);
		indatefieldtext.focus();
		return false;
	}
	else 
	{
		if (cmpDate=="NaN/NaN/NaN")
		{
			alert("Invalid date or date format on field "+indatefieldtext.id);
			indatefieldtext.focus();
			return false;
		}
	}
 }
 
}	
	
// function for resetting  the form
// To reset the form values

function fnreset(formname,actiontaken)
{
    x=eval('document.'+ formname)
    x.action=actiontaken;
    x.reset();
    return false;
}

function fndelete(formname,actiontaken)
{
	
	 a = confirm("Do You Really Want to Delete")
	 if(a==true ) 
	  {
		x=eval('document.'+ formname)
		//a = "'"+actiontaken+"'";
		x.action=actiontaken;
		x.submit();
		// alert(a);
		return true;
	 }	
}

  
// function for submitting the form
// Ex .. formname=formname... and actiontaken = the Full path of the Asp/html file where we r submitting the form


  
function fnsubmit(formname,actiontaken)
{
	
     x=eval('document.'+ formname)
     //a = "'"+actiontaken+"'";
     x.action=actiontaken;
     x.submit();
    // alert(a);
    return false;
}


// function for validating whether the value is a corrrect email id  or not ... 
// the input parameter has to be the the field name(s).... 
// Ex .. value= document.formname.fieldname


function fnvalidateemail(valmail)
{

  for(i=0;i<fnvalidateemail.arguments.length;i++)
   {
    valmailtext= fnvalidateemail.arguments[i];
    valmail=valmailtext.value;
    if( (valmail!="") || (valmail.length > 0 ))
    {
	var n,atCount,dotCount,temp_1,temp_2,temp_ascii;
	var temp_3=0;
	atCount=0;
	dotCount=0;
	n=0;
	var st=new String;
	st = valmail.split(" ");
	st = st.join("");
	st = st.toLowerCase();
	temp_1 = st.charAt(0);
	temp_ascii = st.charCodeAt(0);
	
	for(n=0;n<st.length;n++)
	{
		temp_2 = st.charCodeAt(n);
		if ((temp_2<48) || (temp_2>57))
		{
			if ((temp_2<97) || (temp_2>122))
			{ 
				if ((temp_2 == 95) || (temp_2==46) || (temp_2==64)||(temp_2==45))
				{
				//alert("special but correct");
				}
				else
				{ 
				alert("Invalid Email Address");
				valmailtext.focus();
				count=0;
				return false;
				}
			}
		}
		if(st.charAt(n)=='@' && n==0) atCount=atCount+1;
		if(st.charAt(n)=='@' && st.charAt(n+1)=='.') atCount=atCount+1;
		if(st.charAt(n)=='@') atCount=atCount+1;
		if(st.charAt(n)=='.') 
		{
			if(st.charAt(n+1)=='.' || n==st.length-1 ) atCount=2;
			dotCount=dotCount+1;
		}
	}
	
	if(atCount!=1 || dotCount<1) 
	{
	   alert("Invalid Email Address");
	   valmailtext.focus();
		return false;
	}
	else if ((temp_ascii < 48) || (temp_ascii > 122)) 
	{
	   
		alert("Invalid Email Id on Field "+valmailtext.id);
		valmailtext.focus();
		count=0;
		return false;
	}
	else
	{
		x=st.lastIndexOf("@");
		y=st.lastIndexOf(".");
		if(y < x )
		{
			alert("Invalid Email Address");
			valmailtext.focus();
			return false;
		}
		
	}
  }	
 }	
 
}

// function for validating whether the value is number or not ... 
// the input parameter has to be  the field name(s).... 
// Ex .. value= document.formname.fieldname

function fnvalidatenumber(value)
{ 
  //alert("inside-generalfunctions.js-fnvalidatenumber"); //SM
  	for(i=0;i<fnvalidatenumber.arguments.length;i++)
	{
	    nameid= fnvalidatenumber.arguments[i];
		namevalue=nameid.value;
		if (isNaN(namevalue))   
		{
			alert("Enter a numeric value");
			 //in Field "+nameid.id
			nameid.focus();
			nameid.value="";
			return false;
		}  
	}
}

// function for validate whether the input is an + integer or not.

function fnvalidatepositive(value)
{ 
//alert("inside-generalfunctions.js-fnvalidatepositive"); //SM
  	for(i=0;i<fnvalidatepositive.arguments.length;i++)
	{
	    nameid= fnvalidatepositive.arguments[i];
	    namevalue=nameid.value;

	  if(trim(namevalue) != "")
	{	
		  b= fnvalidatenumber(nameid)
		  if(b!=false)
		   {
        		if (namevalue<0)
			{
				alert("Enter a positive value In field "+nameid.id);
				nameid.value="";
				nameid.focus();
			    return false;
			} 
	       }		
	}
       else 
        return false ;
   }
}  

// Stop hiding -->



function fnvalidatefmdate(date1,date2)
{
//alert("yes from generalfunctions.js-fnvalidatefmdate"); //SM
//alert("inside-generalfunctions.js-fnvalidatefmdate");  //SM
var sd;
		var ed;
		sd=date1.value
		ed=date2.value
		sdate = new Array();
		edate = new Array();
		sdate=sd.split("/");
		edate=ed.split("/");
		ss=new Date(sdate[2],sdate[1],sdate[0]);
		e=new Date(edate[2],edate[1],edate[0]);
		
        		
		if (e.valueOf() < ss.valueOf())
			{
			  alert("From Date Should Not be greater Than To date");
			  date1.focus();
			  return false;
			}
		else
			{
			  return true;	
			}

}

function fnvalidateTodate(date1,date2)
{
//alert("yes from generalfunctions.js-fnvalidatefmdate"); //SM
//alert("inside-generalfunctions.js-fnvalidatefmdate");  //SM
var sd;
		var ed;
		sd=date1.value
		ed=date2.value
		sdate = new Array();
		edate = new Array();
		sdate=sd.split("/");
		edate=ed.split("/");
		ss=new Date(sdate[2],sdate[1],sdate[0]);
		e=new Date(edate[2],edate[1],edate[0]);
		if (e.valueOf() < ss.valueOf())
			{
			  alert(date1.id+" Should Not be greater Than "+ date2.id);
			  date1.focus();
			  return false;
			}
		else
			{
			  return true;	
			}

}

function fnvalidatefmdate1(date1,date2)
{

//alert("inside-generalfunctions.js-fnvalidatefmdate1"); //SM
var sd;
		var ed;
		sd=date1.value
		ed=date2.value
		sdate = new Array();
		edate = new Array();
		sdate=sd.split("/");
		edate=ed.split("/");
		ss=new Date(sdate[2],sdate[0],sdate[1]);
		e=new Date(edate[2],edate[0],edate[1]);
		if (e.valueOf() < ss.valueOf())
			{
			  alert("Withdraw Date Should Not be less than from date");
			  date1.focus();
			  return false;
			}

}

function fnvalidatefmchar(val1,val2)
{
//alert("inside-generalfunctions.js-fnvalidatefmchar");  //SM
		if (val1.value.toUpperCase() > val2.value.toUpperCase())
			{
			  alert(val1.id+" Should Not be greater Than "+val2.id);
			  val1.focus();
			  return false;
		 }	
}

// function for validating whether the value is a corrrect date  or not ... 
// the input parameter has to be the  field name(s).... 
// Ex .. value= document.formname.fieldname,document.formname.fieldname,


function fnvalidateGendate(value1,fmt)
{

//alert("inside-generalfunctions.js-fnvalidateGendate");  //SM
  switch (fmt)   
  {
  	case("MM/DD/YYYY")  :
  		//alert("Inside MMDDYYY"); //SM
		for(i=0;i<fnvalidateGendate.arguments.length-1;i++)
		{
			indatefieldtext= fnvalidateGendate.arguments[i];
			indatefield=indatefieldtext.value;
		if(indatefield !="")
		{	
			if (indatefield.indexOf("-")!=-1)
			{
				var sdate = indatefield.split("-");
			}
			else
			{  
				var sdate = indatefield.split("/");
			}
			var cmpDate;
			var chkDate=new Date(Date.parse(indatefield))

			var cmpDate1=(chkDate.getMonth()+1)+"/"+(chkDate.getDate())+"/"+(chkDate.getFullYear());
			var cmpDate2=(chkDate.getMonth()+1)+"/"+(chkDate.getDate())+"/"+(chkDate.getYear());
		
			var indate2=(Math.abs(sdate[0]))+"/"+(Math.abs(sdate[1]))+"/"+(Math.abs(sdate[2]));
		
			var num=sdate[2];
			var num1=num+"8";

			var num2=num1.length 
			if(num2==3)
			{
				cmpDate=cmpDate2;
			}
			if(num2==5)
			{	
				cmpDate=cmpDate1;
			}
			if(indate2!=cmpDate)
			{
			//alert("before invalid");
			alert("Invalid date or date format ");
			//Commented by kavitha on 19 Feb 2005
			//indatefieldtext.value="";
			indatefieldtext.focus();
			return false;
			}
				else 
				{
					if (cmpDate=="NaN/NaN/NaN")
					{
						//alert("before invalid1");
						alert("Invalid date or date format");
						//indatefieldtext.value="";
						indatefieldtext.focus();
						return false;
					}
				}
			}
			}
			break;
 
  	case("DD/MM/YYYY")  :  		
  		//alert("Inside DDMMYYYY"); //SM
  		for(i=0;i<fnvalidateGendate.arguments.length-1;i++)
  		{  			
  			indatefieldtext= fnvalidateGendate.arguments[i];  			
  			indatefield=indatefieldtext.value;
   //  alert(indatefield);
		if(indatefield !="")
		{	
  		if (indatefield.indexOf("-")!=-1)
  		{
  			var sdate = indatefield.split("-");
  		}
  		else
  		{  
  			var sdate = indatefield.split("/");
  		}
  		  		
  		var cmpDate;
  		indatefield = (Math.abs(sdate[1]))+"/"+(Math.abs(sdate[0]))+"/"+(Math.abs(sdate[2]));  
  		var chkDate=new Date(Date.parse(indatefield))
		
		// code added by balamurugan on 11-12-2005 for checking the year format
		var get_year = chkDate.getFullYear(); // check the year length
		var Ylen = new String(get_year);
       	if(eval(Ylen.length)!= 4) //Accept 4 digit year only
		{
		 alert("Invalid year or date format");
		 //Commented by kavitha on 19 Feb 2005
  		 //indatefieldtext.value="";
  		 indatefieldtext.focus();
  		 return false;
		}
  		
  		var cmpDate1=(chkDate.getDate())+"/"+(chkDate.getMonth()+1)+"/"+(chkDate.getFullYear());
  		var cmpDate2=(chkDate.getDate())+"/"+(chkDate.getMonth()+1)+"/"+(chkDate.getYear());
  		var indate2=(Math.abs(sdate[0]))+"/"+(Math.abs(sdate[1]))+"/"+(Math.abs(sdate[2]));
  		
  		
  		
  		//Commented by Kavitha on 25/12/2004.The following code accepted year with length of 2, which shud not be teh case.
  		 
  	/*	var num=sdate[2];
  		var num1=num+"8";
  
  		var num2=num1.length 
  		if(num2==3)
  		{
  			cmpDate=cmpDate2;
  		}
  		if(num2==5)
  		{  
  			cmpDate=cmpDate1;
  		} */
  		
  		cmpDate=cmpDate1;
  		//alert(indate2); //SM
  		//alert(cmpDate); //SM
  		if(indate2!=cmpDate)
  		{
  			
  			alert("Invalid date or date format");
  			//Commented by kavitha on 19 Feb 2005
  			//indatefieldtext.value="";
  			indatefieldtext.focus();
  			return false;
  		}
  		else 
  		{
  		if (cmpDate=="NaN/NaN/NaN")
  		{
  			
  			alert("Invalid date or date format");
  			//Commented by kavitha on 19 Feb 2005
  			//indatefieldtext.value="";
  			indatefieldtext.focus();
  			return false;
  		}
  		}
  		}
  		}
  		break;

  	case("DD-MON-YYYY")  :  		
  		//alert("Inside ddMMMyyyy");
  		for(i=0;i<fnvalidateGendate.arguments.length-1;i++)
  		{  			
  			indatefieldtext= fnvalidateGendate.arguments[i];  		  			
  			indatefield=indatefieldtext.value;  			
  		if(indatefield !="")
		{	
  			if (indatefield.indexOf("-")!=-1)
  			{
  				var sdate = indatefield.split("-");
  			}
  			else
  			{  
  				var sdate = indatefield.split("/");
  			}
  		
			  		 		  		
  			var cmpDate;  		
  			indatefield = (getMonthNumber(sdate[1]))+"/"+(Math.abs(sdate[0]))+"/"+(Math.abs(sdate[2]));  
  		
  			var chkDate=new Date(Date.parse(indatefield))		
			  		
  			var cmpDate1=(chkDate.getDate())+"/"+(chkDate.getMonth()+1)+"/"+(chkDate.getFullYear());
  			var cmpDate2=(chkDate.getDate())+"/"+(chkDate.getMonth()+1)+"/"+(chkDate.getYear());
  			var indate2=(Math.abs(sdate[0]))+"/"+(getMonthNumber(sdate[1]))+"/"+(Math.abs(sdate[2]));
  		
  		
  			var num=sdate[2];
  			var num1=num+"8";
  
  			var num2=num1.length 
  			if(num2==3)
  			{
  				cmpDate=cmpDate2;
  			}
  			if(num2==5)
  			{  
  				cmpDate=cmpDate1;
  			}
  		
  			if(indate2!=cmpDate)
  			{
  				
  				alert("Invalid date or date format");
  				//Commented by kavitha on 19 Feb 2005
  				//indatefieldtext.value="";
  				indatefieldtext.focus();
  				return false;
  			}
  			else 
  			{
  			if (cmpDate=="NaN/NaN/NaN")
  			{
  				
  				alert("Invalid date or date format");
  				//Commented by kavitha on 19 Feb 2005
  				//indatefieldtext.value="";
  				indatefieldtext.focus();
  				return false;
  			}
  			}
  			}
  		}
  		break;
  }
  return true;
}	

function Mid(str, start, len)
/***
        IN: str - the string we are LEFTing
            start - our string's starting position (0 based!!)
            len - how many characters from start we want to get

        RETVAL: The substring from start to start+len
***/
{
        // Make sure start and len are within proper bounds
     if (start < 0 || len < 0) return "";

        var iEnd, iLen = String(str).length;
        if (start + len > iLen)
                iEnd = iLen;
        else
                iEnd = start + len;

        return String(str).substring(start,iEnd);
}


// Function that removes the blank spaces in the input string

function trim(sStr) 
{
     return sStr.replace(/^\s+|\s+$/g, "") ;
}


// function for validating whether the value is a corrrect date  or not ... 
// the input parameter has to be the  field name(s).... 
// Ex .. value= document.formname.fieldname,document.formname.fieldname,


function fnvalidateGendate_New(value1,fmt)
{

//alert("inside-generalfunctions.js-fnvalidateGendate");  //SM
  switch (fmt)   
  {
  	case("MM/DD/YYYY")  :
  		//alert("Inside MMDDYYY"); //SM
		for(i=0;i<fnvalidateGendate_New.arguments.length-1;i++)
		{
			indatefieldtext= fnvalidateGendate_New.arguments[i];
			indatefield=indatefieldtext.value;
		if(indatefield !="")
		{	
			if (indatefield.indexOf("-")!=-1)
			{
				var sdate = indatefield.split("-");
			}
			else
			{  
				var sdate = indatefield.split("/");
			}
			var cmpDate;
			var chkDate=new Date(Date.parse(indatefield))

			var cmpDate1=(chkDate.getMonth()+1)+"/"+(chkDate.getDate())+"/"+(chkDate.getFullYear());
			var cmpDate2=(chkDate.getMonth()+1)+"/"+(chkDate.getDate())+"/"+(chkDate.getYear());
		
			var indate2=(Math.abs(sdate[0]))+"/"+(Math.abs(sdate[1]))+"/"+(Math.abs(sdate[2]));
		
			var num=sdate[2];
			var num1=num+"8";

			var num2=num1.length 
			if(num2==3)
			{
				cmpDate=cmpDate2;
			}
			if(num2==5)
			{	
				cmpDate=cmpDate1;
			}
			if(indate2!=cmpDate)
			{
			//alert("before invalid");
			alert("Invalid date or date format on field "+indatefieldtext.id);
			//indatefieldtext.value="";
			indatefieldtext.focus();
			return false;
			}
				else 
				{
					if (cmpDate=="NaN/NaN/NaN")
					{
						//alert("before invalid1");
						alert("Invalid date or date format on field "+indatefieldtext.id);
						//indatefieldtext.value="";
						indatefieldtext.focus();
						return false;
					}
				}
			}
			}
			break;
 
  	case("DD/MM/YYYY")  :  		
  		//alert("Inside DDMMYYYY"); //SM
  		for(i=0;i<fnvalidateGendate_New.arguments.length-1;i++)
  		{  			
  			indatefieldtext= fnvalidateGendate_New.arguments[i];  			
  			indatefield=indatefieldtext.value;
   //  alert(indatefield);
		if(indatefield !="")
		{	
  		if (indatefield.indexOf("-")!=-1)
  		{
  			var sdate = indatefield.split("-");
  		}
  		else
  		{  
  			var sdate = indatefield.split("/");
  		}
  		  		
  		var cmpDate;
  		indatefield = (Math.abs(sdate[1]))+"/"+(Math.abs(sdate[0]))+"/"+(Math.abs(sdate[2]));  
  		var chkDate=new Date(Date.parse(indatefield))
		
  		
  		var cmpDate1=(chkDate.getDate())+"/"+(chkDate.getMonth()+1)+"/"+(chkDate.getFullYear());
  		var cmpDate2=(chkDate.getDate())+"/"+(chkDate.getMonth()+1)+"/"+(chkDate.getYear());
  		var indate2=(Math.abs(sdate[0]))+"/"+(Math.abs(sdate[1]))+"/"+(Math.abs(sdate[2]));
  		
  		
  		
  		//Commented by Kavitha on 25/12/2004.The following code accepted year with length of 2, which shud not be teh case.
  		 
  	/*	var num=sdate[2];
  		var num1=num+"8";
  
  		var num2=num1.length 
  		if(num2==3)
  		{
  			cmpDate=cmpDate2;
  		}
  		if(num2==5)
  		{  
  			cmpDate=cmpDate1;
  		} */
  		cmpDate=cmpDate1;
  		//alert(indate2); //SM
  		//alert(cmpDate); //SM
  		if(indate2!=cmpDate)
  		{
  			
  			alert("Invalid date or date format on field "+indatefieldtext.id);
  			//Commented by kavitha on 19 Feb 2005
  			//indatefieldtext.value="";
  			indatefieldtext.focus();
  			return false;
  		}
  		else 
  		{
  		if (cmpDate=="NaN/NaN/NaN")
  		{
  			
  			alert("Invalid date or date format on field "+indatefieldtext.id);
  			//Commented by kavitha on 19 Feb 2005
  			//indatefieldtext.value="";
  			indatefieldtext.focus();
  			return false;
  		}
  		}
  		}
  		}
  		break;

  	case("DD-MON-YYYY")  :  		
  		//alert("Inside ddMMMyyyy");
  		for(i=0;i<fnvalidateGendate_New.arguments.length-1;i++)
  		{  			
  			indatefieldtext= fnvalidateGendate_New.arguments[i];  		  			
  			indatefield=indatefieldtext.value;  			
  		if(indatefield !="")
		{	
  			if (indatefield.indexOf("-")!=-1)
  			{
  				var sdate = indatefield.split("-");
  			}
  			else
  			{  
  				var sdate = indatefield.split("/");
  			}
  		
			  		 		  		
  			var cmpDate;  		
  			indatefield = (getMonthNumber(sdate[1]))+"/"+(Math.abs(sdate[0]))+"/"+(Math.abs(sdate[2]));  
  		
  			var chkDate=new Date(Date.parse(indatefield))		
			  		
  			var cmpDate1=(chkDate.getDate())+"/"+(chkDate.getMonth()+1)+"/"+(chkDate.getFullYear());
  			var cmpDate2=(chkDate.getDate())+"/"+(chkDate.getMonth()+1)+"/"+(chkDate.getYear());
  			var indate2=(Math.abs(sdate[0]))+"/"+(getMonthNumber(sdate[1]))+"/"+(Math.abs(sdate[2]));
  		
  		
  			var num=sdate[2];
  			var num1=num+"8";
  
  			var num2=num1.length 
  			if(num2==3)
  			{
  				cmpDate=cmpDate2;
  			}
  			if(num2==5)
  			{  
  				cmpDate=cmpDate1;
  			}
  		
  			if(indate2!=cmpDate)
  			{
  				
  				alert("Invalid date or date format on field "+indatefieldtext.id);
  				//Commented by kavitha on 19 Feb 2005
  				//indatefieldtext.value="";
  				indatefieldtext.focus();
  				return false;
  			}
  			else 
  			{
  			if (cmpDate=="NaN/NaN/NaN")
  			{
  				
  				alert("Invalid date or date format on field "+indatefieldtext.id);
  				//Commented by kavitha on 19 Feb 2005
  				//indatefieldtext.value="";
  				indatefieldtext.focus();
  				return false;
  			}
  			}
  			}
  		}
  		break;
  }
  return true;
}	


/* Below code added by kaushik*/	    
var gsWin_Lcn;
var s_width;
var s_height;

function GetWindow_Location(nWidth, nHeight)
{
	var nLeft;
	var nTop;

	nLeft = parseInt((screen.width - nWidth) / 2);
	nTop = parseInt((screen.height - nHeight) / 2);
	gsWin_Lcn = "width=" + nWidth + ",height=" + nHeight + ",left=" + nLeft + ",top=" + nTop
}


/* Added by Murugesan on 20th feb 2005, for delete the values in all asp controls in the particular form */
function ResetAllASPControls()    
{ 
    var formFields = document.F_DYN.elements;
    for(j=0;j<formFields.length;j++)    
    {   
         if(formFields[j])    
         {  
            //alert("Please Enter " +formFields[j].type);  
            if ((formFields[j].type != 'hidden') ||  (formFields[j].type == 'hidden') && (formFields[j].reset == 'N'))
            {  
					formFields[j].value="";   
					formFields[j].selectedIndex = 'All';   
			} 
			 
         } 
	} 
}


function FormatDate(DateToFormat,FormatAs)
{
	
	if(DateToFormat==""){return"";}
	if(!FormatAs){FormatAs="dd/mm/yyyy";}

	var strReturnDate;
	FormatAs = FormatAs.toLowerCase();
	DateToFormat = DateToFormat.toLowerCase();
	var arrDate
	var arrMonths = new Array("January","February","March","April","May","June","July","August","September","October","November","December");
	var strMONTH;
	var Separator;
    
	while(DateToFormat.indexOf("st")>-1)
	{
	DateToFormat = DateToFormat.replace("st","");
	}

	while(DateToFormat.indexOf("nd")>-1)
	{
	DateToFormat = DateToFormat.replace("nd","");
	}

	while(DateToFormat.indexOf("rd")>-1)
	{
	DateToFormat = DateToFormat.replace("rd","");
	}

	while(DateToFormat.indexOf("th")>-1)
	{
	DateToFormat = DateToFormat.replace("th","");
	}

	if(DateToFormat.indexOf(".")>-1)
	{
	Separator = ".";
	}

	if(DateToFormat.indexOf("-")>-1)
	{
	Separator = "-";
	}


	if(DateToFormat.indexOf("/")>-1)
	{
	Separator = "/";
	}

	if(DateToFormat.indexOf(" ")>-1)
	{
	Separator = " ";
	}

	arrDate = DateToFormat.split(Separator);
	DateToFormat = "";
		for(var iSD = 0;iSD < arrDate.length;iSD++){
			if(arrDate[iSD]!=""){
			DateToFormat += arrDate[iSD] + Separator;
			}
		}
	DateToFormat = DateToFormat.substring(0,DateToFormat.length-1);
	arrDate = DateToFormat.split(Separator);

	if(arrDate.length < 3){
	return "";
	}

	var DAY = arrDate[0];
	var MONTH = arrDate[1];
	var YEAR = arrDate[2];



	if(parseFloat(arrDate[1]) > 12){
	DAY = arrDate[1];
	MONTH = arrDate[0];
	}

	if(parseFloat(DAY) && DAY.toString().length==4){
	YEAR = arrDate[0];
	DAY = arrDate[2];
	MONTH = arrDate[1];
	}


	for(var iSD = 0;iSD < arrMonths.length;iSD++){
	var ShortMonth = arrMonths[iSD].substring(0,3).toLowerCase();
	var MonthPosition = DateToFormat.indexOf(ShortMonth);
		if(MonthPosition > -1){
		MONTH = iSD + 1;
			if(MonthPosition == 0){
			DAY = arrDate[1];
			YEAR = arrDate[2];
			}
		break;
		}
	}

	var strTemp = YEAR.toString();
	if(strTemp.length==2){

		if(parseFloat(YEAR)>40){
		YEAR = "19" + YEAR;
		}
		else{
		YEAR = "20" + YEAR;
		}

	}

  
		if(parseInt(MONTH)< 10 && MONTH.toString().length < 2){
		MONTH = "0" + MONTH;
		}
		if(parseInt(DAY)< 10 && DAY.toString().length < 2){
		DAY = "0" + DAY;
		}
		switch (FormatAs){
		case "dd/mm/yyyy":
		return DAY + "/" + MONTH + "/" + YEAR;
		case "mm/dd/yyyy":
		return MONTH + "/" + DAY + "/" + YEAR;
		case "dd/mmm/yyyy":
		return DAY + " " + arrMonths[MONTH -1].substring(0,3) + " " + YEAR;
		case "mmm/dd/yyyy":
		return arrMonths[MONTH -1].substring(0,3) + " " + DAY + " " + YEAR;
		case "dd/mmmm/yyyy":
		return DAY + " " + arrMonths[MONTH -1] + " " + YEAR;	
		case "mmmm/dd/yyyy":
		return arrMonths[MONTH -1] + " " + DAY + " " + YEAR;
		}

   //return DAY + "/" + strMONTH + "/" + YEAR;

} //End Function


function check_DB(stDate,todate1,fieldname)
 { 
 
	var sflag = "F"
	var sArray = "";
	var tArray ="";
	
	sArray =stDate.split("/")
	tArray =todate1.split("/")
	
	if(sArray[2] > tArray[2])
	{
		//alert("Cond Year")
		sflag="T"
	}
					
	if(sArray[1] > tArray[1] && sflag=="F" && sArray[2] >= tArray[2] )
	{
		//	alert("Cond Month")
			sflag="T"
	}
	
	
	if(sArray[0] >= tArray[0] && sflag=="F" && sArray[1] == tArray[1] && sArray[2] == tArray[2] )
	{
		//	alert("Cond Day")
			sflag="T"	
	}
				
	if(sflag=="T")
	{
		alert(fieldname+" should not be Graterthan that Current date")
		return; 	
	}
    return true; 
 }

function fnvalidateGendateGen(value1,fmt)
{

//alert("inside-generalfunctions.js-fnvalidateGendate");  //SM
  switch (fmt)   
  {
  	case("MM/DD/YYYY")  :
  		//alert("Inside MMDDYYY"); //SM
		for(i=0;i<fnvalidateGendateGen.arguments.length-1;i++)
		{
			indatefieldtext= fnvalidateGendateGen.arguments[i];
			indatefield=indatefieldtext.value;
		if(indatefield !="")
		{	
			if (indatefield.indexOf("-")!=-1)
			{
				var sdate = indatefield.split("-");
			}
			else
			{  
				var sdate = indatefield.split("/");
			}
			var cmpDate;
			var chkDate=new Date(Date.parse(indatefield))

			var cmpDate1=(chkDate.getMonth()+1)+"/"+(chkDate.getDate())+"/"+(chkDate.getFullYear());
			var cmpDate2=(chkDate.getMonth()+1)+"/"+(chkDate.getDate())+"/"+(chkDate.getYear());
		
			var indate2=(Math.abs(sdate[0]))+"/"+(Math.abs(sdate[1]))+"/"+(Math.abs(sdate[2]));
		
			var num=sdate[2];
			var num1=num+"8";

			var num2=num1.length 
			if(num2==3)
			{
				cmpDate=cmpDate2;
			}
			if(num2==5)
			{	
				cmpDate=cmpDate1;
			}
			if(indate2!=cmpDate)
			{
			//alert("before invalid");
			//alert("Invalid date or date format ");
			//Commented by kavitha on 19 Feb 2005
			//indatefieldtext.value="";
			//indatefieldtext.focus();
			return false;
			}
				else 
				{
					if (cmpDate=="NaN/NaN/NaN")
					{
						//alert("before invalid1");
						//alert("Invalid date or date format");
						//indatefieldtext.value="";
						//indatefieldtext.focus();
						return false;
					}
				}
			}
			}
			break;
 
  	case("DD/MM/YYYY")  :  		
  		//alert("Inside DDMMYYYY"); //SM
  		for(i=0;i<fnvalidateGendateGen.arguments.length-1;i++)
  		{  			
  			indatefieldtext= fnvalidateGendateGen.arguments[i];  			
  			indatefield=indatefieldtext.value;
   //  alert(indatefield);
		if(indatefield !="")
		{	
  		if (indatefield.indexOf("-")!=-1)
  		{
  			var sdate = indatefield.split("-");
  		}
  		else
  		{  
  			var sdate = indatefield.split("/");
  		}
  		  		
  		var cmpDate;
  		indatefield = (Math.abs(sdate[1]))+"/"+(Math.abs(sdate[0]))+"/"+(Math.abs(sdate[2]));  
  		var chkDate=new Date(Date.parse(indatefield))
		
		// code added by balamurugan on 11-12-2005 for checking the year format
		var get_year = chkDate.getFullYear(); // check the year length
		var Ylen = new String(get_year);
       	if(eval(Ylen.length)!= 4) //Accept 4 digit year only
		{
		// alert("Invalid year or date format");
		 //Commented by kavitha on 19 Feb 2005
  		 //indatefieldtext.value="";
  		// indatefieldtext.focus();
  		 return false;
		}
  		
  		var cmpDate1=(chkDate.getDate())+"/"+(chkDate.getMonth()+1)+"/"+(chkDate.getFullYear());
  		var cmpDate2=(chkDate.getDate())+"/"+(chkDate.getMonth()+1)+"/"+(chkDate.getYear());
  		var indate2=(Math.abs(sdate[0]))+"/"+(Math.abs(sdate[1]))+"/"+(Math.abs(sdate[2]));
  		
  		
  		
  		//Commented by Kavitha on 25/12/2004.The following code accepted year with length of 2, which shud not be teh case.
  		 
  	/*	var num=sdate[2];
  		var num1=num+"8";
  
  		var num2=num1.length 
  		if(num2==3)
  		{
  			cmpDate=cmpDate2;
  		}
  		if(num2==5)
  		{  
  			cmpDate=cmpDate1;
  		} */
  		
  		cmpDate=cmpDate1;
  		//alert(indate2); //SM
  		//alert(cmpDate); //SM
  		if(indate2!=cmpDate)
  		{
  			
  			//alert("Invalid date or date format");
  			//Commented by kavitha on 19 Feb 2005
  			//indatefieldtext.value="";
  			//indatefieldtext.focus();
  			return false;
  		}
  		else 
  		{
  		if (cmpDate=="NaN/NaN/NaN")
  		{
  			
  			alert("Invalid date or date format");
  			//Commented by kavitha on 19 Feb 2005
  			//indatefieldtext.value="";
  			//indatefieldtext.focus();
  			return false;
  		}
  		}
  		}
  		}
  		break;

  	case("DD-MON-YYYY")  :  		
  		//alert("Inside ddMMMyyyy");
  		for(i=0;i<fnvalidateGendateGen.arguments.length-1;i++)
  		{  			
  			indatefieldtext= fnvalidateGendateGen.arguments[i];  		  			
  			indatefield=indatefieldtext.value;  			
  		if(indatefield !="")
		{	
  			if (indatefield.indexOf("-")!=-1)
  			{
  				var sdate = indatefield.split("-");
  			}
  			else
  			{  
  				var sdate = indatefield.split("/");
  			}
  		
			  		 		  		
  			var cmpDate;  		
  			indatefield = (getMonthNumber(sdate[1]))+"/"+(Math.abs(sdate[0]))+"/"+(Math.abs(sdate[2]));  
  		
  			var chkDate=new Date(Date.parse(indatefield))		
			  		
  			var cmpDate1=(chkDate.getDate())+"/"+(chkDate.getMonth()+1)+"/"+(chkDate.getFullYear());
  			var cmpDate2=(chkDate.getDate())+"/"+(chkDate.getMonth()+1)+"/"+(chkDate.getYear());
  			var indate2=(Math.abs(sdate[0]))+"/"+(getMonthNumber(sdate[1]))+"/"+(Math.abs(sdate[2]));
  		
  		
  			var num=sdate[2];
  			var num1=num+"8";
  
  			var num2=num1.length 
  			if(num2==3)
  			{
  				cmpDate=cmpDate2;
  			}
  			if(num2==5)
  			{  
  				cmpDate=cmpDate1;
  			}
  		
  			if(indate2!=cmpDate)
  			{
  				
  				//alert("Invalid date or date format");
  				//Commented by kavitha on 19 Feb 2005
  				//indatefieldtext.value="";
  				//indatefieldtext.focus();
  				return false;
  			}
  			else 
  			{
  			if (cmpDate=="NaN/NaN/NaN")
  			{
  				
  				//alert("Invalid date or date format");
  				//Commented by kavitha on 19 Feb 2005
  				//indatefieldtext.value="";
  			//	indatefieldtext.focus();
  				return false;
  			}
  			}
  			}
  		}
  		break;
  }
  return true;
}
 