        function onSubmitForm_old(f) {
           allBlank=true;
           el = document.getElementById('firstNameText');
           if (el.value.length < 1) {
             allBlank=false;
           }          
           return allBlank;
        }
                
       function onSubmitForm(submitAs) {
           var allNotBlank=true, emailFormatValid=true, firstNameValid=true, lastNameValid=true;
           var e1, passedValidation, errName;
           var myFields, myFieldNames;
           if (submitAs == 'teacher') {
               myFields = ['firstNameText','lastNameText','customerEmailText','subjectText','gradeText','cityText','commentText']; 
               myFieldNames = ['first name','last name','email','subject','grade','city','comment']; 
           } else {
               myFields = ['firstNameText','lastNameText','customerEmailText','numChildrenText','ageChildrenText','cityText','commentText']; 
               myFieldNames = ['first name','last name','email','# of children','age of children','city','comment']; 
           }
           stateField =['stateText'];
           hideErrorElems(myFields);
           hideErrorElems(stateField);
           for( var i=0; i < myFields.length; i++ )
           {
               el = document.getElementById(''+myFields[i]+'');
               if (trim(el.value).length < 1) {
                  errName = 'err_'+myFields[i];
                  displayErrElem(''+errName+'');
                  allNotBlank=false;
               }  
           }
           var stateEl = document.getElementById('stateText');

           if (stateEl.selectedIndex == 0) {
                  displayErrElem('err_stateText');
                  allNotBlank=false;
           }
           emailFormatValid = validateEmailFormat();
           //firstNameValid   = validateNameFormat('firstNameText');
           //lastNameValid    = validateNameFormat('lastNameText');
           firstNameValid   = true;
           lastNameValid    = true;

           // validate terms checked
           var termsChecked = document.getElementById('okToPublish').checked;
           if (!termsChecked) {
                displayErrElem('err_okToPublishCB');
                displayErrElem('js_okToPublish_msg');
           }

           pastedValidation  = (allNotBlank && emailFormatValid && firstNameValid && lastNameValid && termsChecked);
           if (allNotBlank==false){
               displayErrElem('js_error_msg');
           } 
           if (emailFormatValid==false){
               displayErrElem('js_email_error_msg');
           }
           return pastedValidation;            
        }
        
        function validateEmailFormat() {
           var formatCorrect = true;
           var rx=new RegExp("^[a-zA-Z0-9\\.\\!\\#\\$\\%\\&\\'\\*\\+\\-\\/\\=\\?\\^\\_\\`\\{\\|\\}\\~]+@[a-zA-Z0-9._%-]+\\.[a-zA-Z]{2,4}$");
           el = document.getElementById('customerEmailText');
           if(!rx.test(el.value) && el.value.length > 0){
             displayErrElem('err_customerEmailText');
             formatCorrect = false;
           }
           return formatCorrect;
        }
        
        function validateNameFormat(name){
           var formatCorrect = true;
           var rx=new RegExp("^([A-Za-z])*\\s*([A-Za-z])*\\s*([A-Za-z])*$");
           elem = document.getElementById(''+name+'');
           if(!rx.test(elem.value)){
             formatCorrect = false;
             displayErrElem('js_name_error_msg');
             errName = 'err_'+name;
             displayErrElem(''+errName+'');            
           }
           return formatCorrect;    
        }
        
        function displayErrElem(name){
           var tempDiv = document.getElementById(name);
           tempDiv.style.display='inline';
        }
        
       function hideErrElem(name){
           var tempDiv = document.getElementById(name);
           if (tempDiv != null) {
                tempDiv.style.display='none';
           }
        }
        
        function hideErrorElems(submitAs){
            var myFields = submitAs;
            hideErrElem('js_error_msg');
            hideErrElem('js_email_error_msg');
            hideErrElem('js_name_error_msg');
            hideErrElem('err_okToPublishCB');
            hideErrElem('js_okToPublish_msg');
            hideErrElem('formErrors');
            for( var i=0; i < myFields.length; i++ )
            {
               errName = 'err_'+myFields[i];
               el = document.getElementById(''+errName+'');
               if (el != null) {
                    el.style.display='none';
               }
            }
        }

        function trim(str) { 
            charFound = false;
            i = 0;

            while (( i < str.length ) && (!charFound)) {
            if (str.charAt(i) != " ") {
              charFound = true;
              str = str.substring(i, str.length);
            }
            i++;
            }

            if (charFound) {
            endCharFound = false;
            i = str.length - 1;
            while (( i >= 0) && (!endCharFound)) {
              if (str.charAt(i) != " ") {
                endCharFound = true;
                str = str.substring(0, i+1);
              }
              i--;
            }
            return str;
            } else {
            return "";
            }
        }

        function disableSubmit()
        {
             var uploadmsg = document.getElementById("uploadMessage");
             var submitButton = document.getElementById("submit_submission");
             if (submitButton != null) {
                submitButton.style.display='none';
             } 
             if (uploadmsg != null) {  
                uploadmsg.style.display='block';
             } 
        }         