function ajax_addfav(url, el, id){
	var param = el.href.substr(el.href.indexOf("?")+1);
	param = param + '&' + Math.random();
	if (Ajax) {
		var ajaxparam = param + "&ajax=1";
		var obj = new Ajax.Request(url, {method: "get", parameters: ajaxparam, onComplete:
			function(t){
				var xmlDoc = t.responseXML.documentElement;
				var statusNode = xmlDoc.getElementsByTagName("status");
				var messageNode = xmlDoc.getElementsByTagName("message");
				var status = statusNode[0].childNodes[0].nodeValue;
				var message = messageNode[0].childNodes[0].nodeValue;
				
				if (status == "true"){
					var favtitleNode = xmlDoc.getElementsByTagName("favtitle");
					var favtitle = favtitleNode[0].childNodes[0].nodeValue;

					if ($("addfav")) {
						mylink = $("addfav");
					} else {
						mylink = $("addfav_"+id);
					}
					if (param.indexOf("addfav") == -1){
						mylink.innerHTML = "<a href=\"" + el.pathname + el.search.replace("removefav", "addfav") + "\" onclick=\"return ajax_addfav('" + url + "', this, " + id + ");\">" + favtitle + "</a>";
					} else {
						mylink.innerHTML = "<a href=\"" + el.pathname + el.search.replace("addfav", "removefav") + "\" onclick=\"return ajax_addfav('" + url + "', this, " + id + ");\">" + favtitle + "</a>";
					}
				}
				myel = $("sharingmsg");
				if (myel) {
					myel.innerHTML = message;
				}
			}
		});
	} else {
		location.href = el.href + "&ajax=0";
	}
	return false;
}

function ajax_flagmedia(url, el, id){
	var param = el.href.substr(el.href.indexOf("?")+1);
	param = param + '&' + Math.random(); 
	if (Ajax) {
		var ajaxparam = param + "&ajax=1";
		var obj = new Ajax.Request(url, {method: "get", parameters: ajaxparam, onComplete:
			function(t){
				var xmlDoc = t.responseXML.documentElement;
				var statusNode = xmlDoc.getElementsByTagName("status");
				var messageNode = xmlDoc.getElementsByTagName("message");
				var status = statusNode[0].childNodes[0].nodeValue;
				var message = messageNode[0].childNodes[0].nodeValue;

				if (status == "true"){
					$("mediainfomsg").innerHTML = message;
				} else {
					$("mediainfomsg").innerHTML = message;
				}
			}
		});
	} else {
		location.href = el.href + "&ajax=0";
	}
	return false;
}

function ajax_flagcomment(url, el, id){
	var param = el.href.substr(el.href.indexOf("?")+1);
	param = param + '&' + Math.random(); 
	if (Ajax) {
		var ajaxparam = param + "&ajax=1";
		var obj = new Ajax.Request(url, {method: "get", parameters: ajaxparam, onComplete:
			function(t){
				var xmlDoc = t.responseXML.documentElement;
				var statusNode = xmlDoc.getElementsByTagName("status");
				var messageNode = xmlDoc.getElementsByTagName("message");
				var status = statusNode[0].childNodes[0].nodeValue;
				var message = messageNode[0].childNodes[0].nodeValue;

				if (status == "true"){
					$("commentflagmsg"+id).innerHTML = message;
				} else {
					$("commentflagmsg"+id).innerHTML = message;
				}
			}
		});
	} else {
		location.href = el.href + "&ajax=0";
	}
	return false;
}

