window.addEvent('domready', function() {
    initFlashCases();
    initAccordion();
    initMenu();
    initTabs();
    setBoxHeight();
    initFlashbox();
    initRelatedContentWidth();
    initNewsIntroWidth();
    initEditDropdown();
    initTestimonials();
    initReferenties();
    /*Is verplaatst naar MainThree.ascx*/
    //initContentWidth();
    moreDownloads();
    replaceInlineBlock();
    emptyInputBox();

    /*if (Browser.Engine.version == 18 && Browser.Engine.gecko == true) {
    $$('div.headerwrapper')[0].setStyle('position', 'relative');
    $$('div.headerwrapper')[0].setStyle('z-index', '1000');
    }*/

});

window.addEvent('load', function() {
	insertYoutube();
	insertJWplayer();
	initCEOvideo();
});


/**
* initFlashCases
*
* initializes cases flash
*
* @author Mirjam <mirjam{AT}efocus.nl>
* @return void
*/

function initFlashCases() {

    var flashCase = $('f5_cases_flash');
    if (!flashCase) return;
    
    var requiredVersion = 9;

    if (Browser.Plugins.Flash.version >= requiredVersion) {

        var days = ['color_monday', 'color_tuesday', 'color_wednesday', 'color_thursday', 'color_friday', 'color_saturday', 'color_sunday'];
        var bodyClass = document.getElement('body').className.split(" ")[0];
        var currentday = days.indexOf(bodyClass);

        days[0] = 'e98300';
        days[1] = 'bb133e';
        days[2] = 'd71f85';
        days[3] = '652d86';
        days[4] = '7ab800';
        days[5] = '00b9e4';
        days[6] = '0046ad';

        var so = new SWFObject("/swf/cases/output/Main.swf", "movie", "890", "347", "9", "#ffffff");
        so.addParam("wmode", "transparent");

        if (flashCase.getElement('span').get('text') == 'en') {
            so.addVariable("xml", "/swf/cases/xml/mappenEN.xml");
        } else {
            so.addVariable("xml", "/swf/cases/xml/mappenNL.xml");
        }
        so.addVariable("baseColor", "0x" + days[currentday]);
        so.write(flashCase);

    } else {

        flashCase.getElement('img').setStyle('display', 'block');
        
    }
       
}


/**
* emptyInputBox
*
* empties input boxes
*
* @author Mirjam <mirjam{AT}efocus.nl>
* @return void
*/

function emptyInputBox() {
    
    // search
    if ($$('div.f10_searchresults input.search').length > 0) {
       
       var searchinputs = $$('div.f10_searchresults input.search');

       searchinputs.each(function(item) {
           item.addEvent('click', function() {
               item.value = '';
           });
       });

    }

    // locations
    if ($$('div.f17_vestigingsinformatie input.search').length > 0) {

        var searchinputs = $$('div.f17_vestigingsinformatie input.search');

        searchinputs.each(function(item) {
            item.addEvent('click', function() {
                item.value = '';
            });
        });

    }

    if ($$('div.f28_eventdetail input.search').length > 0) {

        var searchinputs = $$('div.f28_eventdetail input.search');

        searchinputs.each(function(item) {
            item.addEvent('click', function() {
                item.value = '';
            });
        });

    }

   

}


/**
* initContentWidth
*
* initializes width of contentpage, depending on menu
*
* @author Mirjam <mirjam{AT}efocus.nl>
* @return void
*/

function initContentWidth() {
    
    if ($$('div.f3_submenu').length > 0) return false;

    if ($$('div.column_left')[0] && $$('div.column_middle_notstretched')[0]) {
        $$('div.column_left')[0].addClass('hide_column_left');
        $$('div.column_middle_notstretched')[0].addClass('hide_column_middle_notstretched');
    }
    
}


/**
* initNewsIntroWidth
*
* initializes width of news/intro boxes, depending on image
*
* @author Mirjam <mirjam{AT}efocus.nl>
* @return void
*/

function initNewsIntroWidth() {

    var introItems = $$('div.f4_news_intro');
   
    if (introItems.length > 0) {
        for (var i = 0; i < introItems.length; i++) {

            var introDetails = introItems[i].getElement('div.details');
            if (introItems[i].getElement('img') == null && introDetails) {
                introDetails.addClass('details_large');
            }

        }
    }

}


/**
* initRelatedContentWidth
*
* initializes width of related content boxes, depending on image
*
* @author Mirjam <mirjam{AT}efocus.nl>
* @return void
*/

function initRelatedContentWidth() {

    var relatedItems = $$('div.f14_related div.details');
    
    if (relatedItems.length > 0) {
        for (var i = 0; i < relatedItems.length; i++) {

            var relatedItemsChildren = relatedItems[i].getChildren();
            if (relatedItems[i].getElement('img') == null && relatedItemsChildren.length > 0) {
    
                relatedItems[i].addClass('details_large');
              
            }

        }
    }

}



/**
* initFlashbox
*
* initializes flash box
*
* @author Mirjam <mirjam{AT}efocus.nl>
* @return void
*/

