////////////////////////////////////////////////////////
/* default lib javascript */
////////////////////////////////////////////////////////


//------------------------------------------------------
// init

function init(){
  getslides('sfeerBeeld');
  runSlides()
}
// End init
//------------------------------------------------------

//------------------------------------------------------
// Font sizing script

if (getCookie('basesize')=='' || getCookie('basesize')=='NaN'){setCookie('basesize', 75, 30)}
var bn=parseInt(getCookie('basesize'));
function sizing(n){
  if ((getCookie('basesize'))=='') { alert('Mededeling:\nHet schalen van lettertypes maakt gebruik van cookies.\nDeze browser kan momenteel daar geen gebruik van maken.\nControleer je privacy instellingen in de browser opties.'); bn=75; return; }
  bn=parseInt(bn+n);
  if (parseInt(bn)>=135&&n==10) { bn = 135; return; }
  if (parseInt(bn)<=55&&n==-10) { bn = 55; return; }
  setCookie('basesize', parseInt(bn), 30);
  window.location.reload();
}

function writeSize(){
  var setSize ="";
  setSize += "<style type='text/css' rel='alternative'>body{font-size:"+bn+"%;}<\/style>"
  document.write(setSize)
}
// End Font sizing script
//------------------------------------------------------


//------------------------------------------------------
// Jump to the next input 'elm' after 'n' chracters
function fpd(elem,e){var o=elem;while(o.parentNode.nodeName!=e.toUpperCase()){o=o.parentNode;}return o.parentNode;}
function fps(elem,e){var o=elem;while(o.previousSibling.nodeName!=e.toUpperCase()){o=o.previousSibling;}return o.previousSibling;}
function fns(elem,e){var o=elem;while(o.nextSibling.nodeName!=e.toUpperCase()){o=o.nextSibling;}return o.nextSibling;}
function fcd(elem,e){var o=elem;if(o.firstChild.nodeName==e.toUpperCase()){return o.firstChild;}else{while(o.nextSibling.nodeName!=e.toUpperCase()){o=o.nextSibling;}return o.nextSibling;}}

function jumpTab(elm,n){
  if (elm.value.length>=n){
    var pe=fcd((fns((fpd(elm,'DIV')),'DIV')),'INPUT');
    pe.focus();
  }
}
//------------------------------------------------------



//------------------------------------------------------
// Form validation

var errorTypes = {
  required: new errorType(false, /^\s+|\B$/, "Laat dit veld niet leeg, \neen leeg veld of een 'spatie' is niet toegestaan.")
}


function errorType( frmError, reg, errMsg ) {
  this.frmError = frmError;
  this.errMsg = errMsg;
  this.reg = reg;
}

function validateForm(elmId,tval){
  var filter=/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i
  var labels = document.getElementsByTagName('LABEL');

  for (var i=0; i<labels.length; i++)
  {
      if(labels[i].parentNode.className.indexOf('required') > -1) {
        // set element
        element = eval('document.' +  elmId + '.' + labels[i].forfield);

        if (element.id == "p_email" && !filter.test(element.value)) {
           alert('veld: \'' + labels[i].childNodes[0].data  + '\' is niet geldig');
           element.focus();
           return false;
        }
        else if (element.value == "") {
          alert('veld: \'' + labels[i].childNodes[0].data  + '\' mag niet leeg zijn');
          element.focus();
          //element.style.background = 'red';
          return false;
        }
        else if (element.value == "kies optie") {
          alert('Maak een keuze voor: \'' + labels[i].childNodes[0].data  + '\' ');
          element.focus();
          return false;
        }
      }
  }
  return true;
}

function chkInput(i, t){
  if (t.reg.test(i)) {
   t.frmError = true;
  }
  return t;
}

// End Form validation
//------------------------------------------------------

//------------------------------------------------------
// Toggle scripts

// Zappwerk menu
var o="open";
var c="closed";
// Zappwerk toggle
function zappToggle(el,t){
  var t = ( t=="" || t==undefined || t==null ) ? 'LI' : t
  var e = fpd(el,t);
  var u = fpd(e,'UL');
  var l = u.getElementsByTagName('LI');
  for(n=0;n<l.length;n++){
    l[n].id="menu"+n;
    if (l[n].className.indexOf(o)>-1) {
      switchClassName(e,o,c);
    }else{
      if (l[n].className.indexOf(c)>-1) {
        switchClassName(e,c,o);
      }
    }
  }
}

// End Toggle scripts
//------------------------------------------------------

//------------------------------------------------------
// Classname handlers

String.prototype.trim=function(){return this.replace( /^\s+|\s+$/, "" );}
function switchClassName(e,a,b){e.className=e.className.replace(a,"").trim();e.className=(e.className+" "+b).trim();}
function fpd(elem,e){var o=elem;while(o.parentNode.nodeName!=e.toUpperCase()){o=o.parentNode;}return o.parentNode;}

// End Classname handlers
//------------------------------------------------------


//------------------------------------------------------
// Images slider functions

var detect = navigator.userAgent.toLowerCase();
var WinIE;
if (checkIt('msie')) WinIE = true;
if (checkIt('opera')||checkIt('mac')) WinIE = false;
function checkIt(string){
	place = detect.indexOf(string) + 1;
	return place;
}

var timer, numberOfPictures, slide;
var counter = 0
var pic = new Array()
var fadeTime = 3
var viewingTime = 4000

function getslides(containerID){
  slide = document.getElementById(containerID)
  pic = slide.getElementsByTagName('IMG');
  numberOfPictures = pic.length
  if (numberOfPictures<=0) return;
  slide.style.backgroundImage='url('+pic[0].src+')';
}

function runSlides(){
  if (numberOfPictures<=0) return;
  if (WinIE){
    slide.style.filter="blendTrans(duration=fadeTime)"
    slide.filters.blendTrans.Apply()      
  }
  slide.style.backgroundImage='url('+pic[counter].src+')';
  if (WinIE){
    slide.filters.blendTrans.Play();
  } 
  counter++;
  if (counter > (numberOfPictures-1)) counter=0; 
  timer = setTimeout('runSlides()', viewingTime);
}

// End Images slider functions
//------------------------------------------------------


//------------------------------------------------------
// Cookie functions

function setCookie(name,value,days) {
	if (days)	{
		var date = new Date();
		date.setTime(date.getTime()+(days*24*60*60*1000));
		var expires = "; expires="+date.toGMTString();
	}	else var expires = "";
	document.cookie = name+"="+value+expires+"; path=/";
}

function getCookie(name) {
	var nameEQ = name + "=";
	var ca = document.cookie.split(';');
	for(var i=0;i < ca.length;i++) {
		var c = ca[i];
		while (c.charAt(0)==' ') c = c.substring(1,c.length);
		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
	}
	return null;
}

function eraseCookie(name) {
	setCookie(name,"",-1);
}

// END Cookie functions
//------------------------------------------------------


// OPEN POPUP
function openBannerPopup(url, id, width, height, scroll) {
	aTop = screen.height/2 - 240;
	aLeft = screen.width/2 - 395;
  var optionString = "toolbar=0, location=0, directories=0, status=0, menubar=0, scrollbars=" + scroll + ", resizable=0, width=" + width + ", height=" + height + ", top=" + aTop + ", left=" + aLeft;
  var bWindow = window.open(url, id, optionString);
  if (bWindow) {
    bWindow.focus();
    return true;
  } else {
    return false;
  }
}

//  EOF

