function selectAllCB(objChk,strFormName,strMainId) {

	var frm= gGetElementById(strFormName);

	var ele=frm.elements;

	for(var i=0;i<ele.length;i++)

	{

		if(ele[i].type == "checkbox") {

			if(ele[i].id==strMainId) {

				ele[i].checked=objChk.checked;

			}

		}

	}

}



// cross platform equiv. to document.getElementById

function gGetElementById(s) {

  var o = (document.getElementById ? document.getElementById(s) : document.all[s]);

  return o == null ? false : o;

}



function getCheckBoxSelectCount(strFormName,strMainId) {



	var frm= gGetElementById(strFormName);

	var ele=frm.elements;

	var cnt=0;

	for(var i=0;i<ele.length;i++)

	{

		if(ele[i].type == "checkbox") {

			if(ele[i].id==strMainId) {

				if(ele[i].checked) {

					cnt=cnt+1;
				}

			}

		}

	}

	return(cnt);

}



function getCheckBoxSelectedValues(strFormName,strMainId) {

	var frm= gGetElementById(strFormName);

	var ele=frm.elements;

	var cnt=0;

	var ans="";

	for(var i=0;i<ele.length;i++)

	{

		if(ele[i].type == "checkbox") {

			if(ele[i].id==strMainId) {

				if(ele[i].checked) {

					if(ans=="") 

						ans=ele[i].value;

					else

						ans=ans + "," + ele[i].value;

				}

			}

		}

	}



	return(ans);

}



function actions(strFormName,strAction,strMainId,objCmb) {

	var ans;

	var actionText;

	var frm= gGetElementById(strFormName);

	var cmbAction;

	var cnt;

	if(objCmb.value!="0" && objCmb.value!="-") {

		ans=getCheckBoxSelectedValues(strFormName,strMainId);

		if(ans != "") {

			var objIds;

			objIds=gGetElementById(strMainId + "s");

			if(objCmb.value.indexOf("*S") > 0){

				cnt=getCheckBoxSelectCount(strFormName,strMainId);

				if(cnt==1) {

					objIds.value=ans;

					frm.submit();

				} else {

					alert("Please Select Single Record.");

					objCmb.value=0;

					return false;

				}

			} else if(objCmb.value.indexOf("*M") > 0){

				objIds.value=ans;

				frm.submit();

			} else {

				actionText=gGetElementById(strAction).options[gGetElementById(strAction).selectedIndex].text;

				if(confirm("Are you sure to perform " + actionText + " Action on selected records ?")) {

					objIds.value=ans;

					frm.submit();

				} else {

					objCmb.value=0;

					return false;

				}

			}

		} else {

			alert("You need to select some records.");

			objCmb.value=0;

			return false;

		}

	} else {

		objCmb.value=0;

		return false;

	}

}



function resetAndSubmit(strFormName) {

	var frm= gGetElementById(strFormName);

	var ele=frm.elements;

	for(var i=0;i<ele.length;i++)

	{

		if(ele[i].type == "hidden" || ele[i].type == "text") {

			ele[i].value="";

		} else if(ele[i].type == "select-one") {

			ele[i].options[0].selected=true;

		} else {

			

		}

	}

 	return true;

}



function getFront(mainStr,searchStr){
	
	foundOffset = mainStr.indexOf(searchStr)

	if (foundOffset == -1) {

		return null

	}

	return mainStr.substring(0,foundOffset)

}



// extract back end of string after searchString

function getEnd(mainStr,searchStr) {

	foundOffset = mainStr.indexOf(searchStr)

	if (foundOffset == -1) {

		return null

	}

	return mainStr.substring(foundOffset+searchStr.length,mainStr.length)

}



// insert insertString immediately before searchString

function insertString(mainStr,searchStr,insertStr) {

	var front = getFront(mainStr,searchStr)

	var end = getEnd(mainStr,searchStr)

	if (front != null && end != null) {

		return front + insertStr + searchStr + end

	}

	return null

}



// remove deleteString

function deleteString(mainStr,deleteStr) {

	return replaceString(mainStr,deleteStr,"")

}
// replace searchString with replaceString

function replaceString(mainStr,searchStr,replaceStr) {

	var front = getFront(mainStr,searchStr)

	var end = getEnd(mainStr,searchStr)

	if (front != null && end != null) {

		return front + replaceStr + end

	}

	return null

}

function edCmdImage(strCommand,opType) {

//opType=1 = Enable

//opType=2 = Disable
//	alert(strCommand +':::'+ opType);

	var Img;

	var temp;

	var strReplace;

	var strReplaceBy;

	Img=gGetElementById("cmd"+strCommand);

	temp=Img.src;

	

	if(getFront(temp,strCommand + "_o.jpg")) {

		strReplace=strCommand + "_o.jpg";

	} else {

		strReplace=strCommand + "_d.jpg";

	}

	

	if(opType=="1") {

		strReplaceBy=strCommand + "_o.jpg";

	} else {

		strReplaceBy=strCommand + "_d.jpg";

	}

	temp=replaceString(temp,strReplace,strReplaceBy);

	Img.src=temp;

}

function clickCmdImgs(opType,baseURL,strFormName,cbId) {

	var cnt;

	var a;

	switch(opType) {

		case "add":

			a=gGetElementById("addLink"+strFormName);

			window.location=a;

			break;

		case "edit":

			a=gGetElementById("editLink"+strFormName);

			a=a + getCheckBoxSelectedValues(strFormName,cbId);

			cnt=getCheckBoxSelectCount(strFormName,cbId)		

			if(cnt==1) {

				window.location=a;

			}

			break;

		case "delete":

			a=gGetElementById("deleteLink"+strFormName);

			a=a + getCheckBoxSelectedValues(strFormName,cbId);

			cnt=getCheckBoxSelectCount(strFormName,cbId)

			if(cnt>0) {

				window.location=a;

			}

			break;


case "display":

			a=gGetElementById("displayLink"+strFormName);

			a=a + getCheckBoxSelectedValues(strFormName,cbId);

			cnt=getCheckBoxSelectCount(strFormName,cbId)		

			if(cnt==1) {

				window.location=a;

			}

			break;

	}

	return false;

}

