// The names of each item
var itemName=new Array(6);

// The links to the picture pages for each item.
var itemLink=new Array(6);

// The sizes of each item
var itemSize=new Array(6);

// The colours of each item
var itemColour=new Array(6);

// The price of each item
var itemPrice=new Array(6);

itemName[1]="Adult T-Shirt";
itemLink[1]="LargeTShirt.html";
itemSize[1]="Small,Medium,Large,X-Large,2X-Large,3X-Large,4X-Large"
itemColour[1]="White,Black";
itemPrice[1]="20.00";

itemName[2]="Youth T-Shirt";
itemLink[2]="LargeTShirt.html";
itemSize[2]="Small,Medium,Large,X-Large";
itemColour[2]="White,Black";
itemPrice[2]="16.00";

itemName[3]="Men's Golf";
itemLink[3]="GolfMen.html";
itemSize[3]="Small,Medium,Large,X-Large,2X-Large,3X-Large,4X-Large"
itemColour[3]="White,Natural,Black";
itemPrice[3]="40.00";

itemName[4]="Ladies' Golf";
itemLink[4]="GolfLadies.html";
itemSize[4]="Small,Medium,Large,X-Large,2X-Large";
itemColour[4]="White,Natural,Black";
itemPrice[4]="39.00";

itemName[5]="Ladies' Sleeveless";
itemLink[5]="GolfLadiesSleeveless.html";
itemSize[5]="Small,Medium,Large,X-Large,2X-Large";
itemColour[5]="White,Black";
itemPrice[5]="38.00";

itemName[6]="Youth Golf";
itemLink[6]="GolfYouth.html";
itemSize[6]="Small,Medium,Large,X-Large";
itemColour[6]="White,Sand,Black";
itemPrice[6]="35.00";

// The cartPage
var cartWindow;
var cartInitialized = false;

// The items in the cart
var cartItem       = new Array(200);
var cartItemColour = new Array(200);
var cartItemSize   = new Array(200);
var cartItemCount  = new Array(200);

var numCartItems = 0;

var netscape = false;

if (navigator.appName=="Netscape")
{
   netscape=true;
}


/////////////////////////////////////////////////////
//  Order Form Script Utilities
/////////////////////////////////////////////////////

function showProps(obj, obj_name) 
{
  var outString = "Properties of " + obj_name + ":\n";
  var count = 50;

  for (var i in obj)
  {
     count--;

     if (count == 0) {
        alert(outString);
        outString = "Properties of " + obj_name + ":\n";
        count=50;

     }
     outString = outString + i +"="+ obj[i]+", ";
  }
  alert(outString);
}

function trimString(str)
{
   while(str.charAt(0) == ' ')
   {
      str = str.substring(1, str.length);
      if (str.length <= 0)
         return "";
   }
   
   while(str.charAt(str.length-1) == ' ')
   {
      str = str.substring(0, str.length-1);
      if (str.length <= 0)
         return "";
   }

   return str;
}


function floor(val)
{
   return parseInt('0'+val, 10);
}

function round(val)
{
   var intval = floor(val);
   var decval = val - intval;

   if (decval >= 0.5)
     return intval+1;
   else
     return intval;
}

function  dollarStr(val)
{
   var cents=eval('100*val');
   cents=round(cents);
   var dollars=floor(cents/100);

   cents=cents-(100*dollars);

   var outstr_dollars = '    ' + dollars 
   var outstr_d=outstr_dollars.substring(outstr_dollars.length-4,outstr_dollars.length);

   var outstr_cents = '0' + cents 
   var outstr_c=outstr_cents.substring(outstr_cents.length-2, outstr_cents.length)

   return outstr_d + '.' + outstr_c
}


function print_options(name, options)
{
   var i = options.indexOf(',');

   var outstr = "<SELECT NAME=" + name + ">" +
                "<option>&lt;select&gt;</option>";

   while (i >= 0) {
      var option = options.substring(0,i);
      options = options.substring(i+1);
      outstr += "<option>" + option + "</option>";
      i = options.indexOf(',');
   }
   outstr += "<option>" + options + "</option></SELECT>";

   // Can have only one 'write' call in older netscapes.
   document.write(outstr);
}


