// JavaScript Document
var STAT;
var mainResult = true;	//set mainResult=true if the result recieved is the first one, mainResult=false if the result is additional
var originalData = "";	//the main data
var Error = false
var xmlhttp=false
var objID
var xmlhttpfunction 
var OccasionStr = ""
var FlowerStr = ""
var CountStr = ""
var ImageStr = ""

/*********************************************************
L O A D X M L D O C     F U N C T I O N
----------------------------------------------------------
PURPOSE: LOADS A GIVEN URL
*********************************************************/
function loadXMLDoc(url, method, params, obj)
{
	//alert(params)
	objID = obj;
// code for Mozilla, etc.
if (window.XMLHttpRequest)
  {
  xmlhttp=new XMLHttpRequest()
  xmlhttp.onreadystatechange=xmlhttpChange
  xmlhttp.open(method,url,true)
  if (method == "POST")
  {
	  xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	  xmlhttp.send(params.replace(/ /g, '+'));
	  //alert(xmlhttp.responseXML.xml);
  }
  else
	xmlhttp.send(null)
  }
// code for IE
else if (window.ActiveXObject)
  {
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP")
	if (xmlhttp)
	{
	xmlhttp.onreadystatechange=xmlhttpChange
	xmlhttp.open(method,url,true)
	if (method == "POST")
	{
		xmlhttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
	  	xmlhttp.send(params.replace(/ /g, '+'));
		//alert(xmlhttp.responseXML.xml);
	}
	else
		xmlhttp.send()
	}
  }
}

/*********************************************************
X M L H T T P C H A N G E     F U N C T I O N
----------------------------------------------------------
PURPOSE: MONITORS THE READY STATE OF THE DOCUMENT AND THE 
		RESPONSE FROM THE SERVER
*********************************************************/
function xmlhttpChange()
{
	// if xmlhttp shows "loaded"
	if (xmlhttp.readyState==4)
	{
	// if "OK"
		if (xmlhttp.status==200)
		{
			STAT = xmlhttp.status;
			// ...some code here...
			//alert("XML File loaded successfully\n" + xmlhttp.getAllResponseHeaders());
			if (mainResult)
				document.getElementById(objID).innerHTML = xmlhttp.responseText
			else
			{
				if (originalData == "")
					document.getElementById(objID).innerHTML += xmlhttp.responseText
				else
				{
					document.getElementById(objID).innerHTML = originalData + xmlhttp.responseText
					originalData = ""
				}
			}
		}
		else
		{
			STAT = xmlhttp.status;
			//alert("Problem retrieving XML data\nStatus: " + xmlhttp.status + "\n" + xmlhttp.getAllResponseHeaders())
			originalData = document.getElementById(objID).innerHTML
			document.getElementById(objID).innerHTML=xmlhttp.responseText
		}
	}
}

/*********************************************************
S H O W    M E S S A G E    F U N C T I O N
----------------------------------------------------------
PURPOSE: DISPLAYS AN ALERT
*********************************************************/
function showMsg(msg)
{
	alert(msg);
}


/*********************************************************
S T R I P    F U N C T I O N
----------------------------------------------------------
PURPOSE: STRIPS THE EXECUTABLE CODE RETURNED FROM THE PAGE
*********************************************************/
function stripFunction()
{
	stx = document.getElementById("Result").innerHTML.indexOf("@@execS@@")
	etx = document.getElementById("Result").innerHTML.indexOf("@@execE@@")
	str = document.getElementById("Result").innerHTML.substring(stx, etx + 9)
	document.getElementById("Result").innerHTML = document.getElementById("Result").innerHTML.replace(str, "")
}


/*********************************************************
M O N I T O R    F E E D B A C K    F U N C T I O N
----------------------------------------------------------
PURPOSE: MONITORS THE RESPONSE FROM THE SERVER FOR A REQUEST
*********************************************************/
function monitorFeedBack()
{
	stx = document.getElementById("Result").innerHTML.indexOf("@@execS@@")
	etx = document.getElementById("Result").innerHTML.indexOf("@@execE@@")
	if ((stx > -1) & (etx > -1) & (stx < etx))
	{
		str = document.getElementById("Result").innerHTML.substring(stx + 9, etx)
		//alert("Found @@execS@@ at " + stx.toString() + "and @@execE@@ at " + etx.toString() + "\n" + str);
		eval(str);
		stripFunction();
	}
	else
		setTimeout('monitorFeedBack();', 250);
}


