

function IsDefined(myVar) {
	var undefined;
	if (myVar != undefined) {
		return true;
	} else {
		return false;
	}
}


function getUrlVars(){
    var vars = [], hash;
    var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
    for(var i = 0; i < hashes.length; i++)
    {
      hash = hashes[i].split('training:');
      vars.push(hash[0]);
      vars[hash[0]] = hash[1];
    }
    return vars;
  }



/**
* Adds an event handler to an element
*
* This method automatically decides the proper way to attach an event handler based on the browser's Javascript implementation
* @link http://www.quirksmode.org/js/events_order.html
* @param element target element
* @param eventType string event to listen for (example: 'click')
* @param function function to call when event occurs
* @param bool capture events (default: false)
*/
function addEventHandler(element, eventType, func, useCapture) {
  if (element){
     if (element.addEventListener) {
        element.addEventListener(eventType, func, useCapture);
        return true;
     } else if (element.attachEvent) {
        var r = element.attachEvent('on' + eventType, func);
        return r;
     } else {
        element['on' + eventType] = func;
     }
  }
}

/* USAGE EXAMPLE
addEventHandler(window, 'load', function(e){

});
*/


function emailCheck (obj,nomessage) {
	emailObj=obj;
	emailStr = emailObj.value;
	if(emailStr == "") {
		if (!nomessage) {alert ( "U heeft geen email adres ingevuld." );}
		    return false;
		}
		var checkTLD=0;
		var knownDomsPat=/^(com|net|org|edu|int|mil|gov|arpa|biz|aero|name|coop|info|pro|museum)$/;
		var emailPat=/^(.+)@(.+)$/;
		var specialChars="\\(\\)><@,;:\\\\\\\"\\.\\[\\]";
		var validChars="\[^\\s" + specialChars + "\]";
		var quotedUser="(\"[^\"]*\")";
		var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/;
		var atom=validChars + '+';
		var word="(" + atom + "|" + quotedUser + ")";
		var userPat=new RegExp("^" + word + "(\\." + word + ")*$");
		var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$");
		var matchArray=emailStr.match(emailPat);
		if (matchArray==null) {
			if (!nomessage) {alert("Het ingevulde email adres is geen geldig email adres.");}
				return false;
		}
		var user=matchArray[1];
		var domain=matchArray[2];
		for (i=0; i<user.length; i++) {
			if (user.charCodeAt(i)>127) {
			if (!nomessage) {alert("Het emailadres bevat ongeldige tekens voor de @.");}
				return false;
			}
		}
		for (i=0; i<domain.length; i++) {
			if (domain.charCodeAt(i)>127) {
				if (!nomessage) {alert("Het emailadres bevat ongeldige tekens na de @.");}
				return false;
			}
		}
		if (user.match(userPat)==null) {
			if (!nomessage) {alert("Het ingevulde email adres is geen geldig email adres.");}
			return false;
		}
		var atomPat=new RegExp("^" + atom + "$");
		var domArr=domain.split(".");
		var len=domArr.length;
		for (i=0;i<len;i++) {
			if (domArr[i].search(atomPat)==-1) {
				if (!nomessage) {alert("Het ingevulde email adres is geen geldig email adres.");}
				return false;
			}
		}
		if (checkTLD && domArr[domArr.length-1].length!=2 &&
		domArr[domArr.length-1].search(knownDomsPat)==-1) {
		if (!nomessage) {alert("Het ingevulde email adres is geen geldig email adres.");}
			return false;
		}
		if (len<2) {
			if (!nomessage) {alert("Het ingevulde email adres is geen geldig email adres.");}
			return false;
		}
	return true
}

