/*************** Common Javascript Validations included in required Page(s)**************************'*/

function validemail(emailstr)			//Used for Email Validation
{    if (emailstr.search(/^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/) != -1)
    {
		return true;
	}
    else
    {
		alert("Email is not in a valid format.");
		return false;
	}
    return (true);}
	

function dategreater(dd,mm,yyyy,dd1,mm1,yyyy1)	//Used for Date Validation
{	var dt = new Date();
	dt.setDate(dd);
	dt.setMonth(mm-1);
	dt.setFullYear(yyyy);
	
	var dt1 = new Date();
	dt1.setDate(dd1);
	dt1.setMonth(mm1-1);
	dt1.setFullYear(yyyy1);
	if(dt>dt1)
	{
		return (false);
	}
	return (true);}
function dow(dd, mm, yyyy)					//Used for Date Validation
{   var tmpdate   = creadate(yyyy,mm,dd); 
   var dow       = tmpdate.getDay(); 
   var wday      = new Array(7);
       wday[0] = 'Sunday';
       wday[1] = 'Monday';
       wday[2] = 'Tuesday';
       wday[3] = 'Wednesday';
       wday[4] = 'Thursday';
       wday[5] = 'Friday';
       wday[6] = 'Saturday';
   return (wday[dow]);}
   
function datediff(fromdd, frommm, fromyyyy, todd, tomm, toyyyy)	//Used for Date Validation
{   var fromdate = new Date(fromyyyy,frommm,fromdd,00,00,00,001); 
   var todate   = new Date(toyyyy,tomm,todd,00,00,00,001);
   var msPerDay = 24 * 60 * 60 * 1000 ;
   var daysleft = (todate.getTime() - fromdate.getTime())/msPerDay ;
   daysleft = Math.round(daysleft);
   return (daysleft);
}

function creadate(yyyy, mm, dd)				         //Used for Date Validation
{   var tmpdt = new Date(0,1,1);
   if (!isValidDate(mm + '-' + dd + '-' + yyyy))
   {
      return tmpdt;
   }
   tmpdt.setYear(yyyy);
   tmpdt.setMonth(mm-1);
   tmpdt.setDate(dd);
   return (tmpdt);}
function empty(checkstr)
{   return (checkstr.length == 0);
}
function roundup(number, decimalplaces)				//Used for Round Off
{   var roundedoff = Math.round(number, decimalplaces);
   return (roundedoff);   }
function checknum(checkstr, allowdecimal)
{   if (checkstr.length == 0)
   {      return true;   }
   var numstr = "0123456789";
   if (allowdecimal)
   {
      numstr += ".";
   }
   for (_j = 0; _j < checkstr.length; _j++)
   {
      if (numstr.indexOf(checkstr.charAt(_j)) == -1)
      {
          return (false);
      }
   }
   return true;}
function onlyalpha(checkstr)					//Used for Alphabhets
{   if (checkstr.length == 0)
   {     return true;   }
   var numstr = "ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz";
   for (_j = 0; _j < checkstr.length; _j++)
   {      if (numstr.indexOf(checkstr.charAt(_j)) == -1)
      {          return (false);      }
   }
   return true;}
   
function dtchk(dd,mm,yyyy,errmsg)			 //Used for Date
{ var dt = new Date();
 dt.setMonth(0);
 dt.setDate(1);
 dt.setFullYear(yyyy);
 dt.setMonth(mm-1);
 dt.setDate(dd);
 var dd1=dt.getDate();
 var mm1=dt.getMonth()+1;
 var yyyy1=dt.getFullYear();
 if((dd!=dd1)||(mm!=mm1)||(yyyy!=yyyy1)||(yyyy==-1))
 {  alert(errmsg);
  return false;
 }
 return true;}

function dtdiff(dd,mm,yyyy,dd1,mm1,yyyy1)	//Used for comparing Dates
{	var dt = new Date();
	dt.setDate(dd);
	dt.setMonth(mm-1);
	dt.setFullYear(yyyy);
	
	var dt1 = new Date();
	dt1.setDate(dd1);
	dt1.setMonth(mm1-1);
	dt1.setFullYear(yyyy1);
	if(dt<dt1)
	{
		alert("Date Specified is less than Today's Date");
		return (false);
	}	return (true);}


function charlimit(field, maxlimit, alertuser) //Used for character limitation
{   if (field.value.length > maxlimit)
   {   if (alertuser)
      {
         alert("You are limited to " + maxlimit + " characters.");
      }
      return false;
   }
   else
   {
	return true;
   }	}

function fn_OpenWin(url,winname,scroll)	 //Used For Opening Window 
	{
		var NewWin;
		var CurHeight = (screen.availHeight /1.5)
		var CurWidth  = (screen.availWidth -30)
		var CurTop   = 10;
		var CurLeft  = 10;
		var features = "menubar=no,titlebar=no,scrollbars="+scroll+",height="+CurHeight+",width="+CurWidth+",top="+CurTop+",left="+CurLeft
		NewWin = window.open(url,winname,features)
		NewWin.focus()
		
	}
function printfile()					 //Used For Printing 
{
	var msg;
	msg="Note:In order to print the background color and images\r\n"
	msg=msg + "Go to the Internet Advanced Options and select the checkbox 'Print the background color and images' radio button"
	if (confirm(msg))
	{
		window.print()
	}

}

function fn_Sorting(frm,x,y)				//Used For Sorting
	{
		eval("document."+frm).fld.value=x;
		eval("document."+frm).sort.value=y;
		eval("document."+frm).submit();
	}
	
function trim(strText) { 					// Used for Trim
   while (strText.substring(0,1) == ' ') 
        strText = strText.substring(1, strText.length);
		
   while (strText.substring(strText.length-1,strText.length) == ' ')
        strText = strText.substring(0, strText.length-1);
		
   return strText;
   
} 

function trimall(userinput)
{
   var formatted=userinput.replace(/( )/g,"");
   return formatted;
}

function fncheckall(str1, str2,str3)
{
 for (i=0; i<eval("document."+str1+".elements.length"); i++)
 {
  if(eval("document."+str1+".elements[i].type") == "checkbox")
  {
   if(eval("document."+str1+".elements[i].name") == str2)
   { 
 
    if(eval("document."+str1+"."+str3+".checked"))
    {
		eval("document."+str1+".elements[i]").checked = true
    }
    else
    {
		 eval("document."+str1+".elements[i]").checked = false
    }
   }
  }
 } 
 return false;
}
