Ajout de isValidDate pour calculateAge

This commit is contained in:
Divlo 2019-09-18 18:36:18 +02:00
parent 1f5e255ff9
commit 1a5c424d8f
2 changed files with 29 additions and 2 deletions

View File

@ -37,3 +37,4 @@ Le projet est disponible sur [function.divlo.fr](https://function.divlo.fr/).
| **showDateTime(enteredOffset)** | Affiche la date et l'heure (format : dd/mm/yyyy - 00:00:00). | - enteredOffset : date à formaté |
| **realDateTime(id)** | Affiche l'heure en temps réel. | - id : l'id de votre span/div où vous voulez afficher l'heure en temps réel |
| **timeZone(json)** | Récupére le décalage en secondes à partir de l'heure UTC grâce à l'API openweathermap.org. | - json : le json de l'API |
| **isValidDate(s)** | Vérifie si une date est valide par rapport à la date d'aujourd'hui. | - s : la date à verifier (format : dd/mm/yyyy) |

View File

@ -70,8 +70,10 @@ function calculateAge(birthDateEntered) {
let ageDays = dateNow.diff(birthDate, 'days');
let isValidDateFunction = isValidDate(birthDateDay + '/' + birthDateMonth + '/' + birthDateYear);
// Vérifie si la valeur entrée correspond à une date de naissance valide
if(birthDate._isValid === true)
if(isValidDateFunction === true)
{
// Si c'est ton anniversaire aujourd'hui
if(birthDateDay === parseInt(day) && birthDateMonth === parseInt(month))
@ -444,3 +446,27 @@ function timeZone(json) {
let timeZoneStr = timeZoneValue.toString();
return dateTimeUTC(timeZoneStr);
}
// Vérifie si une date est valide par rapport à la date d'aujourd'hui
function isValidDate(s) {
// Date à vérifier
let toVerifyDate = s.split('/');
let splitedToVerifyDate = toVerifyDate[2] + '-' + (parseInt(toVerifyDate[1]) + 1) + '-' + toVerifyDate[0];
let msToVerifyDate = Date.parse(splitedToVerifyDate);
// Date courante
let currentDate = dateTimeUTC(0);
currentDate = currentDate.substr(0,10);
let currentDateSplited = currentDate.split('/');
let currentDateFormat = currentDateSplited[2] + '-' + currentDateSplited[1] + '-' + currentDateSplited[0];
let msCurrentDate = Date.parse(currentDateFormat);
if(msToVerifyDate <= msCurrentDate) {
return true;
} else if(msToVerifyDate > msCurrentDate) {
return false;
} else {
return messageError;
}
}