function initTranslations(){
    window.translations = {
        'it':{
            'add to cart' : 'nel carrello',
            'remove' : 'rimuovi'
        }
    };
}

function gettext(msgid){
    try {
        return window.translations[window.DEFAULT_LANGUAGE_CODE][msgid];
    }
    catch(e){
        return msgid;
    }
}

function initConfigurationFilters(){
    $$('.filterWidget').each(function(widget){
        widget.observe('change', function(e){
            e.findElement('form').submit();
        });
    });
}

function initStore(){
    window.csrf_token = $$('#csrf-form input')[0].getValue();

    $$('.addToCartButton').each(function(button){
        Event.stopObserving(button, "click");
        button.observe("click", function(e){
            Event.stop(e);
            var button = Event.findElement(e, 'input');
            var product_pk = button.up().down('.idInput').getValue();
            var designation = '';
            try {
                designation = button.up().down('.designationInput').getValue();
            }
            catch(e){
            }
            new Ajax.Updater('cart-portlets', '/store/cart_portlet/', {
                parameters: {
                    'csrfmiddlewaretoken' : window.csrf_token,
                    'pk' : product_pk,
                    'quantity' : button.up().down('.quantityInput').getValue(),
                    'designation' : designation,
                    'action' : 'add'
                },
                onComplete: function(){
                    try {
                        initStore();
                        $('portlet-cart').show();
                    }
                    catch(e){
                    }
                }
            });
        });
    });
    
    $$('.removeFromCartButton').each(function(button){
        if(button.hasClassName('noevents')){
            return;
        }
        Event.stopObserving(button, "click");
        button.observe("click", function(e){
            Event.stop(e);
            var button = Event.findElement(e, 'input');
            var pk_index = button.id.indexOf('.');
            var product_pk = button.id.substring(pk_index+1);
            new Ajax.Updater('cart-portlets', '/store/cart_portlet/', {
                parameters: {
                    'csrfmiddlewaretoken' : window.csrf_token,
                    'pk' : product_pk,
                    'action' : 'remove'
                },
                onComplete: function(){
                    try {
                        initStore();
                        $('portlet-cart').show();
                    }
                    catch(e){
                    }
                }
            });
        });
    });
}
