function MM_swapImgRestore() { //v3.0
    var i,x,a=document.MM_sr;
    for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
    var d=document;
    if(d.images){
        if(!d.MM_p) d.MM_p=new Array();
        var i,j=d.MM_p.length,a=MM_preloadImages.arguments;
        for(i=0; i<a.length; i++)
            if (a[i].indexOf("#")!=0){
                d.MM_p[j]=new Image;
                d.MM_p[j++].src=a[i];
            }
        }
}

function MM_findObj(n, d) { //v4.01
    var p,i,x;
    if(!d) d=document;
    if((p=n.indexOf("?"))>0&&parent.frames.length) {
        d=parent.frames[n.substring(p+1)].document;
        n=n.substring(0,p);
    }
    if(!(x=d[n])&&d.all) x=d.all[n];
    for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
    for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
    if(!x && d.getElementById) x=d.getElementById(n);
    return x;
}

function MM_swapImage() { //v3.0
    var i,j=0,x,a=MM_swapImage.arguments;
    document.MM_sr=new Array;
    for(i=0;i<(a.length-2);i+=3)
        if ((x=MM_findObj(a[i]))!=null){
            document.MM_sr[j++]=x;
            if(!x.oSrc) x.oSrc=x.src;
            x.src=a[i+2];
        }
}

function rnd(){
    return String((new Date()).getTime()).replace(/\D/gi,'')
}

function isValidEmail(str) {
    return (str.indexOf(".") > 2) && (str.indexOf("@") > 0);
} 