function initFlashbox () {

    var flashBoxes = $$('div.flashbox');
       
    var days = ['color_monday', 'color_tuesday', 'color_wednesday', 'color_thursday', 'color_friday', 'color_saturday', 'color_sunday'];
    var bodyClass = document.getElement('body').className.split(" ")[0];
	var currentday = days.indexOf(bodyClass);

    days[0] = 'e98300';
    days[1] = 'bb133e';
    days[2] = 'd71f85';
    days[3] = '652d86';
    days[4] = '7ab800';
    days[5] = '00b9e4';
    days[6] = '0046ad';
    
    if (flashBoxes.length > 0) {

        for (var i = 0; i < flashBoxes.length; i++) {
            
            var so = new SWFObject("/swf/actieblok.swf", "movie", "250", "250", "9", "#ffffff");
            so.addParam("wmode", "transparent");

            if (flashBoxes[i].getElement('img')) {
                so.addVariable("silhouetImg", flashBoxes[i].getElement('img').src);
            }
            if (flashBoxes[i].getElement('h2')) {
            	so.addVariable("silhouetTitle", flashBoxes[i].getElement('h2').get('html'));
            }
            if (flashBoxes[i].getElement('h3')) {
                so.addVariable("silhouetSubtitle", flashBoxes[i].getElement('h3').get('html'));
            }
            if (flashBoxes[i].getElement('ul.flashlinks li a')) {
                so.addVariable("silhouetLink", $$('ul.flashlinks li a')[0]);
            }
            so.addVariable("silhouetScale", "1");
            so.addVariable("silhouetColor", "0x" + days[currentday]);
            so.write(flashBoxes[i].id);
            
        }
        
    }

}


/**
 * initMenu
 *
 * initializes hover navigation
 *
 * @author Mirjam <mirjam{AT}efocus.nl>
 * @return void
 */
 
function initMenu() {
	
	if ($$('ul.nav').length < 1) return false;
	
	var mainNavItems = $$('ul.nav')[0].getElements('li');
			
	for (var i = 0; i < mainNavItems.length; i++) {
		
		var subNav = mainNavItems[i].getElement('ul');
	 	if(subNav) {

	 	    mainNavItems[i].addEvent('mouseenter', function() {
	 	        this.addClass('sfhover');
	 	        if (Browser.Engine.name == 'trident' && Browser.Engine.version == 4) {
	 	            showHideSelects(false);
	 	        }

	 	    });
			
			mainNavItems[i].addEvent('mouseleave', function(){
				this.removeClass('sfhover');
				if (Browser.Engine.name == 'trident' && Browser.Engine.version == 4) {
				    showHideSelects(true);
				}
			});

	 	}
		
	}

	// submenu?
	if ($$('li.subnav_open').length > 0) {

	    var openSubmenu = $$('li.subnav_open')[0].getElement('ul');
	    if (openSubmenu) {
				
			//openSubmenu.setStyle('left', mainNavItems[0].getPosition().x);

	        var totalWidth = 0;

	        for (var i = 0; i < openSubmenu.getElements('li').length; i++) {
	            var thisWidth = Number(openSubmenu.getElements('li')[i].getStyle('width').toInt());
	            totalWidth += thisWidth + 16;
	        }

	        openSubmenu.setStyle('width', totalWidth);
	        
	    }
	}

	// subsubmenu?
	if ($$('div.f3_submenu ul li').length > 0) {
	    $$('div.f3_submenu ul li').each(function(menuitem) {
	        if (menuitem.getElement('ul')) {
	            menuitem.addClass('subnav');
	        }
	    });
	}
	
}
 
/**
 * showHideSelects
 * hide selects: ie6
 *
 * @author Mirjam <mirjam{AT}efocus.nl>
 * @return void
*/

function showHideSelects(show) {

    var selects = $$('select');
    selects.each(function(item) {
        if (show == false) {
            item.setStyle('visibility', 'hidden');
        } else if (show == true) {
            item.setStyle('visibility', 'visible');
        }
    });
   
}
 
 
/**
 * setBoxHeight
 * sets height of boxes
 *
 * @author Mirjam <mirjam{AT}efocus.nl>
 * @return void
*/

function setBoxHeight () {
	
	if ($$('ul.f37_2columns_layout')) {
		
		var items = $$('div.f37_underlyingpages ul.f37_2columns_layout li');
		var newHeight = 0;
	
		for (var i = 0; i < items.length; i++) {
			
			if (i < 2) {
			    items[i].setStyle('border-top', 0);
		    }
				
			if (i % 2 == 0) {				
				newHeight = items[i].getSize().y;	
				items[i].setStyle('padding-bottom', 20);			
			} else {				
				
				thisHeight = items[i].getSize().y;
				
				if (thisHeight > newHeight) {					
					items[(i-1)].setStyle('padding-bottom', thisHeight - newHeight + 20);
					items[i].setStyle('padding-bottom', 20);	
				} else if (newHeight == thisHeight) {
					items[i].setStyle('padding-bottom', 20);			
				} else {
					items[i].setStyle('padding-bottom', newHeight - thisHeight + 20);
				}
							
			} 
			
		}
				
	}
	
}