/*********************************************************
E N A B L E    B U T T O N S    F U N C T I O N
*********************************************************/
function enableButtons()
{
	if (document.getElementById("btnInsert"))
		document.getElementById("btnInsert").disabled = false;
	if (document.getElementById("btnEdit"))
		document.getElementById("btnEdit").disabled = false;
	if (document.getElementById("btnDelete"))
		document.getElementById("btnDelete").disabled = false;
	if (document.getElementById("btnReset"))
		document.getElementById("btnReset").disabled = false;
}


/*********************************************************
D I S A B L E    B U T T O N S    F U N C T I O N
*********************************************************/
function disableButtons()
{
	if (document.getElementById("btnInsert"))
		document.getElementById("btnInsert").disabled = true;
	if (document.getElementById("btnEdit"))
		document.getElementById("btnEdit").disabled = true;
	if (document.getElementById("btnDelete"))
		document.getElementById("btnDelete").disabled = true;
	if (document.getElementById("btnReset"))
		document.getElementById("btnReset").disabled = true;
}


/*********************************************************
T O G G L E    M A I N    S P A N     V I S I B I L I T Y    F U N C T I O N
*********************************************************/
function mainSpanStyle(opt)
{
	if (opt=="show")
		document.getElementById('mainSpan').style.visibility='visible';
	if (opt=="hide")
		document.getElementById('mainSpan').style.visibility='hidden';
}


/*********************************************************
T O G G L E    S P A N     V I S I B I L I T Y    F U N C T I O N
*********************************************************/
function toggleSpan(spanID, spanData)
{
	if (document.getElementById(spanID).style.visibility=='visible')
	{
		document.getElementById(spanID).style.value='hidden';
		document.getElementById(spanID).innerHTML = '';
	}
	else
	{
		document.getElementById(spanID).style.value='visible'
		document.getElementById(spanID).innerHTML = spanData;
	}
	document.getElementById(spanID).style.visibility = document.getElementById(spanID).style.value;
}

/*********************************************************
T O G G L E    B U T T O N    S T A T U S    F U N C T I O N
*********************************************************/
function toggleButton(btnID)
{
	if (document.getElementById(btnID))
	{
		if (document.getElementById(btnID).disabled)
			document.getElementById(btnID).disabled = false;
		else
			document.getElementById(btnID).disabled = true;
	}
}

/*********************************************************
C H A N G E    B U T T O N    D E S C R I P T I O N    F U N C T I O N
*********************************************************/
function changeButtonDesc(btnID, descA, descB)
{
	if (document.getElementById(btnID))
	{
		if (document.getElementById(btnID).value == descA)
			document.getElementById(btnID).value = descB;
		else
			document.getElementById(btnID).value = descA;
	}
}

