-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathlisteRecettes.js
63 lines (59 loc) · 2.15 KB
/
listeRecettes.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
const ulElement = document.getElementById("liste");
const bouton = document.getElementById("recherche");
bouton.addEventListener('click',filtrer);
filtrer();
async function filtrer()
{
while (ulElement.firstChild) {
ulElement.removeChild(ulElement.firstChild);
}
const choixOrigine= document.getElementById("origine");
const origine= choixOrigine.options[choixOrigine.selectedIndex].value;
const choixRegime= document.getElementById("regime");
const regime = choixRegime.options[choixRegime.selectedIndex].value;
const choixType = document.getElementById("type");
const type= choixType.options[choixType.selectedIndex].value;
const ingredients = document.getElementById("ingredients").value.split(",");
let filtre={origine,regime,type,ingredients};
try{
const response = await fetch("/projet1/api/filtrer",{
method:"POST",
headers:{
"Content-Type":"application"
},
body:JSON.stringify(filtre),
} );
const data = await response.json();
addElements(data);
}
catch(error)
{
}
}
function addElements(data)
{
if(data.length===0)
{
const recetteFiche= document.createElement('li');
recetteFiche.textContent = "Aucune recette ne correspond à votre recherche";
ulElement.append(recetteFiche);
}
else{
data.forEach(recette => {
const recetteFiche= document.createElement('li');
const nomRecette= document.createElement('a');
nomRecette.textContent = recette.nom;
nomRecette.href= "./recette.html?no="+recette.id;
const chef = document.createElement('a');
chef.textContent = "Chef " + recette.prenom;
chef.href= "./profil.html?chef="+recette.email;
const frame = document.createElement('a');
frame.href = "./recette.html?no="+recette.id;
const img = document.createElement('img');
img.src = recette.src;
frame.append(img)
recetteFiche.append(nomRecette, chef, frame);
ulElement.append(recetteFiche);
});
}
}