var xmlHttp;

function getMenuItems() { 
xmlHttp=GetXmlHttpObject();

	if (xmlHttp==null) {
		alert ("Your browser does not support AJAX!");
		return;
	} 

	var url="menu_items.php";
	xmlHttp.onreadystatechange=stateChanged;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
}

function getMenuItems2() { 
xmlHttp=GetXmlHttpObject();

	if (xmlHttp==null) {
		alert ("Your browser does not support AJAX!");
		return;
	} 

	var url="menu_items.php";
	xmlHttp.onreadystatechange=stateChanged2;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
}

function getEmployees() { 
xmlHttp=GetXmlHttpObject();

	if (xmlHttp==null) {
		alert ("Your browser does not support AJAX!");
		return;
	} 

	var url="employees_data.php";
	xmlHttp.onreadystatechange=stateChanged5;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
}

function getEmployees2() { 
xmlHttp=GetXmlHttpObject();

	if (xmlHttp==null) {
		alert ("Your browser does not support AJAX!");
		return;
	} 

	var url="employees_data.php";
	xmlHttp.onreadystatechange=stateChanged6;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
}

function changeOrder(str, str2, obj1, obj2) { 
xmlHttp=GetXmlHttpObject();

	if (xmlHttp==null) {
		alert ("Your browser does not support AJAX!");
		return;
	} 

	var url="menu_items.php";
	url = url + "?id=" + str;
	url = url + "&order=" + str2;
	url = url + "&sub1=" + obj1;
	url = url + "&sub2=" + obj2;
	xmlHttp.onreadystatechange=stateChanged;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
}

function changeProjectOrder(str, str2) { 
xmlHttp=GetXmlHttpObject();

	if (xmlHttp==null) {
		alert ("Your browser does not support AJAX!");
		return;
	} 

	var url="projects_data.php";
	url = url + "?id=" + str;
	url = url + "&order=" + str2;
	xmlHttp.onreadystatechange=stateChanged3;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
}

function delMenuItem(str) { 
xmlHttp=GetXmlHttpObject();

	if (xmlHttp==null) {
		alert ("Your browser does not support AJAX!");
		return;
	} 

	var url="menu_items.php?del=" + str;
	xmlHttp.onreadystatechange=stateChanged;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
}

function delEmployee(str) { 
xmlHttp=GetXmlHttpObject();

	if (xmlHttp==null) {
		alert ("Your browser does not support AJAX!");
		return;
	} 

	var url="employees_data.php?del=" + str;
	xmlHttp.onreadystatechange=stateChanged5;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
}

function fileBrowserClick(url) { 
xmlHttp=GetXmlHttpObject();

	if (xmlHttp==null) {
		alert ("Your browser does not support AJAX!");
		return;
	} 

	xmlHttp.onreadystatechange=stateChanged4;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
}

function stateChanged() { 
	if (xmlHttp.readyState==4) { 
		document.getElementById("menu_items").innerHTML=xmlHttp.responseText;
		setAnim('');
	}
}

function stateChanged2() { 
	if (xmlHttp.readyState==4) { 
		parent.document.getElementById("menu_items").innerHTML=xmlHttp.responseText;
		setAnim2('');
	}
}

function stateChanged3() { 
	if (xmlHttp.readyState==4) { 
		document.getElementById("projects").innerHTML=xmlHttp.responseText;
		setAnim('');
	}
}

function stateChanged4() { 
	if (xmlHttp.readyState==4) { 
		document.getElementById("file_browser").innerHTML=xmlHttp.responseText;
		setAnim('');
	}
}

function stateChanged5() { 
	if (xmlHttp.readyState==4) { 
		document.getElementById("employees_data").innerHTML=xmlHttp.responseText;
		setAnim('');
	}
}

function stateChanged6() { 
	if (xmlHttp.readyState==4) { 
		parent.document.getElementById("employees_data").innerHTML=xmlHttp.responseText;
		setAnim2('');
	}
}

