////JS StringBuffer Fcns
function StringBuffer() { this.buffer = []; }
StringBuffer.prototype.append = function(string) {
	this.buffer.push(string);
	return this;
}
StringBuffer.prototype.toString = function() { return this.buffer.join(""); }
////END:StringBuffer Fcns

// PERFORM CHECKS AND SUBMISSION UPON BULKORDER FORM SUBMISSION: RON
function checkEach() {
	//Check for blank lines between items: Ron
	var flds = 30; //initialize number of form fields
	var flag="off";
	for (skuCk=0; skuCk<flds; skuCk+=3) {
	 if (document.manAddForm.elements[skuCk].value) {
	  if (flag == "on") {
	   alert("Please sequence your items according to the row numbers in the order form.");
	   return false;
	  }
	 } else if (document.manAddForm.elements[skuCk].value == '') { 
	  if (flag=="off") { flag = "on"; }
	}}
	//next block doesn't execute for Mac OS with I.E. browser: Ron
	if (navigator.platform == 'MacPPC' && navigator.appName == 'Microsoft Internet Explorer') {}
	else{ //Check for quantity when item number has a value
		for (skuCk=0,qtyCk=2; skuCk<flds; skuCk+=3,qtyCk+=3) {
		  if (document.manAddForm.elements[skuCk].value != '' && (document.manAddForm.elements[qtyCk].value == '' || document.manAddForm.elements[qtyCk].value == '0')) {
		   alert('Please enter a valid quantity for each item.');
		   return false;
	}	}	}
	//Check for item number when quantity has a value: Ron
	for (skuCk=0,qtyCk=2; skuCk<flds; skuCk+=3,qtyCk+=3) {
	  if (document.manAddForm.elements[skuCk].value == '' && document.manAddForm.elements[qtyCk].value != '') {
	   alert('Please enter an item number.');
	   return false;
	} }
	//Check for item number when catalog has a value: Ron
	for (skuCk=0,catCk=1; skuCk<flds; skuCk+=3,catCk+=3) {
	  if (document.manAddForm.elements[skuCk].value == '' && document.manAddForm.elements[catCk].value != '') {
	   alert('Please enter an item number.');
	   return false;
	}  }
	//Check for no item numbers: Ron
	var recs = 0;
	for (skuCk=0; skuCk<flds; skuCk+=3) {
	  if (document.manAddForm.elements[skuCk].value == '') {
	   recs++;
	   if (recs==10) {
		alert('There are currently no items in this order form to add. You must add items to the order form before submitting it.');
		return false;
	} } }
	//consolidate form-field values into array elements (also get populated row count for later use): @RON6
	var skuArray=[], catArray=[], qtyArray=[];
	var rowCnt = 0;
	//loop through form and assign form values
	for(var iter=0,skus=0,cats=1,qtys=2; iter<10; iter++,skus+=3,cats+=3,qtys+=3) {
		skuArray[iter] = document.manAddForm.elements[skus].value;
		//check for blank row
		if (skuArray[iter]==null || skuArray[iter]=='undefined' || skuArray[iter]=='') {
			rowCnt = iter;
			break;
		}
		catArray[iter] = document.manAddForm.elements[cats].value;
		qtyArray[iter] = document.manAddForm.elements[qtys].value;
	}
	//Check for dupe skus: @RON6
	if (rowCnt > 1) {
		for (var skuIter=0; skuIter<rowCnt; skuIter++) { //loop thru populated skus
			//compare each sku w/ subsequent skus
			for (var fwdIter=skuIter+1; fwdIter<rowCnt; fwdIter++) {
				if (skuArray[skuIter]==skuArray[fwdIter]) {
					alert('You have enterred the same item in multiple rows. Please remove the duplicate item and retry.');
					return false;
	}	}	}	}
	//Disable all input fields not specified: Ron
	for(s=0; s<30; s++) {
		if (document.manAddForm.elements[s].value=='') document.manAddForm.elements[s].disabled=true;
	}
	//Build URLs used to submit form: @RON6
	//Example URL: NTE_OrderItemAdd?partNumber_1=' + sku1 + '&storeId_1=6970&NTECatalogId_1=' + cat1 + '&quantity_1=' + qty1 + '&langId=-1&storeId=6970&fromPage=bulk&URL=ShoppingCartView&errorURL=NTE_BulkOrderFormView
	var urlPath = new StringBuffer('NTE_OrderItemAdd?');
	for(var iter=0,cnt=1; iter<=rowCnt; iter++,cnt++) {
		if (cnt!=1) { urlPath.append('&'); }
		if (iter==rowCnt) { //all items added, append additional parms and break out of loop
			urlPath.append('&langId=-1&storeId=6970&fromPage=bulk&URL=ShoppingCartView&errorURL=NTE_BulkOrderFormView');
			break;
		}
		//append item for current iteration count
		urlPath.append('partNumber_'+cnt+'=' + skuArray[iter] + '&storeId_'+cnt+'=6970&NTECatalogId_'+cnt+'=' + catArray[iter] + '&quantity_'+cnt+'=' + qtyArray[iter]);
}	}
function verifyQty(qy) { // Ron
 if (isNaN(qy)) {
   alert("Please enter a valid quantity");
   return false;
} }
