var request;
var currentTrId = -1;

/**
* Load XMLDoc function
*/

function doLoad(url) {
	if (window.XMLHttpRequest) {
		request = new XMLHttpRequest();
		request.onreadystatechange = processRequestChange;
		request.open("GET", url, true);
		request.send(null);
	} else if (window.ActiveXObject) {
		request = new ActiveXObject("Microsoft.XMLHTTP");
		if (request) {
			request.onreadystatechange = processRequestChange;
			request.open("GET", url, true);
			request.send();
		}
	}
}

/**
* Get request state text function
*/
function getRequestStateText(code) {
	switch (code) {
		case 0: return "Uninitialized."; break;
		case 1: return "Loading..."; break;
		case 2: return "Loaded."; break;
		case 3: return "Interactive..."; break;
		case 4: return "Complete."; break;
	}
}

/**
* Event on request change
*/
function processRequestChange() {
}

function star(songId, elem) {
	var url = "/star.php?song=" + songId;

	doLoad(url);

	if (elem.alt == "starred") {
		elem.src = "/img/star_small.gif";
		elem.alt = "not starred";
	} else {
		elem.src = "/img/star_big.gif";
		elem.alt = "starred";
	}

	return false;
}

function returnObjById(id) { 
    if (document.getElementById) 
        var returnVar = document.getElementById(id); 
    else if (document.all) 
        var returnVar = document.all[id]; 
    else if (document.layers) 
        var returnVar = document.layers[id]; 
    return returnVar; 
}

function share(songId, i) {
	var elem = returnObjById("share_" + i);
	var starElem = returnObjById("star_" + i);

	var url = "/share.php?song=" + songId;

	doLoad(url);

	if (elem.alt == "shared") {
		elem.innerHTML = "share";
		elem.alt = "unshared";
		starElem.src = "/img/star_small.gif";
		starElem.alt = "not shared";
	} else {
		elem.innerHTML = "unshare";
		elem.alt = "shared";
		starElem.src = "/img/star_big.gif";
		starElem.alt = "shared";
	}

	return false;
}

function subscribe(podcastId, genreId, elem) {
	//var subelem = returnObjById("subscribers_" + podcastId);
	//var sub = parseInt(subelem.innerHTML);
	var sub = 0;

	if (elem.alt == "subscribed") {
		var url = "/subscribe.php?stream=" + podcastId + "&genre=" + genreId + "&action=unsubscribe";
		doLoad(url);
		elem.innerHTML = "subscribe to";
		elem.alt = "not subscribed";
		sub = sub - 1;
	} else {
		var url = "/subscribe.php?stream=" + podcastId + "&genre=" + genreId + "&action=subscribe";
		doLoad(url);
		elem.innerHTML = "unsubscribe from";
		elem.alt = "subscribed";
		sub = sub + 1;
	}

	//subelem.innerHTML = sub;

	return false;
}

function subscribeToChannel(channelId, elem) {
	//var subelem = returnObjById("subscribers_" + podcastId);
	//var sub = parseInt(subelem.innerHTML);
	var sub = 0;

	if (elem.alt == "subscribed") {
		var url = "/subscribeToChannel.php?stream=" + channelId + "&action=unsubscribe";
		doLoad(url);
		elem.innerHTML = "subscribe";
		elem.alt = "not subscribed";
		sub = sub - 1;
	} else {
		var url = "/subscribeToChannel.php?stream=" + channelId + "&action=subscribe";
		doLoad(url);
		elem.innerHTML = "unsubscribe";
		elem.alt = "subscribed";
		sub = sub + 1;
	}

	//subelem.innerHTML = sub;

	return false;
}

function disableActions(elem, artist_id) {
	elem.parentNode.childNodes[0].innerHTML = "<span><nobr><a href=\"/buy.php?artist=" + artist_id + "\">buy mp3 from iTunes</a></nobr></span>";

	return false;
}

function enableActionsOld(elem, file_id, serverName, current_user_id, hash, artist) {
	elem.parentNode.childNodes[0].innerHTML = "<span><nobr><a name=\"play" + file_id + "\" href=\"#play" + file_id + "\" onClick=\"return loadFile('" + file_id + "', '" + artist + "');\">play</a> | <a href=\"/download.php?file=" + file_id+ "\">download</a></nobr> | <nobr><a href=\"http://www.amazon.com/gp/search?ie=UTF8&keywords=" + artist + "&tag=tunestory-20&index=digital-music&linkCode=ur2&camp=1789&creative=9325\" target=\"_blank\">buy</a><img src=\"http://www.assoc-amazon.com/e/ir?t=tunestory-20&amp;l=ur2&amp;o=1\" width=\"1\" height=\"1\" border=\"0\" alt=\"\" style=\"border:none !important; margin:0px !important;\" /></nobr><p/><nobr><a href=\"itpc://" + serverName + "/add_to_itunes.php?user=" + current_user_id + "&h=" + hash + "&file=" + file_id + "\">add to iTunes</a></nobr></span>";
/*
	elem.parentNode.childNodes[0].innerHTML = "<span><nobr><a name=" + file_id + " href=\"#" + file_id + "\" onClick=\"loadFile('" + file_id + "', '" + artist + "'); return false;\">play</a> | <a href=\"/download.php?file=" + file_id+ "\">download</a></nobr> | <nobr><a href=\"http://www.amazon.com/gp/search?ie=UTF8&keywords=" + artist + "&tag=tunestory-20&index=digital-music&linkCode=ur2&camp=1789&creative=9325\" target=\"_blank\">buy</a><img src=\"http://www.assoc-amazon.com/e/ir?t=tunestory-20&amp;l=ur2&amp;o=1\" width=\"1\" height=\"1\" border=\"0\" alt=\"\" style=\"border:none !important; margin:0px !important;\" /></nobr><p/><nobr><a href=\"itpc://" + serverName + "/add_to_itunes.php?user=" + current_user_id + "&h=" + hash + "&file=" + file_id + "\">add to iTunes</a></nobr></span>";
*/

	return false;
}

function enableActions(elem, file_id, serverName, current_user_id, hash, artist) {
	elem.parentNode.childNodes[0].innerHTML = "<span><a href=\"#\" onClick=\"return loadFile('" + file_id + "', '" + artist + "');\">play</a> | <a href=\"http://www.amazon.com/gp/search?ie=UTF8&keywords=" + artist + "&tag=tunestory-20&index=digital-music&linkCode=ur2&camp=1789&creative=9325\" target=\"_blank\">download</a><img src=\"http://www.assoc-amazon.com/e/ir?t=tunestory-20&amp;l=ur2&amp;o=1\" width=\"1\" height=\"1\" border=\"0\" alt=\"\" style=\"border:none !important; margin:0px !important;\" /></span>";

	return false;
}

function enableActions1Old(elem, file_id, serverName, current_user_id, hash, artist) {
	currentTrId++;
	
	e = returnObjById('tr_' + currentTrId);
	a = ' ' + currentTrId;
	e.innerHTML = a;
/*	e.parentNode.childNodes[0].innerHTML = a;
	e.style = "";
	alert(e.innerHTML);
	e.outerHTML = '<tr id="tr_' + currentTrId + '">' + currentTrId + '</tr>'; */

	return false;
}

function showRow(elem) {
	elem.parentNode.parentNode.style.display = '';
}

function onBodyLoad() {
	e = returnObjById('pager');
	e.style.display = '';
}
