var xmlHttp

function GetXmlHttpObject()
{
	var objXMLHttp=null
	if (window.XMLHttpRequest)
	{
		objXMLHttp=new XMLHttpRequest()
	}
	else if (window.ActiveXObject)
	{
		objXMLHttp=new ActiveXObject("Microsoft.XMLHTTP")
	}
	if (objXMLHttp==null)
	{
		alert ("Browser does not support HTTP Request");
		return
	}
	return objXMLHttp
}

function showPicker(actie,teller,soort)
{
	xmlHttp=GetXmlHttpObject();
	var url='ajax_handler';
	url=url+'?action='+actie+'picker&teller='+teller+'&soort='+soort;
	mainactor = 'BE_AJAX_Picker_Box';
	xmlHttp.open('GET',url,true);
	xmlHttp.onreadystatechange=showBox;
	xmlHttp.send(null);
}
function doSubmit() // SUBFUNCTION off processForm()
//Get form fields information for POST submit to handler (processForm function)
{
	var form=document.getElementById('ajform');
	var option='action=processform';
	for(var i in form.elements)
	{
		if ((form.elements[i].type == 'hidden') || (form.elements[i].type == 'text') || (form.elements[i].type == 'checkbox') || (document.getElementsByTagName('textarea')))
		{
			option=option+"&"+form.elements[i].name+"="+encodeURI(form.elements[i].value);
		}
 	}
 	return option;
}
function processForm(box)
{
	var parameters = doSubmit()
	var url='ajax_handler';
	xmlHttp=GetXmlHttpObject();
	mainactor =box;
	xmlHttp.open('POST',url,true);
	xmlHttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
	xmlHttp.setRequestHeader("Content-length", parameters.length);
	xmlHttp.setRequestHeader("Connection", "close");

	xmlHttp.onreadystatechange=showBox;
	xmlHttp.send(parameters);
}
function addRecord(act)
{
	xmlHttp=GetXmlHttpObject();
	var url='ajax_handler';
	url=url+'?action=add'+act;
	mainactor = 'BE_AJAX_Picker_Box';
	xmlHttp.open('GET',url,true);
	xmlHttp.onreadystatechange=showBox;
	xmlHttp.send(null);
}
function eraseRecord(id,act)
{
	input_box=confirm("Are you sure you want to erase this record?");
 	if (input_box==true)
	{
		xmlHttp=GetXmlHttpObject()
		var url='ajax_handler';
		url=url+'?id='+id+'&action=erase'+act;
		vanish = 'BE_AJAX_Picker_Box';
		xmlHttp.open('GET',url,true);
		xmlHttp.onreadystatechange=showBox;
		xmlHttp.send(null);
	}
}
function editRecord(id,table)
{
	xmlHttp=GetXmlHttpObject();
	var url='ajax_handler';
	url=url+'?id='+id+'&action=editrecord&table='+table;
	mainactor = 'BE_AJAX_Picker_Box';
	xmlHttp.open('GET',url,true);
	xmlHttp.onreadystatechange=showBox;
	xmlHttp.send(null);
}
function editUser(id)
{
	xmlHttp=GetXmlHttpObject();
	var url='ajax_handler';
	url=url+'?id='+id+'&action=edituser';
	mainactor = 'BE_AJAX_Picker_Box';
	xmlHttp.open('GET',url,true);
	xmlHttp.onreadystatechange=showBox;
	xmlHttp.send(null);
}
function editBlock(id,blockId,page,newClass,orgClass)
{
	xmlHttp=GetXmlHttpObject()
	change_bg(blockId,newClass,orgClass)
	var url='ajax_handler';
	url=url+'?id='+id+'&page='+page+'&action=show_editbox';
	mainactor = 'BE_AJAX_Blockedit_Box';
	xmlHttp.open('GET',url,true);
	xmlHttp.onreadystatechange=showBox;
	xmlHttp.send(null);
}

function removeImg(teller,imgtable)
{
	xmlHttp=GetXmlHttpObject()
	actie = 'edit'
	mainactor = imgtable+'_'+teller
	var url='ajax_handler';
	url=url+'?action=removeimg';
	vanish = 'BE_AJAX_Picker_Box';
	xmlHttp.open('GET',url,true);
	xmlHttp.onreadystatechange=showBox;
	xmlHttp.send(null);
}

function getIt(act,id,teller,dothis)
{
	xmlHttp=GetXmlHttpObject()
	actie = dothis;
	counter = teller
	recid = id;
	actor = act;
	mainactor = act+'list'
	if (actie == 'add')
	{
		counter++
	}
	if (actie == 'edit')
	{
		mainactor = act+'_'+teller
	}
	lnktxt='Add an '+act+' slot';
	guestrole='add'+act+'link'
	vanish = 'BE_AJAX_Picker_Box';
	var url='ajax_handler';
	url=url+'?teller='+teller+'&id='+id+'&action=get'+act;
	xmlHttp.open('GET',url,true);
	xmlHttp.onreadystatechange=showSlot;
	xmlHttp.send(null);
}

function showBox()
{
	if (xmlHttp.readyState==4){
		if (xmlHttp.status == 200){
			document.getElementById(mainactor).innerHTML=xmlHttp.responseText
		}
	}
}

function showSlot()
{
	if (xmlHttp.readyState==4){
		if (xmlHttp.status == 200){
			document.getElementById(vanish).innerHTML=''
			lnk = "<span onclick=\"showPicker('"+actor+"','"+counter+"','add');\">"+lnktxt+"</span>"
			document.getElementById(guestrole).innerHTML=lnk
			if (actie == 'edit')
			{
				document.getElementById(mainactor).innerHTML=xmlHttp.responseText
			}
			else
			{
				orig = document.getElementById(mainactor).innerHTML
				document.getElementById(mainactor).innerHTML=orig+xmlHttp.responseText
			}
		}
	}
}
function closeBox(css_box)
{
	document.getElementById(css_box).innerHTML=''
}

function getIdContent(spanId)
{
	window.alert(document.getElementById(spanId).innerHTML);
}

function change_bg(blockName,newClass,orgClass)
{
	res=getElementsByClass(newClass)
	for (var j=0;j<res.length;j++)
	{
		res[j].className=orgClass;
	}

	identity=document.getElementsByName(blockName);
	for (var i=0;i<identity.length;i++)
	{
		identity[i].className=newClass;
	}

	function getElementsByClass(searchClass,node,tag)
	{
		var classElements = new Array();
		if ( node == null )
			node = document;
		if ( tag == null )
			tag = '*';
		var els = node.getElementsByTagName(tag);
		var elsLen = els.length;
		var pattern = new RegExp('(^|\\s)'+searchClass+'(\\s|$)');
		for (i = 0, j = 0; i < elsLen; i++) {
			if ( pattern.test(els[i].className) ) {
				classElements[j] = els[i];
				j++;
			}
		}
		return classElements;
	}
}
function popitup(naam,titel)
{
	popwindow = window.open(naam, titel, 'width=420,height=500,location=no,menubar=no,scrollbars=no,status=no,toolbar=no,screenx=10,screeny=10'); return false
}