/*********************************************************
V A L I D A T E    F U N C T I O N
*********************************************************/
function validate()
{
//P R O D U C T    F A M I L Y
	if (document.getElementById("ProductFamilyCD"))
	{
		if (!document.getElementById("ProductFamilyCD").disabled)
		{
			if ((document.getElementById("ProductFamilyCD").type == "select-one") & (document.getElementById("ProductFamilyCD").value == ""))
				{alert("The Product Family must be selected");document.getElementById("ProductFamilyCD").focus();return false;}
		}
	}
//P R O D U C T    T Y P E
	if (document.getElementById("ProductType"))
	{
		if (!document.getElementById("ProductType").disabled)
		{
			if ((document.getElementById("ProductType").type == "select-one") & (document.getElementById("ProductType").value == ""))
				{alert("The Product Type must be selected");document.getElementById("ProductType").focus();return false;}
			if (document.getElementById("ProductType").type == "text")
			{
				document.getElementById("ProductType").value = trim(document.getElementById("ProductType").value.toUpperCase());
				if (document.getElementById("ProductType").value.length!=2)
					{alert("The Product Type must be 2 characters long");document.getElementById("ProductType").focus();return false;}
			}
		}
	}
//P R O D U C T    T Y P E    D E S C R I P T I O N
	if (document.getElementById("ProductTypeDesc"))
	{
		if (!document.getElementById("ProductTypeDesc").disabled)
		{
			if ((document.getElementById("ProductTypeDesc").type == "select-one") & (document.getElementById("ProductTypeDesc").value == ""))
				{alert("The Product Type Description must be selected");document.getElementById("ProductTypeDesc").focus();return false;}
			if (document.getElementById("ProductTypeDesc").type == "text")
			{
				document.getElementById("ProductTypeDesc").value = trim(document.getElementById("ProductTypeDesc").value);
				if (document.getElementById("ProductTypeDesc").value=="")
					{alert("The Product Type Description must be entered");document.getElementById("ProductTypeDesc").focus();return false;}
			}
		}
	}
//P R O D U C T    T I T L E
	if (document.getElementById("ProductTitle"))
	{
		if (!document.getElementById("ProductTitle").disabled)
		{
			document.getElementById("ProductTitle").value = trim(document.getElementById("ProductTitle").value);
			if (document.getElementById("ProductTitle").value=="")
				{alert("The Product Title must be entered");document.getElementById("ProductTitle").focus();return false;}
		}
	}
//P R O D U C T    D E S C R I P T I O N
	if (document.getElementById("ProductDesc"))
	{
		if (!document.getElementById("ProductDesc").disabled)
		{
			document.getElementById("ProductDesc").value = trim(document.getElementById("ProductDesc").value);
			if (document.getElementById("ProductDesc").value=="")
				{alert("The Description must be entered");document.getElementById("ProductDesc").focus();return false;}
		}
	}
//O P T I O N    T I T L E
	if (document.getElementById("OptionTitle"))
	{
		if (!document.getElementById("OptionTitle").disabled)
		{
			if ((document.getElementById("OptionTitle").type == "select-one") & (document.getElementById("OptionTitle").value == ""))
				{alert("The Option Title must be selected");document.getElementById("OptionTitle").focus();return false;}
			if (document.getElementById("OptionTitle").type == "text")
			{
				document.getElementById("OptionTitle").value = trim(document.getElementById("OptionTitle").value);
				if (document.getElementById("OptionTitle").value=="")
					{alert("The Option Title must be entered");document.getElementById("OptionTitle").focus();return false;}
			}
		}
	}
//W E B    O P T I O N
	/*if (document.getElementById("WebOption"))
	{
		if (!document.getElementById("WebOption").disabled)
		{
			document.getElementById("WebOption").value = trim(document.getElementById("WebOption").value);
			if (document.getElementById("WebOption").value=="")
				{alert("The Web Option must be entered");document.getElementById("WebOption").focus();return false;}
		}
	}*/
//N U M    C O U N T
	if (document.getElementById("numCount1"))
	{
		if (!document.getElementById("numCount1").disabled)
		{
			document.getElementById("numCount1").value = trim(document.getElementById("numCount1").value);
			if (document.getElementById("numCount1").value=="")
				{alert("The number of flowers must be selected");document.getElementById("numCount1").focus();return false;}
			else
				{CountStr = "numCount1=" + document.getElementById("numCount1").value;}
		}
	}
	if (document.getElementById("numCount2"))
	{
		if (!document.getElementById("numCount2").disabled)
		{
			document.getElementById("numCount2").value = trim(document.getElementById("numCount2").value);
			if (document.getElementById("numCount2").value=="")
				{alert("The number of flowers must be selected");document.getElementById("numCount2").focus();return false;}
			else
				{CountStr += "&numCount2=" + document.getElementById("numCount2").value;}
		}
	}
	if (document.getElementById("numCount3"))
	{
		if (!document.getElementById("numCount3").disabled)
		{
			document.getElementById("numCount3").value = trim(document.getElementById("numCount3").value);
			if (document.getElementById("numCount3").value=="")
				{alert("The number of flowers must be selected");document.getElementById("numCount3").focus();return false;}
			else
				{CountStr += "&numCount3=" + document.getElementById("numCount3").value;}
		}
	}
	if (document.getElementById("numCount4"))
	{
		if (!document.getElementById("numCount4").disabled)
		{
			document.getElementById("numCount4").value = trim(document.getElementById("numCount4").value);
			if (document.getElementById("numCount4").value=="")
				{alert("The number of flowers must be selected");document.getElementById("numCount4").focus();return false;}
			else
				{CountStr += "&numCount4=" + document.getElementById("numCount4").value;}
		}
	}
	if (document.getElementById("numCount5"))
	{
		if (!document.getElementById("numCount5").disabled)
		{
			document.getElementById("numCount5").value = trim(document.getElementById("numCount5").value);
			if (document.getElementById("numCount5").value=="")
				{alert("The number of flowers must be selected");document.getElementById("numCount5").focus();return false;}
			else
				{CountStr += "&numCount5=" + document.getElementById("numCount5").value;}
		}
	}
	if (document.getElementById("numCount6"))
	{
		if (!document.getElementById("numCount6").disabled)
		{
			document.getElementById("numCount6").value = trim(document.getElementById("numCount6").value);
			if (document.getElementById("numCount6").value=="")
				{alert("The number of flowers must be selected");document.getElementById("numCount6").focus();return false;}
			else
				{CountStr += "&numCount6=" + document.getElementById("numCount6").value;}
		}
	}
	if (document.getElementById("numCount7"))
	{
		if (!document.getElementById("numCount7").disabled)
		{
			document.getElementById("numCount7").value = trim(document.getElementById("numCount7").value);
			if (document.getElementById("numCount7").value=="")
				{alert("The number of flowers must be selected");document.getElementById("numCount7").focus();return false;}
			else
				{CountStr += "&numCount7=" + document.getElementById("numCount7").value;}
		}
	}
	if (document.getElementById("numCount8"))
	{
		if (!document.getElementById("numCount8").disabled)
		{
			document.getElementById("numCount8").value = trim(document.getElementById("numCount8").value);
			if (document.getElementById("numCount8").value=="")
				{alert("The number of flowers must be selected");document.getElementById("numCount8").focus();return false;}
			else
				{CountStr += "&numCount8=" + document.getElementById("numCount8").value;}
		}
	}
	if (document.getElementById("numCount9"))
	{
		if (!document.getElementById("numCount9").disabled)
		{
			document.getElementById("numCount9").value = trim(document.getElementById("numCount9").value);
			if (document.getElementById("numCount9").value=="")
				{alert("The number of flowers must be selected");document.getElementById("numCount9").focus();return false;}
			else
				{CountStr += "&numCount9=" + document.getElementById("numCount9").value;}
		}
	}
	if (document.getElementById("numCount10"))
	{
		if (!document.getElementById("numCount10").disabled)
		{
			document.getElementById("numCount10").value = trim(document.getElementById("numCount10").value);
			if (document.getElementById("numCount10").value=="")
				{alert("The number of flowers must be selected");document.getElementById("numCount10").focus();return false;}
			else
				{CountStr += "&numCount10=" + document.getElementById("numCount10").value;}
		}
	}
//F L O W E R    C O D E
	if (document.getElementById("FlowerCD1"))
	{
		if (!document.getElementById("FlowerCD1").disabled)
		{
			document.getElementById("FlowerCD1").value = trim(document.getElementById("FlowerCD1").value);
			if (document.getElementById("FlowerCD1").value=="")
				{alert("The Flower Description must be selected");document.getElementById("FlowerCD1").focus();return false;}
			else
				{FlowerStr = "FlowerCD1=" + document.getElementById("FlowerCD1").value;}
		}
	}
	if (document.getElementById("FlowerCD2"))
	{
		if (!document.getElementById("FlowerCD2").disabled)
		{
			document.getElementById("FlowerCD2").value = trim(document.getElementById("FlowerCD2").value);
			if (document.getElementById("FlowerCD2").value=="")
				{alert("The Flower Description must be selected");document.getElementById("FlowerCD2").focus();return false;}
			else
				{FlowerStr += "&FlowerCD2=" + document.getElementById("FlowerCD2").value;}
		}
	}
	if (document.getElementById("FlowerCD3"))
	{
		if (!document.getElementById("FlowerCD3").disabled)
		{
			document.getElementById("FlowerCD3").value = trim(document.getElementById("FlowerCD3").value);
			if (document.getElementById("FlowerCD3").value=="")
				{alert("The Flower Description must be selected");document.getElementById("FlowerCD3").focus();return false;}
			else
				{FlowerStr += "&FlowerCD3=" + document.getElementById("FlowerCD3").value;}
		}
	}
	if (document.getElementById("FlowerCD4"))
	{
		if (!document.getElementById("FlowerCD4").disabled)
		{
			document.getElementById("FlowerCD4").value = trim(document.getElementById("FlowerCD4").value);
			if (document.getElementById("FlowerCD4").value=="")
				{alert("The Flower Description must be selected");document.getElementById("FlowerCD4").focus();return false;}
			else
				{FlowerStr += "&FlowerCD4=" + document.getElementById("FlowerCD4").value;}
		}
	}
	if (document.getElementById("FlowerCD5"))
	{
		if (!document.getElementById("FlowerCD5").disabled)
		{
			document.getElementById("FlowerCD5").value = trim(document.getElementById("FlowerCD5").value);
			if (document.getElementById("FlowerCD5").value=="")
				{alert("The Flower Description must be selected");document.getElementById("FlowerCD5").focus();return false;}
			else
				{FlowerStr += "&FlowerCD5=" + document.getElementById("FlowerCD5").value;}
		}
	}
	if (document.getElementById("FlowerCD6"))
	{
		if (!document.getElementById("FlowerCD6").disabled)
		{
			document.getElementById("FlowerCD6").value = trim(document.getElementById("FlowerCD6").value);
			if (document.getElementById("FlowerCD6").value=="")
				{alert("The Flower Description must be selected");document.getElementById("FlowerCD6").focus();return false;}
			else
				{FlowerStr += "&FlowerCD6=" + document.getElementById("FlowerCD6").value;}
		}
	}
	if (document.getElementById("FlowerCD7"))
	{
		if (!document.getElementById("FlowerCD7").disabled)
		{
			document.getElementById("FlowerCD7").value = trim(document.getElementById("FlowerCD7").value);
			if (document.getElementById("FlowerCD7").value=="")
				{alert("The Flower Description must be selected");document.getElementById("FlowerCD7").focus();return false;}
			else
				{FlowerStr += "&FlowerCD7=" + document.getElementById("FlowerCD7").value;}
		}
	}
	if (document.getElementById("FlowerCD8"))
	{
		if (!document.getElementById("FlowerCD8").disabled)
		{
			document.getElementById("FlowerCD8").value = trim(document.getElementById("FlowerCD8").value);
			if (document.getElementById("FlowerCD8").value=="")
				{alert("The Flower Description must be selected");document.getElementById("FlowerCD8").focus();return false;}
			else
				{FlowerStr += "&FlowerCD8=" + document.getElementById("FlowerCD8").value;}
		}
	}
	if (document.getElementById("FlowerCD9"))
	{
		if (!document.getElementById("FlowerCD9").disabled)
		{
			document.getElementById("FlowerCD9").value = trim(document.getElementById("FlowerCD9").value);
			if (document.getElementById("FlowerCD9").value=="")
				{alert("The Flower Description must be selected");document.getElementById("FlowerCD9").focus();return false;}
			else
				{FlowerStr += "&FlowerCD9=" + document.getElementById("FlowerCD9").value;}
		}
	}
	if (document.getElementById("FlowerCD10"))
	{
		if (!document.getElementById("FlowerCD10").disabled)
		{
			document.getElementById("FlowerCD10").value = trim(document.getElementById("FlowerCD10").value);
			if (document.getElementById("FlowerCD10").value=="")
				{alert("The Flower Description must be selected");document.getElementById("FlowerCD10").focus();return false;}
			else
				{FlowerStr += "&FlowerCD10=" + document.getElementById("FlowerCD10").value;}
		}
	}
//O C C A S S I ON    A S S O C I A T I ON
	if (document.getElementById("OccasionCD1"))
	{
		if (!document.getElementById("OccasionCD1").disabled)
		{
			document.getElementById("OccasionCD1").value = trim(document.getElementById("OccasionCD1").value);
			if (document.getElementById("OccasionCD1").value=="")
				{alert("The Occasion must be selected");document.getElementById("OccasionCD1").focus();return false;}
			else
				{OccasionStr = "OccasionCD1=" + document.getElementById("OccasionCD1").value;}
		}
	}
	if (document.getElementById("OccasionCD2"))
	{
		if (!document.getElementById("OccasionCD2").disabled)
		{
			document.getElementById("OccasionCD2").value = trim(document.getElementById("OccasionCD2").value);
			if (document.getElementById("OccasionCD2").value=="")
				{alert("The Occasion must be selected");document.getElementById("OccasionCD2").focus();return false;}
			else
				{OccasionStr += "&OccasionCD2=" + document.getElementById("OccasionCD2").value;}
		}
	}
	if (document.getElementById("OccasionCD3"))
	{
		if (!document.getElementById("OccasionCD3").disabled)
		{
			document.getElementById("OccasionCD3").value = trim(document.getElementById("OccasionCD3").value);
			if (document.getElementById("OccasionCD3").value=="")
				{alert("The Occasion must be selected");document.getElementById("OccasionCD3").focus();return false;}
			else
				{OccasionStr += "&OccasionCD3=" + document.getElementById("OccasionCD3").value;}
		}
	}
	if (document.getElementById("OccasionCD4"))
	{
		if (!document.getElementById("OccasionCD4").disabled)
		{
			document.getElementById("OccasionCD4").value = trim(document.getElementById("OccasionCD4").value);
			if (document.getElementById("OccasionCD4").value=="")
				{alert("The Occasion must be selected");document.getElementById("OccasionCD4").focus();return false;}
			else
				{OccasionStr += "&OccasionCD4=" + document.getElementById("OccasionCD4").value;}
		}
	}
	if (document.getElementById("OccasionCD5"))
	{
		if (!document.getElementById("OccasionCD5").disabled)
		{
			document.getElementById("OccasionCD5").value = trim(document.getElementById("OccasionCD5").value);
			if (document.getElementById("OccasionCD5").value=="")
				{alert("The Occasion must be selected");document.getElementById("OccasionCD5").focus();return false;}
			else
				{OccasionStr += "&OccasionCD5=" + document.getElementById("OccasionCD5").value;}
		}
	}
	if (document.getElementById("OccasionCD6"))
	{
		if (!document.getElementById("OccasionCD6").disabled)
		{
			document.getElementById("OccasionCD6").value = trim(document.getElementById("OccasionCD6").value);
			if (document.getElementById("OccasionCD6").value=="")
				{alert("The Occasion must be selected");document.getElementById("OccasionCD6").focus();return false;}
			else
				{OccasionStr += "&OccasionCD6=" + document.getElementById("OccasionCD6").value;}
		}
	}
	if (document.getElementById("OccasionCD7"))
	{
		if (!document.getElementById("OccasionCD7").disabled)
		{
			document.getElementById("OccasionCD7").value = trim(document.getElementById("OccasionCD7").value);
			if (document.getElementById("OccasionCD7").value=="")
				{alert("The Occasion must be selected");document.getElementById("OccasionCD7").focus();return false;}
			else
				{OccasionStr += "&OccasionCD7=" + document.getElementById("OccasionCD7").value;}
		}
	}
	if (document.getElementById("OccasionCD8"))
	{
		if (!document.getElementById("OccasionCD8").disabled)
		{
			document.getElementById("OccasionCD8").value = trim(document.getElementById("OccasionCD8").value);
			if (document.getElementById("OccasionCD8").value=="")
				{alert("The Occasion must be selected");document.getElementById("OccasionCD8").focus();return false;}
			else
				{OccasionStr += "&OccasionCD8=" + document.getElementById("OccasionCD8").value;}
		}
	}
	if (document.getElementById("OccasionCD9"))
	{
		if (!document.getElementById("OccasionCD9").disabled)
		{
			document.getElementById("OccasionCD9").value = trim(document.getElementById("OccasionCD9").value);
			if (document.getElementById("OccasionCD9").value=="")
				{alert("The Occasion must be selected");document.getElementById("OccasionCD9").focus();return false;}
			else
				{OccasionStr += "&OccasionCD9=" + document.getElementById("OccasionCD9").value;}
		}
	}
	if (document.getElementById("OccasionCD10"))
	{
		if (!document.getElementById("OccasionCD10").disabled)
		{
			document.getElementById("OccasionCD10").value = trim(document.getElementById("OccasionCD10").value);
			if (document.getElementById("OccasionCD10").value=="")
				{alert("The Occasion must be selected");document.getElementById("OccasionCD10").focus();return false;}
			else
				{OccasionStr += "&OccasionCD10=" + document.getElementById("OccasionCD10").value;}
		}
	}
//I M A G E    A S S O C I A T I ON
	if (document.getElementById("ImageType1"))
	{
		if (!document.getElementById("ImageType1").disabled)
		{
			if (document.getElementById("ImageType1").value=="")
				{alert("The Image Type must be selected");document.getElementById("ImageType1").focus();return false;}
			else
				{ImageStr = "ImageType1=" + document.getElementById("ImageType1").value;}
		}
	}
	if (document.getElementById("ImageName1"))
	{
		if (!document.getElementById("ImageName1").disabled)
		{
			document.getElementById("ImageName1").value = document.getElementById("ProductCD").value + '_' + document.getElementById("ImageType1").value + '.jpg';
			document.getElementById("ImageName1").value = trim(document.getElementById("ImageName1").value);
			if (document.getElementById("ImageName1").value=="")
				{alert("The Image Name must be entered");document.getElementById("ImageName1").focus();return false;}
			else
				{ImageStr += "&ImageName1=" + document.getElementById("ImageName1").value;}
		}
	}
	if (document.getElementById("ImageType2"))
	{
		if (!document.getElementById("ImageType2").disabled)
		{
			if (document.getElementById("ImageType2").value=="")
				{alert("The Image Type must be selected");document.getElementById("ImageType2").focus();return false;}
			else
				{ImageStr += "&ImageType2=" + document.getElementById("ImageType2").value;}
		}
	}
	if (document.getElementById("ImageName2"))
	{
		if (!document.getElementById("ImageName2").disabled)
		{
			document.getElementById("ImageName2").value = document.getElementById("ProductCD").value + '_' + document.getElementById("ImageType2").value + '.jpg';
			document.getElementById("ImageName2").value = trim(document.getElementById("ImageName2").value);
			if (document.getElementById("ImageName2").value=="")
				{alert("The Image Name must be entered");document.getElementById("ImageName2").focus();return false;}
			else
				{ImageStr += "&ImageName2=" + document.getElementById("ImageName2").value;}
		}
	}
//O C C A S I O N    T I T L E
	if (document.getElementById("OccasionTitle"))
	{
		if (!document.getElementById("OccasionTitle").disabled)
		{
			if ((document.getElementById("OccasionTitle").type == "select-one") & (document.getElementById("OccasionTitle").value == ""))
				{alert("The Occasion Title must be selected");document.getElementById("OccasionTitle").focus();return false;}
			if (document.getElementById("OccasionTitle").type == "text")
			{
				document.getElementById("OccasionTitle").value = trim(document.getElementById("OccasionTitle").value);
				if (document.getElementById("OccasionTitle").value=="")
					{alert("The Occasion Title must be entered");document.getElementById("OccasionTitle").focus();return false;}
			}
		}
	}
//O C C A S I O N    D E S C R I P T I O N
	if (document.getElementById("OccasionDesc"))
	{
		if (!document.getElementById("OccasionDesc").disabled)
		{
			document.getElementById("OccasionDesc").value = trim(document.getElementById("OccasionDesc").value);
			if (document.getElementById("OccasionDesc").value=="")
				{alert("The Occasion Description must be selected");document.getElementById("OccasionDesc").focus();return false;}
		}
	}
//V A L I D    F R O M
	var VALID_FROM_DATE;
	if (document.getElementById("CalDayFrom"))
	if (document.getElementById("CalMonthFrom"))
	if (document.getElementById("CalYearFrom"))
	{
		if ((!document.getElementById("CalDayFrom").disabled) & (!document.getElementById("CalMonthFrom").disabled) & (!document.getElementById("CalYearFrom").disabled))
		{
			if (((document.getElementById("CalDayFrom").value!="") & (document.getElementById("CalMonthFrom").value!="") & (document.getElementById("CalYearFrom").value!=""))|
				((document.getElementById("CalDayFrom").value=="") & (document.getElementById("CalMonthFrom").value=="") & (document.getElementById("CalYearFrom").value=="")))
				{
					VALID_FROM_DATE = new Date(document.getElementById("CalYearFrom").value, document.getElementById("CalMonthFrom").value - 1, document.getElementById("CalDayFrom").value);
					document.getElementById("ValidFrom").value = VALID_FROM_DATE.getDate() + "/" + (VALID_FROM_DATE.getMonth()+1) + "/" + VALID_FROM_DATE.getFullYear();
					if (document.getElementById("ValidFrom").value == "30/11/1899") {document.getElementById("ValidFrom").value = "";}
				}
			else
				{alert("The Valid From day must be a valid date. If not please leave it blank.");document.getElementById("CalDayFrom").focus();return false;}
		}
	}
//V A L I D    T O
	var VALID_TO_DATE 
	if (document.getElementById("CalDayTo"))
	if (document.getElementById("CalMonthTo"))
	if (document.getElementById("CalYearTo"))
	{
		if ((!document.getElementById("CalDayTo").disabled) & (!document.getElementById("CalMonthTo").disabled) & (!document.getElementById("CalYearTo").disabled))
		{
			if (((document.getElementById("CalDayTo").value!="") & (document.getElementById("CalMonthTo").value!="") & (document.getElementById("CalYearTo").value!=""))|
				((document.getElementById("CalDayTo").value=="") & (document.getElementById("CalMonthTo").value=="") & (document.getElementById("CalYearTo").value=="")))
				{
					VALID_TO_DATE = new Date(document.getElementById("CalYearTo").value, document.getElementById("CalMonthTo").value - 1, document.getElementById("CalDayTo").value);
					document.getElementById("ValidTo").value = VALID_TO_DATE.getDate() + "/" + (VALID_TO_DATE.getMonth()+1) + "/" + VALID_TO_DATE.getFullYear();
					if (document.getElementById("ValidTo").value == "30/11/1899") {document.getElementById("ValidTo").value = "";}
				}
			else
				{alert("The Valid To day must be a valid date. If not please leave it blank.");document.getElementById("CalDayTo").focus();return false;}
		}
	}
//V A L I D    F R O M   >   V A L I D    T O
	if (document.getElementById("ValidTo"))
	{
		if ((VALID_FROM_DATE > VALID_TO_DATE) & (document.getElementById("ValidTo").value != ""))
			{alert("The Valid To date cannot be before the Valid From date");document.getElementById("CalDayTo").focus();return false;}
	}
//V A L I D    F R O M   |   V A L I D    T O      <      D A T E
	if (document.getElementById("ValidTo"))
	{
		if ((new Date() > VALID_TO_DATE) & (document.getElementById("ValidTo").value != ""))
			{alert("The Valid To date cannot be before today");document.getElementById("CalDayTo").focus();return false;}
	}
//P R O D U C T    P R I C E
	if (document.getElementById("ProductPrice"))
	{
		if (!document.getElementById("ProductPrice").disabled)
		{
			document.getElementById("ProductPrice").value = trim(document.getElementById("ProductPrice").value);
			if ((document.getElementById("ProductPrice").value=="") | (isNaN(document.getElementById("ProductPrice").value)) | (document.getElementById("ProductPrice").value < 0))
				{alert("The Product Price must be entered and must be a valid positive numerical value");document.getElementById("ProductPrice").focus();return false;}
		}
	}
//S T A T U S
	if (document.getElementsByName("Status"))
	{
		var checked = false;
		for (i=0; i < document.getElementsByName("Status").length; i++)
		{
			if ((document.getElementsByName("Status"))[i].checked)
				checked = true;
		}
		if (!checked)
			{alert("The Status must be selected");(document.getElementsByName("Status"))[0].focus();return false;}
	}

	//if all ok return true
	return true;
}