/**
* initSifr
* initializes font replacement
*
* @author Mirjam <mirjam{AT}efocus.nl>
* @return void
*/

function initSifr() {


    var days = ['color_monday', 'color_tuesday', 'color_wednesday', 'color_thursday', 'color_friday', 'color_saturday', 'color_sunday'];
    var bodyClass = document.getElement('body').className.split(" ")[0];
    var currentday = days.indexOf(bodyClass);

    days[0] = 'e98300';
    days[1] = 'bb133e';
    days[2] = 'd71f85';
    days[3] = '652d86';
    days[4] = '7ab800';
    days[5] = '00b9e4';
    days[6] = '0046ad';
    
    var neutra = {
        src: '/swf/neutra.swf'
                      , ratios: [6, 1.41, 9, 1.35, 15, 1.29, 21, 1.25, 22, 1.22, 27, 1.24, 29, 1.21, 34, 1.22, 41, 1.21, 45, 1.2, 46, 1.21, 59, 1.2, 68, 1.19, 69, 1.2, 96, 1.19, 97, 1.18, 102, 1.19, 103, 1.18, 107, 1.19, 108, 1.18, 112, 1.19, 114, 1.18, 116, 1.19, 120, 1.18, 121, 1.19, 1.18]
    };
    sIFR.activate(neutra);
    sIFR.replace(neutra, {
    selector: 'div.f4_news h2, div.f14_related h2.sifr, div.f42_beurskoers h2, div.f21_sitemap h2, div.f33_accordion div.slides h2, div.blogs ul.bloglist li h2, div.bloginfo h2', 
        css: [
            '.sIFR-root { text-align: center; font-weight: bold; text-align: left; color: #a5acaf; text-transform: uppercase; leading: -6}',
            'a { color: #a5acaf; text-decoration: none;  }',
            'a:hover { color: #' + days[currentday] + '; text-decoration: none;  }'
          ], 
        wmode: 'transparent'

    });
   
}

/**
 * initAccordion
 *
 * initializes accordion (F33)
 *
 * @author Klaas Dieleman <klaas{AT}efocus.nl>
 * @todo: multiple accordions? moet dit?
 * @return void
 */
