function addPart()
{
	// Getting values from parts claim fields
	var in_qty = document.thisform.qty.value;
	var in_opn = document.thisform.opn.value;
	var in_desc = document.thisform.desc.value;
	var in_cost = document.thisform.cost.value;
	// Validating fields
	var current_claims = document.thisform.partsclaim.value;
	if (in_qty == '' || in_opn == '' || in_desc == '' || in_cost == '')
	{
		alert('Please fill in all Parts Claim fields');
		return false;
	}
	// Preparing values for div tag
	var div_value = '\'QTY: ' + in_qty + ', OPN: ' + in_opn + ', COST: ' + in_cost + '\'';
	var hid_value = '\'QTY=' + in_qty + ':' + 'OPN=' + in_opn + ':' + 'DESC=' + in_desc + ':' + 'COST=' + in_cost + '\'';
	// Outputting div value to page with delete option
	//alert(div_value + " ::: " + hid_value);

	//document.getElementById('claims').innerHTML += '<td>' + in_qty + '</td><td>&nbsp;</td><td>' + in_opn + '</td><td>&nbsp;</td><td>' + in_cost + '</td><td>&nbsp;</td><td><a href=\"javascript:;\" onClick=\"delSerial(' + div_value + ',' +  hid_value + ')\">delete</a></td>';

	// Updating parts total
	var in_total = document.thisform.partstotal.value;
	var new_total = 0;
	if (in_total =='')
	{
		in_total = 0;
	}
	if(IsNumeric(in_cost))
	{
		//Calculating new total
		in_total = parseFloat(in_total);
		new_total = in_total + parseFloat(in_cost);
		//Rounding new total
		new_total=Math.round(100*new_total)/100;
		//Formatting output
		var strNew_Total = new_total;
		strNew_Total += '';
		if (strNew_Total.indexOf('.') < 0)
		{
			strNew_Total += ".00";
		}
		else
		{
			var decpos = strNew_Total.indexOf('.');
			var totlen = strNew_Total.length;
			//alert(totlen + " - " + decpos);
			if(totlen - decpos == 2)
			{
			strNew_Total += "0";
			}
		}
		document.thisform.partstotal.value = strNew_Total ;
		document.getElementById('ptotal').innerHTML = "<b>$" + strNew_Total + "</b>";

		document.getElementById('claims').innerHTML += "<BR>QTY: " + in_qty + ", OPN: " + in_opn + ", COST: " + in_cost + " " + "<a href=\"javascript:;\" onClick=\"delPart(" + div_value + "," +  hid_value + ")\">delete</a>";
		// If values already exist in hidden field, add a comma
		if (current_claims != '')
		{
			current_claims += ',';
		}
		// Preparing value for hidden field
		current_claims += 'QTY=' + in_qty + ':' + 'OPN=' + in_opn + ':' + 'DESC=' + in_desc + ':' + 'COST=' + in_cost + '\n';
		// Set hidden field
		document.thisform.partsclaim.value = current_claims;
		// Clear the form fields
		document.thisform.qty.value = "";
		document.thisform.opn.value = "";
		document.thisform.desc.value = "";
		document.thisform.cost.value = "";
	}
	else
	{
		alert("Please enter a numeric value for cost");
	}
}

function IsNumeric(strString)
//  check for valid numeric strings 
{
	var strValidChars = "0123456789.-";
	var strChar;
	var retResult = true;
	if (strString.length == 0) return false;
	//  test strString consists of valid characters listed above
	for (i = 0; i < strString.length && retResult == true; i++)
	{
		strChar = strString.charAt(i);
		if (strValidChars.indexOf(strChar) == -1)
		{
			retResult = false;
		}
	}
	return retResult;
}

