﻿$(document).ready(function(){
    if($('#buchhandlung').length > 0){
        calculateBH();
        $('input[name^=menge]').blur(function(eventObj) {                    
            calculateBH();
        });
    }
    else
    {
        calculate();
        $('input[name^=menge]').blur(function(eventObj) {                    
            calculate();
        });
        $('#abo').click(function(){
            calculate();
            $('#verein').attr("checked", false);
            $('#mitglied').attr("checked", false);
            $('#kammer').hide();
            $('#layerMitgliedsnr').hide();                    
        });
        $('#verein').click(function(){
            calculate();
            $('#abo').attr("checked", false);
            $('#mitglied').attr("checked", false);
            $('#kammer').hide();
            $('#layerMitgliedsnr').hide();                    
        });
        $('#mitglied').click(function(){
            calculate();                    
            $('#abo').attr("checked", false);
            $('#verein').attr("checked", false);
            if($(this).attr("checked") == true){
                $('#kammer').show();
                $('#layerMitgliedsnr').show();
            }else{
                $('#kammer').hide();
                $('#layerMitgliedsnr').hide();
            }
        });
    }


    $('#cb_firma').click(function(){                
        if($(this).attr('checked') == true){
            $('#firma').attr('disabled', '');
            $('#label_firma').text("Firma/Organisation *");
        }else{
            $('#firma').attr('disabled', 'disabled');
            $('#label_firma').text("Firma/Organisation");
        } 
    });
    $('#cb_l_firma').click(function(){                
        if($(this).attr('checked') == true){
            $('#l_firma').attr('disabled', '');
            $('#label_l_firma').text("Firma/Organisation *");
        }else{
            $('#l_firma').attr('disabled', 'disabled');
            $('#label_l_firma').text("Firma/Organisation");
        } 
    });
    if($('#cb_lieferadresse').attr('checked') == true) $('#lieferadresse').show();
    $('#cb_lieferadresse').click(function(){                
        if($(this).attr('checked') == true){
            $('#lieferadresse').slideDown('fast');
        }else{
            $('#lieferadresse').slideUp('fast');
        } 
    });    

    $('#bestellform').submit(function(){                
        if(checkMenge()){
            if($('#email').val() == "") {
                alert('Bitte geben Sie Ihre E-Mail-Adresse an.\n\nSollten Sie keine E-Mail-Adresse besitzen, dann drucken Sie bitte diese Seite aus und schicken Sie uns das ausgefüllte Formular per Fax oder per Post zu.');
                return false;
            }
        }else{
            return false;
        }
        return true;
    });
});
 
function calculate(){                
    var summe = 0;
    var zwischensumme = 0;
    var gesamtmenge = 0;
    var versandkosten = 0;
    var ermaessigung = 0;
    var schuberkosten = 0;
    var schubermenge = 0;
    $('input[name^=menge]').each(function() {        
        var pageid = ($(this).attr('name')).substr(($(this).attr('name')).indexOf("_"));        
        var menge = parseInt($(this).val());
        var name = "broschuere" + pageid;                
        if(menge > 999){                    
            alert('Die maximale Bestellmenge beträgt 100.');                    
            $(this).focus();                    
            return false;
        }else{                        
            preisSelector = "#preis"+pageid;                        
            var preis = 0;
            var sonderkosten = 0;            
            preis = $(preisSelector).text().replace(/[,]/,'.');
            var kosten = parseFloat(menge)*parseFloat(preis);                        
            $('input[name^=kosten'+pageid+']').val(formatPreis(kosten));
            if ( $("input[name='"+name+"']").val().indexOf('Bücherschuber für Bände') == -1 ){
                gesamtmenge = gesamtmenge + menge;                
            }else{
                schuberkosten = kosten;
                schubermenge = menge;
            }
            versandkosten = getVersandkosten(gesamtmenge+schubermenge);
            if ( $("input[name='"+name+"']").val().indexOf('Weihnachtsangebot') != -1 ){
                versandkosten = 0;
            }
            $("#versandkosten").val('+'+formatPreis(versandkosten));
            zwischensumme = zwischensumme + kosten;            
            $("#zwischensumme").val(formatPreis(zwischensumme));            
        }                
    });    
    if($('#abo').attr("checked") == true || $('#verein').attr("checked") == true || $('#mitglied').attr("checked") == true){
        sonderpreis = $('#sonderpreis').text().replace(/[,]/,'.');
        if(zwischensumme >= sonderpreis){            
            ermaessigung = zwischensumme - schuberkosten - (sonderpreis * gesamtmenge);    
        }
    }
    $("#ermaessigung ").val('-'+formatPreis(ermaessigung));
    summe = zwischensumme + versandkosten - ermaessigung;
    $("#summe").val(formatPreis(summe));
}


