document.onmousemove = drag;
document.onmouseup = dragstop;
var WindCont = new Array();
var dragobjekt = 0;
var dragx = 0;
var dragy = 0;
var posx = 0;
var posy = 0;
var tmpwidth = 0;
var tmpheight = 0;
var numwin = 0;
var minimized = "false";
var launchywin = null;
var preloader = "<img src=\"./img/preload.gif\" />";
var cntI = 0;		//	counter for img

document.onkeydown = set;
document.onkeyup = function(){shift = false;};
var shift = false;

function set(event)
{
	event = event || window.event;
	if(event.keyCode == 16) shift = true;
	if(shift && event.keyCode == 32)
	{
		if(document.getElementById('launchy') == undefined)		//	does not exist yet, so create
			launchy();
		else
		{
			if(launchywin == null)
			{
				var i = 0;
				var tmpnm = '';
				for(i = 1; i <= numwin; i++)
				{
					tmpnm = "win"+i.toString();
					if(document.getElementById(tmpnm+"HEAD").innerHTML.indexOf("Launchy") != -1) break;
				}
				launchywin = tmpnm;
			}
			if(document.getElementById(launchywin).style.visibility == "hidden")
			{
				document.getElementById(launchywin).style.visibility = "visible";
				document.getElementById("launchy").focus();
			}
			else document.getElementById(launchywin).style.visibility = "hidden";
		}
	}
}

function launchy()
{
	create("Launchy","<input id=\"launchy\" type=\"text\" size=\"30\" value=\"Type in something...\"  onFocus=\"oFF('Type in something...',this);\" onBlur=\"oBF('Type in something...',this);\" />","glass","left:900;top:0;");
	document.getElementById("launchy").focus();
}

function createimg(ex)
{
	if(cntI > 1) cntI = 0;
	return "<img src=\"./img/"+next[0][cntI++].toLowerCase()+"."+ex+"\" style=\"height:50px;\" />";
}

function bookmark()
{
	title = "WM 2010 - Yaacoubi.de"; 

	url = "http://www.yaacoubi.de/#|m|g|s||wm|#";

	if (window.sidebar)	window.sidebar.addPanel(title, url,"");
	else if( window.external ) window.external.AddFavorite( url, title);
	else if(window.opera && window.print) return true;
}

function init()
{
	var i = 0;
	var n = 0;
	var tmpnm = '';
	while(true)
	{
		tmpnm = "win"+(++n).toString();
		if(document.getElementById(tmpnm) == null) break;
	}
	numwin = n-1;
	setTitle();
	if(document.cookie.length != 0)
	{
		for(i = 1; i <= numwin; i++)
		{
			tmpnm = "win"+i.toString();
			if((c_start=document.cookie.indexOf(tmpnm+"=")) != -1)
			{
				c_start = c_start + (++(tmpnm.length));
				c_end = document.cookie.indexOf(";",c_start);
				if (c_end == -1) c_end=document.cookie.length;
				var tmpnmarr = unescape(document.cookie.substring(c_start,c_end)).split("/");
			}
			if(tmpnmarr != undefined)
			{
				document.getElementById(tmpnm).style.left = tmpnmarr[0];
				document.getElementById(tmpnm).style.top = tmpnmarr[1];
				if(tmpnmarr[2] == "true" && document.getElementById(tmpnm+"BODY").innerHTML != '') DoubClick(document.getElementById(tmpnm+"BODY"));
				tmpnmarr = undefined;
			}
		}
	}
}

function dragstart(element) 
{
	dragobjekt = element;
	dragx = posx - dragobjekt.offsetLeft;
	dragy = posy - dragobjekt.offsetTop;
	minimized = (!document.getElementById(dragobjekt.id+"BODY").innerHTML) ? "true" : "false";
	setZIndex();
}


function dragstop() 
{
	dragobjekt = 0;
}


function drag(ev)
{
	posx = document.all ? window.event.clientX : ev.pageX;
	posy = document.all ? window.event.clientY : ev.pageY;
	if(dragobjekt != 0)
	{
		dragobjekt.style.left = (posx - dragx) + "px";
		dragobjekt.style.top = (posy - dragy) + "px";
		if(posx - dragx < 20) dragobjekt.style.left = "0px";
		if(posy - dragy < 20) dragobjekt.style.top = "0px";
		document.cookie = dragobjekt.id+'='+dragobjekt.style.left+"/"+dragobjekt.style.top+"/"+minimized;
	}

}

function DoubClick(EL)
{
	if(!EL.innerHTML)
	{
		EL.innerHTML = WindCont[EL.id];
		minimized = "false";
	}
	else
	{
		WindCont[EL.id] = EL.innerHTML;
		EL.innerHTML = '';
		minimized = "true";
	}
	dragobjekt = document.getElementById(EL.id.substring(0,(EL.id).length-4));
	document.cookie = dragobjekt.id+'='+dragobjekt.style.left+"/"+dragobjekt.style.top+"/"+minimized;
	dragobjekt = 0;
}

