function dragImg(who,event){
	Log("Drag "+who.id);
	//show a larger part
	who.parentNode.style.overflow="visible";
	//calculate offset
	who.dragOffsetX=parseInt(getMouse(event)[0])-parseInt(getPos(who.parentNode)[0])-parseInt(who.style.left);
	who.dragOffsetY=parseInt(getMouse(event)[1])-parseInt(getPos(who.parentNode)[1])-parseInt(who.style.top);
	who.style.zIndex=10;
	who.drag=true;
	who.ondragstart=function(){return(false)}
	//EventHandeler(window,dropAllImg,"mouseup",event);
	//EventHandeler(window,doDrag,"mousemove",event);
	//prevent the default dragging of images
	prevDef(event);
	return(false);
}

function dropAllImg(event){
	Log("dropAllImg")
	var a = document.getElementsByTagName("*");
	for (var i=0; i<a.length; i++){
		var who=a[i];
		if(who.drag){
			dropImg(who,event);
		}
	}
	prevDef(event);
	return(false);
}
function dropImg(who,event){
	who.drag=false;
	who.style.zIndex=0;
	who.parentNode.style.overflow="hidden";
	makeSaveButton(who);
	//who.style.display="none";
	
	//prevDef(event);
	return(false);
}
function doDrag(event){
	var a = document.getElementsByTagName("*");
	for (var i=0; i<a.length; i++){
		var who=a[i];
		if(who.drag){
			var mX=parseInt(getMouse(event)[0])-parseInt(getPos(who.parentNode)[0])-who.dragOffsetX;
			var mY=parseInt(getMouse(event)[1])-parseInt(getPos(who.parentNode)[1])-who.dragOffsetY;
			Log("Prepare "+who.id+" to ("+mX+","+mY+")");
			//keep the image in the border (more like the border in the image)
			HWT=who.title.split(':');
			heightMax = parseInt(HWT[1]);
			widthMax = parseInt(HWT[3]);
			
			mX=Math.min(mX,0);
			mY=Math.min(mY,0);
			mX=Math.max(mX,-who.clientWidth+widthMax);
			mY=Math.max(mY,-who.clientHeight+heightMax);
			who.style.left=mX+"px";
			who.style.top =mY+"px";
			Log("Drag "+who.id+" to ("+mX+","+mY+") max(-"+who.clientWidth+"+"+who.parentNode.clientWidth+")");
		}
	}
	return(false);
}


function makeSaveButton(who){
	if(document.getElementById(who)){
		who=document.getElementById(who)
	}
	var num = who.id.split('-');
	var num = num[1];
	//var num=who.id.substr(who.id.length-1);
	var b=document.getElementById("button-"+num);
	b.value="Sla aanpassingen op";
	b.onmousedown=function(){saveImg(who)};
}
function makeUploadButton(who){
	var num = who.id.split('-');
	var num = num[1];
	//var num=who.id.substr(who.id.length-1);
	var b=document.getElementById("button-"+num);
	b.value="Pas foto & link aan";
	b.onmousedown=function(){doUploadForm(who)};
}
/*	if(!document.getElementById("savButton-"+who.id)){
		//make save button
		var button=document.createElement("input");
		button.type="button";
		button.value="save";
		button.id="savButton-"+who.id;
		button.onmousedown=function(){saveImg(who)};
		button.className="savButton";
		who.parentNode.appendChild(button);
	}
}*/
function saveImg(who){
	Log("User input: Save");
	//alert(who+" cannot be saved yet for i still have to make that part :)");
	var X=parseInt(who.style.left)*-1;
	var Y=parseInt(who.style.top)*-1;
	//var num=who.id.substr(who.id.length-1);
	var num = who.id.split('-');
	var num = num[1];
	var txtE=document.getElementById("desc-"+who.id);
	Log("txtE: "+txtE);
	var txt="";
	if(txtE){
		txt=txtE.value;
	}
	getTempPage("cms/savimg.php","x="+X+"&y="+Y+"&id="+who.id+"&txt="+txt);
	makeUploadButton(who);
	var a=document.getElementById("desc-"+who.id);
	if(a){
		unEditDesc(a);
	}
}

