﻿var g_assistHeight = 150;
var g_processQueue = new Array();
var g_textAssistantHash = new Array();
var g_timeoutId;
var g_isKeyDown = false;
var g_count = 0;
var g_quickOrderUid = '';
var g_isMessageBoxVisible = false;
var g_isCtrlDown = false;
var g_isLoggedIn = false;
var g_mbTimeoutId = 0;
var g_totalQuantity = 0;
var g_isRewardBoard = false;
//+ Binds a text box to Text Assistant
function BindTextBoxToTextAssist(textBoxId, assistDivId, assistType, minChar, dependencies, keyUpHandler) {
	try {
		g_textAssistantHash[textBoxId] = new TextAssistant(textBoxId, assistDivId);
		$('#' + textBoxId).bind('focus', function() {
			if (g_processQueue.length > 0) {
				g_processQueue.pop();
			}
			g_processQueue.push(new Array(textBoxId, assistDivId, assistType, minChar, dependencies));
			g_timeoutId = setTimeout(ProcessQueue, 500);
		});
		$('#' + textBoxId).bind('blur', function() {
			if ($('#' + assistDivId).css('display') == 'block') {
				setTimeout(function() { HideAssistDiv(assistDivId); }, 250);
			}
			if (g_processQueue.length > 0) {
				g_processQueue.pop();
			}
			clearTimeout(g_timeoutId);
		});
		$('#' + textBoxId).bind('keyup', function(e) {
			if (e.which == 17) {
				g_isCtrlDown = false;
			}
			if ((e.which != 38) && (e.which != 40) && (e.which != 13)) {
				if (keyUpHandler) {
					if (keyUpHandler(textBoxId, e.which) == true) {
						g_isKeyDown = true;
					}
				} else {
					g_isKeyDown = true;
				}
			}
		});
		$('#' + textBoxId).keydown(function(e) {
			return TextAssistant_KeyDownHandler(textBoxId, e);
		});
	} catch (e) {
	}
}

function ProcessQueue() {
	if (g_processQueue.length == 0) {
		return;
	}
	g_count++;
	if (g_isKeyDown == true) {
		TextAssistHandler(g_processQueue[0][0], g_processQueue[0][1], g_processQueue[0][2], g_processQueue[0][3], g_processQueue[0][4]);
		g_isKeyDown = false;
	}
	g_timeoutId = setTimeout(ProcessQueue, 500);
}

function TextAssistHandler(id, divId, type, minLength, dependencies) {
	var assistUrl = '/QuickOrder/TextAssist.asp';
	var text = document.getElementById(id).value;
	var isDivVisible = ($('#' + divId).css('display') == 'block') ? true : false;
	var textAssist = g_textAssistantHash[id];
	//+
	if (text.length < minLength) {
		if (isDivVisible == true) {
			HideAssistDiv(divId);
		}
		return;
	}
	var url = assistUrl;
	url += '?Type=' + escape(type) + '&Text=' + escape(text)
	if (IsArray(dependencies) == true) {
		var dependenciesList = '';
		for (var i = 0; i < dependencies.length; i++) {
			url += '&' + dependencies[i] + '=' + escape(document.getElementById(dependencies[i]).value)
		}
	}
	document.getElementById(divId).innerHTML = '';
	if (textAssist.request != null) {
		textAssist.request.abort();
		textAssist.request = null;
	}
	textAssist.request = $.ajax({
		type: "GET",
		url: url,
		complete: function() {
			textAssist.request = null;
		},
		success: function(data) {
			if (data.length > 0) {
				var items = data.split('|');
				textAssist.clear();
				for (var i = 0; i < items.length; i++) {
					textAssist.addItem(items[i]);
				}
				textAssist.updateDiv();
				if (isDivVisible == false) {
					ShowAssistDiv(divId, id);
				}
			} else {
				if (isDivVisible == true) {
					HideAssistDiv(divId);
				}
			}
		}
	});
}

function SetTextValue(id, value) {
	document.getElementById(id).value = value;
	g_isKeyDown = true;
	if ((id == 'ProductName') || (id == 'Sku')) {
		SetItemInfo();
	}
	if (id == 'AccountContact') {
		SetAccountInfo();
	}
	document.getElementById(id).focus();
}

