openTrack = 0;
alph = 100;

function addIPSong(tracknum) {
	var ipInfo = new Array();
	var php = new PHP_Serializer(true);
	if($('ipAlert-'+tracknum).className == 'addTrack' && !openTrack)
	{
		$('ipAlert-'+tracknum).title = '';
		$('ipAlert-'+tracknum).blur();
		ipInfo['id'] = $('instant' + tracknum + '_id').value;
		ipInfo['track'] = $('instant' + tracknum + '_track').value;
		ipInfo['song'] = unescape($('instant' + tracknum + '_song').value);
		ipInfo['song'] = ipInfo['song'].replace(/&/, 'and');
		ipInfo['artist'] = unescape($('instant' + tracknum + '_artist').value);
		ipInfo['artist'] = ipInfo['artist'].replace(/&/, 'and');
		
		new ajax ('/playlist/instant/modsong.php' , {
			postBody: 'mode=a&info='+ php.serialize(ipInfo), 
			update: '', 
			onComplete: ajaxUpdateTracklist
		});

		if($('ipAlert-'+tracknum)){
			$('addStatus'+tracknum).className = 'addStatus';
			$('addStatus'+tracknum).style.display = 'block';
			$('addStatus'+tracknum).innerHTML = '<img src="/images/addingWait.gif" width="19" height="18" align="absmiddle">Adding...';
			openTrack = tracknum;
		}
		return;
	}
}

function remIPSong(tracknum) {
	new ajax ('/playlist/instant/modsong.php', {
		postBody: 'mode=r&tracknum=' + tracknum, 
		update: '', 
		onComplete: ajaxUpdateTracklist
	});
	return;
}


function ajaxUpdateTracklist(request) {
	var song;
	var php = new PHP_Serializer(true);
	var urlquery = location.href.split("?")
	if(!request || request.responseText != '-1') {
		if(request.responseText && urlquery.length > 1) {
			var urlparams = urlquery[1].split("=");
			song = php.unserialize(request.responseText);
			if((song['id'] == urlparams[1]) && ($('ipAlert-' + song['track'])))
				$('ipAlert-' + song['track']).className = 'addTrack';
		}
		new ajax ('/playlist/instant/getsongs.php', {
			postBody: '', 
			update: '', 
			onComplete: updateTracklist
		});
	} else {
		//Send them to the login page
		document.location = '/login.php';
	}
	
	return;
}



function updateTracklist(request) {
	var alltracks = new Array();
	var i; 
	var php = new PHP_Serializer(true);
	
	if(request.responseText)
		alltracks = php.unserialize(request.responseText);
	else
		alltracks[0] = false;
		
	countTrax = 0;	
	$('newPlaylistBox').innerHTML = '';
	if(alltracks[0]) {
		for(i in alltracks) {
			if(parseInt(i) < 50) {
				countTrax++;
				$('newPlaylistBox').innerHTML += "<div class='liveTrack' onMouseOver='this.className=\"liveTrackHover\"' onMouseOut='this.className=\"liveTrack\"'><nobr><a href='javascript:void(0)' onClick='remIPSong(\"" + i + "\")'><img src='/images/livePlaylistDelete.gif' width='11' height='10' border='0' alt=''></a>&nbsp;<a href='/playlists/" + alltracks[i]['id'] + "'>" + alltracks[i]['song'] + ' - ' + alltracks[i]['artist'] + "</a></nobr></div>";
			}
		}
		$('ipNumTracks').innerHTML = countTrax;
		$('ipTracks').innerHTML = (countTrax == 1) ? 'track' : 'tracks';
		$('ipClear').innerHTML = '<a href="/playlist/add.php?instant=1">Save </a> &nbsp;|&nbsp; <a href="/playlist/instant/clean.php">Clear</a>';
		$('newPlaylistBox').innerHTML += '<br />';
		if(openTrack) {
			$('addStatus'+openTrack).className = 'addStatus2';
			$('addStatus'+openTrack).innerHTML = '<img src="/images/addingSuccessful.gif" width="19" height="18" align="absmiddle">Finished';
			$('ipAlert-'+openTrack).className = 'addTrackAdded';
			closeMe = setTimeout("fadeAdd()", 600);
			
		}
	} else {
		$('ipTracks').innerHTML = 'tracks';
		$('ipClear').innerHTML = '';
		$('ipNumTracks').innerHTML = '0';
		$('newPlaylistBox').innerHTML = '<div style="text-align:center; color:#CC0000;">All Tracks Removed</div><br />';
	}
	return;
}


function fadeAdd()
{
	alph = alph - 20;
	if(alph > 25) doFade = setTimeout("fadeAdd()", 30);
	else
	{
		$('addStatus'+openTrack).style.display = 'none';
		openTrack = 0;
		alph = 100;
		return
	}
	if(document.all) $('addStatus'+openTrack).style.filter = 'alpha(opacity=' + alph + ')';
	else
	{
		$('addStatus'+openTrack).style.opacity = (alph / 100);
		$('addStatus'+openTrack).opacity = (alph / 100); 
		$('addStatus'+openTrack).MozOpacity = (alph / 100); 
	}
}