var costCalculator = function() {
    var alias = $.cookie('SiteAlias');
    if (!alias) { alias = ""; }

    $('#addToCartForm').ajaxSubmit({
        url: alias + '/cart/CostCalculator.html'
        , dataType: 'json'
        , success: function(json) {
            if (json.cost.status == 'OK') {
                for (var idx = 0; idx < json.cost.products.length; idx++) {
                    var jsonProduct = json.cost.products[idx];
                    var suffix      = jsonProduct.suffix;

                    $('#addToCart #qtyPrice'+suffix).html(jsonProduct.qtyPrice);

                    var prices = jsonProduct.poPrices;
                    var quantities = jsonProduct.poQuantities;
                    for (var optionNum = 1; optionNum <= prices.length; optionNum++) {
                        $('#optPrice' + suffix + '_' + optionNum).html(prices[optionNum - 1]);
                        
                        var qty = $('#cInteger' + suffix + '_' + optionNum);
                        if (qty) {
                            qty.val(quantities[optionNum - 1]);
                        }
                    }
                }

                $('#addToCart #subtotal').html(json.cost.total);
            }
        }
    });
};

$(document).ready(function() {
    $('.input').bind('keyup', costCalculator);
    $('input[@type="checkbox"].input').bind('click', costCalculator);
    $('select.input').bind('change', costCalculator);

    $('#addToCartLink').bind('click', function() {
	$('#addToCartHidden').val('CLICK');
	$('#addToCartForm').submit();
	return false;
    });

    $('#checkoutLink').bind('click', function() {
	$('#checkoutHidden').val('CLICK');
	$('#addToCartForm').submit();
	return false;
    });

    $('select').each(function() {
        for (var i = 0; i < this.options.length; i++) {
            if (this.options[i].text.indexOf('SOLD OUT') > 0) {
                this.options[i].className='soldOut';
                this.options[i].disabled='disabled';
            }
        }
    });
});


