function changelevel1(id, format) {
	document.getElementById("filter").value = "aktuell_2";
	document.getElementById("level1act").value = id;
	document.getElementById("format").value = format;
	document.getElementById("liststart").value = 0;
	document.getElementById("moviestart").value = 0;
	document.getElementById("movieid").value = 0;
	document.getElementById("action").value = "changeformat";
	changelevel2('aktuell_2');
	document.Form1.submit();
}

function changelevel2(filter) {
	var old_filter = document.getElementById("filter").value;
	if (document.getElementById("filter").value != "") 
		if (document.getElementById(document.getElementById("filter").value) != null) document.getElementById(document.getElementById("filter").value).className = "box";
	document.getElementById("filter").value = filter;
	document.getElementById("liststart").value = 0;
	document.getElementById("moviestart").value = 0;
	document.getElementById("movieid").value = 0;
	if (old_filter.indexOf("reserv") != -1 || old_filter.indexOf("card") != -1) document.Form1.submit();
	else loadmoviesfromdb();
}

function loadmovies(pointer){
	if (mlength == 0){
		document.getElementById("moviemain").style.display = "none";
		document.getElementById("emptymain").style.display = "";
	}
	else {
		var load, step;
		load = 1;
		step = 15;
		if (Number(document.getElementById("liststart").value) + pointer < 0){
			if (Number(document.getElementById("moviestart").value) > 0) {
				if (Number(document.getElementById("moviestart").value) < 15) step = Number(document.getElementById("moviestart").value);
				document.getElementById("moviestart").value = Number(document.getElementById("moviestart").value) - step;
				document.getElementById("liststart").value = step+pointer;
				document.getElementById("movieid").value = step+pointer;
				loadmoviesfromdb();
			}
			load = 0;
		}
		var listend;
		listend = Number(document.getElementById("liststart").value) + 8 + Number(pointer)
		if (listend > mlength-1 && mlength > 8){
			if (Number(document.getElementById("moviestart").value) + mlength < Number(document.getElementById("moviecount").value)) {
				document.getElementById("moviestart").value = Number(document.getElementById("moviestart").value) + 15;
				document.getElementById("liststart").value = Number(document.getElementById("liststart").value) - 15 + Number(pointer);
				if (document.getElementById("movieid").value - 15 < document.getElementById("liststart").value) document.getElementById("movieid").value = document.getElementById("liststart").value;
				else document.getElementById("movieid").value = Number(document.getElementById("movieid").value) - 15; 
				//	document.Form1.submit();
				loadmoviesfromdb();
			}
			load = 0;
		}	
		if (load == 1){
			var startid, endid, status, list; 
			document.getElementById("liststart").value = Number(document.getElementById("liststart").value) + pointer;
			startid = Number(document.getElementById("liststart").value);
			list = document.getElementById("movielist");
			list.innerHTML = "";
			endid = startid + 8;
			if (endid > mlength-1) endid = mlength-1;
			for(var i=startid; i<=endid; i++) {
				status = "green";
				if (document.getElementById("a_" + i).innerHTML != 'true') status = "red";
				if (i==endid && endid == startid + 8) list.innerHTML = list.innerHTML + "<div class='topborder'><div class='box' id='list" + i + "' OnClick='javascript:showmovie(" + i + ");' OnMouseOver='menuover(\"list" + i + "\");' OnMouseOut='menuout(\"list" + i + "\");'><div class='status'><div class='" + status + "'></div></div><div class='item'>" + document.getElementById("t_" + i).innerHTML + "</div></div></div>";
				else list.innerHTML = list.innerHTML + "<div class='border'><div class='box' id='list" + i + "' OnClick='javascript:showmovie(" + i + ");' OnMouseOver='menuover(\"list" + i + "\");' OnMouseOut='menuout(\"list" + i + "\");'><div class='status'><div class='" + status + "'></div></div><div class='item'>" + document.getElementById("t_" + i).innerHTML + "</div></div></div>";			
			}
			if (document.getElementById("movieid").value == "") document.getElementById("movieid").value = 0;
			var movieid 
			movieid = document.getElementById("movieid").value;
			if (movieid >= startid && movieid <=startid+8) 
				showmovie(movieid);
			else 
				if (pointer > 0) showmovie(startid);
				else showmovie(startid+8);
		}	
	}
}