function SetItemInfo(callBack) {
	if ((document.getElementById('Sku').value == '') && (document.getElementById('ProductName').value == '')) {
		return;
	}
	document.getElementById('PhotoPreviewDiv').style.display = 'none';
	document.getElementById('QuickOrderLoadingDiv').style.display = 'block';
	$.get('/QuickOrder/Data.asp?Request=GetProductInfo&Sku=' + escape(document.getElementById('Sku').value) + '&Name=' + escape(document.getElementById('ProductName').value) + '&IdS=' + g_idS, function(data) {
		document.getElementById('QuickOrderLoadingDiv').style.display = 'none';
		if (data.length > 0) {
			var info = data.split('|');
			document.getElementById('Sku').value = info[0];
			document.getElementById('ProductName').value = info[1];
			document.getElementById('InStockStatusDiv').innerHTML = info[2];
			document.getElementById('ProductImageDiv').style.display = 'block';
			var height = 0;
			try {
				var image = new Image();
				image.src = '/_Sku/' + info[0] + 't.jpg';
				height = image.height;
			} catch (e) {
			}
			document.getElementById('ProductImageDiv').innerHTML = '<a href="/QuickOrder/Data.asp?Request=ProductImage&Sku=' + info[0] + '&height=500&~=" id="ProductImage" class="jTip" name="Product Image"><img src="/_Sku/' + info[0] + 't.jpg" border="0" style="margin-top:' + (Math.round(((75 - height) / 2))) + 'px;" /></a>';
			document.getElementById('Qty_Each').style.display = (info[3] == 0) ? 'none' : '';
			document.getElementById('Qty_Inner').style.display = (info[4] == 0) ? 'none' : '';
			document.getElementById('Qty_Case').style.display = (info[5] == 0) ? 'none' : '';
			document.getElementById('Qty_Each_Label').style.display = (info[3] == 0) ? 'none' : '';
			document.getElementById('Qty_Inner_Label').style.display = (info[4] == 0) ? 'none' : '';
			document.getElementById('Qty_Case_Label').style.display = (info[5] == 0) ? 'none' : '';
			document.getElementById('EachUnitPrice').innerHTML = (info[3] == 0) ? '' : info[7];
			document.getElementById('InnerUnitPrice').innerHTML = (info[4] == 0) ? '' : info[8];
			document.getElementById('CaseUnitPrice').innerHTML = (info[5] == 0) ? '' : info[9];
			document.getElementById('CurrencyExchange').innerHTML = info[10];
			JT_init();
			$('#ProductImage').click(function(e) {
				ProductPopup('', info[6]);
				return false;
			});
			//+
			var id = '';
			if (g_isRewardBoard == true) {
				id = 'Student';
			} else if (info[3] == 1) {
				id = 'Qty_Each';
			} else if (info[4] == 1) {
				id = 'Qty_Inner';
			} else if (info[5] == 1) {
				id = 'Qty_Case';
			}
			if (id != '') {
				document.getElementById(id).focus();
			}
			$('#Qty_Each, #Qty_Inner, #Qty_Case').bind('keydown', function(event) {
				return qtyKeyDown(event);
			});
		} else {
			document.getElementById('InStockStatusDiv').innerHTML = '';
			document.getElementById('ProductImageDiv').innerHTML = '';
			document.getElementById('CurrencyExchange').innerHTML = '';
			document.getElementById('PhotoPreviewDiv').style.display = 'block';
		}
		if (callBack) {
			callBack();
		}
	});
}

function SetAccountInfo(callBack) {
	$.get('/QuickOrder/Data.asp?Request=GetAccountInfo&Account=' + escape(document.getElementById('Account').value) + '&AccountContact=' + escape(document.getElementById('AccountContact').value) + '&Uid=' + g_quickOrderUid + '&IdS=' + g_idS, function(data) {
		if (data.length > 0) {
			var info = data.split('|');
			document.getElementById('Account').value = info[0];
			document.getElementById('AccountContact').value = info[1];
			if (g_quickOrderUid == '') {
				if (info[2] == 'E') {
					MessageBox('Error while trying to create your quick order. Please try again later.');
					if (document.getElementById('LauncCartActionDiv').style.display != 'none') {
						$('#LaunchCartActionDiv').slideUp(250);
					}
				} else {
					g_quickOrderUid = info[3];
					$('#LaunchCartActionDiv').slideDown(250);
				}
			}
		}
		if (callBack) {
			callBack();
		}
	});
}

