
var ShadowboxVideo = (function() {
	
	//initieer variabelen
	var shadowBox;
	var shadowScreen;
	var cross;
	var shadowBoxWidth;
	var shadowBoxHeight;

	//initialisatie
	var init = function() {
		
		if(!document.getElementById('shadowbox')) return false;
		
		//shadowbox verplaatsen bij resizen en scrollen
		window.onresize = window.onscroll = ShadowboxVideo.setpos;
		
		//initieer elementen
		shadowBox = document.getElementById('shadowbox'); 
		cross = document.getElementById('close'); 
		
		//shadowScreen toevoegen
		var div = document.createElement('div');
		div.id = 'shadow_screen';
		shadowScreen = document.body.appendChild(div);
		
		//verbergen bij klik op kruisje en klik buiten shadowbox
		shadowScreen.onclick = hide;
		cross.onclick = hide;
		
		//display block om afmetingen shadowBox op te halen, verbergen met visibility
		shadowBox.style.visibility = 'hidden';
		shadowBox.style.display = 'block';
		
		//afmetingen shadowBox ophalen
		shadowBoxWidth = shadowBox.offsetWidth;
		shadowBoxHeight = shadowBox.offsetHeight;
		
		//shadowBox weer verbergen
		shadowBox.style.display = 'none';
		shadowBox.style.visibility = 'visible';
	};
	
	//shadowbox tonen
	var show = function(data) {
		
		//eventuele scrolbalken verbergen
		document.body.style.overflow = 'hidden';
		
		//shadowbox positioneren
		positionContent();
		
		//video laden
		loadVideo(data);
		
		//shadowbox weergeven
		shadowScreen.style.display = 'block';
		shadowBox.style.display = 'block';
	};
	
	//shadowbox verbergen
	var hide = function() {
		
		//eventuele scrolbalken verbergen
		if(document.all) document.body.style.overflow = 'auto'; //IE
		else document.body.style.overflow = 'scroll'; 
		
		loadEmptyVideo();
		shadowBox.style.display = 'none';
		shadowScreen.style.display = 'none';	
	};
	
	//shadowbox positioneren
	var positionContent = function() {

		//afmetingen scherm ophalen
		if(window.innerWidth) {
			var scWidth = window.innerWidth;
			var scHeight = window.innerHeight;
		}
		//IE
		else {
			var scWidth = document.documentElement.clientWidth;
			var scHeight = document.documentElement.clientHeight;
		}
		
		//shadowbox dimensioneren (nodig voor IE6)
		if(document.all) {
			var fullWidth = document.documentElement.scrollWidth;
			var fullHeight = document.documentElement.scrollHeight;
			shadowScreen.style.width = fullWidth + 'px';
			shadowScreen.style.height = fullHeight + 'px';
		}
		
		//scrollpositie scherm
		if(document.documentElement.scrollLeft > document.body.scrollLeft) var sl = document.documentElement.scrollLeft;
		else if(document.documentElement.scrollLeft < document.body.scrollLeft) var sl = document.body.scrollLeft;
		else var sl = 0;
		
		if(document.documentElement.scrollTop > document.body.scrollTop) var st = document.documentElement.scrollTop;
		else if(document.documentElement.scrollTop < document.body.scrollTop) var st = document.body.scrollTop;
		else var st = 0;
		
		//positie div bepalen
		var contentX = sl + (scWidth/2) - (shadowBoxWidth/2);
		var contentY = st + (scHeight/2) - (shadowBoxHeight/2);
		
		//aanpassen indien beeld groter dan scherm
		if(shadowBoxWidth > scWidth) contentX = sl;
		if(shadowBoxHeight > scHeight) contentY = st;
		
		//positioneren
		shadowBox.style.left = contentX + 'px';
		shadowBox.style.top = contentY + 'px';
	};
	
	//video laden
	var loadVideo = function(data) {	
		
		//data splitten
		var w = data.split(',');
		var map = w[0];
		var submap = w[1];
		var beeld = w[2];
		var type = w[3];
	
		var so = new SWFObject("../images/swf/video/film_container2.swf?map="+map+"&submap="+submap+"&beeld="+beeld, "filmcontainer", "800", "490", "8.0",
	    "##000000", true);
		so.addParam("wmode", "transparent");
		so.write("filmcontainer");	
	};
	
	//lege video laden
	var loadEmptyVideo = function () {	
		var so = new SWFObject("../images/swf/video/film_empty.swf", "filmcontainer", "800", "490", "8.0", "##000000", true);
		so.addParam("wmode", "transparent");
		so.write("filmcontainer");	
	};
	
	return {
		init: init,
		show: show,
		setpos: positionContent
	}
	
})();

window.attachEvent ? window.attachEvent('onload', ShadowboxVideo.init) : window.addEventListener('load', ShadowboxVideo.init, false);


