New function : filterStudents
This commit is contained in:
parent
bb6268af7b
commit
521f9ee24a
@ -20,6 +20,7 @@ Le projet est disponible sur [function.divlo.fr](https://function.divlo.fr/).
|
||||
| **calculateAge(birthDate)** | Calcule l'âge de quelqu'un selon la 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 |
|
||||
|
||||
## La liste des Fonctions Annexes :
|
||||
| Nom | Description | Paramètre(s) |
|
||||
@ -32,4 +33,3 @@ 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 |
|
||||
|
||||
|
BIN
img/function-image/filterStudents.png
Normal file
BIN
img/function-image/filterStudents.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 160 KiB |
@ -43,6 +43,11 @@ switch ($currentpage) {
|
||||
$description = "Affiche la météo et l'heure local selon la ville.";
|
||||
$image = 'https://function.divlo.fr/img/function-image/weatherRequest.png';
|
||||
break;
|
||||
case '/views/function-views/filterStudents.php':
|
||||
$title = 'Trie les prénoms par leur première lettre';
|
||||
$description = "Affiche uniquement les prénoms (qui sont dans la liste) qui commence par la lettre souhaitée.";
|
||||
$image = 'https://function.divlo.fr/img/function-image/filterStudents.png';
|
||||
break;
|
||||
default:
|
||||
$title = 'Erreur 404';
|
||||
$description = "Cette page n'existe pas!";
|
||||
|
@ -146,6 +146,36 @@ function convertDistance (firstValue, unitFirstValue, unitFinalValue) {
|
||||
}
|
||||
}
|
||||
|
||||
// Affiche uniquement les prénoms (qui sont dans la liste) qui commence par la lettre souhaitée
|
||||
function filterStudents(filteredLetter, students)
|
||||
{
|
||||
let filteredStudents = [];
|
||||
for(let i = 0; i < students.length; i++)
|
||||
{
|
||||
let studentBoucle = students[i];
|
||||
if (studentBoucle[0] === filteredLetter) {
|
||||
filteredStudents.push(studentBoucle);
|
||||
}
|
||||
}
|
||||
if (filteredStudents.length === 1)
|
||||
{
|
||||
return ("Prénom qui commence par " + filteredLetter + " : " + filteredStudents + '.');
|
||||
}
|
||||
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;
|
||||
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 + '.');
|
||||
}
|
||||
else
|
||||
{
|
||||
return ("Il n'y a pas de prénom commencant par " + filteredLetter + ".");
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/////////////////////////////////////////////////////////////////
|
||||
/* Fonctions Annexes */
|
||||
|
@ -121,6 +121,27 @@ $(function () {
|
||||
}
|
||||
});
|
||||
|
||||
$("#submitFilterStudents").click(function()
|
||||
{
|
||||
let nameEntered = $('#nameEntered').val();
|
||||
let filteredLetter = $("#filteredLetter").val();
|
||||
|
||||
if(isEmptyValue(nameEntered) || isEmptyValue(filteredLetter))
|
||||
{
|
||||
$('.results').html(emptyMessageError);
|
||||
}
|
||||
else if(filteredLetter.length === 1)
|
||||
{
|
||||
let students = nameEntered.split(', ');
|
||||
filteredLetter = capitalize(filteredLetter);
|
||||
let result = filterStudents(filteredLetter, students);
|
||||
$('.results').html(result);
|
||||
}
|
||||
else {
|
||||
$('.results').html(messageError);
|
||||
}
|
||||
});
|
||||
|
||||
/* Permet d'afficher l'heure en temps réel sur le footer */
|
||||
window.onload = realDateTime('realDateTime');
|
||||
|
||||
|
@ -36,6 +36,10 @@
|
||||
<td><a href="./function-views/convertDistance.php">Conversion de Distance</a></td>
|
||||
<td>Convertit la longueur (distance) avec les unités allant de picomètre au Téramètre.</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><a href="./function-views/filterStudents.php">Trie les prénoms par leur première lettre</a></td>
|
||||
<td>Affiche uniquement les prénoms (qui sont dans la liste) qui commence par la lettre souhaitée.</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
|
29
views/function-views/filterStudents.php
Normal file
29
views/function-views/filterStudents.php
Normal file
@ -0,0 +1,29 @@
|
||||
<!-- Config -->
|
||||
<?php include("../../php/config.php");?>
|
||||
|
||||
<!-- Header -->
|
||||
<?php include("../../incl/header.php");?>
|
||||
|
||||
<!-- Page Content -->
|
||||
<div class="container">
|
||||
<h1><span class="important"><?php echo $title?></span> :</h1>
|
||||
<p class="pt-3 text-center"><?php echo $description?></p>
|
||||
<div class="form-group">
|
||||
<label for="nameEntered">Entrez les prénoms :</label>
|
||||
<input name="nameEntered" type="text" id="nameEntered" placeholder="(e.g : 'Prénom1, Prénom2, Prénom3, ...')" class="form-control">
|
||||
<br>
|
||||
<label for="filteredLetter">Entrez la lettre à filtré :</label>
|
||||
<input name="filteredLetter" type="text" id="filteredLetter" placeholder="(e.g : 'A')" class="form-control">
|
||||
<br>
|
||||
<div class="form-row text-center">
|
||||
<div class="col-12">
|
||||
<button type="submit" id="submitFilterStudents" class="btn btn-dark text-center">Envoyer</button>
|
||||
</div>
|
||||
</div>
|
||||
<br> <br>
|
||||
<p class="results text-center"></p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- Footer -->
|
||||
<?php include("../../incl/footer.php");?>
|
Reference in New Issue
Block a user