function setZIndex()
{
	var n = 0;
	var tmpnm = '';
	while(true)
	{
		tmpnm = "win"+(++n).toString();
		if(document.getElementById(tmpnm) != null) document.getElementById(tmpnm).style.zIndex = "1";
		else break;
	}
	dragobjekt.style.zIndex = numwin;
}

function create(title,content,style,pos)
{
	//	Count
	{
		var n = 0;
		var tmpnm = '';
		while(true)
		{
			tmpnm = "win"+(++n).toString();
			if(document.getElementById(tmpnm) == null) break;
		}
	}

	style = (style == "grey") ? style : "glass";
	var newObject = '';
	var win = "win" + n.toString();
	newObject = "<div id=\""+win+"\" style=\""+((pos != null) ? pos :"left:0;top:0;")+"z-index:"+n+";\" class=\""+ style +"\">\n";
	newObject += "<div id=\""+win+"HEAD\" onmousedown=\"dragstart(document.getElementById('"+win+"'))\" ondblclick=\"DoubClick(document.getElementById('"+win+"BODY'))\" >\n";
	newObject += "<div>"+title+((style == "glass")?" <center style=\"text-align:right;\"><span>:::::::</span></center>":"")+"</div>\n";
	newObject += "\n</div>\n";
	newObject += "<div id=\""+win+"BODY\">\n";
	newObject += content;
	newObject += "\n</div>\n</div>\n";
	document.getElementById('content').innerHTML += newObject;
	numwin = n;
	setTitle();
}

function loadFile(file, win)
{
	if (window.XMLHttpRequest) xmlhttp=new XMLHttpRequest();
	else xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
	xmlhttp.onreadystatechange = function()
	{
		if (xmlhttp.readyState==4 && xmlhttp.status==200)
		{
			if(!min(win))	document.getElementById(win+"BODY").innerHTML = xmlhttp.responseText;
			else			WindCont[win+"BODY"] = xmlhttp.responseText;
		}
	}
	xmlhttp.open("GET",file,true);
	xmlhttp.send();
}

function min(win)
{
	if((c_start=document.cookie.indexOf(win+"=")) != -1)
	{
		c_start = c_start + (++(win.length));
		c_end = document.cookie.indexOf(";",c_start);
		if (c_end == -1) c_end=document.cookie.length;
		var arr = unescape(document.cookie.substring(c_start,c_end)).split("/");
		return (arr[2] == "true") ? true : false;
	}
}

function setTitle()
{
	document.title = document.title.split("-")[0] + "- " + numwin + " opened Windows";
}

function chooseDesktop()
{
	var tmp = location.href;
	if(tmp.indexOf("#|m|g|s||") != (-1))
		chosenDesktop = tmp.split("#|m|g|s||")[1].substring(0,1);
	if(chosenDesktop == "w")
		chosenDesktop = tmp.split("#|m|g|s||")[1].substring(0,2);
	else chosenDesktop = parseInt(chosenDesktop);
}

function setURL(desknr)
{
	location.href = "#|m|g|s||" + desknr + "|#";
}

function desk(desknr)
{
	document.getElementById('content').innerHTML = '';
	WindCont = new Array();
	dragobjekt = 0;
	dragx = 0;
	dragy = 0;
	posx = 0;
	posy = 0;
	tmpwidth = 0;
	tmpheight = 0;
	numwin = 0;
	minimized = "false";
	launchywin = null;
	target = null;
	cnt = 0;
	switch(desknr)
	{
		case 1:
			desk1();
			break;
		case 2:
			desk2();
			break;
		case 3:
			desk3();
			break;
		case 4:
			desk4();
			break;
		case 5:
			desk5();
			break;
		case 'wm':
			deskWM();
			break;
		default:
			break;
	}
	setURL(desknr);
}
function desk1()
{
	/**(1)**/create("Header","<table><tr><td>Loading Header..."+preloader+"</td></tr></table>","glass","left:150;top:0;");
	/**(2)**/create("Curriculum Vitae","<table><tr><td>Loading CV..."+preloader+"</td></tr></table>","glass","left:150;top:180;");
	/**(3)**/create("Photograph","<table><tr><td>Loading Photo..."+preloader+"</td></tr></table>","glass","left:453;top:180;");
	/**(5)**/create("Footer","<table><tr><td>Loading Footer..."+preloader+"</td></tr></table>","glass","left:150;top:400;");
	/**(6)**/create("Login","<form action=\"#\" onsubmit=\"create('Chat','<table style=\\'text-align:center;\\'><tr><th>Online:</th></tr><tr><td style=\\'cursor:pointer;\\'>Pete</td></tr><tr><td>Max</td></tr><tr><td>John</td></tr></table>','glass','left:700;top:100;')\"><table><tr><td>Login</td></tr><tr><td><input type=\"text\" value=\"Username\" onFocus=\"oFF('Username',this);\" onBlur=\"oBF('Username',this);\" /></td></tr><tr><td><input type=\"text\" value=\"Password\" onFocus=\"oFF('Password',this);this.type='password';\" onBlur=\"oBF('Password',this);if(this.value == 'Password') this.type='text';\" /></td></tr><tr><td><input type=\"submit\" value=\"Login\"></td></tr></table></form>","glass","left:700;top:0;");
	create("Under Construction","Website still is under construction<br />Thank you for your paitience..."+preloader+"","grey","left:300;top:400;background-color:orange;");
	
	setTimeout("loadFile('./res/header.html','win1');",1000);
	setTimeout("loadFile('./res/cv.html','win2');",2000);
	setTimeout("loadFile('./res/photo.html','win3');",3000);
	setTimeout("loadFile('./res/footer.html','win4');",4000);
}

