// JavaScript Document
function isValidEmail(email)
{
	/*
	var reg1 = /^([a-z,A-Z][_,a-z,A-Z,0-9]*([.][_,a-z,A-Z,0-9]+)*@[a-z,A-Z][a-z,A-Z0-9]*([.][a-z,A-Z,0-9]+)*([.][a-z,A-Z]{2,3}))([ ]*[,][ ]*[a-z,A-Z][_,a-z,A-Z,0-9]*([.][_,a-z,A-Z,0-9]+)*@[a-z,,A-Z][a-z,A-Z,0-9]*([.][a-z,A-Z,0-9]+)*([.][a-z,A-Z]{2,3}))*$/;
	*/
	
	//var reg1 = /^([a-zA-Z]([._][a-zA-Z0-9]+)*@([a-zA-Z][a-zA-Z0-9]*)([._][a-zA-Z0-9]+)*([.][a-zA-Z]{2,3})*)$/;
	
	//var reg1 = /^([a-z,A-Z]([.,_]?[a-z,A-Z,0-9]+))*$/;
	//alert("yes");
	//var reg1 = new RegExp("^([a-z,A-Z]([.,_]?[a-z,A-Z,0-9]+)*)@([a-z,A-Z]([.,_,-]?[a-z,A-Z,0-9]+)*)([.]([a-z,A-Z]{2,6}))+$");
	
	if(email.indexOf('@')==-1||email.indexOf('.')==-1)
		return false;
	else
		return true;
}

function isValidCost(cost)
{
	var reg1 = /^([0-9]*)\.?([0-9])+$/;
	if(reg1.test(cost))
		return true;
	else
		return false;
}

function isValidPhone(phone)
{
	var reg1 = /^([0-9\(\)\-]{5,})+$/;
	if(reg1.test(phone))
	{
		return true;
	}
	else
	{
		return false;
	}
}

function isValidDate(dat_val)
{
	var reg1 = /^\d{4}-\d{2}-\d{2}$/;
	var flag=true;
	if(reg1.test(dat_val))
	{
		var dat_parts=dat_val.split("-");
		dat_val=dat_parts.join("/");
		var dat=new Date(dat_val);
		if(dat_parts[0]!=dat.getFullYear()||dat_parts[1]!=(dat.getMonth()+1)||dat_parts[2]!=dat.getDate())
			flag=false;
	}
	else
		flag=false;

	return flag;
}

function isValidName(name_val)
{
	var reg1 = /^[a-zA-Z\s]+$/;
	if(reg1.test(name_val))
		return true;
	else
		return false;
}

function checkFormRequiredFields(frm)
{
	var totalctrls = frm.elements.length;
	var node = frm.elements;
	var ctr=0;
// 	updateTextArea('rte1');
    for(i=0;i<totalctrls;i++)
	{
	   if(node[i].tagName=="INPUT" && node[i].alt=='required' && globalCheckForBlank(node[i].value))
	   {
		   ctr=1;
	   }
	   else if(node[i].tagName=="TEXTAREA" && node[i].lang=='required' && (globalCheckForBlank(node[i].value) || node[i].value=="<br>"))
	   {
		
		   ctr=1;
	   }
	   else if(node[i].tagName=="SELECT" && node[i].lang=='required' && globalCheckForBlank(node[i].value))
	   {
		   ctr=1;
		   var msg="select atleast one value from drop down";
	   }
	}
	
	if (ctr==1)
	{
		if (msg == null)	
		{
			alert("Required Fields are Blank");
		}
		else
		{
			alert(msg);
		}
		return false;
	}
	else
	{
		  return true;
	}
}

function LTrim(str) 
{ 
 for (var k=0; k<str.length && str.charAt(k)<=" " ; k++) ;
 return str.substring(k,str.length);
}
function RTrim(str) 
{
 for (var j=str.length-1; j>=0 && str.charAt(j)<=" " ; j--) ;
 return str.substring(0,j+1);
}
function Trim(str) 
{
 return LTrim(RTrim(str));
}

function globalCheckForBlank(val)
{
	if(Trim(val)=="")
	{
		return true;
	}

/*else
{
var val_length = val.length;
var flag = true;
for(x=0;x<val_length;x++)
{
if(val.indexOf(x) == " ")
{
flag = false;
break;
}
}
return flag;
} */
	return false;
}

function globalComp(val1,val2)
{
	if(val1!=val2)
	{
		return true;
	}
	return false;
}

function globalCheckDigit(val)
{
	flag=false;
	vc='0123456789.';
	x=0;
	while(x<val.length)
	{
		if(vc.indexOf(val.charAt(x))==-1)
		{
			flag= true;
			break;
		}
		x++;
	}
	return flag;
}

