﻿/*
Function to check the form to subscribe/unsubscribe to a newsletter is valid
created by NVA on 17/03/2010
*/
function validatenewsletterform(form, lang) {
    var allInputText = $('input:text', form);
    for (i=0; i < allInputText.length; i++) {
        if ($(allInputText[i]).val() == "") {
            var message = "";
            switch(lang)
            {
            case "nl":
                message = "* Gelieve de verplichte velden in te vullen.";
                break;
            case "fr":
                message = "* Veuillez remplir les champs requis.";
                break;
            case "en":
                message = "* Please fill in the required field.";
                break;
            default:
                message = "* Please fill in the required field.";
            }
            $("#errormessage").text(message);
            return false;
        }
        if ($(allInputText[i]).attr("name") == "email") {
            if ($(allInputText[i]).val() != "") {
                var regex = new RegExp("^[\\w-\\.]+@([\\w-]+\\.)+[\\w-]{2,4}$");
                var inputemail = $(allInputText[i]).val();

                if (!inputemail.match(regex)) {
                    $("#errormessage").text("Email is in a wrong format");
                    return false;
                }
            }
        }
    }
    return true;
}

/*
Function to check the contactform
created by NVA on 18/03/2010
*/
function validatecontactForm(lang) {
    var required = "";
    var emailformat = "";
    switch(lang)
        {
        case "nl":
            required = "* Gelieve de verplichte velden in te vullen.";
            emailformat = "Email is in a wrong format";
            break;
        case "fr":
            required = "* Veuillez remplir les champs requis.";
            emailformat = "Email is in a wrong format";
            break;
        case "en":
            required = "* Please fill in the required field.";
            emailformat = "Email is in a wrong format";
            break;
        default:
            required = "* Please fill in the required field.";
            emailformat = "Email is in a wrong format";
            break;
        }
        //var allInputText = $('input[required]');
        /*
        Work around for IE
        $('input[required]') gives nothing in IE
        */
    var allInputText = [];
    var counter = 0;
    $('input').each(function() {
        if ($(this).attr('required') || $(this).attr('required') != undefined) {
            allInputText[counter] = $(this);
            counter++;
        }
    });
    var regex = new RegExp("^[\\w-\\.]+@([\\w-]+\\.)+[\\w-]{2,4}$");
    
    for (i = 0; allInputText.length; i++) {
        if ($(allInputText[i]).attr("name") == "email") {
            if ($(allInputText[i]).val() == "") {
                $("#errormessage").text(required);
                return false;
            }
            if ($(allInputText[i]).val() != "") {
                var inputemail = $(allInputText[i]).val();

                if (!(inputemail.match(regex))) {
                    $("#errormessage").text(emailformat);
                    return false;
                }
                else {
                    break;
                }
            }

        }
        else {
            if ($(allInputText[i]).val() == "") {
                $("#errormessage").text(required);
                return false;
            }
        }
    }
    return true;
}

/*
Function to add css attributes to current themepage
created by NVA on 17/03/2010
*/
function whereami() {
    var lang = $("#hidLanguage").val();
    switch ($("#whereami").val()) {
        case "Thèmes": { $("#linkthemes").attr("src", "/site_images/" + lang + "/bilder/Thèmes_a.gif"); break }
        case "Thema's": { $("#linkthemes").attr("src", "/site_images/" + lang + "/bilder/Thèmes_a.gif"); break }
        case "Topics": { $("#linkthemes").attr("src", "/site_images/" + lang + "/bilder/Thèmes_a.gif"); break }
        case "About Us": { $("#linkabout").attr("src", "/site_images/" + lang + "/bilder/About Us_a.gif"); break }
        case "Over ons": { $("#linkabout").attr("src", "/site_images/" + lang + "/bilder/About Us_a.gif"); break }
        case "Qui sommes nous": { $("#linkabout").attr("src", "/site_images/" + lang + "/bilder/About Us_a.gif"); break }
        case "The ECC-Network": { $("#linkecc").attr("src", "/site_images/" + lang + "/bilder/The ECC-Network_a.gif"); break }
        case "Het ECC-Netwerk": { $("#linkecc").attr("src", "/site_images/" + lang + "/bilder/The ECC-Network_a.gif"); break }
        case "Le réseau CEC": { $("#linkecc").attr("src", "/site_images/" + lang + "/bilder/The ECC-Network_a.gif"); break }
        case "Brochures": { $("#linkbrochure").attr("src", "/site_images/" + lang + "/bilder/Brochures_a.gif"); break }
        case "Links": { $("#linklinks").attr("src", "/site_images/" + lang + "/bilder/Links_a.gif"); break }
        case "Liens": { $("#linklinks").attr("src", "/site_images/" + lang + "/bilder/Links_a.gif"); break }
    }
    
    var isPressRelease = ((window.location.pathname.indexOf("11001") > -1) || (window.location.pathname.indexOf("11002") > -1) || (window.location.pathname.indexOf("11006") > -1));
    
    if (isPressRelease)
    {
        $("#linkabout").attr("src", "/site_images/" + lang + "/bilder/hm_about.gif");
        $("#linkpressreleases").attr("src", "/site_images/" + lang + "/bilder/PressReleases_a.gif");
    }
}
  