function changeCmdImgs(baseURL,strFormName,cbId) {

	var cnt;
	cnt=getCheckBoxSelectCount(strFormName,cbId)
	//alert(cnt);
	if(cnt==1) {

		edCmdImage("edit",1);

	} else {

		edCmdImage("edit",0);

	}

	

	if(cnt>0) {

		edCmdImage("delete",1);

	} else {

		edCmdImage("delete",0);

	}

}

function setAddOther(strFieldName) {

		var field;

		field=gGetElementById(strFieldName);

		field.value="1";

		return true;

}

function submitDelete(strFormName,cbId) {

var cnt;

var ids;

cnt=getCheckBoxSelectCount(strFormName,cbId);

if(cnt > 0 ) {

	ids=gGetElementById("deleteIds");

	ids.value=getCheckBoxSelectedValues(strFormName,cbId);

	return true;

} else {

	alert("You need to select the Records to Delete.");

	return false;

}

		

}



function setUrl()
{
	var ele;
	var regExp = /\s+/g;	
	var regExp1 = /&+/g;	
	var aString;

	ele=gGetElementById("name");
	ele1=gGetElementById("url");
	
	aString =ele.value;
	
	aString=aString.toLowerCase();
	aString=aString.replace(regExp1,''); 
	aString=aString.replace(regExp,'_'); 
	
	ele1.value=aString;
}


function getComboValue(){

		var ele;

		ele=gGetElementById("pa");

		ele1=gGetElementById("spa");

		ele2=gGetElementById("province");

		ele3=gGetElementById("city");

		List=Array();

		List['pa']=ele.value;

		List['spa']=ele1.value;

		List['province']=ele2.value;

		List['city']=ele3.value;

		ele5=gGetElementById("list");

		ele5.value=List['pa']+","+List['spa'];

		return true;

}



function search_term(){

		var ele,val;

		ele=gGetElementById("txtTerm");

		if(ele.value=='e.g. toronto; civil lawyer;'){

			ele.value='';

		}

}

function set_same_value(){

	ele=gGetElementById("txtTerm");

	val=ele.value;

	if(val==''){

		ele.value='e.g. toronto; civil lawyer;';

	}

}



function check_combo_exist(){

	ids=Array();

	ids[0]='city_search';

	ids[1]='spa_search';

	ids[2]='city_search_1';

	ids[3]='spa_search_1';
	
	ids[4]='state_search';
	
	ids[5]='city_search2';
	//ids[6]='city_search_adv';
	ids[7]='province_search_adv';

	for(i=0;i<ids.length;i++){

		ele=gGetElementById(ids[i]);

		if(ele){

			Element.hide(ids[i]);

		}

	}

	return true;

}

function registerSelectPA(objChk,ids,idStr) {

	var tempObj;

	if(ids!="") {

		var myIDs=ids.split(",");

		var i=0;

		while (i < myIDs.length) {

			tempObj=gGetElementById(idStr + myIDs[i]);

			tempObj.checked=objChk.checked;

			i+=1;

		}

	}

}
function checkForPresenceInSelect2(optVal, text, selList) {
 for (i = 0; i < selList.length; i++) {
   if (selList.options[i].value == optVal) return true;
   if (selList.options[i].text == text) return true;
 }
 return false;
}
// Logic for moving a multi-select from element1 to element2
function gGetElementById(s) {
  var o = (document.getElementById ? document.getElementById(s) : document.all[s]);
  return o == null ? false : o;
}

function selectAllOptions(oblCmb)
{
var len = oblCmb.length;
for (var i = 0; i < len; ++i) {
 	 oblCmb.options[i].selected = true;
   }
  return;
}

function one2two(element1, element2) {
 var memberList = gGetElementById(element1);
 var selectedList = gGetElementById(element2);
 var len = memberList.length;

 // Ignore any selections that are made to "------"
 for (var i = 0; i < len; ++i) {
   if (memberList.options[i].selected == true) {
	 memberList.options[i].selected = false;
	 if (memberList.options[i].text == "------") {
	   continue;
	 }
	 
	 if (checkForPresenceInSelect2(memberList.options[i].value, memberList.options[i].text, selectedList) == false) {

	   selectedList.options[selectedList.length] = new Option(memberList.options[i].text, memberList.options[i].value);
	   
	 }
   }
 }
}

// moving a multi-select from element2 to element1.
// Actually this assumes that the values being moved are
// already present in element1 and ends up deleting
// the selected values in element2.
function two2one(element1, element2) {
 var selectedList = gGetElementById(element2);
 for (i = selectedList.length -1; i >= 0; i--) {
   if (selectedList.options[i].selected == true) {
	 selectedList.options[i] = null;
   }
 }
}

function one2twoSingle(element1, element2) {
 var memberList = gGetElementById(element1);
 var selectedList = gGetElementById(element2);
 var len = memberList.length;
 for (var i = 0; i < len; i++) {
    if (memberList.options[i].selected == true) {
		memberList.options[i].selected = false;
	 if (checkForPresenceInSelect2(memberList.options[i].value, memberList.options[i].text, selectedList) == false) {
	   selectedList.options[selectedList.length] = new Option(memberList.options[i].text, memberList.options[i].value);
	 }
	}
 }
}

