var xmlHttp;
var viewAjax;

var clicked = false;
var x; 
var y;
var w;
var element;
var Xoffset;
var Yoffset;

reg = new RegExp("([0-9]*)px", "i");

function clickDiv(layer_id,event) 
	{
	clicked = true;
	element = layer_id;
	document.body.style.cursor = 'move';
	}

function moveDiv(event)
	{
	if(clicked == true) 
		{
		var pos = getPos(event);
		document.getElementById(element).style.top=pos[1] + "px";
		document.getElementById(element).style.left=pos[0] + "px";
		document.getElementById(element).style.right='auto';
		document.body.style.cursor = 'move'
		}	
	}

function unClick()
	{
	clicked = false;
	document.body.style.cursor = 'default';
	}

function fadeContent()
	{
	var mainobj = document.getElementById('content');
	mainobj.style.opacity="0.8";
	mainobj.style.filter= "alpha(opacity=80)";
	}

function contentNormal()
	{
	var mainobj = document.getElementById('content');
	mainobj.style.opacity="1.0";
	mainobj.style.filter= "alpha(opacity=100)";
	}

function hideLayers()
	{
	contentNormal();
	
	hideLayer('showDetails');
	hideLayer('saveStatus');
	hideLayer('showHistory');
	hideLayer('zoekDatum');
	hideLayer('formNote');
	hideLayer('processNote');
	}

function GetXmlHttpObject()
	{
	var xmlHttpobject=null;
	try
		{
    	xmlHttpobject=new ActiveXObject("Msxml2.XMLHTTP");
		}
	catch (e)
	   	{
	   	try
	   		{
	   		xmlHttpobject=new ActiveXObject("Microsoft.XMLHTTP");
	   		}
		catch (e)
			{	
		  	// Firefox, Opera 8.0+, Safari
		  	xmlHttpobject=new XMLHttpRequest();
		  	if(xmlHttpobject.overrideMimeType)
			  	{
				xmlHttpobject.overrideMimeType('text/html')	
				}
	  		}
  		}
	return xmlHttpobject;
	} 

function changeMenu()
	{
	viewAjax = 'menubar';
	document.getElementById(viewAjax).innerHTML="";
	
	if (viewAjax.length==0)
		{
		document.getElementById(viewAjax).innerHTML="";
		return;
		}	
	
	xmlHttp=GetXmlHttpObject();
		
	if (xmlHttp==null)
		{
		alert ("<?php echo $_SESSION['language']['SYSTEM_ALERT5'];?>");
		return;
		}
		
	var url= "vMenu.php";
	
	
	xmlHttp.onreadystatechange=viewChanged;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null); 
	
	
	}

function showLayer(layer_id,event) 
   {
   var pos = getPos(event);
   var obj = document.getElementById(layer_id);
   var mainobj = document.getElementById('content');
   if ( obj == null ) 
        { 
        alert('Layer not found:' + layer_id); 
        return; 
        } 
   else
   		{
   		mainobj.style.filter= "alpha(opacity=80)";
   		mainobj.style.opacity="0.8";
	    obj.style.visibility = "visible"; 
   		obj.style.display = "block"; 
   	   	//obj.style.left = "100px";
   		if(layer_id=='formVerzendeenheid' || layer_id=='showHistory')
   			{
   			obj.style.top = (pos[1]-400) + "px";
   			}
   		else
   			{
   			obj.style.top = (pos[1]-200) + "px";
   			}
   		
   	   	return;
   		}
   }     

function getPos(e) 
	{
	var aPosition = new Array();
	var posx = 0;
	var posy = 0;
	if (!e) var e = window.event;
	if (e.pageX || e.pageY) 	
		{
		posx = e.pageX;
		posy = e.pageY;
		}
	else if (e.clientX || e.clientY) 	
		{
		posx = e.clientX + document.body.scrollLeft+ document.documentElement.scrollLeft;
		posy = e.clientY + document.body.scrollTop+ document.documentElement.scrollTop;
		}
	aPosition[0] = posx;
	aPosition[1] = posy;
	
	return aPosition;
	}
  
