vse datoteke so bile prestavljene v mapo restavracija in v ustrezne podmape, v vseh datotekah so tudi popravljeni linki
This commit is contained in:
@@ -0,0 +1,328 @@
|
||||
|
||||
const jedi = [ //const jedi - ustvari spremenljivko jedi, z [] pa označimo polje z več jedmi
|
||||
// PREDJEDI
|
||||
{ //z {} pa označimo posamezno jed
|
||||
naziv: "Italjanske bruschette", //dodamo ji lastnosti (naziv:) in vrednost ("mučkalica")
|
||||
opis: "Hrustljavo pečen kruh s svežim paradižnikom, baziliko, česnom in olivnim oljem.",
|
||||
kategorija: "Predjedi", // to je kategorija po kateri se bodo jedi filtirale
|
||||
alergeni: "gluten",
|
||||
cena: 5.50 //številko ni treba napisat v "", decimalno vejico zamenja pika
|
||||
},
|
||||
{
|
||||
naziv: "Patatas bravas",
|
||||
opis: "Hrustljav pečen krompir s pikantno paradižnikovo omako in nežnim česnovim aiolijem.",
|
||||
kategorija: "Predjedi",
|
||||
alergeni: "/",
|
||||
cena: 5.90
|
||||
},
|
||||
{
|
||||
naziv: "Mediteranski mezze",
|
||||
opis: "Izbor humosa, tzatzikija, oliv in sveže zelenjave s toplim pita kruhom.",
|
||||
kategorija: "Predjedi",
|
||||
alergeni: "gluten",
|
||||
cena: 7.50
|
||||
},
|
||||
{
|
||||
naziv: "Vietnamski poletni zavitki",
|
||||
opis: "Riževi zavitki s kozicami, svežo zelenjavo in zelišči, postreženi z arašidovo omako.",
|
||||
kategorija: "Predjedi",
|
||||
alergeni: "morski sadeži, oreščki, soja",
|
||||
cena: 7.50
|
||||
},
|
||||
{
|
||||
naziv: "Gyoze",
|
||||
opis: "Japonski polnjeni žepki s hrustljavo zapečenim dnom, postreženi s sojino omako za pomakanje.",
|
||||
kategorija: "Predjedi",
|
||||
alergeni: "gluten, jajca, soja",
|
||||
cena: 6.90
|
||||
},
|
||||
{
|
||||
naziv: "Nachosi za deljenje",
|
||||
opis: "Tortilja čips s toplim sirom, jalapeni, salso, guacamolejem in kislo smetano.",
|
||||
kategorija: "Predjedi",
|
||||
alergeni: "jajca, gluten, laktoza",
|
||||
cena: 7.90
|
||||
},
|
||||
{
|
||||
naziv: "Sigara boregui",
|
||||
opis: "Hrustljavi zavitki iz tankega testa s slanim sirom in zelišči, postreženi z jogurtovo omako.",
|
||||
kategorija: "Predjedi",
|
||||
alergeni: "gluten, laktoza",
|
||||
cena: 6.50
|
||||
},
|
||||
{
|
||||
naziv: "Indijske samose",
|
||||
opis: "Zlato zapečeni žepki, polnjeni z začinjenim krompirjem in grahom, z metino omako.",
|
||||
kategorija: "Predjedi",
|
||||
alergeni: "gluten, jajca",
|
||||
cena: 5.90
|
||||
},
|
||||
|
||||
// GLAVNE JEDI
|
||||
{
|
||||
naziv: "Mučkalica",
|
||||
opis: "Sočni koščki mesa v bogati paradižnikovi omaki s papriko in čebulo, postreženi s pečenim krompirjem ali prilogo po izbiri.",
|
||||
kategorija: "Glavne jedi",
|
||||
alergeni: "gluten",
|
||||
cena: 13.90
|
||||
},
|
||||
{
|
||||
naziv: "Chicken curry",
|
||||
opis: "Nežno piščančje meso v kremni paradižnikovi omaki z aromatičnimi indijskimi začimbami, postreženo z basmatim rižem ali drugo prilogo po izbiri.",
|
||||
kategorija: "Glavne jedi",
|
||||
alergeni: "oreščki, laktoza",
|
||||
cena: 14.50
|
||||
},
|
||||
{
|
||||
naziv: "Lasagna al forno",
|
||||
opis: "Plasti testenin z bogatim mesnatim ragujem, nežnim bešamelom in zapečeno skorjico iz parmezana.",
|
||||
kategorija: "Glavne jedi",
|
||||
alergeni: "gluten, laktoza",
|
||||
cena: 13.50
|
||||
},
|
||||
{
|
||||
naziv: "Pizza Diavola",
|
||||
opis: "Napolitansko testo z bogato paradižnikovo omako, mozzarelo, pikantno salamo in ščepcem čilija, pečeno do popolno hrustljavega roba.",
|
||||
kategorija: "Glavne jedi",
|
||||
alergeni: "gluten, laktoza",
|
||||
cena: 14.50
|
||||
},
|
||||
{
|
||||
naziv: "Paella",
|
||||
opis: "Žafranov riž z morskimi sadeži, česnom in svežimi zelišči, ki v vsak grižljaj prinesejo okus Sredozemlja.",
|
||||
kategorija: "Glavne jedi",
|
||||
alergeni: "morski sadeži",
|
||||
cena: 17.90
|
||||
},
|
||||
{
|
||||
naziv: "Dunajski zrezek",
|
||||
opis: "Zlato pečen paniran zrezek z limono in krompirjevo ali drugo prilogo po izbiri.",
|
||||
kategorija: "Glavne jedi",
|
||||
alergeni: "jajca, gluten",
|
||||
cena: 14.90
|
||||
},
|
||||
{
|
||||
naziv: "Piščanec teriyaki",
|
||||
opis: "Zapečen piščanec v sladko-slani omaki z rižem, hrustljavo zelenjavo in sezamom.",
|
||||
kategorija: "Glavne jedi",
|
||||
alergeni: "oreščki, jajca",
|
||||
cena: 14.50
|
||||
},
|
||||
{
|
||||
naziv: "Grška mussaka",
|
||||
opis: "Plasti krompirja, jajčevcev in začinjenega mletega mesa, prekrite s kremnim bešamelom in zapečene do zlato rjave barve.",
|
||||
kategorija: "Glavne jedi",
|
||||
alergeni: "gluten, laktoza",
|
||||
cena: 13.50
|
||||
},
|
||||
{
|
||||
naziv: "Piščančji fajitas",
|
||||
opis: "Začinjeni koščki piščanca s papriko in čebulo, postreženi s toplimi tortiljami, salso in guacamolejem.",
|
||||
kategorija: "Glavne jedi",
|
||||
alergeni: "gluten",
|
||||
cena: 15.50
|
||||
},
|
||||
|
||||
// PRILOGE
|
||||
{
|
||||
naziv: "Basmati riž",
|
||||
opis: "Rahla, dišeča riževa priloga, odlična za curry in azijske jedi.",
|
||||
kategorija: "Priloge",
|
||||
alergeni: "/",
|
||||
cena: 2.50
|
||||
},
|
||||
{
|
||||
naziv: "Pečen krompir",
|
||||
opis: "Zlato zapečen krompir z rožmarinom, česnom in izbranimi začimbami.",
|
||||
kategorija: "Priloge",
|
||||
alergeni: "/",
|
||||
cena: 3.00
|
||||
},
|
||||
{
|
||||
naziv: "Hrustljav pomfri",
|
||||
opis: "Zlato pečen krompirček s hrustljavo skorjico in mehko sredico.",
|
||||
kategorija: "Priloge",
|
||||
alergeni: "/",
|
||||
cena: 3.00
|
||||
},
|
||||
{
|
||||
naziv: "Domač kruh",
|
||||
opis: "Sveže pečen kruh s hrustljavo skorjico, idealen za pomakanje v omake.",
|
||||
kategorija: "Priloge",
|
||||
alergeni: "gluten",
|
||||
cena: 2.00
|
||||
},
|
||||
|
||||
// SLADICE
|
||||
{
|
||||
naziv: "Panna cotta",
|
||||
opis: "Nežna vaniljeva smetana z osvežilnim prelivom iz gozdnih sadežev.",
|
||||
kategorija: "Sladice",
|
||||
alergeni: "laktoza",
|
||||
cena: 5.50
|
||||
},
|
||||
{
|
||||
naziv: "Baklava",
|
||||
opis: "Plasti tankega hrustljavega testa z oreščki, prelite s sladkim sirupom.",
|
||||
kategorija: "Sladice",
|
||||
alergeni: "oreščki, gluten",
|
||||
cena: 4.90
|
||||
},
|
||||
{
|
||||
naziv: "Tiramisu",
|
||||
opis: "Klasična kombinacija kave, rahle mascarponejeve kreme in kakava.",
|
||||
kategorija: "Sladice",
|
||||
alergeni: "laktoza, gluten, oreščki",
|
||||
cena: 5.90
|
||||
},
|
||||
{
|
||||
naziv: "Pohan sladoled",
|
||||
opis: "Hrustljava zlata skorjica, ki skriva hladno vaniljevo sredico, s čokoladnim prelivom.",
|
||||
kategorija: "Sladice",
|
||||
alergeni: "gluten, jajce, laktoza",
|
||||
cena: 6.50
|
||||
},
|
||||
{
|
||||
naziv: "Crepes",
|
||||
opis: "Tanke francoske palačinke po izbiri s čokoladnim namazom, marmelado ali limono in sladkorjem.",
|
||||
kategorija: "Sladice",
|
||||
alergeni: "gluten, jajca, laktoza",
|
||||
cena: 4.90
|
||||
},
|
||||
{
|
||||
naziv: "Jabolčni zavitek",
|
||||
opis: "Dišeč zvitek z jabolki, cimetom in rozinami, postrežen topel z vaniljevim sladoledom.",
|
||||
kategorija: "Sladice",
|
||||
alergeni: "gluten, jajca, laktoza",
|
||||
cena: 5.50
|
||||
},
|
||||
{
|
||||
naziv: "Čokoladni souffle",
|
||||
opis: "Topel čokoladni kolač s tekočo sredico in kepico vaniljevega sladoleda.",
|
||||
kategorija: "Sladice",
|
||||
alergeni: "gluten, jajca, laktoza, oreščki",
|
||||
cena: 6.50
|
||||
},
|
||||
{
|
||||
naziv: "Loukoumades",
|
||||
opis: "Majhni zlato ocvrti grški miškasti grižljaji, preliti z medom in posuti s cimetom.",
|
||||
kategorija: "Sladice",
|
||||
alergeni: "jajca, gluten",
|
||||
cena: 5.90
|
||||
}
|
||||
];
|
||||
|
||||
function izrisiJedilnik(kategorija) { //dodala kategorijo kot parameter funkcije
|
||||
const jedilnik = document.querySelector("#jedilnik"); //poisce nas prazen div jedilnik
|
||||
|
||||
const sekcija = document.createElement("section"); //ustvari nov element <section>
|
||||
sekcija.classList.add("jedilnik_kategorija"); //sectionu dodam ze obstojec razred - za CSS oblikovanje
|
||||
|
||||
const naslov = document.createElement("h2"); //spet naredimo element <h2>
|
||||
naslov.textContent = kategorija; //v ta element h2 izpisemo "Predjedi"
|
||||
|
||||
sekcija.appendChild(naslov); //vstavi naslov (h2) v sekcijo
|
||||
|
||||
// Ustvarimo div za vodoravno pomikanje tabele.
|
||||
const tabelaScroll = document.createElement("div");
|
||||
tabelaScroll.classList.add("tabela_scroll");
|
||||
|
||||
// Ustvarimo tabelo.
|
||||
const tabela = document.createElement("table");
|
||||
|
||||
// Ustvarimo naslov tabele.
|
||||
const caption = document.createElement("caption");
|
||||
caption.textContent = kategorija;
|
||||
tabela.appendChild(caption); //dodamo caption v tabelo
|
||||
|
||||
// Ustvarimo glavo tabele.
|
||||
const thead = document.createElement("thead");
|
||||
const vrsticaGlave = document.createElement("tr");
|
||||
|
||||
const stolpci = ["Jed", "Opis", "Alergeni", "Cena"];
|
||||
|
||||
for (const stolpec of stolpci) { //namesto da bi pisala vsak th posebaj gre cez vse elemente stolpci, in za vsak element ustvari th (stolpec je spremenjlivka ki gre cez zapis stolpcii)
|
||||
const th = document.createElement("th");
|
||||
th.textContent = stolpec;
|
||||
vrsticaGlave.appendChild(th);
|
||||
}
|
||||
|
||||
thead.appendChild(vrsticaGlave);
|
||||
tabela.appendChild(thead);
|
||||
|
||||
// Ustvarimo prazno telo tabele.
|
||||
const tbody = document.createElement("tbody");
|
||||
// Za vsako predjed ustvari novo vrstico tabele.
|
||||
for (const jed of jedi) { //se premikamo po jedeh
|
||||
if (jed.kategorija === kategorija) { //ce je kategorija predjed true potem
|
||||
const vrstica = document.createElement("tr"); //vstavimo vrstico (tr)
|
||||
|
||||
const podatki = [ //naredimo polje podatkiu (spet polje z vec elementi) ki vsebuje lastnosti posamezde jedi (npr muckalica)
|
||||
jed.naziv,
|
||||
jed.opis,
|
||||
jed.alergeni,
|
||||
jed.cena.toLocaleString("sl-SI", { //posebaj izpis z min/mac dvema decimalkama v slo jeziku, na koncu pa dodan €
|
||||
minimumFractionDigits: 2,
|
||||
maximumFractionDigits: 2
|
||||
}) + " €"
|
||||
];
|
||||
|
||||
for (const podatek of podatki) { //s podatkom gremo cez "podatki" in vsak element/lastnost posabej izpisemo v td
|
||||
const td = document.createElement("td");
|
||||
td.textContent = podatek;
|
||||
vrstica.appendChild(td); //td nato vstavimo v vrstico
|
||||
}
|
||||
|
||||
tbody.appendChild(vrstica);
|
||||
}
|
||||
}
|
||||
tabela.appendChild(tbody);
|
||||
|
||||
tabelaScroll.appendChild(tabela);
|
||||
sekcija.appendChild(tabelaScroll);
|
||||
jedilnik.appendChild(sekcija);
|
||||
|
||||
}
|
||||
|
||||
const gumbi = document.querySelectorAll(".filter_gumb"); //element gumb za vsak button za pac izbiranje kategorije
|
||||
|
||||
// Ob kliku spremeni aktivni gumb.
|
||||
for (const gumb of gumbi) {
|
||||
|
||||
gumb.addEventListener("click", function () { //ko kliknem na gumb za izbiro prikaza menija
|
||||
|
||||
|
||||
for (const posamezenGumb of gumbi) { //najprej vsem gumbom odstranim aktivno
|
||||
posamezenGumb.classList.remove("aktiven");
|
||||
}
|
||||
|
||||
|
||||
gumb.classList.add("aktiven"); //dodam aktiven SAMO kliknjenemu gumbu (sem izven for zanke)
|
||||
|
||||
const kategorija = gumb.dataset.kategorija;
|
||||
|
||||
prikaziKategorije(kategorija);
|
||||
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
const kategorije = ["Predjedi", "Glavne jedi", "Priloge", "Sladice"]; //ustvarjeno polje vseh kategorij
|
||||
|
||||
// Prikaže samo izbrano kategorijo oziroma vse kategorije.
|
||||
function prikaziKategorije(izbranaKategorija) {
|
||||
const jedilnik = document.querySelector("#jedilnik");
|
||||
|
||||
jedilnik.replaceChildren(); //iz elementa jedilnik odstrani vse njegove podrejene elemente
|
||||
|
||||
for (const kategorija of kategorije) {
|
||||
if (izbranaKategorija === "Vse" || izbranaKategorija === kategorija) { // || pomeni ali, torej kadar uporabnik izbere vse ALI eno od kategorij
|
||||
izrisiJedilnik(kategorija);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
prikaziKategorije("Vse"); //da se ko se stan naloz najprej pokazejo vsi jedilniki
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user