
	var blnFormSubmitted;

	function checkSubmit(frmName) 
	{
		var blnReturn;
		blnReturn = false;			
		var df;
		
					
		if(blnFormSubmitted != true) // only continue if haven't already clicked button
		{			
			blnFormSubmitted = true; // set submit to stop double-click
			df = document.forms[frmName];	
			if(typeof df.qty != 'undefined')
			{
				blnReturn = validateInput(df.qtyType.value, df.qty);
			}
			else
			{
				blnReturn = true;
			}
			if(blnReturn)
			{
				blnReturn = CheckTermsAndConditions(frmName);
			}
			else
			{
				if(typeof document.frmQty != 'undefined')
					document.frmQty.qty.focus();
				else
					df.qty.focus();
			}
			
			if(!blnReturn)
			{
				blnFormSubmitted = false; // set back
			}
		}
		return blnReturn;
	}
	
	function CheckTermsAndConditions(frmName)
	{
		var strOpt;
		var lngSW;
		var lngSH;
		var lngL;
		var lngT;
		var hPopup;
		var h;
		var w;
		var df;
		var blnRet = false;
		
		df = document.forms[frmName];		
		if(df.action.indexOf('check_items.asp') > 0 || df.action.indexOf('productr.asp') > 0)
		{
			blnRet = true;
		}
		else
		{
			if(df.tc_id.value > 0)
			{
				if(df.tc_accepted.value != 'accepted')
				{
					w = df.tc_width.value;
					h = df.tc_height.value;
					// figure out settings to center popup
					lngSW = 640;
					lngSH = 480;
					if(document.all || document.layers)
					{ 
						lngSW = screen.availWidth;  	// get width of screen
						lngSH = screen.availHeight;   // get height of screen
					} 
					lngL = (lngSW - w) / 2;
					lngT = (lngSH - h) / 2;		
					strOpt = 'width=' + w + ',height=' + h + ',directories=no,location=no,menubar=no,scrollbars=yes,status=yes,toolbar=no,Resizable=no,left=' + lngL + ',top=' + lngT;
					hPopup = open('TermsAndConditions.asp?frm=' + frmName, 'Terms', strOpt);
					if(!hPopup.opener) // if the popup doesn't have a reference back to page that opened it, create a reference back
					{
						hPopup.opener = self;
					}	
					if(!window.hPopup)
					{
						window.hPopup = hPopup;
					}
					blnRet = false;
				}
				else
				{
					blnRet = true;
				}
			}
			else
			{
				blnRet = true;
			}
		}
		return blnRet;
	}
	

	function validateInput(Type, Object) {
		var blnReturn;
			
		blnReturn = false;

		// check whether quantity exceeds maximum	
		if (isValidQty(Object)) 
		{
			// if okay, check whether quantity is integer or decimal
			if (Type=='Integer') 
			{
	   			if (isInteger(Object.value)) 
	   			{
	   				blnReturn = true; 
				}
				else 
				{
	   				alert('This field must be a whole number (i.e. 1)');
				}
			} 
			else if (Type == 'Decimal') 
			{
				if (isFloat(Object.value)) 
				{
					blnReturn = true; 
				}
				else 
				{
					alert('This field must be a whole or decimal number (i.e. 1 or 1.125) up to 3 decimal positions.');
				}
			}
		}
		return blnReturn;
	}

     function isEmpty(s)
     {   return ((s == null) || (s.length == 0))
     }

     function isDigit (c)
     {   return ((c >= "0") && (c <= "9"))
     }

     function isFloat (s)
     {   var i;
         var seenDecimalPoint = false;
         var decimalPointDelimiter = ".";
         var defaultEmptyOK = false;
		 var decimalPositions = 0;

         if (isEmpty(s)) 
            if (isFloat.arguments.length == 1) return defaultEmptyOK;
            else return (isFloat.arguments[1] == true);

         if (s == decimalPointDelimiter) return false;

         for (i = 0; i < s.length; i++)
         {   
             var c = s.charAt(i);

            if ((c == decimalPointDelimiter) && !seenDecimalPoint) {
               seenDecimalPoint = true;
               }
            else
               if ((!isDigit(c)) || (decimalPositions > 3)) {
                  return false;
                  }
               else 
                  if (seenDecimalPoint) {
                     decimalPositions++;
                     if (decimalPositions > 3) {
                        return false;
                        }
                     }
         }
         return true;
     }

     function isInteger (s)

     {   var i;
         var defaultEmptyOK = false;

         if (isEmpty(s)) 
            if (isInteger.arguments.length == 1) return defaultEmptyOK;
            else return (isInteger.arguments[1] == true);

         for (i = 0; i < s.length; i++)
         {   
             var c = s.charAt(i);

             if (!isDigit(c)) return false;
         }

         return true;
     }
     
	function callFreeItem(e){
	
		try{
			window.location.href = "freeitem.asp?banner=" + e;
		}	
		catch(e){
			//alert(e);
		}
		
	}

