var ajax_location_uid = '../ajaxhelper.php';

/* IUD SIGNS */
function showModalImageLocal(whichImage) {
	var path = '';
	var directory = document.getElementById('txtImagePath').value;
	if (whichImage == 'Large') {					
		path = document.getElementById('txtLargeImageName').value;					
	} else if (whichImage == 'Small') {
		path = document.getElementById('txtSmallImageName').value;
	}
	showModalImage('../' + directory + path);
}

function sortSigns() {
	
	if (document.getElementById('selOrderBy').value == 'Message') {
		sortSelect('selSigns',5, false, false);	
	} else if (document.getElementById('selOrderBy').value == 'SignID') {
		sortSelect('selSigns',1, false, false);	
	}	
}

function refreshSignsPage() {
	var signType = document.getElementById('radioSignTypePER').checked;
	var showInactive = document.getElementById('chkShowInactive').checked;
	
	if (signType == true) { signType = 'PER'; }
	else { signType = 'PRE'; }
	
	if (showInactive == true) { showInactive = 1; } 
	else {showInactive = 0; }
	
	window.location.href = 'iudpdsigns.php?Type=' + signType + '&ShowInactive=' + showInactive;
}

function addNewSign() {
	resetSignFields();
	document.getElementById('spanIUDMessage').innerHTML = 'When finished adding sign details, click save to save new sign.';
	document.getElementById('selSigns').options.selectedIndex = -1;
}

function resetSignFields() {
	setTextBox('txtSignID','');
	setTextBox('txtMessage','');
	//setTextBox('txtLength','');
	//setTextBox('txtWidth','');
	//setTextBox('txtHeight','');
	setTextBox('txtPrice','');
	setHTMLSelect('selFont','');
	setHTMLSelect('selBackgroundColor','');
	setHTMLSelect('selFontColor','');
	setHTMLSelect('selShadowColor','');
	setHTMLSelect('selSignSize','');
	setTextBox('txtImagePath','');
	setTextBox('txtSmallImageName','');
	setTextBox('txtLargeImageName','');
	setTextBox('radioTypePreDesigned','');
	setTextBox('radioCrackledNo','');
	setTextBox('radioBorderNo','');
	setTextBox('radioDogEarredNo','');
	setTextBox('radioPolyurathaneNo','');	
	document.getElementById('chkActive').checked = false;
}

function getSelectedSign() {	
	var signSys = document.getElementById('selSigns').value;
	signSys = signSys.split('~|~');
	var url = ajax_location_uid + '?RequestAction=GetSign&SignSys=' + signSys[1];
	//use ajax call to get data and populate fields with data...
	sendAJAX(url, postAJAXGetSignDetails,'','');
}

function postAJAXGetSignDetails(returnValue) {

	var signDetails = returnValue.split("~|~");
	
	var signID = signDetails[0];
	var messageText = signDetails[1];
	var length = signDetails[2];
	var width = signDetails[3];
	var height = signDetails[4];
	var preDesignedOrPersonalized = signDetails[5];
	var price = signDetails[6];
	var fontSys = signDetails[7];
	var backgroundColor = signDetails[8];
	var fontColor = signDetails[9];
	var shadowColor = signDetails[10];
	var crackled = signDetails[11];
	var border = signDetails[12];
	var dogEarred = signDetails[13];
	var smallImagePathName = signDetails[14];
	var largeImagePathName = signDetails[15];				
	var imagePath = signDetails[16];
	var signCollections = signDetails[17];
	var polyurathane = signDetails[18];	
	var signSizeSys = signDetails[19];	
	var active = signDetails[20];
	
	setTextBox('txtSignID',signID);
	setTextBox('txtMessage',messageText);
	//setTextBox('txtLength',length);
	//setTextBox('txtWidth',width);
	//setTextBox('txtHeight',height);
	setTextBox('txtPrice',price);
	setHTMLSelect('selSignSize', signSizeSys);
	setHTMLSelect('selFont',fontSys);
	setHTMLSelect('selBackgroundColor', backgroundColor);
	setHTMLSelect('selFontColor',fontColor);
	setHTMLSelect('selShadowColor',shadowColor);
	clearHTMLMultiSelect('selSignCollections');
	setHTMLMultiSelect('selSignCollections',signCollections);	
	setTextBox('txtImagePath',imagePath);
	setTextBox('txtSmallImageName',smallImagePathName);
	setTextBox('txtLargeImageName',largeImagePathName);			

	if (preDesignedOrPersonalized == 'Pre') { preDesignedOrPersonalized = 'radioTypePreDesigned'; }
	else { preDesignedOrPersonalized = 'radioTypePersonalized'; }
	
	if (crackled == '1') { crackled = 'radioCrackledYes'; }
	else { crackled = 'radioCrackledNo'; }				
	
	if (border == '1') { border = 'radioBorderYes'; }
	else { border = 'radioBorderNo'; }
	
	if (polyurathane == '1') { polyurathane = 'radioPolyurathaneYes'; }
	else { polyurathane = 'radioPolyurathaneNo'; }
		
	if (dogEarred == '1') { dogEarred = 'radioDogEarredYes'; }
	else { dogEarred = 'radioDogEarredNo'; }
	
	setRadioTrue(preDesignedOrPersonalized);
	setRadioTrue(crackled);
	setRadioTrue(border);
	setRadioTrue(polyurathane);
	setRadioTrue(dogEarred);
	
	document.getElementById('imgSmallImage').src = imagePath + smallImagePathName;
	document.getElementById('imgLargeImage').src = imagePath + largeImagePathName;
	
	if (active == '1') { document.getElementById('chkActive').checked = true; }
	else { document.getElementById('chkActive').checked = false; }	
	
	document.getElementById('spanIUDMessage').innerHTML = '';
	showImages();
}