function validateInteger(obj)
{
   var quantity = parseInt(obj.value);

   if ((quantity <= 0) || (isNaN(quantity))) {
      window.alert("Invalid number");
      obj.value= 0;
      return;
   }
   obj.value = quantity;
}

/////////////////////////////////////////////////////
//  Cookie functions
/////////////////////////////////////////////////////

function setCookie(name, value)
{
   document.cookie=name+"="+escape(value)+";";
}

function getCookieValue(offset)
{
   var endstr = document.cookie.indexOf(";", offset);
   if (endstr == -1) 
      return unescape(document.cookie.substring(offset));
   else
      return unescape(document.cookie.substring(offset, endstr));
}

function GetCookie(name)
{
   var arg = name + "=";
   var alen = arg.length;
   var clen = document.cookie.length;
   var i = 0;
   var value = null;

   while (i < clen) {
      var j = i + alen;
      if (document.cookie.substring(i,j) == arg) {
         value = getCookieValue(j);
         break;
      }
      i = document.cookie.indexOf(" ", i) + 1;
      if (i ==0) break;
   }
   return value;
}

function DeleteCookie (name)
{
   var exp = new Date();
   exp.setTime( exp.getTime() - 1);  // This cookie is history
   var value = GetCookie(name);
   document.cookie=name+"="+escape(value)+"; expires=" + exp.toGMTString();
}


/////////////////////////////////////////////////////
//  Cart Functions
/////////////////////////////////////////////////////

function write_cart()
{
   setCookie("NumItems", numCartItems);

   if (numCartItems <= 0) 
   {
      setCookie("NumItems", 0);
      DeleteCookie("Item");
      DeleteCookie("Colour");
      DeleteCookie("Size");
      DeleteCookie("Count");
      return;
   }

   var item  = cartItem[1];
   var colour= cartItemColour[1];
   var size  = cartItemSize[1];
   var count = cartItemCount[1];

   for (var i = 2; i <= numCartItems; i++) 
   {
      item   = item   + "," + cartItem[i];
      colour = colour + "," + cartItemColour[i];
      size   = size   + "," + cartItemSize[i];
      count  = count  + "," + cartItemCount[i];
   }

   setCookie("Item", item);
   setCookie("Colour", colour);
   setCookie("Size", size);
   setCookie("Count", count);
}

function read_cart()
{
   var num    = GetCookie("NumItems");
   var item   = GetCookie("Item");
   var colour = GetCookie("Colour");
   var size   = GetCookie("Size");
   var count  = GetCookie("Count");


   if (num == null) {
      numCartItems = 0;
   }
   else
      numCartItems = num;

   if (numCartItems <= 0) {
      return;
   }

   // Read back the cartItem array
   var i = item.indexOf(',');
   var c = 1;

   while (i >= 0) {
      cartItem[c++] = item.substring(0,i);
      item = item.substring(i+1);
      i = item.indexOf(',');
   }
   cartItem[c++] = item;


   // Read back the cartItemColour array
   i = colour.indexOf(',');
   c = 1;

   while (i >= 0) {
      cartItemColour[c++] = colour.substring(0,i);
      colour = colour.substring(i+1);
      i = colour.indexOf(',');
   }
   cartItemColour[c++] = colour;


   // Read back the cartItemSize array
   i = size.indexOf(',');
   c = 1;

   while (i >= 0) {
      cartItemSize[c++] = size.substring(0,i);
      size = size.substring(i+1);
      i = size.indexOf(',');
   }
   cartItemSize[c++] = size;


   // Read back the cartItemCount array
   i = count.indexOf(',');
   c = 1;

   while (i >= 0) {
      cartItemCount[c++] = count.substring(0,i);
      count = count.substring(i+1);
      i = count.indexOf(',');
   }
   cartItemCount[c++] = count;
}

function init_cart()
{
   read_cart();
}

