// Application specific Javascript functions

  function checkForm(f)
  {
    //  alert ("Here in checkForm");
    //  alert ("Name=" + f.name);

    /*   To test the chosen option in a Select statement:
              var opt=f.selectname.selectedIndex;
              var field=f.selectname.options[opt].text;
              (Can use value instead of text if the option statements have a value clause)
    */
    if (f.buttonPressed.value=="Cancel") {return true;}
    if (f.buttonPressed.value=="Delete")
    {
      if (f.name == "addressForm" || f.obj.value == "nameAndAddress")
      {
        if (confirm("Deleting the Purchaser will also delete all associated orders. Are you really sure you want to delete this record?"))
        {return true;}
        else {return false;}
      }
      else
      {
        if (confirm("Are you really sure you want to delete this record?"))
        {return true;}
        else {return false;}
      }
    }
    var errMsg="";
    var confirmMessage="";
    switch (f.name)
    {
      case "addressForm":
        if (f.buttonPressed.value=="Back") {return true;}
        if (empty(f.forename.value))
        {
          if (errMsg=="") {f.forename.focus();}
          errMsg+="Please enter your Forename\n";
        }

        if (empty(f.surname.value))
        {
          if (errMsg=="") {f.surname.focus();}
          errMsg+="Please enter your Surname\n";
        }
        if (empty(f.address1.value) && empty(f.address2.value) &&
            empty(f.address3.value) && empty(f.address4.value))
        {
          if (errMsg=="") {f.address1.focus();}
          errMsg+="Please enter your Address\n";
        }
        if (empty(f.postcode.value))
        {
          if (errMsg=="") {f.postcode.focus();}
          errMsg+="Please enter your Postcode\n";
        }

        if (empty(f.phone.value))
        {
          if (errMsg=="") {f.phone.focus();}
          errMsg+="Please enter your Telephone number\n";
        }
        else
        {
          var num=f.phone.value.replace(/ /g,"");

          if (num.length<11 || !isNumeric(num))
          {
            if (errMsg=="") {f.phone.focus();}
            errMsg+="Phone numbers must comprise at least 11 digits\n";
          }
        }

        if (empty(f.email.value))
        {
          if (errMsg=="") {f.email.focus();}
          errMsg+="Please enter your Email address\n";
        }
        else
        {
          if (!checkEmail(f.email.value))
          {
            if (errMsg=="") {f.email.focus();}
            errMsg+="That Email address is invalid\n";
          }
        }

        if (activePromotion)
        {
          if (!empty(f.promotionCode.value))
          {
            var pattern = /^[a-zA-Z0-9]+$/;
            var result=f.promotionCode.value.match(pattern);
            if (result==null)
            {
              if (errMsg=="") {f.promotionCode.focus();}
              errMsg+="Promotion Codes may only contain letters and numbers\n";
            }
         }
        }
      break;

      case "baseItemForm":
        if (empty(f.baseItemName.value))
        {
          if (errMsg=="") {f.baseItemName.focus();}
          errMsg+="Please enter the Item Name\n";
        }

        if (empty(f.baseItemCode.value))
        {
          if (errMsg=="") {f.baseItemCode.focus();}
          errMsg+="Please enter the Item Code\n";
        }

        if (empty(f.baseItemDescription.value))
        {
          if (errMsg=="") {f.baseItemDescription.focus();}
          errMsg+="Please enter the Item Description\n";
        }

        if (f.baseItemType.value != "Voucher")
        {
          if (empty(f.baseItemPrice.value))
          {
            if (errMsg=="") {f.baseItemPrice.focus();}
            errMsg+="Please enter the Item Price\n";
          }
          else
          {
            if (!isNumeric(f.baseItemPrice.value, 2))
            {
              if (errMsg=="") {f.baseItemPrice.focus();}
              errMsg+="The Item Price must be numeric with a maximum of 2 decimal places\n";
            }
          }

          if (!empty(f.baseItemSpecialOfferPrice.value) && !isNumeric(f.baseItemSpecialOfferPrice.value,2))
          {
            if (errMsg=="") {f.baseItemSpecialOfferPrice.focus();}
            errMsg+="The Reduced Price must be numeric, maximum 2 decimal places\n";
          }

          /*
          if (empty(f.baseItemWeight.value) || f.baseItemWeight.value == 0)
          {
            if (errMsg=="") {f.baseItemWeight.focus();}
            errMsg+="Please enter the Item Weight in grammes\n";
          }
          else
          {
            if (!empty(f.baseItemWeight.value) && !isNumeric(f.baseItemWeight.value))
            {
            if (errMsg=="") {f.baseItemWeight.focus();}
            errMsg+="If entered thhe Item Weight must be numeric\n";
            }
          }
          */
          /*
          if (categories)
          {
            if(f.includedInCategoryCount.value==0) {confirmMessage="There are no Categories selected for this Item. Proceed?";}
          }
          */
        }
      break;

      case "categoryForm":
        if (empty(f.categoryName.value))
        {
          if (errMsg=="") {f.categoryName.focus();}
          errMsg+="Please enter the Category Name\n";
        }

        if (!empty(f.categoryDisplaySequence.value) && !isNumeric(f.categoryDisplaySequence.value))
        {
          if (errMsg=="") {f.categoryDisplaySequence.focus();}
          errMsg+="If entered, the Display Sequence must be numeric\n";
        }

        if (f.categoryType.value == "Seasonal" || f.categoryType.value == "Special")
        {
          var datesValid = true;
          if (!validateDate(f, "categoryDisplayFrom"))
          {
            if (errMsg=="") {f.categoryDisplayFromDay.focus();}
            errMsg+="The Display From date is not a valid date\n";
            datesValid = false;
          }
          if (!validateDate(f, "categoryDisplayTo"))
          {
            if (errMsg=="") {f.categoryDisplayToDay.focus();}
            errMsg+="The Display To date is not a valid date\n";
            datesValid = false;
          }

          if (datesValid)
          {
            if (compareDates(f, "categoryDisplayFrom", "categoryDisplayTo") == 1)
            {
              if (errMsg=="") {f.categoryDisplayToDay.focus();}
              errMsg+="The Display To date is earlier than the Display From date\n";
            }
          }
        }
      break;

      case "contactForm":
        if (empty (f.contactName.value))
        {
           if (errMsg=="")  {f.contactName.focus();}
           errMsg+="Please enter your Name\n";
        }

        /*
        if (empty (f.contactCompany.value))
        {
           if (errMsg=="")  {f.contactCompany.focus();}
           errMsg+="Please enter your contactCompany Name\n";
        }


        // if (empty (f.contactAddress1.value) && empty (f.contactAddress2.value) && empty (f.contactAddress3.value))
        if (empty (f.contactAddress1.value))
        {
           if (errMsg=="")  {f.contactAddress1.focus();}
           errMsg+="Please enter your Address\n";
        }

        if (empty (f.contactPostcode.value))
        {
           if (errMsg=="")  {f.contactPostcode.focus();}
           errMsg+="Please enter your contactPostcode\n";
        }
        */
        if (empty (f.contactPhone.value) && empty (f.contactEmail.value))
        {
           if (errMsg=="")  {f.contactPhone.focus();}
           errMsg+="Please enter either your Telephone number or Email Address\n";
        }
        else
        {
          if (!empty (f.contactEmail.value) && !checkEmail (f.contactEmail.value))
          {
            if (errMsg=="")  {f.contactEmail.focus();}
            errMsg+="That Email address is not valid\n";
          }
        }
        /*
        if (empty (f.contactMessage.value))
        {
           if (errMsg=="")  {f.contactMessage.focus();}
           errMsg+="Please enter details of your Enquiry\n";
        }

        if (empty (f.contactSpare02.value))
        {
           if (errMsg=="")  {f.contactSpare02.focus();}
           errMsg+="Please enter your contactSpare02\n";
        }

        if (empty (f.contactSpare03.value))
        {
           if (errMsg=="")  {f.contactSpare03.focus();}
           errMsg+="Please enter your contactSpare03\n";
        }

        if (empty (f.contactSpare04.value))
        {
           if (errMsg=="")  {f.contactSpare04.focus();}
           errMsg+="Please enter your contactSpare04\n";
        }

        if (empty (f.contactSpare05.value))
        {
           if (errMsg=="")  {f.contactSpare05.focus();}
           errMsg+="Please enter your contactSpare05\n";
        }

        if (empty (f.contactSpare06.value))
        {
           if (errMsg=="")  {f.contactSpare06.focus();}
           errMsg+="Please enter your contactSpare06\n";
        }

        if (empty (f.contactSpare07.value))
        {
           if (errMsg=="")  {f.contactSpare07.focus();}
           errMsg+="Please enter your contactSpare07\n";
        }

        if (empty (f.contactSpare08.value))
        {
           if (errMsg=="")  {f.contactSpare08.focus();}
           errMsg+="Please enter your contactSpare08\n";
        }

        if (empty (f.contactSpare09.value))
        {
           if (errMsg=="")  {f.contactSpare09.focus();}
           errMsg+="Please enter your contactSpare09\n";
        }

        if (empty (f.contactSpare10.value))
        {
           if (errMsg=="")  {f.contactSpare10.focus();}
           errMsg+="Please enter your contactSpare10\n";
        }

        if (empty (f.contactSpare11.value))
        {
           if (errMsg=="")  {f.contactSpare11.focus();}
           errMsg+="Please enter your contactSpare11\n";
        }

        if (empty (f.contactSpare12.value))
        {
           if (errMsg=="")  {f.contactSpare12.focus();}
           errMsg+="Please enter your contactSpare12\n";
        }

        if (empty (f.contactSpare13.value))
        {
           if (errMsg=="")  {f.contactSpare13.focus();}
           errMsg+="Please enter your contactSpare13\n";
        }

        if (empty (f.contactSpare14.value))
        {
           if (errMsg=="")  {f.contactSpare14.focus();}
           errMsg+="Please enter your contactSpare14\n";
        }

        */
      break;

      case "listOrdersForm":
        var datesValid = true;
        if (!validateDate(f, "fromDate"))
        {
          if (errMsg=="") {f.fromDateDay.focus();}
          errMsg+="The Date From is not a valid date\n";
          datesValid = false;
        }

        if (!validateDate(f, "toDate"))
        {
          if (errMsg=="") {f.toDateDay.focus();}
          errMsg+="The Date To is not a valid date\n";
          datesValid = false;
        }

        if (datesValid)
        {
          if (compareDates(f, "fromDate", "toDate") == 1)
          {
            if (errMsg=="") {f.fromDateDay.focus();}
            errMsg+="The Date From later than the Date To\n";
          }
        }
      break;

      case "newsletterrequestForm":
        if (empty(f.newsletterrequestEmail.value))
        {
          if (errMsg=="") {f.newsletterrequestEmail.focus();}
          errMsg+="Please enter your Email Address\n";
        }
        else
        {
          if (!checkEmail(f.newsletterrequestEmail.value))
          {
            if (errMsg=="") {f.newsletterrequestEmail.focus();}
            errMsg+="That is not a valid Email Address\n";
          }
        }

        if (!validateDate(f,"newsletterrequestDate"))
        {
          if (errMsg=="") {f.newsletterrequestDateDay.focus();}
          errMsg+="That is not a valid date\n";
        }
        /*
        if (empty(f.newsletterrequestField04.value))
        {
          if (errMsg=="") {f.newsletterrequestField04.focus();}
          errMsg+="Please enter your newsletterrequestField04\n";
        }
        */
      break;

      case "newsletterrequestUserForm":
        if (empty(f.newsletterrequestEmail.value))
        {
          if (errMsg=="") {f.newsletterrequestEmail.focus();}
          errMsg+="Please enter your Email Address\n";
        }
        else
        {
          if (!checkEmail(f.newsletterrequestEmail.value))
          {
            if (errMsg=="") {f.newsletterrequestEmail.focus();}
            errMsg+="That is not a valid Email Address\n";
          }
        }

        /*
        if (empty(f.newsletterrequestField04.value))
        {
          if (errMsg=="") {f.newsletterrequestField04.focus();}
          errMsg+="Please enter your newsletterrequestField04\n";
        }
        */
      break;

      case "pageForm":
        /*
        if (empty(f.pageTitle.value))
            {
              if (errMsg=="") {f.pageTitle.focus();}
          errMsg+="Please enter the pageTitle\n";
        }
        */
        if (empty(f.pageText1.value))
        {
          if (errMsg=="") {f.pageText1.focus();}
          errMsg+="Please enter the Page Text\n";
        }

        /*
        if (empty(f.pageField29.value))
            {
              if (errMsg=="") {f.pageField29.focus();}
          errMsg+="Please enter the pageField29\n";
        }

        if (empty(f.pageField30.value))
            {
              if (errMsg=="") {f.pageField30.focus();}
          errMsg+="Please enter the pageField30\n";
        }
        */
      break;

      case "postageForm":
        if (empty(f.postageStandard.value))
        {
          if (errMsg=="") {f.postageStandard.focus();}
          errMsg+="Please enter the Cost for Standard Postage\n";
        }
        else
        {
          if (!isNumeric(f.postageStandard.value, 2))
          {
            if (errMsg=="") {f.postageStandard.focus();}
            errMsg+="The Cost for Standard Postage must be numeric, maximum 2 decimal places\n";
          }
        }

        if (empty(f.postageNextDay.value))
        {
          if (errMsg=="") {f.postageNextDay.focus();}
          errMsg+="Please enter Cost for Next Day Delivery\n";
        }
        else
        {
          if (!isNumeric(f.postageNextDay.value, 2))
          {
            if (errMsg=="") {f.postageNextDay.focus();}
            errMsg+="The Cost for Next Day Delivery must be numeric, maximum 2 decimal places\n";
          }
        }

        if (!empty(f.postageFreeAbove.value) && !isNumeric(f.postageFreeAbove.value))
        {
          if (errMsg=="") {f.postageFreeAbove.focus();}
          errMsg+="The Amount above which postage is free must be numeric (no decimals)\n";
        }

        if (empty(f.postageVoucher.value))
        {
          if (errMsg=="") {f.postageVoucher.focus();}
          errMsg+="Please enter the Voucher(s) only Postage\n";
        }
        else
        {
          if (!isNumeric(f.postageVoucher.value, 2))
          {
            if (errMsg=="") {f.postageVoucher.focus();}
            errMsg+="The Cost for Voucher(s) only Postage must be numeric, maximum 2 decimal places\n";
          }
        }


        /*
        if (empty(f.postageNextDayCutOff.value))
        {
          if (errMsg=="") {f.postageNextDayCutOff.focus();}
          errMsg+="Please enter your postageNextDayCutOff\n";
        }

        if (empty(f.postageField05.value))
        {
          if (errMsg=="") {f.postageField05.focus();}
          errMsg+="Please enter your postageField05\n";
        }

        if (empty(f.postageField06.value))
        {
          if (errMsg=="") {f.postageField06.focus();}
          errMsg+="Please enter your postageField06\n";
        }
        */
      break;

      /*
      // Validation for classPostageOriginal - by weight of items + weight of packaging
      case "postageForm":
        if (empty(f.postageWeightUpTo.value))
        {
          if (errMsg=="") {f.postageWeightUpTo.focus();}
          errMsg+="Please enter the Maximum Weight in grammes\n";
        }
        else
        {
          if (!isNumeric(f.postageWeightUpTo.value))
          {
            if (errMsg=="") {f.postageWeightUpTo.focus();}
            errMsg+="The Maximum Weight must be numeric\n";
          }
        }

        if (empty(f.postageCost.value))
        {
          if (errMsg=="") {f.postageCost.focus();}
          errMsg+="Please enter the Postage Cost\n";
        }
        else
        {
          if (!isNumeric(f.postageCost.value, 2))
          {
            if (errMsg=="") {f.postageCost.focus();}
            errMsg+="The Postage Cost must be numeric, maximum 2 decimal places\n";
          }
        }

        if (!empty(f.postagePackagingCost.value) && !isNumeric(f.postagePackagingCost.value, 2))
        {
          if (errMsg=="") {f.postagePackagingCost.focus();}
          errMsg+="If entered the Packaging Cost must be numeric, maximum 2 decimal places\n";
        }

        if (!empty(f.postagePackagingWeight.value) && !isNumeric(f.postagePackagingWeight.value))
        {
          if (errMsg=="") {f.postagePackagingWeight.focus();}
          errMsg+="If entered the Packaging Weight must be numeric\n";
        }

      break;
      */

      case "saleForm":
        var datesValid = true;
        if (!validateDate(f,"saleStartDate"))
        {
          if (errMsg=="") {f.saleStartDateDay.focus();}
          errMsg+="The Sale Start Date is not a valid date\n";
          datesValid = false;
        }

        if (!validateDate(f, "saleEndDate"))
        {
          if (errMsg=="") {f.saleEndDateDay.focus();}
          errMsg+="The Sale End Date is not a valid date\n";
          datesValid = false;
        }

        if (datesValid)
        {
          if (compareDates(f, "saleStartDate", "saleEndDate") == 1)
          {
            if (errMsg=="") {f.saleEndDateDay.focus();}
            errMsg+="The Sale End Date cannot precede the Start Date\n";
          }
        }


        var datesValid = true;
        if (!validateDate(f,"saleClearanceStartDate"))
        {
          if (errMsg=="") {f.saleClearanceStartDateDay.focus();}
          errMsg+="The sClearance Start Date is not a valid date\n";
          datesValid = false;
        }

        if (!validateDate(f, "saleClearanceEndDate"))
        {
          if (errMsg=="") {f.saleClearanceEndDateDay.focus();}
          errMsg+="The Clearance End Date is not a valid date\n";
          datesValid = false;
        }

        if (datesValid)
        {
          if (compareDates(f, "saleClearanceStartDate", "saleClearanceEndDate") == 1)
          {
            if (errMsg=="") {f.saleClearanceEndDateDay.focus();}
            errMsg+="The Clearance End Date cannot precede the Start Date\n";
          }
        }
      break;

      case "showCartForm":
        if (f.buttonPressed.value == "Checkout" && !f.readTOC.checked)
        {
          if (errMsg=="") {f.readTOC.focus();}
          errMsg+="Please confirm you have read the Terms & Conditions\n";
        }
      break;

      case "sizeForm":
        if (f.sizeType.value == "Clothing")
        {
          if (empty(f.sizeAge.value))
          {
            if (errMsg=="") {f.sizeAge.focus();}
            errMsg+="Please enter the Age\n";
          }

          if (empty(f.sizeHeight.value))
          {
            if (errMsg=="") {f.sizeHeight.focus();}
            errMsg+="Please enter the Height in cm\n";
          }
          else
          {
            if (!isNumeric(f.sizeHeight.value))
            {
              if (errMsg=="") {f.sizeHeight.focus();}
              errMsg+="The Height must be numeric\n";
            }
          }

          if (empty(f.sizeWeight.value))
          {
            if (errMsg=="") {f.sizeWeight.focus();}
            errMsg+="Please enter the Weight in lbs\n";
          }
        }
        else
        {
          if (f.sizeType.value == "Shoe")
          {
             if (empty(f.sizeShoeUK.value))
             {
               if (errMsg=="") {f.sizeShoeUK.focus();}
               errMsg+="Please enter the UK Shoe Size\n";
             }
             if (empty(f.sizeShoeEU.value))
             {
               if (errMsg=="") {f.sizeShoeEU.focus();}
               errMsg+="Please enter the EU Shoe Size\n";
             }
             if (empty(f.sizeShoeUS.value))
             {
               if (errMsg=="") {f.sizeShoeUS.focus();}
               errMsg+="Please enter the US Shoe Size\n";
             }
          }
        }
        /*

        if (empty(f.sizeField07.value))
        {
          if (errMsg=="") {f.sizeField07.focus();}
          errMsg+="Please enter your sizeField07\n";
        }

        if (empty(f.sizeField08.value))
        {
          if (errMsg=="") {f.sizeField08.focus();}
          errMsg+="Please enter your sizeField08\n";
        }
        */
      break;

      case "baseitemsizeForm":

        if (empty(f.baseitemsizePrice.value))
        {
          if (errMsg=="") {f.baseitemsizePrice.focus();}
          errMsg+="Please enter the Price\n";
        }
        else
        {
          if (!isNumeric(f.baseitemsizePrice.value, 2))
          {
            if (errMsg=="") {f.baseitemsizePrice.focus();}
            errMsg+="The Price must be numeric, max 2 decimal places\n";
          }
        }

      break;

      case "newsletterForm":
        /*
        if (empty(f.newsletterTitle.value))
        {
          if (errMsg=="") {f.newsletterTitle.focus();}
          errMsg+="Please enter the Title\n";
        }


        if (empty(f.newsletterField04.value))
        {
          if (errMsg=="") {f.newsletterField04.focus();}
          errMsg+="Please enter the Field04\n";
        }
        */
      break;

      case "orderdetailForm":
        if (empty(f.orderdetailBaseItemName.value))
        {
          if (errMsg=="") {f.orderdetailBaseItemName.focus();}
          errMsg+="Please enter the Item Name\n";
        }

        if (empty(f.orderdetailStockItemColour.value))
        {
          if (errMsg=="") {f.orderdetailStockItemColour.focus();}
          errMsg+="Please enter the Item Colour\n";
        }

        if (empty(f.orderdetailSize.value))
        {
          if (errMsg=="") {f.orderdetailSize.focus();}
          errMsg+="Please enter the Size\n";
        }

        if (empty(f.orderdetailPurchaseQuantity.value))
        {
          if (errMsg=="") {f.orderdetailPurchaseQuantity.focus();}
          errMsg+="Please enter the Purchase Quantity\n";
        }
        else
        {
          if (!isNumeric(f.orderdetailPurchaseQuantity.value))
          {
            if (errMsg=="") {f.orderdetailPurchaseQuantity.focus();}
            errMsg+="The Purchase Quantity must be numeric\n";
          }
        }

        if (empty(f.orderdetailStockItemPrice.value))
        {
          if (errMsg=="") {f.orderdetailStockItemPrice.focus();}
          errMsg+="Please enter the Price\n";
        }
        else
        {
          if (!isNumeric(f.orderdetailStockItemPrice.value, 2))
          {
            if (errMsg=="") {f.orderdetailStockItemPrice.focus();}
            errMsg+="The Purchase Price must be numeric, maximum 2 decimal places\n";
          }
        }

        if (dateEntered(f, "orderdetailDespatchDate") && !validateDate(f, "orderdetailDespatchDate"))
        {
          if (errMsg=="") {f.orderdetailDespatchDateDay.focus();}
          errMsg+="The Despatch Date is not a valid date\n";
        }
        /*
        if (empty(f.orderdetailField09.value))
        {
          if (errMsg=="") {f.orderdetailField09.focus();}
          errMsg+="Please enter the orderdetailField09\n";
        }

        if (empty(f.orderdetailField10.value))
        {
          if (errMsg=="") {f.orderdetailField10.focus();}
          errMsg+="Please enter the orderdetailField10\n";
        }
        */
      break;

      case "orderdetailPrivateForm":
        if (f.buttonPressed.value=="CancelAbandon")
        {
          confirmMessage = "This will completely cancel the Private Order and all data entered will be removed. Are you sure you want to continue? ";
        }
        else
        {
        if (empty(f.orderdetailBaseItemName.value))
        {
          if (errMsg=="") {f.orderdetailBaseItemName.focus();}
          errMsg+="Please enter the Item Name\n";
        }
        /*
        if (empty(f.orderdetailStockItemColour.value))
        {
          if (errMsg=="") {f.orderdetailStockItemColour.focus();}
          errMsg+="Please enter the Item Colour\n";
        }

        if (empty(f.orderdetailSize.value))
        {
          if (errMsg=="") {f.orderdetailSize.focus();}
          errMsg+="Please enter the Size\n";
        }
        */
        if (empty(f.orderdetailPurchaseQuantity.value))
        {
          if (errMsg=="") {f.orderdetailPurchaseQuantity.focus();}
          errMsg+="Please enter the Purchase Quantity\n";
        }
        else
        {
          if (!isNumeric(f.orderdetailPurchaseQuantity.value))
          {
            if (errMsg=="") {f.orderdetailPurchaseQuantity.focus();}
            errMsg+="The Purchase Quantity must be numeric\n";
          }
        }

        if (empty(f.orderdetailStockItemPrice.value))
        {
          if (errMsg=="") {f.orderdetailStockItemPrice.focus();}
          errMsg+="Please enter the Price\n";
        }
        else
        {
          if (!isNumeric(f.orderdetailStockItemPrice.value, 2))
          {
            if (errMsg=="") {f.orderdetailStockItemPrice.focus();}
            errMsg+="The Purchase Price must be numeric, maximum 2 decimal places\n";
          }
        }

        if (dateEntered(f, "orderdetailDespatchDate") && !validateDate(f, "orderdetailDespatchDate"))
        {
          if (errMsg=="") {f.orderdetailDespatchDateDay.focus();}
          errMsg+="The Despatch Date is not a valid date\n";
        }
        /*
        if (empty(f.orderdetailField09.value))
        {
          if (errMsg=="") {f.orderdetailField09.focus();}
          errMsg+="Please enter the orderdetailField09\n";
        }

        if (empty(f.orderdetailField10.value))
        {
          if (errMsg=="") {f.orderdetailField10.focus();}
          errMsg+="Please enter the orderdetailField10\n";
        }
        */
        }
      break;

      case "orderhdrForm":

        if (!validateDate(f, "orderhdrOrderDate"))
        {
          if (errMsg=="") {f.orderhdrOrderDateDay.focus();}
          errMsg+="The Order Date is not a valid date\n";
        }

        if (dateEntered(f, "orderhdrDespatchDate") && !validateDate(f, "orderhdrDespatchDate"))
        {
          if (errMsg=="") {f.orderhdrDespatchDateDay.focus();}
          errMsg+="The Despatch Date is not a valid date\n";
        }
        /*
        if (empty(f.orderhdrField06.value))
        {
          if (errMsg=="") {f.orderhdrField06.focus();}
          errMsg+="Please enter your orderhdrField06\n";
        }

        if (empty(f.orderhdrField07.value))
        {
          if (errMsg=="") {f.orderhdrField07.focus();}
          errMsg+="Please enter your orderhdrField07\n";
        }

        if (empty(f.orderhdrField08.value))
        {
          if (errMsg=="") {f.orderhdrField08.focus();}
          errMsg+="Please enter your orderhdrField08\n";
        }
        */
      break;

      case "orderhdrPrivateForm":

        var opt=f.orderhdrNameAndAddressID.selectedIndex;
        var orderhdrNameAndAddressID=f.orderhdrNameAndAddressID.options[opt].value;
        if (orderhdrNameAndAddressID == 0)
        {
          if (empty(f.forename.value))
          {
            if (errMsg=="") {f.forename.focus();}
            errMsg+="Please enter your Forename\n";
          }

          if (empty(f.surname.value))
          {
            if (errMsg=="") {f.surname.focus();}
            errMsg+="Please enter your Surname\n";
          }
          if (empty(f.address1.value) && empty(f.address2.value) &&
            empty(f.address3.value) && empty(f.address4.value))
          {
            if (errMsg=="") {f.address1.focus();}
            errMsg+="Please enter your Address\n";
          }
          if (empty(f.postcode.value))
          {
            if (errMsg=="") {f.postcode.focus();}
            errMsg+="Please enter your Postcode\n";
          }

          if (empty(f.phone.value))
          {
            if (errMsg=="") {f.phone.focus();}
            errMsg+="Please enter your Telephone number\n";
          }
          else
          {
            var num=f.phone.value.replace(/ /g,"");

            if (num.length<11 || !isNumeric(num))
            {
              if (errMsg=="") {f.phone.focus();}
              errMsg+="Phone numbers must comprise at least 11 digits\n";
            }
          }

          if (empty(f.email.value))
          {
            if (errMsg=="") {f.email.focus();}
            errMsg+="Please enter your Email address\n";
          }
          else
          {
            if (!checkEmail(f.email.value))
            {
              if (errMsg=="") {f.email.focus();}
              errMsg+="That Email address is invalid\n";
            }
          }
        }
        else
        {
          if (!empty(f.forename.value) || !empty(f.surname.value) ||
              !empty(f.address1.value) || !empty(f.address2.value) ||
              !empty(f.address3.value) || !empty(f.address4.value) ||
              !empty(f.postcode.value) || !empty(f.phone.value) ||
              !empty(f.email.value))
          {
            errMsg+="Please either select an existing client or enter new client details, but not both\n";
          }
        }

        if (!validateDate(f, "orderhdrOrderDate"))
        {
          if (errMsg=="") {f.orderhdrOrderDateDay.focus();}
          errMsg+="The Order Date is not a valid date\n";
        }

        if (dateEntered(f, "orderhdrDespatchDate") && !validateDate(f, "orderhdrDespatchDate"))
        {
          if (errMsg=="") {f.orderhdrDespatchDateDay.focus();}
          errMsg+="The Despatch Date is not a valid date\n";
        }

        if (!empty(f.orderhdrPostage.value) && !isNumeric(f.orderhdrPostage.value,2))
        {
          if (errMsg=="") {f.orderhdrPostage.focus();}
          errMsg+="If entered the Postage must be numeric, max 2 decimal places\n";
        }

        /*
        if (empty(f.orderhdrField07.value))
        {
          if (errMsg=="") {f.orderhdrField07.focus();}
          errMsg+="Please enter your orderhdrField07\n";
        }

        if (empty(f.orderhdrField08.value))
        {
          if (errMsg=="") {f.orderhdrField08.focus();}
          errMsg+="Please enter your orderhdrField08\n";
        }
        */
      break;

      case "promotionForm":
        if (empty(f.promotionCode.value))
        {
          if (errMsg=="") {f.promotionCode.focus();}
          errMsg+="Please enter the Promotion Code\n";
        }
        else
        {
          var pattern = /^[a-zA-Z0-9]+$/;
          var result=f.promotionCode.value.match(pattern);
          if (result==null)
          {
            if (errMsg=="") {f.promotionCode.focus();}
            errMsg+="Promotion Codes may only contain letters and numbers\n";
          }
        }

        if (empty(f.promotionDiscount.value))
        {
          if (errMsg=="") {f.promotionDiscount.focus();}
          errMsg+="Please enter the Promotion Discount %\n";
        }
        else
        {
          if (!isNumeric(f.promotionDiscount.value, 2))
          {
            if (errMsg=="") {f.promotionDiscount.focus();}
            errMsg+="The Promotion Discount % must be numeric, maximum 2 decimal places\n";
          }
          else
          {
            if (f.promotionDiscount.value > 100)
            {
              if (errMsg=="") {f.promotionDiscount.focus();}
              errMsg+="The Promotion Discount cannot exceed 100%\n";
            }
          }
        }

        var datesValid = true;
        if (!validateDate(f, "promotionStartDate"))
        {
          if (errMsg=="") {f.promotionStartDateDay.focus();}
          errMsg+="The Promotion Start Date is not a valid date\n";
          var datesValid = false;
        }

        if (!validateDate(f, "promotionEndDate"))
        {
          if (errMsg=="") {f.promotionEndDateDay.focus();}
          errMsg+="The Promotion End Date is not a valid date\n";
          var datesValid = false;
        }

        if (datesValid)
        {
          if (compareDates(f,"promotionStartDate", "promotionEndDate") == 1)
          {
            if (errMsg=="") {f.promotionEndDateDay.focus();}
            errMsg+="The Promotion End Date is earlier than the Start Date\n";
          }
        }

        /*
        if (empty(f.promotionField07.value))
        {
          if (errMsg=="") {f.promotionField07.focus();}
          errMsg+="Please enter the Promotion Field07\n";
        }

        if (empty(f.promotionField08.value))
        {
          if (errMsg=="") {f.promotionField08.focus();}
          errMsg+="Please enter the Promotion Field08\n";
        }
        */
      break;

      case "purchaseForm":
        if (colourPresent && f.selectedColour.value == "Please Choose")
        {
          if (errMsg=="") {f.selectedColour.focus();}
          errMsg+="Please choose a Colour\n";
        }

        if (sizePresent && f.selectedSizeID.value == 0)
        {
          if (errMsg=="") {f.selectedSizeID.focus();}
          errMsg+="Please choose a Size\n";
        }
      break;

      case "stockDiscrepancyForm":
        var itemCount = f.stockItemCount.value;
        for (var i=0; i < itemCount; i++)
        {          var newLevel = eval("f.stockLevel" + i + ".value");
          if (!empty(newLevel))
          {            if (!isNumeric(newLevel))
            {
              if (errMsg=="") {eval ("f.stockLevel" + i + ".focus()");}
              var lineNo = i + 1;
              errMsg+="The Stock Level for line " + lineNo + " must be numeric\n";
            }

            var reason = eval("f.reason" + i + ".value");
            if (empty(reason))
            {
              if (errMsg=="") {eval ("f.reason" + i + ".focus()");}
              var lineNo = i + 1;
              errMsg+="Please enter the Reason for the Discrepancy at line " + lineNo + "\n";
            }

            var currentLevel = eval("f.currentLevel" + i + ".value");
            if (newLevel ==  currentLevel)
             {
               if (errMsg=="") {eval ("f.stockLevel" + i + ".focus()");}
               var lineNo = i + 1;
               errMsg+="The Stock Level for line " + lineNo + " is the same as the current level\n";
            }
            else
            {              if (newLevel >  currentLevel)
              {confirmMessage = "The Stock Level in one or more lines appears to have increased. Please confirm this is correct";}
            }
          }
        }
      break;

      case "stockdiscrepancyForm":

        if (empty(f.stockdiscrepancyPreviousStockLevel.value))
        {
          if (errMsg=="") {f.stockdiscrepancyPreviousStockLevel.focus();}
          errMsg+="Please enter the Previous Stock Level\n";
        }

        if (empty(f.stockdiscrepancyNewStockLevel.value))
        {
          if (errMsg=="") {f.stockdiscrepancyNewStockLevel.focus();}
          errMsg+="Please enter the New Stock Level\n";
        }

        if (empty(f.stockdiscrepancyReason.value))
        {
          if (errMsg=="") {f.stockdiscrepancyReason.focus();}
          errMsg+="Please enter the Reason for the Discrepancy\n";
        }

        if (!validataDate(f, "stockdiscrepancyDate"))
        {
          if (errMsg=="") {f.stockdiscrepancyDateDay.focus();}
          errMsg+="That Date is invalid\n";
        }
        /*
        if (empty(f.stockdiscrepancyField09.value))
        {
          if (errMsg=="") {f.stockdiscrepancyField09.focus();}
          errMsg+="Please enter the stockdiscrepancyField09\n";
        }

        if (empty(f.stockdiscrepancyField10.value))
        {
          if (errMsg=="") {f.stockdiscrepancyField10.focus();}
          errMsg+="Please enter the stockdiscrepancyField10\n";
        }
        */
      break;

      case "stockItemForm":
        var colourCount = f.colourCount.value;
        var sizeCount = f.sizeCount.value;
        for (var i=0; i < sizeCount; i++)
        {
          for (var j=0; j < colourCount; j++)
          {
            var price = eval("f.price" + j + "for" + i + ".value");
            var stockLevel = eval("f.stockLevel" + j + "for" + i + ".value");
            var size = eval("f.size" + j + "for" + i + ".value");
            var colour = eval("f.colour" + j + "for" + i + ".value");
            if (!isNumeric(price, 2))
            {
              if (errMsg=="") {eval("f.price" + j + "for" + i + ".focus()");}
              errMsg+="The Price for size " + size + ", colour " + colour + " must be numeric, max 2 decimal places\n";
            }
            if (!isNumeric(stockLevel))
            {
              if (errMsg=="") {eval("f.stockLevel" + j + "for" + i + ".focus()");}
              errMsg+="The Stock Level for size " + size + ", colour " + colour + " must be numeric\n";
            }
          }
        }
      break;

      case "stockPurchaseForm":
        if (!validateDate(f, "stockPurchaseDate"))
        {
          if (errMsg=="") {f.stockPurchaseDateDay.focus();}
          errMsg+="The Purchase Date is not a valid date\n";
        }

        if (empty(f.stockPurchaseQuantityOrdered.value))
        {
          if (errMsg=="") {f.stockPurchaseQuantityOrdered.focus();}
          errMsg+="Please enter the Quantity Purchased\n";
        }
        else
        {
          if (!isNumeric(f.stockPurchaseQuantityOrdered.value))
          {
            if (errMsg=="") {f.stockPurchaseQuantityOrdered.focus();}
            errMsg+="The Quantity Purchased must be numeric\n";
          }
        }

        if (empty(f.stockPurchaseUnitPrice.value))
        {
          if (errMsg=="") {f.stockPurchaseUnitPrice.focus();}
          errMsg+="Please enter the Unit Price\n";
        }
        else
        {
          if (!isNumeric(f.stockPurchaseUnitPrice.value, 2))
          {
            if (errMsg=="") {f.stockPurchaseUnitPrice.focus();}
            errMsg+="The Unit Price must be numeric, maximum 2 decimal places\n";
          }
        }
      break;

      case "stockPurchaseNotificationForm":
        var lineCount = f.lineCount.value;
        for (var i=0; i<lineCount; i++)
        {
          var forSizeColour = "";
          var quantity = eval("f.quantity" + i + ".value");
          var price = eval("f.price" + i + ".value")
          if (!empty(quantity) || !empty(price))
          {
            if (f.coloursPresent.value)
            {
              forSizeColour = " for";
              var colour = " Colour: " + eval("f.colour" + i + ".value");
            }
            else {var colour = "";}
            if (f.sizesPresent.value)
            {
              forSizeColour = " for";
              var size = " Size: " + eval("f.sizeName" + i + ".value");
            }
            else {var size = "";}
            if (!empty(quantity))
            {
              if (!isNumeric(quantity))
              {
                if (errMsg=="") {eval ("f.quantity" + i + ".focus()");}
                errMsg+="The quantity" + forSizeColour + colour + size + " must be numeric\n";
              }

              if (empty(price))
              {
                if (errMsg=="") {eval ("f.price" + i + ".focus()");}
                errMsg+="Please enter the price" + forSizeColour + colour + size + "\n";
              }
              else
              {
                if (!isNumeric(price,2))
                {
                  if (errMsg=="") {eval ("f.price" + i + ".focus()");}
                  errMsg+="The price" + forSizeColour + colour + size + " must be numeric, max. 2 dec. places\n";
                }
              }
            }
            else
            {
              if (!isNumeric(price,2))
              {
                if (errMsg=="") {eval ("f.price" + i + ".focus()");}
                errMsg+="The price" + forSizeColour + colour + size + " must be numeric, max. 2 dec. places\n";
              }

              if (errMsg=="") {eval ("f.quantity" + i + ".focus()");}
              errMsg+="Please enter the quantity" + forSizeColour + colour + size + "\n";
            }
          }
        }
      break;

      case "voucherForm":

        if (empty(f.voucherReference.value))
        {
          if (errMsg=="") {f.voucherReference.focus();}
          errMsg+="Please enter the Voucher Reference\n";
        }
        else
        {
         if (!validateVoucherReference(f.voucherReference.value))
          {
            if (errMsg=="") {f.voucherReference.focus();}
            errMsg+="The Voucher Reference is invalid\n";
          }
        }

        if (empty(f.voucherPurchaseValue.value))
        {
          if (errMsg=="") {f.voucherPurchaseValue.focus();}
          errMsg+="Please enter the Voucher Purchase Value\n";
        }
        else
        {
          if (!isNumeric(f.voucherPurchaseValue.value, 2))
          {
            if (errMsg=="") {f.voucherPurchaseValue.focus();}
            errMsg+="The Voucher Purchase Value  must be numeric, max 2 decimal places\n";
          }
        }

        if (empty(f.voucherRecipientName.value))
        {
          if (errMsg=="") {f.voucherRecipientName.focus();}
          errMsg+="Please enter the Recipient's Name\n";
        }


        var radioLength = f.voucherPrintOption.length;
        for (var i=0; i < radioLength; i++)
        {          if (f.voucherPrintOption[i].checked) {var voucherPrintOption=f.voucherPrintOption[i].value;}
        }
        if (voucherPrintOption == "Post to Recipient")
        {
          if (empty(f.voucherRecipientAddress.value))
          {
            if (errMsg=="") {f.voucherRecipientAddress.focus();}
            errMsg+="Please enter the Recipient's Address\n";
          }
        }

        if (voucherPrintOption == "Email")
        {
          if (empty(f.voucherRecipientEmail.value))
          {
            if (errMsg=="") {f.voucherRecipientEmail.focus();}
            errMsg+="Please enter the Recipient's Email Address\n";
          }
          else
          {
            if (!checkEmail(f.voucherRecipientEmail.value))
            {
              if (errMsg=="") {f.voucherRecipientEmail.focus();}
              errMsg+="The Recipient's Email Address is invalid\n";
            }
          }
        }

        if (!validateDate(f, "voucherPurchaseDate"))
        {
          if (errMsg=="") {f.voucherPurchaseDateDay.focus();}
          errMsg+="The Purchase Date is not a valid date\n";
        }

      break;

      case "voucherusedForm":

        if (empty(f.voucherusedAmount.value))
        {
          if (errMsg=="") {f.voucherusedAmount.focus();}
          errMsg+="Please enter the Amount Used\n";
        }
        else
        {
          if (!isNumeric(f.voucherusedAmount.value, 2))
          {
           if (errMsg=="") {f.voucherusedAmount.focus();}
            errMsg+="The Amount Used must be numeric, max 2 decimal places\n";
          }

        }

        if (!validateDate(f,"voucherusedDate"))
        {
          if (errMsg=="") {f.voucherusedDateDay.focus();}
          errMsg+="The Date Used is not a valid date\n";
        }
      break;

      case "voucherRefForm":
        if (empty(f.voucherRef.value))
        {
          if (errMsg=="") {f.voucherRef.focus();}
          errMsg+="Please enter your Voucher Number\n";
        }
        else
        {         if (!isNumeric(f.voucherRef.value))
          {
            if (errMsg=="") {f.voucherRef.focus();}
            errMsg+="That Voucher Number is not valid\n";
          }
        }
      break;

      case "voucherPurchaseForm":
        if (empty(f.purchaseRecipientName.value))
        {
          if (errMsg=="") {f.purchaseRecipientName.focus();}
          errMsg+="Please enter the Recipient's Name\n";
        }

        var radioLength = f.purchaseVoucherValue.length;
        var radioValue = "";
        for (var i=0; i < radioLength; i++)
        {
          if (f.purchaseVoucherValue[i].checked)
          {
            radioValue = f.purchaseVoucherValue[i].value;
            break;
          }
        }

        if (!isNumeric(radioValue) || (radioValue < 5 || radioValue > 250))
        {errMsg+="The Voucher Value must be numeric, minimum £10\n";}

        var radioLength = f.purchasePrintOption.length;
        var radioValue = "";
        for (var i=0; i < radioLength; i++)
        {
          if (f.purchasePrintOption[i].checked)
          {
            radioValue = f.purchasePrintOption[i].value;
            break;
          }
        }

        if (empty(f.purchasePurchaserEmail.value))
        {
          if (errMsg=="") {f.purchasePurchaserEmail.focus();}
          	 errMsg+="Please enter the your Email Address\n";
        }

        else
        {
          if (!checkEmail(f.purchasePurchaserEmail.value))
          {
          	if (errMsg=="") {f.purchasePurchaserEmail.focus();}
          	errMsg+="Your Email Address is not valid\n";
          }
        }

        switch (radioValue)
        {          case "Post to Recipient":
        	if (empty(f.purchaseRecipientAddress.value))
        	{
          	  if (errMsg=="") {f.purchaseRecipientAddress.focus();}
          	  errMsg+="Please enter the Recipient's Address\n";
        	}
          break;

          case "Email":
        	if (empty(f.purchaseRecipientEmail.value))
        	{
          	  if (errMsg=="") {f.purchaseRecipientEmail.focus();}
          	  errMsg+="Please enter the Recipient's Email Address\n";
        	}

        	else
        	{        	  if (!checkEmail(f.purchaseRecipientEmail.value))
        	  {
          	    if (errMsg=="") {f.purchaseRecipientEmail.focus();}
          	    errMsg+="The Recipient's Email Address is not valid\n";
        	  }
        	}

          break;

 		  default:
  		    //alert ("Invalid option");
        }
      break;

      case "voucherBalanceForm":
        if (empty(f.voucherRef.value))
        {
          if (errMsg=="") {f.voucherRef.focus();}
          errMsg+="Please enter the Voucher Reference No.\n";
        }
        else
        {
          if(!isNumeric(f.voucherRef.value))
          {
          	if (errMsg=="") {f.voucherRef.focus();}
          	errMsg+="The Voucher Reference No. is invalid\n";
          }
        }

        if (empty(f.purchaserEmail.value))
        {
          if (errMsg=="") {f.purchaserEmail.focus();}
          errMsg+="Please enter the Purchaser's Email Address\n";
        }
        else
        {
          if (!checkEmail(f.purchaserEmail.value))
          {
          	if (errMsg=="") {f.purchaserEmail.focus();}
          	errMsg+="The Purchaser's Email Address is not valid\n";
          }
        }

       break;

      case "voucherBalanceAdminForm":
        if (empty(f.voucherRef.value))
        {
          if (errMsg=="") {f.voucherRef.focus();}
          errMsg+="Please enter the Voucher Reference No.\n";
        }
        else
        {
          if(!isNumeric(f.voucherRef.value))
          {
          	if (errMsg=="") {f.voucherRef.focus();}
          	errMsg+="The Voucher Reference No. is invalid\n";
          }
        }
       break;

       default:
        return true;
    }

    if (errMsg!="")
    {
      alert(errMsg);
      return false;
    }
    else
    {
       if (confirmMessage!="")
       {
         if (confirm(confirmMessage)) {return true;}
         else {return false;}
       }
       else {return true;}
    }

  }

  function swapImage(n)
  {
    var mainPic = getElement("mainPicture");
    if (mainPic)
    {
      var newPicName = "largePic" + n;
      eval ("mainPic.src = " + newPicName + ".src;");
    }
  }

  function setCost()
  {
    if (reducedPriceItem) return;
    var f = getElement("purchaseForm");
    var itemPrice = getElement("itemPrice");
    var buyButton = getElement("buyButton");
    if (f && itemPrice && buyButton)
    {
       if (sizePresent)
       {
         var opt=f.selectedSizeID.selectedIndex;
         var sizeID=f.selectedSizeID.options[opt].value;
       }
       else {var sizeID = sizeIDXXX;}
       if (colourPresent)
       {
         var opt=f.selectedColour.selectedIndex;
         var colour=f.selectedColour.options[opt].value;
       }
       else {var colour = "";}

       if (sizePresent && colourPresent) {var combination = "This size/colour ";}
       else
       {
         if (sizePresent) {var combination = "This size ";}
         else
         {
           if (colourPresent) {var combination = "This colour ";}
           else {{var combination = "This item ";} }
         }
       }

       //alert("com = "+ combination);
       if (((sizePresent && sizeID != 0) || !sizePresent) && ((colourPresent && colour != "Please Choose") || !colour))
       {
       var price = "";
       var count = stockArray.length;  //alert ("count=" + count);
       for (var i=0; i<count; i++)
       {
         var s = stockArray[i];      //alert("sc=" + s.colour + ", c=" + colour + ", ss=" + s.sizeID + ", stock=" + s.stockLevel + ", col=" + colour + ", sid=" + sizeID + ", price=" + s.price);


         if ((s.colour == colour || !colourPresent) && (s.sizeID == sizeID || !sizePresent))
         { //alert ("c=" + colour + ", sID=" + sizeID + ", sPrice=" + s.price);
           if (s.stockLevel <= 0)
           {
             price = "<span class='unavailable'>" + combination + "temporarily unavailable<br /><a class=\"enquire\" href=\"enquire.php?baseItemID=" + f.baseItemID.value + "&colour=" + colour + "&sizeID=" + sizeID + "\">please enquire</a></span>";
             buyButton.disabled = true;
             buyButton.src = "/images/space.gif";
           }
           else
           { //alert ("sp=" + s.price);

             price = "£" + formatDecimal(s.price);
             buyButton.disabled = false;
             buyButton.src = "/buttons/addToCart.png";

             writeSelectOptions(s.stockLevel);
           }
           break;
         }
       }
       if (price != "")
       {
         itemPrice.innerHTML = price;
       }
       }
    }
  }

  function writeSelectOptions(stockLevel)
  { //alert("here=" + stockLevel);
    var s = getElement("purchaseQuantity");
    if (s)
    {
      var length = s.length-1;
      for (var i = length; i >= 0; i--) {s.options[i] = null;}
    }
    for (i = 1; i <= stockLevel; i++)
    {
      var option = new Option(i,i);
      var j = i - 1;
      s.options[j] = option;
    }
    s.options.length = stockLevel;

  }

  function recalcPostage()
  {
    var f = getElement("showCartForm");
    f.buttonPressed.value = "RecalcPostage";
    f.submit();
  }

  function setItemCategory(s)
  {
    if (s.selectedIndex == 0) {return;}
    if (s.name.substr(0,12) == "pageBaseItem")
    { // An item has been selected
      var id = parseInt(s.name.substr(12));
      var categorySelectID = "pageCategory" + id + "ID";
      var categorySelect = getElement(categorySelectID);
      if (categorySelect) {categorySelect.selectedIndex = 0;}
    }
    else
    { // A category has been selected
      var id = parseInt(s.name.substr(12));
      var itemSelectID = "pageBaseItem" + id + "ID";
      var itemSelect = getElement(itemSelectID);
      if (itemSelect) {itemSelect.selectedIndex = 0;}
    }
  }

  function setAddressFields()
  {
    var addressFields = new Array ("forename", "surname", "address1", "address2", "address3", "address4", "postcode", "phone", "email", "promotionCode");
    var f = getElement("orderhdrPrivateForm");
    if (f)
    {
      var opt=f.orderhdrNameAndAddressID.selectedIndex;
      var orderhdrNameAndAddressID=f.orderhdrNameAndAddressID.options[opt].value;
      if (orderhdrNameAndAddressID > 0) {var disabled = true;} else {var disabled = false;}

      var fieldCount = addressFields.length;
      for (var i=0; i<fieldCount; i++)
      {
        eval("f." + addressFields[i] + ".disabled = " + disabled);
        if (disabled) {eval ("f." + addressFields[i] + ".value = ''");}
      }
    }
  }

  function validateVoucherReference(voucherReference)
  {    return true;
  }