// used for month combo
var monthname= new Array() 
monthname[1]="January"; 
monthname[2]="February"; 
monthname[3]="March"; 
monthname[4]="April"; 
monthname[5]="May"; 
monthname[6]="June"; 
monthname[7]="July"; 
monthname[8]="August"; 
monthname[9]="September"; 
monthname[10]="October"; 
monthname[11]="November"; 
monthname[12]="December"; 

function getYearCombo(cname,startval, endval)
{
	val = '<select name="'+cname+'">';
	val += '<option value="0">Year</option>';  	
	for(q=startval; q<endval; q++)	{
		val += '<option value="'+q+'">'+q+'</option>';  	
	}
	val += '</select>';
	return val;
}
function getMonthCombo(mname)
{
	val = '<select name="'+mname+'" style="width:75px">';
	val += '<option value="0">Month</option>';  		
	for(q=1; q<monthname.length; q++)	{
		if(q < 10)	{
			v = "0"+q;
			val += '<option value="'+v+'">'+monthname[q]+'</option>';  		
		}	
		else
			val += '<option value="'+q+'">'+monthname[q]+'</option>';  					
	}
	val += '</select>';
	return val;
}
function getDayCombo(dname)
{
	val = '<select name="'+dname+'">';
	val += '<option value="0">Day</option>';  	
	for(q=1; q<=31; q++)	{
		if(q < 10)	{
			q = "0"+q;
			val += '<option value="'+q+'">'+q+'</option>';  		
		}
		else
			val += '<option value="'+q+'">'+q+'</option>';  					
	}
	val += '</select>';
	return val;
}

function Trim(s)
{
  // Remove leading spaces and carriage returns
  
  while ((s.substring(0,1) == ' ') || (s.substring(0,1) == '\n') || (s.substring(0,1) == '\r'))
  {
    s = s.substring(1,s.length);
  }

  // Remove trailing spaces and carriage returns

  while ((s.substring(s.length-1,s.length) == ' ') || (s.substring(s.length-1,s.length) == '\n') || (s.substring(s.length-1,s.length) == '\r'))
  {
    s = s.substring(0,s.length-1);
  }
  return s;
}

function alphanum(value,length)
{
	chk1="1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_\-";
	for(i=0;i<length;i++)
	{
		ch1=value.charAt(i);
		rtn1=chk1.indexOf(ch1);
		if(rtn1==-1)
			return false;
	}
	return true;
}
function number(value,length)
{
	chk1="1234567890";
	for(i=0;i<length;i++)
	{
		ch1=value.charAt(i);
		rtn1=chk1.indexOf(ch1);
		if(rtn1==-1)
			return false;
	}
	return true;
}
function decimalNumber(value,length)
{
	chk1="1234567890.";
	for(i=0;i<length;i++)
	{
		ch1=value.charAt(i);
		rtn1=chk1.indexOf(ch1);
		if(rtn1==-1)
			return false;
	}
	return true;
}
function smallLetter(value,length)
{
	chk1="abcdefghijklmnopqrstuvwxyz";
	for(i=0;i<length;i++)
	{
		ch1=value.charAt(i);
		rtn1=chk1.indexOf(ch1);
		if(rtn1==-1)
			return false;
	}
	return true;
}
function capLetter(value,length)
{
	chk1="ABCDEFGHIJKLMNOPQRSTUVWXYZ";
	for(i=0;i<length;i++)
	{
		ch1=value.charAt(i);
		rtn1=chk1.indexOf(ch1);
		if(rtn1==-1)
			return false;
	}
	return true;
}
function letter(value,length)
{
	chk1="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ ";
	for(i=0;i<length;i++)
	{
		ch1=value.charAt(i);
		rtn1=chk1.indexOf(ch1);
		if(rtn1==-1)
			return false;
	}
	return true;
}
function symbol(value,length)
{
	chk1="~`!@#$%^&*()_-+=|\{}[]:;'<>?/,";
	for(i=0;i<length;i++)
	{
		ch1=value.charAt(i);
		rtn1=chk1.indexOf(ch1);
		if(rtn1==-1)
			return false;
	}
	return true;
}
function btncclick()
{
	if(!checkvalid())
	{
		return false;
	}
	document.frmadd.addmore.value=true;
	return true;
}

function phone_formate(input,length)
{
	chk1="+1234567890()- ";
	for(i=0;i<length;i++)
	{
		ch1=value.charAt(i);
		rtn1=chk1.indexOf(ch1);
		if(rtn1==-1)
			return false;
	}
	return true;
}