function write_cart_html(doc)
{
   doc.writeln("<FORM>");
   doc.writeln("<TABLE BORDER=0 WIDTH=400>");
   doc.writeln("<TR>");
   doc.writeln("  <TD BGCOLOR=#f0f0f0>");
   doc.writeln("      <IMG SRC=\"images/secure.gif\" align=left>");
   doc.writeln("      <IMG SRC=\"images/mm_ribbonteenytiny_trans.gif\" align=left>");
   doc.writeln("      <IMG SRC=\"images/secure.gif\" align=right>");
   doc.writeln("      <IMG SRC=\"images/mm_ribbonteenytiny_trans.gif\" align=right>");
   doc.writeln("  </TD>");
   doc.writeln("</TR>");
   doc.writeln("<TR>");
   doc.writeln("  <TD ALIGN=CENTER>");
   doc.writeln("  <FONT COLOR=BLUE WEIGHT=BOLD>CANCER SUCKS SHOPPING CART</FONT>");
   doc.writeln("  </TD>");
   doc.writeln("</TR>");
   doc.writeln("<TR>");
   doc.writeln("  <TD ALIGN=RIGHT>&nbsp;");

   if (numCartItems != 0) 
   {
     doc.write(  "  <input type=button name=EmptyCart value=\"Empty Cart\" ");
     doc.writeln("onclick='remove_all_from_cart( )'>");
   }

   doc.writeln("  </TD>");
   doc.writeln("</TR>");
   doc.writeln("</TABLE>");

   doc.writeln("<TABLE BORDER=1>");
   doc.writeln("  <TR BGCOLOR=#9090ff>");
   doc.writeln("    <TD></TD>");
   doc.writeln("    <TD>Item</TD>");
   doc.writeln("    <TD>Size</TD>");
   doc.writeln("    <TD>Colour</TD>");
   doc.writeln("    <TD>Price</TD>");
   doc.writeln("    <TD>Quantity</TD>");
   doc.writeln("    <TD>Remove</TD>");
   doc.writeln("  </TR>");

   for (var i = 1; i <= numCartItems; i++) {
      doc.write("  <TR><TD>");
      doc.write( i );
      doc.write("</TD><TD>");
      doc.write( itemName[cartItem[i]] );
      doc.write("</TD><TD>");
      doc.write( cartItemSize[i] );
      doc.write("</TD><TD>");
      doc.write( cartItemColour[i] );
      doc.write("</TD><TD>");
      doc.write( itemPrice[cartItem[i]] );
      doc.write("</TD><TD>");
      doc.write( cartItemCount[i] );
      doc.write("</TD><TD>");
      doc.write("<input type=button name=remove"+i+" value=remove ");
      doc.write("onclick='remove_from_cart( " + i + ")'>");
      doc.writeln("</TD></TR>");
   }
   if (numCartItems == 0) {
      doc.writeln("<TR><TD COLSPAN=7><CENTER>No items in cart.</CENTER></TD></TR>");
   }

   doc.writeln("</TABLE>");

   if (numCartItems != 0) 
   {
      doc.writeln("<BR>");
      doc.writeln("<TABLE ALIGN=CENTER>");
      doc.writeln("<TR><TD>");
      doc.write(  "  <input type=button name=CheckOut"+i+" value=\"Go to Checkout\" ");
      doc.writeln("onclick='open_purchase_window( )'>");
      doc.writeln("</TD></TR>");
      doc.writeln("</TABLE>");
   }

   doc.writeln("</FORM>");
}

function update_cart_window()
{
   if ((!cartInitialized) || (cartWindow.closed))
   {
      cartWindow = window.open("cart.html", "ShoppingCart", "toolbar=no,width=450,height=385,resizable=yes,scrollbars=yes");
      cartInitialized = true;
      return;
   }

   cartWindow.focus();

   cartWindow.document.open();
   cartWindow.document.writeln("<HTML>");
   cartWindow.document.writeln("<HEAD>");
   cartWindow.document.writeln("  <META http-equiv=\"Content-Type\" content=\"text/html; charset=iso-8859-1\">");
   cartWindow.document.writeln("  <TITLE>Cancer Sucks Shopping Cart</TITLE>");
   cartWindow.document.writeln("  <SCRIPT src=js/cancersucks_order.js>");
   cartWindow.document.writeln("  </SCRIPT>");
   cartWindow.document.writeln("</HEAD>");

   cartWindow.document.writeln("<BODY BGCOLOR=#e0e0b0 onload='read_cart()'>");

   write_cart_html(cartWindow.document);

   cartWindow.document.writeln("</BODY>");
   cartWindow.document.writeln("</HTML>");

   cartWindow.document.close();
}


