gaterugstap4 = false;

function submitenter(e) {
	var keycode;
	if (window.event) keycode = window.event.keyCode;
	else if (e) keycode = e.which;
	
	if (keycode == 13) {
		zoeken_lijst();
		
		return false;
	}
}


sorterenop = "artist";
laatste_letter = "a";
function show_lijst(letter) {
	laatste_letter = letter;
	
	letter_activate(letter);
	
	pagename = "/page/ajax_lijst/" + letter + "/" + sorterenop + "/" + sorterenop;
	divid = "stemlijst_kiezen";
	
	ajax_after_function(pagename, divid, false, "loading_screen2", false);
}

function zoeken_lijst() {
	zoekterm = document.getElementById("zoekterm").value;
	pagename = "/page/ajax_lijst/" + zoekterm + "/zoeken/" + sorterenop;
	divid = "stemlijst_kiezen";

	ajax_after_function(pagename, divid, false, "loading_screen2", false);
}

stem_stap = 1;
aantal_stemmen = 0;
function stem_volgende() {
	if(stem_stap == 1) {
		stem_stap ++;
	}
	
	pagename = "/page/ajax_lijst_stap" + stem_stap;
	divid = "dehelestemlijst";
	
	if(stem_stap == 2) {
		
		if(aantal_stemmen >= min_keuzes) {
			ajax_after_function(pagename, divid, divid, "loading_screen1", vul_vrijekeuzes);
			stem_stap ++;
			write_stap();
			
			oldInput = document.getElementById("gaterugbutton");
		
			var newInput = document.createElement('input');
			newInput.type = "button";
			newInput.name = "terug";
			newInput.id = "gaterugbutton";
			newInput.className = "stem_button";
			newInput.value = newInput.defaultValue = "Ga terug";
			
			newInput.setAttribute("onClick", "stem_vorige();"); 
			newInput.setAttribute("style", "float: left; margin-left: 5px;");
			oldInput.parentNode.replaceChild(newInput, oldInput);
		} else {
			alert("Je moet minimaal " + min_keuzes + " keuzes opgeven!");
		}
	} else if(stem_stap == 3) {
		save_vrijekeuzes();
		
		ajax_after_function(pagename, divid, divid, "loading_screen1", goforoptions);
		stem_stap ++;
		write_stap();
	} else if(stem_stap == 4) {
		save_motivatie();
		
		document.getElementById("stemform").onsubmit = "";
		
		oldInput = document.getElementById("gaverderbutton");

		var newInput = document.createElement('input');
		newInput.type = "submit";
		newInput.name = "submit";
		newInput.id = oldInput.id;
		newInput.className = oldInput.className;
		newInput.value = newInput.defaultValue = "Versturen!";
		oldInput.parentNode.replaceChild(newInput, oldInput);
		
		ajax_after_function(pagename, divid, divid, "loading_screen1", false);
		stem_stap ++;
		write_stap();
	}
}

function write_stap() {
	document.getElementById("stappenplan").innerHTML = "Stap " + (stem_stap - 1) + " van 4";
}

function letter_activate(deletter) {
	lettergeactiveerd = lettergeactiveerd.toUpperCase();
	document.getElementById("letter_" + lettergeactiveerd).style.color = "";
	document.getElementById("letter_" + deletter).style.color = "black";
	
	lettergeactiveerd = deletter;
}


function stem_vorige() {
	if(stem_stap != 1) {
		stem_stap --;
		get_no = stem_stap - 1;
		gaterugstap4 = false;
		
		pagename = "/page/ajax_lijst_stap" + get_no;
		divid = "dehelestemlijst";
	}

	if(stem_stap == 2) {
		save_vrijekeuzes();
		
		ajax_after_function(pagename, divid, divid, "loading_screen1", false);
		write_stap();
		
		oldInput = document.getElementById("gaterugbutton");
	
		var newInput = document.createElement('div');
		newInput.name = "terug";
		newInput.id = "gaterugbutton";
		newInput.innerHTML = "&nbsp;";
		
		newInput.setAttribute("style", "float: left; width: 125px;");
		oldInput.parentNode.replaceChild(newInput, oldInput);
	}

	if(stem_stap == 3) {
		save_motivatie();
		
		ajax_after_function(pagename, divid, divid, "loading_screen1", vul_vrijekeuzes);
		write_stap();
	}


	if(stem_stap == 4) {
		
		
		gaterugstap4 = true;

		ajax_after_function(pagename, divid, divid, "loading_screen1", goforoptions);
		write_stap();
	}
}

