$(document).ready(function() {
    var page_url = window.location.protocol + '//' + window.location.hostname + '/';
    
    $.post("ajax-compare/update.html", { id: 1 },
        function(data) {
            $('div.myproducts-content').html(data);

            $('ul.mysections li a:first').addClass('ms-active');
            $('ul.mylist').hide();
            $('ul.mylist:first').addClass('list-active').show();
            if ($('ul.list-active').length) {
                var tgt = $.map($('ul.list-active li'), function(item) {
                    return $(item).attr('id').replace('item', '');
                });
                var sec = $('ul.list-active').attr('id').replace('list', '');
                $('a.compare-link').attr('href', 'product-compare.html?sec=' + sec + '&ids=' + tgt.join(','));
            }
        }
    );
    
    $('table.table-compare tr:gt(2):even').addClass('odd');
    
    $('a.compare-cart').click( function() {
        if (!$(this).hasClass('compare-incart')) {
            var item = $(this);
            var tgt = $(this).attr('rel').replace('item', '');
            $.post("ajax-cart.html", { id: tgt, qty: 1 },
                function(data) {
                    if (data.length) {
                        item.addClass('compare-incart');
                        updateCart();
                        
                        window.location.href = window.location.href;
                    }
                }
            );
        }
        
        return false;
    });
    
    $('a.opts-remove').click( function() {
        $('ul.mylist').remove();
        hideList();
        
        $.post("ajax-compare/remove.html", { id: -1 },
            function(data) {
                $('div.myproducts-content').html(data);
            }
        );
        return false;
    });
    
    $('a.compare-remove').click( function() {
        var item_id = $(this).attr('rel').replace('del', '');

        $.post("ajax-compare/remove.html", { id: item_id },
            function(data) {
                $('div.myproducts-content').html(data);
            }
        );
    });
    
    $('div.myproducts-click').click( function() {
        $(this).toggleClass('click-active');
        var newposition = ($(this).parent('#myproducts').css('left') == '-550px') ? '+=550' : '-=550';
        $(this).parent('#myproducts').animate({ left: newposition }, 600);
    });
    
    $('a#compare-email, a#close-email').click( function() {
        $('div.myproducts-content').toggle();
        $('div.myproducts-email').toggle();
        return false;
    });
    
    $('a#email-compare').click( function() {
        var email = $('input[name=compare_email]').val();
        var message = $('textarea[name=compare_message]').val();

        $.post("ajax-compare/sendmail.html", { mail: email, msg: message }, 
            function(data) {
                alert(data);
                $('div.myproducts-content').show();
                $('div.myproducts-email').hide();
            }
        );
        
        return false;
    });
    
    $('div.prod-compare').click( function() {
        if (!$(this).hasClass('compare-active')) {
            $(this).addClass('compare-active');
            var item_id = $(this).attr('rel').replace('item', '');
            var container = $('ul.mylist');
            
            $.post("ajax-compare/add.html", { id: item_id },
                function(data) {
                    $('div.myproducts-content').html(data);
                }
            );

            showList();
        }
        
        return false;
    });
    
    function showList() {
        $('ul.mylist').hide();
        $('ul.list-active').show();
        $('a.compare-link').show();

        var newposition = $('#myproducts').css('left') == '-550px' ? '+=550' : '0px';
        if (newposition)
            $('#myproducts').show().animate({ left: newposition }, 600);
    }
    
    function hideList() {
        $('a.compare-link').hide();

        var newposition = $('#myproducts').css('left') == '0px' ? '-=550px' : '0px';
        if (newposition)
            $('#myproducts').animate({ left: newposition }, 600).hide('slow');
    }
    
    function updateCart() {
        $.post(
            page_url + 'checkout/cart/cart',
            function(data) {
                var result = $.parseJSON(data);
                
                $('span.cartvalues').html(result.totals.count + ' item(s) - &pound;' + result.totals.total);
                if ($('p.cart-discount').length)
                    $('p.cart-discount').html('- ' + result.totals.discount);
                if ($('p.cart-subtotal').length)
                    $('p.cart-subtotal').html(result.totals.subtotal);
                $('p.cart-total').html(result.totals.total);
                $('p.cart-vat').html(result.totals.vat);
                if ($('p.cart-gtotal').length)
                    $('p.cart-gtotal').html(result.totals.grand_total);
            }
        )
    }
});