function globalCheckEmail(emailStr)
{
	var checkTLD=1;
	
	var knownDomsPat=/^(com|net|org|edu|int|mil|gov|arpa|biz|aero|name|coop|info|pro|museum)$/;
	var emailPat=/^(.+)@(.+)$/;
	
	var specialChars="\\(\\)><@,;:\\\\\\\"\\.\\[\\]";
	var validChars="\[^\\s" + specialChars + "\]";
	
	var quotedUser="(\"[^\"]*\")";
	
	var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/;
	var atom=validChars + '+';
	var word="(" + atom + "|" + quotedUser + ")";
	
	var userPat=new RegExp("^" + word + "(\\." + word + ")*$");
	
	var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$");
	
	var matchArray=emailStr.match(emailPat);
	
	if (matchArray==null)
	{
	return true;
	}
	return false;
}

function globalIsEmail(argvalue) {

  if (argvalue.indexOf(" ") != -1)
    return false;
  else if (argvalue.indexOf("@") == -1)
    return false;
  else if (argvalue.indexOf("@") == 0)
    return false;
  else if (argvalue.indexOf("@") == (argvalue.length-1))
    return false;

  arrayString = argvalue.split("@"); 
 
  if (arrayString[1].indexOf(".") == -1)
    return false;
  else if (arrayString[1].indexOf(".") == 0)
    return false;
  else if (arrayString[1].charAt(arrayString[1].length-1) == ".") {
    return false;
  }

  return true;

}




// Declaring required variables
var digits = "0123456789";
// non-digit characters which are allowed in phone numbers
var phoneNumberDelimiters = "()- ";
// characters which are allowed in international phone numbers
// (a leading + is OK)
var validWorldPhoneChars = phoneNumberDelimiters + "+";
// Minimum no of digits in an international phone no.
var minDigitsInIPhoneNumber = 10;

function isInteger(s)
{   var i;
    for (i = 0; i < s.length; i++)
    {   
        // Check that current character is number.
        var c = s.charAt(i);
        if (((c < "0") || (c > "9"))) return false;
    }
    // All characters are numbers.
    return true;
}

function stripCharsInBag(s, bag)
{   var i;
    var returnString = "";
    // Search through string's characters one by one.
    // If character is not in bag, append to returnString.
    for (i = 0; i < s.length; i++)
    {   
        // Check that current character isn't whitespace.
        var c = s.charAt(i);
        if (bag.indexOf(c) == -1) returnString += c;
    }
    return returnString;
}

function checkInternationalPhone(strPhone){
s=stripCharsInBag(strPhone,validWorldPhoneChars);
return (isInteger(s) && s.length >= minDigitsInIPhoneNumber);
}

function ValidateForm(){
	var Phone=document.frmSample.txtPhone
	
	if ((Phone.value==null)||(Phone.value=="")){
		alert("Please Enter your Phone Number")
		Phone.focus()
		return false
	}
	if (checkInternationalPhone(Phone.value)==false){
		alert("Please Enter a Valid Phone Number")
		Phone.value=""
		Phone.focus()
		return false
	}
	return true
 }



function daysInFebruary (year){
	// February has 29 days in any year evenly divisible by four,
    // EXCEPT for centurial years which are not also divisible by 400.
    return (((year % 4 == 0) && ( (!(year % 100 == 0)) || (year % 400 == 0))) ? 29 : 28 );
}

function compareDates (value1, value2) 
{
	
	var StartDate=new Date(value1);
	var EndDate=new Date(value2);
	
	if(StartDate>EndDate)
	{
		return false;	
	}	
	else
	{
		return true;
	}
}

function isUrl(s) {
	var regexp = /(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/
	return regexp.test(s);
}



function compareDates_Old (value1, value2) 
{
	alert(value1);
	alert(value2);
   var date1, date2;
   var month1, month2;
   var year1, year2;

    year1 = value1.substring (0, value1.indexOf ("-"));
   month1 = value1.substring (value1.indexOf ("-")+1, value1.lastIndexOf ("-"));
   date1 = value1.substring (value1.lastIndexOf ("-")+1, value1.length);

   year2 = value2.substring (0, value2.indexOf ("-"));
   month2 = value2.substring (value2.indexOf ("-")+1, value2.lastIndexOf ("-"));
   date2 = value2.substring (value2.lastIndexOf ("-")+1, value2.length);

   if(year1 > year2) {
	   return 1;
   }
   else if (year1 < year2){
		return -1;
	}
   else if (month1 > month2){
		return 1;
   }
   else if(month1 < month2){ 
	  return -1;
  }
   else if(date1>date2){
	   return 1;
   }
   else if (date1 < date2){
	   return -1;
   }
   else return 0;
} 

function toggleMe(a,total)
{
//alert(a);
  var e=document.getElementById(a);
  if(!e)
  	return true;

  if(e.style.display=="none")
  {
    for(var tt=1;tt<=total;tt++)
    {
    	var paracnt = 'para'+tt
    	document.getElementById(paracnt).style.display="none"
    }
    e.style.display="block"
  } 
  else 
  {
    e.style.display="none"
  }
  return true;
}
function togglesMe(a,total)
{
  var e=document.getElementById(a);
  if(!e)
  	return true;

  if(e.style.display=="none")
  {
    for(var tt=1;tt<=total;tt++)
    {
    	var paracnt = 'paras'+tt
    	document.getElementById(paracnt).style.display="none"
    }
    e.style.display="block"
  } 
  else 
  {
    e.style.display="none"
  }
  return true;
}