function saveSign() {
	var signCollections = '';
	var type = 'Per'; 
	var crackled = '0'; 
	var border = '0'; 
	var dogEarred = '0';
	var polyurathane = '0';
	var active = '1';
	
	if (document.getElementById('radioTypePreDesigned').checked) { type = 'Pre'; }	
	if (document.getElementById('radioCrackledYes').checked) { crackled = '1'; }	
	if (document.getElementById('radioBorderYes').checked) { border = '1'; }	
	if (document.getElementById('radioDogEarredYes').checked) { dogEarred = '1'; }	
	if (document.getElementById('radioPolyurathaneYes').checked) { polyurathane = '1'; }
	if (document.getElementById('chkActive').checked == false) { active = '0'; }
		
	var signSys = document.getElementById('selSigns').value;
	signSys = signSys.split('~|~');
	signSys = trim(signSys[1]);
	if (signSys == 'undefined') { signSys = ''; }
	
	fontName = getSelectedValuesFromHTMLSelect('selFont');
	backgroundColor = getSelectedValuesFromHTMLSelect('selBackgroundColor');
	fontColor = getSelectedValuesFromHTMLSelect('selFontColor');
	shadowColor = getSelectedValuesFromHTMLSelect('selShadowColor');	
	signSize = getSelectedValuesFromHTMLSelect('selSignSize');	
	signCollections = getSelectedValuesFromHTMLSelect('selSignCollections');

	//'&Length=' + document.getElementById('txtLength').value +
	//'&Width=' + document.getElementById('txtWidth').value + 
	//'&Height=' + document.getElementById('txtHeight').value +
				
	var url = ajax_location_uid + '?RequestAction=InsertUpdateSign' + 
				'&SignSys=' + signSys +
				'&SignID=' + document.getElementById('txtSignID').value +
				'&Message=' + document.getElementById('txtMessage').value +
				'&Price=' + document.getElementById('txtPrice').value +
				'&Type=' + type +
				'&FontSys=' + fontName + 
				'&BackgroundColorSys=' + backgroundColor + 
				'&FontColorSys=' + fontColor +
				'&ShadowColorSys=' + shadowColor + 
				'&SignSizeSys=' + signSize + 
				'&Polyurathane=' + polyurathane + 
				'&Crackled=' + crackled + 
				'&Border=' + border + '\n' + 
				'&DogEarred=' + dogEarred + 
				'&Active=' + active + 
				'&ImagePath=' + document.getElementById('txtImagePath').value +
				'&SmallImageFilename=' + document.getElementById('txtSmallImageName').value +
				'&LargeImageFilename=' + document.getElementById('txtLargeImageName').value +
				'&SignCollections=' + signCollections; 
	
	sendAJAX(url,postSaveSign,'','');
}

function postSaveSign(returnValue) {

	if (returnValue.length > 0) {
		
		var index = document.getElementById('selSigns').options.selectedIndex;
		var signID = document.getElementById('txtSignID').value;
		document.getElementById('spanIUDMessage').innerHTML = '&nbsp;&nbsp;' + signID + ' updated at ' + getDate() + ' ' + getTime();
		document.getElementById('selSigns').options[index].text = signID + ' - ' + document.getElementById('txtMessage').value;
			
	} else {
		document.getElementById('spanIUDMessage').innerHTML = 'WARNING: Sign not updated.';
	}
}








