// [WB] domready event
window.addEvent('domready', function() {
	// alles/niets aanvinken functionaliteit (meerdere modules)
	var chkAllesAanvinken = $('chkAllesAanvinken');
	if ($defined(chkAllesAanvinken)) {
		chkAllesAanvinken.addEvent('click', function() {
			$$('input[type=checkbox][class=chkActie]').each(function(chkActie) {
				chkActie.set('checked', chkAllesAanvinken.get('checked'));
			});
		});
		
		$$('input[type=checkbox][class=chkActie]').each(function(chkActie) {
			chkActie.addEvent('click', function() {
				if (chkActie.get('checked')) {
					// controleer of ALLES is aangevinkt: zo ja, chkAllesAanvinken weer aanvinken
					if (($$('input[type=checkbox][class=chkActie]').length - $$('input[type=checkbox][class=chkActie][checked]').length) == 0) {
						chkAllesAanvinken.set('checked', true);
					}
				} else {
					// chkAllesAanvinken kan nu niet meer aangevinkt blijven
					chkAllesAanvinken.set('checked', false);
				}
			});	
		});
	}
	
	var divSchijfgebruik = $('schijfgebruik');
	if ($defined(divSchijfgebruik)) {		
		// achterhaal met behulp van de huidige URL het pad voor het ajax-bestand
		var pad = document.location.href;
		var pad = pad.substring(0,pad.lastIndexOf("/"));
		var pad = pad.substring(0,pad.lastIndexOf("/")+1);
		var reqUpdate = new Request.JSON ({
			'url': pad + 'ajax.php',
			'data': {			
				'xaction': 	'build_schijfgebruik'
			},
			'onComplete': function(res) {					
				divSchijfgebruik.set('html', res.html);
			}				
		});
		reqUpdate.send();
	}
	
	var divModulegebruik = $('modulegebruik');
	if ($defined(divModulegebruik)) {		
		// achterhaal met behulp van de huidige URL het pad voor het ajax-bestand
		var pad = document.location.href;
		var pad = pad.substring(0,pad.lastIndexOf("/"));
		var pad = pad.substring(0,pad.lastIndexOf("/")+1);
		var reqUpdate = new Request.JSON ({
			'url': pad + 'ajax.php',
			'data': {			
				'xaction': 	'build_modulegebruik'
			},
			'onComplete': function(res) {					
				divModulegebruik.set('html', res.html);
			}				
		});
		reqUpdate.send();
	}	
});

// [WB] functie om een actie uit te voeren met meerdere items tegelijkertijd
function jsCheckedAction(action) {
	var id_items = [];
	var object_items = $$('input[type=checkbox][class=chkActie][checked]');
	if (object_items.length > 0) {
		object_items.each(function(item) {
			id_items.include(item.get('id').replace('chkActieItem', ''));
		});
		this.document.location.href = this.document.location.href + ((this.document.location.href.indexOf('?') > -1) ? '&' : '?') + 'action=' + action + '&items=' + id_items.join('|');
	}			
}

function jsSend( frmid )
{
	document.getElementById('action').value	= 'send';
	var form				= document.getElementById( frmid );
	var check_count	= 0;

	if( validate( frmid ) )
	{
		for( i = 0; i < form.elements.length; i++ )
		{
			if( form.elements[i].type == 'checkbox' && form.elements[i].checked == true )
			{
				check_count++;
			}
		}

		if( check_count > 0 )
		{
			form.submit();
		}
		else
		{
			alert( 'Geen ontvangers geselecteerd' );
			showDiv('selOntvanger');
			return false;
		}
	}
	else
	{
		return false;
	}
}

function jsSave( frmid )
{
	document.getElementById('action').value	= 'save';
	var form	= document.getElementById( frmid );

	if( validate( frmid ) )
	{
		form.submit();
	}
	else
	{
		return false;
	}
}

function checkVerzoek()
{
	var pid	= document.getElementById('pid');
	var oid	= document.getElementById('oid');

	if( pid.value == '' && oid.value == '' )
	{
		alert('U moet een persoon of organisatie kiezen');
		return false;
	}
	else
	{
		return true;
	}
}

function validate( frmid )
{
	var objForm	= document.getElementById(frmid);
	var rw		= true;

	/* alert( frmid ); */
	for( a = 0; a < objForm.elements.length; a++ )
	{
		var formItem	= objForm.elements[a];

		if( formItem.name != undefined )
		{
			var arr_name	= formItem.name.split('_');
		}
		else
		{
			var arr_name	= new Array('non', 'non');
		}

		if( formItem.value == "" && formItem.type != 'hidden' && formItem.type != 'checkbox' && arr_name[1] != 'non')
		{
			alert(formItem.name.replace('_', ' ') + ': Niets ingevuld');
			formItem.focus();
			rw = false;
			return false;
		}

		if( formItem.name == 'Email' || formItem.name == 'email' )
		{
			var emailfilter=/^\w+[\+\.\w-]*@([\w-]+\.)*\w+[\w-]*\.([a-z]{2,4}|\d+)$/i
			var returnval = emailfilter.test(formItem.value);

			if( returnval == false )
			{
				alert(formItem.name + ': Geen geldig e-mail adres');
				formItem.focus();
				rw = false;
				return false;
			}
		}
	}

	if( frmid == 'frmKalender' )
	{
		// controleer of er iets is aangevinkt
		var arrPersoon	= document.getElementsByName('Persoon[]');
		var arrGroep	= document.getElementsByName('Groep[]');
		var arrKlas		= document.getElementsByName('Klas[]');
		var objKid		= document.getElementById('kid');

		var count_checked	= 0;

		for( i = 0; i < arrPersoon.length; i++ )
		{
			if( arrPersoon[ i ].checked == true )
			{
				count_checked++;
			}
		}

		for( i = 0; i < arrGroep.length; i++ )
		{
			if( arrGroep[ i ].checked == true )
			{
				count_checked++;
			}
		}

		for( i = 0; i < arrKlas.length; i++ )
		{
			if( arrKlas[ i ].checked == true )
			{
				count_checked++;
			}
		}

		if( objKid != undefined && objKid.value != '' )
		{
			count_checked++;
		}

		if( count_checked == 0 )
		{
			alert( 'U heeft geen kalender geselecteerd' );
			return false;
			rw	= false;
		}
	}
	return rw;
}

