/* -------------- */
/* XMLHTTPRequest */
/* -------------- */

function createRequestObject() {
    var request;

    if(window.XMLHttpRequest) { 
        request=new XMLHttpRequest();
    } else if(window.ActiveXObject) { 
        var ie_versions = ["MSXML2.XMLHttp.5.0", "MSXML2.XMLHttp.4.0", "MSXML2.XMLHttp.3.0", "MSXML2.XMLHttp", "Microsoft.XMLHttp"];
 
        for(var i=0; i <ie_versions.length; i++) {
            try {
                request = new ActiveXObject(ie_versions[i]);
            }
            catch (error) {}
        }
    }
    return request;
} 

/* ------------- */
/* Dropdown menu */
/* ------------- */

var otherelement;

sfHover = function()
{
	var sfEls = document.getElementById("mainMenu").getElementsByTagName("LI");
	for (var i=0; i<sfEls.length; i++) {
		sfEls[i].onmouseover=function() {
			this.className+=" sfhover";
		}
		sfEls[i].onmouseout=function() {
			this.className=this.className.replace(new RegExp(" sfhover\\b"), "");
		}
	}
}
if (window.attachEvent) window.attachEvent("onload", sfHover);

/* ------------------------ */
/* Tabmenu for configurator */
/* ------------------------ */

// selected = pane number
// id = pane name
// container = the <div> in which the tabs occur

function selectPane(selected, id, container)
{	
	totalPanes = document.getElementById(container).getElementsByTagName('form').length + 1;
		
	var i = 1;
	
	while(i < totalPanes)
	{
		newId = id + i;
		pane = document.getElementById(newId).style.display='none';
		i++;
	}
	
	blockId = id + selected;
	document.getElementById(blockId).style.display = 'block';
}

function showHideElement(thisForm, element, cleanelement) {
	var value = document.getElementById(element).style.display;
	if(value == 'none'){
		document.getElementById(element).style.display = 'block';
	}
	else{
		document.getElementById(element).style.display = 'none';
	}
	
	if (cleanelement) {
	    try {document.getElementById(cleanelement).innerHTML='';} catch(ex) {}
	}
}

function closeFilmGallery(thisForm, element) {
    document.getElementById(element).style.display = 'none';
    document.getElementById("filmSmall").innerHTML='';
    document.getElementById("filmLarge").innerHTML='';
    document.getElementById("meerfilmSmall").style.display = 'none';
    document.getElementById("meerfilmLarge").style.display = 'none';
}

function showHideFromFlash(thisForm, elementOpen, elementClose)
{
	var valueOpen = document.getElementById(elementOpen).style.display;
	var valueClose = document.getElementById(elementClose).style.display;	
	
	if(elementOpen) document.getElementById(elementOpen).style.display = 'block';
	if(elementClose) document.getElementById(elementClose).style.display = 'none';
	
}

function showHide2Elements(thisForm, elementOpen, elementClose, elementClose2, imgurl, vidurllarge, header)
{
    if (imgurl) {
        // Dynamisch laden van plaatjes
        document.getElementById(elementOpen).getElementsByTagName("img")[0].src=imgurl;
    }
    
    if (vidurllarge) {
        // Dynamisch laden van video's
		var vid_large = new SWFObject("./swf/videoLarge.swf", "videoSmall", "360", "288", "8");
		vid_large.addParam("quality", "high");
		vid_large.addParam("menu", "false");
		vid_large.addParam("wmode", "opaque");
		vid_large.addParam("align", "t");
		vid_large.addParam("scale", "noscale");
        vid_large.addVariable("videoURL", vidurllarge);
		vid_large.write("filmLarge");

		var vid_small = new SWFObject("./swf/videoSmall.swf", "videoSmall", "180", "144", "8");
		vid_small.addParam("quality", "high");
		vid_small.addParam("menu", "false");
		vid_small.addParam("wmode", "opaque");
		vid_small.addParam("align", "t");
		vid_small.addParam("scale", "noscale");
        vid_small.addVariable("videoURL", vidurllarge.replace('_high.flv','_low.flv'));
		vid_small.write("filmSmall");
    }
    
    if (header) {
        document.getElementById("meerfilmSmall").getElementsByTagName("h1")[0].innerHTML=header;
        document.getElementById("meerfilmLarge").getElementsByTagName("h1")[0].innerHTML=header;
    }
    
    var valueOpen = document.getElementById(elementOpen).style.display;
    var valueClose = document.getElementById(elementClose).style.display;
	
    if (elementOpen) document.getElementById(elementOpen).style.display = 'block';
    if (elementClose) document.getElementById(elementClose).style.display = 'none';
    if (elementClose2) document.getElementById(elementClose2).style.display = 'none';
}


function initbanner(bannerarr, el, position)
{
	if (bannerarr&&el)
	{
		if (bannerarr.length>0)
		{
		    if (!position) position=0;
		    if (position>=bannerarr.length) position=0;
		
		    // always in this form:
		    // [duration];[type];[backcolor];[data]
		
		    var item=''+bannerarr[position];
		    var duration=1000*item.substring(0, item.indexOf(';'));
		    var type=item.substring(item.indexOf(';')+1);
		    var backcolor=type.substring(type.indexOf(';')+1);
		    var data=backcolor.substring(backcolor.indexOf(';')+1);
		    type=type.substring(0, type.indexOf(';'));
		    backcolor=backcolor.substring(0, backcolor.indexOf(';'));
		
		    var imgnode=el.getElementsByTagName('img')[0];
		    var swfnode=el.getElementsByTagName('div')[0];
		    position++;
	            switch (type)
	            {
	                case 'image':
	                    imgnode.src=data;
	                    imgnode.style.display="block";
	                    swfnode.style.display="none";
	                    break;
	                case 'flash':
	                    swfnode.innerHTML="";
	                    var so = new SWFObject(data, "", "125", "125", "0");
	                    so.addParam("quality", "high");
	                    so.addParam("menu", "false");
	                    so.addParam("wmode", "opaque");
	                    so.addParam("align", "t");
	                    so.addParam("scale", "scale");
	                    so.write(swfnode.id);
	                    imgnode.style.display="none";
	                    swfnode.style.display="block";
	                    break;
	                case 'xhtml':
	                    swfnode.innerHTML=data;
	                    imgnode.style.display="none";
	                    swfnode.style.backgroundColor=backcolor;
	                    swfnode.style.display="block";
	                    break;
	                default:
	                    break;
			}
		    if (duration>0) window.setTimeout(function() {initbanner(bannerarr, el, position);}, duration);
        }
	}
}

function retreivePhotoGallery(galleryname, divcontainername) {
    retreiveGallery('image', galleryname, divcontainername);
}

function retreiveVideoGallery(galleryname, divcontainername) {
    retreiveGallery('flash', galleryname, divcontainername);
}

function retreiveGallery(gallerytype, galleryname, divcontainername) {
    var m_request;
    var m_el=document.getElementById(divcontainername);
    m_request=createRequestObject();
    m_request.open("POST", "GalleryXML.aspx", true);
    m_request.onreadystatechange = function() {
        if (m_request.readyState == 4 && m_request.status == 200) {
            if (m_request.responseText) {
               setGallery(m_el, m_request.responseText);
            }
        }
    }
    m_request.send('<data><galleryname type="'+gallerytype+'">'+galleryname+'</galleryname></data>');
}

function setGallery(divcontainer, html) {
    divcontainer.innerHTML=''+html;
    divcontainer.style.display='block';
}