/* Shopping Cart Manager Javascript 
*  This is the scripting container for all javascript related functions needed throughout the shopping cart pages
*/
function checkOut(){
	window.location.href = "/cms-global/shoppingcart/OrderCheckout.do";
}


function addToCart(productId){
	var productVariantId = "";
	var qty = "";
	
	if($('#seletedVariant_'+productId) != null){
		productVariantId = $('#selectedVariant_'+productId).val();
	}else{
		productVariantId = $('#selectedVariantSelect_'+productId).val();
	}
	
	if(productVariantId != ""){
		qty = $("#qty_"+productId).val();
		if(qty == null || qty == ""){
			qty = 1;
		}

		addToCartOverlay(productVariantId, qty);
		
	}else{
		alert("Cannot Add product to your cart. Please contact support")
	}
}

function selectVariant(variantId, price){
	$('.selectedVariant').val(variantId);
	$('#price').html('Price : ' + price);
	$('#productImage').attr('src', '/cms-global/shoppingcart/ViewProductImage.do?productVariantId=' + variantId);
}

$(".productVariantImage").hover(function(){
	$('#productImage').attr('src', '/cms-global/shoppingcart/ViewProductImage.do?productVariantId=' + variantId);		
	}
);

function viewCart(){
	viewCartOverlay();
}

function addToCartOverlay(productVariantId, qty){

	var siteUrl = "/cms-global/shoppingcart/AddToCart.do?productVariantId="+productVariantId+"&quantity="+qty;
	
	jQuery.ajax({
		type: "GET",
		url: siteUrl, 
		dataType: "html",
		success: function(data, textStatus) {
			var overlayPage = $(data).find('#cartcontent').clone();
			overlayPage.attr('id', 'dialogWholepage');
			overlayPage.attr('class', 'dialogContent');
		
			overlayPage.find('#updateCartForm').attr('id', 'dialogEditForm');
	
			$('#popupDialogContent').html('');			
			$('#popupDialogContent').append(overlayPage);
			$('#popupDialog').css("position","absolute");
			$('#popupDialog').css('top', "30px");
			$('#popupDialog').css("left", ( $(window).width() - $('#popupDialog').width() ) / 2 + $(window).scrollLeft() + "px");
			$('#popupDialog').css('opacity', "1");
			$('#popupDialog').jqmShow();
			$('html, body').animate({scrollTop:0}, 'slow');
			$('.jqmOverlay').css('opacity', 0.6);							
			manageCartOverlayForm();
		}
	});
}

function removeFromCartOverlay(productVariantId){
	
	var siteUrl = "/cms-global/shoppingcart/UpdateShoppingCartItem.do?productVariantId="+productVariantId+"&quantity=0";
	
	jQuery.ajax({
		type: "GET",
		url: siteUrl, 
		dataType: "html",
		success: function(data, textStatus) {
		
			var overlayPage = $(data).find('#cartcontent').clone();
			overlayPage.attr('id', 'dialogWholepage');
			overlayPage.attr('class', 'dialogContent');
		
			overlayPage.find('#updateCartForm').attr('id', 'dialogEditForm');
	
			$('#popupDialogContent').html('');			
			$('#popupDialogContent').append(overlayPage);
			$('#popupDialog').css("position","absolute");
			$('#popupDialog').css('top', "30px");
			$('#popupDialog').css("left", ( $(window).width() - $('#popupDialog').width() ) / 2 + $(window).scrollLeft() + "px");
			$('#popupDialog').css('opacity', "1");
			$('#popupDialog').jqmShow();
			$('html, body').animate({scrollTop:0}, 'slow');
			$('.jqmOverlay').css('opacity', 0.6);
							
			manageCartOverlayForm();
		}
	});
}

function viewCartOverlay(){
	
	var siteUrl = "/cms-global/shoppingcart/ViewShoppingCart.do";
	
	jQuery.ajax({
		type: "GET",
		url: siteUrl, 
		dataType: "html",
		success: function(data, textStatus) {
		
			var overlayPage = $(data).find('#cartcontent').clone();
			overlayPage.attr('id', 'dialogWholepage');
			overlayPage.attr('class', 'dialogContent');
		
			overlayPage.find('#updateCartForm').attr('id', 'dialogEditForm');
	
			$('#popupDialogContent').html('');			
			$('#popupDialogContent').append(overlayPage);
			$('#popupDialog').css("position","absolute");
			$('#popupDialog').css('top', "30px");
			$('#popupDialog').css("left", ( $(window).width() - $('#popupDialog').width() ) / 2 + $(window).scrollLeft() + "px");
			$('#popupDialog').css('opacity', "1");
			$('#popupDialog').jqmShow();
			$('html, body').animate({scrollTop:0}, 'slow');
			$('.jqmOverlay').css('opacity', 0.6);
							
			manageCartOverlayForm();
		}
	});
}

function manageCartOverlayForm() {
	$('#dialogEditForm').submit(function() {
		$(this).ajaxSubmit({
			type: 'POST',
			success: function(data, textStatus) {
			
				var overlayPage = $(data).find('#cartcontent').clone();
				overlayPage.attr('id', 'dialogWholepage');
				overlayPage.attr('class', 'dialogContent');
				
				if (overlayPage.find('#updateCartForm').length > 0) {
					overlayPage.find('#updateCartForm').attr('id', 'dialogEditForm');
					
					$('#popupDialogContent').html('');
					$('#popupDialogContent').append(overlayPage);
					$('#popupDialog').css("position","absolute");
					$('#popupDialog').css('top', "30px");
					$('#popupDialog').css("left", ( $(window).width() - $('#popupDialog').width() ) / 2 + $(window).scrollLeft() + "px");
					$('#popupDialog').css('opacity', "1");
					$('#popupDialog').jqmShow();
					$('html, body').animate({scrollTop:0}, 'slow');
					$('.jqmOverlay').css('opacity', 0.6);
									
					manageCartOverlayForm();
					
				} else {
					$('#popupDialog').jqmHide();
					$('#popupDialog').fadeOut('slow');
				}
			},
			error: function(data, textStatus, error) {
				alert(textStatus + " " + error);
			}
		});
		return false;
	});
}

function hideOverlay() {
	$("#popupDialog").jqmHide();
	$('#popupDialog').fadeOut('slow');
}
