/*
	$Id: show.js 38844 2008-06-13 13:33:40Z bvanderpoel $
	$URL: http://10.134.130.125/svn/CodeDB/trunk/webroot/comedychamp/files/script/show.js $

	Requires:
		xmlHttp.js
		globalBaseUrl must be set
*/

var xmlHttp = createXmlHttp();

function addToFavorites(objectId) {
	var _url = globalBaseUrl + 'show/ajax.cfm?action=add-favourite&objectid=' + objectId;
	if (sendAjaxCall(_url, true)) {
		alert('Successfully added to your favourites!');
	}
	return false;
}

function addToFeatured(objectId) {
	var _url = globalBaseUrl + 'show/ajax.cfm?action=add-featured&objectid=' + objectId;
	if (sendAjaxCall(_url, true)) {
		alert('Successfully added to your featured!');
	}
	return false;
}

function markInappropriate(objectId) {
	var _url = globalBaseUrl + 'show/ajax.cfm?action=mark-inappropriate&objectid=' + objectId;
	if (sendAjaxCall(_url, true)) {
		alert('Successfully marked this object as inappropriate!');
	}
	return false;
}
function rateObject(objectId, score) {
	var _url = globalBaseUrl + 'show/ajax.cfm?action=rate-object&objectid=' + objectId + '&score=' + score;
	if (sendAjaxCall(_url, true)) {
		getRating(objectId);
		alert('Successfully rated this object!');
	}
	return false;
}
function getRating(objectId) {
	var _url = globalBaseUrl + 'show/ajax.cfm?action=get-rating&objectid=' + objectId;
	var _response = sendAjaxCall(_url, false);
	document.getElementById('ratingDisplay').innerHTML = _response;
	return false;
}

function addComment(objectId, comment, chunk) {
	var _url = globalBaseUrl + 'show/ajax.cfm?action=add-comment&objectid=' + objectId + '&comment=' + escape(comment);
	if (sendAjaxCall(_url, true)) {
		return getComments(objectId, chunk, 1);
	} else {
		return false;
	}
}
function getComments(objectId, chunk, pointer) {
	var _url = globalBaseUrl + 'show/ajax.cfm?action=get-comments&objectid=' + objectId + '&chunk=' + chunk + '&pointer=' + pointer;
	var _response = sendAjaxCall(_url, false);
	document.getElementById('commentlisting').innerHTML = _response;
	return false;
}
function markCommentInappropriate(commentId) {
	var _url = globalBaseUrl + 'show/ajax.cfm?action=mark-comment-inappropriate&commentid=' + commentId;
	if (sendAjaxCall(_url, true)) {
		alert('Successfully marked this comment as inappropriate!');
	}
	return false;
}
function sendAjaxCall(url, xml) {
	var _successful = false;

	try {
		xmlHttp.open('GET', url, false);
		xmlHttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
		xmlHttp.setRequestHeader('charset', 'UTF-8');
		xmlHttp.send('');

		if (xml) {
			var response = parseXML(xmlHttp.responseText);
			var resultNode = response.getElementsByTagName("result")[0];

			if (resultNode.getAttribute("error") == 0) {
				var _successful = true;
			} else {
				alert('Something went wrong:\n' + resultNode.getElementsByTagName("message")[0].firstChild.nodeValue);
				var _successful = false;
			}
		} else {
			return xmlHttp.responseText;
		}
	} catch(e) {
		alert('Something went wrong:\n' + e.toString());
		var _successful = false;
	}

	return _successful;
}

function openTellAFriend(id, width, height) {
	var _url = globalBaseUrl + 'tell-a-friend/?id=' + id;
	var _winid = 'champ';
	var _winoptions = 'width=' + width + ',height=' + height + ',toolbar=0,location=0,menubar=0,scrollbars=1,status=0,resizable=1';
	var _win = window.open(_url, _winid, _winoptions);

	_win.focus();

	return false;
}
