﻿// Create a Javascript class to handle the cart.
var cartHandle = $("#cart-count");
var Cart= {	
	texts: {
        searchArticles: "",
        sectionPath: "",
        cartTopBgPos: "",
        colapseCart: "Klicka här för att minimera kundvagnen",
        expandCart: "Klicka här för att visa kundvagnen",
        listItems: "12",
        gridItems: "12"
    },
    init: function (b) {		
        /*$.listen("click", "#cartTop", function () {
            document.location = '/cart';
            return false
        });
        
$.listen("mouseover", "#cartTop", function () {
            var c = $("#popupCart");
            $("#_ShoppingCartContent").is(":visible") ? $(".popupCartInfo").html(b.texts.colapseCart) : $(".popupCartInfo").html(b.texts.expandCart);
            c.css({
                top: -55,
                left: -70,
                display: "block"
            });
            c.animate({
                top: "-=4px",
                opacity: 1
            }, 100, "swing", function () {
                beingShown = false;
                shown = true
            });
            return false
        });
*/
        var a = null;
        /*
$.listen("mouseout", "#cartTop", function () {			
            var c = $("#popupCart");
            if (a) {
                clearTimeout(a)
            }
            a = setTimeout(function () {
                a = null;
                c.animate({
                    top: "-=4px",
                    opacity: 0
                }, 100, "swing", function () {
                    shown = false;
                    c.css("display", "none")
                })
            }, 200)
        })
*/
    },
    animateCart: function (a, b) {
        toggleShoppingCart(a);
        $("#cartTop").css("background-position", b)
    },	
    add: function (id, quantity) {
		quantity = quantity || 1;
		objSelf = this;
		$.post("/webshop/com/cart.cfc", 
			{
				method:"addtoCart",
				id: id,	
				quantity: quantity,
				returnFormat:"json"
			}, 
			function(res) {
				//$("a#" + id).removeClass("buybutton").addClass("cartbutton").attr("href","?v=cart").attr("title","Visa kundvagnen").find("span").text("Visa kundvagnen");
				$("#cartbtn" + id).show().fadeIn();
				objSelf.showCount();
			}
		)
		return false;
	},
	update: function (id, count) {
		objSelf = this;
		var random = parseInt(Math.random()*999999999999999);
		$.getJSON("/webshop/com/cart.cfc", 
			{
				method:"updateCart",
				id: id,
				count: count,				
				returnFormat:"json",
				rand: random								
			}, 
			function(res) {				
				// Check to see if request was successful.
				if (res){
					objSelf.showCount(); 
				}
			}
		);		
	},
	remove: function (id){
		objSelf = this;
		var random = parseInt(Math.random()*999999999999999);
		$.getJSON("/webshop/com/cart.cfc", 
			{
				method:"deleteFromCart",
				id: id,								
				returnFormat:"json",
				rand: random				
			}, 
			function(res) {				
				if (res){
					objSelf.showCount(); 
				}
			}
		);			
	},
	showCount: function(){
		objSelf = this;
		var random = parseInt(Math.random()*999999999999999);
		$.getJSON("/webshop/com/cart.cfc",
			{
				method:"getfullCart",				
				returnFormat:"json",
				rand: random
			}, function(res) {			
			var result="";			
			if(res.ITEMS){				
				result += "<div class='cartContent'><span class='cart_contains'>";
				result += parseInt(res.QUANTITY) + "</span> var" + (res.QUANTITY > 1?'or':'a') + " <span class='cart_price'>";
				result += parseInt(res.CASHPRICE) + ":-</span><br><div class='shoppingCartInstallment'>Delbetala från <span>"
				result += parseInt(res.PARTPRICE) + ":-</span> / mån</div></div>";
				objSelf.calculateCart();				
				$(".gotocheckout").show();				
			}else{
				result = "<span class='nocontent'>Kundvagnen är tom</span>";
				$("#cartcontents").html('<h2>Kundvagnen är tom</h2>');
				$(".gotocheckout").hide();
			}
		
			result += "<div class='cartBottom'></div>";			
			$("#cartBody").html(result);
		})		
	},
	calculateCart: function(){				
		var totalCashPrice = 0;
		var totalPartPrice = 0;
		$(".cartRow").each(function(idx, elm){
			currID = $(this).attr("id");
			var cashPrice = parseInt($("#cashprice" + currID).text()) * parseInt($("#quantity" + currID).val());
			var partPrice = parseInt($("#partprice" + currID).text()) * parseInt($("#quantity" + currID).val()); 
			totalCashPrice += cashPrice;
			totalPartPrice += partPrice;
			//$("#cashprice" + currID).text(cashPrice);
			//$("#partprice" + currID).text(partPrice);
		})
		if($(".cartRow").length == 0){
			$("#gotocheckout").hide();
		}
		
		if(totalPartPrice * 36 > 30000){
			var limit = 'class="limit over" title="Totalsumman för delbetalningen överstiger maxgräns för onlineköp"';			
			$(".gotocheckout").hide();	
		}else{
			var limit = 'class="limit below"';
			$(".gotocheckout").show();
		}
		var returnString = "";
		
		returnString += "Totalt: <strong>" + totalCashPrice;
		returnString += "</strong> SEK eller ";
		returnString += "<strong " + limit + ">" + totalPartPrice + "</strong> SEK / m&aring;nad";
		$(".totalprice").html(returnString);		
		$(".limit.over").bt(BeautyOptions);
	},
	show: function(container){
	}
};

