// JavaScript Document
var allowedSortFields = "Date,Rating";
var currentSortType = null;
//
function getDataString() {
	var typeBedroom = $("fldBedroom").checked;
	var typeBath = $("fldBathroom").checked;
	var typeKitchen = $("fldKitchen").checked;
	var typeLivingRoom = $("fldLiving").checked;
	var typeNursery = $("fldNursery").checked;
	var sortType = $F("fldSort");
	var page = $F("fldPage");
	var pageSize = $F("fldPageSize");
	var colorID = $F("fldColorID");
	var colorValue = $F("fldColorValue");
	var colorName = $F("fldColorName");
	var data="typeBedroom="+escape(typeBedroom);
	data=data+"&typeBath="+escape(typeBath);
	data=data+"&typeKitchen="+escape(typeKitchen);
	data=data+"&typeLivingRoom="+escape(typeLivingRoom);
	data=data+"&typeNursery="+escape(typeNursery);
	data=data+"&sortType="+escape(sortType);
	data=data+"&page="+escape(page);
	data=data+"&pageSize="+escape(pageSize);
	data=data+"&colorID="+escape(colorID);
	data=data+"&colorValue="+escape(colorValue);
	data=data+"&colorName="+escape(colorName);
	data=data+"&r="+Math.random();
	return data;
}
//
function resetValues(s) {
	var arrPairs = s.split("&");
	for (var i = 0; i < arrPairs.length; i++) {
		arrPairs[i] = arrPairs[i].split("=");
	}
	//
	setCheckBox("fldBedroom",getValue(arrPairs,"typeBedroom","true"));
	setCheckBox("fldBathroom",getValue(arrPairs,"typeBath","true"));
	setCheckBox("fldKitchen",getValue(arrPairs,"typeKitchen","true"));
	setCheckBox("fldLiving",getValue(arrPairs,"typeLivingRoom","true"));
	setCheckBox("fldNursery",getValue(arrPairs,"typeNursery","true"));
	$("fldSort").value = getValue(arrPairs,"sortType","Date");
	$("fldPage").value = getValue(arrPairs,"page","1");
	$("fldPageSize").value = getValue(arrPairs,"pageSize","10");
	setColor(getValue(arrPairs,"colorID","FA000"), getValue(arrPairs,"colorValue","FFFFFF"), getValue(arrPairs,"colorName","All Colors"));
}
//
function fnErr(t) {
	errFunc(t);
}
//
function setColor(sColorID, sColorValue, sColorName) {
	$("fldColorID").value = sColorID;
	$("fldColorValue").value = sColorValue;
	$("fldColorName").value = sColorName;
	$("cntColorPickerColorPalettes").style.backgroundColor = unescape(sColorValue);
	sColorName = sColorName.replace(/%25/, " ");
	sColorName = sColorName.replace(/%20/, " ");
	$("txtColorPickerColorPalettes").innerHTML = unescape(sColorName);
}
//
function makeAjaxCall() {
	$("cntLoading").style.display = 'block';
	var data = getDataString();
	var url = "ajax/GetFreshPalettesListingsAjax.html";
	if ($F("fldPageType") == "HealthyExperience") {
		url = "ajax/GetHealthyExperiencesListingsAjax.html";
	}
	var myAjax = new Ajax.Request(url,{asynchronous:true, method:'post',parameters:data, onSuccess:filterSC, onFailure:filterErr});
}
//
function filter() {
	$("cntListingNoContent").style.display = 'none';
	$("fldPage").value = 1;
	SWFAddress.setValue(getDataString());
}
//
function changeColor(sColorID, sHex, sColorName) {
	setColor(sColorID, sHex, sColorName);
	var ie7 = (document.all && !window.opera && window.XMLHttpRequest) ? true : false;
	if (!ie7) { Shadowbox.close(); } // causes an error in ie 7
	filter();
}
//
function filterSC(t) {
	$("cntLoading").style.display = 'none';
	if (t.responseText.length > 0) {
		$("cntListingNoContent").style.display = 'none';
		$("cntListingContent").innerHTML = t.responseText;
		$("cntListingContent").style.display = 'block';
		setSortField();
	} else {
		$("cntListingContent").style.display = 'none';
		$("cntListingNoContent").style.display = 'block';
	}
}
//
function setSortField() {
	// reset current
	try {
		$("fldSort"+currentSortType).className="off";
	} catch (e1) {
		//alert(e);	
	}
	// set new
	try {
		//
		currentSortType = $F("fldSort");
		$("fldSort"+currentSortType).className="on";
	} catch(e) {
		//alert(e);	
	}
}
//
function changeSortField(sType) {
	// check if value is acceptable
	if (allowedSortFields.indexOf(sType) >= 0) {
		$("fldSort").value = sType;
		filter();
	}
}
//
function showPage(sPage) { 
	if (!isNaN(sPage)) {
		var iPage = parseInt(sPage);
		if (iPage > 0) { $("fldPage").value = iPage; }
		SWFAddress.setValue(getDataString());
	}
}
//
function previousPage() { 
	var sPage = "1";
	if (!isNaN($F("fldPage"))) {
		var iPage = parseInt($F("fldPage"));
		if (iPage > 1) { sPage = (iPage-1).toString(); }
		showPage(sPage);
	}
}
//
function nextPage() { 
	var sPage = "";
	if (!isNaN($F("fldPage"))) {
		var iPage = parseInt($F("fldPage"));
		sPage = (iPage+1).toString();
		showPage(sPage);
	}
}
//
function filterErr(t) {
	errFunc(t);
}
//
function getValue(arr,sName,oDefault) {
	for (var i = 0; i < arr.length; i++) {
		if (arr[i][0] == sName) {
			return unescape(arr[i][1]);
		}
	}
	return oDefault;
}
//
function setCheckBox(sFld, sVal) {
	try {
		if (sVal == "true") { $(sFld).checked = true; } else { $(sFld).checked = false; }
	} catch(e) {
		//	
	}
}
//
function handleChange(event) {
	var title = event.path;
	title = title.substr(1);
	resetValues(title);
	makeAjaxCall();
}
//
SWFAddress.addEventListener(SWFAddressEvent.CHANGE, handleChange);

