/* vink alle vinkdingen op een pagina */
function vink(modus)
{
	// alle 'inputs'
	var d = document;	
	if(!d.getElementsByTagName) return false;
	var inputs = d.getElementsByTagName("input");
	for(i=0;i<inputs.length;i++)
	{
		var el = inputs[i];
		if(el.getAttribute("type")=="checkbox")
		{
			if(modus == 1)
			{	// aanvinken
				el.setAttribute("checked","true");
			}
			else
			{	// afvinken
				el.removeAttribute("checked");		
			}
		}
	}
}

/* Vraag om toestemming */
function vraag(vraag, actie)
{
	antwoord = confirm(vraag);
	if(antwoord)
	{
		window.location = actie;	
	}
}

/* verplaats een optie van een <select> naar een andere select */
function select_naarLinks(formulier,selectLinks, selectRechts, hidden)
{
    var object = document.getElementById(formulier);
	var sr = document.getElementById(selectRechts);
	var sl = document.getElementById(selectLinks);
	var index = sr.selectedIndex;

    if (index > -1) {
        var newoption = new Option(sr.options[index].text, sr.options[index].value, true, true);
        sl.options[sl.length] = newoption;
        if (!document.getElementById) history.go(0);
        sr.options[index] = null;
        sr.selectedIndex = 0;
		
		// update het hidden formuliertje
		select_updateHidden(formulier, hidden, selectLinks);
    }
}
function select_naarRechts(formulier,selectLinks, selectRechts, hidden)
{
    var object = document.getElementById(formulier);
	var sr = document.getElementById(selectRechts);
	var sl = document.getElementById(selectLinks);
	var index = sl.selectedIndex;

    if (index > -1) {
        var newoption = new Option(sl.options[index].text, sl.options[index].value, true, true);
        sr.options[sr.length] = newoption;
        if (!document.getElementById) history.go(0);
        sl.options[index] = null;
        sl.selectedIndex = 0;
		
		// update het hidden formuliertje
		select_updateHidden(formulier, hidden, selectLinks);
    }
}

/* Update het hidden-veld dat de uiteindelijke waarde bevat */
function select_updateHidden(formulier, hidden, selectLinks)
{
	form = document.getElementById(formulier);
	links = document.getElementById(selectLinks);

	// loop
	var waarde = "";
	for(var i=0; i<links.length; i++)
	{
		if(i==(links.length)-1)
		{
			waarde += links.options[i].value;
		}
		else
		{
			waarde += links.options[i].value+",";
		}
	}
	
	// Opslaan
	element = document.getElementById(hidden)
	element.value = waarde;
	//alert(element.value);
}

/* ga een pagina terug, ook in een frame in firefox :s */
function terug()
{
	history.back();
}

/* open een popup */
var popUpWin=0;
function smsWindow(URLStr, width, height)
{
  var left = 200;
  var top = 200;
  if(popUpWin)
  {
    if(!popUpWin.closed) popUpWin.close();
  }
  popUpWin = window.open(URLStr, 'popUpWin', 'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=yes,copyhistory=yes,width='+width+',height='+height+',left='+left+', top='+top+',screenX='+left+',screenY='+top+'');
}

function popUpWindow(URLStr, left, top, width, height)
{
  if(popUpWin)
  {
    if(!popUpWin.closed) popUpWin.close();
  }
  popUpWin = open(URLStr, 'popUpWin', 'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=yes,copyhistory=yes,width='+width+',height='+height+',left='+left+', top='+top+',screenX='+left+',screenY='+top+'');
}