function hideLayer(layer_id) 
	{
	var mainobj = document.getElementById('content');
	mainobj.style.opacity="1.0";
	mainobj.style.filter= "alpha(opacity=100)";	
	
	var obj = document.getElementById(layer_id);
	if ( obj == null ) 
		{ 
        alert( 'Layer not found:' + layer_id  ); 
        return; 
        } 
	else
		{
		obj.style.visibility = "hidden"; 
		obj.style.display = "none"; 
		return;
		}
	}

function postForm(url)
	{
	viewAjax = 'content';
	
	xmlHttp=GetXmlHttpObject();
	if (xmlHttp==null)
		{
		alert ("Uw browser ondersteund geen Ajax");
		return;
		}
	var values="";
	
	if(document.forms['ajaxForm'])
		{	
		for(i=0; i<document.forms['ajaxForm'].elements.length; i++)
			{
			if(document.forms['ajaxForm'].elements[i].name!='undefined')
				{
				values = values+"&"+document.forms['ajaxForm'].elements[i].name+"="+document.forms['ajaxForm'].elements[i].value;
				}
			}
		}
	else
		{
		for(i=0; i<document.forms['adminForm'].elements.length; i++)
			{
			if(document.forms['adminForm'].elements[i].name!='undefined')
				{
				values = values+"&"+document.forms['adminForm'].elements[i].name+"="+document.forms['adminForm'].elements[i].value;
				}
			}
		}
	
	//xmlHttp.onreadystatechange=viewChanged;

	xmlHttp.open("POST",url,false);
		
	xmlHttp.setRequestHeader("Content-type","application/x-www-form-urlencoded");
	xmlHttp.send(values);

	document.getElementById(viewAjax).innerHTML=xmlHttp.responseText;
	return
	}

function openPas(Voornaam,Tussenvoegsel,Achternaam,Barcode)
{

var form = document.createElement("form");
form.setAttribute("name", "pas");
form.setAttribute("method", "POST");
form.setAttribute("action", "http://portal.trans-mission.nl/portal/klok/createPas.php");
form.setAttribute("target", "_blank");

var input = document.createElement('input');
input.type = 'hidden';
input.name = 'Voornaam';
input.value = Voornaam;
form.appendChild(input);

var input = document.createElement('input');
input.type = 'hidden';
input.name = 'Tussenvoegsel';
input.value = Tussenvoegsel;
form.appendChild(input);

var input = document.createElement('input');
input.type = 'hidden';
input.name = 'Achternaam';
input.value = Achternaam;
form.appendChild(input);

var input = document.createElement('input');
input.type = 'hidden';
input.name = 'Barcode';
input.value = Barcode;
form.appendChild(input);

document.body.appendChild(form);
form.submit();

document.body.removeChild(form);

}


function openPOD(opdrachtid,depot,verlader,postcode)
	{
	
	var form = document.createElement("form");
	form.setAttribute("name", "POD"+opdrachtid);
    form.setAttribute("method", "POST");
    form.setAttribute("action", "http://portal.trans-mission.nl/portal/tt/create_PDF.php?uitvoer=PDF");
    form.setAttribute("target", "_blank");
    
    var input = document.createElement('input');
    input.type = 'hidden';
    input.name = 'opdrachtid';
    input.value = opdrachtid;
    form.appendChild(input);
    
    var input = document.createElement('input');
    input.type = 'hidden';
    input.name = 'depot';
    input.value = depot;
    form.appendChild(input);
    
    var input = document.createElement('input');
    input.type = 'hidden';
    input.name = 'verlader';
    input.value = verlader;
    form.appendChild(input);
    
    var input = document.createElement('input');
    input.type = 'hidden';
    input.name = 'postcode';
    input.value = postcode;
    form.appendChild(input);
    
    document.body.appendChild(form);
    form.submit();
    
    document.body.removeChild(form);
    
	}

