var sizes = new Array;
sizes[0] = 2;
sizes[1] = 8;
sizes[2] = 1;
sizes[3] = 5;
sizes[4] = 10;
sizes[5] = 25;
sizes[6] = 50;
sizes[7] = 110;


// functions to manage the lines in the global array orderLines

function addOrderLine (idx, size, quant) {
var lineidx = orderLines.length;
var unitsize;

// calculate the size, if coming from the quick-entry form
if (size) {
unitsize = size;
} else {
unitsize = 2;
}

if (!(quant)) {
quant = 1;
}

orderLines[lineidx] = new orderLine(idx, colorObjects[idx].colorName, colorObjects[idx].prices[0], quant, unitsize, lineidx);
displayLines();
recalcLines ();
//return false;
}


function quickAdd (query) {
var color;
var idx;
var size;
idx = query.indexOf("-");
var lengthcolor = query.length - idx - 1;
var pidx = 0;

//alert("length of color participle is " + lengthcolor);

if (idx != -1) {
  size = query.substring(idx+1, idx+(lengthcolor+1));
} else {
  idx = query.length + 1;
}

//alert("idx is " + idx);

if (!(size)) {
size = 2;
}

pidx = query.indexOf("PR");
if (pidx != -1) {
  pidx = 2;
} else {
	pidx = query.indexOf("pr");
	if (pidx != -1) {
	  pidx = 2;
	} 
}

color = query.substring(pidx, idx);
//alert("pidx is " + pidx + " - Color is " + color);

if (colorObjects[color]) {
  addOrderLine (color, size);
} else {
  alert("Color " + color + " not found.");
}
recalcLines();
return false;
}





function removeLine (idx) {
orderLines[idx].idx = '';
displayLines();
return false;
}


function recalcLines () {
  var idx = 0;
 for (idx in orderLines) {
  if (orderLines[idx].idx != '') {
	  var targetForm = parent.frames['palette'].document.forms[0];
	  var priceElem = eval("targetForm.price" + idx);
	  var quantElem = eval("targetForm.quant" + idx);
	  var stocknumElem = eval("targetForm.stocknum" + idx);
	  var displayStocknumElem = eval("targetForm.displaystocknum" + idx);
	  var linetotalElem = eval("targetForm.linetotal" + idx);
	  var subtotalElem = eval("targetForm.subtotal");
	  var priceSizeIdx = eval("targetForm.size" + idx + ".selectedIndex");
	  var itemObject = eval("colorObjects['" + orderLines[idx].idx  + "']");
	  orderLines[idx].size = sizes[priceSizeIdx];
	  orderLines[idx].price = itemObject.prices[priceSizeIdx];
	  priceElem.value = orderLines[idx].price;
	  orderLines[idx].quant = quantElem.value;
	  if ((orderLines[idx].size > orderLines[idx].quant) && ((orderLines[idx].size > 8) || (orderLines[idx].size == 5))) {
		orderLines[idx].quant = orderLines[idx].size;
		alert("You must order " + orderLines[idx].size + " pounds for the " + orderLines[idx].quant + "lbs+ discount for " + orderLines[idx].title);
		quantElem.value = orderLines[idx].quant;
	  }
	  orderLines[idx].linetotal = orderLines[idx].price * orderLines[idx].quant;
	  linetotalElem.value = fixDecimals(orderLines[idx].linetotal);
	  displayStocknumElem.value = ("PR" + orderLines[idx].idx + "-" + orderLines[idx].size);
	  stocknumElem.value = ("PR" + orderLines[idx].idx + "-" + orderLines[idx].size);
	  var counter = orderLines.length - 1;
	  var subtotal = 0;
	  while (counter > -1) {
	   subtotal += orderLines[counter].linetotal;
	   counter--;
	  }
   }
	  subtotalElem.value = fixDecimals(subtotal);
 }
return(false);
}