function quatation(value,length)
{
	chk1="\\";
	for(i=0;i<length;i++)
	{
		ch1=value.charAt(i);
		rtn1=chk1.indexOf(ch1);
		if(rtn1==0)
			return true;
	}
//	return true;
}


	var bikky = document.cookie;
	var today = new Date();
	var expiry = new Date(today.getTime() + 28 * 24 * 60 * 60 * 1000); // plus 28 days

	function ShowHideCategories(CategoryName,Action)
	{
		var layerHidden = eval(getLayer(CategoryName + "LayerHidden"));
		var layer = eval(getLayer(CategoryName + "Layer"));
		if(Action=="Hide")
		{
			if (document.layers) 
			{
				layerHidden.visibility = "show" ;
				layer.visibility = "hide" ;
			}
			else if (document.getElementById) 
			{
				layerHidden.style.display = 'none';
				layer.style.display = '';
			}	
			//setCookie(CategoryName+"Visibility", Action);
		}
		else
		{
			if (document.layers) 
			{
				layerHidden.visibility = "hide" ;
				layer.visibility = "show" ;
			}
			else if (document.getElementById) 
			{
				layerHidden.style.display = '';
				layer.style.display = 'none';
			}
			//setCookie(CategoryName+"Visibility", Action);
		}
	}
	
	function getLayer(layerName)
	{
		if (document.layers) 
	        return window.document.layers[layerName]
		else if (document.getElementById)
			return document.getElementById(layerName)
	}
	function HighlightBoxWithBorder(Name,Highlight)
	{
		if(Highlight=="true")
		{
			Name.style.background = "#f0f0f0";
			Name.style.cursor="hand";
		}
		else
		{
			Name.style.background = "#ffffff";
		}
	}

function Highlight(e)
{
	if(e.className!="raw_selectedcolor")
		e.className="raw_mouseoverbg";
}
function UnHighlight(e,classname)
{
//	alert(e.className)
	if(e.className!="raw_selectedcolor")
		e.className=classname;
}
function checkNumber()
{  
	val = event.keyCode;
   	if(val==13)
		return true;
	if(val<48)
	{
	  event.keyCode=0;
	}
	if(val>57)
	{
	event.keyCode=0;
	}
	return true;
}

function checkFloatNumber()
{  
	val = event.keyCode;
	//alert(val);
   	if(val==13)
		return true;
	if(val<48 && val!=46)
	{
	  event.keyCode=0;
	}
	if(val>57)
	{
	event.keyCode=0;
	}
	return true;
}

/// Make select Combo
function setectCombo(obj, val)
{
	for(i=0; i<obj.length ; i++)
	{
		if(obj[i].value==val)
		{
			obj[i].selected=true;
			break;
		}
	}
}
function selectCheckcolor(e,i)
{
	var r = null;
	if (e.parentNode && e.parentNode.parentNode) 
	{
		r = e.parentNode.parentNode.parentNode;
	}
	else if (e.parentElement && e.parentElement.parentElement) 
	{
		r = e.parentElement.parentElement.parentElement;
	}
	if(e.checked)
	{
		r.className="raw_selectedcolor";
	}
	else
	{
		if(i%2==0)
			r.className="evenrowbg";
		else
			r.className="oddrowbg";
	}
}

function selectCellcolor(e,i)
{
	var r = null;
	if (e.parentNode && e.parentNode.parentNode) 
	{
		r = e.parentNode;
	}
	else if (e.parentElement && e.parentElement.parentElement) 
	{
		r = e.parentElement;
	}
	if(e.checked)
	{
		r.className="raw_selectedcolor";
	}
	else
	{
		if(i%2==0)
			r.className="evenrowbg";
		else
			r.className="oddrowbg";
	}
}
function phoneformate(value,length)
{
	chk1="+1234567890()- ";
	for(i=0;i<length;i++)
	{
		ch1=value.charAt(i);
		rtn1=chk1.indexOf(ch1);
		if(rtn1==-1)
			return false;
	}
	return true;
}

//Added By : chetan
//Date : 22/05/05
function numeric(value,length)
{
	chk1="1234567890";
	for(i=0;i<length;i++)
	{
		ch1=value.charAt(i);
		rtn1=chk1.indexOf(ch1);
		if(rtn1==-1)
			return false;
	}
	return true;
}
//Added by Anupriya
function checkNumberdeci()
{  
	val = event.keyCode;
   	if(val==13)
		return true;
	if(val<48)
	{
	  event.keyCode=0;
	}
	if(val==46)
	{
	event.keyCode=0;
	}
	return true;
}