/*********************************************************
T R I M    F U N C T I O N
*********************************************************/
function trim(value)
{
   var temp = value;
   var obj = /^(\s*)([\W\w]*)(\b\s*$)/;
   if (obj.test(temp)) { temp = temp.replace(obj, '$2'); }
   var obj = / +/g;
   temp = temp.replace(obj, " ");
   if (temp == " ") { temp = ""; }
   return temp;
}


/*********************************************************
C H E C K O U T    F U N C T I O N
----------------------------------------------------------
PURPOSE: SAVE DATA TO DB FROM CHECKOUT PAGE
*********************************************************/
function Checkout()
{
	if (jf_validate())
	{
		with (document.forms[0])
		{
			pString = "";
			pString = pString + "OptionStr=Checkout";
			pString += "&title=" + title.value;
			pString += "&name=" + dname.value;
			pString += "&address=" + daddress.value;
			pString += "&town=" + dtown.value;
			pString += "&county=" + dcounty.value;
			pString += "&postcode=" + dpostcode.value;
			pString += "&country=" + dcountry.value;
			pString += "&ccName=" + name.value;
			pString += "&ccAddress=" + address.value;
			pString += "&ccTown=" + town.value;
			pString += "&ccCounty=" + county.value;
			pString += "&ccPostcode=" + postcode.value;
			pString += "&ccCountry=" + country.value;
			pString += "&email=" + email.value;
			pString += "&telephone=" + telephone.value;
			pString += "&DeliveryDate=" + DeliveryDate.value;
			pString += "&CustomerNote=" + CustomerNote.value;
			pString += "&RecipientNote=" + RecipientNote.value;
			monitorFeedBack();
			loadXMLDoc("Include/OptionHandler.asp", "POST", pString, "Result");
			setTimeout("if (STAT==200) {document.forms[0].submit();};", 1000);
			/*if (loadXMLDoc("OptionHandler.asp", "POST", pString, "Save"))
			{
				alert("success");
				//document.forms[0].submit();
			}*/
		}
	}
}


function checkPostCode(val, tObj)
{
	document.forms[0].dpostcode.value = val.toUpperCase();
	var PC = new Array ("SW1 ", "SW1A", "SW1E", "SW1H", "SW1P", "SW1V", "SW1W", "SW1X", "SW1Y");
	var found = false;
	for (i=0; i < PC.length; i++)
	{
		if ((val.toUpperCase().substring(0, 4) == PC[i]) & (val.length >= 4))
		{
			found = true;
			i = PC.length + 1;
		}
	}
	if ((val.length > 4) & (!found))
	{
		alert("We do not deliver to the area you have specified. We serve only in the following areas.\nSW1 , SW1A, SW1E, SW1H, SW1P, SW1V, SW1W, SW1X, SW1Y");
		document.forms[0].dpostcode.focus();
		return false;
	}
	else
		return true;
}



function radioChecked(obj)
{
	var chk = false;
	if (isNaN(obj.length))
	{
		if (obj.checked)
			chk = true;
	}
	else
	{
		for (i=0; i < obj.length; i++)
		{
			if (obj[i].checked)
			{
				chk = true;
				i = obj.length + 1;
			}
		}
	}
	return chk;
}
