function trim(value) {
   var temp = value;
   var obj = /^(\s*)([\W\w]*)(\b\s*$)/;
   if (obj.test(temp)) { temp = temp.replace(obj, '$2'); }
   var obj = / +/g;
   temp = temp.replace(obj, " ");
   if (temp == " ") { temp = ""; }
   return temp;
}

function checkFormValidation (objForm) {
	var result;
	var attrValid;
	for (var i=0; i<objForm.elements.length; i++) {
		attrValid = objForm.elements[i].getAttribute("valid");
		if (attrValid) {
			var regExp = new RegExp("^(m|n)_(d|i|t|a|s|o|f|e|u|p|r|l|z|x|c|h)","g");
			result = regExp.exec(attrValid);
			if (result[1] == "m" && !checkFormMantatory(objForm.elements[i]) )  return false;
			if (trim(objForm.elements[i].value) != "") {

				switch (result[2]) {
					case "d":
						if ( !checkValidDate(objForm.elements[i],true) ) return false;
						break;
					case "i":
						if ( !checkFormInteger(objForm.elements[i],true) ) return false;
						break;
					case "t":
						if ( !checkFormCode(objForm.elements[i],true) ) return false;
						break;
					case "a":
						if ( !checkFormAlphaNumeric(objForm.elements[i],true )) return false;
						break;
					case "s":
						if ( !checkFormSpecialChar(objForm.elements[i],true) ) return false;
						break;
					case "o":
						if ( !checkOptionForm(objForm.elements[i],true) ) return false;
						break;
					case "f":
						if ( !checkFormImageFile(objForm.elements[i],true) ) return false;
						break;
					case "e":
						if ( !checkFormEmail(objForm.elements[i],true) ) return false;
						break;
					case "h":
						if ( !checkFormPhone(objForm.elements[i],true) ) return false;
						break;
					case "p":
						if ( !checkFormPassword(objForm.elements[i],true) ) return false;
						break;
					case "r":
						if ( !checkRadioForm(objForm.elements[i],true) ) return false;
						break;
					case "c":
						if ( !checkCheckBoxForm(objForm.elements[i],true) ) return false;
						break;
					case "l":
						if ( !checkFormAlpNumSpace(objForm.elements[i],true) ) return false;
						break;
					case "x":
						if ( !checkFormExcelFile(objForm.elements[i],true) ) return false;
						break;
					case "z":
						if ( !checkFormCharSpace(objForm.elements[i],true) ) return false;
						break;
					case "u":
						break;

				} //  Switch end

			}// Non mantatory but characters are there !!! checking

		} // valid attribute check
	} // for llop
	return true;
}

function checkFormEmail (objElement) {

		var argv = arguments;
	var argc = arguments.length;
	var isAlert = (argc > 1 ) ? argv[1] : false;
 	var re=/^([a-zA-Z0-9_\-\.]+)@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.)|(([a-zA-Z0-9\-]+\.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(\]?)$/;
	var strInputDate = objElement.value;
	if ( strInputDate.match(re) ) {
		return true;
	}else {
		if ( isAlert ) {
			alert( objElement.getAttribute("errname")+" is not valid a Valid EMail");
			objElement.focus();
		}
		return false;
	}
	return true;
}

function checkFormMantatory (objElement) {
	if ( trim(objElement.value) == "" ) {
		alert ("Please enter the "+objElement.getAttribute("errname"));
		objElement.value = "";
		objElement.focus();
		return false;
	}
	return true;
}

function checkOptionForm(objElement) {
	if (objElement.value == "" || objElement.selectedIndex == 0 ) {
		alert ("Please select the "+objElement.getAttribute("errname"));
		objElement.focus();
		return false;
	}
	return true;
}

function checkFormPhone (objElement) {
	var argv = arguments;
	var argc = arguments.length;
	var isAlert = ( argc > 1) ? argv[1] : false;
	var regExp =/^[0-9\-\+]*/gi
	var result =  new String(objElement.value.match(regExp));
	if ( result == objElement.value) return true;
	if ( isAlert ) {
		alert (objElement.getAttribute("errname")+" accepts only Numbers , Hypens and +");
	}
	objElement.focus();
	return false;
}