function GetXmlHttpObject() {
var xmlHttp = null;
	try {
		// Firefox, Opera 8.0+, Safari
		xmlHttp=new XMLHttpRequest();
	}
	catch (e) {
		// Internet Explorer
		try {
			xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
		}
		catch (e) {
			xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
		}
	}
return xmlHttp;
}

function hoverMenu(type, obj) {

	if(type == "sub") {
		if(obj.className == "submenu_item") {
			obj.className = "submenu_item_hover";
		}
	
		else if(obj.className == "submenu_item_hover") {
			obj.className = "submenu_item";
		}
	
		else if(obj.className == "submenu_item_active") {
			obj.className = "submenu_item_active";
		}
	}
	
	else if(type == "subsub") {
		if(obj.className == "subsubmenu_item") {
			obj.className = "subsubmenu_item_hover";
		}
	
		else if(obj.className == "subsubmenu_item_hover") {
			obj.className = "subsubmenu_item";
		}
	
		else if(obj.className == "subsubmenu_item_active") {
			obj.className = "subsubmenu_item_active";
		}
	}
	
}

function delItem(str) {
	if(confirm("Om den här menyn innehåller under menyer kommer de också att tas bort, vill du fortsätta?")) {
		setAnim('../admin/images/busy_anim.gif');
		changeImg("delimg"+str, "images/icon_blank.gif");
		delMenuItem(str);
	}
}

function confirmDelEmployee(str, str2) {
	if(confirm("Bekräfta borttagning av medarbetare " + str2 + "?")) {
		changeImg("delimg"+str, "images/icon_blank.gif");
		setAnim('../admin/images/busy_anim.gif');
		setCookie("emp_menu", str, "del", "1");
		delEmployee(str);
	}
}

function setTab(obj) {
	if(obj != "") {
	var tab = document.getElementById("tab"+obj);
	tab.className = "tab";
	}
}

function tabHover(obj) {
	if(obj.className == "menu") {
		obj.className = "tab_hover";
	}
	else if(obj.className == "tab") {
		obj.className = "tab";
	}
	else if(obj.className == "tab_hover") {
		obj.className = "menu";
	}
}

function setSub(obj) {
	if(obj != "") {
	var sub = document.getElementById("sub"+obj)
	sub.className = "submenu_item_active";
	}
}

function menuClick(obj, url) {
	var objs = 6; // Number of menu items, must be updated if menu item is added/removed
	
	for(var i = 1; i <= objs; i++) {
		var item = document.getElementById("sub"+i);
		if(i == obj) { item.className = "sub_active"; }
		else { item.className = "sub"; }
	}
	
	parent.main.location.href = url;
}

function updateMenu(obj) {
	var objs = 4;
	
	for(var i = 1; i <= objs; i++) {
		var item = parent.left.document.getElementById("sub"+i);
		if(i == obj) { item.className = "sub_active"; }
		else { item.className = "sub"; }
	}
	
}

function showHideSub(subId, cookieName) {
	var elem = document.getElementById("menu"+subId);
	var img = document.getElementById("img"+subId);

	if(elem.style.display == "none") {
	elem.style.display = "";
	img.src = "images/ftv2mnode.gif"
	setCookie(cookieName, subId, "add", "1")
	}
	else {
	elem.style.display = "none";
	img.src = "images/ftv2pnode.gif"
	setCookie(cookieName, subId, "del", "1")
	}
}

function changeImg(obj, img) {
	var elem = document.getElementById(obj);
	elem.src = img;
}

function changeImg2(obj, img) {
	obj.src = img;
}

function preload(img) {
	var image = new Image();
	image.src = img;
}

function setAnim(img) {
	var elem = document.getElementById("anim");
	if(img != "") {
		elem.style.display = "";
		elem.innerHTML = '<img src="' + img + '" style="margin-top: 15px">';
	}
	else {
		pause(500);
		elem.style.display = "none";
		elem.innerHTML = '';
	}
}

function setAnim2(img) {
	var elem = parent.document.getElementById("anim");
	if(img != "") {
		elem.style.display = "";
		elem.innerHTML = '<img src="' + img + '">';
	}
	else {
		pause(500);
		elem.style.display = "none";
		elem.innerHTML = '';
	}
}