function reloadForm(table,process,view,form,filter,code,pagina,sorteren)
	{
	xmlHttp=GetXmlHttpObject();
	if (xmlHttp==null)
		{
		alert ("<?php echo $_SESSION['language']['SYSTEM_ALERT5'];?>");
		return;
		}
	if(view!='')
		{
		var url=view + ".php";	
		}
	else
		{
		var url="vAdmin.php";
		}

	url=url+"?sid="+Math.random();
	url=url+"&table="+table;
	url=url+"&process="+process;
	url=url+"&view="+view;
	url=url+"&form="+form;
	url=url+"&filter="+filter;
	url=url+"&code="+code;
	url=url+"&pagina="+pagina;
	url=url+"&sorteren="+sorteren;
	$url = '';

	for (var x=0; document.adminForm.elements[x]; x++ ) 
		{
		var field = document.adminForm.elements[x].name;	
		if(document.adminForm.elements[x].type=="checkbox")
			{
			if(document.adminForm.elements[x].checked==true)
			 	{
				url = url+"&"+field+"="+document.adminForm.elements[x].value;
				}
			}
		else
			{	
			var value = document.adminForm.elements[x].value;
			url = url+"&"+field+"="+escape(value);
			}
		}
	
	viewAjax = 'content';
	
	xmlHttp.onreadystatechange=viewChanged;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
	return;
	}


function showForm(table,id,process,sorteren,pagina,view,filter,code,form)
	{
	viewAjax = 'content';
	document.getElementById(viewAjax).innerHTML="";
	xmlHttp=GetXmlHttpObject();
	if (xmlHttp==null)
 		{
  		alert ("<?php echo $_SESSION['language']['SYSTEM_ALERT5'];?>");
  		return;
  		}
			    
	var url=view + ".php";
	url=url+"?sid="+Math.random();
	url=url+"&table="+table;
	url=url+"&process="+process;
	url=url+"&sorteren="+sorteren;
	url=url+"&pagina="+pagina;
	url=url+"&filter="+filter;
	url=url+"&code="+code;
	url=url+"&form="+form;
	url=url+"&id="+id;

	xmlHttp.onreadystatechange=viewChanged;
	xmlHttp.open("GET",url,false);
	xmlHttp.send(null);
	
	if(view=='vAdmin' && table=='DepotStatus' && process=='change')
		{	
		rebuildselect('PORTAL','changeGroep','DepotStatusGroepID','DepotID',document.adminForm.DepotID.value);
		}
	return;
	
	}

function changeView(view,form,table,orderby,ordertype)
	{
	viewAjax = 'content';
	if (view.length==0)
  		{
		document.getElementById(viewAjax).innerHTML="";
  		return;
  		}	
	xmlHttp=GetXmlHttpObject();
	
	if (xmlHttp==null)
 		{
  		alert ("<?php echo $_SESSION['language']['SYSTEM_ALERT5'];?>");
  		return;
  		}
	
	var url= view + ".php";
	url=url+"?view="+view;
	url=url+"&form="+form;
	url=url+"&table="+table;

	if(orderby!='')
		{
		url=url+"&orderby="+orderby;
		url=url+"&ordertype="+ordertype;
		}
	xmlHttp.onreadystatechange=viewChanged;
	xmlHttp.open("GET",url,false);
	xmlHttp.send(null);
	}



function showDetails(table,id)
	{
	viewAjax = 'details';
	document.getElementById(viewAjax).innerHTML="";
	
	if(table=="Opdracht")
		{
		var mainobj = document.getElementById("showDetails");
		//mainobj.style.top = 25 + "px"; 
		}
	
	if (id.length==0)
  		{
		document.getElementById(viewAjax).innerHTML="";
  		return;
  		}	
	xmlHttp=GetXmlHttpObject();
	
	if (xmlHttp==null)
 		{
  		alert ("<?php echo $_SESSION['language']['SYSTEM_ALERT5'];?>");
  		return;
  		}
	
	var url="../portal/tDetails.php";
	url=url+"?table="+table;
	url=url+"&id="+id;
		
	xmlHttp.onreadystatechange=viewChanged;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
	}

function toonHistorie(id,type,ref,depot)
{
viewAjax = 'history';
document.getElementById(viewAjax).innerHTML="";
if (id.length==0)
		{
	document.getElementById(viewAjax).innerHTML="";
		return;
		}	
xmlHttp=GetXmlHttpObject();

if (xmlHttp==null)
		{
		alert ("<?php echo $_SESSION['language']['SYSTEM_ALERT5'];?>");
		return;
		}

var url="tt/tHistory.php";
url=url+"?id="+id;
url=url+"&type="+type;
url=url+"&ref="+ref;
url=url+"&depot="+depot;

	
xmlHttp.onreadystatechange=viewChanged;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}

