﻿$(document).ready(function() {
    FauxDropDowns();
    // randomizer plugin
    jQuery.jQueryRandom = 0;
    jQuery.extend(jQuery.expr[":"],
    { random: function(a, i, m, r) {
        if (i == 0) {
            jQuery.jQueryRandom = Math.floor(Math.random() * r.length);
        };
        return i == jQuery.jQueryRandom;
    }
    });
    // join email list input text replacement
    textReplacement($('.email-list-input'));
    share();
    CallToolTip();
    ShowActiveSubNav();
    ShowPriceByDropDowns();
    $('.main-image-wrapper').children('div:first').css({ 'z-index': '10' });
    $('.main-image-wrapper').children('div:first').css({ 'z-index': '10' });
    MiniImageWrapperClick();
    MainImageWrapperClick();

   
});
function ShowPriceByDropDowns() {
    // show by price dropdowns
    $('.leftnav-byprice > li > a').toggle(function() {
        $('.leftnav-byprice ~ .dd-wrapper').show();
        return false;
    },
    function() {
        $(".leftnav-byprice ~ .dd-wrapper").hide();
        return false;
    }
    );
}
// the input field text replacement
function textReplacement(input) {
    var originalvalue = input.val();
    input.focus(function() {
        if ($.trim(input.val()) == originalvalue) { input.val(''); }
    });
    input.blur(function() {
        if ($.trim(input.val()) == '') { input.val(originalvalue); }
    });
}
function FauxDropDowns() {
    // faux dropdowns Materials
    $('.dd-nameMaterial').click(function() {
        $(this).children('.dd-choicesMaterial').show();
        return false;
    }).mouseleave(function() {
        $(this).children('.dd-choicesMaterial').hide();
    });
    // get value of hidden input field
    var inputValMaterial = $('.hidden-inputMaterial').val();

    // make hidden input value the shown header for the faux dropdown
    $('.dd-nameMaterial > span').html(inputValMaterial);
    $(".dd-choicesMaterial a").click(function() {
        var dbc = $(this).attr("href");
        var vc = $(this).html();
        var ddname = $(this).parents(".dd-nameMaterial").children("span");
        var ddinput = $(this).parents(".dd-nameMaterial").children("input");

        ddname.html(vc);
        ddinput.val(vc);
        $(this).parents('.dd-choicesMaterial').hide();

        __doPostBack("tbMaterial", "TextChanged");
        return false;
    });

    // faux dropdowns Length
    $('.dd-nameLength').click(function() {
        $(this).children('.dd-choicesLength').show();
        return false;
    }).mouseleave(function() {
        $(this).children('.dd-choicesLength').hide();
    });
    // get value of hidden input field
    var inputValLength = $('.hidden-inputLength').val();

    // make hidden input value the shown header for the faux dropdown
    $('.dd-nameLength > span').html(inputValLength);
    $(".dd-choicesLength a").click(function() {
        var dbc = $(this).attr("href");
        var vc = $(this).html();
        var ddname = $(this).parents(".dd-nameLength").children("span");
        var ddinput = $(this).parents(".dd-nameLength").children("input");

        ddname.html(vc);
        ddinput.val(vc);
        $(this).parents('.dd-choicesLength').hide();

        __doPostBack("tbLength", "TextChanged");
        return false;
    });

    // faux dropdowns Price
    $('.dd-namePrice').click(function() {
        $(this).children('.dd-choicesPrice').show();
        return false;
    }).mouseleave(function() {
        $(this).children('.dd-choicesPrice').hide();
    });
    // get value of hidden input field
    var inputValMaterial = $('.hidden-inputPrice').val();

    // make hidden input value the shown header for the faux dropdown
    $('.dd-nameMaterial > span').html(inputValMaterial);
    $(".dd-choicesMaterial a").click(function() {
        var dbc = $(this).attr("href");
        var vc = $(this).html();
        var ddname = $(this).parents(".dd-namePrice").children("span");
        var ddinput = $(this).parents(".dd-namePrice").children("input");

        ddname.html(vc);
        ddinput.val(vc);
        $(this).parents('.dd-choicesPrice').hide();

        //__doPostBack("tbMaterial", "TextChanged");
        return false;
    });
    
}

