var songs = new Array();
songs[0] = "http://gauntlet.olremix.org/Gauntlet - 1 - dasaten - Welcome to the Gauntlet.mp3";
songs[1] = "http://gauntlet.olremix.org/Gauntlet - 2 - Brunzolaitis feat. Xenon Odyssey - Brunzos Jazz Trip.mp3";
songs[2] = "http://gauntlet.olremix.org/Gauntlet - 3 - Xenon Odyssey - Such Bravery.mp3";
songs[3] = "http://gauntlet.olremix.org/Gauntlet - 4 - nesper - Eds Logg.mp3";
songs[4] = "http://gauntlet.olremix.org/Gauntlet - 5 - Brunzolaitis - Song A(ustria).mp3";
songs[5] = "http://gauntlet.olremix.org/Gauntlet - 6 - Andy Lyons - Level D Potions, Keys, and phat beats.mp3";
songs[6] = "http://gauntlet.olremix.org/Gauntlet - 7 - vindkast - Pleasure Room.mp3";
songs[7] = "http://gauntlet.olremix.org/Gauntlet - 8 - V_Gasm feat. Zimish One - Wizards n tha Wickid Beats.mp3";
songs[8] = "http://gauntlet.olremix.org/Gauntlet - 9 - Zimish One - Call to Arms.mp3";

var names = new Array();
names[0] = "dasaten - Welcome to the Gauntlet";
names[1] = "Brunzolaitis feat. Xenon Odyssey - Brunzo's Jazz Trip";
names[2] = "Xenon Odyssey - Such Bravery";
names[3] = "nesper - Ed's Logg";
names[4] = "Brunzolaitis - Song A(ustria)";
names[5] = "Andy Lyons - Level D: Potions, Keys, and phat beats";
names[6] = "vindkast - Pleasure Room";
names[7] = "V_Gasm feat. Zimish One - Wizards 'n tha Wickid Beats";
names[8] = "Zimish One - Call to Arms";

var remixers = new Array();
remixers[0] = "Andy Lyons";
remixers[1] = "Brunzolaitis";
remixers[2] = "dasaten";
remixers[3] = "nesper";
remixers[4] = "V_Gasm";
remixers[5] = "vindkast";
remixers[6] = "Xenon Odyssey";
remixers[7] = "Zimish One";

var remixerpages = new Array();
remixerpages[0] = "http://www.omahm.net/";
remixerpages[1] = "http://olremix.org/remixers/Brunzolaitis";
remixerpages[2] = "http://olremix.org/remixers/dasaten";
remixerpages[3] = "http://olremix.org/remixers/nesper";
remixerpages[4] = "http://olremix.org/remixers/V_Gasm";
remixerpages[5] = "http://olremix.org/remixers/vindkast";
remixerpages[6] = "http://www.myspace.com/xenonodyssey";
remixerpages[7] = "http://olremix.org/remixers/Zimish_One";

var pages = new Array();
pages[0] = "Songs";
pages[1] = "Characters";
pages[2] = "Credits";

var draw_count = 0;
var draw_max = 5;

function init() {
	build_main_table();
	build_nav_table();
	build_song_table();
	build_remixer_table();
	set_picture_loc();
	show_page(0);
}
	
function build_main_table() {
	var main_table = 	"<table class='main_table'>" + 
							"<tr>" + 
					 			"<td class='o1'></td>" + 
								"<td class='o2'></td>" + 
					 			"<td class='o3'></td>" + 
					 		"</tr>" + 
					 		"<tr>" + 
					 			"<td class='o4'></td>" + 
					 			"<td class='o5' valign='top'>" + 
					 				document.getElementById("main_table").innerHTML + 
					 			"</td>" + 
					 			"<td class='o6'></td>" + 
					 		"</tr>" + 
					 		"<tr>" + 
					 			"<td class='o7'></td>" + 
					 			"<td class='o8'></td>" + 
					 			"<td class='o9'></td>" + 
					 		"</tr>" + 
					 	"</table>";
	document.getElementById("main_table").innerHTML = main_table;
}

function build_nav_table() {
	var nav_table = 	"<table class='nav_table'>" + 
							"<tr>" + 
								"<td class='empty'></td>" + 
								"<td class='g1'></td>" + 
								"<td class='g2' colspan='" + pages.length + "'></td>" + 
								"<td class='g3'></td>" + 
								"<td class='empty'></td>" + 
							"</tr>" + 
							"<tr>" + 
								"<td class='g2'></td>" + 
								"<td class='gl'></td>";

	for( var i=0; i<pages.length; i++ ) {
		nav_table += 			"<td class='nav_td'>" +
									"<a class='nav_a' href='javascript:show_page(" + i + ")'>" +
										pages[i] +
									"</a>" +
								"</td>";
	}
	nav_table += 				"<td class='gr'></td>" +
								"<td class='g2'></td>" +
							"</tr>" +
							"<tr>" +
								"<td class='empty'></td>" +
								"<td class='gr'></td>" +
								"<td class='g8' colspan='" + pages.length + "'></td>" +
								"<td class='gl'></td>" +
								"<td class='empty'></td>" +
							"</tr>" +
							"<tr>" +
								"<td class='empty'></td>" +
								"<td class='g4'></td>" +
								"<td class='g5' colspan='" + i + "'>" +
									"<center>" +
										document.getElementById("nav_table").innerHTML + 
									"</center>" +
								"</td>" +
								"<td class='g6'></td>" +
								"<td class='empty'></td>" +
							"</tr>" +
							"<tr>" +
								"<td class='empty'></td>" +
								"<td class='g7'></td>" +
								"<td class='g8' colspan='" + i + "'></td>" +
								"<td class='g9'></td>" +
								"<td class='empty'></td>" +
							"</tr>" +
						"</table>";
	document.getElementById('nav_table').innerHTML = nav_table;
}