function showmovie(mid){	
	var temp, oldmid;
	temp = document.getElementById("movieid");		
	oldmid = temp.value;
	temp.value = mid;
	
	if (document.getElementById("list" + oldmid) != null) document.getElementById("list" + oldmid).className='box';;
	temp = document.getElementById('list' + mid);
	temp.className = "boxaktiv";
	temp = document.getElementById("movietitle");
	temp.innerHTML = "<h2>" + document.getElementById("t_" + mid).innerHTML + "</h2>";
	temp = document.getElementById("movieimg");
	temp.src = document.getElementById("i_" + mid).innerHTML + ".jpg";
	temp = document.getElementById("moviedata");
	temp.innerHTML = document.getElementById("d_" + mid).innerHTML;
	temp = document.getElementById("moviedesc");
	temp.innerHTML = document.getElementById("c_" + mid).innerHTML;
	if (document.getElementById("reserv") != null){
		if (document.getElementById("a_" + mid).innerHTML == 'true') {
			document.getElementById("reserv").style.display = "";
			document.getElementById("noreserv").style.display = "none";
		} else {
			document.getElementById("reserv").style.display = "none";
			document.getElementById("noreserv").style.display = "";
		}	
	}
	if (Number(document.getElementById("movieid").value) == 0 && Number(document.getElementById("liststart").value) == 0 && Number(document.getElementById("moviestart").value) == 0) {
		document.getElementById("scrollup").style.display = "none";
		document.getElementById("scrolltop").style.display = "";
		document.getElementById("scrollstart").style.display = "none";
		document.getElementById("scrolltoptop").style.display = "";
	} else {
		document.getElementById("scrollup").style.display = "";
		document.getElementById("scrolltop").style.display = "none";
		document.getElementById("scrollstart").style.display = "";
		document.getElementById("scrolltoptop").style.display = "none";
	}		
	if (Number(document.getElementById("moviestart").value) + 1 + Number(document.getElementById("movieid").value) == Number(document.getElementById("moviecount").value)) {
		document.getElementById("scrolldown").style.display = "none";
		document.getElementById("scrollbot").style.display = "";
		document.getElementById("scrollend").style.display = "none";
		document.getElementById("scrollbotbot").style.display = "";
	} else {
		document.getElementById("scrolldown").style.display = "";
		document.getElementById("scrollbot").style.display = "none";
		document.getElementById("scrollend").style.display = "";
		document.getElementById("scrollbotbot").style.display = "none";
	}
}

function showmoviedetail(mid){	
	var temp;
	temp = document.getElementById("movietitle");
	temp.innerHTML = "<h4>" + document.getElementById("t_" + mid).innerHTML + "</h4>";
	temp = document.getElementById("movieimg");
	temp.src = document.getElementById("i_" + mid).innerHTML + ".jpg";
}

function scrollMovie(pointer){	

	if ((Number(document.getElementById("moviestart").value) + mlength + pointer < Number(document.getElementById("moviecount").value)) || (Number(document.getElementById("moviestart").value) + Number(document.getElementById("movieid").value) + pointer < Number(document.getElementById("moviecount").value))){
		var temp, liststart;
		temp = Number(document.getElementById("movieid").value) + pointer;
		liststart = Number(document.getElementById("liststart").value); 
		if (temp < liststart || temp > liststart + 8) {
			document.getElementById("movieid").value = temp;
			loadmovies(pointer);
		} else
			showmovie(temp);
	}
}

function scrolltostart(){
	document.getElementById("movieid").value = 0;
	if (document.getElementById("moviestart").value == 0){
		loadmovies(-Number(document.getElementById("liststart").value));
	} else {
		document.getElementById("moviestart").value = 0;
		document.getElementById("liststart").value = 0;
		loadmoviesfromdb();
	}
}

function scrolltoend(){
	if (Number(document.getElementById("moviestart").value) + mlength == Number(document.getElementById("moviecount").value)){
		if (mlength > 8) {
			document.getElementById("movieid").value = mlength - 1;
			loadmovies(mlength - 1 - 8 - Number(document.getElementById("liststart").value));
		} else
			showmovie(mlength - 1);
	} else {
		document.getElementById("moviestart").value = Number(document.getElementById("moviecount").value) - 30;
		document.getElementById("liststart").value = 30 - 1 - 8;
		document.getElementById("movieid").value = 30 - 1;
		loadmoviesfromdb();
	}		
}