function HideAssistDiv(id) {
	$('#' + id).animate({ height: '0px' }, 250, function() {
		$('#' + id).css({ height: '0px', display: 'none' });
	});
}

function ShowAssistDiv(id, textId) {
	var height = (g_textAssistantHash[textId].divHeight > g_assistHeight) ? g_assistHeight : g_textAssistantHash[textId].divHeight;
	$('#' + id).css({ display: 'none' });
	$('#' + id).animate({ height: height + 'px' }, 250, function() {
		$('#' + id).css({ height: 'auto', display: 'block' });
		$('#' + id).css({ height: height + 'px', display: 'block' });
		if (g_textAssistantHash[textId].divHeight > g_assistHeight) {
			$('#' + id).css({ overflow: 'scroll' });
		} else {
			$('#' + id).css({ overflow: 'visible' });
		}
	});
}

function IsArray() {
	if (arguments[0] == null) {
		return false;
	}
	if (typeof arguments[0] == 'object') {
		var criterion = arguments[0].constructor.toString().match(/array/i);
		return (criterion != null);
	}
	return false;
}

function ClearProductEntryForm() {
	document.getElementById('Sku').value = '';
	document.getElementById('ProductName').value = '';
	document.getElementById('Qty_Each').value = '';
	document.getElementById('Qty_Inner').value = '';
	document.getElementById('Qty_Case').value = '';
	document.getElementById('InStockStatusDiv').innerHTML = '';
	document.getElementById('ProductImageDiv').innerHTML = '';
	$('#Qty_Each').unbind('keydown');
	$('#Qty_Inner').unbind('keydown');
	$('#Qty_Case').unbind('keydown');
	document.getElementById('Qty_Each_Label').style.display = 'none';
	document.getElementById('Qty_Inner_Label').style.display = 'none';
	document.getElementById('Qty_Case_Label').style.display = 'none';
	document.getElementById('Qty_Each').style.display = 'none';
	document.getElementById('Qty_Inner').style.display = 'none';
	document.getElementById('Qty_Case').style.display = 'none';
	document.getElementById('Qty_Each').value = '';
	document.getElementById('Qty_Inner').value = '';
	document.getElementById('Qty_Case').value = '';
	document.getElementById('EachUnitPrice').innerHTML = '';
	document.getElementById('InnerUnitPrice').innerHTML = '';
	document.getElementById('CaseUnitPrice').innerHTML = '';
	document.getElementById('PhotoPreviewDiv').style.display = 'block';
	document.getElementById('CurrencyExchange').innerHTML = '';
	if (g_isRewardBoard == true) {
		document.getElementById('Student').value = '';
	}
}

function ClearForm() {
	ClearProductEntryForm();
	g_quickOrderUid = '';
	document.getElementById('Account').value = '';
	document.getElementById('AccountContact').value = '';
	if (document.getElementById('LauncCartActionDiv').style.display != 'none') {
		$('#LauncCartActionDiv').slideUp(250);
	}
	UpdateItemList();
}

function AddProduct() {
	if (g_quickOrderUid == '') {
		MessageBox('You have not created a quick order header yet. Please make sure the account data is filled in correctly above.');
		return;
	}
	if (document.getElementById('Sku').value == '') {
		MessageBox('You have not selected a product to add.', 2000);
		return;
	}
	if ((g_isRewardBoard == true) && (document.getElementById('Student').value == '')) {
		MessageBox('You have not entered a student name.', 2000);
		return;
	}
	var studentName = ((g_isRewardBoard == true) ? document.getElementById('Student').value : '');
	$.get('/QuickOrder/Data.asp?Request=AddProduct&Sku=' + escape(document.getElementById('Sku').value) + '&QtyEach=' + escape(document.getElementById('Qty_Each').value) + '&QtyInner=' + escape(document.getElementById('Qty_Inner').value) + '&QtyCase=' + escape(document.getElementById('Qty_Case').value) + '&Student=' + studentName + '&Uid=' + g_quickOrderUid + '&IdS=' + g_idS, function(data) {
		if (data.length > 0) {
			var response = data.split('|');
			if (response[0] == 'E') {
				MessageBox('Error: ' + response[1]);
				document.getElementById('Qty_Case').focus();
			} else {
				document.getElementById('Sku').focus();
				MessageBox('Product successfully added. Just a moment...');
				ClearProductEntryForm();
				UpdateItemList(function() {
				});
			}
		}
	});
}

