
jQuery(function() 
{
	var $ = jQuery;
	
	/* clear input fields automatically */
    function inputFocus()
    {
        var field = $(this);
        if ( $.trim(field.val()) == $.trim(field.attr("title")) ) 
            field.val("");
    }
    function inputBlur()
    {
        var field = $(this);
        if ($.trim(field.val()) == "") 
            field.val(field.attr("title"));
    }
	
	$("input:text, input:password").focus(inputFocus).blur(inputBlur);
    
	/* auto link "read more" to entire blocks */
	function readOver(e)
	{
		if (e.target.nodeName == "A" || e.target.parentNode.nodeName == "A") return;
		$(this).find("h3 a").css({ "text-decoration":"underline" });
	}
	function readOut()
	{
		$(this).find("h3 a").css({ "text-decoration":"" });
	}
	function readClick(e)
	{
		if (e.target.nodeName == "A" || e.target.parentNode.nodeName == "A") return;
		e.preventDefault();
		var url = $(this).find("h3 a").attr("href");
		if (e.shiftKey) window.open(url);
		else document.location.href = url; 
	}
	
	/* layer */
	var panelContent;
	var panelFrame;
	var panelParams;
	
	window.showIFramePanel = function(src, fixedWidth, fixedHeight) 
	{
		panelParams = { src:src, w:fixedWidth || 540, h:fixedHeight };
		
		$("#POPUP_LAYER .maLayerPad").empty().append($('<div class="loading"></div><iframe frameborder="0" />'));
		panelFrame = $("#POPUP_LAYER iframe");
		panelFrame.css({ visibility: "hidden", height: 100, width:panelParams.w - 12 });
		
		showPanel("POPUP_LAYER", 100);

		setTimeout(function() {
			panelFrame.attr("src", src).load(resizeFrame);
		}, 100);
		return false;
	}

	function resizeFrame(e) 
	{
		var iframe = panelFrame.get(0);
		var docHeight = 520;
		
		if (panelParams.h) docHeight = panelParams.h;
		else {
			try {
				var doc = iframe.contentDocument || iframe.Document;
				docHeight = Math.max(100, Math.min(520, $(doc.body).height()));
			}
			catch (err) { }
		}
		
		var totalHeight = docHeight + 46;
		var pageTop = getScroll();
		var dims = getPageDimensions();
		var endY = pageTop + Math.max(34, (dims.height - totalHeight) / 2);

		panelFrame.css({ height: docHeight, visibility: "hidden" });
		panelContent
			.animate({ top: endY }, { duration: 600, complete: resizeEnd })
			.find(".maLayerPad").animate({ height: docHeight }, { duration: 600 });
	}
	function resizeEnd() 
	{
		setTimeout(fadeIFrame, 50);
	}
	function fadeIFrame() 
	{
		panelContent.find(".loading").remove();
		panelFrame.css({ visibility: "visible" });
	}

	function showPanel(idPanel, innerHeight) 
	{
		var panel = $("#" + idPanel);
		panel.appendTo($("form")); // over page content
		
		panel.find(".maLayerBg").css({ opacity: 0.3, height: $("body").height() });
		panel.find(".closeLayer a").click(window.hidePanel);
		panel.show();

		panelContent = panel.find(".maLayerPanel");
		panelContent.css("width", panelParams.w);
		panelContent.find(".maLayerTop").css("width", panelParams.w - 16);
		if ($.browser.msie > 0 && parseInt($.browser.version) < 7) panelContent.addClass("ie6");
		if (innerHeight)
			panelContent.find(".maLayerPad").css({ height: innerHeight });
		autoCenter();
		$(window).scroll(autoCenter);
		setTimeout(fadePanel, 50);
	}
	function fadePanel() 
	{
		if (panelContent)
			panelContent.fadeIn(200);
	}

	window.hidePanel = function(e) 
	{
	    // For Coupon Tagging On Closing Overlay
	    insertTag();
	    
		if (e) e.preventDefault();
		if (panelContent) {
			panelContent.parents(".maLayer").find(".maLayerBg").css({ opacity: 0 });
			panelContent.fadeOut(200, removePanel);
			panelContent = null;
		}
		if (panelFrame) {
			panelFrame.unbind("load", resizeFrame);
			panelFrame.attr("src", "");
		}
		return false;
	}
	function removePanel() 
	{
		var panel = $(this).parents(".maLayer");
		panel.hide().find(".maLayerPad").css({ height: 200 });
		panel.find("frame").attr("src", "").css({ height: 200, visibility: "hidden" });
	}

	function autoCenter() 
	{
		if (panelContent) {
			var pageTop = getScroll();
			var dims = getPageDimensions();
			var endY = pageTop + Math.max(34, (dims.height - panelContent.find(".maLayerPad").height() - 95) / 2);
			panelContent.css({ top: endY });
		}
	}

	function getScroll() 
	{
		if (document.all) return top.document.documentElement.scrollTop;
		else return top.pageYOffset;
	}
	function getPageDimensions() 
	{
		var dimensions = { width: 0, height: 0 };
		if ($.browser.msie) {
			dimensions.width = document.documentElement.clientWidth;
			dimensions.height = document.documentElement.clientHeight;
		}
		else if (window.innerWidth && window.innerHeight) {
			dimensions.width = window.innerWidth;
			dimensions.height = window.innerHeight;
		}
		return dimensions;
	}
	
	$(".js-readmore, .coProductItem")
		.css({ cursor:"pointer" })
		.mouseover(readOver).mouseout(readOut)
		.click(readClick);
});