function toggleTr( nummer, type ) {
	if( type == undefined )
	{
		type = 'Groep';
	}

	if( type == 'Groep' )
	{
		var objTr	= document.getElementById( 'Groep' + nummer );
		var objImg	= document.getElementById( 'toggleGroep' + nummer );
	}
	else if( type == 'Klas' )
	{
		var objTr	= document.getElementById( 'Klas' + nummer );
		var objImg	= document.getElementById( 'toggleKlas' + nummer );
	}
	else if( type == 'Bericht' )
	{
		var objTr	= document.getElementById( 'Bericht' + nummer );
		var objImg	= document.getElementById( 'toggleBericht' + nummer );
	}
	else if ( type == 'Overige' )
	{
		var objTr	= document.getElementById( 'Overige' + nummer );
		var objImg	= document.getElementById( 'toggleOverige' + nummer );
	}

	if( objTr.className == 'hidden' )
	{
		objImg.src			= 'images/b_minus.png';
		objImg.alt			= 'Inklappen';
		objImg.title		= 'Inklappen';
		objTr.className	= 'visible';

	}
	else if( objTr.className =='visible' )
	{
		objImg.src			= 'images/b_plus.png';
		objImg.alt			= 'Uitklappen';
		objImg.title		= 'Uitklappen';
		objTr.className	= 'hidden';
	}
}

function updateSel( formName )
{
	cntr	= 0;
	for( i = 0; i < document.forms[formName].elements.length; i++ )
	{
		if( document.forms[formName].elements[i].type == 'checkbox' && document.forms[formName].elements[i].checked == true )
		{
			cntr++;
		}
	}

	document.getElementById('selTekst').innerHTML = cntr + ' ontvanger(s) geselecteerd';
}

function selectAll( formName, tabindex )
{
	for( i = 0; i < document.forms[formName].elements.length; i++ )
	{
		if( document.forms[formName].elements[i].type == 'checkbox' && ( tabindex == undefined || document.forms[formName].elements[i].tabIndex == tabindex ) )
		{
			document.forms[formName].elements[i].checked = true;
		}
	}
}

function deselectAll( formName, tabindex )
{
	for( i = 0; i < document.forms[formName].elements.length; i++ )
	{
		if( document.forms[formName].elements[i].type == 'checkbox' && ( tabindex == undefined || document.forms[formName].elements[i].tabIndex == tabindex ) )
		{
			document.forms[formName].elements[i].checked = false;
		}
	}
}

function toggleSelect( fsName, num, formName )
{
	for( i = 1; i <= num; i++ )
	{
		var obj	= document.getElementById( fsName + '_' + i );

		if( obj.type == 'checkbox' )
		{
			if( obj.checked == true )
			{
				obj.checked = false;
			}
			else
			{
				obj.checked = true;
			}
		}
	}

	updateSel( formName );
}

function toggleDiv( divid )
{
	var obj	= document.getElementById( divid );

	if( obj.style.display == 'block' )
	{
		obj.style.display = 'none';
	}
	else
	{
		obj.style.display	= 'block';
	}
}

function hideDiv( divid )
{
	var obj	= document.getElementById( divid );

	if( obj.style.display == 'block' )
	{
		obj.style.display = 'none';
	}
}

function showDiv( divid )
{
	var obj	= document.getElementById( divid );

	obj.style.display = 'block';
}

function toggleUL( ulid, setcookie )
{
	if( $( ulid ) )
	{
		if( $( ulid ).getStyle('display') == 'none' || $( ulid ).getStyle('display') == '' )
		{
			$( ulid ).setStyle( 'display', 'block' );
		}
		else if( $( ulid ).getStyle('display') == 'block' )
		{
			$( ulid ).setStyle( 'display', 'none' );
		}

		if( ( setcookie == undefined || setcookie == 'true' ) )
		{
			var ajaxRequest = new Request.JSON ({
					url: '/ajax/set_cookie.php',
					data: {
						'ul_id': ulid
					},
					onComplete: function( res ) {
						if( res )
						{
							// alert( res.output );
						}
					}
				}
			).send();
		}
	}
}

function showUL( ulid )
{
	$( ulid ).setStyle( 'display', 'block' );
}
