/*  ================================
     Sitewide JavaScript
    ================================ */
	
thunder.client.project.colorChanged = function(s)
{
	document.getElementById('scene7imgsrc').src=s;
}

thunder.client.project.readMore = function()
{
	$('.read-more-zone').css('display','block');
	$('.read-less-zone').css('display','none');
	$('.read-less-button').css('display','block');
	$('.read-more-button').css('display','none');
}

thunder.client.project.readLess = function()
{
	$('.read-less-zone').css('display','block');
	$('.read-more-zone').css('display','none');
	$('.read-less-button').css('display','none');
	$('.read-more-button').css('display','block');
}

thunder.client.project.continueShopping = function()
{
	$('.popup').css('display','none');
}

function showAddToCartPopUp(s)
{
	thunder.client.project.showPopup(s);
}

var showKRWPopup = function(popupName, popupWidth, m) {
	var wd = "400px";
	if(popupWidth) {
		wd = popupWidth + "px"; 			
	}
	var modalMode = false;
	if(m) {
		modalMode = m;
	}
	$('#'+popupName).dialog({autoOpen: false});
	$('#'+popupName).dialog('open');
}

function displayAddToCartPopUp(s,topPosition)
{
	var maskHeight = $(document).height();    
	var maskWidth = $(window).width();  
    var dialogTop =  (maskHeight/3) - ($('#dialog-box').height());    
    var dialogLeft = (maskWidth/2) - ($('#dialog-box').width()/2);
    topPosition = topPosition - ($('#dialog-box').height());
    $('#dialog-box').css({top:topPosition, left:dialogLeft}).show();  
    $('#dialog-message').html(s); 
}
thunder.client.project.showPopup = function(s)
{
	$('.popup').children('strong')[0].innerHTML = s;
	$('.popup').css('display','block');
}

function validateSelection(formId) { 
	var result = true;
	var refinementSelectedVal = $("#"+formId+"_refinement").val();
	if(refinementSelectedVal == 'noSkuSelected')	{
		if(!$("#"+formId+"_refinement").parent().parent().hasClass("selectRef"))	{
			$("#"+formId+"_refinement").parent().parent().toggleClass("selectRef");
		}
		result = false;
	}	else	{
		$("#"+formId+"_refinement").parent().parent().toggleClass("selectRef", false);
	}
    return result; 
} 
 
var getAddProductToCartParams = function(formId) {
	var formSelected = "#"+formId+"_addToCartForm";
	var refinementSelectedVal = $("#"+formId+"_refinement").val();
	var quantitySelectedVal = $("#"+formId+"_quantity").val();
 	var params = null;
	params = "productId=" + formId 
 			+ "&skuId=" + refinementSelectedVal 
 			+ "&qty=" + quantitySelectedVal
 			+ "&checkInventory=true";
	return params; 		
}

var updateShoppingCartSummary = function(secure) {
	var ajaxParams = "secure=" + secure;
	$.ajax({
		type: "POST",
		url: "/krw/common/cart_summary.jsp",
		data: ajaxParams,
		success: function(data) {
			$("#cart_summary").html(data);
		},
		error: function(r) {
		}
	});
}

thunder.client.project.pageLoaded = function()
{
	thunder.client.modify.selfLabelFields();
	thunder.client.modify.knapikMenu(true);
	thunder.client.modify.tabSet(thunder.client.project.colorChanged);
	$('.read-more-button').click(thunder.client.project.readMore);
	$('.read-less-button').click(thunder.client.project.readLess);
	
	$('.image-button-search').click(
			function(){
				if(validateSelection($(this).attr('id')))	{
					var formId = $(this).attr('id');
					var KRW_DELIM = "$+$";
//					 var res = [];
					var ajaxParams = getAddProductToCartParams(formId);
					var prdName = $("#"+formId+"_brand").html()+" "+$("#"+formId+"_name").html();
					var offset = $("#"+formId+"_addToCartForm").offset();
					$.ajax({
							type: "POST",
							url: "/krw/search/searchListAjaxAddToCart.jsp",
							data: ajaxParams,
							dataType: "text",
							success: function(data) {
									var resp = data.split(KRW_DELIM);
									var message = "";
									if(resp[0]) {
										eval(resp[0]);
									}					
									if(resp[1]) {
										res = eval("(" + resp[1] + ")"); 
									}
									// Error with res["res"] == "true" in dev so temporarily commenting it out.
//									if(res && res["res"] && res["res"] == "true") {
									if(res && res["res"]) {
										updateShoppingCartSummary(true);
										message = '<strong>'+prdName+'</strong> has been added to your cart';
									} else {
										message = "An error occured while adding product to cart. Please contact support.";
									}
									displayAddToCartPopUp(message,offset.top);
							},
						  	error: function(XMLHttpRequest, textStatus, errorThrown)	{
						  			alert('An error occured while adding product to cart. Please contact support');
						  	}
						});
				}
				return false;
			});
	
	$('select').change(
			function(){
				if(($(this).val() != 'noSkuSelected') && ($(this).parent().parent().hasClass("selectRef")))	{
					$(this).parent().parent().toggleClass("selectRef", false);
				}
			});

	if ($.browser.msie) {
		$('select.skuSelected')
		.bind('mouseover', function() { $(this).addClass('expand').removeClass('clicked'); })
		.bind('click', function() { $(this).toggleClass('clicked'); })
		.bind('mouseout', function() { if (!$(this).hasClass('clicked')) { $(this).removeClass('expand'); }})
		.bind('change blur', function() { $(this).removeClass('expand clicked'); });
	}

	// Change these -
	$('.continue-shopping').click(thunder.client.project.continueShopping);
	$('.d-continue-shopping').click(function(){
		$('#dialog-box').hide();
		return false;
	});
//	$('.add-to-cart').click(function() { thunder.client.project.showPopup('Women\'s New Balance&reg; 993'); });
}

$(document).ready(thunder.client.project.pageLoaded);