/* start pagina 
function initPage()
{
	$("pagina").show();
	$("lader").hide();
	
	// errors goedzetten
	var onder = $('debug');
	var boven = $('error');
	if(boven != null && onder != null)
	{
		boven.appendChild(onder);
	}
}*/
/* start pagina */
function initPage()
{
	// preloader en pagina
	$("pagina").show();
	//$("pagina").style.display = 'block';
	$("lader").hide();
	
	// errors goedzetten
	var onder = $('error');
	var boven = $('error_target');
	
	if(boven != null && onder != null)
	{
		boven.appendChild(onder);
		Element.show(boven);
	}
	
	// prompts goedzetten
	var prompts = $('prompt');
	var prompts_target = $('prompt_target');
	if(prompts != null && prompts_target != null)
	{
		prompts_target.appendChild(prompts);
		Element.show(prompts_target);
	}
	// meldingen goedzetten
	var melding = $('melding');
	var melding_target = $('melding_target');
	if(melding != null && melding_target != null)
	{
		melding_target.appendChild(melding);
		Element.show(melding_target);
	}	
}
//$('pagina').hide();
Event.observe(window, 'load', initPage);

/* tabs in figurantenoverzicht */
function tab_open(rowID,tabID)
{
	k = window.document;
	// eerst alle <div>'s in deze tabserie weer uitzetten
	alle_div = k.getElementsByTagName("div").length;
	for(i=0;i<alle_div;i++)
	{
		div = k.getElementsByTagName("div")[i];
		div_naam = div.id;
		if(div_naam.indexOf("tab_"+rowID+"_")==0)
		{
			//alert(ul_naam);
			div.style.display = "none";
		}
	}	
	alle_li = k.getElementsByTagName("li").length;
	// alle li's leeghalen
	for(i=0;i<alle_li;i++)
	{
		li = k.getElementsByTagName("li")[i];
		li_naam = li.id;
		if(li_naam.indexOf("header_"+rowID+"_")==0)
		{
			//alert(ul_naam);
			li.setAttribute("class","");
			li.setAttribute("className","");
		}
	}		
	// header goedzetten
	// goede div openzetten
	cur_div = k.getElementById("tab_"+rowID+"_"+tabID);
	cur_div.style.display = "block";
	// goede header aanzetten
	cur_header = k.getElementById("header_"+rowID+"_"+tabID);
	cur_header.setAttribute("class","huidig");
	cur_header.setAttribute("className","huidig");
	//element.setAttribute("class","huidig");
}

/* Tel de tekens in een textarea, en kort deze textarea eventueel in */
// Functie tbv SMS
function sms_teller(formnaam,veldnaam,maximum) 
{
	form = document.forms[formnaam];
	veld_tekst = form.elements[veldnaam];
	if (veld_tekst.value.length > maximum) // if too long...trim it!
	{
		veld_tekst.value = veld_tekst.value.substring(0, maximum);
	}
	else
	{// otherwise, update 'characters left' counter
		form.elements[veldnaam+"_sms_teller"].value = maximum - veld_tekst.value.length;
	}
}

/* img src wisselen bij img_X */
function foto_wissel(wat, pad)
{
	k = window.document;
	element = k.getElementById(wat);
	element.src = pad;
}

/* functie voor formCreate class, veld: datum */
function formCreate_setDate(formNaam,fieldNaam)
{	
	dag = document.forms[0].elements[fieldNaam+"_formCreate_dag"].value;
	maand = document.forms[0].elements[fieldNaam+"_formCreate_maand"].value;
	jaar = document.forms[0].elements[fieldNaam+"_formCreate_jaar"].value;
	
	datum = dag+"-"+maand+"-"+jaar
	document.forms[0].elements[fieldNaam].value = datum;
}

/* functie voor formCreate class, veld: tijd */
function formCreate_setTime(formNaam,fieldNaam)
{	
	dag = document.forms[0].elements[fieldNaam+"_formCreate_dag"].value;
	maand = document.forms[0].elements[fieldNaam+"_formCreate_maand"].value;
	jaar = document.forms[0].elements[fieldNaam+"_formCreate_jaar"].value;
	uur = document.forms[0].elements[fieldNaam+"_formCreate_uur"].value;
	minuut = document.forms[0].elements[fieldNaam+"_formCreate_minuut"].value;
	
	datum = uur+":"+minuut+"-"+dag+"-"+maand+"-"+jaar
	document.forms[0].elements[fieldNaam].value = datum;
}

