function checkFromToDates(txtFromDate, txtToDate, name, startDate, source)
{
	if (txtFromDate != null)
	{
		if (txtFromDate.value == '')
		{
			if (txtToDate.value != '')
			{
				source.errormessage = "Please enter a from " + name + " Date.";
				txtFromDate.focus();
				return false;
			}
		}
		else if (txtToDate.value == '')
		{
			source.errormessage = "Please enter a to " + name + " Date.";
			txtToDate.focus();
			return false;
		}
		else
		{
			// Check for a 90 days period
			var from = new Date(txtFromDate.value);
			var to = new Date(txtToDate.value);
			var daysDifference = Math.floor((to - from) / (1000 * 60 * 60 * 24));

			if (daysDifference > 90)
			{
				source.errormessage = "Please use a maximum of 90 days for the " + name + " Date.";
				txtToDate.focus();
				return false;
			}
		}
	}

	return true;
}


function ValidateTrackBy(source, arguments)
{
	arguments.IsValid = true;

	var cboTrackBy = document.getElementById(trackById);
	var txtTrackBy = document.getElementById(numberId);
	txtTrackBy.value = txtTrackBy.value.toUpperCase();
	var trackByLength = txtTrackBy.value.length;

	var trackByName = cboTrackBy.options[cboTrackBy.selectedIndex].text;

	var maxLength = 0;

	switch (cboTrackBy.value)
	{
		case "A":
			maxLength = 9;
			break;

		case "R":
			maxLength = 20;
			break;

		case "H":
			maxLength = 25;
			break;

		default:
			break;
	}

	if ((maxLength > 0) && (trackByLength > maxLength))
	{
		source.errormessage = "Please enter at most " + maxLength + " characters for " + trackByName + "in Number.";
		arguments.IsValid = false;
	}
}

function ValidateShipDates(source, arguments)
{
	var cboTrackBy = document.getElementById(trackById);
	var txtShipDateFrom = document.getElementById(shipDateFromId);
	var txtShipDateTo = document.getElementById(shipDateToId);

	if ((cboTrackBy.value == "S") && (txtShipDateFrom.value == "") && (txtShipDateTo.value == ""))
	{
		source.errormessage = "Please enter a Ship Date range.";
		arguments.IsValid = false;
	}
	else
	{
		arguments.IsValid = checkFromToDates(txtShipDateFrom, txtShipDateTo, "Ship", "01/01/2000", source);
	}
}
