document.getElementsByClassName = function (needle)
{
    var s = document.getElementsByTagName('*'), i = s.length, r = [], e, c;
    needle = ' ' + needle + ' ';

    while (i--)
    {
        e = s.item(i);

        if (e.className)
        {
            c = ' ' + e.className + ' ';
            if (c.indexOf(needle) != -1) r.push(e);
        }
    }

    return r;
}

function isValidEmail(str) {
    return (str.indexOf("@") > 0);
} 

// {{{ in_array
function in_array(needle, haystack, strict) {
    // Checks if a value exists in an array
    // 
    // +    discuss at: http://kevin.vanzonneveld.net/techblog/article/javascript_equivalent_for_phps_in_array/
    // +       version: 809.522
    // +   original by: Kevin van Zonneveld (http://kevin.vanzonneveld.net)
    // *     example 1: in_array('van', ['Kevin', 'van', 'Zonneveld']);
    // *     returns 1: true

    var found = false, key, strict = !!strict;

    for (key in haystack) {
        if ((strict && haystack[key] === needle) || (!strict && haystack[key] == needle)) {
            found = true;
            break;
        }
    }

    return found;
}// }}}


function closeBestellen()
{
    $('cart').style.display = "none";
    var input_fields = $('cart').getElementsByClassName('bestelWaarden');
    var aantal = input_fields.length;
    
    for(var i = 0; i<aantal; i++)
    {
        input_fields[i].value = '';
    }
}

function showOrder()
{
    $('cart').style.display = "block";
}

function addItem(action)
{
    id = $('active_picture').value;


    paramater_string = '';
    for(i = 0; i < aantal_maten;i++)
    {
        count = $('aantal_id'+i).value
        if(count > 0)
        {
            $('aantal_id'+i).value = '';

            maat = $('maat_id'+i).value;

            effect = $('soort_dropdown'+i).value;
            $('soort_dropdown'+i).selectedIndex = 0;
            parameter_string = 'id='+id+'&maat='+maat+'&effect='+effect+'&count='+count+'&action='+action;

            new Ajax.Request('http://www.studiobell.nl/ajax/additem.php',  { method: 'post', parameters: parameter_string, onSuccess: function(transport) {

            $('winkelwagen_count').innerHTML = transport.responseText;


              }});

        }
    }
    alert('De foto(\'s) is/zijn toegevoegd aan uw winkelwagen');
}



function emptyShoppingCart()
{
    new Ajax.Request('http://www.studiobell.nl/ajax/emptycart.php',  { method: 'post'});
    $('shoppingcart_items').style.display = 'none';
    $('submitcartlink').style.display = 'none';
    $('empty_cart').style.display = 'block';
    
   alert('Uw winkelwagen is geleegd');
   document.location = 'http://www.studiobell.nl/templates/7/bestellen.php';
}


function updateAantalCart(id)
{
    
    aantal = $('aantal['+id+']').value;
    new Ajax.Request('http://www.studiobell.nl/templates/7/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;
        $('total_price'+id).innerHTML = '&euro; ' + result.total_prijs_item;
                
                $('korting_'+id).innerHTML = result.kortingspercentage;
                $('korting').innerHTML = result.korting;
                $('subtotaal').innerHTML = '&euro; ' + result.total_prijs_incl_vat_verzendkosten;
        $('total_incl_vat_verzendkosten').innerHTML = '&euro; ' + result.total_prijs_incl_vat_verzendkosten_korting;    
    }});
}

function deleteRow(id)
{
    new Ajax.Request('http://www.studiobell.nl/templates/7/ajax/deletefromcart.php',  { method: 'post', parameters: 'id='+id, onSuccess: function(transport){
        
        var result = transport.responseText.evalJSON();
                
        $('row'+id).style.display = 'none';
                $('korting').innerHTML =  result.korting;
        $('total_incl_vat_verzendkosten').innerHTML = '&euro; ' + result.total_prijs_incl_vat;
        $('total_incl_vat').innerHTML = '&euro; ' + result.total_prijs_incl_vat;
                
        if(result.aantal_items == 0)
        {
            $('verzendkosten').style.display = 'none';
            $('totaal_prijs').style.display = 'none';
            $('sub_totaal').style.display = 'none';
            $('submitcartlink').style.display = 'none';
            $('empty_cart').style.display = 'block';
        }
    }});    
}

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 + '=' + adresForm.elements[i].value;
        else if(adresForm.elements[i].value != '')
            parameter_string = parameter_string + '&' +  adresForm.elements[i].name + '=' + adresForm.elements[i].value;
    }

    new Ajax.Request('http://www.studiobell.nl/ajax/updategegevens.php',  { method: 'post', parameters: parameter_string, onSuccess: function(transport){
        var result = transport.responseText.evalJSON();
        $('verzendkosten').innerHTML = '&euro; ' +  result.verzendkosten;
        $('total_incl_vat_verzendkosten').innerHTML = '&euro; ' + result.total_prijs_incl_vat_verzendkosten;
    }
    });
}