function EditProduct(sku, student) {
	ClearProductEntryForm();
	document.getElementById('PhotoPreviewDiv').style.display = 'none';
	document.getElementById('QuickOrderLoadingDiv').style.display = 'block';
	$.get('/QuickOrder/Data.asp?Request=EditProduct&Sku=' + escape(sku) + '&Student=' + escape(student) + '&Uid=' + g_quickOrderUid + '&IdS=' + g_idS, function(data) {
		if (data.length > 0) {
			document.getElementById('AddProductActionDiv').style.display = 'none';
			document.getElementById('UpdateProductActionDiv').style.display = '';
			var info = data.split('|');
			var height = 0;
			try {
				var image = new Image();
				image.src = '/_Sku/' + info[0] + 't.jpg';
				height = image.height;
			} catch (e) {
			}
			document.getElementById('Sku').value = info[0];
			document.getElementById('ProductName').value = info[1];
			document.getElementById('InStockStatusDiv').innerHTML = info[2];
			document.getElementById('ProductImageDiv').style.display = 'block';
			document.getElementById('ProductImageDiv').innerHTML = '<a href="/QuickOrder/Data.asp?Request=ProductImage&Sku=' + info[0] + '&height=500&~=" id="ProductImage" class="jTip" name="Product Image"><img src="/_Sku/' + info[0] + 't.jpg" border="0" style="margin-top:' + (Math.round(((75 - height) / 2))) + 'px;" /></a>';
			document.getElementById('Qty_Each').style.display = (info[3] == 0) ? 'none' : '';
			document.getElementById('Qty_Inner').style.display = (info[4] == 0) ? 'none' : '';
			document.getElementById('Qty_Case').style.display = (info[5] == 0) ? 'none' : '';
			document.getElementById('Qty_Each_Label').style.display = (info[3] == 0) ? 'none' : '';
			document.getElementById('Qty_Inner_Label').style.display = (info[4] == 0) ? 'none' : '';
			document.getElementById('Qty_Case_Label').style.display = (info[5] == 0) ? 'none' : '';
			document.getElementById('EachUnitPrice').innerHTML = (info[3] == 0) ? '' : info[10];
			document.getElementById('InnerUnitPrice').innerHTML = (info[4] == 0) ? '' : info[11];
			document.getElementById('CaseUnitPrice').innerHTML = (info[5] == 0) ? '' : info[12];
			document.getElementById('CurrencyExchange').innerHTML = info[13];
			if (g_isRewardBoard == true) {
				document.getElementById('Student').value = info[14];
				document.getElementById('Student').disabled = true;
			}
			document.getElementById('Sku').disabled = true;
			document.getElementById('ProductName').disabled = true;
			JT_init();
			$('#ProductImage').click(function(e) {
				ProductPopup('', info[6]);
				return false;
			});
			//+
			var id = '';
			if (info[3] == 1) {
				id = 'Qty_Each';
			} else if (info[4] == 1) {
				id = 'Qty_Inner';
			} else if (info[5] == 1) {
				id = 'Qty_Case';
			}
			$('#Qty_Each, #Qty_Inner, #Qty_Case').bind('keydown', function(event) {
				return qtyUpdateKeyDown(event);
			});
			//+ 7-9
			document.getElementById('Qty_Each').value = info[7];
			document.getElementById('Qty_Inner').value = info[8];
			document.getElementById('Qty_Case').value = info[9];
			if (id != '') {
				document.getElementById(id).focus();
			}
		} else {
			document.getElementById('InStockStatusDiv').innerHTML = '';
			document.getElementById('ProductImageDiv').innerHTML = '';
			document.getElementById('PhotoPreviewDiv').style.display = 'block';
		}
		document.getElementById('QuickOrderLoadingDiv').style.display = 'none';
	});
}

