Séparation des fonctions principales/annexes
This commit is contained in:
parent
c91feaa895
commit
77d7791606
206
scripts/fonctions_annexes.js
Normal file
206
scripts/fonctions_annexes.js
Normal file
@ -0,0 +1,206 @@
|
|||||||
|
/* Fonctions Annexes */
|
||||||
|
|
||||||
|
// Vérifie si une valeur est vide
|
||||||
|
function isEmptyValue(value) {
|
||||||
|
if (value === '' || value === null || value === undefined) {
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Formate les nombres avec des espaces (ex : 76120 = 76 120)
|
||||||
|
function formatNumberResult(num) {
|
||||||
|
if (!isNaN(num))
|
||||||
|
{
|
||||||
|
if(num >= 1000)
|
||||||
|
{
|
||||||
|
return num.toString().replace(/(\d)(?=(\d{3})+(?!\d))/g, '$1 ');
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return num;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return messageError;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Convertit les puissances de 10 en nombre (ex: 1e+20 = 100 000 000 000 000 000 000), ne peut pas dépasser 1e+20 (21 ne fonctionne pas)
|
||||||
|
function convertPuissanceToNumber(num) {
|
||||||
|
if(!isNaN(num))
|
||||||
|
{
|
||||||
|
let number = formatNumberResult((num).toFixed(0));
|
||||||
|
return number;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return messageError;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Majuscule à la 1ère lettre d'une string
|
||||||
|
function capitalize (s) {
|
||||||
|
if (typeof s !== 'string') return ''
|
||||||
|
return s.charAt(0).toUpperCase() + s.slice(1)
|
||||||
|
}
|
||||||
|
|
||||||
|
// Donne la date et l'heure selon l'UTC (Universal Time Coordinated)
|
||||||
|
function dateTimeUTC(utc) {
|
||||||
|
if(typeof utc === 'string' && utc.length >= 1 && utc[0] === '-' || '0' || '+' || !isNaN(parseFloat(utc[0])))
|
||||||
|
{
|
||||||
|
if (utc[0] === '0' && utc.length === 1)
|
||||||
|
{
|
||||||
|
let enteredOffset = 0;
|
||||||
|
return showDateTime(enteredOffset);
|
||||||
|
}
|
||||||
|
else if (utc[0] === '+' || !isNaN(parseFloat(utc[0])))
|
||||||
|
{
|
||||||
|
if (utc.length === 2 && utc[0] === '+')
|
||||||
|
{
|
||||||
|
// Entered offset
|
||||||
|
let enteredOffset = parseFloat(utc[1])*60;
|
||||||
|
timeNow.setMinutes(timeNow.getMinutes() + enteredOffset);
|
||||||
|
return showDateTime(enteredOffset);
|
||||||
|
}
|
||||||
|
else if (utc.length === 3 && utc[0] === '+')
|
||||||
|
{
|
||||||
|
// Entered offset
|
||||||
|
let enteredOffset = parseFloat(utc[1] + utc[2])*60;
|
||||||
|
timeNow.setMinutes(timeNow.getMinutes() + enteredOffset);
|
||||||
|
return showDateTime(enteredOffset);
|
||||||
|
}
|
||||||
|
else if (utc.length === 1 && !isNaN(parseFloat(utc[0])))
|
||||||
|
{
|
||||||
|
// Entered offset
|
||||||
|
let enteredOffset = parseFloat(utc[0])*60;
|
||||||
|
timeNow.setMinutes(timeNow.getMinutes() + enteredOffset);
|
||||||
|
return showDateTime(enteredOffset);
|
||||||
|
}
|
||||||
|
else if (utc.length === 2 && !isNaN(parseFloat(utc[0])))
|
||||||
|
{
|
||||||
|
// Entered offset
|
||||||
|
let enteredOffset = parseFloat(utc[0] + utc[1])*60;
|
||||||
|
timeNow.setMinutes(timeNow.getMinutes() + enteredOffset);
|
||||||
|
return showDateTime(enteredOffset);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
let enteredOffset = 0;
|
||||||
|
return showDateTime(enteredOffset);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (utc[0] === '-')
|
||||||
|
{
|
||||||
|
if (utc.length === 2 && utc[0] === '-')
|
||||||
|
{
|
||||||
|
// Entered offset
|
||||||
|
let enteredOffset = - parseFloat(utc[1])*60;
|
||||||
|
timeNow.setMinutes(timeNow.getMinutes() + enteredOffset);
|
||||||
|
return showDateTime(enteredOffset);
|
||||||
|
}
|
||||||
|
else if (utc.length === 3 && utc[0] === '-')
|
||||||
|
{
|
||||||
|
// Entered offset
|
||||||
|
let enteredOffset = - parseFloat(utc[1] + utc[2])*60;
|
||||||
|
timeNow.setMinutes(timeNow.getMinutes() + enteredOffset);
|
||||||
|
return showDateTime(enteredOffset);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
let enteredOffset = 0;
|
||||||
|
return showDateTime(enteredOffset);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
let enteredOffset = 0;
|
||||||
|
return showDateTime(enteredOffset);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if (utc === '' || !utc || utc === undefined)
|
||||||
|
{
|
||||||
|
utc = false;
|
||||||
|
let enteredOffset = 0;
|
||||||
|
return showDateTime(enteredOffset);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
let enteredOffset = 0;
|
||||||
|
return showDateTime(enteredOffset);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Affiche la date et l'heure (format : dd/mm/yyyy - 00:00:00)
|
||||||
|
function showDateTime(enteredOffset) {
|
||||||
|
year = timeNow.getFullYear();
|
||||||
|
month = ('0'+(timeNow.getMonth()+1)).slice(-2);
|
||||||
|
day = ('0'+timeNow.getDate()).slice(-2);
|
||||||
|
hour = ('0'+timeNow.getHours()).slice(-2);
|
||||||
|
minute = ('0'+timeNow.getMinutes()).slice(-2);
|
||||||
|
second = ('0'+timeNow.getSeconds()).slice(-2);
|
||||||
|
|
||||||
|
showDateTimeValue = day + "/" + month + "/" + year + " - " + hour + ":" + minute + ":" + second;
|
||||||
|
timeNow.setMinutes(timeNow.getMinutes() - enteredOffset)
|
||||||
|
|
||||||
|
return showDateTimeValue;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Affiche l'heure en temps réel
|
||||||
|
function realDateTime(id)
|
||||||
|
{
|
||||||
|
realDateTimeNow = new Date;
|
||||||
|
year = realDateTimeNow.getFullYear();
|
||||||
|
month = ('0'+(realDateTimeNow.getMonth()+1)).slice(-2);
|
||||||
|
day = ('0'+realDateTimeNow.getDate()).slice(-2);
|
||||||
|
hour = ('0'+realDateTimeNow.getHours()).slice(-2);
|
||||||
|
minute = ('0'+realDateTimeNow.getMinutes()).slice(-2);
|
||||||
|
second = ('0'+realDateTimeNow.getSeconds()).slice(-2);
|
||||||
|
|
||||||
|
resultat = hour + ":" + minute + ":" + second;
|
||||||
|
|
||||||
|
document.getElementById(id).innerHTML = resultat;
|
||||||
|
setTimeout('realDateTime("'+id+'");','1000');
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Récupére le décalage en secondes à partir de l'heure UTC grâce à l'API
|
||||||
|
function timeZone(json) {
|
||||||
|
if(json.name === 'Moscou') // Il faut ajouter + 1h de décallage à Moscou
|
||||||
|
{
|
||||||
|
timeZoneValue = (json.timezone / 60 / 60) + 1;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
timeZoneValue = json.timezone / 60 / 60;
|
||||||
|
}
|
||||||
|
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;
|
||||||
|
}
|
||||||
|
}
|
@ -1,4 +1,3 @@
|
|||||||
/////////////////////////////////////////////////////////////////
|
|
||||||
/* Fonctions Principales */
|
/* Fonctions Principales */
|
||||||
|
|
||||||
// Requête à l'API openweathermap.org
|
// Requête à l'API openweathermap.org
|
||||||
@ -261,212 +260,4 @@ function binToUtf8(s){
|
|||||||
} catch (error) {
|
} catch (error) {
|
||||||
return s;
|
return s;
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
/////////////////////////////////////////////////////////////////
|
|
||||||
/* Fonctions Annexes */
|
|
||||||
|
|
||||||
// Vérifie si une valeur est vide
|
|
||||||
function isEmptyValue(value) {
|
|
||||||
if (value === '' || value === null || value === undefined) {
|
|
||||||
return true
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
return false
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Formate les nombres avec des espaces (ex : 76120 = 76 120)
|
|
||||||
function formatNumberResult(num) {
|
|
||||||
if (!isNaN(num))
|
|
||||||
{
|
|
||||||
if(num >= 1000)
|
|
||||||
{
|
|
||||||
return num.toString().replace(/(\d)(?=(\d{3})+(?!\d))/g, '$1 ');
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
return num;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
return messageError;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Convertit les puissances de 10 en nombre (ex: 1e+20 = 100 000 000 000 000 000 000), ne peut pas dépasser 1e+20 (21 ne fonctionne pas)
|
|
||||||
function convertPuissanceToNumber(num) {
|
|
||||||
if(!isNaN(num))
|
|
||||||
{
|
|
||||||
let number = formatNumberResult((num).toFixed(0));
|
|
||||||
return number;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
return messageError;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Majuscule à la 1ère lettre d'une string
|
|
||||||
function capitalize (s) {
|
|
||||||
if (typeof s !== 'string') return ''
|
|
||||||
return s.charAt(0).toUpperCase() + s.slice(1)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Donne la date et l'heure selon l'UTC (Universal Time Coordinated)
|
|
||||||
function dateTimeUTC(utc) {
|
|
||||||
if(typeof utc === 'string' && utc.length >= 1 && utc[0] === '-' || '0' || '+' || !isNaN(parseFloat(utc[0])))
|
|
||||||
{
|
|
||||||
if (utc[0] === '0' && utc.length === 1)
|
|
||||||
{
|
|
||||||
let enteredOffset = 0;
|
|
||||||
return showDateTime(enteredOffset);
|
|
||||||
}
|
|
||||||
else if (utc[0] === '+' || !isNaN(parseFloat(utc[0])))
|
|
||||||
{
|
|
||||||
if (utc.length === 2 && utc[0] === '+')
|
|
||||||
{
|
|
||||||
// Entered offset
|
|
||||||
let enteredOffset = parseFloat(utc[1])*60;
|
|
||||||
timeNow.setMinutes(timeNow.getMinutes() + enteredOffset);
|
|
||||||
return showDateTime(enteredOffset);
|
|
||||||
}
|
|
||||||
else if (utc.length === 3 && utc[0] === '+')
|
|
||||||
{
|
|
||||||
// Entered offset
|
|
||||||
let enteredOffset = parseFloat(utc[1] + utc[2])*60;
|
|
||||||
timeNow.setMinutes(timeNow.getMinutes() + enteredOffset);
|
|
||||||
return showDateTime(enteredOffset);
|
|
||||||
}
|
|
||||||
else if (utc.length === 1 && !isNaN(parseFloat(utc[0])))
|
|
||||||
{
|
|
||||||
// Entered offset
|
|
||||||
let enteredOffset = parseFloat(utc[0])*60;
|
|
||||||
timeNow.setMinutes(timeNow.getMinutes() + enteredOffset);
|
|
||||||
return showDateTime(enteredOffset);
|
|
||||||
}
|
|
||||||
else if (utc.length === 2 && !isNaN(parseFloat(utc[0])))
|
|
||||||
{
|
|
||||||
// Entered offset
|
|
||||||
let enteredOffset = parseFloat(utc[0] + utc[1])*60;
|
|
||||||
timeNow.setMinutes(timeNow.getMinutes() + enteredOffset);
|
|
||||||
return showDateTime(enteredOffset);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
let enteredOffset = 0;
|
|
||||||
return showDateTime(enteredOffset);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else if (utc[0] === '-')
|
|
||||||
{
|
|
||||||
if (utc.length === 2 && utc[0] === '-')
|
|
||||||
{
|
|
||||||
// Entered offset
|
|
||||||
let enteredOffset = - parseFloat(utc[1])*60;
|
|
||||||
timeNow.setMinutes(timeNow.getMinutes() + enteredOffset);
|
|
||||||
return showDateTime(enteredOffset);
|
|
||||||
}
|
|
||||||
else if (utc.length === 3 && utc[0] === '-')
|
|
||||||
{
|
|
||||||
// Entered offset
|
|
||||||
let enteredOffset = - parseFloat(utc[1] + utc[2])*60;
|
|
||||||
timeNow.setMinutes(timeNow.getMinutes() + enteredOffset);
|
|
||||||
return showDateTime(enteredOffset);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
let enteredOffset = 0;
|
|
||||||
return showDateTime(enteredOffset);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
let enteredOffset = 0;
|
|
||||||
return showDateTime(enteredOffset);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else if (utc === '' || !utc || utc === undefined)
|
|
||||||
{
|
|
||||||
utc = false;
|
|
||||||
let enteredOffset = 0;
|
|
||||||
return showDateTime(enteredOffset);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
let enteredOffset = 0;
|
|
||||||
return showDateTime(enteredOffset);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Affiche la date et l'heure (format : dd/mm/yyyy - 00:00:00)
|
|
||||||
function showDateTime(enteredOffset) {
|
|
||||||
year = timeNow.getFullYear();
|
|
||||||
month = ('0'+(timeNow.getMonth()+1)).slice(-2);
|
|
||||||
day = ('0'+timeNow.getDate()).slice(-2);
|
|
||||||
hour = ('0'+timeNow.getHours()).slice(-2);
|
|
||||||
minute = ('0'+timeNow.getMinutes()).slice(-2);
|
|
||||||
second = ('0'+timeNow.getSeconds()).slice(-2);
|
|
||||||
|
|
||||||
showDateTimeValue = day + "/" + month + "/" + year + " - " + hour + ":" + minute + ":" + second;
|
|
||||||
timeNow.setMinutes(timeNow.getMinutes() - enteredOffset)
|
|
||||||
|
|
||||||
return showDateTimeValue;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Affiche l'heure en temps réel
|
|
||||||
function realDateTime(id)
|
|
||||||
{
|
|
||||||
realDateTimeNow = new Date;
|
|
||||||
year = realDateTimeNow.getFullYear();
|
|
||||||
month = ('0'+(realDateTimeNow.getMonth()+1)).slice(-2);
|
|
||||||
day = ('0'+realDateTimeNow.getDate()).slice(-2);
|
|
||||||
hour = ('0'+realDateTimeNow.getHours()).slice(-2);
|
|
||||||
minute = ('0'+realDateTimeNow.getMinutes()).slice(-2);
|
|
||||||
second = ('0'+realDateTimeNow.getSeconds()).slice(-2);
|
|
||||||
|
|
||||||
resultat = hour + ":" + minute + ":" + second;
|
|
||||||
|
|
||||||
document.getElementById(id).innerHTML = resultat;
|
|
||||||
setTimeout('realDateTime("'+id+'");','1000');
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Récupére le décalage en secondes à partir de l'heure UTC grâce à l'API
|
|
||||||
function timeZone(json) {
|
|
||||||
if(json.name === 'Moscou') // Il faut ajouter + 1h de décallage à Moscou
|
|
||||||
{
|
|
||||||
timeZoneValue = (json.timezone / 60 / 60) + 1;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
timeZoneValue = json.timezone / 60 / 60;
|
|
||||||
}
|
|
||||||
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;
|
|
||||||
}
|
|
||||||
}
|
}
|
@ -3,8 +3,11 @@ $(function () {
|
|||||||
// Fichiers qui contient les variables
|
// Fichiers qui contient les variables
|
||||||
$.getScript("/scripts/variables.js", function() {
|
$.getScript("/scripts/variables.js", function() {
|
||||||
|
|
||||||
// Fichiers qui contient les fonctions
|
// Fichiers qui contient les fonctions annexes
|
||||||
$.getScript("/scripts/fonctions.js", function() {
|
$.getScript("/scripts/fonctions_annexes.js", function() {
|
||||||
|
|
||||||
|
// Fichiers qui contient les fonctions principales
|
||||||
|
$.getScript("/scripts/fonctions_principales.js", function() {
|
||||||
|
|
||||||
/* ÉXECUTION DES FONCTONS */
|
/* ÉXECUTION DES FONCTONS */
|
||||||
|
|
||||||
@ -236,7 +239,9 @@ $(function () {
|
|||||||
todayHighlight: true
|
todayHighlight: true
|
||||||
})
|
})
|
||||||
|
|
||||||
// Fin de l'import des fonctions
|
// Fin de l'import des fonctions principales
|
||||||
|
});
|
||||||
|
// Fin de l'import des fonctions annexes
|
||||||
});
|
});
|
||||||
// Fin de l'import des variables
|
// Fin de l'import des variables
|
||||||
});
|
});
|
||||||
|
Reference in New Issue
Block a user