/*
Function to add css class to current visited page (shown in leftnavigation)
created by NVA on 17/03/2010
*/
function highlightPage() {
    var lastAhref = $("#breadcrumb A:last");
    
    var linkitem = $(".linkstext .headlink");

    for (i = 0; i < linkitem.length; i++) {
        if (linkitem[i] != null) {
            var item = $(linkitem[i]);
            var parent = $(item).parent();
            var map = $(linkitem[i]).text();
            if (map == lastAhref.text()) {
                $(parent).addClass("umLocation");
                break;
            }
        }

    }
}

/*social bookmark functions*/
function is_child_of(parent, child) {
			if( child != null ) {			
				while( child.parentNode ) {
					if( (child = child.parentNode) == parent ) {
						return true;
					}
				}
			}
			return false;
		}
function fixOnMouseOut(element, event, JavaScript_code) {
	var current_mouse_target = null;
	if( event.toElement ) {				
		current_mouse_target 			 = event.toElement;
	} else if( event.relatedTarget ) {				
		current_mouse_target 			 = event.relatedTarget;
	}
	if( !is_child_of(element, current_mouse_target) && element != current_mouse_target ) {
		eval(JavaScript_code);
	}
}
function openbookwidget(src){
	url = location.href;
	title = document.title;
	box.style.display="block";
}
function closebookwidget(e){
		box.style.display="none";
	}
function addToFavs(){	
	if (document.all)window.external.AddFavorite(url,title); 
    else window.sidebar.addPanel(title,url,''); 
}
function openwindow(socialsite, lang){	
	switch(socialsite){
		case 'g':
  			composedurl = "http://www.google.com/bookmarks/mark?op=add&bkmk="+encodeURIComponent(url)+"&title="+encodeURIComponent(title);
 		 	break;
		case 'f':
  			composedurl = "http://www.facebook.com/sharer.php?u="+encodeURIComponent(url)+"&t="+encodeURIComponent(title);
  			break;
        case 'n':
            composedurl = "http://www.netlog.com/go/manage/links/view=save&origin=external&url=" + url + "&title=" + title;
  			break;
  	    case 's':
  	        composedurl = "/forms/" + lang.toLowerCase() + "/sendMail.aspx";
  	        break;
		default:
			addToFavs();
	}	
	window.open(composedurl,'bookmark','width=800,height=600,scrollbars=yes,toolbar=no,location=yes');
}

function openmailwindow(lang, nodeid){
    var url = "/forms/" + lang.toLowerCase() + "/sendMail.aspx?nodeid=" + nodeid;
    window.open(url,'bookmark','width=800,height=600,scrollbars=yes,toolbar=no,location=yes');
}

//Functions to make font bigger/smaller
function setTextSize(pct) {
    $('body').css('fontSize', pct + '%');
    setCookie('nbfsize', pct);
}

function getTextSize() {

    var cookieFSize = getCookie('nbfsize');
    if (cookieFSize == null || cookieFSize == "") {
        cookieFSize = '100';
    }
    setTextSize(cookieFSize);
}

function setCookie(name, value) {
    var date = new Date();
    date.setTime(date.getTime() + (60 * 24 * 60 * 60 * 1000));
    document.cookie = name + "=" + escape(value) + "; expires=" + date.toGMTString() + "; path=/";
}
function getCookie(name) {
    var arg = name + "=";
    var alen = arg.length;
    var clen = document.cookie.length;
    var i = 0;
    while (i < clen) {
        var j = i + alen;
        if (document.cookie.substring(i, j) == arg)
            return getCookieVal(j);
        i = document.cookie.indexOf(" ", i) + 1;
        if (i == 0) break;
    }
    return '';
}

function getCookieVal(offset) {
    var endstr = document.cookie.indexOf(";", offset);
    if (endstr == -1)
        endstr = document.cookie.length;
    return unescape(document.cookie.substring(offset, endstr));
}

$(document).ready(function() {
    getTextSize();
});