function two2oneSingle(element1, element2) {
	var selectedList = gGetElementById(element2);
	for (i = selectedList.length -1; i >= 0; i--) {
		if(selectedList.options[i].selected==true) {
			selectedList.options[i].selected=false;
			selectedList.options[i] = null;
		}
	}
}

function setTextarea() {
		ele=gGetElementById('editor_Html Text');
		ele1=gGetElementById('editor_Simple Text');
		simed=gGetElementById('simTextEd1');
		htmed=gGetElementById('htmlTextEd1');
		if(ele.checked){	
			simed.style.display='none';
			htmed.style.display='';
			
			/*document.getElementById('simTextEd').style.display='none';
			document.getElementById('htmlTextEd').style.display='';*/
		}
		else if(ele1.checked){
			htmed.style.display='none';			
			simed.style.display='';
		}
}

function SelectList() {
		
	/*	pro=gGetElementById('SelMovie');
		pList=gGetElementById('ProvinceList');
		pList2=gGetElementById('Province');
		*/
		pro1=gGetElementById('SelType');
		pList1=gGetElementById('TypeList');
		pList21=gGetElementById('Type');
			//pro.style.display='none';
			pro1.style.display='none';
}


function DisplayDivs() {
		ele=gGetElementById('BannerType');
		
		cat=gGetElementById('Category');
		cat1=gGetElementById('Category1');
		city=gGetElementById('City');
		pList=gGetElementById('firstListAdd');
		pList2=gGetElementById('firstAdd');
		cList=gGetElementById('firstListCity');
		cList2=gGetElementById('firstCity');
		if(ele.value=='Advertisement'){
			cat.style.display='';
			city.style.display='';
		}
		else {
			
			cat.style.display='none';
			city.style.display='none';
		}
}

function checkStrLen(txtObj,minLength,MaxLength,msgDisplay)
{
var strData;
strData=txtObj.value;
if(strData.length < Number(minLength))
{
	alert("Please Enter Valid Value In The Following Field : " + msgDisplay);
	txtObj.focus();
	return false;
}
if(strData.length > Number(MaxLength))
{
	alert("Please Enter Value Lesser Than " + MaxLength +" In The Following Field : " + msgDisplay);
	txtObj.focus();
	return false;

}
}
function checkEmail(objTxt) {
	var GoodChars = "@_-.:/ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
	var UpperEmail = objTxt.value.toUpperCase()
	var ValidChars = true;
	
	for (tfCharNum = 0; tfCharNum > objTxt.value.length; tfCharNum++) {
		Char = UpperEmail.charAt(tfCharNum);
		for (gcCharNum = 0;  gcCharNum < GoodChars.length;  gcCharNum++) {
				 if (Char == GoodChars.charAt(gcCharNum))
			     break;
		}
				 
		if (gcCharNum == GoodChars.length)   {
		     ValidChars = false;
		     break;
   		}
	}
	
	if (!ValidChars || objTxt.value.length < 7 || 
		objTxt.value.indexOf("@") == "-1" ||
		objTxt.value.indexOf(".") == "-1" || 
		objTxt.value.indexOf("..") != "-1" || 
		objTxt.value.indexOf("@.") != "-1" || 
		objTxt.value.indexOf("@:") != "-1" || 
		objTxt.value.indexOf("@/") != "-1" || 
		objTxt.value.indexOf("@-") != "-1" || 
		objTxt.value.indexOf("@_") != "-1" || 
		objTxt.value.indexOf(".@") != "-1" || 
		objTxt.value.indexOf(":@") != "-1" || 
		objTxt.value.indexOf("/@") != "-1" || 
		objTxt.value.indexOf("-@") != "-1" || 
		objTxt.value.indexOf("_@") != "-1" || 
		objTxt.value.indexOf("@") != objTxt.value.lastIndexOf("@")) {
		objTxt.focus();
			return (false);
	}
	return (true);
}
function validate_frm(){
	var name;
	var email;
name=gGetElementById("name");
email=gGetElementById("email");
if(checkStrLen(name,1,60," Name")==false){
	name.focus();	
	return false;
}

if(!checkEmail(email)){
	email.focus();
	alert("Please Enter Proper Value For Email");
	return false;

}
return;
}
function checkPwds(){
	var password;
	var confirm_password;
password=gGetElementById("password");
confirm_password=gGetElementById("confirm_password");
if(password.value!='' && confirm_password.value!=''){
	if(confirm_password.value!=password.value){
			alert("Passwords do not match");
			password.value='';
			confirm_password.value='';
			password.focus();
			return false;
	}
}	
return;	
}
function togglediv(){//vac home clients
		var r_yes=document.getElementById('vh_yard_y');	
		var r_no=document.getElementById('vh_yard_n');	 
		if(r_yes.checked)
		{
			document.getElementById('div_ysize').style.display='';
		}else{
			document.getElementById('div_ysize').style.display='none';
		}
}
function ValidateService(){//service type validation 
	if(document.getElementById('times').value=="")
	{
		if(document.getElementById('ServiceType').value == 'Monthly')
		{
			alert("Please enter service time.");
			document.getElementById('times').focus();
			return false;		
		}
	}else{
			if(isNaN(document.getElementById('times').value)==true){
				alert("Please enter numeric time.");
				document.getElementById('times').focus();
				return false;		
			}
	}
}
function ValidatePackageService()
{
	var package = document.getElementById('PackageServicePackageId');
	var service = document.getElementById('service_id');	
	var status = document.getElementById('PackageServiceStatus');	
	if(package.value == ""){
		alert("Select package.");
		package.focus();
		return false;			
	}
	if(service.value == ""){
		alert("Services cannot be empty.");
		service.focus();
		return false;			
	}
	if(status.value == ""){
		alert("Select status.");
		status.focus();
		return false;			
	}
}
function ValidateAmountNumeric()
{
	var elem = document.getElementById('frm').elements;		
	//alert(document.getElementById('amount['+']'));
	for(var i = 0; i < elem.length; i++)//elem.length
	{
		var str = elem[i].name;
		if(str.search('amount') == 0)
		{
			if(elem[i].value == 0)
			{
				alert("Please enter amount.");
				elem[i].focus();
				return false;
			}else{
				if(isNumber(elem[i].value,elem[i]) == false){
					return false;
				}
			}
		}
	}
	//return false;
	}
