var newStarHtml = "<div class='newStar'><image src='/pix/new_en.png' alt='new' width='46'height='46'></div>";
var promoBannerHtml = "<div class='promoBanner'><image src='/pix/promo_banner.png' alt='promo' width='44'height='44'></div>";


$(document).ready(function () {
    initSwapTables();
    initLocaleSwapper();
    activateProductDetailImages();

    $('div.productslist > a > div.imgWrap.new:not(.promo)').each(function (index) {
        $(this).prepend(newStarHtml);
    });
    $('div.productslist > a > div.imgWrap.promo').each(function (index) {
        $(this).prepend(promoBannerHtml);
    });
    
});


$(window).load(function () {
    //initialize after images are loaded  
    // vertical align images in product list
    $('div.productslist > a > div.imgWrap > img').each(function (index) {
        if ($(this).height() < $(this.parentNode).height()) {
            var mTop = Math.floor(($(this.parentNode).height() - $(this).height()) / 2);
            $(this).attr('style', 'margin-top:' + mTop + 'px');
        }
    });

    // vertical align images on product detail page
    $('.smallImgPicker > img').each(function (index) {
        if ($(this).height() < $(this.parentNode).height()) {
            var mTop = Math.floor(($(this.parentNode).height() - $(this).height()) / 2);
            $(this).attr('style', 'margin-top:' + mTop + 'px');
        }
    });

});  

function initLocaleSwapper() {
    $('#openlocale').bind('click', function() {
        swapLocalePicker();
    });
    $('#closelocale').bind('click', function () {
        swapLocalePicker();
    });
}

function swapLocalePicker() {
    if ($('#localepicker').hasClass('collapsed')) {
        $('#localepicker').removeClass('collapsed');
        $('#openlocale').addClass('collapsed');
    }
    else {
        $('#localepicker').addClass('collapsed');
        $('#openlocale').removeClass('collapsed');
    }
}



function initSwapTables() {
    $('.swaphead').addClass('collapsable');

    $('.swaphead').bind('click', function() {
        swapPanel($(this).attr('id'));
    });

    $('.swapfooterCloseButton').bind('click', function() {
        swapPanel($(this).attr('id').replace("FooterCloseButton", ''));
    });

    $('.swaphead').each(function() {
        if (readCookie("Show" + $(this).attr('id')) == "false") {
            collapsePanel($(this).attr('id'));
        }
    });
}


function swapPanel(swapID) {
    if ($("#" + swapID + "Content").hasClass('collapsed')) {
        expandPanel(swapID)
    }
    else {
        collapsePanel(swapID)
    }
}

// collapse a swappable panel
function collapsePanel(swapID) {
    $("#" + swapID + "Content").addClass('collapsed');
    $("#" + swapID).removeClass('collapsable');
    $("#" + swapID).addClass('expandable');
    createCookie("Show" + swapID, "false", 1);
}
// expand a swappable panel
function expandPanel(swapID) {
    $("#" + swapID + "Content").removeClass('collapsed');
    $("#" + swapID).removeClass('expandable');
    $("#" + swapID).addClass('collapsable');
    createCookie("Show" + swapID, "true", 1);
}

// add handlers to small images on product detail page
function activateProductDetailImages() {
    $('.smallImgPicker').bind('click', function () {
        selectProductdetailImage($(this).attr("id"));
    });
}

function selectProductdetailImage(sid) {
    var bigImage = $("#" + sid).html().replace("/small/", "/big/");
    $('td#productDetailBigImage').html(bigImage); 
    
    //<img src="' + url + '">');
  //  $('img#productDetailBigImage').attr("src") = url.replace("/small/", "/big/");
   //  $('img#productDetailBigImage').css("border", "5px solid #f00");
    // $('.bigImgFrame').css("background-image", url.replace("/small/", "/big/"));
}

// Cookie scripts

function createCookie(name, value, days) {
    if (days) {
        var date = new Date();
        date.setTime(date.getTime() + (days * 24 * 60 * 60 * 1000));
        var expires = "; expires=" + date.toGMTString();
    }
    else var expires = "";
    document.cookie = name + "=" + value + expires + "; path=/";
}

function readCookie(name) {
    var nameEQ = name + "=";
    var ca = document.cookie.split(';');
    for (var i = 0; i < ca.length; i++) {
        var c = ca[i];
        while (c.charAt(0) == ' ') c = c.substring(1, c.length);
        if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length, c.length);
    }
    return null;
}

function eraseCookie(name) {
    createCookie(name, "", -1);
}

