// 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 (confirm("Are you really sure you want to delete this record?"))
      {return true;}
      else {return false;}
    }
    var errMsg="";
    switch (f.name)
    {
      case "articleForm":
        if (empty(f.articleTitle.value))
        {
          if (errMsg=="") {f.articleTitle.focus();}
          errMsg+="Please enter the Title of the Article\n";
        }

        if (empty(f.articleAuthor.value))
        {
          if (errMsg=="") {f.articleAuthor.focus();}
          errMsg+="Please enter the Author of the Article\n";
        }

        if (empty(f.articlePublication.value))
        {
          if (errMsg=="") {f.articlePublication.focus();}
          errMsg+="Please enter the Publication in which the Article appeared\n";
        }

        if (!validateDate(f,"articlePublicationDate"))
        {
          if (errMsg=="") {f.articlePublicationDateDay.focus();}
          errMsg+="The Publication Date is not a valid date\n";
        }
        /*
        if (empty(f.articleFilename.value))
        {
          if (errMsg=="") {f.articleFilename.focus();}
          errMsg+="Please enter the articleFilename\n";
        }
        */
      break;

      case "awardForm":
        if (empty(f.awardYear.value))
        {
          if (errMsg=="") {f.awardYear.focus();}
          errMsg+="Please enter the Year of the Award\n";
        }
        else
        {
          if (!isNumeric(f.awardYear.value))
          {
            if (errMsg=="") {f.awardYear.focus();}
            errMsg+="The Year of the Award must be numeric\n";
          }
        }

        if (empty(f.awardTo.value))
        {
          if (errMsg=="") {f.awardTo.focus();}
          errMsg+="Please indicate who the Award is to\n";
        }
        /*
        if (empty(f.awardFor.value))
        {
          if (errMsg=="") {f.awardFor.focus();}
          errMsg+="Please indicate what the Award is for\n";
        }
        */
      break;

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

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


        // if (empty (f.address1.value) && empty (f.address2.value) && empty (f.address3.value))
        if (empty (f.address1.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) && empty (f.email.value))
        {
           if (errMsg=="")  {f.phone.focus();}
           errMsg+="Please enter either your Telephone number or Email Address\n";
        }
        else
        {
          if (!empty (f.email.value) && !checkEmail (f.email.value))
          {
            if (errMsg=="")  {f.email.focus();}
            errMsg+="That Email address is not valid\n";
          }
        }
        /*
        if (empty (f.comments.value))
        {
           if (errMsg=="")  {f.comments.focus();}
           errMsg+="Please enter details of your Enquiry\n";
        }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

        */
      break;

      case "eventForm":

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

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


        if (!checkTime(f.startTimeHour.value, f.startTimeMinutes.value))
        {
          if (errMsg=="") {f.startTimeHour.focus();}
          errMsg+="The Event Time is not a valid time\n";
        }

        if (empty(f.venue.value))
        {
          if (errMsg=="") {f.venue.focus();}
          errMsg+="Please enter the Venue for the Event\n";
        }

        /*
        if (empty(f.contactName.value))
        {
          if (errMsg=="") {f.contactName.focus();}
          errMsg+="Please enter the Name of the Contact for the Event\n";
        }
        */
        if (!empty(f.contactPhone.value) && !checkPhoneNo(f.contactPhone.value))
        {
          if (errMsg=="") {f.contactPhone.focus();}
          errMsg+="Phone Numbers must be numeric, at least 10 digits\n";
        }

        if (!empty(f.contactEmail.value) && !checkEmail(f.contactEmail.value))
        {
          if (errMsg=="") {f.contactEmail.focus();}
          errMsg+="That Email address is invalid\n";
        }
        /*

        if (!empty(f.field18.value)(f.field18.value))
        {
          if (errMsg=="") {f.field18.focus();}
          errMsg+="That field18 is invalid\n";
        }
        */
      break;

      case "lectureForm":
        if (empty(f.lectureTitle.value))
        {
          if (errMsg=="") {f.lectureTitle.focus();}
          errMsg+="Please enter the Title of the lecture\n";
        }

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

        var opt=f.lectureDateDay.selectedIndex;
        var day=f.lectureDateDay.options[opt].text;
        var opt=f.lectureDateMonth.selectedIndex;
        var month=f.lectureDateMonth.options[opt].text;

        if (day != "DD" || month != "MM")
        {
          if (!validateDate(f, "lectureDate"))
          {
            if (errMsg=="") {f.lectureDateDay.focus();}
            errMsg+="The Date of the lecture is not a valid date\n";
          }
        }
        /*
        if (empty(f.lectureTime.value))
        {
          if (errMsg=="") {f.lectureTime.focus();}
          errMsg+="Please enter the lectureTime\n";
        }

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

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

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

      case "linkForm":
        if (empty(f.linkName.value))
        {
          if (errMsg=="") {f.linkName.focus();}
          errMsg+="Please enter the Link Name\n";
        }
        /*
        if (empty(f.description.value))
        {
          if (errMsg=="") {f.description.focus();}
          errMsg+="Please enter the Description\n";
        }
        */
        if (empty(f.webAddress.value))
        {
          if (errMsg=="") {f.webAddress.focus();}
          errMsg+="Please enter the Web Address\n";
        }
        else
        {
          if (!checkURL(f.webAddress.value))
          {
            if (errMsg=="") {f.webAddress.focus();}
            errMsg+="That Web Address is not valid\n";
          }
        }

      break;

      case "newsForm":
        if (empty(f.title.value))
        {
          if (errMsg=="") {f.title.focus();}
          errMsg+="Please enter the Title of the Item\n";
        }

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

        if (!validateDate(f, "newsDate"))
        {
          if (errMsg=="") {f.newsDateDay.focus();}
          errMsg+="That Date is not a valid date\n";
        }

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

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

       break;

       case "publicationForm":
        if (empty(f.publicationTitle.value))
        {
          if (errMsg=="") {f.publicationTitle.focus();}
          errMsg+="Please enter the Publication Title\n";
        }

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

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

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

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

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

      default:
      return true;
    }

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