function gotopos(pos){
	var x;
	x = 0;
	for(var i=0; i<mlength && pos > document.getElementById("t_" + document.getElementById("movieid").value).innerHTML.substr(0,1); i++) x = i + 1; 
	if (x > 0 && x < mlength){
		if (mlength <= 9){
			showmovie(x);				
		} else
			if (x + 8 <= mlength){
				document.getElementById("movieid").value = x;
				document.getElementById("liststart").value = x;
				loadmovies(0);				
			} else
				if (Number(document.getElementById("moviestart").value) + mlength < Number(document.getElementById("moviecount").value)){
					document.getElementById("moviestart").value = Number(document.getElementById("moviestart").value) + 15;
					document.getElementById("liststart").value = x - 15;
					document.getElementById("movieid").value = x - 15; 
					document.Form1.submit();
				} else {
					document.getElementById("movieid").value = x;
					document.getElementById("liststart").value = mlength - 1 - 8;
					loadmovies(0);				
				}					
	}
	else {
		if (x == 0 || Number(document.getElementById("moviestart").value) + mlength < Number(document.getElementById("moviecount").value)){
			document.getElementById("action").value = "goto_" + pos;
			loadmoviesfromdb();
		} else
			scrolltoend();
	}
}

function initControls(){
	document.getElementById("level1lbl").innerHTML = document.getElementById(document.getElementById("level1act").value).innerHTML;
	document.getElementById(document.getElementById("level1act").value).className = "aktiv";
	if (document.getElementById("filter").value.indexOf("aktuell") != -1 || document.getElementById("filter").value.indexOf("genre") != -1) {
		if (document.all) document.getElementById("level2lbl").innerHTML = document.getElementById(document.getElementById("filter").value).childNodes[0].innerHTML.toUpperCase();
		else document.getElementById("level2lbl").innerHTML = document.getElementById(document.getElementById("filter").value).childNodes[1].innerHTML.toUpperCase();
		document.getElementById(document.getElementById("filter").value).className = "boxaktiv";
	}
	else {
		var s;
		s = document.getElementById("filter").value.split("|");
		document.getElementById("level2lbl").innerHTML = s[2].toUpperCase() + s[1].replace("_", " ").replace("^", "'").toUpperCase();
	}
	if (document.all) document.getElementById("maincontent").childNodes[0].childNodes[0].innerHTML = document.getElementById("level2lbl").innerHTML;
	else document.getElementById("maincontent").childNodes[1].childNodes[1].innerHTML = document.getElementById("level2lbl").innerHTML;	
	document.getElementById("searchStr").focus();
	var filter = document.getElementById("filter").value;
	if (filter.indexOf("aktuell") >= 0)
		if (filter.substr(8,1) != "3" && filter.substr(8,1) != "6") {
			document.getElementById("nonabc").style.display = "";
			document.getElementById("abc").style.display = "none";
		} else {
			document.getElementById("nonabc").style.display = "none";
			document.getElementById("abc").style.display = "";
		}
		
}

function reservMovie(header){
	document.getElementById("filter").value = "reserv_" + document.getElementById("id_" + document.getElementById("movieid").value).innerHTML + "||" + header;
	document.getElementById("contentjs_temp").value = escape(document.getElementById("contentjs").innerHTML);
	document.Form1.submit();				
}

function approveReserv(){
	document.getElementById("wait").style.display = "";
	document.getElementById("filter").value = "approve" + document.getElementById("filter").value;
	document.Form1.submit();				
}

function showCard(header){
	document.getElementById("filter").value = "card||" + header;
	document.Form1.submit();				
}

function menuover(menuID) {
       document.getElementById(menuID).className='boxaktiv';
}
function menuout(menuID) {
	if (menuID != document.getElementById("filter").value && menuID != 'list' + document.getElementById("movieid").value) {
		document.getElementById(menuID).className='box';
	}
}

function nav(kcode){
	if(kcode==38)
	{
		loadmovies(-1);
	}
	if(kcode==40)
	{
		loadmovies(1);
	}
}

var aR;

function loadmoviesfromdb(){
		if (window.XMLHttpRequest) { 
            aR = new XMLHttpRequest();
            if (aR.overrideMimeType) {
                aR.overrideMimeType('text/xml');
            }
        } else if (window.ActiveXObject) {
            try {
                aR = new ActiveXObject("Msxml2.XMLHTTP");
            } catch (e) {
                try {
                    http_request = new ActiveXObject("Microsoft.XMLHTTP");
                } catch (e) {}
            }
        }

        if (!aR) {
            alert('Giving up :( Cannot create an XMLHTTP instance');
            return false;
        }

	aR.onreadystatechange = initResult;
	//document.getElementById("searchStr").value = "movies.aspx?a=" + document.getElementById("action").value + "&r=" + document.getElementById("role").value + "&fo=" + document.getElementById("format").value + "&fi=" + escape(document.getElementById("filter").value) + "&c=" + document.getElementById("helper").value + "&ms=" + document.getElementById("moviestart").value + "&m=" + document.getElementById("movieid").value;
	aR.open("GET", "movies.aspx?a=" + document.getElementById("action").value + "&r=" + document.getElementById("role").value + "&fo=" + document.getElementById("format").value + "&fi=" + document.getElementById("filter").value + "&c=" + document.getElementById("helper").value + "&ms=" + document.getElementById("moviestart").value + "&m=" + document.getElementById("movieid").value);
	aR.send(null);
}

