convertCurrency in all the way

This commit is contained in:
Divlo 2019-09-16 20:39:30 +02:00
parent 1739942c61
commit ce67cfbe44
8 changed files with 47 additions and 28 deletions

View File

@ -22,7 +22,7 @@ Le projet est disponible sur [function.divlo.fr](https://function.divlo.fr/).
| **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 | | **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 | | **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 |
| **randomQuote()** | Génère aléatoirement une citation ou un proverbe. | Aucun paramètre | | **randomQuote()** | Génère aléatoirement une citation ou un proverbe. | Aucun paramètre |
| **convertCurrency(currency, euroValue)** | Convertis des euros (€) dans une autre devise. [exchangeratesapi.io](https://exchangeratesapi.io/) | - currency : la devise à avoir après conversion - euroValue : le nombre d'euros (€) à convertir | | **convertCurrency(value, currency, url)** | Convertis une valeur dans une devise dans une autre devise. [exchangeratesapi.io](https://exchangeratesapi.io/) | - value : la valeur à convertir - currency : la devise à avoir après conversion - url : l'url de la requête à l'API en fonction du paramètre dans l'url '?base=' |
| **utf8ToBin(s)** | UTF-8 vers Binaire | - s : la valeur à convertir | | **utf8ToBin(s)** | UTF-8 vers Binaire | - s : la valeur à convertir |
| **binToUtf8(s)** | Binaire vers UTF-8 | - s : la valeur à convertir | | **binToUtf8(s)** | Binaire vers UTF-8 | - s : la valeur à convertir |

View File

@ -55,7 +55,7 @@ header {
.container { .container {
padding-bottom: 25px; padding-bottom: 25px;
} }
#firstValue { .inlineInput {
width: 25% !important; width: 25% !important;
display: inline; display: inline;
} }

View File

@ -60,7 +60,7 @@ switch ($currentpage) {
break; break;
case '/views/function-views/convertCurrency.php': case '/views/function-views/convertCurrency.php':
$title = 'Conversion de devise'; $title = 'Conversion de devise';
$description = "Convertis des euros (€) dans une autre devise."; $description = "Convertis une valeur dans une devise dans une autre devise.";
$image = 'https://function.divlo.fr/img/function-image/convertCurrency.png'; $image = 'https://function.divlo.fr/img/function-image/convertCurrency.png';
break; break;
case '/views/function-views/convertBinaryText.php': case '/views/function-views/convertBinaryText.php':

View File

@ -166,42 +166,45 @@ function getRandomQuote() {
return '" ' + randomQuotes["quote"] + ' " <br> <br> - ' + randomQuotes["source"]; return '" ' + randomQuotes["quote"] + ' " <br> <br> - ' + randomQuotes["source"];
} }
// Convertis des euros (€) dans une autre devise // Convertis une valeur dans une devise dans une autre devise
function convertCurrency(currency, euroValue) { function convertCurrency(value, currency, url) {
$.ajax({ $.ajax({
url : 'https://api.exchangeratesapi.io/latest', url : url,
dataType : "json", dataType : "json",
success: function (jsonFixer) { success: function (jsonFixer) {
switch(currency) { switch(currency) {
case '£': case '£':
$('.results').html(formatNumberResult(euroValue) + ' € = ' + ((parseFloat(jsonFixer.rates.GBP) * euroValue)).toFixed(2) + ' ' + currency); $('.results').html(formatNumberResult(value) + ' ' + jsonFixer.base + ' = ' + ((parseFloat(jsonFixer.rates.GBP) * value)).toFixed(2) + ' ' + currency);
break; break;
case '$ Américain': case '$ Américain':
$('.results').html(formatNumberResult(euroValue) + ' € = ' + ((parseFloat(jsonFixer.rates.USD) * euroValue)).toFixed(2) + ' ' + currency); $('.results').html(formatNumberResult(value) + ' ' + jsonFixer.base + ' = ' + ((parseFloat(jsonFixer.rates.USD) * value)).toFixed(2) + ' ' + currency);
break; break;
case '$ Canadien': case '$ Canadien':
$('.results').html(formatNumberResult(euroValue) + ' € = ' + ((parseFloat(jsonFixer.rates.CAD) * euroValue)).toFixed(2) + ' ' + currency); $('.results').html(formatNumberResult(value) + ' ' + jsonFixer.base + ' = ' + ((parseFloat(jsonFixer.rates.CAD) * value)).toFixed(2) + ' ' + currency);
break; break;
case '$ Australien': case '$ Australien':
$('.results').html(formatNumberResult(euroValue) + ' € = ' + ((parseFloat(jsonFixer.rates.AUD) * euroValue)).toFixed(2) + ' ' + currency); $('.results').html(formatNumberResult(value) + ' ' + jsonFixer.base + ' = ' + ((parseFloat(jsonFixer.rates.AUD) * value)).toFixed(2) + ' ' + currency);
break; break;
case '$ Mexicain': case '$ Mexicain':
$('.results').html(formatNumberResult(euroValue) + ' € = ' + ((parseFloat(jsonFixer.rates.MXN) * euroValue)).toFixed(2) + ' ' + currency); $('.results').html(formatNumberResult(value) + ' ' + jsonFixer.base + ' = ' + ((parseFloat(jsonFixer.rates.MXN) * value)).toFixed(2) + ' ' + currency);
break; break;
case 'Fr': case 'Fr':
$('.results').html(formatNumberResult(euroValue) + ' € = ' + ((parseFloat(jsonFixer.rates.CHF) * euroValue)).toFixed(2) + ' ' + currency); $('.results').html(formatNumberResult(value) + ' ' + jsonFixer.base + ' = ' + ((parseFloat(jsonFixer.rates.CHF) * value)).toFixed(2) + ' ' + currency);
break; break;
case '₽': case '₽':
$('.results').html(formatNumberResult(euroValue) + ' € = ' + ((parseFloat(jsonFixer.rates.RUB) * euroValue)).toFixed(2) + ' ' + currency); $('.results').html(formatNumberResult(value) + ' ' + jsonFixer.base + ' = ' + ((parseFloat(jsonFixer.rates.RUB) * value)).toFixed(2) + ' ' + currency);
break; break;
case 'R$': case 'R$':
$('.results').html(formatNumberResult(euroValue) + ' € = ' + ((parseFloat(jsonFixer.rates.BRL) * euroValue)).toFixed(2) + ' ' + currency); $('.results').html(formatNumberResult(value) + ' ' + jsonFixer.base + ' = ' + ((parseFloat(jsonFixer.rates.BRL) * value)).toFixed(2) + ' ' + currency);
break; break;
case '¥': case '¥':
$('.results').html(formatNumberResult(euroValue) + ' € = ' + ((parseFloat(jsonFixer.rates.JPY) * euroValue)).toFixed(2) + ' ' + currency); $('.results').html(formatNumberResult(value) + ' ' + jsonFixer.base + ' = ' + ((parseFloat(jsonFixer.rates.JPY) * value)).toFixed(2) + ' ' + currency);
break;
case '€':
$('.results').html(formatNumberResult(value) + ' ' + jsonFixer.base + ' = ' + ((parseFloat(jsonFixer.rates.EUR) * value)).toFixed(2) + ' ' + currency);
break; break;
default: default:
$('.results').html(formatNumberResult(euroValue) + ' €'); $('.results').html(formatNumberResult(value) + ' €');
break; break;
} }
}, },

View File

@ -165,19 +165,22 @@ $(function () {
$("#submitConvertCurrency").click(function() $("#submitConvertCurrency").click(function()
{ {
let euroValue = $('#euroValue').val(); let value = $('#value').val();
let euroToCurrency = $("#euroToCurrency option:selected").val(); let currencyOfTheValue = $("#currencyOfTheValue option:selected").val();
if(isEmptyValue(euroValue) || isNaN(parseFloat(euroValue))) let currencyAfter = $("#currencyAfter option:selected").val();
if(isEmptyValue(value) || isNaN(parseFloat(value)))
{ {
$('.results').html(emptyMessageError); $('.results').html(emptyMessageError);
$("#euroValue, #submitConvertCurrency").click(function() { $("#value, #submitConvertCurrency").click(function() {
document.location.replace("../function-views/convertCurrency.php"); document.location.replace("../function-views/convertCurrency.php");
}); });
} }
else else
{ {
euroValue = parseFloat(euroValue); // let url = 'https://api.exchangeratesapi.io/latest';
convertCurrency(euroToCurrency, euroValue); let url = 'https://api.exchangeratesapi.io/latest?base=' + currencyOfTheValue;
value = parseFloat(value);
convertCurrency(value, currencyAfter, url);
} }
}); });

View File

@ -46,7 +46,7 @@
</tr> </tr>
<tr> <tr>
<td><a href="./function-views/convertCurrency.php">Conversion de devise</a></td> <td><a href="./function-views/convertCurrency.php">Conversion de devise</a></td>
<td>Convertis des euros () dans une autre devise.</td> <td>Convertis une valeur dans une devise dans une autre devise.</td>
</tr> </tr>
<tr> <tr>
<td><a href="./function-views/convertBinaryText.php">Conversion d'un texte en binaire et vice-versa</a></td> <td><a href="./function-views/convertBinaryText.php">Conversion d'un texte en binaire et vice-versa</a></td>

View File

@ -10,12 +10,24 @@
<p class="pt-3 text-center"><?php echo $description?></p> <p class="pt-3 text-center"><?php echo $description?></p>
<br> <br>
<div class="form-group"> <div class="form-group">
<label for="euroValue">Entrez le nombre d'euros () à convertir :</label> <label for="value">Entrez le nombre à convertir et sélectionner la devise de celui-çi :</label>
<br> <br>
<input name="euroValue" type="text" id="euroValue" placeholder="(e.g : 50)" class="form-control"> <input name="value" type="text" class="inlineInput" id="value" placeholder="(e.g : 50)" class="form-control">
<select id="currencyOfTheValue">
<option value="EUR">Euro () - EUR</option>
<option value="GBP">Livre sterling (£) - GBP</option>
<option value="USD">Dollar Américain ($) - USD</option>
<option value="CAD">Dollar Canadien ($) - CAD</option>
<option value="AUD">Dollar Australien ($) - AUD</option>
<option value="MXN">Peso Mexicain ($) - MXN</option>
<option value="CHF">Franc Suisse (Fr) - CHF</option>
<option value="RUB">Rouble Russe () - RUB</option>
<option value="BRL">Réal brésilien (R$) - BRL</option>
<option value="JPY">Yen (¥) - JPY</option>
</select>
<br> <br> <br> <br>
<label for="euroToCurrency">Choisissez la devise que voulez avoir après conversion :</label> <br> <label for="currencyAfter">Choisissez la devise que voulez avoir après conversion :</label> <br>
<select id="euroToCurrency"> <select id="currencyAfter">
<option value="£">Livre sterling (£) - GBP</option> <option value="£">Livre sterling (£) - GBP</option>
<option value="$ Américain">Dollar Américain ($) - USD</option> <option value="$ Américain">Dollar Américain ($) - USD</option>
<option value="$ Canadien">Dollar Canadien ($) - CAD</option> <option value="$ Canadien">Dollar Canadien ($) - CAD</option>
@ -25,6 +37,7 @@
<option value="">Rouble Russe () - RUB</option> <option value="">Rouble Russe () - RUB</option>
<option value="R$">Réal brésilien (R$) - BRL</option> <option value="R$">Réal brésilien (R$) - BRL</option>
<option value="¥">Yen (¥) - JPY</option> <option value="¥">Yen (¥) - JPY</option>
<option value="">Euro () - EUR</option>
</select> </select>
<br> <br>
<div class="form-row text-center"> <div class="form-row text-center">

View File

@ -12,7 +12,7 @@
<div class="form-group"> <div class="form-group">
<label for="firstValue">Entrez la distance que vous voulez convertir et sélectionner l'unité de celle-çi :</label> <label for="firstValue">Entrez la distance que vous voulez convertir et sélectionner l'unité de celle-çi :</label>
<br> <br>
<input name="firstValue" type="text" id="firstValue" placeholder="(e.g : 50)" class="form-control"> <input name="firstValue" type="text" class="inlineInput" id="firstValue" placeholder="(e.g : 50)" class="form-control">
<select id="firstValueUnit"> <select id="firstValueUnit">
<option value="pm">pm</option> <option value="pm">pm</option>
<option value="nm">nm</option> <option value="nm">nm</option>