function initAccordion() {
    
	if (!$$('div.f33_accordion')[0]) return;
	
	var arr_accSlides = $$('.slides');
	var int_accNormalWidth = 130;
	var int_accExtendedWidth = ($$('div.f33_accordion')[0].getStyle('width').toInt() - int_accNormalWidth * (arr_accSlides.length - 1));
	var orgHeight;
	
	var int_openedAccSlide = 5;
	var int_accSlideCount = 0;
	var otherSlides = arr_accSlides.filter(function(item, index){ if(index > 0) return item });
	var days = ['color_monday', 'color_tuesday', 'color_wednesday', 'color_thursday', 'color_friday', 'color_saturday', 'color_sunday'];
	var bodyClass = document.getElement('body').className.split(" ")[0];
	var currentday = days.indexOf(bodyClass);
	var openSlide = arr_accSlides[0];
	var inProgress = false;
	
	days[0] = 'e98300';
	days[1] = 'bb133e';
	days[2] = 'd71f85';
	days[3] = '652d86';
	days[4] = '7ab800';
	days[5] = '00b9e4';
	days[6] = '0046ad';
       
   	arr_accSlides.setStyle('width', int_accExtendedWidth - arr_accSlides[0].getStyle('padding-right').toInt());
   	var orgWidth = (int_accExtendedWidth - arr_accSlides[0].getStyle('padding-right').toInt());
   	
	for (var i = 0; i < arr_accSlides.length; i++) {
	    
	    var thisSlide = arr_accSlides[i];
	    if (thisSlide.getElement('h2')) {
	        thisSlide.getElement('h2').setStyle('width', (orgWidth - 40));
	    }
	    
	    var videoLinks = thisSlide.getElements('ul li a.openvideo');

	    videoLinks.each(function(item) {
	        item.addEvent('click', function() {
	            var thisParent = this.getParent('div.slides');
	            showVideo(this.getParent('div.slides'));
	        });
	    });

	    if (thisSlide.getElement('div.slidefull') && thisSlide.getElement('div.slideshadow')) {
	       thisSlide.getElement('div.slideshadow').setStyle('display', 'none');
	    }
	    
	}
		
	otherSlides.each(function(){
		otherSlides[int_accSlideCount].setStyle('left', (int_accNormalWidth * (int_accSlideCount) + int_accExtendedWidth));
		int_accSlideCount++;
	});

	showVideo = function(item) {
	    
	    item.addClass('slidesshowvideo');

	    var w = ($$('div.f33_accordion')[0].getStyle('width').toInt() - int_accNormalWidth * (arr_accSlides.length - 1));
	    item.setStyle('width', (w - 40).toInt());

	    if (item.getElement('a.openvideo')) {
	        item.getElement('a.openvideo').set('text', 'Open content');
	        item.getElement('a.openvideo').removeEvents('click');
	        item.getElement('a.openvideo').addEvent('click', function() {
	            hideVideo(item);
	        });
	    }
	}

	hideVideo = function(item) {
	    
	    var orgWidth = ((int_accExtendedWidth - arr_accSlides[0].getStyle('padding-right').toInt()));
	    
	    item.removeClass('slidesshowvideo');
	    item.setStyle('width', orgWidth);

	    if (item.getElement('a.openvideo')) {
	        item.getElement('a.openvideo').set('text', 'Open video');
	        item.getElement('a.openvideo').removeEvents('click');
	        item.getElement('a.openvideo').addEvent('click', function() {
	            showVideo(this.getParent('div'));
	        });
	    }

	}

	slideEffect = function(i) {

	    var int_accSlideCounter = 0;
	    int_accSlideCounter++;
	    var slide = arr_accSlides[i];
	    if (slide == openSlide) return false;

	    if (inProgress == true) return false;
	    inProgress = true;

	    arr_accSlides.each(function(el_accSlide, n) {

	        if (i <= (n - 1)) {
	            el_accSlide.tween('left', ((int_accNormalWidth * (n - 1)) + int_accExtendedWidth));
	        } else {
	            el_accSlide.tween('left', (int_accNormalWidth * n));
	        }

	    });

	    var slideTween = new Array;
	    var slideTween2 = new Array;
	    var slideTween3 = new Array;

	    if (slide.getElement('div.silhouet')) {
	        slide.getElement('div.silhouet').fade(0);
	    }

	    slide.getElements('ul li a').tween('color', '#003366');
	    slide.getElements('ul li').addClass('activelink');
	    // replace single tween below with actionscript tween for Flash head
	    //if (slide.getElement('h2')) {
	    //    slide.getElement('h2').tween('color', '#' + days[currentday]);
	    //}

	    for (var z = 0; z < sIFR.replacements.length; z++) {
	        var parentSifr = sIFR.replacements[z].getAlternate().parentNode.parentNode;
	        if (parentSifr == slide) {
	            sIFR.replacements[z].changeCSS('.sIFR-root { text-align: center; font-weight: bold; text-align: left; color: #' + days[currentday] + '; text-transform: uppercase');
	        }
	    }

	    slideTween[i] = new Fx.Tween(slide.getElement('div.slideoverlay'), { duration: 100 });
	    slideTween[i].start('opacity', 1).chain(function() {

	        if (slide.getElement('ul')) {
	            slide.getElement('ul').tween('bottom', 15);
	        }
	        slide.getElement('div.slidecontent').tween('height', 246 - slide.getElement('h2').getStyle('height').toInt());
	        slide.getElement('div.slidecontent').setStyle('display', 'block');
	    });

	    if (openSlide.getElement('div.slidefull')) {
	        openSlide.getElement('div.slidefull').setStyle('width', 0);
	    }

	    slideTween2[i] = new Fx.Tween(openSlide.getElement('div.slidecontent'), { transition: Fx.Transitions.Quint.easeOut, duration: 100 });
	    slideTween2[i].start('height', 0).chain(function() {

	        if (slide.getElement('div.slidefull')) {
	            slide.getElement('div.slidefull').setStyle('width', (int_accExtendedWidth - 40));
	            orgWidth = (int_accExtendedWidth - 40);
	        }

	        if (openSlide.getElement('ul')) {
	            openSlide.getElement('ul').tween('bottom', 200);
	        }

	        if (openSlide.getElement('div.silhouet')) {
	            openSlide.getElement('div.silhouet').fade(1);
	        }

	        openSlide.getElement('div.slidecontent').setStyle('display', 'none');

	        // replace single tween below with actionscript tween for Flash head

	        /*if (openSlide.getElement('h2')) {
	        openSlide.getElement('h2').tween('color', '#565a5c');
	        }*/

	        for (var z = 0; z < sIFR.replacements.length; z++) {
	            var parentSifr = sIFR.replacements[z].getAlternate().parentNode.parentNode;
	            if (parentSifr == openSlide) {
	                sIFR.replacements[z].changeCSS('.sIFR-root { text-align: center; font-weight: bold; text-align: left; color: #a5acaf; text-transform: uppercase');
	            }
	        }

	        openSlide.getElements('ul li a').tween('color', '#a5acaf');
	        openSlide.getElements('ul li').removeClass('activelink');
	        if (openSlide.getElement('a.openvideo')) {
	            hideVideo(openSlide);
	        }
	        slideTween3[i] = new Fx.Tween(openSlide.getElement('div.slideoverlay'), { duration: 100 });
	        slideTween3[i].start('opacity', 0).chain(function() {
	            openSlide = slide;
	            inProgress = false;

	        });

	    });


	};

	arr_accSlides.each(function(item, i) {
	    
	    item.getElement('div.slideoverlay').setStyle('opacity', '0');
	    item.addEvent('mouseenter', function() { item.slideTimer = setTimeout('slideEffect(' + i + ')', 300) });
	    item.addEvent('mouseleave', function() { clearTimeout(item.slideTimer); });

	    var so = new SWFObject("/swf/default.swf", "movie", "100", "130", "9", "#ffffff");
	    so.addParam("wmode", "transparent");
	    so.addVariable("silhouetImg", item.getElement('div.silhouet img').getProperty('src'));
	    so.addVariable("silhouetColor", "0x" + days[currentday]);
	    so.addVariable("silhouetScale", "0.5");
	    so.write(item.getElement('div.silhouet'));
        
	});
	
	openSlide.getElement('div.slideoverlay').setStyle('opacity', '1');
	openSlide.getElement('div.silhouet').setStyle('opacity', '0');
	//openSlide.addClass('openSlide');
	openSlide.getElements('ul li').addClass('activelink');
	openSlide.getElement('div.slidecontent').setStyle('height', openSlide.getElement('div.slidecontent').getScrollSize().y);
    
    openSlide.getElement('div.slidecontent').tween('height', 246);
    openSlide.getElement('div.slidecontent').setStyle('display', 'block');
    
    if (openSlide.getElement('ul')) {
        openSlide.getElement('ul').tween('bottom', 15);
    }
    
}


