function getWindowWidth() {
  return document.compatMode=='CSS1Compat' && !window.opera?document.documentElement.clientWidth:document.body.clientWidth;
}
 
function getWindowHeight() {
  return document.compatMode=='CSS1Compat' && !window.opera?document.documentElement.clientHeight:document.body.clientHeight;
}

function getMouseX (e) {
	var posx = 0;
	if (!e) var e = window.event;
	if (e) {
		if (e.pageX) posx = e.pageX;
		else {
			if (e.clientX) posx = e.clientX + document.body.scrollLeft	+ document.documentElement.scrollLeft;
			else posx = document.body.scrollLeft + document.documentElement.scrollLeft;
		}
	}
	else {
		posx = document.body.scrollLeft + document.documentElement.scrollLeft;
	}
		
	return posx;
}

function getMouseY (e) {
	var posy = 0;
	if (!e) var e = window.event;
	if (e) {
		if (e.pageY) posy = e.pageY;
		else {
			if (e.clientY) posy = e.clientY + document.body.scrollTop + document.documentElement.scrollTop;
			else posy = document.body.scrollTop + document.documentElement.scrollTop;
		}
	}
	else {
		posy = document.body.scrollTop + document.documentElement.scrollTop;
	}
	return posy;
}

function findPos(obj) {
	var curleft = curtop = 0;
	if (obj.offsetParent) {
		curleft = obj.offsetLeft
		curtop = obj.offsetTop
		while (obj = obj.offsetParent) {
			curleft += obj.offsetLeft
			curtop += obj.offsetTop
		}
	}
	return [curleft,curtop];
}

function addcall(it, prop) {
	var xent = "entadd" + prop;
	var DropDown = document.getElementById(xent).value;
	var Half = getWindowWidth() / 2 - 500;
	window.open("actives/Content/entity_inserter.php?item="+it+"&property="+prop+"&r_order="+document.AdderOrder+"&entity=" +DropDown , "EntAdd", "toolbar=no,width=1000,height=600,top=50,left="+Half);
}

function editcall(it, prop, dataid) {
	var xent = "entadd" + prop;
	var DropDown = document.getElementById(xent).value;
	var Half = getWindowWidth() / 2 - 500;
	window.open("actives/Content/entity_inserter.php?item="+it+"&property="+prop+"&r_order=0&dataid=" + dataid , "EntAdd", "toolbar=no,width=1000,height=600,top=50,left="+Half);
}

function addsearch(id) {
	var Half = getWindowWidth() / 2 - 500;
	window.open("actives/Content/item_searcher.php?id=" + id , "EntAdd","toolbar=no,width=1000,height=600,top=50,left="+Half);
}


function MoveAddBox (property, order) {
	var adder = "ImgAdder" + order + "Prop" + property;
	var adderobject = document.getElementById(adder);
	var where = findPos(adderobject);
	var base = findPos(document.getElementById("header"));
	if (document.AdderProperty === undefined) {
		HideAddBox();
		document.getElementById("addbox" + property).style.left = where[0] - base[0] + "px";	
		document.getElementById("addbox" + property).style.top = where[1] - base[1] + 25 + "px";
		document.getElementById("addbox" + property).style.display = "block";
		document.AdderOrder = order;
		document.AdderProperty = property;
	}
	else {
		if (document.AdderProperty != property || document.AdderOrder != order) {
			HideAddBox();
			document.getElementById("addbox" + property).style.left = where[0] - base[0] + "px";	
			document.getElementById("addbox" + property).style.top = where[1] - base[1] + 25 + "px";
			document.getElementById("addbox" + property).style.display = "block";
			document.AdderOrder = order;
			document.AdderProperty = property;
		}
		else {
			HideAddBox();
		}
	}
}

function MoveEditBox (dataid, evt) {
	var adderobject = document.getElementById("content" + dataid);
	var wherex = getMouseX(evt);
	var wherey = getMouseY(evt);
	var base = findPos(document.getElementById("header"));
	if (document.AdderData === undefined) {
		HideAddBox();
		document.getElementById("editbox" + dataid).style.left = wherex - base[0] + "px";	
		document.getElementById("editbox" + dataid).style.top = wherey - base[1] + 25 + "px";
		document.getElementById("editbox" + dataid).style.display = "block";
		document.AdderData = dataid;
	}
	else {
		if (document.AdderData != dataid) {
			HideAddBox();
			document.getElementById("editbox" + dataid).style.left = wherex	- base[0] + "px";	
			document.getElementById("editbox" + dataid).style.top = wherey - base[1] + 25 + "px";
			document.getElementById("editbox" + dataid).style.display = "block";
			document.AdderData = dataid;
		}
		else {
			HideAddBox();
		}
	}
}

function HideAddBox () {
	if (document.AdderProperty === undefined) {}
	else {
		document.getElementById("addbox" + document.AdderProperty).style.display = "none";
		delete document.AdderProperty;
		delete document.AdderOrder;
	}
	if (document.AdderData === undefined) {}
	else {
		document.getElementById("editbox" + document.AdderData).style.display = "none";
		delete document.AdderData;
	}
}
	
function formatText(el, tagstart, tagend) {
  	if (el.setSelectionRange) {
 		el.value = el.value.substring(0,el.selectionStart) + tagstart + el.value.substring(el.selectionStart,el.selectionEnd) + tagend + el.value.substring(el.selectionEnd,el.value.length)
  	}
  	else {
  		var selectedText = document.selection.createRange().text; 
         
        if (selectedText != "") { 
            var newText = tagstart + selectedText + tagend + tagend ; 
            document.selection.createRange().text = newText; 
        }
  	}
}

function showDiv (ident) {
	var elid = document.getElementById(ident);
	if (elid.style.display != "block") {
		elid.style.display = "block";
	}
	else {
		elid.style.display = "none";
	}
}
 
 