function urlencode(str) {
    str = escape(str);
    str = str.replace(/\+/g, '%2B');
    str = str.replace(/%20/g, '+');
    str = str.replace(/\*/g, '%2A');
    str = str.replace(/\//g, '%2F');
    str = str.replace(/@/g, '%40');
    return str;
}

function urldecode(str) {
    str = str.replace(/\+/g, ' ');
    str = unescape(str);
    return str;
}

function dotoggle( div_id)
{
    document.getElementById(div_id).innerHTML = '';

    if(document.getElementById(div_id).style.display && document.getElementById(div_id).style.display == 'block')
        document.getElementById(div_id).style.display = 'none';
    else
    {
        document.getElementById(div_id).style.display = 'block';
        new Ajax.Request('http://www.fotoinlijst.nl/ajax/showerrors.php',  {
            method: 'post',
            parameters: '',
            onSuccess: function(transport){
                var result = transport.responseText.evalJSON();
                for( i = 0; i<= result.length; i++)
                {
                    error = document.createElement("div");
                    titel = document.createElement("h3");

                    titeltext = document.createTextNode(result[i].type+ '. In bestand: '+result[i].url + '. Op regel '+result[i].line);
                    titel.appendChild(titeltext);
                    error.appendChild(titel);
                
                    errormsg = document.createElement("div");
                    titeltext = document.createTextNode(result[i].error);
                    errormsg.appendChild(titeltext);
                    error.appendChild(errormsg);
                
                    backtracemsg = document.createElement("div");
                    backtracemsg.innerHTML = 'Backtrace:\r\n'+result[i].backtrace;
                    error.appendChild(backtracemsg);
                
         
                    document.getElementById(div_id).appendChild(error);
                }
            }
        });
}
	
}

function showMenu(id)
{
    hideAll();
    if($(id+'_uitklap'))
        $(id+'_uitklap').style.display = 'block';
    $('boven_'+id).className = 'menu_boven active';
	
}

function hideAll()
{
    menu_items = document.getElementsByClassName('uitklap');
	
    for(var i = 0; i < menu_items.length; i++)
        menu_items[i].style.display = 'none';
		
    menu_items2 = document.getElementsByClassName('menu_boven');

    for(var i = 0; i < menu_items2.length; i++)
    {
        menu_items2[i].className = 'menu_boven';
		
    }
}

function hideMenu(id)
{
    if(id == 'all')
    {
        hideAll();
    }
    else
        $(id+'_uitklap').style.display = 'none';
}

function checkFileSize()
{
    afbeelding = document.getElementById('origineel').value;
	
    new Ajax.Request('http://www.fotoinlijst.nl/ajax/check_filesize.php',  {
        asynchronous: 'false',
        method: 'post',
        parameters: 'afbeelding='+afbeelding,
        onSuccess: function(transport){
            var result = transport.responseText.evalJSON();
            //document.getElementById('kwaliteit').innerHTML = 'Kwaliteit van deze afbeelding is '+result.message;
            //document.getElementById('kwaliteit').className = result.message;
		
            if(result.width > result.height)
            {
			 
                document.getElementById('lijstje1').style.width = '370px';
                document.getElementById('lijstje1').style.height = '320px';
			
                document.getElementById('edit_image').style.width = '360px';
                document.getElementById('edit_image').style.height = '300px';
			
                document.getElementById('testimg').style.height = 'auto';
                document.getElementById('testimg').style.width = '350px';
			
			
                document.getElementById('lijstje1').style.background = 'url("http://www.fotoinlijst.nl/images/lijstjes/groot_'+document.getElementById('lijstje').value+'_liggend.png")';

			
            }
            else
            {
			
                document.getElementById('lijstje1').style.width = '320px';
                document.getElementById('lijstje1').style.height = '370px';
                document.getElementById('testimg').style.height = '350px';
                document.getElementById('testimg').style.width = 'auto';
			
                document.getElementById('edit_image').style.width = '300px';
                document.getElementById('edit_image').style.height = '360px';
                document.getElementById('lijstje1').style.background = 'url("http://www.fotoinlijst.nl/images/lijstjes/groot_'+document.getElementById('lijstje').value+'.png")';
            }
            document.getElementById('imagewidth').value = result.width;
            document.getElementById('imageheight').value = result.height;
            setPosition( result.width, result.height);
            if(result.width > result.height && document.getElementById('niet_liggend').value == '1')
            {
                alert('U heeft een liggende foto gekozen, maar dit lijstje is alleen geschikt voor staande foto\'s.');
            }
            document.getElementById('nabewerking_details').style.display = 'block';
        }
    });
}

function checkProduct(lijst, cont)
{
    if( document.getElementById('zonder_afbeelding').checked == false && document.getElementById('zonder_afbeelding1').checked == false)
    {
        alert('Maak alstublieft uw keuze bij stap 1');
        return false;
    }

    afbeelding = document.getElementById('bestel_afbeelding').value;
    var origineel = document.getElementById('origineel').value;
    var links = document.getElementById('leftvalue').value;

    var topvalue = document.getElementById('topvalue').value;
    var imagewidth = document.getElementById('imagewidth').value;
    var imageheight = document.getElementById('imageheight').value;

    var lijstje = document.getElementById('zonder_afbeelding').checked;
    aantal = 1;

    new Ajax.Request('http://www.fotoinlijst.nl/ajax/checkproduct.php',
    {

        method: 'post',
        parameters: 'lijst='+lijst+'&afbeelding='+afbeelding+'&origineel='+origineel+'&links='+links+'&top='+topvalue+'&aantal='+aantal+'&lijstje='+lijstje+'&width='+imagewidth+'&height='+imageheight,
        onSuccess: function(transport) {
            if(transport.responseText == 'goed')
                addProduct(lijst, cont);
            else
            {
                var answer = confirm(transport.responseText+' Hierdoor valt een stuk van de foto weg. Weet u zeker dat u door wilt gaan?');
                if(answer)
                    addProduct(lijst, cont);
            }
        }
    }
    );
}

function addProduct(lijst, cont)
{
    if( document.getElementById('zonder_afbeelding').checked == false && document.getElementById('zonder_afbeelding1').checked == false)
    {
        alert('Maak alstublieft uw keuze bij stap 1');
        return false;
    }
	
    afbeelding = document.getElementById('bestel_afbeelding').value;
    var origineel = document.getElementById('origineel').value;
    var links = document.getElementById('leftvalue').value;
	
    var topvalue = document.getElementById('topvalue').value;
    var imagewidth = document.getElementById('imagewidth').value;
    var imageheight = document.getElementById('imageheight').value;
	
    var lijstje = document.getElementById('zonder_afbeelding').checked;
    aantal = 1;
	
    new Ajax.Request('http://www.fotoinlijst.nl/ajax/addproduct.php',
    {
		
        method: 'post',
        parameters: 'lijst='+lijst+'&afbeelding='+afbeelding+'&origineel='+origineel+'&links='+links+'&top='+topvalue+'&aantal='+aantal+'&lijstje='+lijstje+'&width='+imagewidth+'&height='+imageheight,
        onSuccess: function(transport) {
            if(cont == '1')
                window.location = 'http://www.fotoinlijst.nl/'+transport.responseText;
            else
                window.location = 'http://www.fotoinlijst.nl/shoppingcart';
        }
    }
    );
}


function deleteProduct(product,row)
{
    new Ajax.Request('http://www.fotoinlijst.nl/ajax/deleteproduct.php',
    {
		
        method: 'post',
        parameters: '&product='+product,
        onSuccess: function(transport) {
            document.getElementById('row'+row).style.display = 'none';
            alert('Het product is verwijderd uit uw winkelmandje');
        }
    }
    );
}

function vergroot()
{
    var end = new Date();
    var resulttext = 'true';
    var bestel_afbeelding = '';
	
    var width_new = '';
    var height_new = '';
    new Ajax.Request('http://www.fotoinlijst.nl/ajax/resizeimage.php',
    {
		
        method: 'post',
        asynchronous:  	false,
        parameters: '&afbeelding='+document.getElementById('afbeelding').value+'&optie=vergroot',
        onSuccess: function(transport)
        {
            var result = transport.responseText.evalJSON();
            if(result.resulttext == 'false')
            {
                resulttext = result.resulttext
            }
            else
            {
                img_new = 'http://www.fotoinlijst.nl/bestanden/'+result.sessie_id+'/'+result.image;
                bestel_afbeelding = result.image;
                width_new = result.width_new;
                height_new = result.height_new;
            }
        }
    }
     
    ); 
    if(resulttext == 'true')
    {
        document.getElementById('testimg').style.width = width_new+'px';
        document.getElementById('imagewidth').value = width_new;
        document.getElementById('imageheight').value = height_new;
        document.getElementById('testimg').style.height = height_new+'px';
        document.getElementById('testimg').src = img_new+'?time='+rnd();
        document.getElementById('bestel_afbeelding').value = bestel_afbeelding;
        setPosition( width_new, height_new);
    }
    else
    {
        alert('De foto kan niet groter worden dan de originele foto');
    }
}

function setPosition(width, height)
{
    if(width > height)
    {
        boven = '50';
        links = '15';
		
    }
    else
    {
        boven = '15';
        links = '50';
    }
	
    document.getElementById('testimg').style.top = boven +'px';
    document.getElementById('testimg').style.left = links +'px';
    document.getElementById('leftvalue').value = links;
    document.getElementById('topvalue').value = boven;
}

function verklein()
{
    var end = new Date();
    var img_new = '';
    var width_new = '';
    var height_new = '';
    var resulttext = 'true';
    var bestel_afbeelding = '';
    new Ajax.Request('http://www.fotoinlijst.nl/ajax/resizeimage.php',
    {
		
        method: 'post',
        asynchronous: false,
        parameters: '&afbeelding='+document.getElementById('afbeelding').value+'&optie=verklein',
        onSuccess: function(transport)
        {
            var result = transport.responseText.evalJSON();
            if(result.resulttext == 'false')
            {
                resulttext = result.resulttext
            }
            else
            {
                img_new = 'http://www.fotoinlijst.nl/bestanden/'+result.sessie_id+'/'+result.image;
                width_new = result.width_new;
                height_new = result.height_new;
                bestel_afbeelding = result.image;
            }
        }
    }
     
    ); 
    if(resulttext == 'true')
    {
        document.getElementById('testimg').style.width = width_new+'px';
        document.getElementById('testimg').style.height = height_new+'px';
        document.getElementById('testimg').src = img_new+'?time='+rnd();
        document.getElementById('bestel_afbeelding').value = bestel_afbeelding;
        setPosition( width_new, height_new);
    }
    else
    {
        alert('De foto kan niet groter worden dan de originele foto');
    }
}

function emptyShoppingCart()
{
    new Ajax.Request('http://www.fotoinlijst.nl/ajax/emptycart.php',  {
        method: 'post',
        onSuccess: function(transport){
            document.location = 'http://www.fotoinlijst.nl/shoppingcart';
        }
    });
}

function updateAantalCart(id,row)
{
    
    aantal = document.getElementById('aantal['+row+']').value;
    new Ajax.Request('http://www.fotoinlijst.nl/ajax/updateaantalcart.php',  {
        method: 'post',
        parameters: 'id='+id+'&aantal='+aantal,
        onSuccess: function(transport){
        
            var result = transport.responseText.evalJSON();
   
            $('total_incl_vat_verzendkosten').innerHTML = '&euro; ' + result.total_prijs_incl_vat_verzendkosten;
            document.getElementById('total_price'+row).innerHTML = '&euro; ' + result.total_prijs_item;
            document.getElementById('total_incl_vat').innerHTML = '&euro; ' + result.total_prijs_incl_vat;
        }
    });
}

function updateGegevens(id)
{
    var adresForm = document.forms['adresgegevens'];
    aantal_items = adresForm.elements.length;
    var parameter_string = '';
    for(i = 0; i < aantal_items; i++)
    {
        
        if(i == 0)
            parameter_string = adresForm.elements[i].name + '=' + escape(adresForm.elements[i].value);
        else
        {
            if(adresForm.elements[i].type == 'radio')
            {
                if(adresForm.elements[i].checked == true)
                    parameter_string = parameter_string + '&' +  adresForm.elements[i].name + '=' + escape(adresForm.elements[i].value);
            }
            else
                parameter_string = parameter_string + '&' +  adresForm.elements[i].name + '=' + escape(adresForm.elements[i].value);
        }
    }
	
    new Ajax.Request('http://www.fotoinlijst.nl/ajax/updategegevens.php',  {
        method: 'post',
        parameters: parameter_string,
        onSuccess: function(transport){
            var result = transport.responseText.evalJSON();
        
        }
    });
}

function isValidEmail(str) {
    return (str.indexOf("@") > 0);
} 

function controleerGegevens()
{
    var message  = '';
    check = true;
    var adresForm = document.forms['adresgegevens'];
    aantal_items = adresForm.elements.length;
    
	
    for(i = 0; i < aantal_items; i++)
    {
        
       
        
        if(adresForm.elements[i])
        {
            if(adresForm.elements[i].name == 'email' && ! isValidEmail(adresForm.elements[i].value) )
            {
                check = false;
                message = message + 'U heeft geen geldig emailadres ingevuld\n';
                    
            }
            else if(adresForm.elements[i].value == '' && adresForm.elements[i].type == 'text' && adresForm.elements[i].name != 'actiecode')
            {
                check = false;
                message = message + 'Het veld ' + adresForm.elements[i].name + ' is niet ingevuld\n';
            }
    
        }
    }
    if(check == false)
        alert(message);
    else
        adresForm.submit();
	
}

function controleerAfleverGegevens()
{
    updateGegevens();
    var message  = '';
    check = true;
    var adresForm = document.forms['adresgegevens'];
    aantal_items = adresForm.elements.length;
    
	
    for(i = 0; i < aantal_items; i++)
    {
        
       
        
        if(adresForm.elements[i])
        {
           
            if(adresForm.elements[i].type == 'text' && adresForm.elements[i].value == '')
            {
              
                check = false;
                
            }
            
        }
    }
    
    if(check == false)
        alert('U heeft nog niet alle gegevens ingevuld');
    else
        adresForm.submit();
	
}

function setFactuurAdres(value,row,key)
{
	
    if(value != true)
    {
        document.getElementById('voornaam_'+key+'_'+row).value = '';
        document.getElementById('achternaam_'+key+'_'+row).value = '';
        document.getElementById('adres_'+key+'_'+row).value = '';
        document.getElementById('postcode_'+key+'_'+row).value = '';
        document.getElementById('plaats_'+key+'_'+row).value = '';
        document.getElementById('land_'+key+'_'+row).value = '';
    }
    else
    {
        document.getElementById('voornaam_'+key+'_'+row).value = document.getElementById('factuuradres_voornaam').value;
        document.getElementById('achternaam_'+key+'_'+row).value = document.getElementById('factuuradres_achternaam').value;
        document.getElementById('adres_'+key+'_'+row).value = document.getElementById('factuuradres_adres').value;
        document.getElementById('postcode_'+key+'_'+row).value = document.getElementById('factuuradres_postcode').value;
        document.getElementById('plaats_'+key+'_'+row).value = document.getElementById('factuuradres_woonplaats').value;
        document.getElementById('land_'+key+'_'+row).value = document.getElementById('factuuradres_land').value;
    }
	
}

function saveBestelling()
{
    if(document.getElementById('algemene_voorwaarden').checked == false)
    {
        alert('U bent niet akkoord gegaan met de algemene voorwaarden, om uw bestelling af te ronden verzoeken wij u vriendelijk akkoord te gaan met de algemene voorwaarden.');
        return false;
    }
    if(document.getElementById('betaalwijze').value == '')
    {
        alert('U moet een betaalwijze selecteren');
        return false;
    }
    var nieuwsbrief = '';
    if(document.getElementById('nieuwsbrief').checked == false)
        nieuwsbrief = 0;
    else
        nieuwsbrief = 1;
    
    var betaalwijze = '';
    betaalwijze = document.getElementById('betaalwijze').value == 'ideal';
	    	
	new Ajax.Request('http://www.fotoinlijst.nl/ajax/savebestelling.php',  {
		method: 'post',
		parameters: '',
		onFailure: function(){
			alert('Betaling kan niet worden gedaan, excuses voor het ongemak, probeer het later opnieuw...')
		},
		onSuccess: function(){
			new Ajax.Request('http://www.fotoinlijst.nl/ajax/mailbestelling.php',  { 
				method: 'post',
				parameters: 'betaalwijze='+betaalwijze+'&nieuwsbrief='+nieuwsbrief,
				onFailure: function(){
					alert('Betaling kan niet worden gedaan, excuses voor het ongemak, probeer het later opnieuw...')
				},
				onSuccess: function(){			   
					if(document.getElementById('betaalwijze').value == 'ideal')
					{
						document.getElementById('form1').submit();
					}
					else
					{
						document.location = 'http://www.fotoinlijst.nl/vooruitbetalen';
					}
				}
			});;
		}
	});
	;
    
    
    
    
    return false;
    
}

function limiet(veld, maximum, telveld)
{
    if (veld.value.length > maximum)
        veld.value = veld.value.substring(0, maximum);
    else
        document.getElementById(telveld).firstChild.nodeValue = (maximum - veld.value.length);
}