function controleerGegevens()
{
    var message  = '';
    check = true;
    var adresForm = document.forms['adresgegevens'];
    aantal_items = adresForm.elements.length;
    var parameter_string = '';
    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 + '\nU heeft geen geldig emailadres ingevuld';
                    
            }
            else if(adresForm.elements[i].value == '')
            {
                check = false;
                message = message + '\nHet veld ' + adresForm.elements[i].name + ' is niet ingevuld';
                adresForm.elements[i].className = 'error';
                adresForm.elements[i].focus();
            }
    
        }
    }
    if(check == false)
        alert(message);
    else
        adresForm.submit();
}

function saveBestelling()
{
    
    new Ajax.Request('http://www.studiobell.nl/templates/7/ajax/savebestelling.php',  {
    method: 'post', 
    parameters: '',
    onFailure: function(){ alert('Betaling kan niet worden gedaan, excuses voor het ongemak, probeer het later opnieuw...') },
    onSuccess: function(){  
                test = 1;
        
    }
    });;
    
    new Ajax.Request('http://www.studiobell.nl/templates/7/ajax/mailbestelling.php',  {
    method: 'post', 
    parameters: '',
    onFailure: function(){ alert('Betaling kan niet worden gedaan, excuses voor het ongemak, probeer het later opnieuw...') },
    onSuccess: function(){  
                
                document.form1.submit();    
    }
    });;
    
    
    
}

function showNormal(image)
{
        
        $('imageeffect').src = 'http://www.studiobell.nl/'+$('active_picture').value;
}


function showImage(image,width)
{
if($('active_picture'))
        $('active_picture').value = image;
        
if($('messagediv'))
    $('messagediv').style.display = 'block';

new Ajax.Request('http://www.studiobell.nl/templates/7/image.php',  { 
    method: 'post', 
    parameters: 'image='+image+'&width='+width,
    onFailure: function(){ alert('Afbeelding kon niet worden geladen...') },
    onSuccess: function(transport){
        var result = transport.responseText.evalJSON();
       
       ids = new Array();
       
       formaten = document.getElementsByClassName('formaat'+result.verhouding);
       for( var i = 0; i < formaten.length; i++)
       {
                   formaten[i].style.display = '';
                   ids[i] = formaten[i].id;
       }  
       
       formaten = document.getElementsByClassName('formaten');
       
       for( var i = 0; i < formaten.length; i++)
       {
                           if(! in_array( formaten[i].id , ids ))
                           formaten[i].style.display = 'none';
       }  
       
       
       
       
        
       $('imageeffect').src = 'http://www.studiobell.nl/'+result.image;
       $('active_picture').value = result.image;
       $('thumbnails').style.display = 'block';
            if($('messagediv'))
                                setTimeout( "$('messagediv').style.display = 'none'",2000);

    }
    });;
 
    
}

function showPersfotoImage(image,width)
{

if($('messagediv'))
    $('messagediv').style.display = 'block';

new Ajax.Request('http://www.studiobell.nl/templates/7/persfoto_image.php',  { 
    method: 'post', 
    parameters: 'image='+image+'&width='+width,
    onFailure: function(){ alert('Afbeelding kon niet worden geladen...') },
    onSuccess: function(transport){
         var result = transport.responseText.evalJSON();
       
       ids = new Array(); 
       formaten = document.getElementsByClassName('formaat'+result.verhouding);
       for( var i = 0; i < formaten.length; i++)
       {
                   formaten[i].style.display = '';
                   ids[i] = formaten[i].id;
       }  

        formaten = document.getElementsByClassName('formaten');

       for( var i = 0; i < formaten.length; i++)
       {
                           if(! in_array( formaten[i].id , ids ))
                                   formaten[i].style.display = 'none';
                        
       }  
        
        $('imageeffect').src = 'http://www.studiobell.nl/'+result.image;
       $('active_picture').value = result.image;
       $('thumbnails').style.display = 'block';
            if($('messagediv'))
                                setTimeout( "$('messagediv').style.display = 'none'",2000);
    }
    });;
 
    
}