function desk2()
{
	create("Countdown<small id=\"ct_timer\">"+preloader+"</small>","<table id=\"cnt\"></table>","glass","left:200;top:0;");
	create("Under Construction","Website still is under construction<br />Thank you for your paitience..."+preloader,"grey","left:300;top:400;background-color:orange;");	
	createCD('2010;5;24;0;0;0','pfingsten');
	createCD('2010;5;26;8;15;0','physik_abgabe');
	createCD('2010;5;26;11;55;0','englisch_analyse');
	createCD('2010;5;26;12;40;0','deutsch_klausur');
	createCD('2010;5;27;10;05;0','informatik_klausur');
	createCD('2010;6;1;10;05;0','mathematik_klausur');
	createCD('2010;6;2;13;35;0','wirtschafts_klausur');
	createCD('2010;6;3;0;0;0','fronleichnam');
	createCD('2010;6;7;10;05;0','dvbsnw-dvdb_klausur');
	createCD('2010;6;10;11;55;0','elektrotechnik_klausur');
	createCD('2010;6;14;13;35;0','englisch_klausur');
	createCD('2010;6;15;8;15;0','philosophie_klausur');
	createCD('2010;6;16;10;05;0','spanisch_klausur');
	createCD('2010;6;21;0;0;0','klassenfahrt');
	createCD('2010;6;28;0;0;0','praktikum');
	createCD('2010;7;12;18;0;0','feierabend12072010');
	createCD('2010;7;13;18;0;0','feierabend13072010');
	createCD('2010;7;14;18;0;0','feierabend14072010');
	createCD('2010;7;15;18;0;0','feierabend15072010');
	createCD('2010;7;16;18;0;0','feierabend16072010');
	createCD('2010;7;19;18;0;0','feierabend19072010');
	createCD('2010;7;20;18;0;0','feierabend20072010');
	createCD('2010;7;21;18;0;0','feierabend21072010');
	createCD('2010;7;22;18;0;0','feierabend22072010');
	createCD('2010;7;23;15;0;0','feierabend23072010');
	createCD('2010;7;23;16;0;0','marokko');
	createCD('2010;8;30;8;15;0','schulbeginn');
	getFinished();
}

function desk3()
{
	create("Projects","Loading Projects..."+preloader+"","grey","left:300;top:400;");
	create("Under Construction","Website still is under construction<br />Thank you for your paitience..."+preloader+"","grey","left:300;top:300;background-color:orange;");
	setTimeout("loadFile('./res/projects.html','win1');",1000);
}

function desk4()
{
	create("BSCW Gadget - Vista/7 Gadget","<table><tr><td colspan=\"2\" style=\"text-align:center;\"><a target=\"_blank\" href=\"http://mansour.bplaced.net/popup_acception.html\">Activate PopUps for following Gadget</a></td></tr><tr><td>BKA BSCW Gadget for Windows Vista/7</td><td><a href=\"./downloads/BKA_BSCW.gadget\">Download</a></td></tr></table>","glass","left:200;top:0;");
	create("SchulProxy Gadget - Vista/7 Gadget","<table><tr><td colspan=\"2\" style=\"text-align:center;\"><a target=\"_blank\" href=\"http://www.schulproxy.de.gg/\">SchulProxy.de.gg</a></td></tr><tr><td>SchulProxy Gadget for Windows Vista/7</td><td><a href=\"./downloads/SchulProxy.gadget\">Download</a></td></tr></table>","glass","left:200;top:150;");
	create("Under Construction","Website still is under construction<br />Thank you for your paitience..."+preloader+"","grey","left:300;top:400;background-color:orange;");
}

function desk5()
{
	create("Under Construction","Website still is under construction<br />Thank you for your paitience..."+preloader+"","grey","left:300;top:400;background-color:orange;");
}