// open andere velden wanneer een andere variabele in het zoekveld geselecteerd wordt
function zoek_veld(tabID,rij,varNaam)
{
	if(varNaam.length>0)
	{
		k = window.document;
		// eerst alle <div>'s in deze tabserie weer uitzetten
		alle_div = k.getElementsByTagName("div").length;
		for(i=0;i<alle_div;i++)
		{
			div = k.getElementsByTagName("div")[i];
			div_naam = div.id;
			if(div_naam.indexOf("zoek_veld_"+tabID+"_"+rij+"_")==0)
			{
				//alert(ul_naam);
				div.style.display = "none";
			}
		}		
		
		// uitgezet, nu de goede weer aanzetten
		element = k.getElementById("zoek_veld_"+tabID+"_"+rij+"_"+varNaam);
		element.style.display = "block";
		return true;
	}
}

// verstuur de zoekopdracht
function zoek_verstuur(tabID, path)
{
	var get = "";
	var k = window.document;
	selects = k.getElementsByTagName("select");
	count = selects.length;
	for(i=0;i<count;i++)
	{
		sel = selects[i];
		sel_name = sel.name;
		if(sel_name.indexOf("zoek_vars_"+tabID+"_")==0 && sel_name.indexOf("_koppeling")==-1 && sel.value != "false")
		{
			// wat is de huidige row?
			rowID = sel_name.substr(12,1);
			
			// wat is er geselecteerd in de select?
			sel_text = sel.options[sel.selectedIndex].text;
			
			// de waarde van de variabelen select
			get += "&"+sel_name+"="+sel.value;
			
			// de waarde van de koppeling
			kop_naam = "zoek_vars_"+tabID+"_"+rowID+"_koppeling";
			koppeling = k.getElementsByName(kop_naam);
			if(koppeling.length==1)
			{
				get += "&"+koppeling[kop_naam].name+"="+koppeling[kop_naam].value;
			}

			// variabele text - value
			variabelen = k.getElementsByTagName("input");
			for(c=0;c<variabelen.length;c++)
			{
				variabele = variabelen[c];
				//get += variabele.name+"\n";
				if(variabele.name.indexOf("zoek_veld_"+tabID+"_"+rowID+"_"+sel.value)==0)
				{
					get += "&"+variabele.name+"="+variabele.value;
				}
			}
			
			// variabele select
			variabelen = k.getElementsByTagName("select");
			for(c=0;c<variabelen.length;c++)
			{
				variabele = variabelen[c];
				//get += variabele.name+"\n";
				if(variabele.name.indexOf("zoek_veld_"+tabID+"_"+rowID+"_"+sel.value)==0)
				{
					get += "&"+variabele.name+"="+variabele.value;
				}
			}
		}
	}
	
	if(get.length>0)
	{
		window.location = path+get;
	}
	else
	{
		alert("Selecteer minstens n variabele waarop je wil zoeken");
	}
}

/* open of sluit een <ul> */
function ul_open(wat)
{	/* Open een submenu */
	var k = window.document;
	var pre = "../repository/images/mappen/";
	
	// nu de huidige openwerpen
	var element = k.getElementById('ul_'+wat);
	var stijl = element.style.display;
	var img = k.getElementById('img_'+wat);
	if(stijl=='block')
	{
		element.style.display = 'none';
		img.src = pre+"map.gif";
	}
	else
	{
		element.style.display = 'block';
		img.src = pre+"map_open.gif";
	}
}

// open/sluit tinymce
var tinyMCEmode = true;
function toggleEditorMode(sEditorID) {
    try {
        if(tinyMCEmode) {
            tinyMCE.removeMCEControl(tinyMCE.getEditorId(sEditorID));
            tinyMCEmode = false;
        } else {
            tinyMCE.addMCEControl(document.getElementById(sEditorID), sEditorID);
            tinyMCEmode = true;
        }
    } catch(e) {
        //error handling
    }
}