function write_checkout_html(doc)
{
   doc.writeln("<FORM NAME=purchase_form action=\"http://www.cancersucks.ca/cgi-bin/TFmail.pl\" method=\"post\" enctype='multipart/form-data' >");
   doc.writeln("  <INPUT type=\"hidden\" name=\"_config\" value=\"cancersucks_order\">");

   doc.writeln("<TABLE BORDER=0 WIDTH=400>");
   doc.writeln("<TR>");
   doc.writeln("  <TD BGCOLOR=#f0f0f0>");
   doc.writeln("      <IMG SRC=\"images/secure.gif\" align=left>");
   doc.writeln("      <IMG SRC=\"images/mm_ribbonteenytiny_trans.gif\" align=left>");
   doc.writeln("      <IMG SRC=\"images/secure.gif\" align=right>");
   doc.writeln("      <IMG SRC=\"images/mm_ribbonteenytiny_trans.gif\" align=right>");
   doc.writeln("  </TD>");
   doc.writeln("</TR>");
   doc.writeln("<TR>");
   doc.writeln("  <TD ALIGN=CENTER>");
   doc.writeln("  <FONT COLOR=BLUE WEIGHT=BOLD>CANCER SUCKS PURCHASE</FONT>");
   doc.writeln("  </TD>");
   doc.writeln("</TR>");
   doc.writeln("<TR>");
   doc.writeln("  <TD ALIGN=RIGHT>");
   doc.write(  "  <input type=button name=ReturnToShopping value=\"Return to Shopping\" ");
   doc.writeln("onclick='update_cart_window( )'>");
   doc.writeln("  </TD>");
   doc.writeln("</TR>");
   doc.writeln("</TABLE>");

   doc.writeln("<TABLE BORDER=1>");
   doc.writeln("  <TR BGCOLOR=#9090ff>");
   doc.writeln("    <TD></TD>");
   doc.writeln("    <TD>Item</TD>");
   doc.writeln("    <TD>Size</TD>");
   doc.writeln("    <TD>Colour</TD>");
   doc.writeln("    <TD>Price</TD>");
   doc.writeln("    <TD>Quantity</TD>");
   doc.writeln("    <TD>Total</TD>");
   doc.writeln("  </TR>");

   var totalPrice = 0;
   var cancersucks_order = "";

   for (var i = 1; i <= numCartItems; i++) {
      doc.write("  <TR><TD>");
      doc.write( i );
      doc.write("</TD><TD>");
      doc.write( itemName[cartItem[i]] );
      doc.write("</TD><TD>");
      doc.write( cartItemSize[i] );
      doc.write("</TD><TD>");
      doc.write( cartItemColour[i] );
      doc.write("</TD><TD>");
      doc.write( itemPrice[cartItem[i]] );
      doc.write("</TD><TD>");
      doc.write( cartItemCount[i] );
      doc.write("</TD><TD>");

      var subtotal = eval(cartItemCount[i] + "*" +  itemPrice[cartItem[i]]);
      doc.write( dollarStr(subtotal) );

      cancersucks_order += i +") " + itemName[cartItem[i]] +
         "  Size: " + cartItemSize[i] +
         "  Colour: " + cartItemColour[i] +
         "  Quantity: " + cartItemCount[i] +
         "  Unit Price: " + itemPrice[cartItem[i]] +
         "  Total Price: " + subtotal + "\n";

      totalPrice = eval(totalPrice + "+" +  subtotal);

      doc.writeln("</TD></TR>");
   }
   doc.write("  <TR><TD COLSPAN=6>");
   doc.write("Total");
   doc.write("</TD><TD>");
   doc.write( dollarStr(totalPrice) );
   doc.writeln("</TD></TR>");

   doc.writeln("</TABLE>");

   cancersucks_order += "\n\nTotal Price: " + dollarStr(totalPrice) + "\n";

   // Put order details in one big input field.
   doc.writeln("  <INPUT type=\"hidden\" name=\"cancersucks_order\" value=\"" + cancersucks_order + "\">");

   doc.writeln("<BR>");

   // Start new table to collect details of purchaser.

   doc.writeln("<TABLE>");

   doc.writeln("<TR>");
   doc.writeln("  <TD BGCOLOR=#b0b0ff COLSPAN=3>");
   doc.writeln("    <FONT COLOR=\"#FFFFFF\">Shipping Address</FONT>");
   doc.writeln("  <TD>");
   doc.writeln("</TR>");
   doc.writeln("<TR>");
   doc.writeln("  <TD>Name:</TD>");
   doc.writeln("  <TD>");
   doc.writeln("    <INPUT maxLength=\"255\" name=\"shipping_name\" size=\"40\" value=\"\">");
   doc.writeln("  </TD>");
   doc.writeln("  <TD>");
   doc.writeln("    <FONT COLOR=\"#FF0000\" SIZE=-1>**</FONT>");
   doc.writeln("  </TD>");
   doc.writeln("</TR>");
   doc.writeln("<TR>");
   doc.writeln("  <TD>Address:</TD>");
   doc.writeln("  <TD>");
   doc.writeln("    <TEXTAREA ROWS=\"4\" COLS=\"35\" NAME=\"shipping_address\" WRAP=\"HARD\"></TEXTAREA>");
   doc.writeln("  </TD>");
   doc.writeln("  <TD>");
   doc.writeln("    <FONT COLOR=\"#FF0000\" SIZE=-1>**</FONT>");
   doc.writeln("  </TD>");
   doc.writeln("</TR>");
   doc.writeln("<TR>");
   doc.writeln("  <TD>Phone:</TD>");
   doc.writeln("  <TD>");
   doc.writeln("    <INPUT maxLength=\"255\" name=\"shipping_phone\" size=\"40\" value=\"\">");
   doc.writeln("  </TD>");
   doc.writeln("  <TD>");
   doc.writeln("    <FONT COLOR=\"#FF0000\" SIZE=-1>**</FONT>");
   doc.writeln("  </TD>");
   doc.writeln("</TR>");
   doc.writeln("<TR>");
   doc.writeln("  <TD>Your e-mail address:</TD>");
   doc.writeln("  <TD>");
   doc.writeln("    <INPUT maxLength=\"255\" name=\"email_address\" size=\"40\" value=\"\">");
   doc.writeln("  </TD>");
   doc.writeln("  <TD>");
   doc.writeln("  </TD>");
   doc.writeln("</TR>");

   doc.writeln("<TR>");
   doc.writeln("  <TD COLSPAN=3>");
   doc.writeln("    &nbsp;");
   doc.writeln("  </TD>");
   doc.writeln("</TR>");

   doc.writeln("<TR>");
   doc.writeln("  <TD COLSPAN=3 BGCOLOR=#f0f0f0 ALIGN=RIGHT>");
   doc.writeln("    <FONT COLOR=\"#FF0000\" SIZE=-1>** - Required field</FONT>");
   doc.writeln("  </TD>");
   doc.writeln("</TR>");

   doc.writeln("<TR>");
   doc.writeln("  <TD COLSPAN=3>");
   doc.writeln("    &nbsp;");
   doc.writeln("  </TD>");
   doc.writeln("</TR>");

   doc.writeln("<TR>");
   doc.writeln("  <TD BGCOLOR=#b0b0ff COLSPAN=3>");
   doc.writeln("    <FONT COLOR=\"#FFFFFF\">Billing</FONT>");
   doc.writeln("  <TD>");
   doc.writeln("</TR>");

   doc.writeln("<TR>");
   doc.writeln("  <TD COLSPAN=3>");
   doc.writeln("    <SELECT NAME=billing_option>");
   doc.writeln("      <option value=VISA>Visa</option>");
   doc.writeln("      <option value=CHEQUE>Cheque (we will contact you to arrange payment)</option>");
   doc.writeln("    </SELECT>");
   doc.writeln("  </TD>");
   doc.writeln("</TR>");

   doc.writeln("<TR>");
   doc.writeln("  <TD COLSPAN=3>");
   doc.writeln("    &nbsp;");
   doc.writeln("  </TD>");
   doc.writeln("</TR>");

   doc.writeln("<TR>");
   doc.writeln("  <TD BGCOLOR=#b0b0ff COLSPAN=3>");
   doc.writeln("    <FONT COLOR=\"#FFFFFF\">VISA</FONT>");
   doc.writeln("  <TD>");
   doc.writeln("</TR>");

   doc.writeln("<TR>");
   doc.writeln("  <TD>Name on Card:</TD>");
   doc.writeln("  <TD>");
   doc.writeln("    <INPUT maxLength=\"255\" name=\"visa_name\" size=\"40\" value=\"\">");
   doc.writeln("  </TD>");
   doc.writeln("  <TD>");
   doc.writeln("  </TD>");
   doc.writeln("</TR>");
   doc.writeln("<TR>");
   doc.writeln("  <TD>Card Number:</TD>");
   doc.writeln("  <TD>");
   doc.writeln("    <INPUT maxLength=\"255\" name=\"visa_number\" size=\"40\" value=\"\">");
   doc.writeln("  </TD>");
   doc.writeln("  <TD>");
   doc.writeln("  </TD>");
   doc.writeln("</TR>");
   doc.writeln("<TR>");
   doc.writeln("  <TD>Card expiry (MM/YY):</TD>");
   doc.writeln("  <TD>");
   doc.writeln("    <INPUT maxLength=\"255\" name=\"visa_expiry\" size=\"40\" value=\"\">");
   doc.writeln("  </TD>");
   doc.writeln("  <TD>");
   doc.writeln("  </TD>");
   doc.writeln("</TR>");
   doc.writeln("<TR>");
   doc.writeln("  <TD>Comments / Requests:</TD>");
   doc.writeln("  <TD>");
   doc.writeln("    <TEXTAREA ROWS=\"4\" COLS=\"35\" NAME=\"comments\" WRAP=\"HARD\"></TEXTAREA>");
   doc.writeln("  </TD>");
   doc.writeln("  <TD>");
   doc.writeln("  </TD>");
   doc.writeln("</TR>");
   doc.writeln("<TR>");
   doc.writeln("  <TD COLSPAN=3>");
   doc.writeln("    &nbsp;");
   doc.writeln("  </TD>");
   doc.writeln("</TR>");

   doc.writeln("<TR><TD ALIGN=CENTER COLSPAN=3>");
   doc.write(  "  <input type=submit name=Buy value=Submit ");
   doc.writeln("    onclick='submit_purchase()'>");
   doc.writeln("</TD></TR>");
   doc.writeln("</TABLE>");

   doc.writeln("</FORM>");
}

