diff --git a/README.md b/README.md
index 07e4e6a..8c5a82a 100644
--- a/README.md
+++ b/README.md
@@ -44,6 +44,5 @@ Le projet est disponible sur [function.divlo.fr](https://function.divlo.fr/).
| **dateTimeUTC(utc)** | Donne la date et l'heure selon l'UTC (Universal Time Coordinated). | - utc : heure de décalage avec l'utc |
| **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) |
| **createSessionCookie(name, value)** | Créer un cookie de session | - name : nom du cookie - value : valeur du cookie |
\ No newline at end of file
diff --git a/scripts/fonctions_annexes.js b/scripts/fonctions_annexes.js
index cf4a61e..563cd84 100644
--- a/scripts/fonctions_annexes.js
+++ b/scripts/fonctions_annexes.js
@@ -17,18 +17,12 @@ function formatNumberResult(num) {
// Vérifie si une string est un float (integer exclu)
function isFloat(value) {
- return !isNaN(value) && value.toString().indexOf('.') != -1;
+ return !isNaN(value) && value.toString().includes('.');
}
// 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)) {
- const number = formatNumberResult((num).toFixed(0));
- return number;
- }
- else {
- return messageError;
- }
+ return formatNumberResult((num).toFixed(0));
}
// Majuscule à la 1ère lettre d'une string
@@ -50,53 +44,53 @@ function dateTimeUTC(utc) {
// 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;
+ const year = timeNow.getFullYear();
+ const month = ('0'+(timeNow.getMonth()+1)).slice(-2);
+ const day = ('0'+timeNow.getDate()).slice(-2);
+ const hour = ('0'+timeNow.getHours()).slice(-2);
+ const minute = ('0'+timeNow.getMinutes()).slice(-2);
+ const second = ('0'+timeNow.getSeconds()).slice(-2);
+
+ const showDateTimeValue = day + "/" + month + "/" + year + " - " + hour + ":" + minute + ":" + second;
+ const objectDateTime = {
+ year: year,
+ month: month,
+ day: day,
+ hour: hour,
+ minute: minute,
+ second: second,
+ showDateTimeValue: showDateTimeValue
+ };
timeNow.setMinutes(timeNow.getMinutes() - enteredOffset)
- return showDateTimeValue;
+ return objectDateTime;
}
// 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);
+function realDateTime(id) {
+ const realDateTimeNow = new Date;
+ // const year = realDateTimeNow.getFullYear();
+ // const month = ('0'+(realDateTimeNow.getMonth()+1)).slice(-2);
+ // const day = ('0'+realDateTimeNow.getDate()).slice(-2);
+ const hour = ('0'+realDateTimeNow.getHours()).slice(-2);
+ const minute = ('0'+realDateTimeNow.getMinutes()).slice(-2);
+ const second = ('0'+realDateTimeNow.getSeconds()).slice(-2);
- resultat = hour + ":" + minute + ":" + second;
+ const 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 openweathermap.org
-function timeZone(json) {
- timeZoneValue = json.timezone / 60 / 60;
- const timeZoneStr = timeZoneValue.toString();
- return dateTimeUTC(timeZoneStr);
-}
-
// Vérifie si une date est valide par rapport à la date d'aujourd'hui
-function isValidDate(s) {
+function isValidDate(verifyDate, currentDate) {
// Date à vérifier
- const toVerifyDate = s.split('/');
+ const toVerifyDate = verifyDate.split('/');
const splitedToVerifyDate = toVerifyDate[2] + '-' + (parseInt(toVerifyDate[1]) + 1) + '-' + toVerifyDate[0];
const msToVerifyDate = Date.parse(splitedToVerifyDate);
// Date courante
- let currentDate = dateTimeUTC('0');
currentDate = currentDate.substr(0,10);
const currentDateSplited = currentDate.split('/');
const currentDateFormat = currentDateSplited[2] + '-' + currentDateSplited[1] + '-' + currentDateSplited[0];
diff --git a/scripts/fonctions_principales.js b/scripts/fonctions_principales.js
index 02ef52a..4445eeb 100644
--- a/scripts/fonctions_principales.js
+++ b/scripts/fonctions_principales.js
@@ -9,7 +9,7 @@ function weatherRequest() {
try {
const json = jQuery.parseJSON(data);
const city = json.name;
- const showDateTimeValue = timeZone(json);
+ const showDateTimeValue = dateTimeUTC((json.timezone / 60 / 60).toString()).showDateTimeValue;
$('.results').html(`🌎 Position : ${city}, ${json.sys.country}
⏰ Date et heure : ${showDateTimeValue}
☁️ Météo : ${capitalize(json.weather[0].description)}
🌡️ Température : ${json.main.temp} °C
💧 Humidité : ${json.main.humidity}%
`);
}
@@ -38,10 +38,10 @@ function calculateAge(birthDateEntered) {
const birthDateDay = parseInt(birthDateEntered.substring(0, 2));
const birthDateMonth = parseInt((birthDateEntered.substring(3, 5)) - 1);
const birthDateYear = parseInt(birthDateEntered.substring(6, 10));
- dateTimeUTC('0');
- day = parseInt(day);
- month = parseInt(month - 1);
- year = parseInt(year);
+ const currentDateObject = dateTimeUTC('0');
+ const day = parseInt(currentDateObject.day);
+ const month = parseInt(currentDateObject.month - 1);
+ const year = parseInt(currentDateObject.year);
let dateNow = moment([year, month, day]);
let birthDate = moment([birthDateYear, birthDateMonth, birthDateDay]);
@@ -53,13 +53,13 @@ function calculateAge(birthDateEntered) {
birthDate.add(ageMonths, 'months');
let ageDays = dateNow.diff(birthDate, 'days');
- const isValidDateFunction = isValidDate(birthDateDay + '/' + birthDateMonth + '/' + birthDateYear);
+ const isValidDateFunction = isValidDate(birthDateDay + '/' + birthDateMonth + '/' + birthDateYear, currentDateObject.showDateTimeValue);
// Vérifie si la valeur entrée correspond à une date de naissance valide
if(isValidDateFunction === true && !isNaN(ageDays)) {
ageYears = formatNumberResult(ageYears);
// Si c'est ton anniversaire aujourd'hui
- if(birthDateDay === parseInt(day) && (parseInt(birthDateMonth) + 1) === parseInt(month)) {
+ if(birthDateDay === day && parseInt(birthDateMonth) === month) {
return 'Vous avez ' + ageYears + ' ans. Joyeux Anniversaire! 🥳';
}
else {
diff --git a/scripts/main.js b/scripts/main.js
index 0b71ba0..db40898 100644
--- a/scripts/main.js
+++ b/scripts/main.js
@@ -2,31 +2,25 @@ $(function () {
/* ÉXECUTION DES FONCTONS */
- $( "#submitWeatherRequest" ).click(function()
- {
+ $( "#submitWeatherRequest" ).click(() => {
const city = $('#cityName').val();
const cityName = city.split(' ').join('+');
- if(isEmptyValue(cityName))
- {
+ if(isEmptyValue(cityName)) {
$('.results').html(emptyMessageError);
}
- else
- {
+ else {
createSessionCookie("city", cityName);
weatherRequest();
}
});
- $("#submitRandomNumber").click(function()
- {
+ $("#submitRandomNumber").click(() => {
const minEntered = $('#minValue').val();
const maxEntered = $('#maxValue').val();
- if(isEmptyValue(minEntered) || isEmptyValue(maxEntered))
- {
+ if(isEmptyValue(minEntered) || isEmptyValue(maxEntered)) {
$('.results').html(emptyMessageError);
}
- else
- {
+ else {
const result = randomNumber(minEntered, maxEntered);
if(result === messageError) {
$('.results').html(messageError);
@@ -36,13 +30,13 @@ $(function () {
}
});
- $("#birthDateValue").bind("keyup change", function()
+ $("#birthDateValue").bind("keyup change", () =>
{
const birthDateEntered = $('#birthDateValue').val();
$('.results').html(calculateAge(birthDateEntered));
});
- $("#submitConvertTemperature").click(function()
+ $("#submitConvertTemperature").click(() =>
{
const temperatureValue = $('#temperatureValue').val();
const degree = parseFloat(temperatureValue.slice(0, temperatureValue.length - 2));
@@ -55,7 +49,7 @@ $(function () {
}
});
- $("#submitConvertDistance").click(function()
+ $("#submitConvertDistance").click(() =>
{
let firstValue = $('#firstValue').val();
const unitFirstValue = $("#firstValueUnit option:selected").text();
@@ -69,7 +63,7 @@ $(function () {
}
});
- $("#submitFilterStudents").click(function()
+ $("#submitFilterStudents").click(() =>
{
const nameEntered = $('#nameEntered').val();
let filteredLetter = $("#filteredLetter").val();
@@ -87,13 +81,12 @@ $(function () {
});
let randomQuoteClicked;
- $("#submitRandomQuote").click(function()
- {
+ $("#submitRandomQuote").click(() => {
randomQuoteClicked = true;
$('.resultsRandomQuote').html(getRandomQuote());
});
// Affichage d'une citation au chargement de la page
- if (randomQuoteClicked != true && window.location.href.indexOf("randomQuote") > -1) {
+ if (randomQuoteClicked != true && window.location.href.includes("randomQuote")) {
$('.resultsRandomQuote').html(getRandomQuote());
}
@@ -107,8 +100,7 @@ $(function () {
$( ".quote-list" ).append(resultat);
}
- $("#submitConvertCurrency").click(function()
- {
+ $("#submitConvertCurrency").click(() => {
let value = $('#value').val();
const currencyOfTheValue = $("#currencyOfTheValue option:selected").val();
const currencyAfter = $("#currencyAfter option:selected").val();
@@ -122,15 +114,13 @@ $(function () {
}
});
- $("#submitConvertEncoding").click(function()
- {
+ $("#submitConvertEncoding").click(() => {
const value = $('#value').val();
const option = $("#option option:selected").val();
if(isEmptyValue(value)) {
$('.results').html(messageError);
}
- else
- {
+ else {
if (option === 'DecimalToBinary' || option === 'BinaryToDecimal' || option === 'DecimalToHexadecimal' || option === 'HexadecimalToDecimal' || option === 'BinaryToHexadecimal' || option === 'HexadecimalToBinary') {
const result = convertDecimalBinaryHexadecimal(value, option);
$('.results').html(result);
@@ -160,8 +150,7 @@ $(function () {
}
});
- $("#submitConvertRomanArabicNumbers").click(function()
- {
+ $("#submitConvertRomanArabicNumbers").click(() => {
let numbersValue = $('#numbersArabic').val();
numbersValue = numbersValue.replace(/\s/g,'');
const convertNumberType = $("#convertNumberType option:selected").text();
@@ -195,8 +184,7 @@ $(function () {
}
});
- $("#numberToTest").bind("keyup change", function()
- {
+ $("#numberToTest").bind("keyup change", () => {
let numbersValue = $('#numberToTest').val();
numbersValue = parseInt(numbersValue.replace(/\s/g,''));
if (!isNaN(numbersValue) && numbersValue >= 0) {
@@ -207,8 +195,7 @@ $(function () {
}
});
- $("#submitHeapAlgorithm").click(function()
- {
+ $("#submitHeapAlgorithm").click(() => {
const value = $('#value').val();
if(isEmptyValue(value)) {
$('.results').html(emptyMessageError);
diff --git a/scripts/variables.js b/scripts/variables.js
index 291e01a..3b27850 100644
--- a/scripts/variables.js
+++ b/scripts/variables.js
@@ -6,7 +6,7 @@ let chemin = window.location.pathname;
const emptyMessageError = "Vous ne pouvez pas rentré de valeur vide.";
const messageError = "Vous n'avez pas rentré de valeur valide.";
-/* Varibales pour les fonctions */
+/* Variables pour les fonctions */
let timeNow = new Date();
let utcOffset = timeNow.getTimezoneOffset();
timeNow.setMinutes(timeNow.getMinutes() + utcOffset);