function checkRadioForm(objElement) {

	var radio = document.getElementsByName(objElement.name);
	j=0;
	for (i= 0;i<radio.length ;i++){
		if (radio[i].checked == true){
			j++
		}
	}

	if ( j == 0 ) {
		alert ("Please select the "+objElement.getAttribute("errname"));
		objElement.focus();
		return false;
	}
	return true;

}

function checkCheckBoxForm(objElement) {

	var checkBox = document.getElementsByName(objElement.name);
	j=0;
	for (i= 0;i<checkBox.length ;i++){
		if (checkBox[i].checked == true){
			j++
		}
	}

	if ( j == 0 ) {
		alert ("Please select the "+objElement.getAttribute("errname"));
		objElement.focus();
		return false;
	}
	return true;

}


function checkValidDate (objElement) {
	var argv = arguments;
	var argc = arguments.length;
	var isAlert = (argc > 1 ) ? argv[1] : false;
	var re=/^((29-0?2-\d{2}([13579][26]|[02468][048]))|((0?[1-9]|[1-2]\d|3[0-1])-(0?[13578]|10|12)-\d{4})|((0?[1-9]|[1-2]\d|30)-(0?[469]|11)-\d{4})|((0?[1-9]|1\d|2[0-8])-0?2-\d{4}))/g;
	var strInputDate = objElement.value.replace(/\//g,"-");
	if ( strInputDate.match(re) ) {
		return true;
	}else {
		if ( isAlert ) {
			alert( objElement.getAttribute("errname")+" is not valid");
			objElement.focus();
		}
		return false;
	}
	return true;
}

function checkValidFromToDate (objElement) {
	var argv = arguments;
	var argc = arguments.length;
	var isAlert = (argc > 1 ) ? argv[1] : false;
	Months = ["jan", "feb", "mar", "apr", "may", "jun",
			"jul", "aug", "sep", "oct", "nov", "dec"];

	var re= /^((0?[1-9]|1\d|2[0-8])-0?2-\d{4})/g
	//var strInputDate = objElement.value.replace(/\//g,"-");
	var strInputDate = objElement.value;
	var strInput = strInputDate.split("-");
	if(strInput.length == 2){
		if (strInput[1].match(re) ) {
			return true;
		}
		else
		{
			alert( objElement.getAttribute("errname")+" is not valid");
			objElement.focus();
			return false;
		}
	}else {
		if ( isAlert ) {
			alert( objElement.getAttribute("errname")+" is not valid");
			objElement.focus();
		}
		return false;
	}
	return true;
}


/*This function change date to long*/
function getLongDate(dd,mm,yy){
	dd=dd.toString()
	mm=mm.toString()
	yy=yy.toString()
	return parseInt(yy+mm+dd)
}

/*	Extract date from given form date */
function getFormDate (date) {
	var re = /^(0?\d{1,2})[\/-]0?\d{1,2}[\/-]\d{4}/g
	var arr= re.exec(date);
	var ret = false;
	for (i in arr) {
		if ( i==1) ret = true;
	}
	if (ret) return checkDateLength( arr[1] );
	return 0;
}

/*	Extract month from given form date */
function getFormMonth (date) {
	var re = /^0?\d{1,2}[\/-](0?\d{1,2})[\/-]\d{4}/g
	var arr= re.exec(date);
	var ret = false;
	for (i in arr) {
		if ( i==1) ret = true;
	}
	if (ret) return checkDateLength( arr[1] );
	return 0;
}

/*	Extract year from given form date */

function getFormYear (date) {
	var re = /^0?\d{1,2}[\/-]0?\d{1,2}[\/-](\d{4})/g
	var arr= re.exec(date);
	var ret = false;
	for (i in arr) {
		if ( i==1) ret = true;
	}
	if (ret) return arr[1];
	return 0;
}

function compareDate (date1,date2) {
	var date1 = getLongDate ( getFormDate(date1),getFormMonth(date1),getFormYear(date1));
	var date2 = getLongDate ( getFormDate(date2),getFormMonth(date2),getFormYear(date2));
	if (date1 == date2) return 0;
	if (date1 > date2) return 1;
	if (date1 < date2) return -1;
}

function checkDateLength (date) {
	var strDate = date.toString();
	if ( strDate.length == 1) strDate = "0"+strDate;
	return strDate;
}

/*	Check special characters */

function checkFormInteger (objElement) {
		var argv = arguments;
		var argc = arguments.length;
		var isAlert = ( argc > 1) ? argv[1] : false;
		var regExp =/^[0-9]\d*/gi
		var result =  new String(objElement.value.match(regExp));
		if ( result == objElement.value) return true;
		if ( isAlert ) {
			alert (objElement.getAttribute("errname")+" accepts only integer values");
		}
		objElement.focus();
		return false;
}

function checkFormCode (objElement) {
		var argv = arguments;
		var argc = arguments.length;
		var isAlert = ( argc > 1) ? argv[1] : false;
		//var regExp =/^[0-9]\d*/gi
		var regExp =/^[0-9]{6,6}/gi
		var result =  new String(objElement.value.match(regExp));
		if ( result == objElement.value) return true;
		if ( isAlert ) {
			alert (objElement.getAttribute("errname")+" accepts only numbers and should contain 6 numbers");
		}
		objElement.focus();
		return false;
}
function checkFormFloat (objElement) {
		var argv = arguments;
		var argc = arguments.length;
		var isAlert = ( argc > 1) ? argv[1] : false;
		var regExp =/^[0-9]+[\.]?[0-9]{0,2}/gi
		var mark = objElement.value;
		
		if (objElement.getAttribute("sal") != "1"){
			var dec = mark.split(".");
			if (dec.length >2){
				alert (objElement.getAttribute("errname")+" is not valid");
				objElement.focus();
				return false;
			}
			if (dec[0] >100 || (dec[0]==100 && dec[1] >0)){
				alert (objElement.getAttribute("errname")+" should not exceed 100");
				objElement.focus();
				return false;
			}
		}
		var result =  new String(objElement.value.match(regExp));
		if ( result == objElement.value) return true;
		if ( isAlert ) {
			alert (objElement.getAttribute("errname")+" accepts only float values");
		}
		
		objElement.focus();
		return false;
}

function checkFormPassword (objElement) {
	var argv = arguments;
	var argc = arguments.length;
	var isAlert = (argc > 1 ) ? argv[1] : false;
	var regExp = /^[^\'\"][0-9a-z#@$%=+-]+/gi;
	var result = new String(objElement.value.match(regExp));
	if ( result == objElement.value) return true;
	if ( isAlert ) {
		alert (objElement.getAttribute("errname") + " accepts only alpha numeric values! \n Note: Quotes are not allowed!");
	}
	objElement.focus();
	return false;
}

function checkFormAlphaNumeric (objElement) {
	var argv = arguments;
	var argc = arguments.length;
	var isAlert = (argc > 1 ) ? argv[1] : false;
	var regExp = /^[a-z][a-z0-9]+/gi;
	var result = new String(objElement.value.match(regExp));
	if ( result == objElement.value) return true;
	if ( isAlert ) {
		alert (objElement.getAttribute("errname") + " accepts only alpha numeric values! \n Note: First character should be Alphabet");
	}
	objElement.focus();
	return false;
}

function checkFormAlpNumSpace (objElement) {
	var argv = arguments;
	var argc = arguments.length;
	var isAlert = (argc > 1 ) ? argv[1] : false;
	var regExp = /^[a-z0-9 ]+/gi;
	var result = new String(objElement.value.match(regExp));
	if ( result == objElement.value) return true;
	if ( isAlert ) {
		alert (objElement.getAttribute("errname") + " accepts only alpha numeric values and space! \n ");
	}
	objElement.focus();
	return false;
}

function checkFormAlpNumSpaceDot (objElement) {
	var argv = arguments;
	var argc = arguments.length;
	var isAlert = (argc > 1 ) ? argv[1] : false;
	var regExp = /^[a-z0-9 .()]+/gi;
	var result = new String(objElement.value.match(regExp));
	if ( result == objElement.value) return true;
	if ( isAlert ) {
		alert (objElement.getAttribute("errname") + " accepts only alpha numeric values,Dot and space! \n ");
	}
	objElement.focus();
	return false;
}

function checkFormCharSpace (objElement) {
	var argv = arguments;
	var argc = arguments.length;
	var isAlert = (argc > 1 ) ? argv[1] : false;
	var regExp = /^[a-z]+[a-z ]*/gi;
	var result = new String(objElement.value.match(regExp));
	if ( result == objElement.value) return true;
	if ( isAlert ) {
		alert (objElement.getAttribute("errname") + " accepts only character and space! \n ");
	}
	objElement.focus();
	return false;
}

function checkFormSpecialChar (objElement) {
	var argv = arguments;
	var argc = arguments.length;
	var isAlert = (argc > 1 ) ? argv[1] : false;
	var regExp = /^[\w\W]*/gi;
	var result = new String(objElement.value.match(regExp));
	if ( result == objElement.value) return true;
	if ( isAlert ) {
		alert (objElement.getAttribute("errname")+"  accepts only alphanumeric, &, - and spaces");
	}
	objElement.focus();
	return false;
}

function checkFormImageFile (objElement) {
	var argv = arguments;
	var argc = arguments.length;
	var isAlert = (argc > 1 ) ? argv[1] : false;

	//var regExp = /\.(jpg|jpeg|gif)/gi
	var regExp = /\.(xls|txt)/gi
	if (!objElement.value.match(regExp)){
		alert (objElement.getAttribute("errname")+"  accepts only .xls, .txt File Formats.");
		objElement.focus();
		return false;
	}
	return true;

}

function checkImageFile (strInput) {
	var regExp = /\.(jpg|jpeg|gif)/gi
	if ( strInput.match(regExp) ) {
		return true;
	}
	return false;
}

function removeOptions (objElement, removeIndex) {
	var totLength = objElement.options.length;
	for ( var i=0;i<totLength;i++) {
		objElement.remove(removeIndex);
	}
}

//	Reset form values for the given form

function resetFormValues (objForm) {
	for (var i=0;i<objForm.elements.length;i++) {
     if ( objForm.elements[i].type.match(/^(text|password)/gi) ) {
	       objForm.elements[i].value = "";
	   }
	   if ( objForm.elements[i].type.match(/^(select)/gi) ) {
	       objForm.elements[i].selectedIndex = 0;
	   }
	   if ( objForm.elements[i].type.match(/^(checkbox|radio)/gi) ) {
		   objForm.elements[i].checked = false;
	   }

   }
}

function blockImages () {
	var objImages = document.images;
	for ( var i=0;i<objImages.length;i++) {
		if ( !checkImageFile(objImages[i].src) ) {
			objImages[i].style.display = "none";
		}
	}
}

function checkall_click(formid){
	var objForm = document.forms[formid];
	for (var i=0;i<objForm.elements.length;i++) {
	   if ( objForm.elements[i].type.match(/^(checkbox)/gi) ) {
		   objForm.elements[i].checked = true;
	   }
   }
}

function clearall_click(formid){
	var objForm = document.forms[formid];
	for (var i=0;i<objForm.elements.length;i++) {
	   if ( objForm.elements[i].type.match(/^(checkbox)/gi) ) {
		   objForm.elements[i].checked = false;
	   }
   }
}

function delete_click(formid){
	var objForm = document.forms[formid];
	var formLength = objForm.elements.length;
	var checked = 0;
	var checkboxLength = 0;
	for (var i=0;i<formLength;i++) {
	  if ( objForm.elements[i].type.match(/^(checkbox)/gi) ) {
			checkboxLength++;
		  if(objForm.elements[i].checked == true){
			 		checked ++;
			}
	  }
  }

	if (checkboxLength == 0) {
		return false;
	}

	if (checked > 0 ){
		if(confirm("Are you sure want to delete the selected file(s)?")){
			objForm.submit();
		}
		return false;
	}else{
		alert("Atleast one File need to be Selected!");
		return false;
	}

}

function toggleRow(status,element){

	var oRow = document.getElementById(element);
	if (status == "y"){
		//cloneRow = oRow.cloneNode(true);
		oRow.style.display="block";
	}else if(status == "n"){
		oRow.style.display="none";
	}
}

function nologin(){

	self.location.replace("logout.php");

}

function noaccess(){

	self.location.replace("bulkhome.php");

}

function statusmsg(id){
	var mymsg = new Array(' Loading...! ',' Processing...! ',' Retrieveing...! ','')
	statusElement = document.getElementById('statusbar');
	if (statusElement != null)
	statusElement.innerHTML = mymsg[id];
}



function menuUp(element) {
	var oActiveMenu = document.getElementById(element);
	if(IsFocus(oActiveMenu)){
		var selIndex = oActiveMenu.selectedIndex;
		if (selIndex <= 0 ) {
			alert("You cannot Move \""+ oActiveMenu[selIndex].text +"\" Upward");
		}else{
		  swapMenu(element,selIndex, selIndex - 1)
    }
  }
}

function menuDown(element) {
	var oActiveMenu = document.getElementById(element);
	if(IsFocus(oActiveMenu)){
	  var selIndex = oActiveMenu.selectedIndex;
	  if (selIndex >= oActiveMenu.length - 1 ) {
			alert("You cannot Move \""+ oActiveMenu[selIndex].text +"\" Downward");
		}else{
			swapMenu(element,selIndex, selIndex + 1)
		}
	}
}

function swapMenu(element,source, destination) {
  var oActiveMenu = document.getElementById(element);
  var tempValue = oActiveMenu[source].value;
  var tempText = oActiveMenu[source].text;
	oActiveMenu[source].value = oActiveMenu[destination].value;
	oActiveMenu[source].text = oActiveMenu[destination].text;
	oActiveMenu[destination].value = tempValue;
	oActiveMenu[destination].text = tempText;
	oActiveMenu.selectedIndex = destination;
}

function IsFocus(object){
  if (object.value == ""){
    alert("Please select the "+ object.name +" To Proceed");
    return false;
  }
	return true;
}

function clearElements(id){
	var objForm = document.getElementById(id);
	var formLength = objForm.elements.length;
	for (var i=0;i<formLength;i++) {
		objForm.elements[i].value = "";
	}
}

function divClearElements(id){
	var j = 0;

	var objForm = document.getElementById(id)
	var formLength = objForm.getElementsByTagName("*");
	for (var i=0;i<formLength.length;i++) {
		var text = formLength[i].tagName.toLowerCase();
		switch(text){
			case "input":
				if (!document.all)
				{
					var objEmpty = formLength[i].getAttributes("empty");
				}else{
					var objEmpty = formLength[i].empty
				}
				if (objEmpty != "no")
				{
					formLength[i].value = "";
				}
			case "select":
				formLength[i].selectedIndex = 0;
		}
	}
}

function divValidations(id){
	var j = 0;
	var htmltext = "";
	var divValidate = "";
	var divToValidate="";
	var wow   =  new Object();
	var objForm = document.getElementById(id)
	var formLength = objForm.getElementsByTagName("*");
	wow.divMyLength = formLength.length;
	
	for (var i=0;i<formLength.length;i++) {
		
		var text = formLength[i].tagName.toLowerCase();
		//htmltext += "<br>"+formLength[i].tagName + formLength[i].getAttribute("valid") + formLength[i].validate;
		if (!document.all)
		{
			var attrValid = formLength[i].getAttribute("valid");
		}else{
			var attrValid = formLength[i].valid;
		}

		if (!document.all){
			divValidate = formLength[i].getAttribute("validate");
			if (divValidate)
			{
				if (formLength[i].checked == true)
				{
					wow.divnameValidate = divValidate
				}else{
					wow.divNotValidate = divValidate
				}
			}
		}else{
			divValidate = formLength[i].validate;
			if (divValidate)
			{
				if (formLength[i].checked == true)
				{
					wow.divnameValidate = divValidate
				}else{
					wow.divNotValidate = divValidate
				}
			}
		}

		if (text == "div")
		{
			if (wow.divnameValidate)
			{
				if(!divValidations(wow.divnameValidate)){
					return false;
				}else{
					//alert(" Not "+wow.divNotValidate + " name " +wow.divnameValidate)
					var divNotValidate= document.getElementById(wow.divNotValidate).getElementsByTagName("*");
					var divNameValidate= document.getElementById(wow.divnameValidate).getElementsByTagName("*");
					//alert(i +" "+ divNameValidate.length +" " + divNotValidate.length);
					i = i + divNameValidate.length + divNotValidate.length	 + 3;
					//alert("test 110  "+formLength[i].name);
					/*if (i > wow.divMyLength)
					{
						i = wow.divMyLength;
					}*/
				}

			}
		}

		if (attrValid) {
			var regExp = new RegExp("^(m|n)_(d|i|t|a|s|o|f|e|u|p|r|l|y|z|c|v|q|h)","g");
			result = regExp.exec(attrValid);
			if (result[1] == "m" && !checkFormMantatory(formLength[i]))  return false;
			if (trim(formLength[i].value) != "") {
				switch (result[2]) {
					case "d":
						if ( !checkValidDate(formLength[i],true) ) return false;
						break;
					case "v":
						if ( !checkValidFromToDate(formLength[i],true) ) return false;
						break;
					case "i":
						if ( !checkFormInteger(formLength[i],true) ) return false;
						break;
					case "t":
						if ( !checkFormCode(formLength[i],true) ) return false;
						break;
					case "q":
						if ( !checkFormFloat(formLength[i],true) ) return false;
						break;
					case "a":
						if ( !checkFormAlphaNumeric(formLength[i],true )) return false;
						break;
					case "s":
						if ( !checkFormSpecialChar(formLength[i],true) ) return false;
						break;
					case "o":
						if ( !checkOptionForm(formLength[i],true) ) return false;
						break;
					case "f":
						if ( !checkFormImageFile(formLength[i],true) ) return false;
						break;
					case "e":
						if ( !checkFormEmail(formLength[i],true) ) return false;
						break;
					case "p":
						if ( !checkFormPassword(formLength[i],true) ) return false;
						break;
					case "h":
						if ( !checkFormPhone(formLength[i],true) ) return false;
						break;
					case "r":
						if ( !checkRadioForm(formLength[i],true) ) return false;
						break;
					case "c":
						if ( !checkCheckBoxForm(objForm.elements[i],true) ) return false;
						break;
					case "l":
						if ( !checkFormAlpNumSpace(formLength[i],true) ) return false;
						break;
					case "y":
						if ( !checkFormAlpNumSpaceDot(formLength[i],true) ) return false;
						break;
					case "z":
						if ( !checkFormCharSpace(formLength[i],true) ) return false;
						break;
					case "u":
						break;

					} //  Switch end
				}// Non mantatory but characters are there !!! checking
			} // valid attribute check
		} // for loop
	//document.write(htmltext);
	return true;
}

function callPick(element){
	dTarget = eval("document.forms[0]."+element);
	if (trim(dTarget.value) !=""){
		var m = dTarget.value.substring(0,2);
		var d = dTarget.value.substring(2,2);
		args="m="+ m + "&d="+ d + "&t=Today";
	}else{
		args = "";
	}
	var dp = window.open("includes/datepicker.php?"+args,'dp','left=200,top=200,width=230,height=210,toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=0');
	return false;
}

function monthPick(element,year){
	mTarget = eval("document.forms[0]."+element);
	if(year !=''){
		mYear = eval("document.forms[0]."+year);
		mYear1 = mYear.value;
		mY = mYear1.split("-");
		filename= "includes/monthpicker.php?year="+mY[1];
	}
	else
		filename= "includes/monthpicker.php";

	var dp = window.open(filename,'dp','left=200,top=200,width=210,height=25,toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=0');
	return false;
}


function yearPick(element,year){
	mTarget = eval("document.forms[0]."+element);
	if(year !=''){
		mYear = eval("document.forms[0]."+year);
		mYear1 = mYear.value;
		mY = mYear1.split("-");
		filename= "includes/yearpicker.php?year="+mY[1];
	}
	else
		filename= "includes/yearpicker.php";

	var dp = window.open(filename,'dp','left=200,top=200,width=210,height=25,toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=0');
	return false;
}

function isvalidDate(todate,fromdate){
	if(todate <= fromdate)
		{
			return false;
		}
		else{
			return true;
		}

}

function selectBranch(fm,sel,txt)
{
	eval ('var frm = '+fm);
	eval ('var selchange = frm.'+sel);
	eval ('var bctxt = frm.'+txt);
	var str = selchange.options[selchange.selectedIndex].value;
	bctxt.value=str;
}

function selectCountryChange(fm,sel1,sel2,txt)
{
	eval ('var frm = '+fm);
	eval ('var selchange1 = frm.'+sel1);
	eval ('var selchange2 = frm.'+sel2);
	eval ('var othtxt = frm.'+txt);
	var str = selchange1.options[selchange1.selectedIndex].text;

	if(str=="India"){
		othtxt.disabled = true;
		selchange2.disabled=false;
		selchange2.value="0";

		if (document.all){
			othtxt.valid = "n_z";
			selchange2.valid = "n_o";
		}
		else{
			othtxt.setAttribute("valid","n_z");
			selchange2.setAttribute("valid","n_o");
		}
		othtxt.value='';
	}
	else{
		othtxt.disabled = false;
		selchange2.value="Others";
		selchange2.disabled=true;
		if (document.all){
			othtxt.valid = "m_z";
			selchange2.valid = "";
		}
		else{
			othtxt.setAttribute("valid","m_z");
			selchange2.setAttribute("valid","");
		}

	}
}

function monthCheck(fromdate,todate,dtCh,from_mes,to_mes){
	var dtCh = "-";
	oFrom = fromdate;
	oTo = todate;
	//alert(oFrom.value +" < From  \n To >  "+ oTo.value);
	var name_month = new Array();
	name_month["Jan"] = "01";
	name_month["Feb"] = "02";
	name_month["Mar"] = "03";
	name_month["Apr"] = "04";
	name_month["May"] = "05";
	name_month["Jun"] = "06";
	name_month["Jul"] = "07";
	name_month["Aug"] = "08";
	name_month["Sep"] = "09";
	name_month["Oct"] = "10";
	name_month["Nov"] = "11";
	name_month["Dec"] = "12";

    if ((oFrom.value !="") && (oTo.value !="")){

          var from_pos1=oFrom.value.indexOf(dtCh)
          
          var from_strMonth=oFrom.value.substring(0,from_pos1)
          var from_strYear=oFrom.value.substring(from_pos1+1)

          var to_pos1=oTo.value.indexOf(dtCh)
          var to_strMonth=oTo.value.substring(0,to_pos1)
          var to_strYear=oTo.value.substring(to_pos1+1)

          from_strYr=from_strYear
          to_strYr=to_strYear
          from_strMonth= name_month[from_strMonth];
          to_strMonth= name_month[to_strMonth];
/*
          if (from_strMonth.length == 3){
          	if (name_month[from_strMonth].length == 1)
          		from_strMonth= "0"+name_month[from_strMonth];
          	else
          		from_strMonth= name_month[from_strMonth];
          	
          }
          if (to_strMonth.length == 3){
               	if (name_month[to_strMonth].length == 1)
          	     	to_strMonth= "0"+name_month[to_strMonth];
          	else
          	     	to_strMonth= name_month[to_strMonth];
          }
          */

          fromdate1 = parseInt(from_strYear+from_strMonth,10)
          todate1 = parseInt(to_strYear+to_strMonth,10)
          //alert("From date " +fromdate1+ " To date = " +todate1 )

          if (fromdate1 > todate1){
              alert(from_mes + " Month/Year cannot be greater than " + to_mes +" Month/Year.");
              oFrom.focus();
              return false;
          }
		  if (fromdate1 == todate1){
              alert(from_mes + " Month/Year and " + to_mes +" Month/Year cannot be same");
              oTo.focus();
              return false;
         }
    }
  return true;
}

// To find duration
function findDuration(fromdate,todate,txtdur){
	var dtCh = "-";
	oFrom = fromdate;
	oTo = todate;
	//alert(oFrom.value +" < From  \n To >  "+ oTo.value);
	var name_month = new Array();
	name_month["Jan"] = 1;
	name_month["Feb"] = 2;
	name_month["Mar"] = 3;
	name_month["Apr"] = 4;
	name_month["May"] = 5;
	name_month["Jun"] = 6;
	name_month["Jul"] = 7;
	name_month["Aug"] = 8;
	name_month["Sep"] = 9;
	name_month["Oct"] = 10;
	name_month["Nov"] = 11;
	name_month["Dec"] = 12;

    if ((oFrom.value !="") && (oTo.value !="")){

          var from_pos1=oFrom.value.indexOf(dtCh)
          var from_strMonth=oFrom.value.substring(0,from_pos1)
          var from_strYear=oFrom.value.substring(from_pos1+1)

          var to_pos1=oTo.value.indexOf(dtCh)
          var to_strMonth=oTo.value.substring(0,to_pos1)
          var to_strYear=oTo.value.substring(to_pos1+1)

          from_strYr=from_strYear
          to_strYr=to_strYear

          if (from_strMonth.length == 3) from_strMonth= name_month[from_strMonth];
          if (to_strMonth.length == 3) to_strMonth= name_month[to_strMonth];
          dur = ((parseInt(to_strYear) - parseInt(from_strYear))* 12 ) + parseInt(to_strMonth)- parseInt(from_strMonth) ;

          if(dur <0){
          	alert("From date should not be greater than to date");
          	txtdur.value="";
          	txtdur.focus();
          	return false;
          }
          else{
          	txtdur.value = dur;
          }

    }
  return true;
}
