Opravy parseru pro Sladovnickou

This commit is contained in:
Martin Berka 2023-07-04 10:19:42 +02:00
parent 814aa98721
commit 13f3c1178f
2 changed files with 13 additions and 5 deletions

View File

@ -205,6 +205,8 @@ function App() {
Poslední změny:
<ul>
<li>Zavedení JWT, přesun autentizace na server</li>
<li>Oprava pádu v případě, že ve Sladovnické daný den nic není</li>
<li>Podpora situace, kdy ve Sladovnické je méně než 3 hlavní jídla</li>
</ul>
</Alert>
<h1 className='title'>Dnes je {data.date}</h1>

View File

@ -125,7 +125,13 @@ export const getMenuSladovnicka = async (date: Date = new Date(), mock: boolean
}
})
if (index === undefined) {
throw Error("V HTML nebyl nalezen index pro datum " + searchedDayText);
// Pravděpodobně svátek, nebo je zavřeno
return [{
amount: undefined,
name: "Pro daný den nebyla nalezena denní nabídka",
price: "",
isSoup: false,
}];
}
// Dle dohledaného indexu najdeme správný tabpanel
@ -164,10 +170,10 @@ export const getMenuSladovnicka = async (date: Date = new Date(), mock: boolean
});
// Hlavní jídla - div -> table -> tbody -> 3x tr
const mainCourseRows = $(tables.get(1)).children().first().children();
// TODO tohle nemusí být vždy pravda, jídel může být jiný počet
if (mainCourseRows.length !== 3) {
throw Error("Neočekávaný počet řádek jídel: " + mainCourseRows.length + ", ale očekávány byly 3");
}
// Záměrně zakomentováno - občas je ve Sladovnické jídel méně
// if (mainCourseRows.length !== 3) {
// throw Error("Neočekávaný počet řádek jídel: " + mainCourseRows.length + ", ale očekávány byly 3");
// }
mainCourseRows.each((i, foodRow) => {
const foodCells = $(foodRow).children();
if (foodCells.length !== 3) {