/**
 * Checks warnings and reposition warning layer
 */

function checkWarning () {
	var i, x;
	var element;
	var ref;
	
	var divs = document.getElementsByTagName('div');

	for(i=0; i<divs.length;i++) {
		ref = divs.item(i);
		
		if(ref.getAttribute('class') && ref.getAttribute('class').indexOf('form_failure') >= 0)
		{
			ref.style.display = '';
		}		
	}
}

function showError(e){
  alert(e);
}

function switchContent(item1Name, item2Name)
{
	document.getElementById(item1Name).style.display = 'none';
	document.getElementById(item2Name).style.display = '';
}

function get(url, consumer, progress_bar, cache){
	var message = Clean.createSimpleMessage(url, consumer, showError);
	if(cache != null)
		message.cache = cache;
	if(progress_bar != null){
		var progress = new FlyProgressBar(document, progress_bar);
		message.progressBar = progress;  
	}
	Clean.doGet(message); 
}

function ajaxSuccess(doc) {
	var xml = doc.responseXML;
	if(xml && xml.getElementsByTagName('operation').item(0).getAttribute('status') == 'ok') {
		return true;
	} else {
		return false;
	}
}

function getValueFromCheckbox(value) {
	if(value.checked) return 1;
	else return 0;
}

function post(url, consumer, value, onComplete) {
	var message = Clean.createSimpleMessage(url, consumer, showError);
	message.onComplete = onComplete;
	Clean.doPost(message, value, false);
}

function postAndUpdateTable(url, consumer, form, listurl, listxslt, table){
  var message = Clean.createSimpleMessage(url, consumer, showError);
  message.onComplete = function(thing) { 
  							consumer.value = null;
  						};
  Clean.sendFormByName(message, form, false);
} 

function transform(url, xslt, consumer, progress_bar){
  var message = Clean.createMessage(url, xslt, consumer, true, function(error) {alert(error);});
  Clean.doGet(message);  
} 

function bla () {
	message.onComplete = function(thing) { 
  							consumer.value = null;
  							transform(listurl, listxslt, table, null); 
						};
}

function getLeft(MyObject)
{
	if (MyObject.offsetParent)
	    return (MyObject.offsetLeft + getLeft(MyObject.offsetParent));
	else
	    return (MyObject.offsetLeft);
}

function getTop(MyObject)
{
	if (MyObject.offsetParent)
	    return (MyObject.offsetTop + getTop(MyObject.offsetParent));
	else
	    return (MyObject.offsetTop);
}

function confirmDelete(url)
{
	if (confirm("Are you sure you want to delete? This cannot be reversed!")) {
        window.location=url;
        return true;
    } 
    return false;
}

function popup(url)
{
	var winpops=window.open(url,"","width=300,height=400,scrollbars")
}

function toggleForm(img, form)
{
	if(document.getElementById(form).style.display == 'none')
	{
		document.getElementById(form).style.display = 'block';
		img.src = templateUrl + '/images/icons/application_form.png';
	}
	else {
		document.getElementById(form).style.display = 'none';
		img.src = templateUrl + '/images/icons/application_go.png';
	}
}

function checkFilter(pForm, pObj, pFlag) {
	var elem;
	for (var iCount=0;;iCount++) {
		elem = pObj + '[' + iCount + ']';
		if (!pForm.elements[elem]) break;
		pForm.elements[elem].checked = pFlag;
	}
}

function transfer(element, target)
{
	document.getElementById(target).innerHTML = document.getElementById(element).innerHTML;
}

function toggleDetail(img, element)
{
	if(document.getElementById(element).style.display == 'none')
	{
		show(element);
		img.src = templateUrl + '/images/expand_minus.png';
	}
	else {
		verberg(element);
		img.src = templateUrl + '/images/expand_plus.png';
	}
}

function show(element)
{
	document.getElementById(element).style.display='';
}

function verberg(id)
{
	document.getElementById(id).style.display='none';
}

function loadLogicOnForms()
{
	var i;
    var forms = document.forms;
	
	for(i=0;i<forms.length;i++) {
		loadLogicOnForm(forms[i]);
	}
}

function loadLogicOnForm(form)
{
	var i;
	if(form.elements.length > 0) {
		for(i=0; i<form.elements.length; i++) {
			if(form.elements[i].tagName == 'SELECT') {
				if(form.elements[i].attributes.getNamedItem('onchange')) {
					if ( form.elements[i].fireEvent ) // IE 5.5(WIN)
					{
						form.elements[i].fireEvent("onchange");
					}
					else // Mozilla, Safari...
					{
						var evt = document.createEvent("HTMLEvents");
						evt.initEvent("change",true,true);
						form.elements[i].dispatchEvent( evt );
					}
				}
			}
			
			if(form.elements[i].tagName == 'INPUT' && form.elements[i].attributes.getNamedItem('type').nodeValue == 'checkbox') {
				if(form.elements[i].attributes.getNamedItem('onclick')) {
					form.elements[i].checked = !form.elements[i].checked;
					form.elements[i].click();
				}
			}
		}
	}
}

function verbergRange(formfield, index, begin, eind)
{
	if(formfield.selectedIndex == index)
	{
		var i;
		var currentNode = document.getElementById(begin);
		
		while(currentNode = currentNode.nextSibling) {
			if(currentNode.attributes != null &&
			   currentNode.attributes.getNamedItem('id') != null && 
			   currentNode.attributes.getNamedItem('id').nodeValue == eind)
				break;
				
			if(currentNode.attributes != null &&
			   currentNode.attributes.getNamedItem('class') != null &&
			   currentNode.attributes.getNamedItem('class').nodeValue == 'questionBox')
				currentNode.style.display = 'none';
		}
	}
}

function showRange(formfield, index, begin)
{
	if(formfield.selectedIndex == index)
	{
		var i;
		var currentNode = document.getElementById(begin);
		
		while(currentNode = currentNode.nextSibling) {
			if(currentNode.attributes != null &&
			   currentNode.attributes.getNamedItem('class') != null &&
			   currentNode.attributes.getNamedItem('class').nodeValue == 'questionBox')
				currentNode.style.display = '';
		}
	}
}

function showAllQuestionBox(formfield, index)
{
	if(formfield.selectedIndex == index)
	{
		return _showAllQuestionBox();
	}
}

function _showAllQuestionBox()
{
	var boxes = document.getElementsByTagName('div');
	var i;
	
	for(i=0; i<boxes.length; i++)
		if(	boxes.item(i).attributes.getNamedItem('class') && 
			boxes.item(i).attributes.getNamedItem('class').nodeValue == 'questionBox')
		
			boxes.item(i).style.display='';
}

function latenzien(id,veld,waarde)
{
	x = veld.selectedIndex;
	if ([x] == waarde)
	{document.getElementById(id).style.display = '';}
	else
	{document.getElementById(id).style.display = 'none';}
}

function latenziencheckbox(id,veld)
{
	if (veld.checked == true)
	{document.getElementById(id).style.display = '';}
	else
	{document.getElementById(id).style.display = 'none';}
}

