// 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)

         To test the value of the selected radio button
              var radioLength = f.radioname.length;
              var radioValue = "";
              for (var i=0; i < radioLength; i++)
              {
                if (f.radioname[i].checked)
                {
                  radioValue = f.radioname[i].value;
                  break;
                }
              }
    */
    if (f.buttonPressed.value=="Cancel") {return true;}
    if (f.buttonPressed.value=="Delete")
    {
      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 "categoryForm":
        if (empty(f.categoryName.value))
        {
          if (errMsg=="") {f.categoryName.focus();}
          errMsg+="Please enter the Category Name\n";
        }

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

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

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

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

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

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

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

        if (empty(f.baseItemField10.value))
        {
          if (errMsg=="") {f.baseItemField10.focus();}
          errMsg+="Please enter your baseItemField10\n";
        }
        */
        if(f.includedInCategoryCount.value==0) {confirmMessage="There are no Categories selected for this BaseItem. Proceed?";}
        else {confirmMessage="";}
      break;

      case "weblinkForm":
        if (empty(f.weblinkName.value))
        {
          if (errMsg=="") {f.weblinkName.focus();}
          errMsg+="Please enter the weblink Name\n";
        }
        /*
        if (empty(f.weblinkDescription.value))
        {
          if (errMsg=="") {f.weblinkDescription.focus();}
          errMsg+="Please enter the Description\n";
        }
        */
        if (empty(f.weblinkWebAddress.value))
        {
          if (errMsg=="") {f.weblinkWebAddress.focus();}
          errMsg+="Please enter the Web Address\n";
        }
        else
        {
          if (!checkURL(f.weblinkWebAddress.value))
          {
            if (errMsg=="") {f.weblinkWebAddress.focus();}
            errMsg+="That Web Address is not valid\n";
          }
        }

        if (!empty(f.weblinkSequence.value) && !isNumeric(f.weblinkSequence.value))
        {
          if (errMsg=="") {f.weblinkSequence.focus();}
          errMsg+="If entered the Display Sequence must be numeric\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 updateInCategoryCount(thisCheckbox)
  {
    // Updates a count of the number of Categories this item is included in so that a warning message can be given
    var e=getElement("baseItemForm");
    var catCount=Number(e.includedInCategoryCount.value);
    if (thisCheckbox.checked) {catCount++;}
    else {catCount--;}
    e.includedInCategoryCount.value=catCount;
  }

  function swapImage(newImage)
  {
    var e = getElement("mainImage");
    if (e)
    {
      e.src = eval (newImage + ".src");
    }
  }