function initResult() {
//alert("initREsult");
	if (aR.readyState == 4 && aR.status == 200){
		var nodes;
		if (document.all){
			nodes = aR.responseXML.documentElement.childNodes;
			document.getElementById("action").value = nodes.item(0).text;
			document.getElementById("format").value = nodes.item(1).text;
			document.getElementById("filter").value = nodes.item(2).text;
			document.getElementById("moviecount").value = nodes.item(5).text;
			document.getElementById("moviestart").value = nodes.item(6).text;
			if (nodes.item(3).text != "") document.getElementById("level1act").value = nodes.item(3).text;
			if (nodes.item(7).text != "") document.getElementById("movieid").value = nodes.item(7).text;
			if (nodes.item(8).text != "") document.getElementById("liststart").value = nodes.item(8).text;
			document.getElementById("mcontent").innerHTML = nodes.item(9).text;
			mlength = document.getElementById("mcontent").childNodes.length;
		} else {
			nodes = aR.responseXML.documentElement;
			if (nodes.childNodes[0].firstChild) document.getElementById("action").value = nodes.childNodes[0].firstChild.data;
			else document.getElementById("action").value = "";
			if (nodes.childNodes[1].firstChild) document.getElementById("format").value = nodes.childNodes[1].firstChild.data;
			else document.getElementById("format").value = "";
			if (nodes.childNodes[2].firstChild) document.getElementById("filter").value = nodes.childNodes[2].firstChild.data;
			else document.getElementById("filter").value = "";
			if (nodes.childNodes[5].firstChild) document.getElementById("moviecount").value = nodes.childNodes[5].firstChild.data;
			else document.getElementById("moviecount").value = "";
			if (nodes.childNodes[6].firstChild) document.getElementById("moviestart").value = nodes.childNodes[6].firstChild.data;
			if (nodes.childNodes[3].firstChild) document.getElementById("level1act").value = nodes.childNodes[3].firstChild.data;
			if (nodes.childNodes[7].firstChild) document.getElementById("movieid").value = nodes.childNodes[7].firstChild.data;
			if (nodes.childNodes[8].firstChild) document.getElementById("liststart").value = nodes.childNodes[8].firstChild.data;
			if (nodes.childNodes[9].firstChild) document.getElementById("mcontent").innerHTML = nodes.childNodes[9].firstChild.data;
			mlength = document.getElementById("mcontent").childNodes.length/2;
		}
		
		
		if (mlength == 0){
			document.getElementById("emptymain").style.display = "";
			document.getElementById("moviemain").style.display = "none";
		} else {
			document.getElementById("emptymain").style.display = "none";
			document.getElementById("moviemain").style.display = "";
			var pointer = 0;
			var startid, endid, status, list; 
			document.getElementById("liststart").value = Number(document.getElementById("liststart").value) + pointer;
			startid = Number(document.getElementById("liststart").value);
			list = document.getElementById("movielist");
			list.innerHTML = "";
			endid = startid + 8;
			if (endid > mlength-1) endid = mlength-1;
			for(var i=startid; i<=endid; i++) {
				status = "green";
				if (document.getElementById("a_" + i).innerHTML != 'true') status = "red";
				if (i==endid && endid == startid + 8) list.innerHTML = list.innerHTML + "<div class='topborder'><div class='box' id='list" + i + "' OnClick='javascript:showmovie(" + i + ");' OnMouseOver='menuover(\"list" + i + "\");' OnMouseOut='menuout(\"list" + i + "\");'><div class='status'><div class='" + status + "'></div></div><div class='item'>" + document.getElementById("t_" + i).innerHTML + "</div></div></div>";
				else list.innerHTML = list.innerHTML + "<div class='border'><div class='box' id='list" + i + "' OnClick='javascript:showmovie(" + i + ");' OnMouseOver='menuover(\"list" + i + "\");' OnMouseOut='menuout(\"list" + i + "\");'><div class='status'><div class='" + status + "'></div></div><div class='item'>" + document.getElementById("t_" + i).innerHTML + "</div></div></div>";			
			}
			if (document.getElementById("movieid").value == "") document.getElementById("movieid").value = 0;
			var movieid 
			movieid = document.getElementById("movieid").value;
			if (movieid >= startid && movieid <=startid+8) 
				showmovie(movieid);
			else 
				if (pointer > 0) showmovie(startid);
				else showmovie(startid+8);
		}
		document.getElementById("loading").style.display = "none";
		initControls();
	}
}