function goforoptions() {
	hetmotivatie_id = document.getElementById("motivatie_id").value;
	
	for(i = 0; i < stem_liedjes.length; i++) {
		if(typeof(stem_liedjes[i]) == 'object') {
			songid = stem_liedjes[i]["songid"];
			artist = stem_liedjes[i]["artist"];
			title = stem_liedjes[i]["title"];
			
			// checken of der al een liedje gekozen is...
			if(hetmotivatie_id == songid) {
				selectdeze = true;
			} else {
				selectdeze = false;
			}
			
			// de opties toevoegen aan de dropdown list.
			insert_options(artist + " - " + title, songid, selectdeze);
		}
	}
	
	vul_motivatie();
	
	if(gaterugstap4 == true) {
		vul_stap4();
	}
}

function vul_stap4() {
	document.getElementById("stemform").onsubmit = "return false;";
	
	oldInput = document.getElementById("gaverderbutton");

	var newInput = document.createElement('input');
	newInput.type = "button";
	newInput.name = "submit";
	newInput.id = oldInput.id;
	newInput.className = oldInput.className;
	newInput.value = newInput.defaultValue = "Ga verder";
	
	newInput.setAttribute("onClick", "stem_volgende();"); 
	oldInput.parentNode.replaceChild(newInput, oldInput);
	
	vul_motivatie();
}

function save_vrijekeuzes() {
	for(t = 1; t < (max_vrijekeuzes + 1); t++) {
		artistid = "artist_" + t;
		titleid = "title_" + t;
		
		artist = document.getElementById(artistid).value;
		title = document.getElementById(titleid).value;
		
		// we moeten eerst al onze vrije keuzes deleten...
		for(j = 0; j < stem_liedjes.length; j++) {
			if(typeof(stem_liedjes[j]) == 'object') {
				if(stem_liedjes[j]["songid"] == "mot_freechoice_" + t) {
					stem_liedjes.splice(j, 1, "");
				}
			}
		}
		
		// hidden velden opvullen
		artiest_input = document.getElementById("vrijekeuze_artist_" + t);
		title_input = document.getElementById("vrijekeuze_title_" + t);
		artiest_input.value = artist.toUpperCase();
		title_input.value = title.toUpperCase();
		
		if((artist != "") && (title != "")) {
			add_song("mot_freechoice_" + t, artist.toUpperCase(), title.toUpperCase(), true);
		}
	}
}

function vul_vrijekeuzes() {
	for(t = 1; t < (max_vrijekeuzes + 1); t++) {
		artiest_input = document.getElementById("vrijekeuze_artist_" + t).value;
		title_input = document.getElementById("vrijekeuze_title_" + t).value;

		if(artiest_input != "") {
			artistid = "artist_" + t;
			titleid = "title_" + t;
			
			document.getElementById(artistid).value = artiest_input;
			document.getElementById(titleid).value = title_input;
		}
	}
}

function vul_motivatie() {
	motivatie_beschrijving = document.getElementById("motivatie_beschrijving").value;

	if(motivatie_beschrijving != "") {
		document.getElementById("motivation").value = motivatie_beschrijving;
	}
}

function save_motivatie() {
	motivatie_item = document.getElementById("motiveerlijst").value;
	motivatie_beschrijving = document.getElementById("motivation").value;
	
	document.getElementById("motivatie_id").value = motivatie_item;
	document.getElementById("motivatie_beschrijving").value = motivatie_beschrijving;
}

