var DynamiteEventTarget = function () {
	function w3c_eventTarget() {
		var obj = arguments;
		while (obj.callee && obj.callee.caller && obj.callee.caller.arguments) {
			obj = obj.callee.caller.arguments;
		}
		return obj[0].target;
	}
	function ie_eventTarget() {
		return event.srcElement;
	}
	if (typeof window.addEventListener !== 'undefined') {
		return w3c_eventTarget;
	} else if (typeof window.attachEvent !== 'undefined') {
		return ie_eventTarget;
	}
} ();

var DynamiteAjax = new DynamiteAjaxFunction();
function DynamiteAjaxFunction() {

}
DynamiteAjaxFunction.prototype.init = function () {
	var xmlHttp;
	try {
		xmlHttp = new XMLHttpRequest();
	} catch (e) {
		try {
			xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
		} catch (e) {
			try {
				xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
			} catch (e) {
				alert("Your browser does not support AJAX!");
				return false;
			}
		}
	}
	this.xmlHttp = xmlHttp;
}
DynamiteAjaxFunction.prototype.xmlHttp = null;
DynamiteAjaxFunction.prototype.invoke = function (url, onsuccess) {
	this.init();
	var xmlHttp = this.xmlHttp;
	//$get("img_ajax_notifier").style.visibility = "visible";
	xmlHttp.onreadystatechange = function () {
		try {
			if ((xmlHttp.readyState == 4) && (xmlHttp.status == 200)) {
				if (onsuccess) {
					onsuccess(xmlHttp.responseXML, xmlHttp.responseText);
					//$get("img_ajax_notifier").style.visibility = "hidden";
				}
			}
		} catch (e) { alert("there was an error" + e.message); }
		finally {
		}
	}
	this.xmlHttp.open("GET", url, true);
	this.xmlHttp.send(null);
}
function DynamiteRating(id) {
	var evt = DynamiteEventTarget();
	var oldRating = "";
	var postId = id;
	if (evt.tagName == "A") {
		oldRating = evt.parentNode.style.backgroundPosition;
		window.status = "rate as "+parseInt(evt.getAttribute("title"));
		evt.parentNode.style.backgroundPosition = "left -" + (parseInt(evt.getAttribute("title")) * 40) + "px";
		function DynamiteRatingSuccess(a, b) {
			document.getElementById("dynamite-review-" + postId).parentNode.innerHTML = b;
		}
		evt.onclick = function () {
			var url = evt.getAttribute("href") + "&rating=" + parseInt(evt.getAttribute("title"));
			oldRating = "left top";
			evt.parentNode.style.backgroundPosition = oldRating;
			evt.parentNode.style.backgroundImage = 'url('+DynamiteDomainUrl + '/wp-admin/images/wpspin_light.gif)';
			DynamiteAjax.invoke(url, DynamiteRatingSuccess);
			return false;
		}
		evt.onmouseout = function () {
			evt.parentNode.style.backgroundPosition = oldRating;
			window.status = "";
		}
	}
}
function DynamiteLike(id) {
	var evt = DynamiteEventTarget();
	var postId = id;
	var url = evt.getAttribute("href") + "&rating="
	if (evt.getAttribute("title") == "like") {
		url = url + "1";
	} else {
		url = url + "-1";
	}
	function DynamiteRatingSuccess(a, b) {
		document.getElementById("dynamite-review-" + postId).parentNode.innerHTML = b;
	}
	evt.parentNode.parentNode.innerHTML = "<center><img style='margin-left: -10px; margin-top: 10px;' src='" + DynamiteDomainUrl + "/wp-admin/images/wpspin_light.gif'></center>";
	DynamiteAjax.invoke(url, DynamiteRatingSuccess);
	return false;
}


