var xmlHttp
var cssid

function loadAJAX(page, id)
{ 
        //document.getElementById('navbanner').innerHTML = navtext; 
	// Zuweisungen fuer die Funktionen
	cssid=id;
	xmlHttp=GetXmlHttpObject();
	// Ununterstuetzte Browser abfangen
	if (xmlHttp==null)
	{
		alert ("Browser not supported");
		return;
	}
	//URL String bauen
//	var url="http://localhost/MrTop/" + page
	var url = page
	// Rueckgabe der angeforderen Seite bekommen. 
	xmlHttp.onreadystatechange=stateChanged;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
}

//Diese Funktion schreibt die Rueckgabe der Seite aus ShowHint in das geforderte DIV Tag
function stateChanged() 
{ 
	if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
	{ 
		
		document.getElementById(cssid).innerHTML=xmlHttp.responseText;
		//document.getElementById('showwait').innerHTML = ''; 
	}
	else
	{
	    //document.getElementById('showwait').innerHTML = 'loading...';
	} 
} 

//New AJAX
function GetXmlHttpObject()
{ 
	var objXMLHttp=null;
	if (window.XMLHttpRequest)
	{
		objXMLHttp=new XMLHttpRequest();
	}
	else if (window.ActiveXObject)
	{
		//objXMLHttp=new ActiveXObject("Microsoft.XMLHTTP")
		objXMLHttp=new ActiveXObject("Msxml2.XMLHTTP");


	}
	return objXMLHttp;
}

function loadAreas(sender)
{
	var strpage = 'pages/admin_items.php?item_id=' + sender.value;
	//alert(strpage);
	loadAJAX(strpage, 'AJAXDIV');
}

function changeArea(area_id, item_id, sender)
{
	var strpage = 'pages/admin_items.php?item_id=' + item_id + '&area_id=' + area_id + '&check=' + sender.checked;
	//alert(strpage);
	loadAJAX(strpage, 'AJAXDIV');
}

function addItem(item_text, jobs_id)
{
	var strpage = 'pages/admin_items.php?item_text=' + item_text.value + '&jobs_id=' + jobs_id.value + '&action=add';
	//alert(strpage);
	loadAJAX(strpage, 'AJAXDIV');
}

var IsDrag = false;

document.onmouseup = set_mouseup;
document.onmousemove = drag_object;


var mousedown = false;
var IsOnTarget = false;
var oTempTarget = '';
var TempImage = '#';
var oTarget = null;
var oTVID = null;
var MaxHeight = 0;
var DragStartX = 0;
var DragStartY = 0;
var DragObjectTop = null;
var DragObjectLeft = null;


function set_mousedown(e, sender)
{
	if (e.preventDefault) 
	{
		e.preventDefault();
	}

	mousedown = true;
	MaxHeight = document.documentElement.scrollHeight;

	document.body.style.cursor = "url(images/blank.cur), auto";
		
	DragStartX = e.clientX;
	DragStartY = e.clientY;
		
	document.getElementById('DragImage').style.position = 'absolute';
	document.getElementById('DragImage').style.top = (DragStartY + document.documentElement.scrollTop - document.getElementById('content').offsetTop) - 5 + 'px';
	document.getElementById('DragImage').style.left = (DragStartX +  document.documentElement.scrollLeft - document.getElementById('content').offsetLeft) - 20 + 'px';
	document.getElementById('DragImage').innerHTML = sender.innerHTML;
	oTVID = sender;

}

function set_mouseup()
{
	if(mousedown == true)
	{
		mousedown = false;
		document.body.style.cursor = "auto";
		document.getElementById('DragImage').innerHTML = '';
		
		DragStartX = 0;
		DragStartY = 0;
		DragObjectTop = null;
		DragObjectLeft = null;
		
		if(IsOnTarget == true)
		{
			var page = 'pages/admin_setups_sub.php?lrun_id=' + document.getElementById('txtLRunID').value + '&action=drop&source=' + oTVID.id + '&target=' + oTempTarget;
			//alert(page);
			loadAJAX(page, 'sub_setup');
			IsOnTarget = false;
		}
		oTempTarget='';
		TempImage='#';
	}
}

