//var mrdj = jQuery.noConflict();


function getPlayerSettings(quality) {
	sendRequest("0", quality);
}

function getSongInfo() {
	sendRequest("1");
}

function getAdminMessages() {
	sendRequest("2");
}

function sendRequest(info_val, quality) {
	var d = new Date();
	
	var prm = {
			info: info_val,
			unique: d.getTime()
	};
	if(quality)
		prm["quality"] = quality;
	
	$.ajax({
	       url: infoScript,
	       //dataType: "json",
	       type: "GET",
	       data: prm,
	       //contentType: "application/json",
	       success: function (response) {
	           //alert(response);
	           sendResponseToFlex(info_val, response);
	       },
	       error: function (jqXHR, textStatus, errorThrown) {
	           //alert("Napaka pri komunikaciji!" + textStatus);
	    	   var err = errorThrown;
	       }
	   });
}

function sendResponseToFlex(info_val, response){
	
	if($("#shwidget").length == 0){
		// player page
		var el = document.getElementById("MrDJShoutcast"); 
	}else{
		// widget wrapper
		var el = document.getElementById("shwidget"); 
	}
	
	var xmlString = serializeXML(response);
	
	switch (info_val) {
	case "0":
		el.playerSettingsResponse(xmlString);
		break;
	case "2":
		el.adminMessagesResponse(xmlString);
		break;
	case "1":
	default:
		el.songInfoResponse(xmlString);
		break;
	}
}

/**
 * Serialize an XML Document or Element and return it as a string.
 */
 function serializeXML(doc){
	 if (window.XMLSerializer) { // all browsers, except IE before version 9
         var serializer = new XMLSerializer();
             // the serializeToString method raises an exception in IE9
         try {
             var str = serializer.serializeToString (doc);
             return str;
         }
         catch (e) {
         }
     }

     if ('xml' in doc) {  // Internet Explorer
         return doc.xml;
     }
 }