/**
*	jQuery version of the IE6 fix for :hover
*/
(function($){
    $.fn.nbHover = function(){
    	return this.each(function(){
		    var $e = $(this);
		    $e.hover(
				function(){
					$(this).addClass('sfhover');
				},
				function(){
					$(this).removeClass('sfhover');
				}
			);
		});
    };
})(jQuery);

   function submitCallMeFromTraining(e){
       	    if($('#mmTrainingCallName').val() == ''){
		alert("Vul uw naam in");
		return;
	    }else if( $('#mmTrainingCallEmail').val() == ''){
		alert('Vul uw telefoonnummer in');
	    return;
	    }
        //e.preventDefault();
        $.ajax({
            type: 'POST',
            cache: true,
			async: false,			
            url: '/handleModal.php',
            data: 'id=header_contact_send&'+$('form[name=callMeFormTraining]').serialize(),
            success: function(msg) {
		if(msg == 1){
		    alert("Dank u! Wij zullen u op het aangegeven tijdstip terugbellen.");
		    $("#modalbox-callme-training-close").trigger("click");
		}else{
		    alert("Er is iets fout gegaan bij het versturen van uw bericht.");
		}
	       //sluit het modal boxje
            }
        });
    }

   function submitCallMe(e){
	var number = $('#cmPhone').val();
	if(number == ''){
	    alert("Vul uw telefoonnummer in");
	    return;
	}else if( $('#cmName').val() == ''){
	    alert('Vul uw naam in');
	    return;
	}

        $.ajax({
            type: 'POST',
            cache: true,
			async: false,
            url: '/handleModal.php',
            data: 'id=header_contact_send&'+$('form[name=callMeForm]').serialize(),
            success: function(msg) {
		if(msg == 1){
		    alert("Dank u! Wij zullen u op het aangegeven tijdstip terugbellen.");
		    $("#modalbox-terugbellen-close").trigger("click");
		    $("#modalbox-callme-close").trigger("click");
		}else{
		    alert("Er is iets fout gegaan bij het versturen van uw bericht.");
		}
	       //sluit het modal boxje
            }
        });
    }

	function submitModalTrainingEmail(e){
        $.ajax({
            type: 'POST',
            cache: true,
            url: '/handleModal.php',
            data: 'id=header_training_email_sent&'+$('form[name=emailModalForm]').serialize(),
            success: function(msg) {
		if(msg == 1){
		    alert("Dank u voor uw bericht!.");
		    $("#modalbox-mail-training-close").trigger("click");
		}else{
		    alert("Er is iets fout gegaan bij het versturen van uw bericht.");
		}

            }
        });
	}

       function submitModalEmail(e){
	    if($('#mmName').val() == ''){
		alert("Vul uw naam in");
		return;
	    }else if( $('#mmEmail').val() == ''){
		alert('Vul uw emailadres in');
	    return;
	    }
	    
        $.ajax({
            type: 'POST',
            cache: true,
            url: '/handleModal.php',
            data: 'id=header_email_sent&'+$('form[name=emailModalForm]').serialize(),
            success: function(msg) {
		if(msg == 1){
		    alert("Dank u voor uw bericht!.");
		    $("#modalbox-mail-close").trigger("click");
		}else{
		    alert("Er is iets fout gegaan bij het versturen van uw bericht.");
		}

            }
        });
    }

$(document).ready(function(){
  $("#callMeForm").validate({


    rules: {
    	naam: "required",
    	telefoon: {
    		required: true
    	},
    	comment: "required"
    }

    });
     // MODAL BOX  -------------------
    var triggers = $(".modal-trigger").overlay({
        mask: {
            color: '#000000',
            loadSpeed: 100,
            opacity: 0.2
        },
        top: '20%',
        closeOnClick: false
    });

    /*
    var buttons = $("#yesno button").click(function(e) {
        // get user input
        var yes = buttons.index(this) === 0;
        // do something with the answer
        triggers.eq(0).html("You clicked " + (yes ? "yes" : "no"));
    });

    $("#prompt form").submit(function(e) {
        // close the overlay
        triggers.eq(1).overlay().close();
        // get user input
        var input = $("input", this).val();
        // do something with the answer
        triggers.eq(1).html(input);
        // do not submit the form
        return e.preventDefault();
    });
    */

    // INIT HOVER -------------------
    $('.nav li').nbHover();

    // CUFON ------------------------
    Cufon.replace('.cufon, #nav > li > a, h2.icon',{
        hover: true
    });

    // CYCLE ------------------------
    $('#visual .cycle').cycle({
        fx: 'fade',
        timeout: 7500,
        speed: 2000
    });
    $('#main .onze-trainingen.open ul').cycle({
        fx: 'fade',
        timeout: 2000,
        speed: 1000
    });

    // BOX SLIDE --------------------
    $(".meer").click(function(){
    $(".onze-trainingen").toggleClass("open");
    $(this).toggleClass("active");return false;
    });

    // ZOEKVENSTER  -----------------
    return $('.show-title').each(function(){
        var label = $(this).attr('title');
        if ($(this).val()=='' || $(this).val()==label) {$(this).addClass('empty');$(this).val(label);}
        $(this).focus(function() {
                if ($(this).val()==label) {$(this).removeClass('empty');$(this).removeClass('error');$(this).val('');}
                $(this).removeClass('unvalid');
        });
        $(this).blur(function() {
                if ($(this).val()=='') {$(this).removeClass('unvalid');$(this).addClass('empty');$(this).val(label);}
        });
    });
    
});