function UpdateProduct() {
	if (g_quickOrderUid == '') {
		MessageBox('You have not created a quick order header yet. Please make sure the account data is filled in correctly above.');
		return;
	}
	var studentName = ((g_isRewardBoard == true) ? document.getElementById('Student').value : '');
	$.get('/QuickOrder/Data.asp?Request=UpdateProduct&Sku=' + escape(document.getElementById('Sku').value) + '&QtyEach=' + escape(document.getElementById('Qty_Each').value) + '&QtyInner=' + escape(document.getElementById('Qty_Inner').value) + '&QtyCase=' + escape(document.getElementById('Qty_Case').value) + '&Student=' + escape(studentName) + '&Uid=' + g_quickOrderUid + '&IdS=' + g_idS, function(data) {
		if (data.length > 0) {
			var response = data.split('|');
			if (response[0] == 'E') {
				MessageBox('Error: ' + response[1]);
				document.getElementById('Qty_Case').focus();
			} else {
				MessageBox('Item Updated');
				ClearProductEntryForm();
				document.getElementById('AddProductActionDiv').style.display = '';
				document.getElementById('UpdateProductActionDiv').style.display = 'none';
				document.getElementById('Sku').disabled = false;
				document.getElementById('ProductName').disabled = false;
				if (g_isRewardBoard == true) {
					document.getElementById('Student').disabled = false;
				}
				document.getElementById('Sku').focus();
				UpdateItemList(function() {
				});
			}
		}
	});
}

function RemoveProduct(sku, student) {
	$.get('/QuickOrder/Data.asp?Request=RemoveProduct&Sku=' + escape(sku) + '&Student=' + escape(student) + '&Uid=' + g_quickOrderUid + '&IdS=' + g_idS, function(data) {
		UpdateItemList();
	});
}

function UpdateItemList(callBack) {
	$('#ItemList').slideUp(250, function() {
	$.get('/QuickOrder/Data.asp?Request=ItemList&Uid=' + g_quickOrderUid + '&IdS=' + g_idS, function(data) {
			var pos = data.indexOf('TotalQty:');
			var posEnd = data.indexOf(' ', pos + 11);
			var qty = data.substring(pos + 10, posEnd)
			g_totalQuantity = parseInt(qty);
			document.getElementById('ItemList').innerHTML = data;
			JT_init();
			$('#ItemList').slideDown(250, function() {
				if (callBack) {
					callBack();
				}
			});
		});
	});
}

function SetDebug(value) {
	document.getElementById('debug').innerHTML = value;
}

function MessageBox(msg, delay) {
	if (g_isMessageBoxVisible == true) {
		return;
	}
	document.getElementById('MessageBoxDiv_Content').innerHTML = msg;
	try {
		g_isMessageBoxVisible = true;
		var wndSize = GetWindowSize();
		var offsetY = ScrollOffset();
		var posX = ($(document).width() / 2) - ($('#MessageBoxDiv').width() / 2);
		var posY = ((wndSize.height) / 2) - ($('#MessageBoxDiv').height() / 2) + offsetY;
		$('#MessageBoxDiv').css({ top: posY + 'px', left: posX + 'px' });
		ShowOverlay('MessageBoxDiv', function() {
			$(document).bind('click', CloseMessageBox);
			g_mbTimeoutId = setTimeout(function() {
				CloseMessageBox();
			}, (delay) ? delay : 2000);
		});
	} catch (e) {
	}
}

function CloseMessageBox() {
	window.clearTimeout(g_mbTimeoutId);
	$(document).unbind('click', CloseMessageBox);
	HideOverlay('MessageBoxDiv');
	g_isMessageBoxVisible = false;
}

function GetWindowSize() {
	var width = 0;
	var height = 0;
	if (typeof (window.innerWidth) == 'number') {
		//+ Not IE
		width = window.innerWidth;
		height = window.innerHeight;
	} else if (document.documentElement && (document.documentElement.clientWidth || document.documentElement.clientHeight)) {
		//+ IE 6+ in 'standards compliant mode'
		width = document.documentElement.clientWidth;
		height = document.documentElement.clientHeight;
	} else if (document.body && (document.body.clientWidth || document.body.clientHeight)) {
		//+ IE 4 compatible
		width = document.body.clientWidth;
		height = document.body.clientHeight;
	}
	return { width: width, height: height };
}

function Product_KeyUpHandler(id, keyCode) {
	switch (keyCode) {
		//+ Backspace 
		case 8:
			//+ Del
		case 46:
			if (document.getElementById(id).value == '') {
				ClearProductEntryForm();
			}
			break;
		//+ Left 
		case 37:
			document.getElementById('Sku').focus();
			return false;
			//+ Right
		case 39:
			document.getElementById('ProductName').focus();
			return false;
	}
	return true;
}

