var gbl_MonthArray=new Array("January","February","March","April","May","June","July","August","September","October","November","December");
var gbl_ShortMonthArray=new Array("Jan","Feb","March","April","May","June","July","Aug","Sept","Oct","Nov","Dec");
var gbl_DayArray=new Array("Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday");
var gbl_ShortDayArray=new Array("Mon","Tue","Wed","Thu","Fri","Sat","Sun");
function isName(val)
			{
				var regExpr = /^[a-zA-Z.\'\s]+$/;
				res = regExpr.test(val);
				return res;
			}

function isEmail(val)
		{
		
		var regExpr = /^[\s]*[a-zA-Z0-9_]+([\.]?[a-zA-Z0-9_]*)?\@[a-zA-Z0-9]+\.(([a-zA-Z]{2,4})[\s]*|([a-zA-Z]{2,3}\.[a-zA-Z]{2,3}[\s]*))$/;
		 res = regExpr.test(val);
		 return res;
		}

/*function isEmail(val)
{

var regExpr = /^[\s]*[a-zA-Z0-9._]+\@[a-zA-Z0-9]+\.(([a-zA-Z]{2,4})[\s]*|([a-zA-Z]{2,3}\.[a-zA-Z]{2,3}[\s]*))$/;		
 res = regExpr.test(val);
 return res;
}*/

function isOrganization(val)
	{
		var regExpr = /^[a-zA-Z0-9-._\s\@]+$/;
		res = regExpr.test(val);
		return res;
	}

function isTextClear(val,valObj)
	{
		if(valObj.value==val)
		{
		valObj.value=""
		}
	}
function isTextReturn(val,valObj)
	{
		if(valObj.value.replace(/ /g,'')=="")
		{
		valObj.value=val
		}
	}
function isDesignation(val)
{
	var regExpr = /^[a-zA-Z0-9.\s\-\)\(\/]+$/;
	res = regExpr.test(val);
	return res;
}
function isState(val)
{
	var regExpr = /^[a-zA-Z\s]+$/;
	res = regExpr.test(val);
	return res;
}
function isCity(val)
{
	var regExpr = /^[a-zA-Z\s]+$/;
	res = regExpr.test(val);
	return res;
}
function isCompany(val)
{
	var regExpr = /^[a-zA-Z0-9-._\s]+$/;
	res = regExpr.test(val);
	return res;
}
function isPhoneNumber(val)
{
	var regExpr=/^[\d \-\(\)\+]*$/;
	res = regExpr.test(val);
	return res;
}

function phoneNumberLength(val,len)
{
	var len_val;
	len_val=val.length;
	if (len_val<len)
		return false;
	else
		return true;
}



function isWebsite(val)
{
	var regExpr =  /^((http):\/\/(www.)([a-z]|[A-Z]|[0-9]|[/.])+)$/;	
	res = regExpr.test(val);
	return res;
}

function isInt(val)
{
	var regExpr =  /^[0-9]+$/;	
	res = regExpr.test(val);
	return res;
}
function isPinCode(val)
{
	var regExpr =  /^[0-9-\s]+$/;	
	res = regExpr.test(val);
	return res;
}
function isFloat(val)
{
	var regExpr =  /^[0-9]+(\.[0-9]+)?$/;	
	res = regExpr.test(val);
	return res;
}

	
function dolimit(obj,size)

{

 if(obj.value.length>=size)

 {

  //alert("We love to hear from you. But regrettably, this space can take only "+size+" characters")

   obj.value=obj.value.substr(0,(size-1))

   return false;

 }

} 

function nullValueChk(obj)
{
	var res = true;
	if(obj.value.length != 0)
	{
		lclstr_lengobj = obj.value.replace(/ /g,'');
		if(lclstr_lengobj == "")
			res = false;
		else
			res = true;
	}
	else
		res = false;
	return res;	
}

function selectState(val,obj) //For edit option auto select dropdown 
{
	tot_leng = obj.length;
	for(i=0;i<tot_leng;i++)
	{

		if(obj.options[i].value == val)
		{
			obj.options[i].selected = true;	
			return val;
			break;
		}
		else
		{
			obj.options[0].selected = true;			
		}
	}
	/*if(val !=0)
	{
		obj.value = val;
		return val;
	}*/
	
}

function editSelectChkbox(val,obj)
{
	tot_length = obj.length;
	if(val != 0)
	{
		tempval = val.split(",");
		for(i=0;i<tot_length;i++)
		{
			for(j=0;j<tempval.length;j++)
			{
				if(obj[i].value.replace(/ /g,'') == tempval[j].replace(/ /g,''))
				{
					obj[i].checked = true;
					objfound=true;
					break;
				}				
			}
		}
	}
}

function IsValidDate(Day,Mn,Yr){
    var DateVal = Mn + "/" + Day + "/" + Yr;
	newdate = new Date();
	curryear = newdate.getFullYear();
	if(Day > 31)
		return false;
	if(Mn > 12)
		return false;
	
	if(Yr < 1900 || Yr > curryear)
		return false;
    var dt = new Date(DateVal);
    if(dt.getDate()!=Day){
        return(false);
        }
    else if(dt.getMonth()!=Mn-1)
		{
    //this is for the purpose JavaScript starts the month from 0
        return(false);
        }
    else if(dt.getFullYear()!=Yr){
        return(false);
        }
        
    return(true);
 }
function fromToDateChk(from,to)
{
	if (from > to)
		return false;
	else
		return true;
}

	
var xmlHttp;

function GetXmlHttpObject()
	{
	var xmlHttp=null;
	try
	  {
	  // Firefox, Opera 8.0+, Safari
	  xmlHttp=new XMLHttpRequest();
	  }
	catch(e)
	  {
	  // Internet Explorer
	  try
		{
		xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
		}
	  catch(e)
		{
		xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
		}
	  }
	return xmlHttp;
	}

function checkBirthDay(bdate)
{
  bdate=new Date(bdate)
  birthday=parseInt(bdate.getDate());
  birthmonth=parseInt(bdate.getMonth()+1);
  birthyear=parseInt(bdate.getFullYear());
  tempdate = new Date();
  tempyear = tempdate.getFullYear();
  
  currentdate=new Date("<%=Date()%>");
  currentday=parseInt(currentdate.getDate());
  currentmonth=parseInt(currentdate.getMonth()+1);
  currentyear=parseInt(currentdate.getFullYear());


  var age=0
  
  if(currentmonth>birthmonth)
  {
	 age=parseInt(currentyear)-parseInt(birthyear)
	 return age;	 
  }  
  else if(currentmonth<birthmonth)
  {
	 age=(parseInt(currentyear)-parseInt(birthyear))-1
	 return age;
  }
  else if(currentmonth==birthmonth && currentday<birthday)
  {
	 age=(currentyear-birthyear)-1
	 return age;
  }
  else if(currentmonth==birthmonth && currentday>=birthday)
  {
	 age=currentyear-birthyear
     return age;
  }
  return age;  
}



function ValidateDateofBirth(val)
{
	temp_full_Date = new Date();
	tempsrt_yr = (temp_full_Date.getFullYear()) + 1;
	tempsrt_yr= tempsrt_yr - 20;	
	tempendyr = temp_full_Date.getFullYear() +1;
	tempendyr = tempendyr - 17;
	//currentdateEndDate = "06/30/"+tempsrt_yr // End date
	//currentdatestart_date = "07/01/"+tempendyr;//Start Date	
	//alert(currentdatestart_date);
	
	//tempvaldate = Date.parse(val);
	currentdateEndDate = "06/30/1990"; // End date
	currentdatestart_date = "06/30/1993"	//Start Date
    tempvaldate = new Date(val)
	currentdateEndDate = new Date(currentdateEndDate)

	//alert(currentdateEndDate - tempvaldate );
	currentdateEndDate = Date.parse(currentdateEndDate);
	currentdatestart_date = Date.parse(currentdatestart_date);

		//alert(currentdatestart_date + "\n" + tempvaldate)

	if (currentdatestart_date > tempvaldate) //&& currentdateEndDate >  tempvaldate)
	{
		return false;
	}
	else
		return true;
}

function IsValidAge(yy,dd,mm)
{
	var age;
	var tempnewdate = new Date();
	var tempnewmonth = tempnewdate.getMonth() + 1;
	if(tempnewdate.getFullYear() != "2009")
	{
		if(tempnewmonth >= 6)
			tempnewdateyear = (tempnewdate.getFullYear()) + 1;
		else
			tempnewdateyear = (tempnewdate.getFullYear());
	}
	else
		tempnewdateyear = (tempnewdate.getFullYear()) + 1;

	
	temp_srt_date = tempnewdateyear - 17;
	tempend_date = tempnewdateyear - 20;
	
	var srt_chkDate = new Date(1993,7,1);//this is end date
	var end_minDate = new Date(1990,6,30);//this is start date
	var lclstr_Dob = new Date(yy,mm,dd);	
	if ((lclstr_Dob >= end_minDate) && (lclstr_Dob <= srt_chkDate))
		return true;
	else
		return false;
	
}
function convertDateFormat(dateVal) // converts dd/mm/yyy to mm/dd/yyy 
{
	var dayval;
	var monthval;
	var yearval;
	var datearr=dateVal.split("/")
	var newDateVal;
	dayval=parseInt(datearr[0],10)
	monthval=parseInt(datearr[1],10)
	yearval=parseInt(datearr[2],10)

	newDateVal=monthval+"/"+dayval+"/"+yearval
	return(newDateVal);
}

function dateSuffix(datestring)
{
    lcldt_dates=new Date(datestring)
	date=lcldt_dates.getDate();
	
     if (date==1) suffix=("st");
	else if (date==2) suffix=("nd");
	else if (date==3) suffix=("rd");
	else if (date==21) suffix=("st");
	else if (date==22) suffix=("nd");
	else if (date==23) suffix=("rd");
	else if (date==31) suffix=("st");
	else suffix=("th");
	
	return suffix;
}

function dateViewValue(dateVal) // converts dd/mm/yyy to mm/dd/yyy 
{
	var dayval;
	var monthval;
	var yearval;

	var newDateVal;
	
	monthval=dateVal.getMonth()
	dayval=dateVal.getDate()
	yearval=dateVal.getFullYear()
	
	if(String(dayval).length==1)
	{
	  dayval="0"+String(dayval)
	}


	  lclstr_suffix=dateSuffix(dateVal)

	
	lclint_hrtime=dateVal.getHours()
	lclint_Minutetime=dateVal.getMinutes()
	if(String(lclint_Minutetime).length=1)
	{
	  lclint_Minutetime="0"+String(lclint_Minutetime);
	}
	if(lclint_hrtime>11 && lclint_hrtime!=12)
	{
	  lclstr_time=String(lclint_hrtime-12)+":"+lclint_Minutetime+" PM"
	}
	else if(lclint_hrtime<12 && lclint_hrtime!=0)
	{
	 lclstr_time=String(lclint_hrtime)+":"+lclint_Minutetime+" AM"
	}
	else if(lclint_hrtime==12)
	{
	 lclstr_time=String(lclint_hrtime)+":"+lclint_Minutetime+" PM"
	}
	else if(lclint_hrtime==0)
	{
	 lclstr_time=String(12)+":"+lclint_Minutetime+" PM"
	}
	
	
	newDateVal=dayval+lclstr_suffix+" "+gbl_MonthArray[monthval]+", "+yearval+" "+lclstr_time
	return(newDateVal);
}

function dateViewValue(dateVal) // converts dd/mm/yyy to mm/dd/yyy 
{
	var dayval;
	var monthval;
	var yearval;

	var newDateVal;
	
	monthval=dateVal.getMonth()
	dayval=dateVal.getDate()
	yearval=dateVal.getFullYear()
	
	if(String(dayval).length==1)
	{
	  dayval="0"+String(dayval)
	}


	  lclstr_suffix=dateSuffix(dateVal)

	
	lclint_hrtime=dateVal.getHours()
	lclint_Minutetime=dateVal.getMinutes()
	if(String(lclint_Minutetime).length=1)
	{
	  lclint_Minutetime="0"+String(lclint_Minutetime);
	}
	if(lclint_hrtime>11 && lclint_hrtime!=12)
	{
	  lclstr_time=String(lclint_hrtime-12)+":"+lclint_Minutetime+" PM"
	}
	else if(lclint_hrtime<12 && lclint_hrtime!=0)
	{
	 lclstr_time=String(lclint_hrtime)+":"+lclint_Minutetime+" AM"
	}
	else if(lclint_hrtime==12)
	{
	 lclstr_time=String(lclint_hrtime)+":"+lclint_Minutetime+" PM"
	}
	else if(lclint_hrtime==0)
	{
	 lclstr_time=String(12)+":"+lclint_Minutetime+" PM"
	}
	
	
	newDateVal=dayval+lclstr_suffix+" "+gbl_MonthArray[monthval]+", "+yearval+" "+lclstr_time
	return(newDateVal);
}

function dateViewAdmin(dateVal) // converts dd/mm/yyy to mm/dd/yyy 
{
	var dayval;
	var monthval;
	var yearval;

	var newDateVal;
	
	monthval=dateVal.getMonth()
	dayval=dateVal.getDate()
	yearval=dateVal.getFullYear()
	
	if(String(dayval).length==1)
	{
	  dayval="0"+String(dayval)
	}


	  lclstr_suffix=dateSuffix(dateVal)

	
	lclint_hrtime=dateVal.getHours()
	lclint_Minutetime=dateVal.getMinutes()
	if(String(lclint_Minutetime).length=1)
	{
	  lclint_Minutetime="0"+String(lclint_Minutetime);
	}
	if(lclint_hrtime>11 && lclint_hrtime!=12)
	{
	  lclstr_time=String(lclint_hrtime-12)+":"+lclint_Minutetime+" PM"
	}
	else if(lclint_hrtime<12 && lclint_hrtime!=0)
	{
	 lclstr_time=String(lclint_hrtime)+":"+lclint_Minutetime+" AM"
	}
	else if(lclint_hrtime==12)
	{
	 lclstr_time=String(lclint_hrtime)+":"+lclint_Minutetime+" PM"
	}
	else if(lclint_hrtime==0)
	{
	 lclstr_time=String(12)+":"+lclint_Minutetime+" PM"
	}
	
	
	newDateVal=dayval+lclstr_suffix+" "+gbl_MonthArray[monthval]+", "+yearval
	return(newDateVal);
}
function timeViewAdmin(dateVal) // converts dd/mm/yyy to mm/dd/yyy 
{
	var dayval;
	var monthval;
	var yearval;

	var newDateVal;
	
	monthval=dateVal.getMonth()
	dayval=dateVal.getDate()
	yearval=dateVal.getFullYear()
	
	if(String(dayval).length==1)
	{
	  dayval="0"+String(dayval)
	}


	  lclstr_suffix=dateSuffix(dateVal)

	
	lclint_hrtime=dateVal.getHours()
	lclint_Minutetime=dateVal.getMinutes()
	if(String(lclint_Minutetime).length=1)
	{
	  lclint_Minutetime="0"+String(lclint_Minutetime);
	}
	if(lclint_hrtime>11 && lclint_hrtime!=12)
	{
	  lclstr_time=String(lclint_hrtime-12)+":"+lclint_Minutetime+" PM"
	}
	else if(lclint_hrtime<12 && lclint_hrtime!=0)
	{
	 lclstr_time=String(lclint_hrtime)+":"+lclint_Minutetime+" AM"
	}
	else if(lclint_hrtime==12)
	{
	 lclstr_time=String(lclint_hrtime)+":"+lclint_Minutetime+" PM"
	}
	else if(lclint_hrtime==0)
	{
	 lclstr_time=String(12)+":"+lclint_Minutetime+" PM"
	}
	
	
	newDateVal=lclstr_time
	return(newDateVal);
}
function dateOPTValue(dateVal) // converts dd/mm/yyy to mm/dd/yyy 
{
	var dayval;
	var monthval;
	var yearval;

	var newDateVal;
	
	monthval=dateVal.getMonth()+1
	dayval=dateVal.getDate()
	yearval=dateVal.getFullYear()
	
	if(String(dayval).length==1)
	{
	  dayval="0"+String(dayval)
	}
	lclint_hrtime=dateVal.getHours()
	lclint_Minutetime=dateVal.getMinutes()
	if(String(lclint_Minutetime).length=1)
	{
	  lclint_Minutetime="0"+String(lclint_Minutetime);
	}
	if(lclint_hrtime>11 && lclint_hrtime!=12)
	{
	  lclstr_time=String(lclint_hrtime-12)+":"+lclint_Minutetime+" PM"
	}
	else if(lclint_hrtime<12 && lclint_hrtime!=0)
	{
	 lclstr_time=String(lclint_hrtime)+":"+lclint_Minutetime+" AM"
	}
	else if(lclint_hrtime==12)
	{
	 lclstr_time=String(lclint_hrtime)+":"+lclint_Minutetime+" PM"
	}
	else if(lclint_hrtime==0)
	{
	 lclstr_time=String(12)+":"+lclint_Minutetime+" PM"
	}
	
	newDateVal=monthval+"/"+dayval+"/"+yearval+" "+lclstr_time
	return(newDateVal);
}
function LTrim(thisstring)
{
	while(thisstring.charAt(0)==" ")
	{
		 thisstring=thisstring.substring(1,thisstring.length)
	}

	thisstring=RTrim(thisstring);
	return thisstring
}

function RTrim(thisstring)
{
	while(thisstring.charAt(thisstring.length-1)==" ")
	{
					thisstring=thisstring.substring(0,(thisstring.length-1))
	}
	return thisstring
}

function getQueryString(stringtofind) 
 {
   var queryStringvalue="";
   if(window.location.search.substring(1)!="")
	 {
		QueryString=window.location.search.substring(1);
		QueryStringArray = QueryString.split("&");
		for (i=0;i<QueryStringArray.length;i++) 
			{
				QueryStringValue = QueryStringArray[i].split("=");
				if (QueryStringValue[0] == stringtofind) 
				{
				   queryStringvalue=QueryStringValue[1];
				}
			}	
	 }  
	 return queryStringvalue;
  }
  
function removeDuplicateElement(arrayName)
      {
        var newArray=new Array();
        label:for(var i=0; i<arrayName.length;i++ )
        {  
          for(var j=0; j<newArray.length;j++ )
          {
            if(newArray[j]==arrayName[i]) 
            continue label;
          }
          newArray[newArray.length] = arrayName[i];
        }
        return newArray;
      }  
	  
function removeDuplicateOption(Target) {
            var intializer, TValue0, TValue1, TText0, TText1;
            for (intializer=1; intializer<Target.options.length; intializer++) {
              TValue0=Target.options[intializer-1].value;
              TText0 =Target.options[intializer-1].text;
              TValue1=Target.options[intializer].value;
              TText1 =Target.options[intializer].text;
              if ((TValue1 == TValue0) && (TText1 == TText0)) {
                Target.options[intializer]=null;
                intializer-=1;
              }
            }
          } 	

function removeDuplicateOptiononlyText(Target) {
            var intializer, TValue0, TValue1, TText0, TText1;
            for (intializer=1; intializer<Target.options.length; intializer++) {
              TValue0=Target.options[intializer-1].value;
              TText0 =Target.options[intializer-1].text;
              TValue1=Target.options[intializer].value;
              TText1 =Target.options[intializer].text;
			  //alert(TText1 +"\n"+ TText0)
              if ((TText1 == TText0)) {
                Target.options[intializer]=null;
                intializer-=1;
              }
            }
          } 
		  
function fnRemoveOptions(sValue,Target){

	var i = Target.options.length;
	var bFound = false;
	while(i>0){
		  i--;
		// alert(Target.options[i].text==sValue)
		  if (Target.options[i].text==sValue && bFound==false) {
				bFound = true
		  }
		  else if (Target.options[i].text==sValue){
				Target.removeChild(Target.options[i]);
		  }
		  
	}
}

function fnSortDropDown(Target){
            var i = 0;
            while(i<Target.options.length){
                  fnRemoveOptions(Target.options[i].text,Target)
                  i++;
            }
			sortlist(Target);
      }
 
function sortlist(targetElement) {
arrTexts = new Array();
for (i=0; i <targetElement.length; i++)
	arrTexts[i]=new Array(2)

for(i=1; i<targetElement.length; i++)  {
   arrTexts[i][0] = targetElement.options[i].text;
   arrTexts[i][1] = targetElement.options[i].value;
}

arrTexts.sort();

for(i=1; i<targetElement.length; i++)  {
  targetElement.options[i].text = arrTexts[i][0];
  targetElement.options[i].value = arrTexts[i][1];
}
}
 

		  
	  