function selectSubCat() {
	var form = document.editForm;
	var sub = form.sub.options[form.sub.selectedIndex].value;
	if(sub == "") { sub = "null"; }
	setWidthField;
	form.action = form.action + "&sub=" + sub;
	form.submit();
}

function setWidthField() {
	var elem = document.getElementById("width");
	var form = document.editForm;
	if(form.sub.options[form.sub.selectedIndex].value != "") { elem.style.display = "none"; }
}

function setLinkType(obj) {
	var elem = document.getElementById("link");
	var form = document.editForm;
	var link = form.link;
	
	if(obj.value == "3") {
		elem.style.display = "";
	}
	else {
		elem.style.display = "none";
		link.value = "";
	}
}

function checkMenuItem(obj) {
var name = obj.name;
var linktype = obj.linktype;
var linktype2 = obj.old_linktype;
var link = obj.link;
var widthof = obj.widthof;
var tmp = widthof.value;
if(tmp == "") { tmp = 0; }
var max_width = obj.max_width;

	if(name.value == "") {
		alert("Du måste ange ett namn på menyn");
		return false;
	}

	if(linktype[2].checked && link.value == "") {
		alert("Du måste ange en sida att länka till");
		return false;
	}
	
	if(linktype2.value == "2" && linktype[1].checked == false) {
		if(confirm("Om du väljer att spara dessa ändringar kommer den nuvarande databassidan raderas")) {
		
		}
		else {
		return false;
		}
	}
	
	if(obj.sub.options[obj.sub.selectedIndex].value == "" && widthof.value == "") {
		alert("Du måste ange bredd för det här meny valet");
		return false;
	}
	
	if((parseInt(max_width.value) - parseInt(tmp)) < 0) {
		alert("Angiven bredd är för hög, högsta möjliga bredd är " + max_width.value + " punkter");
		return false;
	}

	else {
	obj.verify.value = "true";
	return true;
	}
}

function setHeight(obj) {
	var browserName=navigator.appName; 
	var item = document.getElementById(obj);
	
	if(obj == "tdmain") { var height = 0; }
	else { var height = 280; }
	
	if (browserName == "Netscape") {
		var item = document.getElementById(obj);
		item.style.height = window.innerHeight-height; // 232
	}

	else if(browserName == "Microsoft Internet Explorer") { 
		var item = document.getElementById(obj);
		item.style.height = document.body.offsetHeight-height-4; // 233
	}
	else {
		var item = document.getElementById(obj);
		item.style.height = window.innerHeight-height; // 232
	}
}

function toggleProjectImageUpload() {
	var item = document.getElementById("upload");
	
	if(item.style.display == "none") {
		item.style.display = "";
	}
	else {
		item.style.display = "none";
	}
}

function confirmIt(str, url) {
	if(confirm(str)) {
	location.href = url;
	}
}

function setCookie(name,value,action,expiredays) {
	if(action == "add") {
		var val = getCookie(name);
		if(val.search(value) == "-1") {
			if(val != "") {
				val = val + "," + value;
			}
			else {
				val = value;
			}
		}
	}
	
	if(action == "del") {
		var val = getCookie(name);
		if(val != "") {
			if(val.search(","+value) != "-1") {
				val = val.replace(","+value, "");
			}
			else if(val.search(value+",") != "-1") {
				val = val.replace(value+",", "");
			}
			else {
				val = val.replace(value, "");
			}
		}
	}

	var date = new Date();
	date.setTime(date.getTime()+(expiredays*24*60*60*1000));

	document.cookie = name+"="+val+"; expires="+date.toGMTString()+"; path=/";
}

function getCookie(name) {
if(document.cookie.length>0) {
	c_start=document.cookie.indexOf(name + "=")
		if (c_start!=-1) { 
		    c_start=c_start + name.length+1 
		    c_end=document.cookie.indexOf(";",c_start)
		    if (c_end==-1) c_end=document.cookie.length
			    return unescape(document.cookie.substring(c_start,c_end))
	    } 
}
return ""
}


