
/* rotator */
var running = false;
var speed = 200;

/* contact */
var contact_error = '';

/* checkout */
var subtotal = 0.00;
var total = 0.00;
var shipping = 0.00;

var lower_south_island_freight = 0.00;
var upper_south_island_freight = 0.00;
var north_island_freight = 0.00;


$(document).ready(function(){
    /* png fix */
    if(ie6){
        DD_belatedPNG.fix('.png, .png a, #close-modal'); 
        $('#header').css('background', 'transparent');
        $('#order-small').css('float', 'right');
    }
    
    /* some pages */
    $('#rotator img').click(function(){
        if(!running){
            running = true;
            $(this).fadeOut(speed, function(){
                var replacement = $(this).next();
                if(replacement.length == 0)
                    replacement = $(this).siblings().first();
                replacement.fadeIn(speed, function(){
                    running = false;
                });
            });
        }
    });
    
    /* contact */
    $('#contact-form').submit(function(){
        var error = false;
        if(!$('#input-name').val().match(/\w/)){
            error = true;
        }
        if(!$('#input-email').val().match(/^.+@.+\..+$/)){
            error = true;
        }
        if(!$('#input-message').val().match(/\w/)){
            error = true;
        }
        if(error){
            $('#validation-message').html(contact_error).addClass('error medium').removeClass('brown').removeClass('success').removeClass('large');
            return false;
        }else
            $('#validation-message').removeClass('error');
    });
    
    /* order update */
    $('.update-form').submit(function(){
        var qty = $('input[name=quantity]', this).val();
        if(qty.match(/^[0-9]{1,3}$/) && qty > 0)
            return true;
        else
            alert('Sorry, the quantity specified is invalid.');
        return false;
    });
    
    /* checkout - shipping */
    $('#region').bind('change click', function(){
        var region = $('#region').val();
        
        if(region == 'lower-south-island'){
            shipping = lower_south_island_freight;
        }else if(region == 'upper-south-island'){
            shipping = upper_south_island_freight;
        }else if(region == 'north-island'){
            shipping = north_island_freight;
        }else{
            shipping = 0.00;
        }
        
        total = subtotal + shipping;
        
        $('.freight span').html(shipping.toFixed(2));
        $('.total span').html(total.toFixed(2));
        
    });
     $('#region').click();
    
    /* checkout - modal - add gift box */
    $('#add-gift-box-inline, #add-gift-box-button').click(function(){
        return show_modal('#gift-box-dialog');
    });
    
    /* checkout - modal - change gift box */
    $('.change-gift-box').click(function(){
        show_modal('#gift-box-dialog');
        var siblings = $(this).siblings('span');
        //set current dressings, action and index
        $('#dialog input[name=action]').val('change');
        $('#dialog input[name=index]').val(siblings.eq(0).html());
        $('#dialog select[name=content1]').val(siblings.eq(1).html());
        $('#dialog select[name=content2]').val(siblings.eq(2).html());
        $('#dialog label input').val("save gift box");
        return false;
    });
    
    /* checkout - modal - freight info */
    $('tr.freight a').click(function(){
        show_modal('#freight-dialog');
        return false;
    });
    $('.checkout .back').click(hide_modal);
    
    /* checkout - modal general */
    $('#mask, #close-modal').click(hide_modal);
    $('#mask').css('opacity', 0.4);
    
    /* checkout order form */
    $('#customer-form').submit(function(){
        $('input[name=freight]').val($('#region').val());
        
        var error = false;
        if(!$('#input-name').val().match(/\w/)){
            error = true;
        }
        if(!$('#input-email').val().match(/^.+@.+\..+$/)){
            error = true;
        }
        if(!$('#input-address').val().match(/\w/)){
            error = true;
        }
        if($('#region').val() == '')
            error = true;
        if(error){
            $('#validation-message').html("Oops! Please fill out all the fields below and choose a shipping region above.").fadeIn(300);
            return false;
        }else
            $('#validation-message').fadeOut();
    });
    
});

function show_modal(node){
    $('#dialog .content').html("");
    var clone = $(node).clone(true).attr({'id': '', 'class': ''}).appendTo('#dialog .content');
    $('#modal').fadeIn(150, function(){ $('#dialog').fadeIn(150); });
    return false;
}

function hide_modal(content){
    $('#dialog').fadeOut(150, function(){ $('#modal').fadeOut(150); });
    return false;
}
