/* http://www.quirksmode.org/blog/archives/2005/10/_and_the_winner_1.html */
function addEvent( obj, type, fn )
{
	if (obj.addEventListener)
		obj.addEventListener( type, fn, false );
	else if (obj.attachEvent)
	{
		obj["e"+type+fn] = fn;
		obj[type+fn] = function() { obj["e"+type+fn]( window.event ); };
		obj.attachEvent( "on"+type, obj[type+fn] );
	}
}

function makeLinksExternal()
{
  var anchors = document.getElementsByTagName( 'a' );
  for( var i = 0; i < anchors.length; i++ )
  {
    var anchor = anchors[i];
    if ( anchor.getAttribute( 'href' ) && anchor.getAttribute( 'rel' ) == 'external' )
    {
       anchor.target = '_blank';
    }
  }
}

function isEmail( testemail )
{
  var emailFilter = /^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i;
  return emailFilter.test( testemail );
  //return 1;
}

function appendMessage( formElementID, message, displayType )
{
  formElement = document.getElementById( formElementID );
  var paragraph = document.createElement( 'p' );
  paragraph.style.display = displayType;
  paragraph.innerHTML = message;
  formElement.parentNode.appendChild( paragraph );
}

function messageDisplay( formElement, displayType )
{
  formElement.nextSibling.nextSibling.style.display = displayType;
}

window.onload = function()
{
  if( document.getElementsByTagName && document.getElementById( 'contactformulier' ) )
  {
    appendMessage( 'naam', 'uw naam ontbreekt nog.', 'none' );
    appendMessage( 'email', 'het email adres ontbreekt of is onjuist.', 'none' );
    appendMessage( 'bericht', 'er is nog geen bericht om te verzenden.', 'none' );

    document.forms[ 'contactformulier' ].onsubmit = function()
    {
      var naam = document.getElementById( 'naam' );
      var email = document.getElementById( 'email' );
      var bericht = document.getElementById( 'bericht' );
      var flag = true;

      if( bericht.value == '' ){ messageDisplay( bericht, 'block' ); bericht.focus(); flag = false; }
      else{ messageDisplay( bericht, 'none' ); }

      if( !isEmail( email.value ) ){ messageDisplay( email, 'block' ); email.focus(); flag = false; }
      else{ messageDisplay( email, 'none' ); }

      if( naam.value == '' ){ messageDisplay( naam, 'block' ); naam.focus(); flag = false; }
      else{ messageDisplay( naam, 'none' ); }

      return flag;
    }

    document.getElementById( 'naam' ).focus();
  }

  makeLinksExternal();
  new Slideshow( 'slideshow', 3000 );
};