function isNumber(str,name)
{
	numdecs = 0;// not validate it for . only 
	for (i = 0; i < str.length; i++)
	{
		mychar = str.charAt(i);
		if((mychar >= "0" && mychar <= "9") || mychar == "." ){
				if(mychar == ".")
				numdecs++;
		}else{
			alert("Please enter numeric value.");
			name.focus();
			return false;
		}
	}
    if(numdecs > 1){
        alert("please enter valid amount value.");
		name.focus();		
        return false;
    }
    return true;
}
//--------------
//function ValidateAmountCharge(check,s)
function Check(check)
{
	var elem = document.getElementById('frm').elements;		
	var def_amount_no = new Array();
	var j = 0;
	if(check == 'n'){
			for(var i = 0; i < elem.length; i++){
			var str = elem[i].name;
			if(str.search('amount') == 0){//default rate value to amount text box 
				def_amount_no[j] = elem[i].value;
				elem[i].disabled = false;
				j++;
			}
		}
	}
}
function ValidateAmountCharge(check)
{
	var elem = document.getElementById('frm').elements;		
	var j=0;
	var ary = new Array();
	Check(check);
	if(check == 'y'){// get default rate value in array
		for(var i = 0; i < elem.length; i++){//elem.length
			var str = elem[i].name;
			if(str.search('default_rate') == 0){ // everytime looping
				ary[j] = elem[i].value;
				j++;
			}
		}
		j = 0;
		for(var i = 0; i < elem.length; i++){
			var str = elem[i].name;		
			if(str.search('amount') == 0){//default rate value to amount text box 
				elem[i].value = ary[j];
				elem[i].disabled = true;
				j++
			}		
		}
		//---
		if(check == 'y')
		{
			for(var i = 0; i < elem.length; i++){
				var str = elem[i].name;
				if(str.search('default_amount') == 0){//default rate value to amount text box 
					elem[i].value = ary[j];					
					j++
				}
			}
		}
	//---
	}else{		
			if(check == 'n'){
				for(var i = 0; i < elem.length; i++){
				var str = elem[i].name;
				if(str.search('amount') == 0){//default rate value to amount text box 
					//elem[i].value = '0';
					elem[i].disabled = false;
				}
			}
		}
	}
}
function setUrl(){


	var ele;
	var regExp = /\s+/g;	
	var regExp1 = /&+/g;	
	var aString;

	ele=gGetElementById("header");
	ele1=gGetElementById("url");
	
	aString =ele.value;
	
	aString=aString.toLowerCase();
	aString=aString.replace(regExp1,''); 
	aString=aString.replace(regExp,'_'); 
	
	ele1.value=aString;


}
function fill_billing_address()
{ //mailing address is same as billing address 
	var y = document.getElementById("mail_phy_y");
	var n = document.getElementById("mail_phy_n");	
	if(y.checked == true){
		document.getElementById("AgentMailAddress1").value = document.getElementById("AgentBAddress1").value;
	}
	if(n.checked == true){
		document.getElementById("AgentMailAddress1").value = "";
	}

	//alert(document.getElementById(mail_phy_y).value);
}
function month_selected(val)
{
		// optional service month selected or not
		if(val == 2 || val == 3)
		{
			var exec = document.getElementsByName("chk_optional_id[" + "]");
			var j =0;
			if(exec.length>0)
			{
				for(var i=0;i<exec.length;i++)
				{
					if(exec[i].checked == true)
					{
						j++;
					}
				}
			}
			if(j==0)
			{
				if(val==2){
					alert("Please select optional service");	
				}else if(val ==3){
					alert("Please select calendar optional service");						
				}
				return false;
			}
		}
		
		if(document.getElementById("monthly_val").value == "" ||  document.getElementById("monthly_val").value==0)	
		{
			alert("Please Select Month");
			document.getElementById("monthly_val").focus();	
			return false;
		}
}
function amountchange()
{
		ary = new Array();
		var monthly_val = document.getElementById("monthly_val").value;
		
		var package_id = document.getElementById("PackageId").value;

		var str = monthly_val;
		ary = str.split("_");
		//ary = String.split(monthly_val,"_");		
		var check_ary = new Array();
		var exec = document.getElementsByName("chk_optional_id[" + "]");
		var j =0;
		if(exec.length>0)
		{
			for(var i=0;i<exec.length;i++){
				if(exec[i].checked == true)
				{
					check_ary[j] = exec[i].value;	
					j++;
				}
			}
		}
		//document.getElementById("monthly_val").value = 	ary[1];	
		document.frmaddservice.action = '/Concierge/clients/optional_services/'+package_id+'/'+ary[0];
		//document.frmaddservice.action = '/developments/concierge/clients/optional_services/'+package_id+'/'+ary[0];		
		document.frmaddservice.submit();
		return true;
}
function validatealacarte()
{
		var exec = document.getElementsByName("chk_optional_id[" + "]");
		var j =0;
		if(exec.length>0)
		{
			for(var i=0;i<exec.length;i++)
			{
				if(exec[i].checked == true)
				{
					j++;
				}
			}
		}
		if(j==0)
		{
			alert("Please select alacarte service");	
			return false;
		}//else{
			//document.frmaddservice.submit();
		//}
}
function acceptterm(val)
{
	/*if(val == 'quote')	
	{
		var c = document.getElementById('QuoteTerms');
		var c1 = document.getElementById('QuoteTerms1');		
	}else*/ if(val == 'client'){
		var c = document.getElementById('ClientTerms');
		var c1 = document.getElementById('ClientTerms1');				
	}
	if(c.checked == false)
	{
		alert("Please accept terms & conditions.");
		c.focus();
		return false;
	}else if(c1.checked == false){
		alert("Please accept it.");
		c1.focus();
		return false;
	}{
		if(val == 'client')
		{
			document.frmaddservice.submit();
		}else if(val == 'quote')
		{
			document.frmaddquote.submit();
		}
	}
}
function validate_vachome(str)
{
		if(str == 'estimate')
		{
			 if(document.getElementById('VacationhomesClientPhyAddress1').value!='' 
			 && document.getElementById('city').value!=''
			 && document.getElementById('VacationhomesClientProvinceId').value!=''
			 && document.getElementById('zipcode').value!=''
			 && document.getElementById('vh_size').value!='')
			 {
				 document.getElementById('VacationhomesClientCheckEstimate').value = 1;	 
			 }else{
				window.location.href = '/Concierge/vacationhomes_clients/vachome/';
				//window.location.href = '/developments/concierge/vacationhomes_clients/vachome/';				
				
			 }
				document.forms[0].submit();
		}else if(str == 'vachome'){
				if(document.getElementById('VacationhomesClientPhyAddress1').value!='' 
				 && document.getElementById('city').value!=''
				 && document.getElementById('VacationhomesClientProvinceId').value!=''
				 && document.getElementById('zipcode').value!=''
				 && document.getElementById('vh_size').value!='')
				{ // it's all for redirect page
					 document.getElementById('VacationhomesClientCheckEstimate').value = 2;	 
					  document.getElementById('VacationhomesClientCheckAdditionalhelp').value = 2;	 
				}
		}else if(str == 'additional_help'){
			 if(document.getElementById('VacationhomesClientPhyAddress1').value!='' 
			 && document.getElementById('city').value!=''
			 && document.getElementById('VacationhomesClientProvinceId').value!=''
			 && document.getElementById('zipcode').value!=''
			 && document.getElementById('vh_size').value!='')
			 {
				 document.getElementById('VacationhomesClientCheckAdditionalhelp').value = 1;	 
			 }else{
				window.location.href = '/Concierge/vacationhomes_clients/vachome/';
				//window.location.href = '/developments/concierge/vacationhomes_clients/vachome/';
			 }
				document.forms[0].submit();
		}
}
function validate_estimate_tool1(){
	var home_size = document.getElementById('VacationhomesClientHomeSize').value;
	if((document.getElementById('vh_yard_size_dx').value=='' && document.getElementById('vh_yard_size_dy').value!='')){
		alert("Please enter  yard size dimensions");
		document.getElementById("vh_yard_size_dx").focus();
		return false;
	}
	if((document.getElementById('vh_yard_size_dy').value=='' && document.getElementById('vh_yard_size_dx').value!='')){
		alert("Please enter  yard size dimensions");
		document.getElementById("vh_yard_size_dy").focus();
		return false;
	}
	if((document.getElementById('vh_lot_size_x').value=='' && document.getElementById('vh_lot_size_y').value!=''))	{
		alert("Please enter numeric lot dimensions");
		document.getElementById("vh_lot_size_x").focus();
		return false;
	}
	if((document.getElementById('vh_lot_size_x').value!='' && document.getElementById('vh_lot_size_y').value==''))	{
		alert("Please enter numeric lot dimensions");
		document.getElementById("vh_lot_size_y").focus();
		return false;
	}
//-------
	if(isNaN(document.getElementById('vh_yard_size_dx').value) ==true){
		alert("Please enter  numeric yard size dimensions");
		document.getElementById("vh_yard_size_dx").focus();
		return false;
	}else if(isNaN(document.getElementById('vh_yard_size_dy').value) == true){
		alert("Please enter  numeric yard size dimensions");
		document.getElementById("vh_yard_size_dy").focus();
		return false;
	}
//-------
	if(isNaN(document.getElementById('vh_lot_size_x').value) ==true){
		alert("Please enter numeric lot dimensions");
		document.getElementById("vh_lot_size_x").focus();
		return false;
	}else if(isNaN(document.getElementById('vh_lot_size_y').value) == true){
		alert("Please enter numeric lot dimensions");
		document.getElementById("vh_lot_size_y").focus();
		return false;
	}else if(isNaN(document.getElementById('in_acre').value) == true){
		alert("Please enter numeric lot value");
		document.getElementById("in_acre").focus();
		return false;
	}
	if(document.getElementById('vh_yard_size_dx').value!='' && document.getElementById('vh_yard_size_dy').value!=''){
			var size_xy = document.getElementById('vh_yard_size_dx').value * document.getElementById('vh_yard_size_dy').value;
			
	}
	if(document.getElementById('vh_lot_size_x').value!='' && document.getElementById('vh_lot_size_y').value!=''){
			var size_xy = document.getElementById('vh_lot_size_x').value * document.getElementById('vh_lot_size_y').value;
			
	}
	/*if(document.getElementById('in_acre').value!=''){
		var size = 43560 * document.getElementById('in_acre').value;
	}*/
	if(size_xy < home_size){
				alert("Please enter  valid dimensions.");
				return false;
	}
}
function validate_estimate_tool(form_name,val2){
		if(val2 == 'estimate'){
			var home_size = document.getElementById('VacationhomesClientHomeSize').value;			
		}else if(val2 == 'add_vachome'){
			var home_size = document.getElementById('vh_size').value;			
		}
		var elem = document.getElementById(form_name.id).elements;	
		var num = 0;
		for(var i=0;i<elem.length;i++){//elem.length
			var str = elem[i].name;
			if(elem[i].value == 'yard_size_xy'){
				if(elem[i].checked == true){
					var num = 1;
				}
			}else if(elem[i].value == 'lot_size_xy'){
				if(elem[i].checked == true){
					var num = 2;
				}
			}else if(elem[i].value == 'in_acre'){
				if(elem[i].checked == true){
					 	var num = 3;
				}
			}
		}
		if(num == 1){
			if((document.getElementById('vh_yard_size_dx').value=='' && document.getElementById('vh_yard_size_dy').value!='')){
				alert("Please enter  yard size dimensions");
				document.getElementById("vh_yard_size_dx").focus();
				return false;
			}
			if((document.getElementById('vh_yard_size_dy').value=='' && document.getElementById('vh_yard_size_dx').value!='')){
				alert("Please enter  yard size dimensions");
				document.getElementById("vh_yard_size_dy").focus();
				return false;
			}
			if(isNaN(document.getElementById('vh_yard_size_dx').value) ==true){
				alert("Please enter  numeric yard size dimensions");
				document.getElementById("vh_yard_size_dx").focus();
				return false;
			}else if(isNaN(document.getElementById('vh_yard_size_dy').value) == true){
				alert("Please enter  numeric yard size dimensions");
				document.getElementById("vh_yard_size_dy").focus();
				return false;
			}
			if(document.getElementById('vh_yard_size_dx').value!='' && document.getElementById('vh_yard_size_dy').value!=''){
				var size_xy = document.getElementById('vh_yard_size_dx').value * document.getElementById('vh_yard_size_dy').value;
			}
			if(size_xy < home_size){
						alert("home size is less than given dimension.");
						document.getElementById("vh_yard_size_dy").focus();
						return false;
			}			
		}else if(num == 2){
			if((document.getElementById('vh_lot_size_x').value=='' && document.getElementById('vh_lot_size_y').value!=''))	{
				alert("Please enter numeric lot dimensions");
				document.getElementById("vh_lot_size_x").focus();
				return false;
			}
			if((document.getElementById('vh_lot_size_x').value!='' && document.getElementById('vh_lot_size_y').value==''))	{
				alert("Please enter numeric lot dimensions");
				document.getElementById("vh_lot_size_y").focus();
				return false;
			}
			if(isNaN(document.getElementById('vh_lot_size_x').value) ==true){
				alert("Please enter numeric lot dimensions");
				document.getElementById("vh_lot_size_x").focus();
				return false;
			}else if(isNaN(document.getElementById('vh_lot_size_y').value) == true){
				alert("Please enter numeric lot dimensions");
				document.getElementById("vh_lot_size_y").focus();
				return false;
			}	
			if(document.getElementById('vh_lot_size_x').value!='' && document.getElementById('vh_lot_size_y').value!=''){
					var size_xy = document.getElementById('vh_lot_size_x').value * document.getElementById('vh_lot_size_y').value;
					
			}
			if(size_xy < home_size){
						alert("home size is less than given dimension.");
						document.getElementById("vh_lot_size_y").focus();
						return false;
			}			
		}else if(num == 3){
				if(document.getElementById('in_acre').value !=''){
					 if(isNaN(document.getElementById('in_acre').value) == true){
						alert("Please enter numeric lot value");
						document.getElementById("in_acre").focus();
						return false;
					}
				}
		}
		//return false;
}

