From 648f8da63b2af6ee6213ca73d834fd52eb416f11 Mon Sep 17 00:00:00 2001 From: Midgard Date: Sat, 29 Feb 2020 23:12:16 +0100 Subject: [PATCH] Add S5 --- data/s5.hlds | 190 ++++++++++++++++++++++++++++++++++++++++++++ data/s5_generate.py | 89 +++++++++++++++++++++ 2 files changed, 279 insertions(+) create mode 100644 data/s5.hlds create mode 100755 data/s5_generate.py diff --git a/data/s5.hlds b/data/s5.hlds new file mode 100644 index 0000000..eda521c --- /dev/null +++ b/data/s5.hlds @@ -0,0 +1,190 @@ +============================ +s5: S5 + osm https://www.openstreetmap.org/node/3752879366 + address Krijgslaan 281, 9000 Gent + website https://www.ugent.be/student/nl/meer-dan-studeren/resto/restos/restocampussterre.htm +============================ + +dish sandwich_kaas: Broodje Kaas -- Kaas, ei, komkommer, sla, tomaat en mayonaise + single_choice sandwich: Broodje + small_white: Klein wit € 1.40 + small_brown: Klein bruin € 1.40 + large_white: Groot wit € 2.10 + large_brown: Groot bruin € 2.10 + quattro: Quattro € 2.10 + +dish sandwich_kruidenkaas: Broodje Kruidenkaas -- Kruidenkaas, ei, komkommer, sla en tomaat + single_choice sandwich: Broodje + small_white: Klein wit € 1.40 + small_brown: Klein bruin € 1.40 + large_white: Groot wit € 2.10 + large_brown: Groot bruin € 2.10 + quattro: Quattro € 2.10 + +dish sandwich_kipcurry: Broodje Kip curry -- Kip curry, ei, komkommer, sla en tomaat + single_choice sandwich: Broodje + small_white: Klein wit € 1.50 + small_brown: Klein bruin € 1.50 + large_white: Groot wit € 2.20 + large_brown: Groot bruin € 2.20 + quattro: Quattro € 2.20 + +dish sandwich_kipcurryhawa: Broodje Kip curry Hawaï -- Kip curry, ananas, ei, komkommer, sla en tomaat + single_choice sandwich: Broodje + small_white: Klein wit € 1.50 + small_brown: Klein bruin € 1.50 + large_white: Groot wit € 2.20 + large_brown: Groot bruin € 2.20 + quattro: Quattro € 2.20 + +dish sandwich_vissalade: Broodje Vissalade -- Duurzame vissalade, tomaat, sla, komkommer en ei + single_choice sandwich: Broodje + small_white: Klein wit € 1.50 + small_brown: Klein bruin € 1.50 + large_white: Groot wit € 2.30 + large_brown: Groot bruin € 2.30 + quattro: Quattro € 2.30 + +dish sandwich_ham: Broodje Ham -- Ham, ei, komkommer, sla, tomaat en mayonaise + single_choice sandwich: Broodje + small_white: Klein wit € 1.50 + small_brown: Klein bruin € 1.50 + large_white: Groot wit € 2.30 + large_brown: Groot bruin € 2.30 + quattro: Quattro € 2.30 + +dish sandwich_prepare: Broodje Preparé -- Preparé, ei, komkommer, sla en tomaat + single_choice sandwich: Broodje + small_white: Klein wit € 1.50 + small_brown: Klein bruin € 1.50 + large_white: Groot wit € 2.30 + large_brown: Groot bruin € 2.30 + quattro: Quattro € 2.30 + +dish sandwich_springbreak: Broodje Spring break -- Erwten-munt spread, komkommer, radijs, sla, croutons, cocktailsaus + single_choice sandwich: Broodje + small_white: Klein wit € 1.50 + small_brown: Klein bruin € 1.50 + large_white: Groot wit € 2.40 + large_brown: Groot bruin € 2.40 + quattro: Quattro € 2.40 + +dish sandwich_argenteuil: Broodje Argenteuil -- Ham, asperge, ei, komkommer, sla, tomaat en mayonaise + single_choice sandwich: Broodje + small_white: Klein wit € 1.50 + small_brown: Klein bruin € 1.50 + large_white: Groot wit € 2.40 + large_brown: Groot bruin € 2.40 + quattro: Quattro € 2.40 + +dish sandwich_brie: Broodje Brie -- Brie, honing, pijnboompitten, sla + single_choice sandwich: Broodje + small_white: Klein wit € 1.50 + small_brown: Klein bruin € 1.50 + large_white: Groot wit € 2.50 + large_brown: Groot bruin € 2.50 + quattro: Quattro € 2.50 + +dish sandwich_caesar: Broodje Caesar -- Kippenreepjes, Gran Moravia kaasschilfers, croutons, sla en caesardressing + single_choice sandwich: Broodje + small_white: Klein wit € 1.50 + small_brown: Klein bruin € 1.50 + large_white: Groot wit € 2.50 + large_brown: Groot bruin € 2.50 + quattro: Quattro € 2.50 + +dish sandwich_martino: Broodje Martino -- Preparé, augurk, tomaat, mosterd en tabasco + single_choice sandwich: Broodje + small_white: Klein wit € 1.60 + small_brown: Klein bruin € 1.60 + large_white: Groot wit € 2.40 + large_brown: Groot bruin € 2.40 + quattro: Quattro € 2.40 + +dish sandwich_maison: Broodje Maison -- Ham, kaas, augurk, ei, sla, tomaat, cocktailsaus en mayonaise + single_choice sandwich: Broodje + small_white: Klein wit € 1.60 + small_brown: Klein bruin € 1.60 + large_white: Groot wit € 2.40 + large_brown: Groot bruin € 2.40 + quattro: Quattro € 2.40 + +dish sandwich_tropical: Broodje Tropical -- Ham, kaas, ananas, ei, sla, cocktailsaus + single_choice sandwich: Broodje + small_white: Klein wit € 1.60 + small_brown: Klein bruin € 1.60 + large_white: Groot wit € 2.40 + large_brown: Groot bruin € 2.40 + quattro: Quattro € 2.40 + +dish sandwich_groentespread: Broodje Groentespread -- Weekelijks wisselende groentespread + single_choice sandwich: Broodje + small_white: Klein wit € 1.60 + small_brown: Klein bruin € 1.60 + large_white: Groot wit € 2.60 + large_brown: Groot bruin € 2.60 + quattro: Quattro € 2.60 + +dish sandwich_gerooktezalmmetkruidenkaas: Broodje Gerookte zalm met kruidenkaas -- Gerookte zalm, kruidenkaas en ui + single_choice sandwich: Broodje + small_white: Klein wit € 1.60 + small_brown: Klein bruin € 1.60 + large_white: Groot wit € 2.60 + large_brown: Groot bruin € 2.60 + quattro: Quattro € 2.60 + +dish sandwich_toscane: Broodje Toscane -- Mozzarella, prosciutto ham, sla en tomatensalsa + single_choice sandwich: Broodje + small_white: Klein wit € 1.60 + small_brown: Klein bruin € 1.60 + large_white: Groot wit € 2.70 + large_brown: Groot bruin € 2.70 + quattro: Quattro € 2.70 + +dish sandwich_geitenkaas: Broodje Geitenkaas -- Geitenkaas, appel, honing en sla + single_choice sandwich: Broodje + small_white: Klein wit € 1.70 + small_brown: Klein bruin € 1.70 + large_white: Groot wit € 2.60 + large_brown: Groot bruin € 2.60 + quattro: Quattro € 2.60 + +dish sandwich_tomaatmozzarella: Broodje Tomaat-mozzarella -- Mozzarella, tomaat, basilicumpesto en sla + single_choice sandwich: Broodje + small_white: Klein wit € 1.70 + small_brown: Klein bruin € 1.70 + large_white: Groot wit € 2.60 + large_brown: Groot bruin € 2.60 + quattro: Quattro € 2.60 + +dish sandwich_hoevebroodje: Broodje Hoevebroodje -- Geitenkaas, appel, honing, gebakken spek en sla + single_choice sandwich: Broodje + small_white: Klein wit € 1.70 + small_brown: Klein bruin € 1.70 + large_white: Groot wit € 2.60 + large_brown: Groot bruin € 2.60 + quattro: Quattro € 2.60 + +dish yoghurt: Natuuryoghurt € 0.4 +dish yofu: Plantaardige yofu € 1 +dish yoghurt_muesli: Yoghurt met muesli € 1 +dish greek_fruit_yoghurt: Griekse vruchtenyoghurt € 1.4 +dish chocolate_mousse: Chocomousse € 1.4 +dish speculoos_mousse: Speculaasmousse € 1.4 +dish soy_dessert: Soja dessert € 0.7 +dish tiramisu: Tiramisu € 1.4 +dish muffin: Muffin € 1 +dish donut: Donut € 1 +dish ice_variation: IJsvariatie € 2.3 +dish fruit: Fruit € 0.5 +dish nuts_fruit: Nuts & fruit € 1.5 + +dish chocolate_milk: Koude chocolademelk € 0.8 +dish juice: Fruitsap 20 cl Fair Trade € 0.8 +dish water: Bruisend water 50 cl € 0.8 +dish perfumed_water: Gearomatiseerd water 50 cl € 1 +dish bionade: Bionade € 1.5 +dish finley: Finley € 1 +dish iced_coffee: IJskoffie € 2 +dish iced_tea: IJsthee € 2 +dish smoothie: Smoothie € 2 diff --git a/data/s5_generate.py b/data/s5_generate.py new file mode 100755 index 0000000..05dda68 --- /dev/null +++ b/data/s5_generate.py @@ -0,0 +1,89 @@ +#!/usr/bin/env python3 + +print("""============================ +s5: S5 + osm https://www.openstreetmap.org/node/3752879366 + address Krijgslaan 281, 9000 Gent + website https://www.ugent.be/student/nl/meer-dan-studeren/resto/restos/restocampussterre.htm +============================""") + +# Paste menu from https://www.ugent.be/student/nl/meer-dan-studeren/resto/broodjes/overzicht.htm +# here +MENU = [l.split("\t") for l in """ +Spring break Erwten-munt spread, komkommer, radijs, sla, croutons, cocktailsaus € 1,50 € 2,40 +Groentespread Weekelijks wisselende groentespread € 1,60 € 2,60 +Brie Brie, honing, pijnboompitten, sla € 1,50 € 2,50 +Geitenkaas Geitenkaas, appel, honing en sla € 1,70 € 2,60 +Kaas Kaas, ei, komkommer, sla, tomaat en mayonaise € 1,40 € 2,10 +Kruidenkaas Kruidenkaas, ei, komkommer, sla en tomaat € 1,40 € 2,10 +Tomaat-mozzarella Mozzarella, tomaat, basilicumpesto en sla € 1,70 € 2,60 +Kip curry Kip curry, ei, komkommer, sla en tomaat € 1,50 € 2,20 +Kip curry Hawaï Kip curry, ananas, ei, komkommer, sla en tomaat € 1,50 € 2,20 +Caesar Kippenreepjes, Gran Moravia kaasschilfers, croutons, sla en caesardressing € 1,50 € 2,50 +Gerookte zalm met kruidenkaas Gerookte zalm, kruidenkaas en ui € 1,60 € 2,60 +Vissalade Duurzame vissalade, tomaat, sla, komkommer en ei € 1,50 € 2,30 +Ham Ham, ei, komkommer, sla, tomaat en mayonaise € 1,50 € 2,30 +Preparé Preparé, ei, komkommer, sla en tomaat € 1,50 € 2,30 +Martino Preparé, augurk, tomaat, mosterd en tabasco € 1,60 € 2,40 +Hoevebroodje Geitenkaas, appel, honing, gebakken spek en sla € 1,70 € 2,60 +Maison Ham, kaas, augurk, ei, sla, tomaat, cocktailsaus en mayonaise € 1,60 € 2,40 +Tropical Ham, kaas, ananas, ei, sla, cocktailsaus € 1,60 € 2,40 +Toscane Mozzarella, prosciutto ham, sla en tomatensalsa € 1,60 € 2,70 +Argenteuil Ham, asperge, ei, komkommer, sla, tomaat en mayonaise € 1,50 € 2,40 +""".strip().split("\n")] +# Sort by price. This fails if price is not always exactly "€ x,xx" but whatever +MENU.sort(key=lambda dish: dish[2] + dish[3]) + +SANDWICHES = [ + [ # First price + ("small_white", "Klein wit "), + ("small_brown", "Klein bruin"), + ], + [ # Second price + ("large_white", "Groot wit "), + ("large_brown", "Groot bruin"), + ("quattro", " Quattro "), + ] +] + +def name_to_id(name): + return "".join(filter( + lambda c: ord("a") <= ord(c) <= ord("z"), + name.lower().replace("é", "e") + )) + +for dish in MENU: + print() + name, description = dish[0], dish[1] + prices = [p.replace(",", ".") for p in dish[2:]] + + print("dish sandwich_{}: Broodje {} -- {}".format(name_to_id(name), name, description)) + print("\tsingle_choice sandwich: Broodje") + for sandwiches, price in zip(SANDWICHES, prices): + for sw_id, sw_name in sandwiches: + print("\t\t{}: {} {}".format(sw_id, sw_name, price)) + +print(""" +dish yoghurt: Natuuryoghurt € 0.4 +dish yofu: Plantaardige yofu € 1 +dish yoghurt_muesli: Yoghurt met muesli € 1 +dish greek_fruit_yoghurt: Griekse vruchtenyoghurt € 1.4 +dish chocolate_mousse: Chocomousse € 1.4 +dish speculoos_mousse: Speculaasmousse € 1.4 +dish soy_dessert: Soja dessert € 0.7 +dish tiramisu: Tiramisu € 1.4 +dish muffin: Muffin € 1 +dish donut: Donut € 1 +dish ice_variation: IJsvariatie € 2.3 +dish fruit: Fruit € 0.5 +dish nuts_fruit: Nuts & fruit € 1.5 + +dish chocolate_milk: Koude chocolademelk € 0.8 +dish juice: Fruitsap 20 cl Fair Trade € 0.8 +dish water: Bruisend water 50 cl € 0.8 +dish perfumed_water: Gearomatiseerd water 50 cl € 1 +dish bionade: Bionade € 1.5 +dish finley: Finley € 1 +dish iced_coffee: IJskoffie € 2 +dish iced_tea: IJsthee € 2 +dish smoothie: Smoothie € 2""")