function changeSeach(objText, objSelect, msg)
{
	//frm=document.frmList;
	lenCam = var_id_array.length;
	objSelect.length=1;
	j=1;
	objSelect.length=1;
	objSelect[0].text="<--- Select ---->";
	objSelect[0].value="0";

	for(i=0;i<lenCam;i++)
	{
		
		if((var_text_array[i].substring(0,objText.value.length)).toUpperCase()==objText.value.toUpperCase())
		{
			j++;	
			objSelect.length=j;
			objSelect[j-1].text=var_text_array[i];
			objSelect[j-1].value=var_id_array[i];
		}
	}
	existRecord(objSelect, msg);
}
function existRecord(cam,msg)
{
	if(cam.length==0)
	{
		alert(msg);
		cam.focus();
		return false;
	}
	return true;
}
function pollwin(url,w, h)
{
	pollwindow=window.open(url,'pollwindow','top=0,left=0,status=no,toolbars=no,scrollbars=no,width='+w+',height='+h+',maximize=no,resizable');
	pollwindow.focus();
}

function checkSpCharacter()
{
	val = event.keyCode;
	//alert(val);
   	if(val==13)
		return true;
	if(val<48)
		return true;
	else if(val>57 && val<65)
		return true;
	else if(val >90 && val <97)
		return true;
	else if(val>122)
		return true;
	return false;
}

function date_check(Year,Month,Day)
{
	thetime = new Date();
	var mm = thetime.getMonth()+1;
	var dd = thetime.getDate();
	var yy = thetime.getYear();
		if(Year < yy)
		{
	/*alert(Year + " " + yy);
	alert(Day + " " + dd);
	alert(Month + " " + mm);		
	return false;*/
			//alert("Year must be Greater OR Equal Current Year");
			return false;
		}
		else if((Year==yy) && Month < mm)
		{
			//alert("Month must be Greater OR Equal Current Month");
			return false;
		}
		else if((Year==yy) && (Month==mm) && (Day<dd))
		{
			//alert("Day must be Greater OR Equal Current Day");
			return false;
		}
		else
		{
			return true;		
		}
	
}

function selDate(obj_mm,obj_dd,obj_yy,date_val){
	if(date_val != ''){	
		var d = new Date(date_val)
		selCombo(obj_mm,d.getMonth() + 1)
		selCombo(obj_dd,d.getDate())
		selCombo(obj_yy,d.getFullYear())
	}
}

function selCombo(obj,val)
{
	for(var r=0; r < obj.length; r++)
		{	//alert(r)
			if(obj.options[r].value == val)
			{
				obj.options[r].selected = true;
				break;
			}
		
		}
}		

function isRadioChecked(obj)
{
	for(i=0;i< obj.length;i++)
	{
		if(obj[i].checked == true)
		return true;
	}
	return false;
}
function ShowHelp(div, title, desc)
{
	div=document.getElementById(div);
	div.style.display = 'inline';
	div.style.position = 'absolute';
	div.style.width = title.length * 8 +10;
	div.style.backgroundColor = 'lightyellow';
	div.style.border = 'dashed 2px black';
	div.style.padding = '5px';
	div.innerHTML = '<b>' + title + '</b></div>';
}
function HideHelp(div)
{	
	div=document.getElementById(div);
	div.style.display = 'none';
}	

function isValidEmail(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) {
		alert("Email address seems incorrect (check @ and .'s)");
		return false;
	}
	var user=matchArray[1];
	var domain=matchArray[2];
	// Start by checking that only basic ASCII characters are in the strings (0-127).
	for (i=0; i<user.length; i++) {
		if (user.charCodeAt(i)>127) {
			alert("Ths username contains invalid characters.");
			return false;
		}
	}
	for (i=0; i<domain.length; i++) {
		if (domain.charCodeAt(i)>127) {
			alert("Ths domain name contains invalid characters.");
			return false;
		}
	}
	if (user.match(userPat)==null) {
		alert("The username doesn't seem to be valid.");
		return false;
	}
	var IPArray=domain.match(ipDomainPat);
	if (IPArray!=null) {
		for (var i=1;i<=4;i++) {
			if (IPArray[i]>255) {
				alert("Destination IP address is invalid!");
				return false;
	   		}
		}
		return true;
	}
	var atomPat=new RegExp("^" + atom + "$");
	var domArr=domain.split(".");
	var len=domArr.length;
	for (i=0;i<len;i++) {
		if (domArr[i].search(atomPat)==-1) {
			alert("The domain name does not seem to be valid.");
			return false;
	   }	
	}
	if (checkTLD && domArr[domArr.length-1].length!=2 && 
		domArr[domArr.length-1].search(knownDomsPat)==-1) {
		alert("The address must end in a well-known domain or two letter " + "country.");
		return false;
	}

// Make sure there's a host name preceding the domain.

	if (len<2) {
		alert("This address is missing a hostname!");
		return false;
	}	
	return true;
}