/**
 * initTabs
 *
 * initializes tab navigation
 * f34: switch both tabcontent as tabperson
 *
 * @author Klaas Dieleman <klaas{AT}efocus.nl>
 * @return void
 */
 
function initTabs() {
    
    var tabs = $$('ul.tabs li');
    var tabcontents = $$('div.tabcontent');
    var tabnames = new Array;
	var initialTab = -1;
	if (tabs.length != tabcontents.length || tabs.length < 1) return false;
	
	if ($$('div.f34_cases_details').length > 0) {
		var tabpersons = $$('div.tabperson');
		if (tabs.length != tabpersons.length || tabs.length < 1) return false;
	}
	
	tabs.each(function(item, index) {
        
	    item.addEvent('click', function() {
	        item.getElement('a').blur();
	        tabs.removeClass('active');
	        tabs[index].addClass('active');
	        tabcontents.setStyle('display', 'none');
	        tabcontents[index].setStyle('display', 'block');

	        if ($$('div.f34_cases_details').length > 0) {
	            tabpersons.setStyle('display', 'none');
	            tabpersons[index].setStyle('display', 'block');
	        }
	    });
	    tabnames[index] = item.getElement('a').get('html').toLowerCase();

	});
	
	// check if tab is requested directly through URL
	var queryString = location.search.substring(1, location.search.length);
	var queryArguments = queryString.split("&");
	for (var i = 0; i < queryArguments.length; ++i) {
		var queryPair = queryArguments[i].split('=');
		if (queryPair[0] == 'tab' && queryPair[1] != null) initialTab = queryPair[1].toLowerCase();
	}
	if (initialTab != -1) {
		var i = tabnames.indexOf(initialTab);
		if(i >= 0) {
			tabs[i].fireEvent('click');
			return false;
		}
	}
	
	// if not, display first tab by default
	tabs.removeClass('active');
	tabs[0].addClass('active');
	tabcontents.setStyle('display', 'none');
	tabcontents[0].setStyle('display', 'block');
	
	if ($$('div.f34_cases_details').length > 0) {
		tabpersons.setStyle('display', 'none');
		tabpersons[0].setStyle('display', 'block');
	}
	
}


/**
 * initEditDropdown
 *
 * initializes editable dropdown list interaction
 *
 * @author Klaas Dieleman <klaas{AT}efocus.nl>
 * @return void
 *
 */
 
function initEditDropdown() {
	var dropdown = document.getElement('ul.dropdown');
	var input = document.getElement('input.dropdown');
	var button = document.getElement('a.dropdown');
	
	if(!dropdown || !input || !button) return false;
	
	button.addEvent('click', function() {
		dropdown.toggleClass('open');
		button.blur();
	});
	$$('ul.dropdown a').each(function(item) {
		item.addEvent('click', function() {
			input.setProperty('value', item.get('html'));
			dropdown.removeClass('open');
			input.focus();
		});
	});	
}


/**
 * initTestimonials
 *
 * initializes testimonials navigation
 *
 * @author Klaas Dieleman <klaas{AT}efocus.nl>
 * @return void
 *
 */
 
