function CalculateRatings(intListingID)
{
	var strScriptName, strFieldName, strAvgScriptName, strDivAvgName
	
	var rating, ratinggroup;
	var i
	
	vote = false;
	for (i = 0; i < frmRatings.rate_1.length; i++){
		if (frmRatings.rate_1[i].checked) {
			vote = true
			break
			}
		}
	if (vote)
		{
		ratinggroup = 1
		rating = frmRatings.rate_1[i].value
		strFieldName = "rating" + intListingID + "_" + ratinggroup;
		strScriptName = "rating.asp?l=" + intListingID + "&g=" + ratinggroup + "&r=" + rating;
		//alert(strScriptName);
		DirectoryRating(strScriptName, strFieldName);
		}

	vote = false;
	for (i = 0; i < frmRatings.rate_2.length; i++){
		if (frmRatings.rate_2[i].checked) {
			vote = true
			break
			}
		}
	if (vote)
		{
		ratinggroup = 2
		rating = frmRatings.rate_2[i].value
		strFieldName = "rating" + intListingID + "_" + ratinggroup;
		strScriptName = "rating.asp?l=" + intListingID + "&g=" + ratinggroup + "&r=" + rating;
		//alert(strScriptName);
		DirectoryRating(strScriptName, strFieldName);
		}

	vote = false;
	for (i = 0; i < frmRatings.rate_3.length; i++){
		if (frmRatings.rate_3[i].checked) {
			vote = true
			break
			}
		}
	if (vote)
		{
		ratinggroup = 3
		rating = frmRatings.rate_3[i].value
		strFieldName = "rating" + intListingID + "_" + ratinggroup;
		strScriptName = "rating.asp?l=" + intListingID + "&g=" + ratinggroup + "&r=" + rating;
		//alert(strScriptName);
		DirectoryRating(strScriptName, strFieldName);
		}

	vote = false;
	for (i = 0; i < frmRatings.rate_4.length; i++){
		if (frmRatings.rate_4[i].checked) {
			vote = true
			break
			}
		}
	if (vote)
		{
		ratinggroup = 4
		rating = frmRatings.rate_4[i].value
		strFieldName = "rating" + intListingID + "_" + ratinggroup;
		strScriptName = "rating.asp?l=" + intListingID + "&g=" + ratinggroup + "&r=" + rating;
		//alert(strScriptName);
		DirectoryRating(strScriptName, strFieldName);
		}

	vote = false;
	for (i = 0; i < frmRatings.rate_5.length; i++){
		if (frmRatings.rate_5[i].checked) {
			vote = true
			break
			}
		}
	if (vote)
		{
		ratinggroup = 5
		rating = frmRatings.rate_5[i].value
		strFieldName = "rating" + intListingID + "_" + ratinggroup;
		strScriptName = "rating.asp?l=" + intListingID + "&g=" + ratinggroup + "&r=" + rating;
		//alert(strScriptName);
		DirectoryRating(strScriptName, strFieldName);
		}
		

	//process the average
	strAvgScriptName = "rating.asp?l=" + intListingID;
	//strDivAvgName = "rating" + intListingID;
	strDivAvgName = "overall"
	DirectoryRatingAverage(strAvgScriptName, strDivAvgName)
	
	alert("Thank you");
	frmRatings.submit();

}


function DirectoryRating(strScript, strDivNameToChange)
{
	try {
		xmlhttpRating = window.XMLHttpRequest?new XMLHttpRequest(): new ActiveXObject("Microsoft.XMLHTTP");
	} 
	catch (e) 
	{
		// browser doesn’t support ajax. handle however you want
		//reload?  Forum submit?
	}
	alert("Thank you!");
	strFieldName = strDivNameToChange
	xmlhttpRating.onreadystatechange = RatingTriggered;
	xmlhttpRating.open("GET", strScript);
	xmlhttpRating.send(null);
}

function RatingTriggered()
{
	var strDivName
	strDivName = strFieldName
	if ((xmlhttpRating.readyState==4) && (xmlhttpRating.status==200))
	{
		document.getElementById(strDivName).innerHTML = xmlhttpRating.responseText;
		
	}
}


function DoDirectoryRating(strScriptName, strDivName, strAvgScriptName, strDivAvgName)
{
	DirectoryRating(strScriptName, strDivName);
	DirectoryRatingAverage(strAvgScriptName, strDivAvgName)
}


function DirectoryRatingAverage(strScript, strDivNameToChange)
{
	try {
		xmlhttpAvgRating = window.XMLHttpRequest?new XMLHttpRequest(): new ActiveXObject("Microsoft.XMLHTTP");
	} 
	catch (e) 
	{
		// browser doesn’t support ajax. handle however you want
		//reload?  Forum submit?
	}
	//alert("Thank you")
	strFieldName = strDivNameToChange
	xmlhttpAvgRating.onreadystatechange = RatingAverageTriggered;
	xmlhttpAvgRating.open("GET", strScript);
	xmlhttpAvgRating.send(null);
}

function RatingAverageTriggered()
{
	var strDivName
	strDivName = strFieldName
	if ((xmlhttpAvgRating.readyState==4) && (xmlhttpAvgRating.status==200))
	{
		document.getElementById(strDivName).innerHTML = xmlhttpAvgRating.responseText;
	}
}