function open_purchase_window()
{
   if ((!cartInitialized) || (cartWindow.closed))
   {
      cartWindow = window.open("checkout.html", "ShoppingCart", "toolbar=no,width=450,height=385,resizable=yes,scrollbars=yes");
      cartInitialized = true;
      return;
   }

   cartWindow.focus();
   cartWindow.document.writeln("<HTML>");
   cartWindow.document.writeln("<HEAD>");
   cartWindow.document.writeln("  <TITLE>Cancer Sucks Checkout</TITLE>");
   cartWindow.document.writeln("  <SCRIPT LANGUAGE=\"JAVASCRIPT\" src=\"js/cancersucks_order.js\">");
   cartWindow.document.writeln("  </SCRIPT>");

   cartWindow.document.writeln("</HEAD>");

   cartWindow.document.writeln("<BODY BGCOLOR=#e0e0b0 onload='read_cart()'>");

   write_checkout_html(cartWindow.document);

   cartWindow.document.writeln("</BODY>");
   cartWindow.document.writeln("</HTML>");

   cartWindow.document.close();
}



function add_item(item)
{
   var quantity = parseInt(eval("document.forms[0].quantity" + item + ".value"));
   var colourIndex   = eval("document.forms[0].colour" + item + ".selectedIndex");
   var sizeIndex     = eval("document.forms[0].size" + item + ".selectedIndex");

   var colour   = eval("document.forms[0].colour" + item + ".options["+colourIndex+"].text");
   var size     = eval("document.forms[0].size" + item + ".options["+sizeIndex+"].text");

   if (sizeIndex <= 0) {
      window.alert("Please select a size");
      return;
   }

   if (colourIndex <= 0) {
      window.alert("Please select a colour");
      return;
   }

   if ((quantity <= 0) || (isNaN(quantity))) {
      window.alert("Invalid quantity");
      return;
   }

   add_to_cart(item, quantity, colour, size);
   update_cart_window();

   // Reset the pull down menus for this item
   eval("document.forms[0].quantity" + item + ".value = 0");
   eval("document.forms[0].colour" + item + ".selectedIndex = 0");
   eval("document.forms[0].size" + item + ".selectedIndex = 0");
}


