// Copyright Brian Hades (c) 1999 - 2004.

var hade_e_window = null;
var hade_e_date = "<FONT SIZE='2' COLOR='BROWN'>Prices in effect as of December 1st, 2003</FONT>";

//deleteCookie("onORDER")
//alert(document.cookie);

// --------------------------------------------------
function displayCover(myLink, w, h, windoName, fileName, posterName, posterPrice, imageText) {
  if(! window.focus) return;
  w = parseInt(w) + 205
  h = parseInt(h) + 35

  var x = Math.ceil((screen.availWidth - w) / 2);
  var y = Math.ceil((screen.availHeight - h) /2);

  var exp = new Date();
  exp.setTime(exp.getTime() + (1 * 60 * 60 * 1000 * 1));  // 1 hour (h24 * m60 * s60 * ms1000 * d365 = one year ahead)

  document.cookie = "Image" + ' = ' + escape(fileName) + '+' + escape(posterName) + '+1' + escape(posterPrice) + '+2'  + escape(imageText) + '+3' + "; expires=" + exp.toGMTString()+ ';'
  var params = "width="+w+",height="+h+",resizable=yes,location=no,screenX="+x+",screenY="+y+",dependent=yes"
  hade_e_window = window.open("", windoName, params);
  hade_e_window.focus();
  myLink.target=windoName;
}

// --------------------------------------------------
function createArray(num) {
this.length = num;
}

// --------------------------------------------------
function getCookie(name) {
var cookieFound=false;
var start = 0;
var end = 0;
var cookieString = document.cookie;
var i=0;
while (i < cookieString.length){
   start=i;
   end = start + name.length;
   if (cookieString.substring (start,end) == name) {
      cookieFound=true;
      break;
   }
   i++;
}

if (cookieFound) {
   start = end + 1;
   end = document.cookie.indexOf (";",start);
   if (end < start) {
	end = document.cookie.length;}
   return document.cookie.substring (start,end);
}

return "";
}


// --------------------------------------------------
function deleteCookie(name) {
  var exp = new Date();
  exp.setTime(exp.getTime() - (1 * 2 * 60 * 1000 * 1));  // 2 minutes (h24 * m60 * s60 * ms1000 * d365 = one year ahead)
  var cval = getCookie(name);
document.cookie= name + "=" + cval + ";expires=" + exp.toGMTString();
}


// --------------------------------------------------
function checkTheCookie() {
var onOrderCookie=unescape(getCookie("onORDER"));

//alert(onOrderCookie);

//Loop thru the forms on the html page, and check against cookie to change qty on order

var numberOfForms = document.forms.length;
for (var i = 0; i<=numberOfForms-2; i++) {
	document.forms[i].elements[0].value = 0
	var j = onOrderCookie.indexOf(document.forms[i].elements[3].value);
		if (j >= 0) {
		var j1 = onOrderCookie.indexOf ("*",j+1);
		var j2 = onOrderCookie.indexOf ("*",j1+1);
		var j3 = onOrderCookie.indexOf ("+",j2+1);
		var onOrderCookieQty = onOrderCookie.substring(j1+1,j2);
		document.forms[i].elements[0].value = onOrderCookieQty
//		alert(j + "\n" + j1 + "\n" + j2 + "\n" + j3 + "\n" + document.forms[i].elements[3].value + "\n" + onOrderCookieQty) // Name
		}
	}
}