function showFormaat(image,width)
{

new Ajax.Request('http://www.studiobell.nl/formaat.php',  {
    method: 'post', 
    parameters: 'image='+image+'&width='+190,
    onFailure: function(){ alert('Afbeelding kon niet worden geladen...') },
    onSuccess: function(transport){
        result = transport.responseText;  
        $('imageeffect').src = 'http://www.studiobell.nl/'+result;
    }
    });;
}

function showFormaat2(image,width)
{
new Ajax.Request('http://www.studiobell.nl/formaat2.php',  {
    method: 'post', 
    parameters: 'image='+image+'&width=400',
    onFailure: function(){ alert('Afbeelding kon niet worden geladen...') },
    onSuccess: function(transport){
        result = transport.responseText;  

        $('imageeffect').src = 'http://www.studiobell.nl/'+result;
    }
    });;
}

function showFormaat3(image,width)
{
new Ajax.Request('http://www.studiobell.nl/formaat3.php',  {
    method: 'post', 
    parameters: 'image='+image+'&width=400',
    onFailure: function(){ alert('Afbeelding kon niet worden geladen...') },
    onSuccess: function(transport){
        result = transport.responseText;  

        $('imageeffect').src = 'http://www.studiobell.nl/'+result;
    }
    });;
}

function showFormaat4(image,width)
{
new Ajax.Request('http://www.studiobell.nl/formaat4.php',  {
    method: 'post', 
    parameters: 'image='+image+'&width=400',
    onFailure: function(){ alert('Afbeelding kon niet worden geladen...') },
    onSuccess: function(transport){
        result = transport.responseText;  

        $('imageeffect').src = 'http://www.studiobell.nl/'+result;
    }
    });;
}

function showSepia(image)
{

$('messagediv').style.display = 'block';
tmp = $('active_picture').value;
new Ajax.Request('http://www.studiobell.nl/templates/7/sepia.php',  { 
    method: 'get', 
    parameters: 'id='+tmp,
    onFailure: function(){ alert('Afbeelding kon niet worden geladen...') },
    onSuccess: function(transport){
        result = transport.responseText; 
          
        setTimeout( "$('messagediv').style.display = 'none'",2000);
        $('imageeffect').src = 'http://www.studiobell.nl/'+result;
    }
    });;
}

function showZw(image)
{
$('messagediv').style.display = 'block';
new Ajax.Request('http://www.studiobell.nl/templates/7/zw.php',  { 
    method: 'get', 
    parameters: 'id='+$('active_picture').value,
    onFailure: function(){ alert('Afbeelding kon niet worden geladen...') },
    onSuccess: function(transport){
        result = transport.responseText;
        setTimeout( "$('messagediv').style.display = 'none'",2000);
        $('imageeffect').src = 'http://www.studiobell.nl/'+result;
    }
    });;
}

function showKader(image)
{

$('messagediv').style.display = 'block';
new Ajax.Request('http://www.studiobell.nl/kader.php',  { 
    method: 'get', 
    parameters: 'id='+$('active_picture').value,
    onFailure: function(){ alert('Afbeelding kon niet worden geladen...') },
    onSuccess: function(transport){
        result = transport.responseText; 
        setTimeout( "$('messagediv').style.display = 'none'",2000);
        $('imageeffect').src = 'http://www.studiobell.nl/'+result;
    }
    });;
}

function showMultipage(pagina, soort, cat)
{

new Ajax.Request('http://www.studiobell.nl/ajax/showmultipage.php',  { 
    method: 'get', 
    parameters: 'id='+pagina+'&persfoto='+soort+'&cat='+cat,
    onFailure: function(){ alert('Afbeeldingen kon niet worden geladen...') },
    onSuccess: function(transport){
    
        result = transport.responseText;

        $('thumbnails').innerHTML = result;
               var cells = document.getElementsByClassName("multipageitem"); 
       
                for (var i = 0; i < cells.length; i++) { 
                
                    cells[i].style.color = '#808080';
                }
        $('multipage'+pagina).style.color= 'white';
        
        
    }
    });;
}


new Ajax.PeriodicalUpdater('items', 'http://www.studiobell.nl/ajax/updatesession.php', {
  method: 'get', frequency: 60, decay: 1
});

