/**
 * @author lindemann
 */
var ArrBasket = new Array();
var BasketTime = new Date();


function ViewBasket(isAbo){

	var strCookieName = null;
	
	if(isAbo){
		strCookieName = 'BasketAbo';
		$('BasketName').update('Mein Abonnement:');
		if($('FooterBasketName'))
			$('FooterBasketName').update('Mein Abonnement:');		
		if ($('header_basket_button_link')) {
			$('header_basket').onmouseup = function onmouseup(event){
				makeBasket(isAbo)
			};
		}
		if ($('footer_basket')) {
			$('footer_basket').onmouseup = function onmouseup(event){
				makeBasket(isAbo)
			};
		}
	}else{
		strCookieName = 'Basket';
		$('BasketName').update('Mein Warenkorb:');
		if($('FooterBasketName'))
			$('FooterBasketName').update('Mein Warenkorb:');
		if ($('header_basket_button_link')) {
			$('header_basket').onmouseup = function onmouseup(event){
				makeBasket(isAbo)
			};
		}
		if ($('footer_basket')) {
			$('footer_basket').onmouseup = function onmouseup(event){
				makeBasket(isAbo)
			};
		}
	}
    var strBasket = GetCookie(strCookieName);
	
		intArtikel = 0;
		fltPreis = 0.00;
		
		arrArtikel = strBasket.split('~');
		$A(arrArtikel).each(function(Artikel){
			intArtikel += parseInt(Artikel.split('|')[0]);
			fltPreis += parseFloat(Artikel.split('|')[10] * parseInt(Artikel.split('|')[0]));
		}); 

    if (strBasket == "") {
		return "0 Artikel<br><span>(0,00 &euro;)</span>";
	}
	else {
		return intArtikel + " Artikel<br><span>(" + formatPrice(fltPreis) + " &euro;)</span>";
	}
}

function buyItem(newQty, newStyleNumber, newBest, newWelt, newDivision, newCategory, newStyleName, newColorName, newColorNumber, newSize, newSizeNo, newPrice, newTax, newLng, newEAN, newNewSale, newAltStyleNr, newSizeThumb, newStyleThumb, newID, newEuroFlag, new2, isAbo){
	
    if (typeof newWelt != undefined) {
        newBasketProfil = newWelt;
    }
    var strCookieName = isAbo ? 'BasketAbo' : 'Basket';
    if (GetCookie(strCookieName).split('~').length >= 12) {// Max 12 Positionen
        alert("Der Warenkorb hat das Limit erreicht. Bitte komplettieren Sie Ihre Bestellung durch Betätigen des \"Zur Kasse\"-Buttons.");
 		return;
    };
    
	var ATBLayer = new Layer();
	
	var LayerName = isAbo ? 'addToBasketAbo' : 'addToBasket';

	ATBLayer.initLayer(350, 245, LayerName, 'border:1px solid #828282; background-color:#FFFFFF;');
	
	document.getElementsByTagName('body')[0].appendChild(ATBLayer.WriteLayer());
	delete ATBLayer;
	LoadBasket(isAbo);
	PushBasket(newQty, newStyleNumber, newBest, newDivision, newCategory, newStyleName, newColorName, newColorNumber, newSize, newSizeNo, newPrice, newTax, newLng, newEAN, newNewSale, newAltStyleNr, newSizeThumb, newStyleThumb, newID, newEuroFlag, new2, newBasketProfil, isAbo);
	SaveBasket(isAbo);
	ReloadBasket(isAbo);
}

function CheckPromotionBasket(){}

function LoadBasket(isAbo){
	var strCookieName = isAbo ? 'BasketAbo' : 'Basket';
	
    var TheBasket = GetCookie(strCookieName);
    ArrBasket.length = 0;
    if (TheBasket != "") 
        ArrBasket = TheBasket.split("~");
    //ausgabe des cookies betr. array   
    var W_Updated = false;
    var TempArr = new Array();
    var Total_Basket = function(){
        if (ArrBasket.length == 0) 
            return;
        
        var TotalBasket = 0;
        var TempArr = new Array();
        
        for (var b = 0; b < ArrBasket.length; b++) {
            TempArr.length = 0;
            TempArr = ArrBasket[b].split("|");
            if (TempArr[0]) 
                if (TempArr[10]) 
                    TotalBasket = TotalBasket + TempArr[0] * TempArr[10];
        }
        return TotalBasket;
    };
    for (var b = 0; b < ArrBasket.length; b++) {
        TempArr.length = 0;
        TempArr = ArrBasket[b].split("|");
    }
    if (W_Updated) 
        SaveBasket(isAbo);
}