function printit()
{ //print document
  var disp_setting="toolbar=no,location=no,directories=no,menubar=no,"; 
  disp_setting+="scrollbars=no,width=650, height=600, left=100, top=25"; 
 /*
  var disp_setting="toolbar=yes,location=no,directories=yes,menubar=yes,"; 
  disp_setting+="scrollbars=yes,width=650, height=600, left=100, top=25";*/
  
  var content_vlue = document.getElementById("print_content").innerHTML; 
  var docprint=window.open("","",disp_setting,true); 
   docprint.document.open(); 
   docprint.document.write('<html><head>'); //<title>Owner Concierge</title>
   docprint.document.write('</head><body onLoad="self.print()"><center>');          
   docprint.document.write(content_vlue);          
   docprint.document.write('</center></body></html>'); 
   docprint.document.close(); 
   docprint.focus(); 
}
function CheckValidEmail()
{
	var email;
	email=document.getElementById("ClientEmail1");
	if(!checkEmail(email))
	{
		email.focus();
		alert("Please enter valid email.");
		return false;
	}
return;
}
function SelectList(val)
{
	ele=gGetElementById('refer_friend');
	cat=gGetElementById('ReferFriend');
	if(val == 1)
	{
		cat.style.display='none';		
	}else if(val == 2)
	{
		cat.style.display='';
		return false;
	}
}
function ValidReferFriend()
{
	var email;
	var name;
	name = document.getElementById("name");
	if(name.value == "")
	{
		alert("Please enter name.");
		name.focus();
		return false;
	}
	email=document.getElementById("email");
	if(!checkEmail(email))
	{
		alert("Please enter valid email.");
		email.focus();
		return false;
	}
	return true;
}
function CheckApplyCoupon(){
	var val= gGetElementById("coupon_code");
	if(val.value == '')	
	{
		alert("Please enter coupon code.");
		val.focus();
		return false;
	}
}
function validatecompany()
{
		cmp=gGetElementById('CompanyCompanyName');
		if(cmp.value == '')
		{
			alert("Please enter company name.");
			cmp.focus();
			return false;
		}
		reg_legal=gGetElementById('CompanyRegLegalName');
		if(reg_legal.value == '')
		{
			alert("Please enter registered legal name.");
			reg_legal.focus();
			return false;
		}
		no_emp=gGetElementById('CompanyNoOfEmp');
		if(no_emp.value == 0)
		{
			alert("Please select no of employee.");
			no_emp.focus();
			return false;
		}
		email=gGetElementById('CompanyBusinessEmail');
		if(email.value == 0)
		{
			alert("Please enter email.");
			email.focus();
			return false;
		}else if(!checkEmail(email))
		{
			alert("Please enter valid email.");
			email.focus();
			return false;
		}
		fname=gGetElementById('CompanyFirstName');
		if(fname.value == "")
		{
			alert("Please enter first name.");
			fname.focus();
			return false;
		}
		lname=gGetElementById('CompanyLastName');
		if(lname.value == "")
		{
			alert("Please enter last name.");
			lname.focus();
			return false;
		}
		address1=gGetElementById('CompanyAddress1');
		if(address1.value == "")
		{
			alert("Please enter address.");
			address1.focus();
			return false;
		}
}
//-------------------------- calender
function tdmv(aItem)
{
	aItem.style.backgroundColor = '#fff';
}

