/* GeefSamen (c) */

function focusZoekVeld()
{
	if ( $(this).val().indexOf('Zoek') > -1 )
	{
		$(this).val('');
	}
}

function checkZoekVeld()
{
	zoekVeld = varGet(".zoekVeld");

	return zoekVeld.indexOf('Zoek') == -1 && zoekVeld.length ? true : false;	
}

// maakt van 5 => vijf
function getalNaarLabel(getal)
{
	return getalWoorden[getal] == null ? formatNumber(getal) : getalWoorden[getal];
}

// dumpt str als HTML in de body
function debug(str)
{
	$('body').prepend('<p class="debugJs">'+str+'</p>');
}

// blablabla...blablabla
function kortaf(str, maxchars, toonTitel)
{
	if ( str.length > maxchars )
	{
		if ( toonTitel )
		{
			return '<span title="'+kortaf(str, maxchars*2, false)+'">'+$.trim(str.substr(0, maxchars-2))+'..'+'</span>';
		}
		else
		{
			return $.trim(str.substr(0, maxchars-2))+'..';
		}
	}
	else
	{
		return str;
	}
}

// van 01/03/2008 naar 1220392800000
function dateToStamp(formattedDate)
{
	if ( formattedDate )
	{
		dateObj = new Date();
		dateObj.setFullYear(formattedDate.substr(6, 4), parseInt(formattedDate.substr(4, 2))-1, parseInt(formattedDate.substr(1, 2)));
		return Math.round(dateObj.getTime() / 1000);
	}
	else
	{
		return 0;
	}
}

// applied classes op form inputs
function bakeFormStyles()
{
	// form styles
	$('select, textarea, :text, :password').addClass('text').addClass('inputbox');
	$(':radio').addClass('radio');
	$(':checkbox').addClass('checkbox');
	$(':submit, :reset, :button').addClass('button1');
	$(':file').addClass('file');
	$(':image').not('.knopPijl').addClass('image');
}

// toon status box met message
function showStatusMsg(statusMsg, useStatusId)
{
	var statusMsgId = useStatusId ? 'status'+ucfirst(useStatusId) : 'statusMainContent';

	$("#"+statusMsgId).html('<span>'+hoofdletterEnPuntje(statusMsg)+'</span>').fadeIn('slow');
	hideMsgTimer("#"+statusMsgId);
}

// toon error box met message
function showErrorMsg(errorMsg, useErrorId)
{
	var errorMsgId = useErrorId ? 'error'+ucfirst(useErrorId) : 'errorMainContent';

	$("#"+errorMsgId).html('<span>'+hoofdletterEnPuntje(errorMsg)+'</span>').fadeIn('slow');
	hideMsgTimer(errorMsgId);
}

// haal van alle openstaande message boxjes de laatste weg
function hideLastErrorMsg()
{
	lastErrorMsgId = $("div.messageError")[$("div.messageError").length-1].id;

	hideMsg(lastErrorMsgId);
}

// verberg message box op ID (vertraagd)
function hideMsgTimer(msgId)
{
	clearTimeout(msgTimerPointer);
	msgTimerPointer = setTimeout(function(){hideMsg(msgId)}, 10000);
}

// verberg message box op ID
function hideMsg(msgId)
{
	//$("#"+msgId).fadeOut("slow");
}

// tel timer terug en koppel door
function countAutoTimer(number)
{
	if ( number > 0 )
	{
		$("#autoTimer").html(number);
		number--;
		
		setTimeout('countAutoTimer('+number+');', 1000);
	}
	else
	{
		$("#autoTimer").html('0');

		document.location.href = $("#autoTimer").parent().find('a:first').attr('href');
	}
}

// kan door een klik op een radio of checkbox een formulier blok in of uitschuiven (opstart moet true zijn)
function toggleFormSectionByChoice(valueSelector, blockId, showOnValue, opstart)
{
	// verberg het veld meteen bij het laden van de pagina
	fieldIsSelect = 'checkbox|radio'.indexOf($(valueSelector).attr('type')) == -1 ? true : false;
	fieldValue = varGet(fieldIsSelect ? valueSelector : valueSelector+":checked");

	if ( showOnValue.indexOf(fieldValue ? fieldValue : 'someridiculousvalue') != -1 )
	{
		$("#"+blockId).show(opstart ? "" : "slow");
	}
	else
	{
		$("#"+blockId).hide(opstart ? "" : "slow");
	}
	
	if ( opstart )
	{
		if ( fieldIsSelect )
		{
			$(valueSelector).change(function()
			{
				toggleFormSectionByChoice(valueSelector, blockId, showOnValue, false);
			});
		}
		else
		{
			$(valueSelector).click(function()
			{
				toggleFormSectionByChoice(valueSelector, blockId, showOnValue, false);
			});
		}
	}
}

// kan door het invullen van een textveld een formulier blok in of uitschuiven
function toggleFormSectionIfFilled(valueSelector, blockId, showOnFilledIn, opstart)
{
	// verberg het veld meteen bij het laden van de pagina
	fieldValue = varGet(valueSelector);
	if ( fieldValue.length > 0 && showOnFilledIn )
	{
		$("#"+blockId).show(opstart ? "" : "slow");
	}
	else
	{
		$("#"+blockId).hide(opstart ? "" : "slow");
	}
	
	if ( opstart )
	{
		$(valueSelector).change(function()
		{
			toggleFormSectionIfFilled(valueSelector, blockId, showOnFilledIn, false);
		});
	}
}

// er is een provincie select aangepast; haal nieuwe gemeentes op
function updateGemeenteSelect(label, netwerkKey)
{
	htmlLoader = '<img src="/images/'+netwerkKey+'/icons/miscLoader.gif" class="loader" />';

	var gemeenteObj = $("#"+label+"GemeenteId").parent().html(htmlLoader);
	var plaatsObj = $("#"+label+"PlaatsId").parent().html(htmlLoader);

	$.get('/ajaxcall.php', {mode:'updateGemeenteSelect',provincieId:$("#"+label+"ProvincieId").val(),label:label}, function(returnHtml)
	{
		gemeenteObj.html(returnHtml);
		updatePlaatsSelect(label, plaatsObj, netwerkKey);
	});	
}

// er is een gemeente select aangepast; haal nieuwe plaatsen op
function updatePlaatsSelect(label, plaatsObj, netwerkKey)
{
	htmlLoader = '<img src="/images/'+netwerkKey+'/icons/miscLoader.gif" class="loader" />';

	if ( !plaatsObj )
	{
		var plaatsObj = $("#"+label+"PlaatsId").parent().html(htmlLoader);
	}

	$.get('/ajaxcall.php', {mode:'updatePlaatsSelect',gemeenteId:$("#"+label+"GemeenteId").val(),label:label}, function(returnHtml)
	{
		plaatsObj.html(returnHtml);
	});
}

// searchbox met load thingy
function showSearchLoading()
{
	if ( parsedHash != 'loading' )
	{
		parsedHash = 'loading';
		redrawBoxContent('searchResults', 'resultaten', htmlLoader);
	}
}