function toonOpdracht(opdrachtid,nrzend)
	{
	viewAjax = 'history';
	document.getElementById(viewAjax).innerHTML="";

	xmlHttp=GetXmlHttpObject();

	if (xmlHttp==null)
		{
		alert ("<?php echo $_SESSION['language']['SYSTEM_ALERT5'];?>");
		return;
		}

	var url="tPod/tOpdracht.php";
	url=url+"?id="+opdrachtid+"&nrzend="+nrzend;
		
	xmlHttp.onreadystatechange=viewChanged;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
	}


function toonFormNote(db,table,id,mail,subject)
	{
	
	viewAjax = 'addNote';
	document.getElementById(viewAjax).innerHTML="";
	if (id.length==0)
		{
		document.getElementById(viewAjax).innerHTML="";
		return;
		}	
	xmlHttp=GetXmlHttpObject();
	
	if (xmlHttp==null)
		{
		alert ("<?php echo $_SESSION['language']['SYSTEM_ALERT5'];?>");
		return;
		}

	var url="vNotitie.php";

	url=url+"?id="+id;
	url=url+"&db="+db;
	url=url+"&table="+table;

	if(mail!='')
		{	
		url=url+"&mail="+mail;
		}
	if(subject!='')
		{	
		url=url+"&subject="+subject;
		}

	xmlHttp.onreadystatechange=viewChanged;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
	}

function saveNotitie(db,table,id,value,mail,subject)
{
viewAjax = 'saveNote';
if (id.length==0)
		{
	    document.getElementById(viewAjax).innerHTML="";
		return;
		}	
xmlHttp=GetXmlHttpObject();

if (xmlHttp==null)
		{
		alert ("<?php echo $_SESSION['language']['SYSTEM_ALERT5'];?>");
		return;
		}
	
var url="saveNote.php";

url=url+"?id="+id;
url=url+"&db="+db;
url=url+"&table="+table;
url=url+"&value="+value;
if(mail!='' && mail!=null)
	{	
	if(document.forms['addNote'].mail)
		{	
		if(document.forms['addNote'].mail.checked)
			{
			url=url+"&mail="+mail;
		
			if(subject!='')
				{	
				url=url+"&subject="+subject;
				}
			}
		}
	
	}

xmlHttp.onreadystatechange=viewChanged;
xmlHttp.open("GET",url,true);
xmlHttp.send(null);
}


function saveStatus(id,value)
	{
	viewAjax = 'status';
	if (id.length==0)
  		{
		document.getElementById(viewAjax).innerHTML="";
  		return;
  		}	
	xmlHttp=GetXmlHttpObject();
	
	if (xmlHttp==null)
 		{
  		alert ("<?php echo $_SESSION['language']['SYSTEM_ALERT5'];?>");
  		return;
  		}
		
	var url="RMA/saveStatus.php";
	
	url=url+"?id="+id;
	url=url+"&value="+value;
		
	xmlHttp.onreadystatechange=viewChanged;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);
	}

function toon_TOBIE(table,depot,pagina,sorteren)
    {
    viewAjax = 'content';
    document.getElementById(viewAjax).innerHTML="";
	
	xmlHttp=GetXmlHttpObject();
	if (xmlHttp==null)
 		{
  		alert ("<?php echo $_SESSION['language']['SYSTEM_ALERT5'];?>");
  		return;
  		}
			    
	var url="vTobie.php";
	url=url+"?sid="+Math.random();
	url=url+"&tabel="+table;
	url=url+"&depot="+depot;
   	url=url+"&pagina="+pagina;
	url=url+"&sorteren="+sorteren;
		
	xmlHttp.onreadystatechange=viewChanged;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);    
    }


function testff()
	{
	form = document.getElementByTagName('filter_tabel');
	for (i=0;i< form.length;i++) 
		{
		alert(form[i].value);
		}


	}