function delPart(div_val, hid_val)
{
	//alert(div_ser + " " + hid_ser);
	// delete serials in both div tag and hidden field

	var current_claims = document.thisform.partsclaim.value;
	var subtract_val = hid_val.substring(hid_val.indexOf('COST')+5, hid_val.length)
	//alert(subtract_val);
	var in_total = parseFloat(document.thisform.partstotal.value);
	var new_total = in_total - parseFloat(subtract_val)
	new_total=Math.round(100*new_total)/100;
	var strNew_Total = new_total;
	strNew_Total += '';
	if (strNew_Total.indexOf('.') < 0)
	{
		strNew_Total += ".00";
	}
	else
	{
		var decpos = strNew_Total.indexOf('.');
		var totlen = strNew_Total.length;
		//alert(totlen + " - " + decpos);
		if(totlen - decpos == 2)
		{
			strNew_Total += "0";
		}
	}

	document.thisform.partstotal.value = strNew_Total;
	document.getElementById('ptotal').innerHTML = "<b>$" + strNew_Total + "</b>";

	var hid_length = hid_val.length; 
	var hid_start = current_claims.indexOf(hid_val);
	//alert(current_claims + '||| ' + hid_val + '|||' + current_claims.indexOf(hid_val));
	//var hid_front = current_claims.substring(0,hid_val);
	var hid_front = current_claims.substring(0,current_claims.indexOf(hid_val));
	var hid_back = current_claims.substring(hid_length + hid_start, current_claims.length);
	//alert(hid_back + ' ' + hid_back.indexOf(','));
	//alert(hid_front + hid_back);
	if(hid_front.substr(hid_front.length - 1, 1) == ',')
	{
		hid_front = hid_front.substring(0, hid_front.length - 1);
	}
	if(hid_front.substr(0, 1) == ',')
	{
		hid_front = hid_front.substring(1, hid_front.length);
	}
	if(hid_back.substr(hid_back.length - 1, 1) == ',')
	{
		hid_back = hid_back.substring(0, hid_back.length - 1);
	}
	if(hid_back.substr(0, 1) == ',')
	{
		hid_back = hid_back.substring(1, hid_back.length);
	}
	document.thisform.partsclaim.value = hid_front + hid_back;
	//alert(hid_front + hid_back);
	//alert('hidden: ' + document.thisform.partsclaim.value);

	// Remove from DIV tag
	var div_html = document.getElementById('claims').innerHTML;
	if (navigator.appName=="Netscape") {
		div_val = '<br>' + div_val;
	}
	if ((navigator.appName).indexOf("Microsoft")!=-1) {
		div_val = '<BR>' + div_val;
	}
	//div_ser = '<BR>' + div_ser;
	var div_length = div_val.length;
	var div_start = div_html.indexOf(div_val);
	//alert(div_html + '||| ' + div_val + '|||' + div_html.indexOf(div_val));
	var div_front = div_html.substring(0,div_start);
	var div_mid = div_html.substring(div_start, div_html.length);
	if (navigator.appName=="Netscape") {
		var div_back = div_mid.indexOf('</a>') + 4;
	}
	if ((navigator.appName).indexOf("Microsoft")!=-1) {
		var div_back = div_mid.indexOf('</A>') + 4;
	}
	//var div_back = div_mid.indexOf('</A>') + 4; 
	div_final = div_mid.substring(div_back, div_mid.length);
	document.getElementById('claims').innerHTML = div_front + div_final;
	//alert('hidden: ' + document.thisform.registerserial.value);
}