function CompleteQuickOrder() {
	if (g_isLoggedIn == false) {
		MessageBox("Ooops! You need to login to an account to perform this function. Please login, then try again.", 4000);
		return;
	}
	//+ to prevent beforeunload dialog
	g_totalQuantity = 0;
	var o = document.Form_Engine;
	o.Action.value = 'Checkout';
	o.submit();
}

//- TextAssistant -//
function TextAssistant_KeyDownHandler(id, e) {
	var textAssist = g_textAssistantHash[id];
	var keyCode = e.which;
	switch (keyCode) {
		//+ Ctrl 
		case 17:
			g_isCtrlDown = true;
			return true;
			//+ Up
		case 38:
			if (textAssist.selectedIndex > 0) {
				textAssist.selectedIndex -= 1;
				textAssist.updateDiv();
			}
			return false;
			//+ Down
		case 40:
			if (textAssist.selectedIndex < textAssist.items.length - 1) {
				textAssist.selectedIndex += 1;
				textAssist.updateDiv();
			}
			return false;
		case 9:
			if (textAssist.selectedIndex > -1) {
				textAssist.setItem();
			}
			return true;
			//+ Enter
		case 13:
			if (g_isCtrlDown == false) {
				textAssist.setItem();
			} else {
				if (confirm('Are you really sure you would like to add these items to your cart?') == true) {
					CompleteQuickOrder();
				}
			}
			return false;
	}
	return true;
}

function TextAssistant(id, divId) {
	this.id = id;
	this.divId = divId;
	this.selectedIndex = -1;
	this.items = new Array();
	this.divHeight = 0;
	this.request = null;
}

TextAssistant.prototype.clear = function() {
	this.items.length = 0;
	this.selectedIndex = -1;
}

TextAssistant.prototype.updateDiv = function() {
	if ((this.items.length == 1) && (document.getElementById(this.id).value == '')) {
		this.selectedIndex = 0;
		this.setItem();
		return;
	}
	var html = '';
	for (var i = 0; i < this.items.length; i++) {
		html += '<a href="#" onclick="SetTextValue(\'' + this.id + '\', \'' + this.items[i] + '\'); return false;" id="' + this.divId + '_' + i + '" class="TextAssistEntry' + ((this.selectedIndex == i) ? 'Selected' : ((i % 2 == 0) ? 'Alt' : '')) + '">' + this.items[i] + '</a>';
	}
	var div = document.getElementById(this.divId);
	$('#ItemList').append('<div id="' + this.divId + '_Temp" style=""position: absolute; display: none;""></div>');
	$('#' + this.divId + '_Temp').css({ width: ($('#' + this.id).width()) + 'px' });
	document.getElementById(this.divId + '_Temp').innerHTML = html;
	this.divHeight = parseInt($('#' + this.divId + '_Temp').height());
	var divHeight = this.divHeight;
	$('#' + this.divId + '_Temp').remove();
	div.innerHTML = html;
	var padding = (this.divHeight > g_assistHeight) ? 20 : 0;
	$(div).css({ width: ($('#' + this.id).width() + padding) + 'px' });
	var height = (divHeight > g_assistHeight) ? g_assistHeight : divHeight;
	if (height != $(div).height()) {
		$(div).animate({ height: height + 'px' }, 250, function() {
			$(div).css({ height: height + 'px', display: 'block' });
			if (divHeight >= g_assistHeight) {
				$(div).css({ overflow: 'scroll' });
			} else {
				$(div).css({ overflow: 'visible' });
			}
		});
	}
	if (this.selectedIndex > -1) {
		var entry = document.getElementById(this.divId + '_' + this.selectedIndex);
		var newHeight = $(div).height() - 20;
		var scrollPos = div.scrollTop;
		var offset = entry.offsetTop;
		if (offset < scrollPos) {
			div.scrollTop = offset;
		}
		if (offset > scrollPos + newHeight) {
			div.scrollTop = (offset + $(entry).height()) - newHeight;
		}
	}
}

TextAssistant.prototype.addItem = function(value) {
	this.items.push(value);
}

TextAssistant.prototype.setItem = function() {
	if (this.selectedIndex == -1) {
		return;
	}
	SetTextValue(this.id, this.items[this.selectedIndex]);
	this.clear();
}

function QuickOrder_OnBeforeUnLoad(event) {
	if (g_totalQuantity == 0) {
		return;
	}
	return 'Your Quick Order Form will be cleared.';
}