function drag_object(e)
{	
	if(mousedown == true)
	{
		if(!e)
		{
			e = event;
		}
		
		//if(DragObjectTop == null)
		//{
		//	DragObjectTop = (parseInt(document.getElementById('DragImage').style.top.replace('px','')))
		//}
		//if(DragObjectLeft == null)
		//{
		//	DragObjectLeft = (parseInt(document.getElementById('DragImage').style.left.replace('px','')))
		//}
				
		tempX = e.clientX;
		tempY = e.clientY;
	 
		if (tempX < 0){tempX = 0}
		if (tempY < 0){tempY = 0}
		
		InnerSize = getWindowSize();
		
		//document.getElementById('debug1').value = document.documentElement.scrollTop;
		//document.getElementById('debug2').value = InnerSize[1];
		//document.getElementById('debug3').value = MaxHeight;
		
		if(tempY >= (InnerSize[1] - 150))
		{
			if((document.documentElement.scrollTop + InnerSize[1] + 10) < MaxHeight)
			{
				window.scrollBy(0, 10);
			}
		}
		
		if(tempY <= 50)
		{
			window.scrollBy(0, -10);
		}
		
		//alert((tempY - DragStartY) - parseInt(document.getElementById(sender).style.left.replace('px','')));
		//document.getElementById('DragImage').style.left = (tempX - DragStartX) + DragObjectLeft + 'px';
		//document.getElementById('DragImage').style.top = (tempY - DragStartY) + DragObjectTop + document.documentElement.scrollTop + 'px';
		document.getElementById('DragImage').style.left = (tempX +  document.documentElement.scrollLeft - document.getElementById('content').offsetLeft) - 20 + 'px';
		document.getElementById('DragImage').style.top = (tempY + document.documentElement.scrollTop - document.getElementById('content').offsetTop) - 5 + 'px';

		
		TargetArea(tempX, tempY);

	}
	
}

function TargetArea(tempX, tempY)
{
	
	for($i=1;$i<=4;$i++)
	{
		for($j=1;$j<=3;$j++)
		{
			for($k=1;$k<=6;$k++)
			{
				oTarget = document.getElementById('target_' + $i + $j + $k);

	
				var oPos = null;
				oPos = findPos(oTarget);
				
				if((tempX + document.documentElement.scrollLeft) > oPos[0] && (tempX + document.documentElement.scrollLeft) < (oPos[0] + 220))
				{
					if((tempY + document.documentElement.scrollTop) > oPos[1] && (tempY + document.documentElement.scrollTop) < (oPos[1] + 14))
					{
						if(TempImage=='#')
						{
							TempImage = oTarget.innerHTML;
							oTarget.innerHTML = document.getElementById('DragImage').innerHTML;	
							IsOnTarget = true;
							oTempTarget = oTarget.id;
						}
					}
				}
		
				if(oTarget.id == oTempTarget)
				{
					if((tempX + document.documentElement.scrollLeft) < oPos[0] || (tempX + document.documentElement.scrollLeft) > (oPos[0] + 220) || (tempY + document.documentElement.scrollTop) < oPos[1] || (tempY + document.documentElement.scrollTop) > (oPos[1] + 14))
					{
						if(TempImage != '#')
						{
							oTarget.innerHTML = TempImage;
							TempImage = '#';
							IsOnTarget = false;
						}
					}
				}
			}
		}
	}
	
}

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 getWindowSize()
{
	var x,y;
	if (self.innerHeight) // all except Explorer
	{
		x = self.innerWidth;
		y = self.innerHeight;
	}
	else if (document.documentElement && document.documentElement.clientHeight)
		// Explorer 6 Strict Mode
	{
		x = document.documentElement.clientWidth;
		y = document.documentElement.clientHeight;
	}
	else if (document.body) // other Explorers
	{
		x = document.body.clientWidth;
		y = document.body.clientHeight;
	}
	return [x, y];
}


function delUserFromSetup(UserID)
{
		var page = 'pages/admin_setups_sub.php?lrun_id=' + document.getElementById('txtLRunID').value + '&action=deluser&user_id=' + UserID;
	//alert(page);
	loadAJAX(page, 'sub_setup');
}

function ChangeJobForSetup(UserID, JobsID)
{
	var page = 'pages/admin_setups.php?lrun_id=' + document.getElementById('txtLRunID').value + '&action=changejob&user_id=' + UserID + '&jobs_id=' + JobsID + '&sortby=' + document.getElementById('txtSortBy').value;
	//alert(page);
	loadAJAX(page, 'content');
}