function CallToolTip() {
    // call tooltip
    $('.tooltip').hover(
		function() {
		    this.tip = this.title;
		    $(this).append(
			'<div class="toolTipWrapper">'
				+ '<div class="toolTipMid"><p>'
					+ this.tip
				+ '</p></div>'
			+ '</div>'
		);
		    this.title = "";
		    this.width = $(this).width();
		    $(this).find('.toolTipWrapper').css({ left: this.width })
		    $('.toolTipWrapper').fadeIn(200);
		},
	function() {
	    $('.toolTipWrapper').fadeOut(100);
	    $(this).children().remove();
	    this.title = this.tip;
	}
	);
}
function share() {
    // share
    $('.share-with-friend').click(function() {
        $('.share-form-wrapper').slideDown(300);
    });
    $('.share-cancel').click(function() {   
        $('.share-form-wrapper').slideUp(300);
    });
}
function showShare() {
        $('.share-form-wrapper').slideDown(300);
}
function ShowActiveSubNav() {
    // show active subnav
    $('.leftnav > li > a').each(function() {
        var n = $(this).attr("class").length;
       // alert(n);
        if (n > 7) {
            $(this).next().show();
        };
    });
}
function ShowActiveSubNavPrice() {    
    // show active subnav
//    $('.leftnav > li > a').each(function() {
//        $(this).next().hide();
//    });
    $('#leftnav3 > li > a').each(function() {
        $(this).next().toggle();
    });
   
}
function FailedServiceCall(msg) {
    alert(msg);
}

function MiniImageWrapperClick() {

    $('.minis-wrapper a').click(function() {
        var minid = $(this).children('img').attr("id");
        var lgid = minid.replace(/-mini/, "-main")

        $('.main-image-wrapper').children('div').css({ 'z-index': '0', 'opacity': '0.0' });
        $('a#' + lgid).parent('div').css({ 'z-index': '10' }).animate({
            opacity: 1.0
        }, 1500);
        return false;
    });
}
function MainImageWrapperClick() {
    $('.main-image-wrapper a').each(function() {

        $(this).magnify({
            showEvent: 'click',
            loadingImage: '/skins/skin_1/images/loader.gif',
            lensWidth: 120,
            lensHeight: 140,
            lensCss: { backgroundColor: '#fff',
                border: 'solid 1px #000',
                opacity: 0.3
            },           
            stageCss: { border: '1px solid #808080' }
        });
    });
}
function EndRequestHandler(sender, args) {
    if (args.get_error() == undefined) {
        FauxDropDowns();
        share();
        CallToolTip();
        ShowActiveSubNav();
        ShowPriceByDropDowns();
        // join email list input text replacement
        textReplacement($('.email-list-input'));
       
        MiniImageWrapperClick();
        MainImageWrapperClick();

//        // get value of hidden input field
//        var inputVal = $('.hidden-input').val();

//        // make hidden input value the shown header for the faux dropdown
//        $('.dd-name > span').html(inputVal);
    }
    else {
        alert("There was an error" + args.get_error().message);
    }
}
function showCart() {
    $("#cartcontents").fadeIn(1000);
    $("#cartcontents").fadeTo(5000, 1).fadeOut(1000);
}
function ShowLayer() {
    // hide all dropdowns on the page


    // looping through all forms on the page

    for (f = 0; f < document.forms.length; f++) {
        var elements = document.forms[f].elements;
        // looping through all elements on certain form

        for (e = 0; e < elements.length; e++) {
            if (elements[e].type == "select-one") {
                elements[e].style.display = 'none';
            }
        }
    }

    // show layer

    var layer = document.getElementById('layer');
    layer.style.display = 'block';
}
function HideLayer() {
    // hide all dropdowns on the page

    for (f = 0; f < document.forms.length; f++) {
        var elements = document.forms[f].elements;
        for (e = 0; e < elements.length; e++) {
            if (elements[e].type == "select-one") {
                elements[e].style.display = 'block';
            }
        }
    }
    // hide layer

    var layer = document.getElementById('layer');
    layer.style.display = 'none';
}

function changeDropDownMaterial(_var) {
    // get value of hidden input field
    $('.hidden-inputMaterial').val(_var);
    $("tbMaterial").attr("value", _var);
    __doPostBack("tbMaterial", "TextChanged");
    //__doPostBack("tbLength", "TextChanged");
    // make hidden input value the shown header for the faux dropdown
    //$('.dd-name > span').html(_var);

}
function changeDropDownLength(_var) {
    // get value of hidden input field
    $('.hidden-inputLength').val(_var);
    $("tbLength").attr("value", _var);
    __doPostBack("tbLength", "TextChanged");
    // make hidden input value the shown header for the faux dropdown
    //$('.dd-name > span').html(_var);

}
function showPress() {
    $("#modalPress").modal({
        opacity: 20,
        overlayClose: true,
        minWidth: 300,
        appendTo: 'form',
        position: ["20%"]
    });
};
function showPress2() {
    $("#modalPress").modal({       
        onOpen: function(dialog) {
            dialog.overlay.fadeIn('slow', function() {
                dialog.container.slideDown('slow', function() {
                    dialog.data.fadeIn('slow');
                });
            });
        }
    });
}