function build_song_table() {
	var song_table = 	"<table class='song_table'>";  
	for( var i=0; i<names.length; i++ ) {
		song_table += 		"<tr>" + 
						 		"<td id='song_" + i + "'>" + 
						 			"<a href='javascript:play_mp3(" + i + ")' id='song_" + i + "' class='song_a'>" + 
						 				names[i] + 
						 			"</a>" + 
						 		"</td>" + 
						 		"<td id='dl_td_" + i + "'>" + 
						 			"<a href='" + songs[i] + "' class='dl_a' id='dl_a_" + i + "'>" + 
										"(dl)" + 
						 			"</a>" + 
						 		"</td>" + 
						 	"</tr>";
	}
	song_table += 			"<tr>" + 
								"<td id='play_all'>" + 
					 				"<a href='javascript:play_all()' id='play_all' class='song_a'>" + 
					 					"Play All!" + 
					 				"</a>" + 
					 			"</td>" + 
							"</tr>" + 
					 "</table>";
	document.getElementById('song_table').innerHTML = song_table;
}

function build_remixer_table() {
	var remixer_table = 	"<table class='remixer_table'>";  
	for( var i=0; i<remixers.length; i++ ) {
		if( i%2 == 0 ) {
			remixer_table += 	(i%2 == 0 ? "<tr>" : "</tr>" );
		}
		remixer_table += 			"<td>" + 
							 			"<a href='" + remixerpages[i] + "' class='char_a' target='_blank'>" + 
								 			"<img src='./img/remixers" + i + ".gif'>" +
							 				remixers[i] + 
							 			"</a>" + 
							 		"</td>";
	}
	remixer_table += 		"</table>";
	document.getElementById('remixer_table').innerHTML = remixer_table;
}

function set_picture_loc() {
	var picture = document.getElementById("picture");
	var picture_placeholder = document.getElementById("picture_placeholder");
	var draw_on = document.getElementById("draw_on");

	picture.style.position = "absolute";
	picture.style.left = findPosX(picture_placeholder) - 100;
	picture.style.top = findPosY(picture_placeholder);
	draw_on.style.position = "absolute";
	draw_on.style.left = picture.style.left;
	draw_on.style.top = picture.style.top;
}

function play_all( ) {
	for( var i=0; i<songs.length; i++ ) {
		set_mp3( i, true );
	}
}

function play_mp3( selected_id ) {
	set_mp3( selected_id, false );
}

function set_mp3( selected_id, force_play ) {
	var name_array;
	var links = document.getElementsByTagName('a');
	for( var i=0; i<links.length; i++ ) {
		name_array = links[i].id.split("_");
		if( name_array[0] == "song" ) {
			links[i].className = ((name_array[1]==selected_id)||(force_play) ? "song_a_selected" : "song_a" );
			links[i].innerHTML = ((name_array[1]==selected_id)||(force_play) ? "<iframe src='" + songs[name_array[1]] + "'>" : names[name_array[1]] );
		}
	}
	
	var picture = document.getElementById("picture");
	var draw_on = document.getElementById("draw_on");
	draw_count = (draw_count + 1) % draw_max;
	draw_on.style.display = "";
	draw_on.style.position = "absolute";
	draw_on.style.left = findPosX(picture);
	draw_on.style.top = findPosY(picture);
	draw_on.src = "./img/draw" + draw_count + ".gif";
}

function show_page(num) {
	for( var i=0; i<pages.length; i++ ) {
		document.getElementById("page_"+i).style.display = (num==i ? "":"none");
	}
	set_picture_loc();
}

function findPosX(obj) {
	var curleft = 0;
	if(obj.offsetParent)
		while(1)  {
			curleft += obj.offsetLeft;
			if(!obj.offsetParent)
				break;
			obj = obj.offsetParent;
		}
	else if(obj.x)
		curleft += obj.x;
	return curleft;
}

function findPosY(obj) {
	var curtop = 0;
	if(obj.offsetParent)
		while(1) {
			curtop += obj.offsetTop;
			if(!obj.offsetParent)
				break;
			obj = obj.offsetParent;
		}
	else if(obj.y)
		curtop += obj.y;
	return curtop;
}


window.onload = init;