function addSerial()
{
 var ser_unit = document.thisform.usn.value;
 var div_unit = "";
 var hid_unit = "";
 var ser_panel = document.thisform.cpsn.value;
 var div_panel = "";
 var hid_panel = "";
 var ser_light = document.thisform.lsn.value;
 var div_light = "";
 var hid_light = "";
 var current_serials = document.thisform.registerserial.value;
 if (ser_unit == '' && ser_panel == '' && ser_light == '')
 {
  alert('Please enter at least one serial number');
  return false;
 }
if (ser_unit != "") {
	div_unit = "USN: " + ser_unit; 
	hid_unit = "USN=" + ser_unit;
	if (ser_panel != "" || ser_light != "") {
		div_unit += " , ";
		hid_unit += ":";
		}
	}
if (ser_panel != "") {
	div_panel = "CPSN: " + ser_panel;
	hid_panel = "CPSN=" + ser_panel;
	if (ser_light != "") {
		div_panel += " , ";
		hid_panel += ":";
		}
	}
if (ser_light != "") {
	div_light = "LSN: " + ser_light; 
	hid_light = "LSN=" + ser_light;
	}

var div_par = '\'' + div_unit + div_panel + div_light + '\'';
var hid_par = '\'' + hid_unit + hid_panel + hid_light + '\'';



 document.getElementById('serials').innerHTML += '<BR>' + div_unit + div_panel + div_light + ' <a href=\"javascript:;\" onClick=\"delSerial(' + div_par + ',' +  hid_par + ')\">delete</a>';
 if (current_serials != '')
 {
  current_serials += ',';
 }
 current_serials += hid_unit + hid_panel + hid_light;
 document.thisform.registerserial.value = current_serials;
 document.thisform.usn.value = "";
 document.thisform.cpsn.value = "";
 document.thisform.lsn.value = "";
}
function delSerial(div_ser, hid_ser)
{
 //alert(div_ser + " " + hid_ser);
  // delete serials in both div tag and hidden field
 var current_serials = document.thisform.registerserial.value;
 var hid_length = hid_ser.length; 
 var hid_start = current_serials.indexOf(hid_ser);

 var hid_front = current_serials.substring(0,hid_start);
 var hid_back = current_serials.substring(hid_length + hid_start, current_serials.length);
//alert(hid_back + ' ' + hid_back.indexOf(','));
 if(hid_front.substr(hid_front.length - 1, 1) == ',')
 {
    hid_front = hid_front.substring(0, hid_front.length - 1);
 }
 if(hid_front.substr(0, 1) == ',')
 {
    hid_front = hid_front.substring(1, hid_front.length);
 }
 if(hid_back.substr(hid_back.length - 1, 1) == ',')
 {
    hid_back = hid_back.substring(0, hid_back.length - 1);
 }
 if(hid_back.substr(0, 1) == ',')
 {
    hid_back = hid_back.substring(1, hid_back.length);
 }
 document.thisform.registerserial.value = hid_front + hid_back;

 // Remove from DIV tag
 var div_html = document.getElementById('serials').innerHTML;
if (navigator.appName=="Netscape") {
 div_ser = '<br>' + div_ser;
}
if ((navigator.appName).indexOf("Microsoft")!=-1) {
  div_ser = '<BR>' + div_ser;
}
  //div_ser = '<BR>' + div_ser;
  var div_length = div_ser.length;
 var div_start = div_html.indexOf(div_ser);
 //alert(div_html + '||| ' + div_ser + '|||' + div_html.indexOf(div_ser));

 var div_front = div_html.substring(0,div_start);
 var div_mid = div_html.substring(div_start, div_html.length);
if (navigator.appName=="Netscape") {
 var div_back = div_mid.indexOf('</a>') + 4;
}
if ((navigator.appName).indexOf("Microsoft")!=-1) {
  var div_back = div_mid.indexOf('</A>') + 4;
}
      //var div_back = div_mid.indexOf('</A>') + 4; 
 div_final = div_mid.substring(div_back, div_mid.length);

 document.getElementById('serials').innerHTML = div_front + div_final;
 //alert('hidden: ' + document.thisform.registerserial.value);
 
}
function doSubmit3() {
 var isValid = true;
 var message = "";
 var doc = document.forms['thisform'];
//    var required = new Array('fname','lname','address1','city','state','zip','country','email','registerserial');
//    var messages = new Array('First Name','Last Name','Address','City','State','Zip','Country','Email','Serial Numbers'); 

    var required = new Array('fname','lname','address1','city','zip','country','phone');
    var messages = new Array('First Name','Last Name','Address','City','Zip','Country','Phone'); 

    for (var x=0;x<required.length;x++) {
        if (doc[required[x]].value == "") {
   isValid = false;
   message += messages[x] + "\n";
  }
 }
//if (document.forms.thisform.maint(0).checked == '' && document.forms.thisform.maint(1).checked == '')
// {
//  message += "Annual Maintenance Plan" + "\n";
// }
 if (isValid) {
      doc.submit();
 } else {
  alert('Please fill in the following missing fields:\n' + message);
  window.document.thisform[required[0]].focus();
 }
}