/* IUD COLORS */
function addNewColor() {
	resetColorFields();
	document.getElementById('spanIUDMessage').innerHTML = 'When finished adding color details, click save to save new color.';
	document.getElementById('hidAction').value = 'I';
}

function resetColorFields() {
	setTextBox('txtColorName','');
	setTextBox('txtColorValue','');
	setTextBox('txtColorImagePath','');
	setTextBox('txtNonCrackledImageFilename','');
	setTextBox('txtCrackledImageFilename','');
}

function getSelectedColor() {
	
	var colorName = document.getElementById('selColors').value;
	var url = ajax_location_uid + '?RequestAction=GetColor&ColorName=' + colorName;
	//use ajax call to get data and populate fields with data...
	sendAJAX(url, postAJAXGetColorDetails,'','');
}

function postAJAXGetColorDetails(returnValue) {
	
	var colorDetails = returnValue.split("~|~");

	var colorSys = colorDetails[0];
	var colorName = colorDetails[1];
	var colorValue = colorDetails[2];
	var colorImagePath = colorDetails[3];
	var nonCrackledImageFilename = colorDetails[4];
	var crackledImageFilename = colorDetails[5];
						
	setTextBox('txtColorName',colorName);
	setTextBox('txtColorValue',colorValue);
	setTextBox('txtColorImagePath',colorImagePath);
	setTextBox('txtNonCrackledImageFilename',nonCrackledImageFilename);
	setTextBox('txtCrackledImageFilename',crackledImageFilename);
	
	document.getElementById('spanIUDMessage').innerHTML = '';
	document.getElementById('hidAction').value = '';
}

function saveColor() {
	
	var colorValue = replace(document.getElementById('txtColorValue').value,'#','');
			
 	var url = ajax_location_uid + '?RequestAction=InsertUpdateColor' + 
				'&ColorName=' + document.getElementById('txtColorName').value +
				'&ColorValue=' + colorValue +
				'&ColorImagePath=' + document.getElementById('txtColorImagePath').value +
				'&NonCrackledImageFilename=' + document.getElementById('txtNonCrackledImageFilename').value +
				'&CrackledImageFilename=' + document.getElementById('txtCrackledImageFilename').value;
	
	sendAJAX(url,postSaveColor,'','');
}

function postSaveColor(returnValue) {

	var colorName = document.getElementById('txtColorName').value;
	var colorValue = document.getElementById('txtColorValue').value;
	if (returnValue.length > 0) {
		
		if (document.getElementById('hidAction').value == 'I') {
			
			var selectObject = document.getElementById('selColors');
			var lastOption = selectObject.options[selectObject.selectedIndex]; 
			var newOption = document.createElement('option');
		    newOption.text = colorName;
		    newOption.value = colorName;
			try {
		    	selectObject.add(newOption, lastOption); // standards compliant; doesn't work in IE
		    }
		    catch(ex) {
		    	selectObject.add(newOption, selectObject.selectedIndex); // IE only
		    }
			sortSelect('selColors',0, false, false);
		} else {
			var index = document.getElementById('selColors').options.selectedIndex;    				
			document.getElementById('selColors').options[index].text = colorName;	
		}
		
		document.getElementById('spanIUDMessage').innerHTML = '&nbsp;&nbsp;' + colorName + ' updated at ' + getDate() + ' ' + getTime();
	} else {
		document.getElementById('spanIUDMessage').innerHTML = 'WARNING: Color not updated.';
	}
}







/* IUD FONTS */
function addNewFont() {
	resetFontFields();
	document.getElementById('spanIUDMessage').innerHTML = 'When finished adding font details, click save to save new font.';
	document.getElementById('hidAction').value = 'I';
}

function resetFontFields() {
	setTextBox('txtFontName','');
	setTextBox('txtFontValue','');
	setTextBox('txtFontPath','');
	setTextBox('txtFontFilename','');
}

function getSelectedFont() {
	
	var fontName = document.getElementById('selFonts').value;
	var url = ajax_location_uid + '?RequestAction=GetFont&FontName=' + fontName;
	//use ajax call to get data and populate fields with data...
	sendAJAX(url, postAJAXGetFontDetails,'','');
}

