﻿function initAll() {
    initCancelClick();
    initCheckCheckbox();
    initAddCompareChange();
    setButtonDisplay();
}

function initAddCompareChange() {
    $('.compareCheck').change(function () {
        if ($(this).is(':checked')) {
            Compare(this.className);
        } else {
            CancelCompare(this.className);
        }
    });
}

function setButtonDisplay() {
    if ($("#compareContent :checkbox:checked").length < 2) {
        $('.compareus').attr('disabled', true);
        $('.show').attr('disabled', true);
        $("#compareContent :checkbox").attr("disabled", '');
    }
    else {
        $('.compareus').attr('disabled', null);
        $('.show').attr('disabled', null);
        $("#compareContent :checkbox:not(:checked)").attr("disabled", "disabled");
    }
}

function Compare(classname) {
    var split = classname.split(' ');
    var visitor = split[2].split('_')[1];
    var product = split[1].split('_')[1];
    var theData = "visitor=" + visitor + "&product=" + product;
    $.ajax({
        type: "POST",
        url: (location.href.indexOf('localhost') > -1 ? "/pretium_shopping" : "") + "/scripts/CompareRequest.ashx",
        data: theData,
        success: function (returnObj) {
            if (_gaq != null)
                _gaq.push(['_trackEvent', 'Product vergelijken', 'Product', product]);
            $('#compareContent').html(returnObj);
            $('#serviceCompare').removeClass('hidden');
            initCancelClick();
            initCheckCheckbox();
            setButtonDisplay();
        }
    });
    return false;
}

function initCheckCheckbox() {
    $("#compareContent :checkbox").click(function () {
        setButtonDisplay();
        if ($("#compareContent :checkbox:checked").length >= 2) {
            $("#compareContent :checkbox:not(:checked)").attr("disabled", "disabled");
        } else {
            $("#compareContent :checkbox").attr("disabled", '');
        }
    });
}

function initCancelClick() {
    $('.cancelCompareCheck').click(function () {
        return CancelCompare(this.className);
    });
}

function CancelCompare(classname) {
    var split = classname.split(' ');
    var visitor = split[2].split('_')[1];
    var product = split[1].split('_')[1];

    $(("#uxCheckCompare_" + product)).attr("checked", null);

    var theData = "visitor=" + visitor + "&product=" + product;
    $.ajax({
        type: "POST",
        url: (location.href.indexOf('localhost') > -1 ? "/pretium_shopping" : "") + "/scripts/CancelCompareRequest.ashx",
        data: theData,
        success: function (returnObj) {
            if (_gaq != null)
                _gaq.push(['_trackEvent', 'Product vergelijken', 'Anneleer', product]);
            if (returnObj != '<ul></ul>') {
                $('#compareContent').html(returnObj);
                $('#serviceCompare').removeClass('hidden');
            }
            else {
                $('#serviceCompare').addClass('hidden');
            }
            initCancelClick();
            initCheckCheckbox();
            setButtonDisplay();
        }
    });
    return false;
}

$(document).ready(function () {
    initAll();
});