//AJAX
var url,target;
function getTempPage(url,get,target){
	xmlHttp=GetXmlHttpObject();
	if (xmlHttp==null){
		alert("Browser does not support HTTP Request");
		return(false);
	} 
	target = target;
	get=get.replace(/\n/g,'<br>');
	url=url+"?sid="+Math.random();
	url=url+"&"+get;
	xmlHttp.onreadystatechange=function() { if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete"){ if(target){target.innerHTML=xmlHttp.responseText;} }  }
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
	Log("Request server data ("+url+")");
	return(true);
}
function GetXmlHttpObject(){ 
	Log("Make AJAX object");
	var objXMLHttp=null;
	if (window.XMLHttpRequest){
		objXMLHttp=new XMLHttpRequest();
	}else if (window.ActiveXObject){
		objXMLHttp=new ActiveXObject("Microsoft.XMLHTTP");
	}
	return objXMLHttp;
}

//descriptions
function editDesc(who){
	if(!who.edit){
		var txt,img;
	var divs = who.getElementsByTagName("div");
	for (var i=0; i<divs.length; i++){
			if(divs[i].className=="tripple-banner-txt"){
				txt=divs[i];
			}
			if(divs[i].className=="tripple-banner-img"){
				img=divs[i].getElementsByTagName("img")[0];
			}
		}
		if(txt){
		var temp=txt.innerHTML;
		
		Log("temp: "+temp);
		}
		if(img){
		makeSaveButton(img);
		txt.innerHTML="<input type='text' value='"+temp+"' style='margin-top:0px;'  onkeyup='makeSaveButton("+img.id+");' id='desc-"+img.id+"' />";
		who.edit=true;
		document.getElementById("desc-"+img.id+"").focus();
		}
	}
	
}
function unEditDesc(who){
	//Note to self: Make this function
	//who.parentNode.parentNode.edit=false;	
}

//UPLOAD
function doUploadForm(who){
	//makeSaveButton(who)
	var num = who.id.split('-');
	var num = num[1];
	who.parentNode.parentNode.tempImg = who.parentNode.innerHTML;
	who.parentNode.id=Math.random();
	who.parentNode.innerHTML="<div id='uploadFormDiv"+who.id+"'><input type='button' style='position:absolute;margin-left:235px;' onclick=\"closeUploadForm('"+who.parentNode.id+"');return false;\" value='Sluiten X' ></button><iframe id='upFrame' src='http://www.rabosport.nl/cms/uploadImg.php?id="+num+"' width='800' height='50' frameborder='0'></iframe></div>";

	//hide all buttons
}

function closeUploadForm(who){
	//e=document.getElementById(who);
	//getTempPage("pages/banner.php","id="+num,e);
	
	document.getElementById(who).innerHTML=document.getElementById(who).parentNode.tempImg;
	//document.getElementById(who).firstChild.src='none';
	
}
function doUpload(){
	Log("Prepare upload");
	if(confirm("Wilt u dit bestand uploaden? Het oude bestand wordt hierdoor vervangen")){
		document.getElementById("uploadForm").submit();
	}else{
		document.getElementById("uploadInput").value="";
		document.getElementById("uploadForm").reset();
	}
}
/*function showUpload(who){
	if(!document.getElementById("uploadForm")){
		var upForm=document.createElement("form");
		upForm.method=		"post";
		upForm.target=		"#";
		upForm.name=		"uploadForm";
		upForm.className=	"uploadForm";
		upForm.id=			"uploadForm";
		upForm.innerHTML=	upload;
		//upForm.onmouseout=	"hideUpload(who.parentNode)"
		EventHandeler(who.parentNode,hideUpload,"mouseout",who.parentNode);
		who.parentNode.appendChild(upForm);
		//alert(document.getElementById("uploadForm"));
	}
}
function hideUpload(who){
	var f=document.getElementById("uploadForm");
	if(f){
		who.removeChild(f);
	}
}*/

/* --- Supporting functions --- */
function getMouse(event){
	if(!event){event=window.event}
	return [event.clientX,event.clientY];
}
function prevDef(event){
	if(event.preventDefault){
		event.preventDefault();
	}else{
		event.returnValue=false;
	}
}
function getPos(who){
	var l=-1,t=-1;
	if(who.offsetParent){//PPK method
		do{
			l+=who.offsetLeft;
			t+=who.offsetTop;
		}while(who=who.offsetParent);
	}else if(who.style.left && who.style.top && who.style.position=="absolute"){//CSS Method
		l=who.style.left;
		t=who.style.top;
	}else if(who.x && who.y){//MS/IE Method
		l=obj.x;
		t=obj.y;
	}
	return [l,t];
}
function Log(txt){
	//document.getElementById("log").innerHTML="<li>"+txt+"</li>";
}