﻿var req;

function loadXML(p_url){
	// Firefox, Safari, etc
	if(window.XMLHttpRequest) {
	  try {
		req = new XMLHttpRequest();
	  } catch(e) {
	  req = false;
	}
	// IE/Windows
	} else if(window.ActiveXObject) {
	  try {
		 req = new ActiveXObject("Msxml2.XMLHTTP");
	  } catch(e) {
		try {
		  req = new ActiveXObject("Microsoft.XMLHTTP");
		} catch(e) {
		  req = false;
		}
	  }
	}
	if(window.netscape) { 
		netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead");
	}
	if(req){
		req.open('GET', p_url, true);
		req.overrideMimeType("text/xml")
		req.onreadystatechange = function () {
			trace(req.readyState)
		  if (req.readyState == 4) {
			 if(req.status == 200){
//			  trace(req.responseText);
				if (window.XMLHttpRequest) { //not IE
					netscape.security.PrivilegeManager.enablePrivilege("UniversalBrowserRead");
				}
				var xmlResponse = req.responseXML;
				xmlResponse.ignoreWhite = true;
				if(req.responseXML){
					if(xmlResponse.documentElement){
						trace(xmlResponse.documentElement.nodeName);
						playlistParse(xmlResponse.documentElement)
					}
				}
			 }else{
			  alert("Error loading page\n");
			 }
		  }
		};
		req.send(null); 	
	}
}

function playlistParse(toptracks_node){
	trace(toptracks_node.nodeName)
	creators = []
	titles = []
	var artists = toptracks_node.getElementsByTagName('artist')
	for(var i=0; i<10; i++){
		creators[i] = artists[i].firstChild.nodeValue
	}
	var title_ar = toptracks_node.getElementsByTagName('name')
	for (var j=0;j<10;j++){
	  titles[j] = title_ar[j].firstChild.nodeValue
	  trace(title_ar[j].firstChild.nodeValue)
	}
	for (k=0;k<10;k++){
		addTrack('playlist1',creators[k],titles[k])
	}
}

function loadPlaylist(){
	var url = document.getElementById('playlist_url').value;
	loadXML(url)
	return false;
}

//DEBUG
function trace(p_msg){
	document.getElementById('debug_output').value += p_msg +"\n";
}
function clearOutput(){
	document.getElementById('debug_output').value = "";
}