function initTestimonials() {
	var thumbs = $$('div.f31_testimonials div.testimonials_list li');
	var testimonials = $$('div.f31_testimonials div.testimonials_text');
	var prev = document.getElement('div.f31_testimonials a.previous');
	var next = document.getElement('div.f31_testimonials a.next');
	var prevThumb = thumbs.length - 1;
	var nextThumb = 1;
	var initialTestimonial = -1;
	var testimonialIds = new Array;
	testimonials.each(function(item, index) {
		testimonialIds[index] = item.getProperty('id');
	});
	
	if (thumbs.length != testimonials.length || thumbs.length < 1) return false;
	
	showTestimonial = function(index) {
		prevThumb = index - 1;
		nextThumb = index + 1;
		if (index == 0) prevThumb = thumbs.length - 1;
		if (index == thumbs.length - 1) nextThumb = 0;
		
		testimonials.setStyle('display', 'none');
		testimonials[index].setStyle('display', 'block');
		
		thumbs.setStyle('left', -204);
		thumbs[prevThumb].setStyle('left', 0);
		thumbs[nextThumb].setStyle('left', 204);
	};
	
	thumbs.each(function(item, index) {
		item.addEvent('click', function() {
			showTestimonial(index);
		});
	});
	
	prev.addEvent('click', function() {
		showTestimonial(prevThumb);
		prev.blur();
	});
	
	next.addEvent('click', function() {
		showTestimonial(nextThumb);
		next.blur();
	});
	
	// check if testimonial is requested directly through URL
	var queryString = location.search.substring(1, location.search.length);
	var queryArguments = queryString.split("&");
	for (var i = 0; i < queryArguments.length; ++i) {
		var queryPair = queryArguments[i].split('=');
		if (queryPair[0] == 'testimonial' && queryPair[1] != null) initialTestimonial = queryPair[1];
	}
	if (initialTestimonial != -1) {
		var i = testimonialIds.indexOf(initialTestimonial);
		if(i >= 0) {
			showTestimonial(i);
			return false;
		}
	}
	
	// if not, display first testimonial by default
	showTestimonial(0);
}

function initReferenties() {
    var thumbs = $$('div.referenties div.referenties_list li');
    var referenties = $$('div.referenties div.referenties_text');
    var prev = document.getElement('div.referenties a.previous');
    var next = document.getElement('div.referenties a.next');
    var prevThumb = thumbs.length - 1;
    var nextThumb = 1;
    var initialReferentie = -1;
    var referentieIds = new Array;
    referenties.each(function(item, index) {
        referentieIds[index] = item.getProperty('id');
    });

    if (thumbs.length != referenties.length || thumbs.length < 1) return false;

    showReferentie = function(index) {
        prevThumb = index - 1;
        nextThumb = index + 1;
        if (index == 0) prevThumb = thumbs.length - 1;
        if (index == thumbs.length - 1) nextThumb = 0;

        referenties.setStyle('display', 'none');
        referenties[index].setStyle('display', 'block');

        thumbs.setStyle('left', -204);
        thumbs[prevThumb].setStyle('left', 0);
        thumbs[nextThumb].setStyle('left', 204);
    };

    thumbs.each(function(item, index) {
        item.addEvent('click', function() {
            showReferentie(index);
            scrollToElement('referenties');
        });
    });

    prev.addEvent('click', function() {
        showReferentie(prevThumb);
        prev.blur();
        scrollToElement('referenties');
    });

    next.addEvent('click', function() {
        showReferentie(nextThumb);
        next.blur();
        scrollToElement('referenties');
    });

    // check if testimonial is requested directly through URL
    var queryString = location.search.substring(1, location.search.length);
    var queryArguments = queryString.split("&");
    for (var i = 0; i < queryArguments.length; ++i) {
        var queryPair = queryArguments[i].split('=');
        if (queryPair[0] == 'testimonial' && queryPair[1] != null) initialReferentie = queryPair[1];
    }
    if (initialReferentie != -1) {
        var i = referentieIds.indexOf(initialReferentie);
        if (i >= 0) {
            showReferentie(i);
            return false;
        }
    }

    // if not, display first testimonial by default
    showReferentie(0);
}


/**
 * T12 Download center
 *
 * Checks if the list items are more than 2 and adds the specific class for it
 *
 * @author Erhan Karadeniz <erhan.karadeniz{AT}efocus.nl>
 * 
 */

function moreDownloads(){
	listMoreDownloads = $$('.moredownloads').each(function(listItems){
		//console.log(listItems.getElements('li').length)
		if(listItems.getElements('li').length >= 3){
			listItems.set('class', 'more_downloads_2columns');
		}
		else {
			listItems.set('class', 'more_downloads_1column');
		}
	})
}


/**
* replaceInlineBlock
*
* Replaces display inline block for -moz-inline-box for firefox 2 only, because of lack of support for this css property.
*
* @author Jasper Leferink <jasper.leferink{AT}efocus.nl>
* 
*/

function replaceInlineBlock() {
	if (!Browser.Engine.gecko || Browser.Engine.version != 18) return;
	$$('div.f9_sitemap ul li a').setStyle('display', '-moz-inline-box');
}

function redirectGoogleMaps(baseUrl, postcode) {
    window.open(baseUrl + escape(postcode));
}



/**
* insertYoutube
*
* replaces hyperlinks to Youtube movies with the Youtube object to that movie,
* adopting the width and height of the placeholder image inside the hyperlink
*
* @author Klaas Dieleman <klaas{AT}efocus.nl>
* 
*/