function add_to_cart(item, quantity, colour, size)
{
   read_cart();

   numCartItems++;
   cartItem[numCartItems]       = item;
   cartItemColour[numCartItems] = colour;
   cartItemSize[numCartItems]   = size;
   cartItemCount[numCartItems]  = quantity;

   // update_cart_window();

   write_cart();
}

function remove_from_cart(cartIndex)
{
   if ((cartIndex > numCartItems) || (cartIndex <= 0))
   {
      return;
   }

   for (var i = cartIndex; i < numCartItems; i++)
   {
      cartItem[i]       = cartItem[i+1];
      cartItemColour[i] = cartItemColour[i+1];
      cartItemSize[i]   = cartItemSize[i+1];
      cartItemCount[i]  = cartItemCount[i+1];
   }
   numCartItems--;

   write_cart();
   update_cart_window();
}


function remove_all_from_cart()
{
   numCartItems=0;
   write_cart();
   update_cart_window();
}


/////////////////////////////////////////////////////
//  Submit Function
/////////////////////////////////////////////////////
function submit_purchase()
{
   if (trimString(document.purchase_form.shipping_name.value).length == 0)
   {
      window.alert("Shipping Name required.");
      return;
   }

   if (trimString(document.purchase_form.shipping_address.value).length == 0)
   {
      window.alert("Shipping Address required.");
      return;
   }

   if (trimString(document.purchase_form.shipping_phone.value).length == 0)
   {
      window.alert("Shipping Phone required.");
      return;
   }

   document.purchase_form.submit();

   // Empty cart now.
   remove_all_from_cart();
}

