// JavaScript Document
//
function getDataString() {
	var page = $F("page");
	var data="page="+escape(page);
	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("=");
	}
	$("page").value = getValue(arrPairs,"page","1");
}
//
function getReviews() {
	var url= "ajax/GetReviewsAjax.html";
	var data="page=" +$F("page");
	data+="&r="+Math.random();
	var myAjax = new Ajax.Request(url,{asynchronous:true, method:'post',parameters:data, onSuccess:getReviewsSC, onFailure:fnErr});	
}
//
function getReviewsSC(r) {
	$("cntReviews").innerHTML = r.responseText;
}
//
function markHelpful(iID, iValue) {
	// iValue
	// 0 = not helpful
	// 1 = helpful
	var sHelpful = "not helpful";
	if (iValue == 1) {
	    sHelpful = "helpful";
	}
	try {
		$("cntHelpful"+iID.toString()).innerHTML = "<p class=\"wasHelpful\">You found this review " + sHelpful + "</p>";
		var url= "ajax/PutReviewHelpfulAjax.html";
		var data="reviewID="+encodeURIComponent(iID);
		data+="&helpful="+encodeURIComponent(iValue);
		data+="&r="+Math.random();
		var myAjax = new Ajax.Request(url,{asynchronous:true, method:'post',parameters:data, onSuccess:markHelpfulSC, onFailure:errFunc});	
	} catch(e) {
		writeError("An error occurred", "Please try your request again. If the problem persits, please contact <a href='mailto:support@thefreshairechoice.com'>support@thefreshairechoice.com</a>");
	}
	
}
//
function markHelpfulSC(r) {	
	if (r.responseText.indexOf("failure") > 0) {
		writeError("An error occurred", "Please try your request again. If the problem persits, please contact <a href='mailto:support@thefreshairechoice.com'>support@thefreshairechoice.com</a>");
	}
}
//
function reportInappropriate(iID) {
	showReportAsInappropriate('review',iID.toString());
}
//
function calculateRemainingChars(sBase,iMax) {
	try {
		var iRemaining = (iMax - $F("fld"+sBase).length);
		if (iRemaining <= 0) {
			$("fld"+sBase).value = $F("fld"+sBase).substring(0,iMax);
			iRemaining = 0;
			$("rt"+sBase).style.color = "#FF0000";
		} else {
			$("rt"+sBase).style.color = "#999999";
		}
		$("rt"+sBase).innerHTML = "( " + iRemaining + " characters remaining )";
	} catch (e) {
	}
}
//
function fnErr(t) {
	errFunc(t);
}
//
function showPage(sPage) { 
	if (!isNaN(sPage)) {
		var iPage = parseInt(sPage);
		if (iPage > 0) { $("page").value = iPage; }
		SWFAddress.setValue(getDataString());
	}
}
//
function previousPage() { 
	var sPage = "1";
	if (!isNaN($F("page"))) {
		var iPage = parseInt($F("page"));
		if (iPage > 1) { sPage = (iPage-1).toString(); }
		showPage(sPage);
	}
}
//
function nextPage() { 
	var sPage = "";
	if (!isNaN($F("page"))) {
		var iPage = parseInt($F("page"));
		sPage = (iPage+1).toString();
		showPage(sPage);
	}
}
//
function getValue(arr,sName,oDefault) {
	for (var i = 0; i < arr.length; i++) {
		if (arr[i][0] == sName) {
			return arr[i][1];
		}
	}
	return oDefault;
}
//
function handleChange(event) {
	var title = event.path;
	title = title.substr(1);
	resetValues(title);
	getReviews();
}
//
SWFAddress.addEventListener(SWFAddressEvent.CHANGE, handleChange);
