// Function for retrieving the total number of items in the basket
// Function that reads the basket-cookies on load.

var prize = 27;

function updateOnLoad() {
// If URL-parameters are set, strip the URL of these and redirect to the
// stripped URL
if (window.location.href.indexOf("?") > -1) {
var url = window.location.href;
url = url.substring(0,window.location.href.indexOf("?"));
window.location = url;
}
// Retrieve all cookie-names, and then for each name, retrieve its number
var cookieArray = readCookie("",0);
var checkout = document.getElementById("checkout");
    for(i = 0;i < cookieArray.length;i++) {
        var name = cookieArray[i];
        var number = parseInt(readCookie(name,1));
        // Do not proceed if number is not a number
        if(parseInt(number) == number-0) {
            //alert(parseInt(number)+" : "+number);
            // Draw the basket
            var basket = document.getElementById("basket-holder");
            var tag = document.getElementById("basket-tag");
            tag.style.display = "none";
            checkout.style.display = "block";
            var boxTextHolder = document.createElement("div");
            boxTextHolder.setAttribute("id", name+"-box");
            boxTextHolder.style.fontSize = "11px";
            boxTextHolder.style.fontWeight = "bold";
            boxTextHolder.style.marginBottom = "5px";
            boxTextHolder.style.marginLeft = "10px";
            var boxTextSpan = document.createElement("span");
            boxTextSpan.setAttribute("id", name+"-span");
            // Change for the real name
            //var realName = readCookie(name+"-real",1);
            var realName = document.getElementById(name).innerHTML;
            //var boxText = document.createTextNode(number+" x "+name);
            var boxText = document.createTextNode(number+" x "+realName);
            boxTextSpan.appendChild(boxText);
            var remove = document.createElement("a");
            remove.setAttribute("href","javascript:eraseCookie('"+name+"')");
            remove.setAttribute("onclick","eraseCookie('"+name+"');return false");
            remove.appendChild(document.createTextNode("Ta bort"));
            remove.style.fontSize = "9px";
            remove.style.color = "#F96A53";
            remove.style.fontWeight = "normal";
            remove.style.textDecoration = "underline";
            remove.style.marginLeft = "10px";
            boxTextHolder.appendChild(boxTextSpan);
            boxTextHolder.appendChild(remove);
            basket.appendChild(boxTextHolder);
            // Check if the viewer is on the order page. In that case, update the relevant fields
            var orderform = document.getElementById("bestallningsformular");
            if(orderform) {
                var formName = name.split("skolcopy-")[1];
                updateField(formName, number);
            }
        }
    }
}

function verify() {
var themessage = "Du m\u00E5ste fylla i dessa f\u00E4lt: ";
if (document.getElementById("name").value=="") {
themessage = themessage + "\n\r- Best\u00E4llarens namn";
}
if (document.getElementById("school_name").value=="") {
themessage = themessage + "\n\r- Skolans namn";
}
if (document.getElementById("delivery_address_1").value=="") {
themessage = themessage + "\n\r- Adress";
}
if (document.getElementById("leverans_ort").value=="") {
themessage = themessage + "\n\r- Postnummer, Ort";
}
//alert if fields are empty and cancel form submit
if (themessage == "Du m\u00E5ste fylla i dessa f\u00E4lt: ") {
document.order.submit();
}
else {
alert(themessage);
return false;
   }
}



function updateField(name, value) {
    if(parseInt(value) != value-0) {
        document.getElementById(name+"_subtotal").value = 0;
    }

	
	document.getElementById(name).value = value;
    document.getElementById(name+"_subtotal").value = value*prize;
	
		    var inputs = document.getElementsByTagName("input");
    var sum = 0;
    var subtotal = 0;
    for (var i=0; i<inputs.length; i++) {
        if(inputs[i].className == 'display') {
            sum += parseInt(inputs[i].value);
        }
    }
    document.getElementById("summa").value = sum;
    //For 5 or more books, access the "buy facit"-option
    if(value > 4) {
		document.getElementById(name+"_facit").readOnly = false;
		document.getElementById(name+"_facit").value = 0;
		document.getElementById(name+"_facit").style.background = "#ffffff";
    }
    else {
        document.getElementById(name+"_facit").value = 0;
		document.getElementById(name+"_facit").readOnly = true;
		document.getElementById(name+"_facit").style.background = "#cccccc";
        document.getElementById(name+"_facit_subtotal").value = 0;
    }
    if(value > 24) {
        var facit = document.getElementById(name+"_facit_gratis")
        facit.style.display = "block";
    }
    else {
        var facit = document.getElementById(name+"_facit_gratis")
        facit.style.display = "none";
    }    
    //document.getElementById(id);

}
function updateName(name, realName) {
    //createCookie(name+"-real",realName,0);
}

