// Homepage JavaScript

// var scrollerExpanded = false;
// var pageState = document.location.href.substring(document.location.href.indexOf('#'));
var popupTimeout;

var modernBrowser = jQuery.support.boxModel; //false in IE6 and IE7 quirks mode



function showMaterialPopup(mat, posX, posY) {
    var material = mat.substr(7); // grab text after underscore

    $('.matContent').hide();
    $('#matContent' + material).show();

    $('#materialPopup').show();
    $('#materialPopupShadow').height($('#matContent' + material).height() + 50);
    $('#materialPopup').offset({ top: posY + 30, left: posX + 100 });

    //$('#matTestBox').offset({ top: posY+30, left: posX+100 }).show();
}


function sizeListHover(state, obj) {
    if (jQuery.support.leadingWhitespace) var notIE = true; // IE 6 - 8

    // needs logic to check which tab or parent

    switch (state) {
        case 'on':

            var linkID = $(obj).attr('id').replace("lnkLabelSize_", "");
            var windowMiddleX = Math.round($(window).width() / 2 + 100);
            var dimensions = $(obj).html();



            if (dimensions.indexOf('"') < 0) return; //if the link does not contain dimensions do nothing (CD Label Size)
            else {

                if (dimensions.indexOf('RC') > 0) var hasCorners = 'Rounded Corners';
                else if (dimensions.indexOf('SC') > 0) var hasCorners = 'Square Corners';
                else if (dimensions.indexOf('Oval') > 0) var isCircular = 'Oval';
                else if (dimensions.indexOf('Circle') > 0) var isCircular = 'Circle';

                //inject data
                $('#sizeHoverTitle').html(linkID);
                $('#sizeHoverImg').attr('src', 'http://images.onlinelabels.com/minilabelpics/' + linkID + "mini.gif");
                $('#sizeHoverBoxContent').append('<div class="sizeHoverSpec">' + dimensions.substr(0, dimensions.lastIndexOf(' ')) + ' Label</div>');

                if (hasCorners) $('#sizeHoverBoxContent').append('<div class="sizeHoverSpec">' + hasCorners + "</div>");
                else if (isCircular) $('#sizeHoverBoxContent').append('<div class="sizeHoverSpec">' + isCircular + "</li>");

                //position box X
                if ($(obj).offset().left > windowMiddleX) var posX = $(obj).offset().left - 130;
                else var posX = $(obj).offset().left + 10;

                //position box Y
                if ($(window).height() - ($(obj).offset().top - $(window).scrollTop()) < 280) var posY = $(obj).offset().top - 230;
                else var posY = $(obj).offset().top + 35;

                var f = function() {
                    if (notIE) $('#sizeHoverBox').fadeIn('fast').css({ 'top': posY + 'px', 'left': posX + 'px' });
                    else $('#sizeHoverBox').show().css({ 'top': posY + 'px', 'left': posX + 'px' });

                }
                clearTimeout(popupTimeout);
                popupTimeout = setTimeout(f, 400);

            }
            break;

        case 'off':
            $('#sizeHoverBox').hide();
            $('.sizeHoverSpec').remove();
            clearTimeout(popupTimeout);
            break;
    }
}




// IE6 BG Flicker / Sprite Bug Fix
try {
    document.execCommand('BackgroundImageCache', false, true);
} catch (e) { }


$(document).ready(function() {

    

    $('.materialCategory a').click(function(e) {
        e.preventDefault();
        var mat = $(this).closest("div").attr("id");

        var posX = $(this).closest("div").offset().left;
        //var posY = $(this).closest("div").offset().top;

        if ($(window).height() - ($(this).offset().top - $(window).scrollTop()) < 280) var posY = $(this).closest("div").offset().top - 220; // if y position is close to lower edge, display box above
        else var posY = $(this).offset().top - 30;

        showMaterialPopup(mat, posX, posY);
    });

    $('#matCloseBtn').click(function(e) {
        e.preventDefault();
        $('#materialPopup').hide();
        $('.matContent').hide();
    });


    $('#sheetSizeList a').hover(
        function() { // Hover On           
            sizeListHover('on', this);
        },
        function() { // Hover Off
            sizeListHover('off', this);
        }
    );


    $('#MLDBanner a').click(function(e) {
        e.preventDefault();
        window.open("http://maestro.onlinelabels.com/designer/maestro.aspx", "LD", 'width=840,height=700,screenX=0,screenY=0,top=0,left=0,resizable,scrollbars,location=0,status=1');
    });



});