function selectEmployee(obj, url) {
	var value = obj.options[obj.selectedIndex].value;
	
	if(value != "") {
	location.href = url + "&e=" + value;
	}
	else {
	location.href = url;
	}
}


function checkEmailForm(obj) {
	var from = obj.msg_from;
	var subject = obj.msg_subject;
	var message = obj.msg_message;
	var name = obj.msg_name;
	var apos = from.value.indexOf("@");
	var dotpos = from.value.lastIndexOf(".");
	
	from.value = from.value.replace(/\s+/g, "");
	
	if(name.value == "") {
		alert("Var god ange ert namn.");
		name.focus();
		return false;
	}
	
	if(from.value == "") {
		alert("Var god ange er e-post adress.");
		from.focus();
		return false;
	}
	
	if(apos < 1 || dotpos - apos < 2) {
		alert("Var god ange en giltig e-post adress.");
		from.focus();
		return false;
	}
	
	if(subject.value == "") {
		alert("Var god ange ett ämne.");
		subject.focus();
		return false;
	}
	
	if(message.value == "") {
		alert("Var god skriv ett meddelande.");
		message.focus();
		return false;
	}
	
	else {
	alert("Tack, ert meddelande skickas nu.");
	return true;
	}
}


function fileBrowserCheckBox(obj, obj2, filename) {
	var elem = document.getElementById("file"+obj2);
	var status = document.getElementById("checked_files");
	var files = document.getElementById("marked_files");
	var names = document.getElementById("file_names");
	
	if(obj.checked) {
		elem.className = "hover";
		status.value = parseInt(status.value) + 1;
		
		if(files.value == "") { files.value = obj.value; }
		else if(files.value != "") { files.value = files.value + "-" + obj.value; }
		
		if(names.value == "") { names.value = filename; }
		else if(names.value != "") { names.value = names.value + "," + filename; }
	}
	else {
		elem.className = "";
		status.value = parseInt(status.value) - 1;

		if(files.value.search("-"+obj.value) != "-1") {
			files.value = files.value.replace("-"+obj.value, "");
		}
		else if(files.value.search(obj.value+"-") != "-1") {
			files.value = files.value.replace(obj.value+"-", "");
		}
		else {
			files.value = files.value.replace(obj.value, "");
		}

		if(names.value.search("-"+filename) != "-1") {
			names.value = names.value.replace(","+filename, "");
		}
		else if(names.value.search(filename+"-") != "-1") {
			names.value = names.value.replace(filename+",", "");
		}
		else {
			names.value = names.value.replace(filename, "");
		}

	}
}


function checkFileDelete(url) {
	var status = document.getElementById("checked_files");
	var form = document.fileForm;
	var str = document.getElementById("marked_files");
	
	if(status.value == 0) {
		alert("Du måste markera minst 1 fil för borttagning");
	}
	else {
		if(status.value == 1) { var text = "Bekräfta borttagning av markerad fil/katalog?\n(Åtgärden går ej att ångra)"; }
		else if(status.value > 1) { var text = "Bekräfta borttagning av markerade filer/kataloger?\n(Åtgärden går ej att ångra)"; }
		if(confirm(text)) {
		
			str = str.value;
		
			setAnim('images/busy_anim.gif');
			fileBrowserClick(url + "&del=" + str);
		}
	}
}

function previewFile(str, str2) {
	var elem = document.getElementById("preview");
	
	// "preload" image, IE requires this or it will not show image when changing img.src (???)
	// but even when doing this, you manually have to load the picture twice!
	var image = new Image();
	image.src = str;
	
	if(str != "null") {
	elem.style.display = "";
	elem.style.border = "1px solid #cccccc";
	elem.style.height = "auto";
	elem.style.width = "auto";
	elem.style.padding = "5px";
	elem.style.background = "#f0f0f0";
	elem.innerHTML = '<center><img src="' + str + '" class="image_border"><br><a href="JavaScript:void(0)" onClick="previewFile(\'null\')">St&auml;ng</a></center>';
		// Reload image, so that IE can display it
		if(str2 == "") {
			var tmp = str;
			t=setTimeout("previewFile('"+tmp+"', 'stop')", 10);
		}
	}

	else if(str == "null"){
	elem.style.display = "none";
	elem.style.border = "0px";
	elem.style.height = "0px";
	elem.style.width = "0px";
	elem.style.padding = "0px";
	elem.innerHTML = "";
	}
}