/////////////////////////////////////////////////////
//  Order Form functions
/////////////////////////////////////////////////////

function shirt_description(item)
{
   // Can have only one 'write' call in older netscapes.
   document.write("<a ONCLICK=\'window.open(\"" +
                  itemLink[item] +
                  "\", \"_blank\", \"toolbar=no,width=345,height=385,resizable=yes,scrollbars=no\")\'>" +
                  "<img src=images/eyeblue_trans.gif width=15>"  +
                  itemName[item] +
                  "</a>");
}

function shirt_size(item)
{
   print_options("size"+item, itemSize[item]);
}

function shirt_colour(item)
{
   print_options("colour"+item, itemColour[item]);
}

function shirt_price(item)
{
   document.write(itemPrice[item]);
}

function shirt_quantity(item)
{
   // Can have only one 'write' call in older netscapes.
   document.write("<INPUT maxLength=\"3\" name=\"quantity"+item+"\" size=\"3\" value=\"0\" " +
                  " onChange='validateInteger(this);' >");
}

function shirt_add(item)
{
   // Can have only one 'write' call in older netscapes.
   document.write("<input type=button name=add"+item+" value=add " +
                  "onclick='add_item( " + item + ")'>");
}

function initialize_order()
{
   setCookie("NumItems", 0);
   DeleteCookie("Item");
   DeleteCookie("Colour");
   DeleteCookie("Size");
   DeleteCookie("Count");
}

function show_cart()
{
   read_cart();
   update_cart_window();
}