function insert_options(liedje, songid, selectdeze) {
    var elSel = document.getElementById('motiveerlijst');
    var elOptNew = document.createElement('option');
    elOptNew.text = liedje;
    elOptNew.value = songid;
	
	if(selectdeze == true) {
		elOptNew.selected = true;
	}
	
    var elOptOld = elSel.options[0];  
    try {
      elSel.add(elOptNew, elOptOld); // standards compliant; doesn't work in IE
    }
    catch(ex) {
      elSel.add(elOptNew, elSel.selectedIndex); // IE only
    }
}


function play_youtube(url) {
	MM_findObj("keuzelijst_youtube").loadVideoByUrl(url);
}

stem_counter = 0;
var stem_liedjes=new Array();
function add_song(songid, artist, title, vrijekeuze) {
	inlijst = false;
	telmax = 0;
	for(i=0; i < stem_liedjes.length; i++) {
		if(typeof(stem_liedjes[i]) == 'object') {
			lijstartist = stem_liedjes[i]["artist"];
			
			telmax ++;
			
			if(lijstartist == artist) {
				inlijst = true;
			}
		}
	}
	
	if((telmax < max_keuzes) || (vrijekeuze == true)) {
		if(inlijst == false) {
			stem_liedjes[stem_counter] = new Array();
			stem_liedjes[stem_counter]["songid"] = songid;
			stem_liedjes[stem_counter]["artist"] = artist;
			stem_liedjes[stem_counter]["title"] = title;
			
			stem_counter ++;
			
			maak_keuzelijst();
		} else {
			alert("Je mag maar 1x dezelfde artiest kiezen");
		}
	} else {
		alert("Je mag maximaal " + max_keuzes + " keuzes opgeven!");
	}
}

function stem_find() {
	for(i=0; i < stem_liedjes.length; i++) {
		lijstje_html = lijstje_html + artist + " - " + title + "<br />";
		kortlijstje.innerHTML = lijstje_html;
	}
}

function maak_keuzelijst() {
	aantal_stemmen = 0;
	
	delijstjava = document.getElementById("keuzelijst");
	dehiddenlist = document.getElementById("destemmen");
	
	hidden_lijst = "";
	lijstje_html = "";
	
	for(i=0; i < stem_liedjes.length; i++) {
		if(typeof(stem_liedjes[i]) == 'object') {
		
			voorzetsel = "<a href='javascript://' onclick='remove_keuze(" + i + ");'>";
			plaatje = "<img src='/static/images/min_button.jpg' style='margin-bottom: -2px;' />&nbsp; ";
			
			songid = stem_liedjes[i]["songid"];
			artist = stem_liedjes[i]["artist"];
			title = stem_liedjes[i]["title"];
			
			lijstje_html = lijstje_html + voorzetsel + plaatje + artist + " - " + title + "</a><br />";
			hidden_lijst = hidden_lijst + songid + "|";
			
			aantal_stemmen ++;
		}
	}
	
	dehiddenlist.value = hidden_lijst;
	delijstjava.innerHTML = lijstje_html;
}


function remove_keuze(nummer) {
	stem_liedjes.splice(nummer, 1, "");
	maak_keuzelijst();
}

function ajax_after_function(pagename, usediv, wafrdiv, loadingscreen, usefunction) {
	if(loadingscreen != false) {
	    document.getElementById(loadingscreen).style.visibility = "visible";
	}
	
    var x = (window.ActiveXObject) ? new ActiveXObject("Microsoft.XMLHTTP"): new XMLHttpRequest();
		if (x)
		{
			x.onreadystatechange = function()
			{
			if (x.readyState == 4 && ((x.status == 200) || (x.status === 0)))
				{
					el = document.getElementById(usediv);
					el.innerHTML = x.responseText;

					if(wafrdiv != false) {
						ajax_wafr(wafrdiv);
					}
					
					if(usefunction != false) {
//						alert(typeof(usefunction));
						usefunction();
					}
					
					if(loadingscreen != false) {
						document.getElementById(loadingscreen).style.visibility = "hidden";
					}
			  }
			};

			x.open("GET", pagename, true);
			x.send(null);
		}
}