Relecture du code/Small fixes
This commit is contained in:
parent
0200c2d240
commit
0e0ada8e40
@ -17,7 +17,7 @@ Le projet est disponible sur [function.divlo.fr](https://function.divlo.fr/).
|
||||
| -- | -- | -- |
|
||||
| **weatherRequest()** | Affiche la météo et l'heure locale selon la ville grâce à l'API : [openweathermap.org](https://openweathermap.org/). | Aucun paramètre |
|
||||
| **randomNumber(min, max)** | Génère un nombre aléatoire entre un minimum inclus et un maximum inclus. | - min : Nombre Minimum - max : Nombre Maximum |
|
||||
| **calculateAge(birthDate)** | Calcule l'âge de quelqu'un selon la date de naissance. | - birthDate : date de naissance au format (dd/mm/yyyy). |
|
||||
| **calculateAge(birthDate)** | Calcule l'âge de quelqu'un selon ça date de naissance. | - birthDate : date de naissance au format (dd/mm/yyyy). |
|
||||
| **convertTemperature(degree,unit)** | Convertit des Degré Celsius en Degré Fahrenheit et l'inverse aussi. | - degre : Le nombre que vous voulez convertir - unite : l'unité du nombre que vous voulez convertir (°C ou °F) |
|
||||
| **convertDistance (firstValue, unitFirstValue, unitFinalValue)** | Convertit la longueur (distance) avec les unités allant de picomètre au Téramètre. | - firstValue : Le nombre que vous voulez convertir - unitFirstValue : l'unité du nombre que vous voulez convertir - unitFinalValue : l'unité de votre nombre après la conversion |
|
||||
| **filterStudents(filteredLetter, students)** | Affiche uniquement les prénoms (qui sont dans la liste) qui commence par la lettre souhaitée. | - filteredLetter : la lettre à filtré - students : la liste des prénoms |
|
||||
|
Binary file not shown.
Before Width: | Height: | Size: 232 KiB After Width: | Height: | Size: 91 KiB |
@ -14,13 +14,13 @@ switch ($currentpage) {
|
||||
break;
|
||||
case '/views/function-list.php':
|
||||
$title = 'Liste des fonctions';
|
||||
$description = 'La liste des mini-programmes (fonctions JavaScript).';
|
||||
$description = 'La liste des mini-programmes.';
|
||||
$image = 'https://function.divlo.fr/img/FunctionProject_icon.png';
|
||||
$functionlistActive = 'active';
|
||||
break;
|
||||
case '/views/function-views/calculateAge.php':
|
||||
$title = 'Quelle âge avez-vous ?';
|
||||
$description = "Calcule l'âge de quelqu'un selon la date de naissance.";
|
||||
$description = "Calcule l'âge de quelqu'un selon ça date de naissance.";
|
||||
$image = 'https://function.divlo.fr/img/function-image/calculateAge.png';
|
||||
break;
|
||||
case '/views/function-views/convertDistance.php':
|
||||
@ -75,7 +75,7 @@ switch ($currentpage) {
|
||||
break;
|
||||
case '/views/function-views/armstrongNumber.php':
|
||||
$title = "Nombre d'Armstrong";
|
||||
$description = "Un nombre d'<a href='https://fr.wikipedia.org/wiki/Nombre_narcissique' target='_blank'>Armstrong</a> est un nombre qui est égal à la somme de ses chiffres portés à la puissance du nombre de chiffres le composant. Cette fonction permet de savoir si un nombre fait partie des nombres d'Armstrong ou non.";
|
||||
$description = "Un nombre d'<a href='https://fr.wikipedia.org/wiki/Nombre_narcissique' target='_blank'>Armstrong</a> est un nombre entier positif qui est égal à la somme de ses chiffres portés à la puissance du nombre de chiffres le composant. Cette fonction permet de savoir si un nombre fait partie des nombres d'Armstrong.";
|
||||
$image = 'https://function.divlo.fr/img/function-image/armstrongNumber.png';
|
||||
break;
|
||||
case '/views/function-views/heapAlgorithm.php':
|
||||
|
@ -28,7 +28,7 @@ function formatNumberResult(num) {
|
||||
function convertPuissanceToNumber(num) {
|
||||
if(!isNaN(num))
|
||||
{
|
||||
let number = formatNumberResult((num).toFixed(0));
|
||||
const number = formatNumberResult((num).toFixed(0));
|
||||
return number;
|
||||
}
|
||||
else
|
||||
@ -49,7 +49,7 @@ function dateTimeUTC(utc) {
|
||||
for (let index in utc) {
|
||||
result = result + utc[index];
|
||||
}
|
||||
let enteredOffset = parseFloat(result)*60;
|
||||
const enteredOffset = parseFloat(result)*60;
|
||||
timeNow.setMinutes(timeNow.getMinutes() + enteredOffset);
|
||||
return showDateTime(enteredOffset);
|
||||
}
|
||||
@ -90,23 +90,23 @@ function realDateTime(id)
|
||||
// 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;
|
||||
let timeZoneStr = timeZoneValue.toString();
|
||||
const 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);
|
||||
const toVerifyDate = s.split('/');
|
||||
const splitedToVerifyDate = toVerifyDate[2] + '-' + (parseInt(toVerifyDate[1]) + 1) + '-' + toVerifyDate[0];
|
||||
const msToVerifyDate = Date.parse(splitedToVerifyDate);
|
||||
|
||||
// Date courante
|
||||
let currentDate = dateTimeUTC('0');
|
||||
const 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);
|
||||
const currentDateSplited = currentDate.split('/');
|
||||
const currentDateFormat = currentDateSplited[2] + '-' + currentDateSplited[1] + '-' + currentDateSplited[0];
|
||||
const msCurrentDate = Date.parse(currentDateFormat);
|
||||
|
||||
if(msToVerifyDate <= msCurrentDate) {
|
||||
return true;
|
||||
|
@ -7,9 +7,9 @@ function weatherRequest() {
|
||||
type: "POST",
|
||||
success: function(data) {
|
||||
try {
|
||||
let json = jQuery.parseJSON(data);
|
||||
let city = json.name;
|
||||
let showDateTimeValue = timeZone(json);
|
||||
const json = jQuery.parseJSON(data);
|
||||
const city = json.name;
|
||||
const showDateTimeValue = timeZone(json);
|
||||
|
||||
$('.results').html(`🌎 Position : <a href='https://www.google.com/maps/search/?api=1&query=${json.coord.lat},${json.coord.lon}' class="yellow-color" target="_blank">${city}, ${json.sys.country}</a><br>⏰ Date et heure : ${showDateTimeValue}<br>☁️ Météo : ${capitalize(json.weather[0].description)}<br> 🌡️ Température : ${json.main.temp} °C<br> 💧 Humidité : ${json.main.humidity}% <br> <img src="https://openweathermap.org/img/wn/${json.weather[0].icon}@2x.png"/>`);
|
||||
}
|
||||
@ -36,9 +36,9 @@ function randomNumber(min, max) {
|
||||
// Calcule l'âge de quelqu'un selon la date de naissance
|
||||
function calculateAge(birthDateEntered) {
|
||||
// Les variables de la fonction
|
||||
let birthDateDay = parseInt(birthDateEntered.substring(0, 2));
|
||||
let birthDateMonth = parseInt((birthDateEntered.substring(3, 5)) - 1);
|
||||
let birthDateYear = parseInt(birthDateEntered.substring(6, 10));
|
||||
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);
|
||||
@ -54,7 +54,7 @@ function calculateAge(birthDateEntered) {
|
||||
birthDate.add(ageMonths, 'months');
|
||||
let ageDays = dateNow.diff(birthDate, 'days');
|
||||
|
||||
let isValidDateFunction = isValidDate(birthDateDay + '/' + birthDateMonth + '/' + birthDateYear);
|
||||
const isValidDateFunction = isValidDate(birthDateDay + '/' + birthDateMonth + '/' + birthDateYear);
|
||||
|
||||
// Vérifie si la valeur entrée correspond à une date de naissance valide
|
||||
if(isValidDateFunction === true && !isNaN(ageDays))
|
||||
@ -97,17 +97,17 @@ function convertTemperature(degree, unit) {
|
||||
// Convertis la longueur (distance) avec les unités allant de picomètre au Téramètre
|
||||
function convertDistance (firstValue, unitFirstValue, unitFinalValue) {
|
||||
|
||||
let reference = ["pm",null,null,"nm",null,null,"µm",null,null,"mm","cm","dm","m","dam","hm","km",null,null,"Mm",null,null,"Gm",null,null,"Tm"];
|
||||
let index1 = reference.indexOf(unitFirstValue);
|
||||
let index2 = reference.indexOf(unitFinalValue);
|
||||
const reference = ["pm",null,null,"nm",null,null,"µm",null,null,"mm","cm","dm","m","dam","hm","km",null,null,"Mm",null,null,"Gm",null,null,"Tm"];
|
||||
const index1 = reference.indexOf(unitFirstValue);
|
||||
const index2 = reference.indexOf(unitFinalValue);
|
||||
|
||||
// Condition qui vérifie si les valeurs entrées sont justes
|
||||
if (!isNaN(firstValue) && typeof unitFirstValue === 'string' && typeof unitFinalValue === 'string' && (index1.toString() && index2.toString()) != '-1')
|
||||
{
|
||||
// Conversion des longueurs :
|
||||
let difference = index1 - index2;
|
||||
let result = firstValue*Math.pow(10,difference);
|
||||
let response = 'Conversion de longueur : ' + formatNumberResult(firstValue).toString() + ' ' + unitFirstValue + ' = ' + formatNumberResult(result) + ' ' + unitFinalValue;
|
||||
const difference = index1 - index2;
|
||||
const result = firstValue*Math.pow(10,difference);
|
||||
const response = 'Conversion de longueur : ' + formatNumberResult(firstValue).toString() + ' ' + unitFirstValue + ' = ' + formatNumberResult(result) + ' ' + unitFinalValue;
|
||||
return response;
|
||||
}
|
||||
else
|
||||
@ -134,8 +134,8 @@ function filterStudents(filteredLetter, students)
|
||||
else if (filteredStudents.length >= 2)
|
||||
{
|
||||
// Affiche la liste des prénoms...
|
||||
let last = filteredStudents[filteredStudents.length - 1]; // Accéde au dernier élément du tableau
|
||||
let totalfilteredLetterStudents = filteredStudents.length;
|
||||
const last = filteredStudents[filteredStudents.length - 1]; // Accéde au dernier élément du tableau
|
||||
const totalfilteredLetterStudents = filteredStudents.length;
|
||||
filteredStudents.pop(); // Supprime le dernier élément du tableau
|
||||
// filteredStudents.join(', ') permet de rajouter un espace entre chaque élément du tableau
|
||||
return ("Prénoms qui commence par " + filteredLetter + " (" + totalfilteredLetterStudents + ") : " + filteredStudents.join(', ') + ' et ' + last + '.');
|
||||
@ -148,8 +148,8 @@ function filterStudents(filteredLetter, students)
|
||||
|
||||
// Génère aléatoirement une citation ou un proverbe
|
||||
function getRandomQuote() {
|
||||
let randomNbr = randomNumber(0, (quotes.length - 1));
|
||||
let randomQuotes = quotes[randomNbr];
|
||||
const randomNbr = randomNumber(0, (quotes.length - 1));
|
||||
const randomQuotes = quotes[randomNbr];
|
||||
return '" ' + randomQuotes["quote"] + ' " <br> <br> - ' + randomQuotes["source"];
|
||||
}
|
||||
|
||||
@ -172,9 +172,9 @@ function convertCurrency(value, currency, url) {
|
||||
if (currencySymboleAPI === undefined) {
|
||||
currencySymboleAPI = 1;
|
||||
}
|
||||
let exchangeRateYear = jsonFixer.date[0] + jsonFixer.date[1] + jsonFixer.date[2] + jsonFixer.date[3];
|
||||
let exchangeRateMonth = jsonFixer.date[5] + jsonFixer.date[6];
|
||||
let exchangeRateDay = jsonFixer.date[8] + jsonFixer.date[9];
|
||||
const exchangeRateYear = jsonFixer.date[0] + jsonFixer.date[1] + jsonFixer.date[2] + jsonFixer.date[3];
|
||||
const exchangeRateMonth = jsonFixer.date[5] + jsonFixer.date[6];
|
||||
const exchangeRateDay = jsonFixer.date[8] + jsonFixer.date[9];
|
||||
$('.results').html(formatNumberResult(value) + ' ' + jsonFixer.base + ' = ' + formatNumberResult((currencySymboleAPI * value).toFixed(2)) + ' ' + currency);
|
||||
$('.rateDate').html(`Dernier rafraîchissement du taux d'échange : ${exchangeRateDay}/${exchangeRateMonth}/${exchangeRateYear}`);
|
||||
}
|
||||
|
@ -4,8 +4,8 @@ $(function () {
|
||||
|
||||
$( "#submitWeatherRequest" ).click(function()
|
||||
{
|
||||
let city = $('#cityName').val();
|
||||
let cityName = city.split(' ').join('+');
|
||||
const city = $('#cityName').val();
|
||||
const cityName = city.split(' ').join('+');
|
||||
if(isEmptyValue(cityName))
|
||||
{
|
||||
$('.results').html(emptyMessageError);
|
||||
@ -19,15 +19,15 @@ $(function () {
|
||||
|
||||
$("#submitRandomNumber").click(function()
|
||||
{
|
||||
let minEntered = $('#minValue').val();
|
||||
let maxEntered = $('#maxValue').val();
|
||||
const minEntered = $('#minValue').val();
|
||||
const maxEntered = $('#maxValue').val();
|
||||
if(isEmptyValue(minEntered) || isEmptyValue(maxEntered))
|
||||
{
|
||||
$('.results').html(emptyMessageError);
|
||||
}
|
||||
else
|
||||
{
|
||||
let result = randomNumber(minEntered, maxEntered);
|
||||
const result = randomNumber(minEntered, maxEntered);
|
||||
if(result === messageError) {
|
||||
$('.results').html(messageError);
|
||||
} else {
|
||||
@ -38,23 +38,23 @@ $(function () {
|
||||
|
||||
$("#birthDateValue").bind("keyup change", function()
|
||||
{
|
||||
let birthDateEntered = $('#birthDateValue').val();
|
||||
let result = calculateAge(birthDateEntered);
|
||||
const birthDateEntered = $('#birthDateValue').val();
|
||||
const result = calculateAge(birthDateEntered);
|
||||
$('.results').html(result);
|
||||
});
|
||||
|
||||
$("#submitConvertTemperature").click(function()
|
||||
{
|
||||
let temperatureValue = $('#temperatureValue').val();
|
||||
let degree = parseFloat(temperatureValue.slice(0, temperatureValue.length - 2));
|
||||
let unit = temperatureValue.slice(temperatureValue.length - 2);
|
||||
const temperatureValue = $('#temperatureValue').val();
|
||||
const degree = parseFloat(temperatureValue.slice(0, temperatureValue.length - 2));
|
||||
const unit = temperatureValue.slice(temperatureValue.length - 2);
|
||||
if(isEmptyValue(temperatureValue))
|
||||
{
|
||||
$('.results').html(emptyMessageError);
|
||||
}
|
||||
else
|
||||
{
|
||||
let result = convertTemperature(degree, unit);
|
||||
const result = convertTemperature(degree, unit);
|
||||
if(result === messageError)
|
||||
{
|
||||
$('.results').html(messageError);
|
||||
@ -69,8 +69,8 @@ $(function () {
|
||||
$("#submitConvertDistance").click(function()
|
||||
{
|
||||
let firstValue = $('#firstValue').val();
|
||||
let unitFirstValue = $("#firstValueUnit option:selected").text();
|
||||
let secondValue = $("#secondValue option:selected").text();
|
||||
const unitFirstValue = $("#firstValueUnit option:selected").text();
|
||||
const secondValue = $("#secondValue option:selected").text();
|
||||
if(isEmptyValue(firstValue) || isEmptyValue(secondValue))
|
||||
{
|
||||
$('.results').html(emptyMessageError);
|
||||
@ -78,14 +78,14 @@ $(function () {
|
||||
else
|
||||
{
|
||||
firstValue = parseFloat(firstValue.replace(/\s/g,''));
|
||||
let result = convertDistance(firstValue, unitFirstValue, secondValue);
|
||||
const result = convertDistance(firstValue, unitFirstValue, secondValue);
|
||||
$('.results').html(result);
|
||||
}
|
||||
});
|
||||
|
||||
$("#submitFilterStudents").click(function()
|
||||
{
|
||||
let nameEntered = $('#nameEntered').val();
|
||||
const nameEntered = $('#nameEntered').val();
|
||||
let filteredLetter = $("#filteredLetter").val();
|
||||
if(isEmptyValue(nameEntered) || isEmptyValue(filteredLetter))
|
||||
{
|
||||
@ -93,9 +93,9 @@ $(function () {
|
||||
}
|
||||
else if(filteredLetter.length === 1)
|
||||
{
|
||||
let students = nameEntered.split(', ');
|
||||
const students = nameEntered.split(', ');
|
||||
filteredLetter = capitalize(filteredLetter);
|
||||
let result = filterStudents(filteredLetter, students);
|
||||
const result = filterStudents(filteredLetter, students);
|
||||
$('.results').html(result);
|
||||
}
|
||||
else {
|
||||
@ -127,8 +127,8 @@ $(function () {
|
||||
$("#submitConvertCurrency").click(function()
|
||||
{
|
||||
let value = $('#value').val();
|
||||
let currencyOfTheValue = $("#currencyOfTheValue option:selected").val();
|
||||
let currencyAfter = $("#currencyAfter option:selected").val();
|
||||
const currencyOfTheValue = $("#currencyOfTheValue option:selected").val();
|
||||
const currencyAfter = $("#currencyAfter option:selected").val();
|
||||
if(isEmptyValue(value) || isNaN(parseFloat(value)))
|
||||
{
|
||||
$('.results').html(emptyMessageError);
|
||||
@ -143,8 +143,8 @@ $(function () {
|
||||
|
||||
$("#submitConvertEncoding").click(function()
|
||||
{
|
||||
let value = $('#value').val();
|
||||
let option = $("#option option:selected").val();
|
||||
const value = $('#value').val();
|
||||
const option = $("#option option:selected").val();
|
||||
if(isEmptyValue(value))
|
||||
{
|
||||
$('.results').html(messageError);
|
||||
@ -152,32 +152,26 @@ $(function () {
|
||||
else
|
||||
{
|
||||
if (option === 'DecimalToBinary' || option === 'BinaryToDecimal' || option === 'DecimalToHexadecimal' || option === 'HexadecimalToDecimal' || option === 'BinaryToHexadecimal' || option === 'HexadecimalToBinary') {
|
||||
let result = convertDecimalBinaryHexadecimal(value, option);
|
||||
if (result === messageError) {
|
||||
$('.results').html(messageError);
|
||||
} else {
|
||||
const result = convertDecimalBinaryHexadecimal(value, option);
|
||||
$('.results').html(result);
|
||||
}
|
||||
}
|
||||
else if (option === 'BinaryToText') {
|
||||
// Le replace enlève les espaces
|
||||
let textResult = binToUtf8(value.replace(/\s/g,''));
|
||||
|
||||
const textResult = binToUtf8(value.replace(/\s/g,''));
|
||||
$('.results').html(textResult);
|
||||
}
|
||||
else if (option === 'TextToBinary') {
|
||||
// Les 2 replace permettent de rajouter un espace tout les 8 bits
|
||||
let binaryResult = utf8ToBin(value);
|
||||
binaryResult = binaryResult.replace(/(\d{8})/g, '$1 ').replace(/(^\s+|\s+$)/,'');
|
||||
|
||||
$('.results').html(binaryResult);
|
||||
}
|
||||
else if (option === 'TextToHexadecimal') {
|
||||
let result = utf8ToHex(value);
|
||||
const result = utf8ToHex(value);
|
||||
$('.results').html(result.toUpperCase());
|
||||
}
|
||||
else if (option === 'HexadecimalToText') {
|
||||
let result = hexToUtf8(value.replace(/\s/g,''));
|
||||
const result = hexToUtf8(value.replace(/\s/g,''));
|
||||
$('.results').html(result);
|
||||
}
|
||||
else {
|
||||
@ -189,12 +183,12 @@ $(function () {
|
||||
$("#submitConvertRomanArabicNumbers").click(function()
|
||||
{
|
||||
let numbersValue = $('#numbersArabic').val();
|
||||
let convertNumberType = $("#convertNumberType option:selected").text();
|
||||
const convertNumberType = $("#convertNumberType option:selected").text();
|
||||
if(isEmptyValue(numbersValue)) {
|
||||
$('.results').html(emptyMessageError);
|
||||
}
|
||||
else if (!isNaN(parseInt(numbersValue)) && convertNumberType === "Nombre Romain") {
|
||||
let result = convertArabicToRoman(parseInt(numbersValue.replace(/\s/g,'')));
|
||||
const result = convertArabicToRoman(parseInt(numbersValue.replace(/\s/g,'')));
|
||||
let numbersValueFormat = formatNumberResult(numbersValue.replace(/\s/g,''));
|
||||
if (numbersValueFormat === messageError || result === messageError) {
|
||||
$('.results').html(messageError);
|
||||
@ -207,7 +201,7 @@ $(function () {
|
||||
$('.results').html(`<b>${numbersValue}</b> est déjà en chiffres arabes.`);
|
||||
} else {
|
||||
numbersValue = numbersValue.toUpperCase();
|
||||
let result = convertRomanToArabic(numbersValue);
|
||||
const result = convertRomanToArabic(numbersValue);
|
||||
if (result === 0) {
|
||||
$('.results').html(messageError);
|
||||
} else {
|
||||
@ -225,7 +219,7 @@ $(function () {
|
||||
let numbersValue = $('#numberToTest').val();
|
||||
numbersValue = parseInt(numbersValue.replace(/\s/g,''));
|
||||
if (!isNaN(numbersValue) && numbersValue >= 0) {
|
||||
let result = armstrongNumber(numbersValue);
|
||||
const result = armstrongNumber(numbersValue);
|
||||
$('.results').html(result);
|
||||
}
|
||||
else {
|
||||
@ -235,14 +229,14 @@ $(function () {
|
||||
|
||||
$("#submitHeapAlgorithm").click(function()
|
||||
{
|
||||
let value = $('#value').val();
|
||||
const value = $('#value').val();
|
||||
if(isEmptyValue(value))
|
||||
{
|
||||
$('.results').html(emptyMessageError);
|
||||
}
|
||||
else
|
||||
{
|
||||
let stringPermutationsResult = stringPermutations(value);
|
||||
const stringPermutationsResult = stringPermutations(value);
|
||||
let result = "";
|
||||
for (element in stringPermutationsResult) {
|
||||
result = result + stringPermutationsResult[element] + "<br>";
|
||||
@ -255,7 +249,7 @@ $(function () {
|
||||
window.onload = realDateTime('realDateTime');
|
||||
|
||||
/* Window Scroll Top Button */
|
||||
var $btnScrollTop = $('.scroll-top-arrow');
|
||||
const $btnScrollTop = $('.scroll-top-arrow');
|
||||
$btnScrollTop.on('click', function () {
|
||||
$('html, body').animate({scrollTop: 0}, 800);
|
||||
return false;
|
||||
|
@ -261,6 +261,10 @@ const quotes =
|
||||
quote:"L’échec n’est qu’une opportunité pour recommencer la même chose plus intelligemment.",
|
||||
source:"Henry Ford"
|
||||
},
|
||||
{
|
||||
quote:"La différence entre la stupidité et le génie, c’est que le génie a ses limites.",
|
||||
source:"Neji Hyûga (Naruto)"
|
||||
},
|
||||
{
|
||||
quote:"Rien n'est plus puissant qu'une idée dont l'heure est venue.",
|
||||
source:"Victor Hugo"
|
||||
|
@ -32,7 +32,7 @@
|
||||
<div class="text-center pb-5">
|
||||
<h2 class="function-list-title"><a href="./function-views/calculateAge.php">Quelle âge avez-vous ?</a></h2>
|
||||
<a href="./function-views/calculateAge.php"><img class="function-list-image" src="/img/function-image/calculateAge.png" alt="Calendrier"></a>
|
||||
<p class="function-list-description">Calcule l'âge de quelqu'un selon la date de naissance.</p>
|
||||
<p class="function-list-description">Calcule l'âge de quelqu'un selon ça date de naissance.</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-sm-12 col-md-6 pb-4">
|
||||
|
@ -7,7 +7,10 @@
|
||||
<!-- Page Content -->
|
||||
<div class="container">
|
||||
<h1><span class="important"><?php echo $title?></span> :</h1>
|
||||
<p class="pt-3 text-center"><?php echo $description?></p>
|
||||
<p class="pt-3 text-center"><?php echo $description?>
|
||||
<br>
|
||||
Les taux de change sont récupérés grâce à l'API <a href="https://exchangeratesapi.io/" target="_blank">exchangeratesapi.io</a>.
|
||||
</p>
|
||||
<div class="text-center">
|
||||
<img class="function-image" src="/img/function-image/convertCurrency.png" alt="Sac de pièces">
|
||||
</div>
|
||||
|
Reference in New Issue
Block a user