function tdmu(aItem)
{
	aItem.style.backgroundColor = '#fafaf8';
}

function tdtmo(aItem)
{
	aItem.style.backgroundColor = '#fafaf8';	
}

function ensureRefresh()
{
	document.calendarPage.day.value = "";
	document.calendarPage.view.value = "calendar";
	document.calendarPage.submit();
}

function sendDay(schedDay, schedMonth, schedYear)
{
	document.calendarPage.day.value = schedDay;
	document.calendarPage.month.value = schedMonth;
	document.calendarPage.year.value = schedYear;
	document.calendarPage.view.value = "schedule";
	document.calendarPage.submit();
}
function event_add(str)
{
		if(str == 'edit')
		{
			desc=gGetElementById('ClientDescription');
			if(desc.value == '')
			{
				alert('Please enter description');
				desc.focus();	
				return false;
			}
		}else if(str == 'add'){
			desc=gGetElementById('ClientDescription');
			if(desc.value == '')
			{
				alert('Please enter description');
				desc.focus();	
				return false;
			}
			no_of_days=gGetElementById('no_of_days');
			if(no_of_days.value == '')
			{
				alert('Please enter no of days');
				no_of_days.focus();	
				return false;			
			}else if(isNaN(no_of_days.value) == true){
				alert('Please enter numeric no of days');
				no_of_days.focus();	
				return false;			
			}
			persons=gGetElementById('persons');
			if(persons.value == '')
			{
				alert('Please enter no of persons');
				persons.focus();	
				return false;			
			}else if(isNaN(persons.value) == true){
				alert('Please enter numeric no of persons');
				persons.focus();	
				return false;			
			}	
		}
		
		//opener.location.reload(true);
		//self.close();
		//window.parent.reload();		
		//window.close();
}
function popitup(url) 
{
	newwindow=window.open(url,'name','height=300,width=500,menubar=no');
	//newwindow=window.open(url,'name');	
	if (window.focus) {newwindow.focus()}
	return false;
}
function DeleteEvent($url)
{
	n = window.open($url,"","width=300,height=150,resizable=no,status=no,scrollbars =no,menubar=no");
	if (window.focus){
		n.focus();
	}return false;
}
function del_event()
{
	//opener.location.reload(true);
	//self.close();
}
function refresh_month_year(){
	var month = gGetElementById('ClientMonth');
	var year = gGetElementById('ClientYear');	
	if(month.value == 0 && year.value ==0)
	{
		alert('Please select month or year.');
		month.focus();	
		return false;
	}
}
//********** added on 6-3-09
function SelectYardSizeList(){
		
	var size_xy=gGetElementById("radio_yard_size_xy");
	
	var lot_size_xy=gGetElementById('radio_lot_size_xy');
	var lot_value_in_acre=gGetElementById('radio_lot_value_in_acre');
	var in_acre=gGetElementById('radio_in_acre');
	var yard_text=gGetElementById('radio_yard_text');
	
		var size_xy_div=gGetElementById('size_xy');
		var lot_xy_div=gGetElementById('lot_xy'); 
		var lot_value_acre_div=gGetElementById('lot_value_acre');		
		var in_acre_div=gGetElementById('in_acre_div');				
		var yard_size_div=gGetElementById('yard_size_without_div');						
		
	if(size_xy.checked == true){
			size_xy_div.style.display='';
			lot_xy_div.style.display='none';
			lot_value_acre_div.style.display='none';
			in_acre_div.style.display='none';			
			yard_size_div.style.display='none';						
	}else if (lot_size_xy.checked == true){
			size_xy_div.style.display='none';
			lot_xy_div.style.display='';
			lot_value_acre_div.style.display='none';
			in_acre_div.style.display='none';			
			yard_size_div.style.display='none';									
	}else if (lot_value_in_acre.checked == true){
			size_xy_div.style.display='none';
			lot_xy_div.style.display='none';
			lot_value_acre_div.style.display='';
			in_acre_div.style.display='none';			
			yard_size_div.style.display='none';									
	}else if (in_acre.checked == true){
			size_xy_div.style.display='none';
			lot_xy_div.style.display='none';
			lot_value_acre_div.style.display='none';
			in_acre_div.style.display='';
			yard_size_div.style.display='none';									
	}else if(yard_text.checked == true){
			size_xy_div.style.display='none';
			lot_xy_div.style.display='none';
			lot_value_acre_div.style.display='none';
			in_acre_div.style.display='none';
			yard_size_div.style.display='';									
	}else{
			size_xy_div.style.display='none';
			lot_xy_div.style.display='none';
			lot_value_acre_div.style.display='none';
			in_acre_div.style.display='none';			
	}
}
//**********
//******************* tax zones *******************//

