
function jsIsDate(varDate)
  {
   varOcurrance = 0;

   for (i = 0; i < varDate.length; i++) 
      { 
       varChar = varDate.charAt(i); 
       if (varChar == '/') {varOcurrance = varOcurrance + 1; }
      }
  
   if (varOcurrance != 2) {return false; }

   varSlash1 = varDate.indexOf('/')
   varSlash2 = varDate.lastIndexOf('/')

   varDay = jsLeft(varDate, varSlash1)
   varMonth = varDate.substring(varSlash1 + 1, varSlash2);
   varYear = jsRight(varDate, varDate.length - varSlash2 - 1)

   if (varDay.length = 0) {return false; }
   if (varMonth.length = 0) {return false; }
   if (varYear.length < 2) {return false; }

   if (varDay.length > 2) {return false; }
   if (varMonth.length > 2) {return false; }
   if (varYear.length > 2) {return false; }

   if (jsIsNumeric(varDay)) {} else {return false; }
   if (jsIsNumeric(varMonth)) {} else {return false; }
   if (jsIsNumeric(varYear)) {} else {return false; }

   if ((varDay < 1) || (varDay > 31)) {return false; }
   if ((varMonth < 1) || (varMonth > 12)) {return false; }
   if ((varMonth == 4) || (varMonth == 6) || (varMonth == 9) || (varMonth == 11)) {if (varDay > 30) {return false; }}
   varYear = Number(2000) + Number(varYear)
   if (varMonth == 2) 
     {
      if (((varYear % 4 == 0) && (varYear % 100 != 0)) || (varYear % 400 == 0)) 
        {if (varDay > 29) {return false; }}
      else		
        {if (varDay > 28) {return false; }}
     }
     
   return true;
  }


function jsIsTime(varTime)
  {
   varOcurrance = 0;

   for (i = 0; i < varTime.length; i++) 
      { 
       varChar = varTime.charAt(i); 
       if (varChar == ':') {varOcurrance = varOcurrance + 1; }
      }
  
   if (varOcurrance != 1) {return false; }

   varSplit = varTime.indexOf(':')

   varHour = jsLeft(varTime, varSplit)
   varMinutes = jsRight(varTime, varTime.length - varSplit - 1)

   if (varHour.length = 0) {return false; }
   if (varMinutes.length < 2) {return false; }

   if (varHour.length > 2) {return false; }
   if (varMinutes.length > 2) {return false; }

   if (jsIsNumeric(varHour)) {} else {return false; }
   if (jsIsNumeric(varMinutes)) {} else {return false; }

   if ((varHour < 0) || (varHour > 23)) {return false; }
   if ((varMinutes < 0) || (varMinutes > 60)) {return false; }

   return true;
  }


function jsIsNumber(varNumber, varPrecision, varScale)
  {
   // Add later - automatically round down number

   varOcurrance = 0;

   for (i = 0; i < varNumber.length; i++) 
     { 
      varChar = varNumber.charAt(i); 
      if (varChar == '.') {varOcurrance = varOcurrance + 1; }
     }
  
   if (varOcurrance == 1)
     {
      varSplit = varNumber.indexOf('.');
      varInteger = jsLeft(varNumber, varSplit);
      varRemainder = jsRight(varNumber, varNumber.length - varSplit - 1);
     }
   else if (varOcurrance == 0)
     {
      varInteger = varNumber;
      varRemainder = '';
     }
   else
     {return false; }

   if (jsLeft(varInteger, 1) == '-') {varInteger = jsRight(varInteger, varInteger.length - 1); }

   if (varInteger.length > (varPrecision - varScale)) {return false; }
   if (varRemainder.length > varScale) {return false; }

   if (jsIsNumeric(varInteger)) {} else {return false; }
   if (jsIsNumeric(varRemainder)) {} else {return false; }

   return true;  
  }


function jsIsNumeric(varNumeric)
  {
   varValidChars = "0123456789";
   varIsNumber = true;
 
   for (i = 0; i < varNumeric.length && varIsNumber == true; i++) 
      { 
      varChar = varNumeric.charAt(i); 
      if (varValidChars.indexOf(varChar) == -1) {varIsNumber = false; }
      }

   return varIsNumber;
  }


function jsIsNew(varNew, varField, varValue) // Only wipe data if ID numeric
  {
   varIsNew = false;
   varOld = jsGet('in' + varField);

   if (varNew) 
     {
      if (varOld == 'new') {varIsNew = true}  
      if (varOld == '') {varIsNew = true} 
     }

   jsSetSave(varField, varValue);

   return varIsNew;
  }


function jsIsID(varField)
  {
   varIsNew = true;
   varOld = jsGet(varField);

   if (varOld == 'new') {varIsNew = false}  
   if (varOld == '') {varIsNew = false} 

   return varIsNew;
  }


function jsIsObj(varField)   
  {
   if (typeof(parent.bodyFrame.document.all[varField]) != 'undefined') 
     {return true; } 
   else 
     {return false; } 
  }