// --------------------------------------------------
function addtoBag(form, callcode) {

var maxArray = 35;
var numberOfForms = document.forms.length;

//alert("Number of forms: " + numberOfForms);
//alert("Document location: " + document.location);
//alert("The cookie is: " + document.cookie);

//Make an array to hold forms information - indexed from 0 to maxArray-1
tempArray = new createArray(maxArray);

var onOrderCookie = getCookie("onORDER");

//alert("The cookie length is: " + document.cookie.length)
//alert(onOrderCookie)

//Loop thru the forms on the html page, and build an array (to maxArray) of items
var arrayCount=0;

for (var i = 0; i<=numberOfForms-1; i++) {

  if (document.forms[i].elements.length != 5) {alert("Error in booklist page. \n(At form #" + i +" of 0-" + numberOfForms + ".)");arrayCount = 0; break;}

  var keepIt="yes";

  if (isNaN(document.forms[i].elements[0].value)){document.forms[i].elements[0].value =0} //QUANTITY
  if (document.forms[i].elements[0].value == ""){document.forms[i].elements[0].value =0}  //QUANTITY
  if (document.forms[i].elements[0].value < 0){document.forms[i].elements[0].value =0}  //QUANTITY
  if (onOrderCookie.length == 0 && document.forms[i].elements[0].value == "0"){keepIt="no"}  //QUANTITY

  if (keepIt == "yes"){
     arrayCount=arrayCount+1;
     //*** If there are more than maxArray items - show an error to the user an return
     if (arrayCount > maxArray){alert("TOO MANY ITEMS ON THIS PAGE.\n(Internal error 101 - array limit).\nThe items on this page will not\nbe added.") ; break; return}
     tempArray[arrayCount-1] = escape(document.forms[i].elements[3].value)+"*"   //ITEM NAME
     tempArray[arrayCount-1] = tempArray[arrayCount-1] + document.forms[i].elements[0].value+"*"  //QUANTITY
     if (isNaN(document.forms[i].elements[4].value)){document.forms[i].elements[4].value = 0}  //PRICE
     if (document.forms[i].elements[4].value == ""){document.forms[i].elements[4].value = 0}  //PRICE
     tempArray[arrayCount-1] = tempArray[arrayCount-1] + document.forms[i].elements[4].value+"+"  //PRICE

//   alert ("Array " + keepIt + "\n" +arrayCount +"\n" + tempArray[arrayCount-1])
  }
}

if (arrayCount == 0 && callcode == "update") {alert("No items have been selected."); return;}
if (arrayCount == 0) {return;}


//-----------------------------------------------------------

if (onOrderCookie.length == 0) {
  var tempOnOrderCookie=""

  for (i = 0; i<=arrayCount-1; i++) {
    tempOnOrderCookie = tempOnOrderCookie+tempArray[i];
    }
//  alert(tempOnOrderCookie)

  var exp = new Date();
  exp.setTime(exp.getTime() + (1 * 60 * 60 * 1000 * 1));  // 1 hour (h24 * m60 * s60 * ms1000 * d365 = one year ahead)

  document.cookie = "onORDER=" + tempOnOrderCookie + "; expires=" + exp.toGMTString()+ ';'

  if (callcode == "update") {alert("Your shopping cart\nhas been updated.(2)"); return};
  return;
}


//-----------------------------------------------------------
var tempOnOrderCookie = "";

for (i = 0; i<=arrayCount-1; i++) {
//  alert ("tempArray[i]: " + tempArray[i])
  var j1 = tempArray[i].indexOf("*");
  var j2 = tempArray[i].indexOf("*",j1+1);
  var j3 = tempArray[i].indexOf("+",j2+1);

  var arrayItemName = tempArray[i].substring(0,j1);
  var arrayItemQty = tempArray[i].substring(j1+1,j2);
      if (arrayItemQty == ""){arrayItemQty="0"}

  var arrayItemPrice = tempArray[i].substring(j2+1,j3);
      if (arrayItemPrice == ""){arrayItemPrice="0"}

  var k = onOrderCookie.indexOf(arrayItemName);

//  alert (onOrderCookie +"\n" + arrayItemName + "\n" + arrayItemQty + "\n" + arrayItemPrice + "\n" + k)

  if (k < 0) {
     if (arrayItemQty > 0) {tempOnOrderCookie = tempOnOrderCookie + tempArray[i]}
//     alert ("k <= 0 \n"+ tempOnOrderCookie);
     }


  else {  
    //Isolate quantity and price from the item in the cookie
    var j5 = onOrderCookie.indexOf("*",k);
    var j6 = onOrderCookie.indexOf ("*",j5+1);
    var j7 = onOrderCookie.indexOf ("+",j6+1);

    var onOrderCookieQty = onOrderCookie.substring(j5+1,j6);
    if (onOrderCookieQty == ""){onOrderCookieQty="0"}

    var onOrderCookiePrice = onOrderCookie.substring(j6+1,j7);
    if (onOrderCookiePrice == ""){onOrderCookiePrice="0"}

    //If arrayItemQty = 0 then remove item from onOrderCookie
    if (arrayItemQty == 0) {
       var tempCookieString=onOrderCookie.substring(0,k);
       tempCookieString=tempCookieString+onOrderCookie.substring(j7+1,onOrderCookie.length);
       onOrderCookie=tempCookieString;
       tempCookieString=""
       }
    else {
//     alert("1. Length of onOrderCookie: " + onOrderCookie.length);
       var tempCookieString=onOrderCookie.substring(0,j5);
       tempCookieString=tempCookieString+"*"+arrayItemQty+onOrderCookie.substring(j6,onOrderCookie.length+1);
       onOrderCookie=tempCookieString;
//     alert("2. Length of onOrderCookie: " + onOrderCookie.length);
//       alert("here")
       tempCookieString=""
       }
    }
  }

//alert ("Set Cookie to:\n" + onOrderCookie + tempOnOrderCookie)

//Set cookie here
   var expdate = new Date();
   expdate.setTime(expdate.getTime() + (1 * 60 * 60 * 1000 * 1));  // 1 hour (h24 * m60 * s60 * ms1000 * d365 = one year ahead)
   expdate=expdate.toGMTString();
   document.cookie="onORDER=" + onOrderCookie + tempOnOrderCookie + ";expires="+expdate;;

//Kill the array
tempArray = null;

if (callcode == "update") {alert("Your shopping cart\nhas been updated.(1)")};

} // end of function addtoBag




// --------------------------------------------------
//Formats string to two decimal places
 
function asMoney(rawNumber)  {
  var tempNumber = 0
  var tempString = ""
  var returnString = ""
  tempNumber = Math.round(rawNumber * 100)
  if (tempNumber < 10) {
     tempString="00" + tempNumber
     }
  else if (tempNumber < 100) {
     tempString ="0" + tempNumber
     }
  else {
     tempString = "" + tempNumber
     }
  returnString = tempString.substring(0,(tempString.length-2))
  returnString += "." + tempString.substring((tempString.length - 2), tempString.length)
  return returnString;

} // end function asMoney




// --------------------------------------------------
//Opens order window
 
function openOrderForm()  {
  var x = Math.ceil((screen.availWidth - 526) / 2);
  var y = Math.ceil((screen.availHeight - 380) /2);
  var params = "width=526,height=380,resizable=no,scrollbars=yes,location=no,screenX=" +x+ ",screenY=" +y
  var cart =window.open("showcart.html","ShoppingCart",params); 
  if(navigator.appName == "Netscape") {cart.focus();}
} // end function openOrderForm

//-->