function SelectComboOption()
{
	
	var concmbdiv=gGetElementById('CountryCmb');	
	var condiv=gGetElementById('CountryList');		
	var prodiv=gGetElementById('ProvinceList');		
	var cn=gGetElementById('radio_Country');
	var pr=gGetElementById('radio_Province');
	var concmb=gGetElementById('CountryCmb');	 
	var con=gGetElementById('Country');
	var pro=gGetElementById('Province');
	var conList=gGetElementById('firstListCountry');
	var conList2=gGetElementById('firstCountry');
	
	if(cn.checked){//Country Checked
		condiv.style.display='';	
		concmbdiv.style.display='none';
		prodiv.style.display='none';		
		pro='';
		concmb ='';
	}else if(pr.checked){ //Province Checked
		condiv.style.display='none';		
		concmbdiv.style.display='';
		prodiv.style.display='';		
		con='';
	selectAllOptions(conList2);
	two2one('firstListCountry', 'firstCountry');
	}else{
		concmbdiv.style.display='none';
		prodiv.style.display='none';
	}}
	
	
/********************* Coupon  *********************/


function SelectList() {
		ele=gGetElementById('radio_Category');
		ele1=gGetElementById('radio_Product');
		ele2=gGetElementById('radio_All Products');
		
		cat=gGetElementById('Category');
		pro=gGetElementById('Product');
		pList=gGetElementById('firstListProduct');
		pList2=gGetElementById('firstProduct');
		cList=gGetElementById('firstListCategory');
		cList2=gGetElementById('firstCategory');
		
		
		if(ele1.checked){
			cat.style.display='none';
			pro.style.display='';
			pList='';
			selectAllOptions(cList2);
			two2one('firstListCategory', 'firstCategory');
			
		}
		else if(ele.checked){
			cList='';
			selectAllOptions(pList2);
			two2one('firstListProduct', 'firstProduct');
			cat.style.display='';
			pro.style.display='none';
			
		}else{
			cat.style.display='none';
			pro.style.display='none';
		}
}