function postAJAXGetFontDetails(returnValue) {

	var fontDetails = returnValue.split("~|~");

	var fontName = fontDetails[0];
	var fontValue = fontDetails[1];
	var fontPath = fontDetails[2];
	var fontFilename = fontDetails[3];
						
	setTextBox('txtFontName',fontName);
	setTextBox('txtFontValue',fontValue);
	setTextBox('txtFontPath',fontPath);
	setTextBox('txtFontFilename',fontFilename);
	
	document.getElementById('spanIUDMessage').innerHTML = '';
	document.getElementById('hidAction').value = '';
}


function saveFont() {
			
 	var url = ajax_location_uid + '?RequestAction=InsertUpdateFont' + 
				'&FontName=' + document.getElementById('txtFontName').value +
				'&FontValue=' + document.getElementById('txtFontValue').value +
				'&FontPath=' + document.getElementById('txtFontPath').value +
				'&FontFilename=' + document.getElementById('txtFontFilename').value;
	
	sendAJAX(url,postSaveFont,'','');
}

function postSaveFont(returnValue) {

	var fontName = document.getElementById('txtFontName').value;
	var fontValue = document.getElementById('txtFontValue').value;
	if (returnValue.length > 0) {
		
		if (document.getElementById('hidAction').value == 'I') {
			
			var selectObject = document.getElementById('selFonts');
			var lastOption = selectObject.options[selectObject.selectedIndex]; 
			var newOption = document.createElement('option');
		    newOption.text = fontName;
		    newOption.value = fontValue;
			try {
		    	selectObject.add(newOption, lastOption); // standards compliant; doesn't work in IE
		    }
		    catch(ex) {
		    	selectObject.add(newOption, selectObject.selectedIndex); // IE only
		    }
			sortSelect('selFonts',0, false, false);
		} else {
			var index = document.getElementById('selFonts').options.selectedIndex;    				
			document.getElementById('selFonts').options[index].text = fontName;	
		}
		
		document.getElementById('spanIUDMessage').innerHTML = '&nbsp;&nbsp;' + fontName + ' updated at ' + getDate() + ' ' + getTime();
	} else {
		document.getElementById('spanIUDMessage').innerHTML = 'WARNING: Font not updated.';
	}
}






/* IUD SIGN SIZES */
var signSizesArray = new Array();
signSizesArray[0] = new Array(2); 
signSizesArray[0][0] = "Length";
signSizesArray[0][1] = "txtLength";
signSizesArray[1] = new Array(2); 
signSizesArray[1][0] = "Width";
signSizesArray[1][1] = "txtWidth";
signSizesArray[2] = new Array(2); 
signSizesArray[2][0] = "Height";
signSizesArray[2][1] = "txtHeight";
signSizesArray[3] = new Array(2); 
signSizesArray[3][0] = "PDPrice";
signSizesArray[3][1] = "txtPDPrice";
signSizesArray[4] = new Array(2); 
signSizesArray[4][0] = "PerPrice";
signSizesArray[4][1] = "txtPerPrice";
signSizesArray[5] = new Array(2); 
signSizesArray[5][0] = "Cost";
signSizesArray[5][1] = "txtCost";
signSizesArray[6] = new Array(2); 
signSizesArray[6][0] = "Weight";
signSizesArray[6][1] = "txtWeight";


function addNewSignSize() {
	resetSignSizeFields();
	document.getElementById('spanIUDMessage').innerHTML = 'When finished adding sign size details, click save to save new sign size.';
	document.getElementById('hidAction').value = 'I';
	document.getElementById('selSignSizes').options.selectedIndex = -1;
}

function resetSignSizeFields() {

	for (var i = 0; i < signSizesArray.length; i++) {
		setTextBox(signSizesArray[i][1],'');
	}
}

function getSelectedSignSize() {
	
	var signSizeSys = document.getElementById('selSignSizes').value;
	var url = ajax_location_uid + '?RequestAction=GetSignSize&SignSizeSys=' + signSizeSys;
	//use ajax call to get data and populate fields with data...
	sendAJAX(url, postAJAXGetSignSizeDetails,'','');
}

function postAJAXGetSignSizeDetails(returnValue) {

	var signSizeDetails = returnValue.split("~|~");
	
	for (var i = 0; i < signSizesArray.length; i++) {
		setTextBox(signSizesArray[i][1],signSizeDetails[i]);
	}
	
	document.getElementById('spanIUDMessage').innerHTML = '';
	document.getElementById('hidAction').value = '';
}

