function checkAll(domFormObject)
{
	var Inputs = domFormObject.getElementsByTagName("input");
	for(var iCount = 0; iCount < Inputs.length; ++iCount)
	{
		if(Inputs[iCount].type == 'checkbox')
		{
			Inputs[iCount].checked = true;
		}
	}
}
function uncheckAll(domFormObject)
{
	var Inputs = domFormObject.getElementsByTagName("input");
	for(var iCount = 0; iCount < Inputs.length; ++iCount)
	{
		if(Inputs[iCount].type == 'checkbox')
		{
			Inputs[iCount].checked = false;
		}
	}
}

function showInput(div_id,cbox) {
	var div1 = document.getElementById("linkTag"+div_id);
	var div2 = document.getElementById("link"+div_id);
	
	if('none'==div1.style.display)
	{
		cbox.checked = true;
		div1.style.display = 'inline';
	}
	else
	{
		cbox.checked = false;
		div1.style.display='none';
	}
	if('none'==div2.style.display)
	{
		div2.style.display = 'inline';
	}
	else
	{
		div2.style.display='none';
	}

	//if (cbox.checked==true) {

//		document.getElementById("linkTag"+div_id)..style.display="inline";
//		document.getElementById("link"+div_id).style.display="inline";
	//} else
	//{
//		document.getElementById("linkTag"+div_id).style.display="none";
//		document.getElementById("link"+div_id).style.display="none";
	//}
}
function showDiv(div_id, show)
{
	if (true==show)
	{
		document.getElementById(div_id).style.display = "block";
		return false;
	}
	document.getElementById(div_id).style.display = "none";
	return false;
}
function toggleDiv(div_id)
{
	if (document.getElementById(div_id).style.display != "block")
	{
		document.getElementById(div_id).style.display = "block";
		return false;
	}
	document.getElementById(div_id).style.display = "none";
	return false;
}
function PopulateFloorplanForm(floorplanId,floorplanName,floorplanMinimumRent,
	floorplanMaximumRent,floorplanSpecials,floorplanDescription,floorplanBedrooms,floorplanDeposit,
	floorplanBathrooms,floorplanFee,floorplanMinSquareFootage,
	floorplanMaxSquareFootage,
	floorplanFeatureNames,floorplanFeatureIds,chosenFeatureIds,customFeatures)
{
	document.getElementById('floorplanAction').value = 'edit';
	document.getElementById('floorplanId').value = floorplanId;
	document.getElementById('floorplanName').value = floorplanName;
	document.getElementById('floorplanMinimumRent').value = floorplanMinimumRent;
	document.getElementById('floorplanMaximumRent').value = floorplanMaximumRent;
	document.getElementById('floorplanSpecials').value = floorplanSpecials;
	document.getElementById('floorplanDescription').value = floorplanDescription;
	document.getElementById('floorplanBedrooms').value = floorplanBedrooms;
	document.getElementById('floorplanDeposit').value = floorplanDeposit;
	document.getElementById('floorplanBathrooms').value = floorplanBathrooms;
	document.getElementById('floorplanFee').value = floorplanFee;
	document.getElementById('floorplanMinSquareFootage').value = floorplanMinSquareFootage;
	document.getElementById('floorplanMaxSquareFootage').value = floorplanMaxSquareFootage;

	//clear all features
	document.getElementById('floorplanFeaturesList').innerHTML = '';

	//create default features
	for(var i = 0 ; i < floorplanFeatureIds.length ; i++)
	{
		AddCheckboxElement(
			'floorplanFeaturesList',
			floorplanFeatureNames[i],
			'floorplanFeatures[]',
			'floorplanFeature_' + floorplanFeatureIds[i],
			'feature',
			false);
	}
	//check chosen default features
	for(i = 0 ; i < chosenFeatureIds.length ; i++)
	{
		document.getElementById('floorplanFeature_' + chosenFeatureIds[i]).checked = true;
	}
	//add custom features
	for(i = 0 ; i < customFeatures.length ; i++)
	{
		AddCheckboxElement(
			'floorplanFeaturesList',
			customFeatures[i],
			'floorplanFeatures[]',
			null,
			'feature',
			true);
	}
}
function AddCheckboxElement(destDivId,checkValue,formElementName,formElementId,cls,checked)
{
	var featureList = document.getElementById(destDivId);
	var customFeatureDiv = document.createElement('div');

	var customFeatureCheckbox = document.createElement('input');
	customFeatureCheckbox.setAttribute('type','checkbox');

	customFeatureDiv.setAttribute('class',cls);
	if(formElementId)
	{
		customFeatureCheckbox.setAttribute('id',formElementId);
	}
	if(checked)
	{
		customFeatureCheckbox.checked = true;
		//customFeatureCheckbox.setAttribute('checked','checked');
	}
	customFeatureCheckbox.setAttribute('name',formElementName);
	customFeatureCheckbox.setAttribute('value',checkValue);
	if('Media Room'==checkValue)
	{
		//alert(customFeatureCheckbox.value);
	}
	var txtNode = document.createTextNode(" " + checkValue);

	customFeatureDiv.appendChild(customFeatureCheckbox);
	customFeatureDiv.appendChild(txtNode);
	featureList.appendChild(customFeatureDiv);
}
function PopulateUnitForm(unitId,unitAddress,unitBedrooms,unitRent,unitBathrooms,
	unitFee,unitNumber,unitSquareFootage,unitDeposit,unitSpecials,unitDescription,
	unitFeatureNames,unitFeatureIds,chosenFeatureIds,customFeatures)
{
	document.getElementById('unitAction').value = 'edit';
	document.getElementById('editFormUnitId').value = unitId;
	document.getElementById('unitAddress').value = unitAddress;
	document.getElementById('unitBedrooms').value = unitBedrooms;
	document.getElementById('unitRent').value = unitRent;
	document.getElementById('unitBathrooms').value = unitBathrooms;
	document.getElementById('unitFee').value = unitFee;
	document.getElementById('unitNumber').value = unitNumber;
	document.getElementById('unitSquareFootage').value = unitSquareFootage;
	document.getElementById('unitDeposit').value = unitDeposit;
	document.getElementById('unitSpecials').value = unitSpecials;
	document.getElementById('unitDescription').value = unitDescription;

	//clear all features
	document.getElementById('unitFeaturesList').innerHTML = '';

	//create default features
	for(var i = 0 ; i < unitFeatureIds.length ; i++)
	{
		AddCheckboxElement(
			'unitFeaturesList',
			unitFeatureNames[i],
			'unitFeatures[]',
			'unitFeature_' + unitFeatureIds[i],
			'feature',
			false);
	}
	//check chosen default features
	for(i = 0 ; i < chosenFeatureIds.length ; i++)
	{
		document.getElementById('unitFeature_' + chosenFeatureIds[i]).checked = true;
	}
	//add custom features
	for(i = 0 ; i < customFeatures.length ; i++)
	{
		AddCheckboxElement(
			'unitFeaturesList',
			customFeatures[i],
			'unitFeatures[]',
			null,
			'feature',
			true);
	}
}
function HideForm(layerId)
{
	showDiv("blanket",false);
	showDiv(layerId,false);
	return false;
}
function isdefined(variable)
{
    return (typeof(variable) == "undefined")?  false: true;
}
function ShowForm(editId,formId,layerId,add)
{
	if(formId)
	{
		var f = document.getElementById(formId);
		//var blanket = document.getElementById(layerId);

		if(true == add)
		{
			for(var i = 0 ; i < f.childNodes.length ; i++)
			{
				var element = f.childNodes[i];
				if(element && element.id == editId)
				{
					//alert('found');
					element.value = '';
					break;
				}
				//else
				//{
				//	alert(element.id +"|"+editId+"|"+form1.childNodes[i].name+"|"+form1.childNodes.length)
				//}
			}
		}
	}
	
	showDiv("blanket", true);
	showDiv(layerId, true);
	
	var layer = document.getElementById(layerId + "_layer");
	if(layer)
	{
//		alert(
//			"document.documentElement.scrollTop: " + document.documentElement.scrollTop + "\n" +
//			"window.pageYOffset: " + window.pageYOffset + "\n" +
//			"layer.style.top: " + layer.style.top);

		var top = 50+"px";
		if(document.documentElement.scrollTop && document.documentElement.scrollTop > 0)
		{
			top = document.documentElement.scrollTop + 50 + "px";
		}
		else if(window.pageYOffset && window.pageYOffset > 0)
		{
			top = window.pageYOffset + 50 +"px";
		}
		layer.style.top = top;
	}

	var left = ($(window).width()/2-$(layer).width()/2);
	layer.style.left = left+"px";
	
	return false;
}
function SetPreview(previewUrlId,previewImageId,url,save)
{
	if(!url)
	{
		url = document.getElementById(previewUrlId).value;
	}
	if(save)
	{
		document.getElementById(previewUrlId).value = url;
	}
	document.getElementById(previewImageId).src = url;
}