function updateBasket(name,number) {
//name = "skolcopy:"+name;
// Check that the number submitted is an integer
if(parseInt(number) != number-0) return null;
// remove the "basket is empty"-tag
if (parseInt(number) > 0) {
    var tag = document.getElementById("basket-tag");
    tag.style.display = "none";
    var checkout = document.getElementById("checkout");
    checkout.style.display = "block";
}
else return null;
// Retrieve all cookie-names;
    var cookieArray = readCookie("",0);
    //alert(cookieArray.length);
    for(i = 0;i < cookieArray.length;i++) {
        if (name == cookieArray[i]) {
            // Add the number of books already in the basket
            number = parseInt(number) + parseInt(readCookie(name,1));
        }
    }
    //alert("name :"+name+" number: "+ number);
    createCookie(name,number,0);
// Check that the number submitted is an integer
if(parseInt(number) == number-0) {
// Every time this function is called, previously created elements must // be destroyed, and all elements should be created again, at least if
// an element of the same type has been created before.
// Retrieve any element with the same ID as the one to add
var basket = document.getElementById("basket-holder");
if(document.getElementById(name+"-box")) {
var holder = document.getElementById(name+"-box"); var textSpan = document.getElementById(name+"-span");
holder.removeChild(textSpan);
var remove = holder.getElementsByTagName("a");
remove = remove[0];
holder.removeChild(remove);
var boxTextSpan = document.createElement("span");
var remove = document.createElement("a");
remove.setAttribute("href","javascript:eraseCookie('"+name+"')");
remove.setAttribute("onclick","eraseCookie('"+name+"');return false");
remove.appendChild(document.createTextNode("Ta bort"));
remove.style.fontSize = "9px";
remove.style.color = "#F96A53";
remove.style.fontWeight = "normal";
remove.style.textDecoration = "underline";
remove.style.marginLeft = "10px";
boxTextSpan.setAttribute("id", name+"-span");
// Change for the real name
//var realName = readCookie(name+"-real",1);
var realName = document.getElementById(name).innerHTML;
//var boxText = document.createTextNode(number+" x "+name);
var boxText = document.createTextNode(number+" x "+realName);
boxTextSpan.appendChild(boxText);
holder.appendChild(boxTextSpan);
holder.appendChild(remove);
// Retrieve all children to basket-holder, check if one with the
// same name is already added
//var basketChildren = basket.getElementsByTagName("div");
//for (i = 0; i < baskekChildren.length; i++) {
// alert(basketChildren[i].getAttribute('id'));
//}
}
else {
var boxTextHolder = document.createElement("div");
boxTextHolder.setAttribute("id", name+"-box");
boxTextHolder.style.fontSize = "11px";
boxTextHolder.style.fontWeight = "bold";
boxTextHolder.style.marginBottom = "5px";
boxTextHolder.style.marginLeft = "10px";
var boxTextSpan = document.createElement("span");
boxTextSpan.setAttribute("id", name+"-span");
// Change for the real name
//var realName = readCookie(name+"-real",1);
var realName = document.getElementById(name).innerHTML;
//var boxText = document.createTextNode(number+" x "+name);
var boxText = document.createTextNode(number+" x "+realName);
boxTextSpan.appendChild(boxText);
var remove = document.createElement("a");
remove.setAttribute("href","javascript:eraseCookie('"+name+"')");
remove.setAttribute("onclick","eraseCookie('"+name+"');return false");
remove.appendChild(document.createTextNode("Ta bort"));
remove.style.fontSize = "9px";
remove.style.color = "#F96A53";
remove.style.fontWeight = "normal";
remove.style.textDecoration = "underline";
remove.style.marginLeft = "10px";
boxTextHolder.appendChild(boxTextSpan);
boxTextHolder.appendChild(remove);
basket.appendChild(boxTextHolder);
}
}
else {
alert(number+" &auml;r inte en siffra");
}
    //if (parseInt(number) > 0) {    
        // If there is no link to the order-page
    //    if (document.getElementById("checkout")) {
    //        var check = document.getElementById("checkout");
    //        check.style.display = "none";
    //    }
        //if(!document.getElementById("checkout")) {
    //        var basket = document.getElementById("basket-holder");
    //        var checkout = document.createElement("a");
    //        checkout.setAttribute("href","order.html");
    //        checkout.setAttribute("id","checkout");
    //        checkout.style.fontSize = "10px";
    //        checkout.style.paddingLeft = "10px";
    //        checkout.style.color = "#3D7EFF";
    //        checkout.style.textDecoration = "underline";
    //        checkout.appendChild(document.createTextNode("G&aring; till kassan"));
    //        basket.appendChild(checkout);
        //}
    //}

// Read thru the cookies and update all values
}


function createCookie(name,value,days) {
if (days) {
var date = new Date();
date.setTime(date.getTime()+(days*24*60*60*1000));
var expires = "; expires="+date.toGMTString();
}
else var expires = "";
//alert(name+"="+value+expires+"; path=/");
document.cookie = name+"="+value+expires+"; path=/";
//alert(document.cookie);
}



// A function that either
// 1) returns a list of cookie-names. (mode = 0)
// 2) returns the value of cookie "name" (mode = 1)
function readCookie(name,mode) {
    var nameEQ = name + "=";
    //alert(document.cookie);
    var ca = document.cookie.split(';');
    var d = new Array();
    var j=0;
    for(var i=0;i < ca.length;i++) {
        var c = ca[i];
        // Only check out cookie names with "skolcopy" in them, to avoid displaying other cookies with numbers
        if (c.indexOf("skolcopy") != -1) { 
            while (c.charAt(0)==' ') c = c.substring(1,c.length);
            if (mode == 1) {
                if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
            }
            else {
                d[j] = c.substring(0,c.indexOf("="));
            }
            j++;
        }
    }
    if (mode == 0)
        return d;
    return null;
}
function eraseCookie(name) {
    createCookie(name,"",-1);
    // Remove the container
    var basket = document.getElementById("basket-holder");
    //alert(name+"-box");
    var holder = document.getElementById(name+"-box");
    basket.removeChild(holder);
    // If there are no more books, display the name-tag
    var divs = basket.getElementsByTagName("div");
    // If the length is 2 or less, it means that all books have been removed
    if (divs.length < 2) {
        document.getElementById("basket-tag").style.display = "inline";
        var checkout = document.getElementById("checkout");
        checkout.style.display = "none";
    }
}

