
<!--
   
   /* ******************************* */
    function redirect(url) {
      if (url == null) {
	    window.location = window.self;
	  } else {
	    window.location = url;
	  }
	} // end function redirect 

   /* ******************************* */
    function redirectAndExit (url) {
       if (window.opener != null) {
         var parent = window.opener;
             parent.location = url;
             window.close();
       } else {
         window.location = url; 
       }
	}   
	
   /* ******************************* */
   function openwin(url,x,y,left,top,alt_win,custom_screen) {
        var win_options = ',scrollbars=1,resizable=1';
        openWinWrapper (url,x,y,left,top,
                        alt_win,custom_screen,
                        win_options
                        );

   } // end function openwin
   
   /* ******************************* */
   function openwinFull(url,x,y,left,top,custom_screen) {  
    var win_options = ',scrollbars=1,resizable=1';
        win_options +=',directories=1,location=1,';
        win_options +=',menubar=1,status=1,toolbar=1';
	var alt_win     =  'newwinName'; 	
        openWinWrapper (url,x,y,left,top,
                        alt_win,custom_screen,
                        win_options
                        );
   } // end function openwinFull
   
   /* ******************************* */
   function openWinWrapper (url,x,y,
                            left,top,
                            alt_win,custom_screen,
                            win_options) {
      
	  // special condition, pop-up on pop-up is 
	  // marked iff custom_screen==1 and alt_win = value
	  var isThisPopupOnPopup = -1;
	  
	  // where to go, bail out
      if (entryIsEmpty(url)) {
	     return false;
      }
      // default New pop-up Window Options
      var winOptions = ',scrollbars=1,resizable=1';
      // openwindow options parameters
      if ((win_options !== undefined) &&  
          (!entryIsEmpty(win_options))
         ) {
         winOptions = win_options;
      }
      // default New Screen Name
      var newwinName = 'newwinName';
      if ((alt_win  !== undefined) &&  
          (!entryIsEmpty(alt_win ))
         ) {
           newwinName = alt_win;
		   // has an alternate window
		   isThisPopupOnPopup += 1;		   
      }

      // assume a standard pop-up format unless 
      // we have custom parameters that ignore 
      // standard pop-up definitions and ratios
      var STANDARD_POPUP = 1;   

      var defaultY      = 0.75;  // height 
      var defaultX      = 0.75;  // width
      var defaultTop    = 0.25; // 25% from top viewing
      var defaultLeft   = 0.05; // 5%  from left viewing
    
      var myY    = (y    ? getNumber(y)    : defaultY    );
      var myX    = (x    ? getNumber(x)    : defaultX    );
      var myTop  = (top  ? getNumber(top)  : defaultTop  );
      var myLeft = (left ? getNumber(left) : defaultLeft );
    
      // find out if we want a custom pop-up.
      // rules: 1) custom param == 1 
      //        -- parameters are read verbatum
      //        2) params y,x are > 1 
      //        -- if 0 <= range <= 1, it denotes percentage
      //        -- in a standard pop-up

      if ( ((custom_screen!== undefined) && 
            (custom_screen == 1)) ||
           ((!isWithinRange (myY)) && (!isWithinRange (myX)))
         ) {
         STANDARD_POPUP = 0;
		 // also request custom, so it must be a pop-up on pop-up
		 isThisPopupOnPopup += 1;
      }

      // array that has relevant browser screen information  
      var allScreenValues = new Array();
          allScreenValues = [-1,-1,-1,-1,-1,-1,-1,-1];
      // pass by reference, populate data inside
      getBrowserScreenValues (allScreenValues);
      // values for array index for easier undestanding
       var SCREEN_X     = 0; var IN_SCREEN_X = 1;
       var OUT_SCREEN_X = 2; var START_X     = 3;
       var SCREEN_Y     = 4; var IN_SCREEN_Y = 5;
       var OUT_SCREEN_Y = 6; var START_Y     = 7;
          
       // the first pixel in the X axis inside the 
       // browser viewing area
       var inCurPosX =  allScreenValues [START_X]; 
       // the first pixel in the Y axis inside the 
       // browser viewing area
       var inCurPosY =  allScreenValues [START_Y]; 
     
       // browser inside wiewing area with respect to Y        
       var inScreenSizeY  = allScreenValues [IN_SCREEN_Y];
       // browser inside wiewing area with respect to X 
       var inScreenSizeX  = allScreenValues [IN_SCREEN_X];
    
       // calculated requested offsets, 
       var inCalcScreenY = 0;
       var inCalcScreenX = 0;
       // parameters denoting the pop-up value with respect to 
       // the current browser screen
       var popUpHeight   = 0;  
       var popUpWidth    = 0;
       // starting points for pop-up (y,x)   
       var topY  = 0;
       var leftX = 0;
	   
       if (STANDARD_POPUP == 1) {
         // this is a standard pop-up and make sure the 
         // ratios are in percentage
          inCalcScreenY = Math.round(inScreenSizeY * 
                          (isWithinRange (myTop) ? 
                                          myTop: 
                                         (myTop/100.00))
                          );
          inCalcScreenX = Math.round(inScreenSizeX * 
                          (isWithinRange (myLeft) ? 
                                          myLeft: 
                                          (myLeft/100.00))
                           ); 
		  // if have pop-up on pop-up then do not take the entire screen
	      // for popUpWidth  = inScreenSizeX - (2*inCalcScreenX);
	      if (isThisPopupOnPopup == 1) {
	         popUpHeight = Math.round(inScreenSizeY * 
                           (isWithinRange (myY) ? 
                                           myY: 
                                          (myY/100.00))
                           ); 
             popUpWidth  = Math.round(inScreenSizeX * 
                          (isWithinRange (myX) ? 
                                          myX: 
                                         (myX/100.00))
                           ); 
	      } else {	 				   
             popUpHeight = inScreenSizeY - inCalcScreenY; 
             popUpWidth  = inScreenSizeX - (2*inCalcScreenX);
		  }	 
       } else {
        // copy varbatum from user parameters
         inCalcScreenY = Math.round(inScreenSizeY * 
                          (isWithinRange (myTop) ? 
                                          myTop: 
                                         (myTop/100.00))
                          );
         inCalcScreenX = Math.round(inScreenSizeX * 
                          (isWithinRange (myLeft) ? 
                                          myLeft: 
                                          (myLeft/100.00))
                           ); 
		 // if have pop-up on pop-up then do not take the entire screen
	     // for popUpWidth  = inScreenSizeX - (2*inCalcScreenX);
	     if (isThisPopupOnPopup == 1) {
	         popUpHeight = Math.round(inScreenSizeY * 
                           (isWithinRange (myY) ? 
                                           myY: 
                                          (myY/100.00))
                           ); 
             popUpWidth  = Math.round(inScreenSizeX * 
                           (isWithinRange (myX) ? 
                                           myX: 
                                          (myX/100.00))
                           ); 
	     } else {	 	
		    // working with pixels, get the minimum ???			   
             popUpHeight = Math.min(myY,inScreenSizeY - inCalcScreenY); 
             popUpWidth  = Math.min(myX,inScreenSizeX - (2*inCalcScreenX));
		 }	 
       } 
       // starting points for pop-up (y,x)   
       topY  = inCurPosY + inCalcScreenY;
       leftX = inCurPosX + inCalcScreenX;
			   
       var newwin = 
           window.open(url,newwinName,
                      'width=' + popUpWidth + 
                      ',height=' + popUpHeight +
                      ',screenX=' +  leftX + 
                      ',screenY='+ topY + 
                      ',left='+ leftX +
                      ',top=' + topY + 
                      winOptions );
          newwin.focus;
   } // end function openwinWrapper
   
   
   /* ******************************* */
   // find out relevant screen sizes for different browsers  
   function getBrowserScreenValues (screenArrayObj) {
     // check if we are passed an array 
     // NOTE: array is passed by reference and the 
     // data will be updated here
     // array[0] = Screen Width (Monitor Resolution)
     // array[1] = Inner Screen Width (Browser)
     // array[2] = Outer Screen Width (Browser)
     // array[3] = Width Starting Point (Browser viewing area)
     // -----------------------------------------------------
     // array[4] = Screen Height (Monitor Resolution)
     // array[5] = Inner Screen Height (Browser)
     // array[6] = Outer Screen Height (Browser)
     // array[7]= Height Starting Point (Browser viewing area)
  
       if ( (typeof (screenArrayObj) == 'object' ) &&
            (screenArrayObj.constructor == Array)
          ) {
          // common to both browsers
          // Screen Width 
          screenArrayObj[0] = self.screen.width;
          // Screen Height
          screenArrayObj[4] = self.screen.height;
      
          var isIE = (navigator.appName.toLowerCase() ==  
                      "microsoft internet explorer");
          var isNN = (navigator.appName.toLowerCase() ==
                      "netscape");     
 
          // find out for non-IE 
          if( (isNN) && 
              (typeof( window.innerWidth ) == 'number' )
            ) {
            // Inner Screen Width (Browser)
            screenArrayObj[1] = window.innerWidth;
            // Outer Screen Width (Browser)
            screenArrayObj[2] = window.outerWidth;
            // Width Starting Point (Browser viewing area)
            screenArrayObj[3] = window.screenX;
            // ----------------------------
            // Inner Screen Height (Browser)
            screenArrayObj[5] = window.innerHeight;
            // Outer Screen Height (Browser)
            screenArrayObj[6] = window.outerHeight;
            // Height Starting Point (viewing area) 
            // NOTE: different from IE as it need to 
            // calculate diff top to viewing area 
            screenArrayObj[7] =  window.screenY + 
                                 (window.outerHeight - window.innerHeight); 
          // END if NN
          } else if ( (isIE) &&
                      (document.documentElement) &&
                      (document.documentElement.clientWidth ||
                       document.documentElement.clientHeight) 
                    ) {
            //IE 6+ in 'standards compliant mode'
            // Inner Screen Width (Browser)
            screenArrayObj[1] = document.documentElement.clientWidth;
            // Outer Screen Width (Browser)
            screenArrayObj[2] = window.screen.availWidth;
            // Width Starting Point (Browser viewing area)
            screenArrayObj[3] = window.screenLeft;
            // ----------------------------
            // Inner Screen Height (Browser)
            screenArrayObj[5] = document.documentElement.clientHeight;
            // Outer Screen Height (Browser)
            screenArrayObj[6] =  document.documentElement.offsetHeight;
            // Height Starting Point (viewing area)        
            screenArrayObj[7] = window.screenTop;
            // END if IE 6+
          } else if( (document.body) && 
                     (document.body.clientWidth ||
                      document.body.clientHeight) 
                   ) {
            //IE 4 compatible
            // Inner Screen Width (Browser)
            screenArrayObj[1] = document.body.clientWidth;
            // Outer Screen Width (Browser)
            screenArrayObj[2] = window.screen.availWidth;
            // Width Starting Point (Browser viewing area)
            screenArrayObj[3] = window.screenLeft;
            // ----------------------------
            // Inner Screen Height (Browser)
            screenArrayObj[5] = document.body.clientHeight;
            // Outer Screen Height (Browser)
            screenArrayObj[6] = document.body.offsetHeight;
            // Height Starting Point (viewing area)        
            screenArrayObj[7] = window.screenTop;
            // END if IE compatible
          }
       } // end if this is an array
      return;
    } // end function getBrowserScreenValues
   
   // find out if we have a valid input, float/integer
    function getNumber (num_) {
        var retVal     = 0.0;
        var intRegex   = /^\d+$/;
        var floatRegex = /^((\d+(\.\d*)?)|((\d*\.)?\d+))$/;    
     
        if ( (num_ !== undefined) && 
             (!entryIsEmpty(num_)) ) {  
           if ( floatRegex.test(num_)) {
             retVal = num_;
           } else if ( intRegex.test(num_)) {
             retVal = num_;
           }
        }
     return retVal;
    } // end function getNumber
  
    // return true/false if the value is [0,1] inclusive
    function isWithinRange (value_) {
       if ((value_ >= 0) && (value_ <= 1)) {
         return true;
       } else {
         return false;
       }
    } // end function isWithinRange
  
    // check if entry has value
    function entryIsEmpty(value_) {   
       return ((value_ == null) || (value_.length == 0))
    } // end function entryIsEmpty
   
    /* ******************************* */
	function fieldHasValue (obj_) {
	  /* assign worst case scenario first */ 
	  var b_has_value = false;
  
  	  if ( (obj_ !== undefined) && 
           (typeof obj_ == "object") ) {
        switch(obj_.type) {
	      case "text": 
            {
              obj_.value  = trimString(obj_.value);
              b_has_value = (obj_.value.length > 0);
            }
	        break;
	      case "textarea": 
            b_has_value = (obj_.value.length > 0);
	        break;
	      case "password": 
	        b_has_value = (obj_.value.length > 0);
	        break;
	      case "select-one":
	      case "select-multiple":   
	        b_has_value = isItemSelected(obj_);
	 		break;
	      case "radio":
	      case "checkbox":
	  	    b_has_value = isItemChecked(obj_);
	        break;
	      default: 
		    break;
	     /* add for types file,button,hidden */
	    } /* end switch */
     } //end if
   /* returns the true/false condition */
   return  b_has_value;
   }  // end function fieldHasValue
   
   /* ******************************* */
   function isItemSelected(obj_) {
     var b_ret_type = false;
  
     if (obj_ !== undefined) {
       for (i=0; i < obj_.length; i++) {
         if ( (obj_.options[i].selected) &&  
	          (obj_.options[i].value != "") ) {
	           b_ret_type = true;
	 	       break;  
	     } /* end if  */	 
       } /* end for loop */
     } /* end if */
  
     /* returns the true/false condition */
     return b_ret_type;
   } // end function isItemSelected
    
	/* ******************************* */
	function isItemChecked(obj_) { 
      var b_ret_type = false;

      if (obj_ !== undefined) {
        for (i=0; i < obj_.length; i++) {
	      if (obj_[i].checked) {
	 	    b_ret_type = true;
	 	    break;
	 	  }
	    } /* end for */
      }
      /* returns the true/false condition */
     return b_ret_type;
	} // end function isItemChecked
 
 	/* ******************************* */
   	function isStringsEqual(obj1_,obj2_,rule_value_) {
    /* compare two strings after removing leading/trailing characters */
    /* based on the condition match i.e.  */
      var b_ret_type = false;
      var rule_type  = (rule_value_ === undefined) ? "equal" : (rule_value_.toLowerCase());
    
	  switch(rule_type) {
	    case "equal": 
	      b_ret_type = (obj1_.value == obj2_.value);
	 	  break;
	    case "lower":
	      b_ret_type = (obj1_.value.toLowerCase() == obj2_.value.toLowerCase());
	 	  break;
	    case "upper": 
	      b_ret_type = (obj1_.value.toUpperCase() == obj2_.value.toUpperCase());
	  	  break;
	    default: 
		  break;
      } /* end switch */
	  
      /* returns the true/false condition */
      return b_ret_type;
    } // end function isStringsEqual

    /* ******************************* */
   	function checkValidEmail(obj_) {
     /* this covers the RegeX for more general e-mail format */
     /* it does not check for proper end i.e. if it is .com etc */
     var emailreg = /^[a-zA-Z0-9._-]+@([a-zA-Z0-9.-]+\.)+[a-zA-Z0-9]{2,7}$/;
     var b_ret_type = false;
  
     if ( (obj_ !== undefined) &&
          (obj_.value.length > 0) ) {
        /* does user email abide by regex ... */
	    b_ret_type = emailreg.test(obj_.value);
     }
  
     /* returns the true/false condition */
     return b_ret_type;
    } // end function checkValidEmail
  
    /* ******************************* */
   	function checkValidZipCode(obj_) {
     /* this covers the RegeX for more general zip code format */
     /* i.e. either 5 digit number or 5 digit followed by - and 4 numbers */
     var zipcodereg = /\d{5}(-\d{4})?/;
     var b_ret_type = false;
  
     if ( (obj_ !== undefined) &&
          (obj_.value.length > 0) ) {
        /* does user email abide by regex ... */
	    b_ret_type = zipcodereg.test(obj_.value);
     }
  
     /* returns the true/false condition */
     return b_ret_type;
    } // end function checkValidZipCode
  
  
    /* ******************************* */
    /* trims white space in the begining and the end of the string */
    function trimString(obj_value_) {
      var tmp_str ="";
  
      if (obj_value_ !== undefined) {
        tmp_str = obj_value_;
        tmp_str = tmp_str.replace(/^\s+/,"");
        tmp_str = tmp_str.replace(/\s+$/,""); 
      } 
  
      /* worst case scenario it returns an empty string */
      return tmp_str;
    } // end function trimString

    /* ******************************* */
	function convertDateDispatcher (date_obj_) {
      var ret_date = "NA/NA/NANA";
      regexForm1 = /^\d{1,2}\/\d{1,2}\/\d{2,4}$/;	
      regexForm2 = /^\d{1,2}-\w{3}-\d{2,4}$/;	 
      if (date_obj_.value !== undefined) {
          if (regexForm1.exec(date_obj_.value)) {
	        date_obj_.value = reverseConvertDateValue (date_obj_.value);
		    ret_date = convertDateValue(date_obj_.value);
	      } else if (regexForm2.exec(date_obj_.value)) {
	        var tmpDateVal = date_obj_.value;
	        ret_date = convertDateValue(date_obj_.value);
	      }
      }	  
      return ret_date;
    } // end function convertDateDispatcher

    /* ******************************* */
    function reverseConvertDateValue (date_) {
      var ret_date = "NA-NAN-NANA";
      if (date_ !== undefined) {
  	     var split_fields = date_.split(/\//);
	     // this should split into three arrays
	     if (split_fields.length != 3) {
	       return ret_date;
	     } else {
	       // format should be converted to dd-mon-yyyy from mm/dd/yyyy
	       ret_date = split_fields[1];
	       ret_date += "-";
	       ret_date += convMonthFromMMtoMON(split_fields[0]);
	       ret_date += "-";
	       ret_date += convYrFromYYtoYYYY(split_fields[2]);
	     }
      } //end if
      return ret_date;
    } // end function reverseConvertDateValue

    /* ******************************* */
    function convertDateValue (date_) {
      var ret_date = "NA/NA/NANA";
      if (date_ !== undefined) {
  	     var split_fields = date_.split(/-/);
	     // this should split into three arrays
	     if (split_fields.length != 3) {
	       return ret_date;
	     } else {
	       // format should be converted to mm/dd/yyyy
	       ret_date = convMonthFromMONtoMM(split_fields[1]);
	       ret_date += "/";
	       ret_date += split_fields[0];
	       ret_date += "/";
           ret_date += convYrFromYYtoYYYY(split_fields[2]);
	     }
      } //end if
      return ret_date;
    } // end function convertDateValue

    /* ******************************* */
    function convMonthFromMONtoMM(month_) {
      var ret_month="NA";		 
        if (month_ !== undefined) {
	      var tmp_month = month_.toUpperCase();
	      switch(tmp_month) {
	        case 'JAN': ret_month = "01"; break;
		    case 'FEB': ret_month = "02"; break;
		    case 'MAR': ret_month = "03"; break;
		    case 'APR': ret_month = "04"; break;
		    case 'MAY': ret_month = "05"; break;
		    case 'JUN': ret_month = "06"; break;
		    case 'JUL': ret_month = "07"; break;
		    case 'AUG': ret_month = "08"; break;
		    case 'SEP': ret_month = "09"; break;
		    case 'OCT': ret_month = "10"; break;
		    case 'NOV': ret_month = "11"; break;
		    case 'DEC': ret_month = "12"; break;
	        default: break;
	      } // end switch
        } // end if 
      return ret_month;
    }  // end function convMonthFromMONtoMM

    /* ******************************* */
    function convMonthFromMMtoMON(month_) {
      var ret_month="NAN";
      intRegexMon = /^\d{1,2}$/;		 
      if (month_ !== undefined) {
	    if (intRegexMon.exec(month_)) {
	        var tmp_month = parseInt( removeOctalVal(month_) );
	        switch(tmp_month) {
	          case 1:  ret_month = "JAN"; break;
		      case 2:  ret_month = "FEB"; break;
		      case 3:  ret_month = "MAR"; break;
		      case 4:  ret_month = "APR"; break;
		      case 5:  ret_month = "MAY"; break;
		      case 6:  ret_month = "JUN"; break;
		      case 7:  ret_month = "JUL"; break;
		      case 8:  ret_month = "AUG"; break;
		      case 9:  ret_month = "SEP"; break;
		      case 10: ret_month = "OCT"; break;
		      case 11: ret_month = "NOV"; break;
		      case 12: ret_month = "DEC"; break;
	          default: break;
	        } // end switch
          } // end if
	    } // end if 
      return ret_month;
    }  // end function convMonthFromMMtoMON

	/* ******************************* */
    function convYrFromYYtoYYYY(year_) {
      var ret_year = "NANA";
      intRegex = /^\d{2}$/;
      // if the year is already 4 digits then no need to convert
      intRegexYYYY = /^\d{4}$/;
      if (year_ !== undefined) { 
        if (intRegexYYYY.exec(year_)) {
	      return year_;
	    }
        if (intRegex.exec(year_)) {
  	      var yy_year = parseInt( removeOctalVal(year_) );
	      // is it really a fix ...
	      if (yy_year >= 0 && yy_year < 50) {
	 	     yy_year +=100;
	      } 
	      // add the 1900 in both cases
	      yy_year +=1900
          ret_year = yy_year.toString();
        }
      } // end if
      return ret_year;
    } // end function convYrFromYYtoYYYY

	/* ******************************* */
    function checkValidDate(date_) {
       // expect input of format mm/dd/yyyy
       dateRegex = /^\d{2}\/\d{2}\/\d{4}/;
       var b_ret_type = false;
       if (date_ === undefined) {
          return b_ret_type;
       }
       // regex is acceptable ? 
       if (!dateRegex.exec(date_)) {
          return b_ret_type;
       }
       var strSeparator = '/';
       var arrayDate = date_.split(/\//);
       var intMonth  = parseInt( removeOctalVal(arrayDate[0]) );
       var intDay    = parseInt( removeOctalVal(arrayDate[1]) );
       var intYear   = parseInt( removeOctalVal(arrayDate[2]) );
   
       // check the worst case scenario for day range
       if ((intDay < 1) || (intDay > 31)) {
          return b_ret_type;
       }
   
       switch(intMonth) {
          case 1:
          case 3:
          case 5:
          case 7:
          case 8:
          case 10:
          case 12: if (intDay <= 31) {b_ret_type = true;}; break;  
          case 2:  b_ret_type =  checkValidFebruaryDates(intDay,intYear); break;
          case 4:
          case 6:
          case 9:
          case 11: if (intDay <= 30) {b_ret_type = true;}; break; 
          default: break;
       } // end switch	
     // return worst case scenario
     return b_ret_type; 
   } // end function checkValidDate
  
   /* ******************************* */
   function checkValidFebruaryDates(day_,year_) {
      if ( ((year_ % 4 == 0) && (year_ % 100 != 0)) || 
            (year_ % 400 == 0) ) { 
          // leap year
         if (day_ <= 29) { 
           return true 
         } 
      } else { 
        // non leap year 
         if (day_ <= 28) { 
           return true; 
         } 
      } 
      // return worst case scenario
      return false;
    }  // end function checkValidFebruaryDates

    /* ******************************* */
    function compareTwoDates(date1_,date2_) {
      // expects date1_ < date2_
      // returns
      // 0 -> same, 1 -> (date1 > date2), 
      // 2 -> (date1 < date2) 
      // the dates have to be on proper format and proper value 
      // in format (mm/dd/yyyy). Error checking should be done beforehand.
       var dt1_ = new Date(date1_);
       var dt2_ = new Date(date2_);
       var diff_ = dt2_.getTime() -  dt1_.getTime();
  
       if (diff_ > 0 ) {
         return 2;
       } else if (diff_ < 0 ) {
         return 1;
       } else {
         return 0;
       }
     }  // end function compareTwoDates

	 /* ******************************* */
     // It seems that if a string is of value '08' and '09'
     // and you call parseInt() it will return you 0 not 8/9
     // it is a design feature of JavaScript, it assumes anything
     // starting with 0 has an octal interpretation.
     function removeOctalVal(value_) {
       // run this method only if the input has at least
       // one non-zero element before zeros
       nonZeroRegex = /[^0]/;
       if (nonZeroRegex.exec(value_) ) {  
          while (value_.charAt(0) == '0') {
            value_ = value_.substring(1, value_.length);
          } // end while
       }
       return value_;
     } // end function removeOctalVal

	/* ******************************* */
   	function getErrorToken(name_) {
      var ret_str = "";
      
      if ( name_ !== undefined ) {
        var tmp_str = name_.toLowerCase();
        /* this is hardcoded */
	      switch(tmp_str) {
	        case "fname": 
              case "p_fname": 
			    ret_str = "first name";
	 	        break;
	        case "sname":
		    ret_str = "second name";
	 	        break;
               case "p_mname":
		    ret_str = "middle name";
	 	        break;
	        case "lname": 
              case "p_lname":
	          ret_str = "last name";
	 	      break;
		  case "ename":
		  case "p_name":	
			  ret_str = "your name";
	 	      break;
              case "p_job_title":
                ret_str = "job title";
	 	        break;
	        case "ptitle": 
	          ret_str = "professional title";
	 	        break;
	        case "org":
              case "p_org":
	          ret_str = "organizational unit";
	 	        break;
	        case "dept": 
	          ret_str = "department";
	 	        break;
		  case "addr1": 
              case "p_addr1":
	          ret_str = "first line of your address";
	 	        break;
	        case "addr2":
              case "p_addr2":   
	          ret_str = "second line of your address";
	 	        break;
	        case "city": 
              case "p_city":
	          ret_str = "city";
	 	        break;
		  case "province":
              case "p_province": 
	          ret_str = "province";
	 	        break;
		  case "zip": 
              case "p_zip":
	          ret_str = "zip/postal code";
	 	        break;
		  case "country":
              case "p_country": 
	          ret_str = "country";
	 	        break;
		  case "efrom": 
		  case "p_email_from":
	          ret_str = "your email address";
	 	        break;
		  case "eto": 
		  case "p_email_to":
	          ret_str = "recipient's email address";
	 	        break;
		  case "email": 
              case "p_email":
	          ret_str = "email address";
	 	        break;
		  case "email2":
              case "emailv": 
	        case "p_emailv":
                ret_str = "verify email address";
	 	        break;
		  case "email_mismatch": 
	          ret_str = "email addresses do not match";
	 	        break;  
		  case "phone": 
              case "p_phone":
	          ret_str = "phone number";
	 	        break;
		  case "fax": 
              case "p_fax":
	          ret_str = "fax number";
	 	        break;
		  case "subject": 
	          ret_str = "subject message";
	 	        break;
		  case "message": 
			   ret_str = "your question/feedback";
	 	        break;
		  case "logistic": 
	          ret_str = "your logistic question";
	 	        break;
		  case "logistic_news": 
	          ret_str = "your logistic news";
	 	        break;
		  case "logistic_question": 
	          ret_str = "your technical question";
	 	        break;
		  case "emsg": 
			   ret_str = "your personal message";
	 	        break;	
		  case "pub_copies_cd":
			  ret_str="number of copies requested";
				break;
		  case "err_msg_hdr_missing":
			  ret_str="Please fill in the following fields:\n";
				break;
		  case "err_msg_hdr_missing_single":
			  ret_str="Please fill in the following field:\n";
				break;	
		  case "err_msg_hdr_invalid":
			  ret_str="Please correct the following fields:\n"
				break;
		  case "err_msg_hdr_invalid_single":
			  ret_str="Please correct the following field:\n"
				break;	
		  case "p_username":
			  ret_str="your username";
				break;	
		  case "p_password":
			  ret_str="your password";
				break;	
		  case "p_confirm_password":
			  ret_str="confirm your password";
			  break;
		  case "p_notes":
			  ret_str="additional information";
				break;	
		  case "p_message":
			  ret_str="your personal message";
				break;	
	        default: 
		        break;
        } /* end switch */
	    } /* end if */
      /* returns the true/false condition */
      return ret_str;
    } // end function getErrorToken
	
	

-->