function ExportSelectOptionChanged(select)
{
	var parts = select.options[select.selectedIndex].value.split("|");
	if('property'==parts[0])
	{
		ShowExportProperty();
	}
	if('floorplan'==parts[0])
	{
		ShowExportFloorplan(parts[1],parts[2],false);
	}
	if('unit'==parts[0])
	{
		ShowExportUnit(parts[1],parts[2],"craigslist",false);
	}
}
function ShowExportProperty()
{
	SetValue("templateId",null);
	SetHtml("selectedTemplateName","");
	SetValue("floorplanId",null);
	SetHtml("selectedFloorplanName","");
	SetValue("unitId",null);
	SetHtml("selectedUnitName","");
	document.getElementById("exportActionButtons").style.display="none";
	ShowTemplates("property");
}

function ShowTemplates(kind)
{
	if('property'==kind)
	{
		showDiv('propertyTemplates',true);
		showDiv('unitTemplates',false);
		showDiv('floorplanTemplates',false);
	}
	if('floorplan'==kind)
	{
		showDiv('propertyTemplates',false);
		showDiv('unitTemplates',false);
		showDiv('floorplanTemplates',true);
	}
	if('unit'==kind)
	{
		showDiv('propertyTemplates',false);
		showDiv('unitTemplates',true);
		showDiv('floorplanTemplates',false);
	}
	return false;
}
function SetValue(id,value)
{
	if(value && 'null'!=value)
	{
		document.getElementById(id).value=value;
	}
	else
	{
		document.getElementById(id).value='';
	}
}
function SetHtml(id,value)
{
	if(value && 'null'!=value)
	{
		document.getElementById(id).innerHTML=value;
	}
	else
	{
		document.getElementById(id).innerHTML='';
	}
}
function Continue()
{
	
	var propertyId = document.getElementById('propertyId').value;
	var floorplanId = document.getElementById('floorplanId').value;
	var unitId = document.getElementById('unitId').value;
	var templateId = document.getElementById('templateId').value;

	if('null'==unitId)
	{
		unitId = '';
	}
	if('null'==floorplanId)
	{
		floorplanId = '';
	}

	var destSite = document.getElementById('destSite').value;
	if('backpage'==destSite)
	{
		var url = 'capture.php?action=copy_and_paste_backpage';
	}
	else
	{
		//var url = 'toolbar_api.php?action=copy_and_paste';
		var url = 'capture.php?action=copy_and_paste';
	}
	url += "&propertyId="+propertyId;
	url += "&floorplanId="+floorplanId;
	url += "&unitId="+unitId;
	url += "&templateId="+templateId;
	
	window.open(url,'exportwindow');
	//window.open(url,'exportwindow');
	
	document.getElementById('exportClassifiedAdsStep1').style.visibility='visible';
	HideForm('exportClassifiedAds');
	//window.location = url;
	return false;
}
function PreviewExportAd()
{
	var propertyId = document.getElementById('propertyId').value;
	var floorplanId = document.getElementById('floorplanId').value;
	var unitId = document.getElementById('unitId').value;
	var templateId = document.getElementById('templateId').value;

	//var url = 'toolbar_api.php?action=preview';
	
	var url = 'capture.php?action=preview';

	url += "&propertyId="+propertyId;
	url += "&floorplanId="+floorplanId;
	url += "&unitId="+unitId;
	url += "&templateId="+templateId;
	window.open(url,'previewwindow');
	//window.location = url;
	return false;
}
function ShowExportFloorplan(floorplanId,floorplanName,hideStep1)
{
	if(hideStep1)
	{
		document.getElementById('exportClassifiedAdsStep1').style.visibility='hidden';
	}
	ShowForm(null,null,'exportClassifiedAds',false);
	SetValue("floorplanId",floorplanId);
	SetValue("templateId",null);
	SetHtml("selectedTemplateName","");
	SetValue("unitId",null);
	SetHtml("selectedUnitName","");
	SetHtml("selectedFloorplanName","Floorplan: "+floorplanName);
	document.getElementById("exportActionButtons").style.display="none";
	ShowTemplates("floorplan");
	return false;
}
function ShowExportUnit(unitId,unitName,destSite,hideStep1)
{
	if(hideStep1)
	{
		document.getElementById('exportClassifiedAdsStep1').style.visibility='hidden';
	}
	ShowForm(null,null,'exportClassifiedAds',false);
	SetValue("unitId",unitId);
	SetValue("destSite",destSite);
	SetValue("templateId",null);
	SetHtml("selectedTemplateName","");
	SetValue("floorplanId",null);
	SetHtml("selectedFloorplanName","");
	SetHtml("selectedUnitName","Unit: " + unitName);
	document.getElementById("exportActionButtons").style.display = "none";
	ShowTemplates("unit");
	return false;
}

function limitText(limitField,limitNum) {
	if (limitField.value.length > limitNum) {
		
		document.getElementById('countdown').style.color = "red";
		document.getElementById('countdown').innerHTML = "-"+(limitField.value.length - limitNum);
	} else {
		document.getElementById('countdown').style.color = "black";
		document.getElementById('textlimitmessage').innerHTML = '';
		document.getElementById('countdown').innerHTML = limitNum - limitField.value.length;
	}
}