function PushBasket(addQty, addStyleNumber, addBest, addDivision, addCategory, addStyleName, addColorName, addColorNumber, addSize, addSizeNo, addPrice, addTax, addLng, addEAN, addNewSale, addAltStyleNr, addSizeThumb, addStyleThumb, addID, addEuroFlag, add2, addBasketProfil, isAbo){
	
	addEuroFlag = Tracker;
    
    if(isAbo)
    	addBasketProfil="abo";
    
    var TempArr = new Array();
    for (var b = 0; b < ArrBasket.length; b++) {
        TempArr.length = 0;
        TempArr = ArrBasket[b].split("|");
        if (TempArr[1] == addStyleNumber) 
            if (TempArr[7] == addColorNumber) 
                if (TempArr[8] == addSize) {// Del Dupp
                    addQty = Number(addQty) + Number(TempArr[0]);
                    for (var d = b; d < ArrBasket.length - 1; d++) 
                        ArrBasket[d] = ArrBasket[d + 1];
                    ArrBasket.length--;
                }
    }
    var jetzt = new Date();
    var BasketItem = (jetzt.getTime() - BasketTime.getTime()) / 1000;

	if(isAbo)
    var Item = addQty + "|" + addStyleNumber + "|" + addBest + "|" + addDivision + "|" + addCategory + "|" + addStyleName + "|" + addColorName + "|" + addColorNumber + "|" + addSize + "|" + addSizeNo + "|" + addPrice + "|" + addTax + "|" + addLng + "|" + addEAN + "|" + addNewSale + "|" + addBasketProfil + "|" + BasketItem + "|" + addAltStyleNr + "|" + addSizeThumb + "|" + addStyleThumb + "|" + addID + "|" + addEuroFlag + "|" + add2 + " ";
  //var Item = addQty + "|" + addStyleNumber + "|" + addBest + "|" + addDivision + "|" + addCategory + "|" + addStyleName + "|" + addColorName + "|" + addColorNumber + "|" + addSize + "|" + addSizeNo + "|" + addPrice + "|" + addTax + "|" + addLng + "|" + addEAN + "|" + addBasketProfil + "|abo|" + addAltStyleNr + "|" + addSizeThumb + "|" + addStyleThumb + "|" + addID + "|" + addEuroFlag + "|" + add2 + " ";
	else
		var Item = addQty + "|" + addStyleNumber + "|" + addBest + "|" + addDivision + "|" + addCategory + "|" + addStyleName + "|" + addColorName + "|" + addColorNumber + "|" + addSize + "|" + addSizeNo + "|" + addPrice + "|" + addTax + "|" + addLng + "|" + addEAN + "|" + addNewSale + "|" + addBasketProfil + "|" + BasketItem + "|" + addAltStyleNr + "|" + addSizeThumb + "|" + addStyleThumb + "|" + addID + "|" + addEuroFlag + "|" + add2 + " ";

    ArrBasket[ArrBasket.length] = Item;
    BasketProfil = "";
    
    BasketTime = new Date();
}


function ReloadBasket(isAbo){
	$('header_basket_content').update(ViewBasket(isAbo));
	$('footer_basket_content').update(ViewBasket(isAbo).replace('<br>', '&nbsp;&nbsp;'));
}

function SaveBasket(isAbo){
	
	var strCookieName = isAbo ? 'BasketAbo' : 'Basket';

    var TheBasket = "";
    for (t = 0; t < ArrBasket.length; t++) 
        if (ArrBasket[t]) 
            TheBasket = TheBasket + ArrBasket[t] + '~';
    TheBasket = TheBasket.substring(0, TheBasket.length - 1);//Lösche letzte '~', sonst ArrBasket hat ein leeren Eintrag
    var Zeit = new Date();
    var Jetzt = Zeit.getTime();
    Zeit.setTime(Jetzt + 1 * 24 * 60 * 60 * 500);// 0.5 Tage
    SetCookie(strCookieName, TheBasket, Zeit);
/*
    if (GetCookie(strCookieName) != TheBasket) 
        alert("Ihre Sicherheitseinstellungen erlauben es nicht einen Cookie zu schreiben. \n\nSie müssen das Schreiben von Cookies erlauben um im FALKE Online Shop zu bestellen. \n\nSie können diese Sicherheitseinstellungen jederzeit wieder ändern. \n\nIhr Falke e-shop Team");
*/        
}

function SortBasket(Idx){
    var t = 0;
    for (;;) {
        if (t >= ArrBasket.length) 
            break;
        if (t < 0) 
            break;
        if (ArrBasket[t] && !ArrBasket[t + 1]) 
            break;
        if (!ArrBasket[t] || !ArrBasket[t + 1]) {
            alert("Error in SortBasket:" + t);
            break;
        };
        var TempItem0 = new Array();
        var TempItem1 = new Array();
        TempItem0 = ArrBasket[t].split("|");
        TempItem1 = ArrBasket[t + 1].split("|");
        if (TempItem0[Idx] > TempItem1[Idx]) {
            var tBa = ArrBasket[t];
            ArrBasket[t] = ArrBasket[t + 1];
            ArrBasket[t + 1] = tBa;
            t = t - 1;
            continue;
        }
        t++;
    }
}