// product detail page
function checkCombo(cmbObject,defaultValue,msgDisplay)
{
	
var strData;
strData=cmbObject.value;
if(strData == defaultValue)
{
	alert("Please Select Appropriate Option from the  Following Field : " + msgDisplay);
	cmbObject.focus();
	return false;
}
}

// shipping service check selected r not

function chk_selection(){
	
	
var ele;

ele=document.getElementsByName('val_sel');
var total=0;
for(i=0;i<ele.length;i++){
	if(ele[i].checked){
		total++;
	}
}
if(total<=0){
	alert("Please Select Shipping Service");
	return false;
}else{
	return true;
}
}

function SubmitForm()
{
	var eleQty;
	eleQty=document.getElementById("txtQty");
	for(i=0;i<eleQty.length;i++){
		if(eleQty[i].value == ""){
			alert("Please Select Quantity.");
			eleQty[i].focus();
			return false;
		}
	}
	document.cart.submit();
}
// shipping address check
function Update()
{
	Selected = SelectRecordCheck("sel_address[" + "]");
	if(Selected!=false){
		//window.location = "http://localhost/VUDZ/addresses/address_edit/"+Selected;				
			window.location = "http://www.vudz.com/addresses/address_edit/"+Selected;				
	}	
}
function SelectRecordCheck(ChkName)
{
	var exec = document.getElementsByName(ChkName);
	var totalSelect = 0;
	for(var i=0;i<exec.length;i++)
	{
		if(exec[i].checked == true){
			totalSelect = totalSelect+1;	
			checked=exec[i].value;
		}
	}
	if(totalSelect == 0)
	{
		alert("Select Atleast One Address.");
		return false;
	}else{
		return(checked);
	}
}	

function validate_form(){
	
var first_name,last_name,ssl_cvv2cvc2,ssl_exp_date,payment_type,ssl_card_number;
first_name=gGetElementById("first_name");
last_name=gGetElementById("last_name");
payment_type=gGetElementById("payment_type");
ssl_card_number=gGetElementById("ssl_card_number");
mm=gGetElementById("mm");
yy=gGetElementById("yy");
ssl_cvv2cvc2=gGetElementById("ssl_cvv2cvc2");


if(checkStrLen(first_name,1,50,"First Name")==false){
return false;
}
if(checkStrLen(last_name,1,50,"Last Name")==false){
return false;
}
if(checkCombo(payment_type,'',"Card Type")==false){
return false;
}
if(checkStrLen(ssl_card_number,1,50,"Card Number")==false){
return false;
}

if(checkStrLen(mm,1,2,"Expiration Month")==false){
return false;
}
if(checkStrLen(yy,1,5,"Expiration Year")==false){
return false;
}
if(checkStrLen(ssl_cvv2cvc2,1,4,"Card Verification Number")==false){
return false;
}
return;
}

/*Parse number to currency format:
By Website Abstraction (www.wsabstract.com)
and Java-scripts.net (www.java-scripts.net)
*/

//Remove the $ sign if you wish the parse number to NOT include it

function parseelement(price){
		
		price=price.replace(/^\s+|\s+$/g, '');
		var prefix="$";
		var wd;	
		if (price.charAt(0)=="$")
			return 0;
		wd="w";
		var tempnum=price;
		for (i=0;i<tempnum.length;i++){
			if (tempnum.charAt(i)=="."){
				wd="d";
				break
			}
		}
		if (wd=="w")
			price=prefix+tempnum+".00"
		else{
			if (tempnum.charAt(tempnum.length-2)=="."){
				price=prefix+tempnum+"0";
			}
			else{
				//tempnum=Math.round(tempnum*100)/100
				price=prefix+tempnum;
			
			}
		}
	return price;	
}
function comments_delete(){
	if(!window.confirm("Do you really want to delete this Comment?")){
		return false;
	}else{
		return true;
	}	
}

function check_contact_us()
{
	
}