function insertYoutube() {

    var requiredFlashVersion = 9;
	var youtubelinks = new Array;
	document.getElements('a').each(function(item) {
		if (item.getProperty('href') && item.getProperty('href').substr(0,31) == "http://www.youtube.com/watch?v=" && item.getElement('img'))
			youtubelinks.include(item);
	});

	constructMovieObject = function(item) {
	    var youTubeCode = item.getProperty('href').substr(31, item.getProperty('href').length - 1);
	    var youTube = new Element('span');
	    
	    if (Browser.Plugins.Flash.version >= requiredFlashVersion) {

	        var youTubeObject = '<object ';
	        youTubeObject += 'width="' + item.getElement('img').getSize().x + '" ';
	        youTubeObject += 'height="' + item.getElement('img').getSize().y + '">\n';
	        youTubeObject += '<param name="movie" value="http://www.youtube.com/v/' + youTubeCode + '&hl=en&fs=1&rel=0"></param>\n';
	        youTubeObject += '<param name="allowFullScreen" value="true"></param>\n';
	        youTubeObject += '<param name="allowscriptaccess" value="always"></param>\n';
	        youTubeObject += '<embed src="http://www.youtube.com/v/' + youTubeCode + '&hl=en&fs=1&rel=0" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="' + item.getElement('img').getSize().x + '" height="' + item.getElement('img').getSize().y + '"></embed>\n';
	        youTubeObject += '</object>';

	        youTube.set('html', youTubeObject);
	        return youTube;

	    }

	};

	youtubelinks.each(function(item) {

	    if (Browser.Plugins.Flash.version >= requiredFlashVersion) {
	        var movie = constructMovieObject(item);
	        movie.inject(item, 'after');
	        item.destroy();
	    }
	    
	});
	
}

/**
* insertJWplayer
*
* replaces hyperlinks to flv media (in the Sitecore medialibrary) with instance of JWplayer,
* adopting the source videofile plus the width and height of the placeholder image inside the hyperlink
*
* @author Klaas Dieleman <klaas{AT}efocus.nl>
* 
*/

function insertJWplayer() {
    
    var requiredFlashVersion = 9;
	var jwlinks = new Array;
	document.getElements('a').each(function(item) {
		if (item.getProperty('href') && item.getProperty('href').substr(0,14).toLowerCase() == "~/media/video/" && item.getElement('img'))
			jwlinks.include(item);
	});

	if ($$('div.f33_accordion').length > 0 && Browser.Engine.webkit == false) {
	    $$('div.slides div.slidevideo').setStyle('display', 'block');
		$$('div.slides div.slidevideo').setStyle('position', 'absolute');
		$$('div.slides div.slidevideo').setStyle('left', -99999);
	}

	constructMovieObject = function(item) {

	    var jwFile = item.getProperty('href');
	    jwContainer = new Element('span');
	    jwContainer.inject(item, 'after');
	    if (Browser.Plugins.Flash.version >= requiredFlashVersion) {

	        var s1 = new SWFObject("/swf/player.swf", "player", item.getElement('img').getStyle('width'), item.getElement('img').getStyle('height'), requiredFlashVersion);
	        s1.addParam("allowfullscreen", "true");
	        s1.addParam("allowscriptaccess", "always");
	        s1.addParam("wmode", "transparent");
	        s1.addVariable("file", jwFile);
	        s1.addVariable("type", "video");
	        s1.write(jwContainer); 
	        item.destroy();

	    }

	};
	
	jwlinks.each(function(item) {
		constructMovieObject(item);
	});
	
	if($$('div.f33_accordion').length > 0) {
		$$('div.slides div.slidevideo').removeProperty('style');
	}
	
}


// ------------------------------------------------ BEGIN clientside control functions (Barend)

// return url, optionally with querystringpart and anchorpart
function getUrl(url, withQs, withAnchor) {
    var splits1 = url.split('#');
    var splits2 = splits1[0].split('?');

    var urlwithoutqs = splits2[0];
    var urlwithqs = splits2[1] ? splits2[0] + '?' + splits2[1] : splits2[0];
    var urlwithanchor = splits1[1] ? urlwithqs + '#' + splits1[1] : urlwithqs;

    if (!withQs && !withAnchor) return urlwithoutqs;
    else if (!withAnchor) return urlwithqs;
    else return urlwithanchor;
}

// parse querystring to assoc array
function parseQuerystring(url) {
    var arr = {};
    var que = url;
    if (que.indexOf('?') >= 0)
        que = que.substring(que.indexOf('?') + 1);
    else que = "";

    if (que != "") {
        que = que.split("&");

        for (var i = 0; i < que.length; i++) {
            var inter = que[i].split("=");
            var inter2 = inter[1];
            var inter3 = inter[0];
            que[i] = inter2;
            arr[inter3] = inter2;
        }
    }
    return arr;
}

// read param from current url and return value
function getQsParam(param) {
    var querystring = parseQuerystring(location.href);
    return querystring[param] ? querystring[param] : '';
}

// remove param from url and return result
function removeQsParam(url, param) {
    var querystring = parseQuerystring(url);
    delete (querystring[param]);

    var vars = [];
    for (var i in querystring) vars.push(i + '=' + querystring[i]);
    url = getUrl(url, false, false);
    if (vars.length > 0) url += '?' + vars.join('&');

    return url;
}

