﻿//Verificar que un texto determinado sea un valor numerico
function IsNumeric(sText)
{
   var ValidChars = "0123456789.,";
   var IsNumber=true;
   var Char;

 
   for (i = 0; i < sText.length && IsNumber == true; i++) 
      { 
      Char = sText.charAt(i); 
      if (ValidChars.indexOf(Char) == -1) 
         {
         IsNumber = false;
         }
      }
   return IsNumber;
}


function dateDiff(firstDate, secondDate) {
date1 = new Date();
date2 = new Date();
diff  = new Date();

date1temp = new Date(firstDate);
date1.setTime(date1temp.getTime());

date2temp = new Date(secondDate);
date2.setTime(date2temp.getTime());


diff.setTime(Math.abs(date1.getTime() - date2.getTime()));

timediff = diff.getTime();

days = Math.floor(timediff / (1000 * 60 * 60 * 24)); 
timediff -= days * (1000 * 60 * 60 * 24);

return days;
}


function isDate(sDate) {
var matchArray = sDate.match(/^(\d\d?)\/(\d\d?)\/(\d{4})$/);

if (matchArray != null) {
    var day = matchArray[1];
    var month = matchArray[2];
    var year = matchArray[3];
  
    if (month < 1 || month > 12) {
        return false;
    }
    if (day < 1 || day > 31) {
        return false;
    }
    if ((month==4 || month==6 || month==9 || month==11) && day==31) {
        return false;
    }
    if (month == 2) { 
        var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0));
        if (day > 29 || (day==29 && !isleap)) {
            return false;
        }
    }
    return true;    
} else {
    return false;
}
}

function ConvertToDate(sDateString) {
var matchArray = sDateString.match(/^(\d\d?)\/(\d\d?)\/(\d{4})$/);

if (matchArray != null) {
    var day = matchArray[1];
    var month = matchArray[2]-1;//Javascript comienza el mes desde 0
    var year = matchArray[3];
    return new Date(year,month,day);
}
}