function ajax_ratemedia(url, el, id){
	var param = el.href.substr(el.href.indexOf("?")+1);
	param = param + '&' + Math.random(); 
	if (Ajax) {
		var ajaxparam = param + "&ajax=1";
		var obj = new Ajax.Request(url, {method: "get", parameters: ajaxparam, onComplete:
			function(t){
				var xmlDoc = t.responseXML.documentElement;
				var statusNode = xmlDoc.getElementsByTagName("status");
				var messageNode = xmlDoc.getElementsByTagName("message");
				
				var status = statusNode[0].childNodes[0].nodeValue;
				var message = messageNode[0].childNodes[0].nodeValue;

				if (status == "true"){
					var fullbarlengthNode = xmlDoc.getElementsByTagName("fullbarlength");
					var rate_unitsNode = xmlDoc.getElementsByTagName("rate_units");
					var ratingcountNode = xmlDoc.getElementsByTagName("ratingcount");
					var votescastNode = xmlDoc.getElementsByTagName("votescast");
					var rating_widthNode = xmlDoc.getElementsByTagName("rating_width");
					var rating_averageNode = xmlDoc.getElementsByTagName("rating_average");
					
					var fullbarlength = fullbarlengthNode[0].childNodes[0].nodeValue;
					var rate_units = rate_unitsNode[0].childNodes[0].nodeValue;
					var ratingcount = ratingcountNode[0].childNodes[0].nodeValue;
					var votescast = votescastNode[0].childNodes[0].nodeValue;
					var rating_width = rating_widthNode[0].childNodes[0].nodeValue;
					var rating_average = rating_averageNode[0].childNodes[0].nodeValue;
					
					var newrating = "<ul id=\"ratingbar\" class=\"unit-rating\" style=\"width:"+ fullbarlength +"px;\">";
					newrating = newrating + "<li class=\"current-rating\" style=\"width:"+ rating_width +"px;\">Currently "+ rating_average +" / "+ rate_units +"</li>";
					newrating = newrating + "</ul><p>";
					newrating = newrating + "Rating: <strong>"+ rating_average +"</strong>/"+ rate_units +" ("+ ratingcount +" "+ votescast +")";
					newrating = newrating + " "+ message;
					newrating = newrating + "</p>";
					$("ratingstars").innerHTML = newrating;
				} else {
					$("ratingmsg").innerHTML = message;
				}
			}
		});
	} else {
		location.href = el.href + "&ajax=0";
	}
	return false;
}

function ajax_sendemail(url, el, id){
	var param = el.action.substr(el.action.indexOf("?")+1);
	param = param + '&' + Math.random();
	if (Ajax) {
		var ajaxparam = param + "&" + $('sharingemailform').serialize() + "&ajax=1";
		var obj = new Ajax.Request(url, {method: "post", parameters: ajaxparam, onComplete:
			function(t){
				var xmlDoc = t.responseXML.documentElement;
				var statusNode = xmlDoc.getElementsByTagName("status");
				var messageNode = xmlDoc.getElementsByTagName("message");
				
				var status = statusNode[0].childNodes[0].nodeValue;
				var message = messageNode[0].childNodes[0].nodeValue;

				if (status == "true"){
					$("emailaddress").value = "";
					$("emailmessage").value = "";
					$("emailmsg").innerHTML = message;
				} else {
					$("emailmsg").innerHTML = message;
				}
			}
		});
	} else {
		location.href = el.href + "&ajax=0";
	}
	return false;
}

function ajax_writecomment(url, el, id){
	var param = el.action.substr(el.action.indexOf("?")+1);
	param = param + '&' + Math.random();
	
	var error_found = false;
	var error_msg = "";
	
	el.media_comment.value = el.media_comment.value.stripScripts().strip();
	if (el.media_comment.value.blank() == true) {
		error_found = true;
		error_msg = _CommentNotBeBlank + "<br>";
	}
	
	if (error_found == true){
		$("writecommentmsg").innerHTML = error_msg;
		return false;
	}
	if (Ajax) {
		var ajaxparam = param + "&" + $('writecommentform').serialize() + "&ajax=1";
		var obj = new Ajax.Request(url, {method: "post", parameters: ajaxparam, onComplete:
			function(t){
				var xmlDoc = t.responseXML.documentElement;
				var statusNode = xmlDoc.getElementsByTagName("status");
				var messageNode = xmlDoc.getElementsByTagName("message");
				
				var status = statusNode[0].childNodes[0].nodeValue;
				var message = messageNode[0].childNodes[0].nodeValue;

				if (status == "true"){
					$("writecommentmsg").innerHTML = message;
					$("writecommentform").disable();
					var newcomment = document.createElement("div");
					newcomment.innerHTML = "<div class=\"mediaitem\"><b>Comment:</b> " + el.media_comment.value + "<br></div>";
					$("mediaitemsdiv").insertBefore(newcomment, $("mediaitemsdiv").firstChild);
				} else {
					$("writecommentmsg").innerHTML = message;
				}
			}
		});
	} else {
		location.href = el.href + "&ajax=0";
	}
	return false;
}