// update or add param to url and return result
function setQsParam(url, param, value) {
    var querystring = parseQuerystring(url);
    querystring[param] = value;

    var vars = [];
    for (var i in querystring) vars.push(i + '=' + querystring[i]);
    url = getUrl(url, false, false);
    if (vars.length > 0) url += '?' + vars.join('&');

    return url;
}

/**
* listPeriodChange
*
* changes list period without disturbing other querystring parameters, but reset pagnr
*
* @author Barend van der Hout <barend{AT}efocus.nl>
* @return false
*/
function listPeriodChange(qsvar, value) {
    var url = getUrl(location.href, true, false);
    url = removeQsParam(url, 'pagnr');
    if (value) url = setQsParam(url, qsvar, '' + value);
    else url = removeQsParam(url, qsvar);
    location.href = url;
    return false;
}


function listYearChange(qsvar, value) {
    var url = getUrl(location.href, true, false);
    url = removeQsParam(url, 'pagnr');
    if (value) url = setQsParam(url, qsvar, '' + value);
    else url = removeQsParam(url, qsvar);
    location.href = url;
    return false;
}

function NieuwsoverzichtSorteringOmkeren() {
    var url = getUrl(location.href, true, false);
    url = removeQsParam(url, 'pagnr');
    if (getQsParam('sorteringomkeren'))
        url = removeQsParam(url, 'sorteringomkeren');
    else
        url = setQsParam(url, 'sorteringomkeren', '1');
    location.href = url;
    return false;
}

function EvenementCategoriefilter(eventcat) {
    var url = getUrl(location.href, true, false);
    url = setQsParam(url, 'eventcat', eventcat);
    location.href = url;
    return false;
}

function EvenementDatumfilter(vanafdatum, totdatum) {
    var url = getUrl(location.href, true, false);
    url = removeQsParam(url, 'pagnr');
    url = vanafdatum ? setQsParam(url, 'vanafdatum', vanafdatum) : removeQsParam(url, 'vanafdatum');
    url = totdatum ? setQsParam(url, 'totdatum', totdatum) : removeQsParam(url, 'totdatum');
    location.href = url;
    return false;
}

function GetEnter(url, keycode, zoekstring, zoekinhuidigresultaat) {
    if (keycode != 13) return true;
    else return RedirectZoek(url, zoekstring, zoekinhuidigresultaat);
}

function RedirectZoek(url, zoekstring, zoekinhuidigresultaat) {
    if (zoekinhuidigresultaat) zoekstring = getQsParam('q') + ' ' + zoekstring;
    window.location = url + "?q=" + zoekstring;
    return false;
}

function ZoekSortering(waarde) {
    var url = getUrl(location.href, true, false);
    url = removeQsParam(url, 'pagnr');
    url = waarde ? setQsParam(url, 'sortering', waarde) : removeQsParam(url, 'sortering');
    location.href = url;
    return false;
}

// ------------------------------------------------ END clientside control functions (Barend)

function ZoekFilter(categorie) {
    var url = getUrl(location.href, true, false);
    url = removeQsParam(url, 'pagnr');
    url = categorie ? setQsParam(url, 'categorie', categorie) : removeQsParam(url, 'categorie');
    location.href = url;
    return false;
}



/**
* initCEOvideo
*
* 
* @author Klaas Dieleman <klaas{AT}efocus.nl>
* 
*/

function initCEOvideo() {
	
	if (document.getElements('div.f44_ceovideos').length == 0) return false;

	var requiredVersion = 9;
	
	
	if (Browser.Plugins.Flash.version >= requiredVersion) {
		var videolinks = $$('div.f44_ceovideos ul.videolist a');
		var videofiles = videolinks.get('href');
		var subtitlefiles = videolinks.get('name');

		var loadVideo = function(index) {
		    var s1 = new SWFObject("/swf/player.swf", "player", 480, 290, requiredVersion);
		    s1.addParam("allowfullscreen", "true");
		    s1.addParam("allowscriptaccess", "always");
		    s1.addParam("wmode", "transparent");
		    s1.addVariable("file", videofiles[index]);
		    if (subtitlefiles[index]) {
		        s1.addVariable("plugins", "captions");
		        s1.addVariable("captions.file", "http://www.ordina.nl/swf/subs/" + subtitlefiles[index]);
		        s1.addVariable("captions.fontsize", 14);
		    }
		    s1.addVariable("streamer", "rtmp://streaming2.shared.nines.nl/ordina");
		    s1.addVariable("type", "rtmp");
		    s1.addVariable("autostart", true);
		    s1.write('videoplayer');
		};
	    
		videolinks.each(function(item, index) {
			item.addEvent('click', function(event){
				event.preventDefault();
				loadVideo(index);
			});
		});
	    
		loadVideo(0);
	}

};

/**
 * scrollToElement
 *
 * Scroll page to given element
 * @author Andre Kuijer <andre.kuijer{AT}efocus.nl>
 *
 */
function scrollToElement(id) {
    var winScroller = new Fx.Scroll(window);
    winScroller.toElement(id);
}