function createFolder(url) {
	var folder = prompt("Ange namn för ny katalog", "");
	
	if(folder == "" || folder == null) {
		alert("Ingen ny katalog skapades.");
	}
	else if(folder != "" && folder != null) {
		var url2 = url + "&folder=" + folder;
		setAnim('images/busy_anim.gif');
		fileBrowserClick(url2);
	}
	else {
	return true;
	}
}


function renameFile(url) {
	var files = document.getElementById("marked_files");
	var names = document.getElementById("file_names");
	var status = document.getElementById("checked_files");
	var new_names = "";
	
	if(status.value == 0) {
		alert("Du måste markera minst en fil/katalog som du vill byta namn på.");
	}
	else {
		files = files.value.split("-");
		names = names.value.split(",");
		
		for(i = 0; i <= files.length-1; i++) {
			var newName = prompt("Ange nytt namn på \"" + names[i] + "\"", names[i]);
			if(newName == "" || newName == names[i] || newName == null) {
				alert("Namn ej ändrat på \"" + names[i] + "\".");
			}
			else if(newName != "" && newName != names[i] && newName != null) {
				if(new_names == "") { new_names = names[i] + "=" + newName; }
				else if(new_names != "") { new_names = new_names + "," + names[i] + "=" + newName; }
			}
		}
		
		setAnim('images/busy_anim.gif');
		fileBrowserClick(url + "&rename=" + new_names);
	}
}


function showUploadForm() {
	var elem = document.getElementById("upload");
	
	elem.style.display = "";
	elem.style.height = "150px";
	elem.style.width = "450px";
	elem.style.border = "1px solid #cccccc";
	elem.style.background = "#f0f0f0";
}


function checkEmployeeForm(obj) {
	var fname = obj.first_name;
	var lname = obj.last_name;
	var email = obj.email;
	var verify = obj.verify;
	var apos = email.value.indexOf("@");
	var dotpos = email.value.lastIndexOf(".");
	
	email.value = email.value.replace(/\s+/g, "");
	
	if(fname.value == "") {
		alert("Ange ett förnamn på medarbetaren.");
		fname.focus();
		return false;
	}
	else if(lname.value == "") {
		alert("Ange ett efternamn på medarbetaren.");
		lname.focus();
		return false;
	}
	else if(apos < 1 || dotpos - apos < 2) {
		alert("Ange en giltig e-post adress för medarbetaren.");
		email.focus();
		return false;
	}
	else {
		verify.value = "true";
		return true;
	}
}


function pause(ms) {
var date = new Date();
var curDate = null;

	do { curDate = new Date(); }
	while(curDate-date < ms);
}


function showEmailForm(str) {
	var elem = document.getElementById("emailTable");
	
	if(elem.style.display == "none") {
		elem.style.display = "";
	}
	else {
		elem.style.display = "none";
	}
}


function getTableSize() {

if (parseInt(navigator.appVersion)>3) {
	if (navigator.appName=="Netscape") {
		var width = window.innerWidth;
		var height = window.innerHeight;
	}
	if (navigator.appName.indexOf("Microsoft")!=-1) {
		var width = document.body.offsetWidth-16;
		var height = document.body.offsetHeight;
	}
}

	var tdWidth = 0;
	var tdRight = document.getElementById("tdRight");
	var tdLeft = document.getElementById("tdLeft");
	if(width > 800) {
		tdWidth = (width - 800) / 2;
	}
	
	tdLeft.style.width = tdWidth;
	tdLeft.style.height = height;
	tdRight.style.width = tdWidth-40;
	tdRight.style.height = height;
	tdRight.style.left = tdWidth+800;
}