function filterGrid(filter,value,sorteren,view,table,form)
	{

	//viewAjax = 'showTable';
	viewAjax = 'content';
	var aFilter = new Array();
	var aValue = new Array();
	var a=0;
	if(view=='tDetails')
		{
		view='details';
		}
	
	if(filter=='navigatie')
		{
		var pagina = value;
	
		for(i=0; i<document.filter_tabel.elements.length; i++)
			{
			if(document.filter_tabel.elements[i].value!='')
				{
				aFilter[a] = document.filter_tabel.elements[i].name;
				aValue[a] = document.filter_tabel.elements[i].value;	
				a++;
				}	
			}	
		if(view=='tt/vTT' || view=='klok/vOverzicht' || view=='TN/vTN' || view=='TFI/tOverzicht' || view=='tPod/vAfwijking')
		{
		if(document.vantotdatum){	
		if(document.vantotdatum.vandatum.value!='' && document.vantotdatum.vandatum.value!='undefined' && document.vantotdatum.totdatum.value!='' && document.vantotdatum.totdatum.value!='undefined')
			{
			aFilter[a]= 'vandatum';
			aValue[a]= document.vantotdatum.vandatum.value;
			a = a+1;
			
			aFilter[a]= 'totdatum';
			aValue[a]= document.vantotdatum.totdatum.value;
			a = a+1;
			}
		}
		}
		var extentie="&pagina="+pagina;
		}	
	else
		{
		//alert(document.forms[0].name);
		var afilterFields = ["ID"];


		for(i=0; i<document.filter_tabel.elements.length; i++)
			{
			if(document.filter_tabel.elements[i].id!='' && document.filter_tabel.elements[i].name!='ID')
				{	
				
				if(document.filter_tabel.elements[i].value!='' && !in_array(document.filter_tabel.elements[i].name,afilterFields))
					{
					aFilter[a] = document.filter_tabel.elements[i].name;
					aValue[a] = document.filter_tabel.elements[i].value;	
					a = a+1;
					
					}
				afilterFields.push(document.filter_tabel.elements[i].name);
				}
		
			}
		if(view=='tt/vTT' || view=='klok/vOverzicht' || view=='TN/vTN' || view=='TFI/tOverzicht' || view=='tPod/vAfwijking')
			{
			if(document.vantotdatum){	
			if(document.vantotdatum.vandatum.value!='' && document.vantotdatum.vandatum.value!='undefined' && document.vantotdatum.totdatum.value!='' && document.vantotdatum.totdatum.value!='undefined')
				{
				aFilter[a]= 'vandatum';
				aValue[a]= document.vantotdatum.vandatum.value;
				a = a+1;
				
				aFilter[a]= 'totdatum';
				aValue[a]= document.vantotdatum.totdatum.value;
				a = a+1;
				}
			}
			
			}
		}
	

	
	document.getElementById(viewAjax).innerHTML="";
	xmlHttp=GetXmlHttpObject();
	
	var url=view+".php";
	url=url+"?table="+table;
	url=url+"&form="+form;
	if(aFilter.length>0 && filter!='navigatie')
		{
		url=url+"&filter="+aFilter;
		url=url+"&code="+aValue;
		}
	if(sorteren!='')
		{
		url = url + "&sorteren=" + sorteren;	
		}
	url= url + "&focuson=" + filter;

	xmlHttp.onreadystatechange=viewChanged;
	xmlHttp.open("GET",url,true);
	xmlHttp.send(null);    
	}


function in_array (needle, haystack, argStrict) {
    // Checks if the given value exists in the array  
    // 
    // version: 1109.2015
    // discuss at: http://phpjs.org/functions/in_array    // +   original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // +   improved by: vlado houba
    // +   input by: Billy
    // +   bugfixed by: Brett Zamir (http://brett-zamir.me)
    // *     example 1: in_array('van', ['Kevin', 'van', 'Zonneveld']);    // *     returns 1: true
    // *     example 2: in_array('vlado', {0: 'Kevin', vlado: 'van', 1: 'Zonneveld'});
    // *     returns 2: false
    // *     example 3: in_array(1, ['1', '2', '3']);
    // *     returns 3: true    // *     example 3: in_array(1, ['1', '2', '3'], false);
    // *     returns 3: true
    // *     example 4: in_array(1, ['1', '2', '3'], true);
    // *     returns 4: false
    var key = '',        strict = !! argStrict;
 
    if (strict) {
        for (key in haystack) {
            if (haystack[key] === needle) {                return true;
            }
        }
    } else {
        for (key in haystack) {            if (haystack[key] == needle) {
                return true;
            }
        }
    } 
    return false;
} 