function getVersandkosten(menge){
    var vkosten    = 0;
    if(menge == 1){
        vkosten    = 1.50;
    }else if (menge >= 2 && menge <= 3) {
        vkosten    = 2.00;
    }else if (menge >= 4 && menge <= 8) {
        vkosten    = 4.00;
    }else if (menge >= 9 && menge <= 30) {
        vkosten    = 6.50;
    }else if (menge >= 31 && menge <= 40) {
        vkosten    = 7.00;
    }else if (menge >= 40) {
        vkosten    = 0;
    }
    return vkosten;
}


function calculateBH(){                
    var summe = 0;
    var zwischensumme = 0;
    var gesamtmenge = 0;
    var versandkosten = 0;
    var ermaessigung = 0;
    var schuberkosten = 0;
    var schubermenge = 0;
    $('input[name^=menge]').each(function() {        
        var pageid = ($(this).attr('name')).substr(($(this).attr('name')).indexOf("_"));        
        var menge = parseInt($(this).val());
        var name = "broschuere" + pageid;                
        if(menge > 999){                    
            alert('Die maximale Bestellmenge beträgt 100.');                    
            $(this).focus();                    
            return false;
        }else{                        
            preisSelector = "#preis"+pageid;                        
            var preis = 0;
            var sonderkosten = 0;            
            preis = $(preisSelector).text().replace(/[,]/,'.');
            var kosten = parseFloat(menge)*parseFloat(preis);                        
            $('input[name^=kosten'+pageid+']').val(formatPreis(kosten));            
            gesamtmenge = gesamtmenge + menge;
            if ( $("input[name='"+name+"']").val().indexOf('Kompletter Satz') != -1 ){
                vmenge = gesamtmenge - menge + (10*menge);
            }else{
                vmenge = gesamtmenge;
            }            
            versandkosten = getVersandkostenBH(vmenge);            
            $("#versandkosten").val('+'+formatPreis(versandkosten));
            zwischensumme = zwischensumme + kosten;            
            $("#zwischensumme").val(formatPreis(zwischensumme));            
        }                
    });        
    summe = zwischensumme + versandkosten;
    $("#summe").val(formatPreis(summe));
}


function getVersandkostenBH(menge){    
    var vkosten    = 0;    
    if(menge == 1){
        vkosten    = 1.50;
    }else if (menge >= 2 && menge <= 3) {
        vkosten    = 2.00;
    }else if (menge >= 4 && menge <= 8) {
        vkosten    = 4.00;
    }else if (menge >= 9 && menge <= 29) {
        vkosten    = 6.50;    
    }else if (menge >= 30) {
        vkosten    = 0;
    }
    return vkosten;
}
 
function checkMenge(){
    var menge = 0;
    $('input[name^=menge]').each(function() {
        menge = menge + parseInt($(this).val());
    });                           
    if(menge <= 0){
        alert("Die Mindestbestellmenge beträgt 1. ");    
        return false;
    }
    return true;
}
 
function formatPreis(preis){
    wert = preis * 100;
    wert = parseInt(wert);
    wert = parseFloat(wert);
    wert = wert / 100;
    wert = wert.toFixed(2);
    wert = String(wert);
    wert = wert.replace(/[.]/,',');
    //if(wert == 0) wert = '0,00';
    return wert;
}