function saveSignSize() {
			
 	var url = ajax_location_uid + '?RequestAction=InsertUpdateSignSize&SignSizeSys=' + document.getElementById('selSignSizes').value;
 	var key = ''; value = '';
 	
	for (var i = 0; i < signSizesArray.length; i++) {		
		key = trim(signSizesArray[i][0]);
		value = trim(signSizesArray[i][1]);

		url = url + '&' + key + '=' + document.getElementById(value).value;
	}

	sendAJAX(url,postSaveSignSize,'','');
}

function postSaveSignSize(returnValue) {

	if (returnValue.length > 0) {
		
		var signSize = document.getElementById('txtLength').value + ' x ' + document.getElementById('txtWidth').value + ' x ' + document.getElementById('txtHeight').value;
		if (document.getElementById('hidAction').value == 'I') {
			
			var selectObject = document.getElementById('selSignSizes');
			var lastOption = selectObject.options[selectObject.length]; 
			var newOption = document.createElement('option');
		    newOption.text = signSize;
		    newOption.value = signSize;
			try {
		    	selectObject.add(newOption, lastOption); // standards compliant; doesn't work in IE
		    }
		    catch(ex) {
		    	selectObject.add(newOption, selectObject.selectedIndex); // IE only
		    }
			sortSelect('selSignSizes',0, false, false);
			
		} else {
			var index = document.getElementById('selSignSizes').options.selectedIndex;    				
			document.getElementById('selSignSizes').options[index].text = signSize;	
		}
		
		document.getElementById('spanIUDMessage').innerHTML = '&nbsp;&nbsp;' + signSize + ' updated at ' + getDate() + ' ' + getTime();
	} else {
		document.getElementById('spanIUDMessage').innerHTML = 'WARNING: Sign Size not updated.';
	}
}

	function updateSRPAmount() {
		document.getElementById('txtSRPAmount').value = document.getElementById('txtSaleAmount').value;
	}

	function getShowOrLocationInfo() {
		var sys = ''; var url = '';
		if (document.getElementById('radShow').checked) {
			sys = document.getElementById('selCraftShows').value;
			url = ajax_location_uid + '?RequestAction=GetCraftShowInfo&Sys=' + sys;
		} else {
			sys = document.getElementById('selLocations').value;
			url = ajax_location_uid + '?RequestAction=GetLocationInfo&Sys=' + sys;
		}	
		sendAJAX(url, postGetShowOrLocationInfo, '', 'GET');
	}
	
	function postGetShowOrLocationInfo(returnValue) {
		var array = returnValue.split('~|~');
		document.getElementById('txtTaxPercent').value = array[0];
		document.getElementById('txtCommissionPercent').value = array[1];
		updateSaleInfo();
	}

	function updateShowOrLocation() {
		if (document.getElementById('radShow').checked) {
			document.getElementById('spanCraftShows').style.display = '';
			document.getElementById('spanLocations').style.display = 'none';
		} else {
			document.getElementById('spanCraftShows').style.display = 'none';
			document.getElementById('spanLocations').style.display = '';
		}
	}

	function resetForm() {
		document.getElementById('txtProductID').value = '';
		document.getElementById('txtProductDescription').value = '';				
		//document.getElementById('txtDateSold').value = ''; //default to today?
		document.getElementById('txtQuantitySold').value = '1';
		document.getElementById('txtSaleAmount').value = '0.00';
		document.getElementById('chkTaxIncluded').checked = false;
		document.getElementById('chkPaidByCC').checked = false;
		document.getElementById('txtSRPAmount').value = '0.00';
		document.getElementById('txtCost').value = '0.00';
		//document.getElementById('radShow').checked = true;
		document.getElementById('txtTaxPercent').value = '0.00';
		document.getElementById('txtTaxAmount').value = '0.00';				
		document.getElementById('txtCommissionPercent').value = '0.00';
		document.getElementById('txtCommissionAmount').value = '0.00';
		document.getElementById('txtCCCostAmount').value = '0.00';
		document.getElementById('txtNetProfit').value = '0.00';
	}
	
	function getProductInfo() {
		if (document.getElementById('txtProductID').value.length == 0) {
			alert('Please enter a productID or product description.');
		} else {
			var url = ajax_location_uid + '?RequestAction=GetProductInfo&ProductID=' + document.getElementById('txtProductID').value;
			sendAJAX(url, postGetProductInfo, '', 'GET');		
		}
	}
	
	function postGetProductInfo(returnValue) {
		var array = returnValue.split('~|~');
		document.getElementById('txtProductID').value = array[2];
		document.getElementById('txtProductDescription').value = array[3];
		document.getElementById('txtProductType').value = array[4];
		document.getElementById('txtQuantitySold').value = '1';
		document.getElementById('txtSaleAmount').value = array[0];
		document.getElementById('txtSRPAmount').value = array[0];
		document.getElementById('txtCost').value = array[1];
		getShowOrLocationInfo();
		updateSaleInfo();
	}
	
	function updateSaleInfo() {
		//non-calculated values
		var taxPercent = document.getElementById('txtTaxPercent').value;
		var commissionPercent = document.getElementById('txtCommissionPercent').value;
		var saleAmount = document.getElementById('txtSaleAmount').value;
		var cost = document.getElementById('txtCost').value;
		var taxIncluded = false; var paidByCC = false;
		
		//calculated values
		var taxAmount = ''; var commissionAmount = ''; var ccCostAmount = '0.00'; var netProfit = '';
		
		if (cost.length == 0) { cost = 0.00; }
		if (document.getElementById('chkTaxIncluded').checked) { taxIncluded = true; }
		if (document.getElementById('chkPaidByCC').checked) { paidByCC = true; }
		
		taxAmount = round((parseFloat(saleAmount) * parseFloat(taxPercent/100)),2);
		commissionAmount = round(parseFloat(saleAmount) * parseFloat((commissionPercent/100)), 2);
		
		netProfit = parseFloat(saleAmount) - (parseFloat(cost) + parseFloat(commissionAmount));
		
		if (paidByCC) { 
			ccCostAmount = round(((parseFloat(saleAmount) * .032) + .35),2); 
			netProfit = round(parseFloat(netProfit) - parseFloat(ccCostAmount),2); 
		}
		
		if (taxIncluded) { 
			netProfit = round(parseFloat(netProfit) - parseFloat(taxAmount),2); 
		}
		
		document.getElementById('txtCost').value = cost;
		document.getElementById('txtTaxAmount').value = taxAmount;
		document.getElementById('txtCommissionAmount').value = commissionAmount;
		document.getElementById('txtCCCostAmount').value = ccCostAmount;
		document.getElementById('txtNetProfit').value = netProfit;
	}
	
	function addProductSale() {
		if (document.getElementById('txtDateSold').value.length == 0) { 
			alert('Don\'t forget the date sold.');
			return;
		}
		if (document.getElementById('txtProductID').value.length == 0) { 
			alert('Don\'t forget the product.');
			return;
		}
		
		var eventSys = ''; var locationSys = '';

		if (getTrueFalseFromRadioObject('radShow') == 1) {
			eventSys = getSelectedValuesFromHTMLSelect('selCraftShows');
		} else {
			locationSys = getSelectedValuesFromHTMLSelect('selLocations');
		}
		
		var url = ajax_location_uid + '?RequestAction=AddProductSale' +
					'&ProductID=' + document.getElementById('txtProductID').value +
					'&ProductDesc=' + document.getElementById('txtProductDescription').value +
					'&ProductType=' + document.getElementById('txtProductType').value +			
					'&DateSold=' + document.getElementById('txtDateSold').value + 
					'&QuantitySold=' + document.getElementById('txtQuantitySold').value + 
					'&Cost=' + document.getElementById('txtCost').value +
					'&SRP=' + document.getElementById('txtSRPAmount').value +
					'&SaleAmount=' + document.getElementById('txtSaleAmount').value + '\r\n' + 
					'&TaxPercent=' + document.getElementById('txtTaxPercent').value +
					'&TaxAmountEstimate=' + document.getElementById('txtTaxAmount').value +
					'&TaxAmountActual=' + document.getElementById('txtTaxAmount').value +
					'&CommissionPercent=' + document.getElementById('txtCommissionPercent').value +
					'&CommissionAmount=' + document.getElementById('txtCommissionAmount').value +
					'&CCAmount=' + document.getElementById('txtCCCostAmount').value +
					'&Profit=' + document.getElementById('txtNetProfit').value + 
					'&EventSys=' + eventSys + 
					'&LocationSys=' + locationSys;

		sendAJAX(url, postAddProductSale, '', 'GET');	
	}	
	
	function postAddProductSale(returnValue) {
		if (returnValue != 1) { alert(returnValue); }
		else {
			document.getElementById('spanAddProductMessage').innerHTML = document.getElementById('txtProductID').value + ' added successfully at ' + getDate() + ' ' + getTime() + '...';
			document.getElementById('txtProductID').value = '';
			document.getElementById('txtProductDescription').value = '';				
			document.getElementById('txtProductType').value = '';				
			document.getElementById('txtQuantitySold').value = '1';
			document.getElementById('txtSaleAmount').value = '';
			document.getElementById('txtSRPAmount').value = '';
			document.getElementById('txtCost').value = '';
			document.getElementById('txtTaxAmount').value = '';				
			document.getElementById('txtCommissionAmount').value = '';
			document.getElementById('txtCCCostAmount').value = '';
			document.getElementById('txtNetProfit').value = '';
			document.getElementById('txtProductID').focus();
		}
	}
	
	function showImages() {
		document.getElementById('imgSmallImage').src = '../' + document.getElementById('txtImagePath').value + document.getElementById('txtSmallImageName').value;
		document.getElementById('imgLargeImage').src = '../' + document.getElementById('txtImagePath').value + document.getElementById('txtLargeImageName').value;		
		//document.getElementById('imgLargeImage').width = '50%';
		//document.getElementById('imgLargeImage').height = '50%';
	}
	
	function getPDSignPreviewDetails() {
		var signID = document.getElementById('selSigns').value;
		var url = ajax_location_uid + '?RequestAction=GetPDSignPreviewDetails&SignID=' + signID;
		sendAJAX(url, postGetPDSignPreviewDetails, '', 'GET');		
	}
	
	function postGetPDSignPreviewDetails(returnValue) {
	
		var details = returnValue.split('~');
		
		document.getElementById('txtMessageLine1').value = details[0];
		document.getElementById('txtMessageLine2').value = details[1];
		document.getElementById('txtMessageLine3').value = details[2];
		document.getElementById('txtMessageLine4').value = details[3];
		
		setHTMLSelect('selFontSize1', details[4]);
		setHTMLSelect('selFontSize2', details[5]);
		setHTMLSelect('selFontSize3', details[6]);
		setHTMLSelect('selFontSize4', details[7]);
		
		setHTMLSelect('selFont', details[8]);
		setHTMLSelect('selBGColor', details[9]);
		setHTMLSelect('selFontColor', details[10]);
		setHTMLSelect('selShadowColor', details[11]);
				
		if (details[12] == 1) { document.getElementById('radioBorderYes').checked = true; }
		else { document.getElementById('radioBorderNo').checked = true; }
		
		if (details[13] == 1) { document.getElementById('radioCrackledYes').checked = true; }
		else { document.getElementById('radioCrackledNo').checked = true; }
		
		if (details[14] == 1) { document.getElementById('radioPolyYes').checked = true; }
		else { document.getElementById('radioPolyNo').checked = true; }
		
		setHTMLSelect('selSignSize', details[15]);
		
		document.getElementById('hidSavedSPSys').value = details[16];
		document.getElementById('hidTemplateSignSys').value = details[18];

		document.getElementById('hidSmallImageName').value = details[17].replace('SI','') + '-s.JPG';
		document.getElementById('hidLargeImageName').value = details[17].replace('SI','') + '.JPG';

		document.getElementById('imgSmallImage').src = '../' + document.getElementById('hidPreSignDirectory').value + document.getElementById('hidSmallImageName').value;
		document.getElementById('imgLargeImage').src = '../' + document.getElementById('hidPreSignDirectory').value + document.getElementById('hidLargeImageName').value;			

		createPDSignPreview();		
		
}
	
	function savePDSignPreview() {
		//var url = ajax_location_uid + '?RequestAction=SavePDSignPreviewDetails';
		var detailURL = getSignPreviewDetails();
		var url = ajax_location_uid + '?RequestAction=SavePDSignPreviewDetails' +
					'&SavedSignPreviewSys=' + document.getElementById('hidSavedSPSys').value +
					'&TemplateSignSys=' + document.getElementById('hidTemplateSignSys').value +
					'&SignType=Pre' +
					'&Active=1' +
					detailURL;

		sendAJAX(url, postSavePDSignPreview, '', 'GET');
	}
	
	function postSavePDSignPreview(returnValue) {
		document.getElementById('spanIUDMessage').innerHTML = returnValue + ' updated.';
	}
	
	function generatePDSignPreviewRecords() {
		var url = ajax_location_uid + '?RequestAction=GeneratePDSignPreviewRecords';
		sendAJAX(url, postGeneratePDSignPreviewRecords, '', 'GET');	
	}
	
	function postGeneratePDSignPreviewRecords(returnValue) {
		alert(returnValue);
	}
	
	function generatePerSignRecords() {
		var url = ajax_location_uid + '?RequestAction=GeneratePerSignRecords';
		sendAJAX(url, postGeneratePerSignRecords, '', 'GET');	
	}
	
	function postGeneratePerSignRecords(returnValue) {
		alert(returnValue);
	}
	
	function showSignImage() {
		var select = document.getElementById('selSignSys');
		
		document.getElementById('imgSign').src = '../' + select.options[select.selectedIndex].id;
	}
	
	function getSelectedTestimonial() {
		var testimonialSys = document.getElementById('selTestimonials').value
		var url = ajax_location_uid + '?RequestAction=GetTestimonial&TestimonialSys=' + testimonialSys;
		sendAJAX(url, postGetSelectedTestimonial, '', 'GET');
	}
	
	function postGetSelectedTestimonial(returnValue) {
		var details = returnValue.split('~|~');
		
		setTextBox('txtComment',details[0]);
		setTextBox('txtCustomerName',details[1]);
		setTextBox('txtCustomerCity',details[2]);
		setTextBox('txtCustomerState',details[3]);
		setTextBox('hidTestimonialSys',details[6]);
		
		setHTMLSelect('selSignSys', '');
		setHTMLSelect('selSignSys', details[5]);
				
		if (details[4] == 1) { document.getElementById('chkActive').checked = true; }
		else { document.getElementById('chkActive').checked = false; }
		
		showSignImage();
	}
	
	function addNewTestimonial() {
		setTextBox('txtComment', '');
		setTextBox('txtCustomerName', '');
		setTextBox('txtCustomerCity', '');
		setTextBox('txtCustomerState', '');
		setTextBox('hidTestimonialSys', '');
		setHTMLSelect('selSignSys', '');
		document.getElementById('chkActive').checked = false;		
		document.getElementById('spanIUDMessage').innerHTML = 'Click save when you are finished adding the new testimonial.';
	}
	
	function saveTestimonial() {
		var active = 0;
		if (document.getElementById('chkActive').checked) { active = 1; }
		
		var url = ajax_location_uid + '?RequestAction=SaveTestimonial' + 
				'&TestimonialSys=' + document.getElementById('hidTestimonialSys').value +
				'&Comment=' + document.getElementById('txtComment').value +
				'&CustomerName=' + document.getElementById('txtCustomerName').value +
				'&CustomerCity=' + document.getElementById('txtCustomerCity').value +
				'&CustomerState=' + document.getElementById('txtCustomerState').value +
				'&SignSys=' + document.getElementById('selSignSys').value +
				'&Active=' + active;
					
		sendAJAX(url, postSaveTestimonial,'','GET');	
	}
	
	function postSaveTestimonial(returnValue) {
		if (isNumeric(returnValue)) {
			document.getElementById('hidTestimonialSys').value = returnValue;
			document.getElementById('spanIUDMessage').innerHTML = 'Testimonial saved.';
		}
	}
	
	function addDiscountCode() {
		if (!validateField('txtDiscountCode', true, 'Please enter a discount code.', '', '')) { return; }
		if (!validateField('txtAmount', true, 'Please enter a discount amount.', '', '')) { return; }
		if (!validateField('txtDiscountCodeStartDate', true, 'Please enter a start date.', '', '')) { return; }
		
		var url = ajax_location_uid + '?RequestAction=AddDiscountCode' + 
					'&Code=' + document.getElementById('txtDiscountCode').value +					
					'&DollarOrPercent=' + document.getElementById('selDollarOrPercent').value +
					'&CodeType=' + document.getElementById('selDiscountCodeType').value +
					'&Amount=' + document.getElementById('txtAmount').value +
					'&UseType=' + document.getElementById('selUseType').value +
					'&SingleUse=' + document.getElementById('selSingleUse').value +
					'&StartDate=' + document.getElementById('txtDiscountCodeStartDate').value +
					'&EndDate=' + document.getElementById('txtDiscountCodeEndDate').value;

		sendAJAX(url, postAddDiscountCode, '', 'GET');		
	}
	
	function postAddDiscountCode(returnValue) {
		var values = returnValue.split('|');
		if (values[0] == 1) { alert('Code ' + values[1] + ' added.'); }
		else { alert(returnValue); }
	}