function trim(s){
    return s.replace(/^\s+|\s+$/g,"");
} 

$(document).ready(function() {
    /* http://www.thefutureoftheweb.com/blog/detect-ie6-in-javascript */
    var is_ie6 = false /*@cc_on || @_jscript_version < 5.7 @*/;
    var is_ie = /*@cc_on!@*/false;
    var root = _root;
    var media_url = _media_url;
    
    if ($(".carousel").length != 0) {
        $(".carousel").jCarouselLite({
            auto: 500,
            speed: 4000,
            visible: 6,
            mouseWheel: true
        });
    }
    
    $("a.change_language").click(
        function() {
            $("#change_language_box").slideToggle(150);
        }
    );
    
    $(".change_language_submit").click(
        function() {
            $(this).parent().submit();
        }
    );
    
    $(".button1").hover(
        function() {
            $(this).find('td').css('background-position', 'center bottom');
        },
        function() {
            $(this).find('td').css('background-position', 'center top');
        }
    );
    
    $(".button2").hover(
        function() {
            $(this).find('td').css('background-position', 'center bottom');
        },
        function() {
            $(this).find('td').css('background-position', 'center top');
        }
    );
    
    $(".button3").hover(
        function() {
            $(this).find('td').css('background-position', 'center bottom');
        },
        function() {
            $(this).find('td').css('background-position', 'center top');
        }
    );
    
    $(".button4").hover(
        function() {
            $(this).find('td').css('background-position', 'center bottom');
        },
        function() {
            $(this).find('td').css('background-position', 'center top');
        }
    );
    
    /* aggiunta oggetto al carrello */
    
    function add_to_cart(element_id) {
        $(".no_shoe_size_message").hide();
        var id = element_id.split('_');
        id = id[id.length - 1]; // item_id
        var shoe_size = $("select#shoe_size_select").val();
        if (!shoe_size) $(".no_shoe_size_message").show();
        else {
            var qty = parseInt($("#shopping_qty_item_page input").val());
            if (!qty) qty = 0;
            $("#in_cart_qty_" + id).load(root + '/add-item/' + id + '/' + qty + '/' + shoe_size); // ajax
            $("#cart .n_items_link").load(root + '/update-total-qty-human'); // ajax
            //$("#cart .total_price").load(root + '/update-total-vat-price'); // ajax
            $("#cart .total_price").load(root + '/update-total-price'); // ajax
            $(".cart_item_shoe_sizes").load(root + '/update-shoe-sizes-human-i/' + id); // ajax
            $(".remove_from_cart").show();
            $(".in_cart").slideDown(150);
        }
    }
    
    $(".add_to_cart").live('click',
        function() {
            add_to_cart($(this).attr('id'));
        }
    );
    
    function remove_from_cart(element_id, all) {
        if (element_id.substring(0,3) == 'all') {
            var item_id = element_id.substring(4); //item_id
            id = 'all';
        }
        else {
            var id = element_id.split('_');
            id = id[id.length - 1]; //cartitem_id
            var item_id = $("#item_id_" + id).val(); //item_id
        }
        
        var qty = parseInt($("#shopping_qty_item_page input").val());
        if (!qty) qty = parseInt($("#cartitem_quantity_" + id).html());
        if (!qty) qty = 0;
        $.ajax({ 
            type: "POST",
            async: false,
            url: root + '/remove-item/' + id + '/' + qty,
            dataType: "html",
            success: function(value){
                $("#cartitem_quantity_" + id).html(value);
                $(".in_cart_qty").html(value);
                $("#cart .n_items_link").load(root + '/update-total-qty-human'); // ajax
                //$("#cart .total_price").load(root + '/update-total-vat-price'); // ajax
                $("#cart .total_price").load(root + '/update-total-price'); // ajax
                $(".cart_item_shoe_sizes").load(root + '/update-shoe-sizes-human-i/' + item_id); // ajax
                if (parseInt(value) == 0) {
                    $("#items_summary_row_" + id).slideUp(150);
                    $(".cart_total .price").load(root + '/update-total-price'); // ajax
                    //$(".cart_total_vat .price").load(root + '/update-total-vat-price'); // ajax
                }
            }
        });
    }
    
    $(".remove_from_cart").live('click',
        function() {
            // id = item_id
            var id = $(this).attr('id').replace('remove_from_cart_', '')
            remove_from_cart('all_' + id);
        }
    );
    
    $(".list_item_box .fake_add_to_cart").live('click',
        function() {
            var link = $(this).attr('summary');
            window.open(link, '_self');
        }
    );
    
    $(".cartitem_ops_delete").live('click',
        function() {
            // id = cartitem_id
            var id = $(this).attr('id').replace('cartitem_ops_delete_', '');
            remove_from_cart($(this).attr('id'), false);
        }
    );
    
    $(".shopping_cart_next").click(
        function() {
            $("#shopping_cart_form").submit();
        }
    );
    
    $("#register_client").live('click', 
        function() {
            //$("ul.errorlist").hide();
            $("#form_action").val('registering');
            $("#client_login").slideUp(150);
            //$("#client_login #id_email").val('');
            //$("#client_login #id_password").val('');
            $("#client_register").slideDown(150);
        }
    );
    
    $("#update_client").live('click', 
        function() {
            //$("ul.errorlist").hide();
            $("#form_action").val('updating');
            $("#client_login").slideUp(150);
            //$("#client_login #id_email").val('');
            //$("#client_login #id_password").val('');
            $("#client_register").slideDown(150);
        }
    );
    
    $(".logout_client").live('click', 
        function() {
            $("#form_action").val('logout');
            $("#shopping_cart_form").submit();
        }
    );
    
    $("#login_client").live('click', 
        function() {
            //$("ul.errorlist").hide();
            $("#old_client_msg").hide();
            $("#new_client_msg").show();
            $("#form_action").val('logging_in');
            $("#client_register").slideUp(150);
            //$("#client_register input").val('');
            //$("#client_register select").val('');
            //$("#client_register textarea").val('');
            $("#client_login").slideDown(150);
        }
    );
    
    $("#new_login_client").live('click', 
        function() {
            $("ul.errorlist").hide();
            $("#new_client_msg").hide();
            $("#old_client_msg").show();
            $("#form_action").val('new_login');
            $("#client_register").slideUp(150);
            //$("#client_register input").val('');
            //$("#client_register select").val('');
            //$("#client_register textarea").val('');
            $("#client_login").slideDown(150);
        }
    );
    
    $(".shopping_cart_back").click(
        function() {
            var next_step = $("#shopping_cart_next_step").val();
            next_step = parseInt(next_step) - 2;
            if (next_step < 0) next_step = 0;
            
            $("#shopping_cart_next_step").val(next_step);
            $("#shopping_cart_form").submit();
        }
    );
    
    $("#paypal_form_submit_btn").click(
        function() {
            $("#paypal_form").submit();
        }
    );
    
    $(".client_modify_submit").click(
        function() {
            $("#client_modify_form").submit();
        }
    );
    
    $(".client_logout_submit").click(
        function() {
            $("#client_logout_form").submit();
        }
    );
    
    $(".client_login_submit").click(
        function() {
            $("#client_login_form").submit();
        }
    );
    
    $("#client_login_form input").keyup(
        function(event) {
            if (event.which == 13) $("#client_login_form").submit();
        }
    );
    
    $(".client_register_submit").click(
        function() {
            $("#client_register_form").submit();
        }
    );
    
    $(".client_form_toggle").click(
        function() {
            $("#client_login_box").slideToggle(150);
            $("#new_client_box").slideToggle(150);
        }
    );
    
    $("a.get_item_page").live('click',
        function() {
            var id = $(this).attr('id').replace('get_item_page_', '');
            $("#body").load(root + '/get-item-page/' + id); // ajax
        }
    );
    
    $(".shoe_sizes .size").click(
        function() {
            var size = $(this).attr('id').replace('size_', '');
            $("#shoe_size_select option").attr('selected', '');
            $("#shoe_size_select option#select_size_" + size).attr('selected', 'selected');
        }
    );
    
    // admin CarouselObject
    if ($("ul#id_type").length != 0) {
        /*var elements = ['0', '1'];
        for (var k in elements) {
            $("input#id_type_" + elements[k]).click(
                function() {
                    $("fieldset.carouselobject a.collapse-toggle").text(gettext("Show"));
                    $("fieldset.carouselobject a.collapse-toggle").closest("fieldset").addClass("collapsed");
                    var n = $(this).attr('id').replace('id_type_', '');
                    if ($("fieldset.collapse a#fieldsetcollapser" + n).closest("fieldset").hasClass("collapsed")) {
                        $("fieldset.collapse a#fieldsetcollapser" + n).text(gettext("Hide"));
                        $("fieldset.collapse a#fieldsetcollapser" + n).closest("fieldset").removeClass("collapsed");
                    }
                }
            );
        }
        
        if($('#id_item').val()) {
            $('#id_item').closest("fieldset").removeClass("collapsed");
            $('#id_item').closest("a.collapse-toggle").text(gettext("Hide"));
        }
        if($('#id_image').val()) {
            $('#id_image').closest("fieldset").removeClass("collapsed");
            $('#id_image').closest("a.collapse-toggle").text(gettext("Hide"));
        }
        */
    }
});