function viewChanged() 
	{ 
	var parentElement = document.getElementById(viewAjax)	
	
	if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
		{ 
		try
			{
			parentElement.innerHTML=xmlHttp.responseText;
			}
		catch (e)
			{
			var wrappingDiv = document.createElement('div');
     			wrappingDiv.innerHTML = xmlHttp.responseText;
    			parentElement.appendChild(wrappingDiv);		 	
			}
		
		}
	
	else if(xmlHttp.readyState == 1)
		{
		try
			{
			parentElement.innerHTML = '<p><img src="http://portal.trans-mission.nl/portal/images/LoadingAnimation.gif" /><br />Even geduld aub</p>';
			}
		catch (e)
			{
			var wrappingDiv = document.createElement('div');
     			wrappingDiv.innerHTML = "<p>Even geduld aub</p>";
    			parentElement.appendChild(wrappingDiv);		 	
			}
		
		}
	
	}

	
	function showCalendar(view,table,field,jaar,maand)
		{
		viewAjax = 'toonCalendar';
		document.getElementById(viewAjax).innerHTML="";
	
		xmlHttp=GetXmlHttpObject();
		if (xmlHttp==null)
			{
			alert ("Uw browser ondersteund geen Ajax");
			return;
			}

		var url="../portal/agenda.php";
		if(field.length>0)
			{
			url=url+"?view="+view;
			url=url+"&table="+table;
			url=url+"&field="+field;
			
			if(field=='vandatum' || field=='totdatum')
				{
				if(document.vantotdatum)
				{
				var loaddate = eval("document.vantotdatum." + field + ".value;");
				if(loaddate=='')
					{
					loaddate = ''
					}
				var aDatum = loaddate.split('-');
				load_jaar = aDatum[2];
				load_maand = aDatum[1];
				load_dag = aDatum[0];
				url=url+"&load_jaar="+load_jaar;
				url=url+"&load_maand="+load_maand;
				url=url+"&load_dag="+load_dag;
				}
				}
			else
			{
			if(document.filter_tabel)
				{		
				var loaddate = eval( "document.filter_tabel." + field + ".value;");
				if(loaddate=='')
					{
					loaddate = ''
					}
				var aDatum = loaddate.split('-');
				load_jaar = aDatum[2];
				load_maand = aDatum[1];
				load_dag = aDatum[0];
				url=url+"&load_jaar="+load_jaar;
				url=url+"&load_maand="+load_maand;
				url=url+"&load_dag="+load_dag;
				}	
			}		
			url=url+"&jaar="+jaar;
			url=url+"&maand="+maand;
			
			xmlHttp.onreadystatechange=viewChanged;
			xmlHttp.open("GET",url,true);
			xmlHttp.send(null);
			}
		else
			{
			hideLayer('zoekDatum');	
			}
		}
	function emptyFilter(field)
		{
		if(eval("document.filter_tabel." + field))
			{
			eval("document.filter_tabel." + field + ".value = ''");
			}
		}
	
	function rebuildselect(db,view,select,filter,code)
		{
		if(document.getElementById(view))
			{
		viewAjax = view;
	
		document.getElementById(viewAjax).innerHTML="";
		xmlHttp=GetXmlHttpObject();
		if (xmlHttp==null)
	 		{
	  		alert ("<?php echo $_SESSION['language']['SYSTEM_ALERT5'];?>");
	  		return;
	  		}
		
		var url="../portal/changeSelect.php";
		
		url=url+"?select="+select;
		url=url+"&filter="+filter;
		url=url+"&code="+code;
		url=url+"&db="+db;

		xmlHttp.onreadystatechange=viewChanged;
		xmlHttp.open("GET",url,true);
		xmlHttp.send(null);
		document.getElementById(viewAjax);
		}
		}
    
