aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--index.html2
-rw-r--r--parse.js28
-rw-r--r--server.js3
3 files changed, 32 insertions, 1 deletions
diff --git a/index.html b/index.html
index 4b6a503..b66abad 100644
--- a/index.html
+++ b/index.html
@@ -18,7 +18,7 @@
<form method="GET" class="float-block">
<label for="index" class="shadow">Opettaja, kurssi tai luokka:</label>
<br>
- <input type="text" name="index" placeholder="sahe // ÄI1.2 // B203">
+ <input type="text" name="index" placeholder="\(example-input\)">
<img src="/help.png" class="info" alt="Siis häh?">
<span><p class="infoblock highlight">Syötä tähän kenttään yhdeltätoista alkavan tuntisi opettaja, kurssikoodi tai luokka. Älä syötä useampaa edellä mainituista, yksi on tarpeeksi.</p></span>
<br>
diff --git a/parse.js b/parse.js
index 7c47423..c3b7684 100644
--- a/parse.js
+++ b/parse.js
@@ -277,9 +277,37 @@ function getShift(day, index, db) // day: int, 1 = monday; index: string of cour
return res;
}
+function randInt(start, stop)
+{
+ return start + Math.floor(Math.random() * (stop - start));
+}
+
+function getIndexes(db, day, shift, type)
+{
+ let d = db[day];
+ let sh = Object.values(d)[shift][type];
+ return Object.values(db[day])[shift][type];
+}
+
+function getRandomIndex(db, day = randInt(0, 5), shift = randInt(0, 3), type = randInt(0, 3))
+{
+ let el;
+ let i = 0;
+ let indexes = getIndexes(db, day, shift, type);
+ while ((el === undefined) && (i < indexes.length))
+ {
+ el = indexes[i];
+ i++;
+ }
+ if (el == undefined)
+ return getRandomIndex(db);
+ return el;
+}
+
exports.build = parseShift;
exports.indexType = getIndexType;
exports.classes = parseClasses;
exports.get = getShift;
exports.cluttered = parseCluttered;
exports.find = findExpression;
+exports.randomIndex = getRandomIndex;
diff --git a/server.js b/server.js
index 2f45e95..d3c8838 100644
--- a/server.js
+++ b/server.js
@@ -132,6 +132,9 @@ async function buildMain(args)
if (res["shift"] === -1)
res["shift"] = "Kurssilla/opettajalla/luokalla ei ole ruokailua päivällä tai kurssia ei ole olemassa!";
+ // get the example input
+ res["example-input"] = parse.randomIndex(DB, day - 1);
+
// get the day
let weekdays = ["su", "ma", "ti", "ke", "to", "pe", "la"];
res["day"] = weekdays[day];