From 1cac90a951a3c3eaabc519f9a8bbf888ad8740d1 Mon Sep 17 00:00:00 2001 From: David Rodenkirchen Date: Sun, 22 Feb 2026 03:07:42 +0100 Subject: [PATCH] build internal LAN version --- docker-compose.yml | 3 +- src/EzggLanManager.py | 6 +- .../components/DesktopNavigation.py | 4 +- .../components/DesktopNavigationButton.py | 4 +- src/ezgg_lan_manager/components/LoginBox.py | 6 +- .../components/SeatingPlan.py | 205 +++++------------- .../components/SeatingPlanPixels.py | 2 +- src/ezgg_lan_manager/pages/OverviewPage.py | 22 +- 8 files changed, 75 insertions(+), 177 deletions(-) diff --git a/docker-compose.yml b/docker-compose.yml index 08dcf57..2e7b0d8 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -7,8 +7,7 @@ services: environment: PYTHONPATH: /opt/ezgg-lan-manager ports: - - "8000:8000" - - "8001:8001" + - "7321:7321" volumes: - ./:/opt/ezgg-lan-manager entrypoint: ["/bin/sh", "-c", "cd /opt/ezgg-lan-manager/src && python3 /opt/ezgg-lan-manager/src/EzggLanManager.py"] diff --git a/src/EzggLanManager.py b/src/EzggLanManager.py index 3436e43..10e86b0 100644 --- a/src/EzggLanManager.py +++ b/src/EzggLanManager.py @@ -18,10 +18,10 @@ logger = logging.getLogger("EzggLanManager") if __name__ == "__main__": theme = Theme.from_colors( primary_color=Color.from_hex("ffffff"), - secondary_color=Color.from_hex("018786"), + secondary_color=Color.from_hex("015454"), neutral_color=Color.from_hex("1e1e1e"), background_color=Color.from_hex("121212"), - hud_color=Color.from_hex("02dac5"), + hud_color=Color.from_hex("02a797"), text_color=Color.from_hex("018786"), mode="dark", corner_radius_small=0, @@ -218,5 +218,5 @@ if __name__ == "__main__": sys.exit(app.run_as_web_server( host="0.0.0.0", - port=8000, + port=7321, )) diff --git a/src/ezgg_lan_manager/components/DesktopNavigation.py b/src/ezgg_lan_manager/components/DesktopNavigation.py index aaf2e19..3239c96 100644 --- a/src/ezgg_lan_manager/components/DesktopNavigation.py +++ b/src/ezgg_lan_manager/components/DesktopNavigation.py @@ -27,7 +27,7 @@ class DesktopNavigation(Component): navigation = [ DesktopNavigationButton("News", "./news"), Spacer(min_height=0.7), - DesktopNavigationButton(f"Über {lan_info.name} {lan_info.iteration}", "./overview"), + DesktopNavigationButton(f"Über {lan_info.name}", "./overview"), DesktopNavigationButton("Ticket kaufen", "./buy_ticket"), DesktopNavigationButton("Sitzplan", "./seating"), DesktopNavigationButton("Catering", "./catering"), @@ -48,7 +48,7 @@ class DesktopNavigation(Component): return Card( Column( Text(lan_info.name, align_x=0.5, margin_top=0.3, style=TextStyle(fill=self.session.theme.hud_color, font_size=1.9)), - Text(f"Edition {lan_info.iteration}", align_x=0.5, style=TextStyle(fill=self.session.theme.hud_color, font_size=1.2), margin_top=0.3, margin_bottom=2), + Text(f"Edition {lan_info.iteration}", align_x=0.5, style=TextStyle(fill=self.session.theme.hud_color, font_size=0.9), margin_top=0.3, margin_bottom=2), user_info_and_login_box, *navigation, Text("Unsere Sponsoren", align_x=0.5, style=TextStyle(fill=self.session.theme.hud_color, font_size=0.9), margin_bottom=0.5, margin_top=1), diff --git a/src/ezgg_lan_manager/components/DesktopNavigationButton.py b/src/ezgg_lan_manager/components/DesktopNavigationButton.py index dce5178..bc25883 100644 --- a/src/ezgg_lan_manager/components/DesktopNavigationButton.py +++ b/src/ezgg_lan_manager/components/DesktopNavigationButton.py @@ -1,8 +1,8 @@ from rio import Component, TextStyle, Color, Link, Button, Text class DesktopNavigationButton(Component): - STYLE = TextStyle(fill=Color.from_hex("02dac5"), font_size=0.9) - TEAM_STYLE = TextStyle(fill=Color.from_hex("F0EADE"), font_size=0.9) + STYLE = TextStyle(fill=Color.from_hex("02a797"), font_size=0.9) + TEAM_STYLE = TextStyle(fill=Color.from_hex("02a797"), font_size=0.9) label: str target_url: str is_team_navigation: bool = False diff --git a/src/ezgg_lan_manager/components/LoginBox.py b/src/ezgg_lan_manager/components/LoginBox.py index bef1744..eb90aca 100644 --- a/src/ezgg_lan_manager/components/LoginBox.py +++ b/src/ezgg_lan_manager/components/LoginBox.py @@ -61,7 +61,7 @@ class LoginBox(Component): is_valid=self.password_input_is_valid ) login_button = Button( - Text("LOGIN", fill=Color.from_hex("02dac5"), style=TextStyle(font_size=0.9), justify="center"), + Text("LOGIN", fill=Color.from_hex("02a797"), style=TextStyle(font_size=0.9), justify="center"), shape="rectangle", style="minor", color="secondary", @@ -69,14 +69,14 @@ class LoginBox(Component): on_press=self._on_login_pressed ) register_button = Button( - Text("REG", fill=Color.from_hex("02dac5"), style=TextStyle(font_size=0.9), justify="center"), + Text("REG", fill=Color.from_hex("02a797"), style=TextStyle(font_size=0.9), justify="center"), shape="rectangle", style="minor", color="secondary", on_press=lambda: self.session.navigate_to("./register") ) forgot_password_button = Button( - Text("LST PWD", fill=Color.from_hex("02dac5"), style=TextStyle(font_size=0.9), justify="center"), + Text("LST PWD", fill=Color.from_hex("02a797"), style=TextStyle(font_size=0.9), justify="center"), shape="rectangle", style="minor", color="secondary", diff --git a/src/ezgg_lan_manager/components/SeatingPlan.py b/src/ezgg_lan_manager/components/SeatingPlan.py index f084d9a..4ff2cc6 100644 --- a/src/ezgg_lan_manager/components/SeatingPlan.py +++ b/src/ezgg_lan_manager/components/SeatingPlan.py @@ -5,7 +5,7 @@ from rio import Component, Rectangle, Grid, Column, Row, Text, TextStyle, Color, from src.ezgg_lan_manager.components.SeatingPlanPixels import SeatPixel, WallPixel, InvisiblePixel, TextPixel from src.ezgg_lan_manager.types.Seat import Seat -MAX_GRID_WIDTH_PIXELS = 60 +MAX_GRID_WIDTH_PIXELS = 34 MAX_GRID_HEIGHT_PIXELS = 60 class SeatingPlanLegend(Component): @@ -14,14 +14,6 @@ class SeatingPlanLegend(Component): Text("Legende", style=TextStyle(fill=self.session.theme.neutral_color), justify="center", margin=1), Row( Spacer(), - Rectangle( - content=Text("Normaler Platz", style=TextStyle(fill=self.session.theme.neutral_color, font_size=0.7), margin=0.2, justify="center"), - fill=Color.TRANSPARENT, - stroke_width=0.2, - stroke_color=Color.from_hex("003300"), - min_width=20, - margin_right=1 - ), Rectangle( content=Text("Deluxe Platz", style=TextStyle(fill=self.session.theme.neutral_color, font_size=0.7), margin=0.2, justify="center"), fill=Color.TRANSPARENT, @@ -107,161 +99,76 @@ class SeatingPlan(Component): for x in range(0, MAX_GRID_WIDTH_PIXELS): grid.add(WallPixel(), row=MAX_GRID_HEIGHT_PIXELS, column=x) - for x in range(0, 31): - grid.add(WallPixel(), row=15, column=x) + for y in range(0, 39): + grid.add(WallPixel(), row=y, column=MAX_GRID_WIDTH_PIXELS) - for x in range(41, MAX_GRID_WIDTH_PIXELS): - grid.add(WallPixel(), row=32, column=x) + for y in range(43, MAX_GRID_HEIGHT_PIXELS + 1): + grid.add(WallPixel(), row=y, column=MAX_GRID_WIDTH_PIXELS) - for x in range(31, 34): - grid.add(WallPixel(), row=32, column=x) - grid.add(WallPixel(), row=19, column=x) - - for x in range(42, MAX_GRID_WIDTH_PIXELS): - grid.add(WallPixel(), row=11, column=x) - grid.add(WallPixel(), row=22, column=x) - - for x in range(22, 30): - grid.add(WallPixel(), row=5, column=x) - grid.add(WallPixel(), row=10, column=x) - - for y in range(5, 11): - grid.add(WallPixel(), row=y, column=21) - grid.add(WallPixel(), row=y, column=30) + for x in range(19, MAX_GRID_WIDTH_PIXELS): + grid.add(WallPixel(), row=37, column=x) - for y in range(40, MAX_GRID_HEIGHT_PIXELS): - grid.add(WallPixel(), row=y, column=30) + for x in range(19, MAX_GRID_WIDTH_PIXELS): + grid.add(WallPixel(), row=46, column=x) + for x in range(1, 15): + grid.add(WallPixel(), row=46, column=x) - for y in range(32, 36): - grid.add(WallPixel(), row=y, column=30) - - for y in range(19, 33): - grid.add(WallPixel(), row=y, column=34) - - for y in range(16, 20): - grid.add(WallPixel(), row=y, column=30) - - for y in range(0, 5): - grid.add(WallPixel(), row=y, column=41) - - for y in range(9, 15): - grid.add(WallPixel(), row=y, column=41) - - for y in range(19, 33): - grid.add(WallPixel(), row=y, column=41) - - - # Block A - grid.add(SeatPixel("A01", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("A01"), seat_orientation="bottom"), row=57, column=1, width=5, height=2) - grid.add(SeatPixel("A02", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("A02"), seat_orientation="bottom"), row=57, column=6, width=5, height=2) - grid.add(SeatPixel("A03", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("A03"), seat_orientation="bottom"), row=57, column=11, width=5, height=2) - grid.add(SeatPixel("A04", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("A04"), seat_orientation="bottom"), row=57, column=16, width=5, height=2) - grid.add(SeatPixel("A05", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("A05"), seat_orientation="bottom"), row=57, column=21, width=5, height=2) - - grid.add(SeatPixel("A10", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("A10"), seat_orientation="top"), row=55, column=1, width=5, height=2) - grid.add(SeatPixel("A11", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("A11"), seat_orientation="top"), row=55, column=6, width=5, height=2) - grid.add(SeatPixel("A12", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("A12"), seat_orientation="top"), row=55, column=11, width=5, height=2) - grid.add(SeatPixel("A13", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("A13"), seat_orientation="top"), row=55, column=16, width=5, height=2) - grid.add(SeatPixel("A14", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("A14"), seat_orientation="top"), row=55, column=21, width=5, height=2) - - # Block B - grid.add(SeatPixel("B01", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("B01"), seat_orientation="bottom"), row=50, column=1, width=3, height=2) - grid.add(SeatPixel("B02", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("B02"), seat_orientation="bottom"), row=50, column=4, width=3, height=2) - grid.add(SeatPixel("B03", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("B03"), seat_orientation="bottom"), row=50, column=7, width=3, height=2) - grid.add(SeatPixel("B04", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("B04"), seat_orientation="bottom"), row=50, column=10, width=3, height=2) - grid.add(SeatPixel("B05", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("B05"), seat_orientation="bottom"), row=50, column=13, width=3, height=2) - grid.add(SeatPixel("B06", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("B06"), seat_orientation="bottom"), row=50, column=16, width=3, height=2) - - grid.add(SeatPixel("B10", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("B10"), seat_orientation="top"), row=48, column=1, width=3, height=2) - grid.add(SeatPixel("B11", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("B11"), seat_orientation="top"), row=48, column=4, width=3, height=2) - grid.add(SeatPixel("B12", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("B12"), seat_orientation="top"), row=48, column=7, width=3, height=2) - grid.add(SeatPixel("B13", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("B13"), seat_orientation="top"), row=48, column=10, width=3, height=2) - grid.add(SeatPixel("B14", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("B14"), seat_orientation="top"), row=48, column=13, width=3, height=2) - grid.add(SeatPixel("B15", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("B15"), seat_orientation="top"), row=48, column=16, width=3, height=2) - - # Block C - grid.add(SeatPixel("C01", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("C01"), seat_orientation="bottom"), row=43, column=1, width=3, height=2) - grid.add(SeatPixel("C02", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("C02"), seat_orientation="bottom"), row=43, column=4, width=3, height=2) - grid.add(SeatPixel("C03", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("C03"), seat_orientation="bottom"), row=43, column=7, width=3, height=2) - grid.add(SeatPixel("C04", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("C04"), seat_orientation="bottom"), row=43, column=10, width=3, height=2) - grid.add(SeatPixel("C05", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("C05"), seat_orientation="bottom"), row=43, column=13, width=3, height=2) - grid.add(SeatPixel("C06", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("C06"), seat_orientation="bottom"), row=43, column=16, width=3, height=2) - - grid.add(SeatPixel("C10", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("C10"), seat_orientation="top"), row=41, column=1, width=3, height=2) - grid.add(SeatPixel("C11", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("C11"), seat_orientation="top"), row=41, column=4, width=3, height=2) - grid.add(SeatPixel("C12", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("C12"), seat_orientation="top"), row=41, column=7, width=3, height=2) - grid.add(SeatPixel("C13", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("C13"), seat_orientation="top"), row=41, column=10, width=3, height=2) - grid.add(SeatPixel("C14", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("C14"), seat_orientation="top"), row=41, column=13, width=3, height=2) - grid.add(SeatPixel("C15", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("C15"), seat_orientation="top"), row=41, column=16, width=3, height=2) - - # Block D - grid.add(SeatPixel("D01", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("D01"), seat_orientation="bottom"), row=34, column=1, width=5, height=2) - grid.add(SeatPixel("D02", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("D02"), seat_orientation="bottom"), row=34, column=6, width=5, height=2) - grid.add(SeatPixel("D03", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("D03"), seat_orientation="bottom"), row=34, column=11, width=5, height=2) - grid.add(SeatPixel("D04", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("D04"), seat_orientation="bottom"), row=34, column=16, width=5, height=2) - grid.add(SeatPixel("D05", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("D05"), seat_orientation="bottom"), row=34, column=21, width=5, height=2) - - grid.add(SeatPixel("D10", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("D10"), seat_orientation="top"), row=32, column=1, width=5, height=2) - grid.add(SeatPixel("D11", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("D11"), seat_orientation="top"), row=32, column=6, width=5, height=2) - grid.add(SeatPixel("D12", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("D12"), seat_orientation="top"), row=32, column=11, width=5, height=2) - grid.add(SeatPixel("D13", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("D13"), seat_orientation="top"), row=32, column=16, width=5, height=2) - grid.add(SeatPixel("D14", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("D14"), seat_orientation="top"), row=32, column=21, width=5, height=2) - - # Block E - grid.add(SeatPixel("E01", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("E01"), seat_orientation="bottom"), row=27, column=1, width=5, height=2) - grid.add(SeatPixel("E02", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("E02"), seat_orientation="bottom"), row=27, column=6, width=5, height=2) - grid.add(SeatPixel("E03", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("E03"), seat_orientation="bottom"), row=27, column=11, width=5, height=2) - grid.add(SeatPixel("E04", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("E04"), seat_orientation="bottom"), row=27, column=16, width=5, height=2) - grid.add(SeatPixel("E05", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("E05"), seat_orientation="bottom"), row=27, column=21, width=5, height=2) - - grid.add(SeatPixel("E10", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("E10"), seat_orientation="top"), row=25, column=1, width=5, height=2) - grid.add(SeatPixel("E11", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("E11"), seat_orientation="top"), row=25, column=6, width=5, height=2) - grid.add(SeatPixel("E12", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("E12"), seat_orientation="top"), row=25, column=11, width=5, height=2) - grid.add(SeatPixel("E13", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("E13"), seat_orientation="top"), row=25, column=16, width=5, height=2) - grid.add(SeatPixel("E14", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("E14"), seat_orientation="top"), row=25, column=21, width=5, height=2) - - # Stage + # Gaderobe grid.add(PointerEventListener( - TextPixel(text="Bühne"), - on_press=lambda _: self.info_clicked_cb("Hier darf ab Freitag 20 Uhr ebenfalls geschlafen werden.") - ), row=16, column=1, width=29, height=4) + TextPixel(text="Gaderobe"), + on_press=lambda _: self.info_clicked_cb("Gaderobe") + ), row=44, column=19, width=15, height=2) - # Drinks - grid.add(PointerEventListener( - TextPixel(text="G\ne\nt\nr\nä\nn\nk\ne"), - on_press=lambda _: self.info_clicked_cb("Ich mag Bier, B - I - R") - ), row=20, column=30, width=4, height=12) + for x in range(19, MAX_GRID_WIDTH_PIXELS): + grid.add(WallPixel(), row=28, column=x) + for x in range(1, 15): + grid.add(WallPixel(), row=28, column=x) - # Main Entrance - grid.add(PointerEventListener( - TextPixel(text="H\na\nl\nl\ne\nn\n\ne\ni\nn\ng\na\nn\ng"), - on_press=lambda _: self.info_clicked_cb("Hallo, ich bin ein Haupteingang") - ), row=33, column=56, width=4, height=27) - - # Sleeping - grid.add(PointerEventListener( - TextPixel(icon_name="material/bed"), - on_press=lambda _: self.info_clicked_cb("In diesem Raum kann geschlafen werden.\nAchtung: Hier werden nicht alle Teilnehmer Platz finden.") - ), row=1, column=1, width=20, height=14) - - # Toilet + # # Toilet grid.add(PointerEventListener( TextPixel(icon_name="material/wc"), - on_press=lambda _: self.info_clicked_cb("Damen Toilette") - ), row=1, column=42, width=19, height=10) + on_press=lambda _: self.info_clicked_cb("Toilette") + ), row=29, column=1, width=14, height=17) + grid.add(PointerEventListener( - TextPixel(icon_name="material/wc"), - on_press=lambda _: self.info_clicked_cb("Herren Toilette") - ), row=12, column=42, width=19, height=10) + TextPixel(text="Orga & Technik"), + on_press=lambda _: self.info_clicked_cb("Hier bauen wir die Technik auf.") + ), row=29, column=19, width=15, height=8) - # Entry/Helpdesk grid.add(PointerEventListener( - TextPixel(text="Einlass\n &Orga"), - on_press=lambda _: self.info_clicked_cb("Für alle Anliegen findest du hier rund um die Uhr jemanden vom Team.") - ), row=40, column=22, width=8, height=12) + TextPixel(text="Bar & Schnarchbereich"), + on_press=lambda _: self.info_clicked_cb("Bier.") + ), row=47, column=1, width=MAX_GRID_WIDTH_PIXELS-1, height=13) + # # Block A + grid.add(SeatPixel("A\n0\n1", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("A01"), seat_orientation="left"), row=2, column=5, width=2, height=4) + grid.add(SeatPixel("A\n0\n2", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("A02"), seat_orientation="left"), row=6, column=5, width=2, height=4) + grid.add(SeatPixel("A\n0\n3", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("A03"), seat_orientation="left"), row=10, column=5, width=2, height=4) + grid.add(SeatPixel("A\n0\n4", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("A04"), seat_orientation="left"), row=15, column=5, width=2, height=4) + grid.add(SeatPixel("A\n0\n5", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("A05"), seat_orientation="left"), row=19, column=5, width=2, height=4) + grid.add(SeatPixel("A\n0\n6", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("A06"), seat_orientation="left"), row=23, column=5, width=2, height=4) + grid.add(SeatPixel("A\n1\n0", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("A10"), seat_orientation="left"), row=2, column=7, width=2, height=4) + grid.add(SeatPixel("A\n1\n1", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("A11"), seat_orientation="left"), row=6, column=7, width=2, height=4) + grid.add(SeatPixel("A\n1\n2", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("A12"), seat_orientation="left"), row=10, column=7, width=2, height=4) + grid.add(SeatPixel("A\n1\n3", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("A13"), seat_orientation="left"), row=15, column=7, width=2, height=4) + grid.add(SeatPixel("A\n1\n4", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("A14"), seat_orientation="left"), row=19, column=7, width=2, height=4) + grid.add(SeatPixel("A\n1\n5", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("A15"), seat_orientation="left"), row=23, column=7, width=2, height=4) + + grid.add(SeatPixel("B\n0\n1", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("B01"), seat_orientation="left"), row=2, column=26, width=2, height=4) + grid.add(SeatPixel("B\n0\n2", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("B02"), seat_orientation="left"), row=6, column=26, width=2, height=4) + grid.add(SeatPixel("B\n0\n3", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("B03"), seat_orientation="left"), row=10, column=26, width=2, height=4) + grid.add(SeatPixel("B\n0\n4", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("B04"), seat_orientation="left"), row=15, column=26, width=2, height=4) + grid.add(SeatPixel("B\n0\n5", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("B05"), seat_orientation="left"), row=19, column=26, width=2, height=4) + grid.add(SeatPixel("B\n0\n6", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("B06"), seat_orientation="left"), row=23, column=26, width=2, height=4) + + grid.add(SeatPixel("B\n1\n0", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("B10"), seat_orientation="left"), row=2, column=28, width=2, height=4) + grid.add(SeatPixel("B\n1\n1", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("B11"), seat_orientation="left"), row=6, column=28, width=2, height=4) + grid.add(SeatPixel("B\n1\n2", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("B12"), seat_orientation="left"), row=10, column=28, width=2, height=4) + grid.add(SeatPixel("B\n1\n3", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("B13"), seat_orientation="left"), row=15, column=28, width=2, height=4) + grid.add(SeatPixel("B\n1\n4", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("B14"), seat_orientation="left"), row=19, column=28, width=2, height=4) + grid.add(SeatPixel("B\n1\n5", on_press_cb=self.seat_clicked_cb, seat=self.get_seat("B15"), seat_orientation="left"), row=23, column=28, width=2, height=4) return Rectangle( content=grid, grow_x=True, diff --git a/src/ezgg_lan_manager/components/SeatingPlanPixels.py b/src/ezgg_lan_manager/components/SeatingPlanPixels.py index 3c937f5..68814dc 100644 --- a/src/ezgg_lan_manager/components/SeatingPlanPixels.py +++ b/src/ezgg_lan_manager/components/SeatingPlanPixels.py @@ -11,7 +11,7 @@ class SeatPixel(Component): seat_id: str on_press_cb: Callable seat: Seat - seat_orientation: Literal["top", "bottom"] + seat_orientation: Literal["top", "bottom", "left", "right"] def determine_color(self) -> Color: try: diff --git a/src/ezgg_lan_manager/pages/OverviewPage.py b/src/ezgg_lan_manager/pages/OverviewPage.py index 39c5b3d..0d6cfeb 100644 --- a/src/ezgg_lan_manager/pages/OverviewPage.py +++ b/src/ezgg_lan_manager/pages/OverviewPage.py @@ -31,13 +31,13 @@ class OverviewPage(Component): Row( Text("Wo?", fill=self.session.theme.neutral_color, margin_left=1), Spacer(), - Link(Text(f"DGH Donsbach", fill=self.session.theme.secondary_color, margin_right=1), target_url="https://maps.app.goo.gl/3Zyue776A22jdoxz5", open_in_new_tab=True), + Link(Text(f"Hasenheim Bottenhorn", fill=self.session.theme.secondary_color, margin_right=1), target_url="https://maps.app.goo.gl/9Gtykc3FEqWSWy9b6", open_in_new_tab=True), margin_bottom=0.3 ), Row( Text("Einlass", fill=self.session.theme.neutral_color, margin_left=1), Spacer(), - Text(lan_info.date_from.strftime("Freitag %H:%M Uhr"), fill=self.session.theme.neutral_color, margin_right=1), + Text(lan_info.date_from.strftime("Samstag %H:%M Uhr"), fill=self.session.theme.neutral_color, margin_right=1), margin_bottom=0.3 ), Row( @@ -75,19 +75,19 @@ class OverviewPage(Component): Row( Text("Internet", fill=self.session.theme.neutral_color, margin_left=1), Spacer(), - Text(f"100/50 Mbit/s (down/up)", fill=self.session.theme.neutral_color, margin_right=1), + Text(f"Wenn's gut läuft, ja", fill=self.session.theme.neutral_color, margin_right=1), margin_bottom=0.3 ), Row( Text("Routing", fill=self.session.theme.neutral_color, margin_left=1), Spacer(), - Text(f"Flaches Netz", fill=self.session.theme.neutral_color, margin_right=1), + Text(f"Hoffentlich", fill=self.session.theme.neutral_color, margin_right=1), margin_bottom=0.3 ), Row( Text("WLAN", fill=self.session.theme.neutral_color, margin_left=1), Spacer(), - Text(f"vorhanden", fill=self.session.theme.neutral_color, margin_right=1), + Text(f"nö", fill=self.session.theme.neutral_color, margin_right=1), margin_bottom=0.3 ) ) @@ -102,7 +102,7 @@ class OverviewPage(Component): margin_bottom=0.3 ), Row( - Text("Es steht ein Schlafsaal zur Verfügung. Nach der Eröffnung steht auch die Bühne als Schlafbereich zur Verfügung.", font_size=0.7, + Text("Für ein paar Luftmatratzen ist Platz. Die Bottenhorner Vereinsmitglieder überlassen sich auch die ein oder andere Couch.", font_size=0.7, fill=self.session.theme.neutral_color, margin_left=1, overflow="wrap"), margin_bottom=0.3 ), @@ -111,15 +111,7 @@ class OverviewPage(Component): margin_bottom=0.3 ), Row( - Text("Wir sorgen für euer leibliches Wohl, ihr dürft aber auch eure eigenen Speißen und Getränke mitbringen.", font_size=0.7, fill=self.session.theme.neutral_color, margin_left=1, overflow="wrap"), - margin_bottom=0.3 - ), - Row( - Text("Parken", fill=self.session.theme.neutral_color, margin_left=1, justify="center"), - margin_bottom=0.3 - ), - Row( - Text("Vor der Halle sind ausreichend Parkplätze vorhanden.", font_size=0.7, fill=self.session.theme.neutral_color, margin_left=1, overflow="wrap"), + Text("Jeder bringt einfach mit was er mag.", font_size=0.7, fill=self.session.theme.neutral_color, margin_left=1, overflow="wrap"), margin_bottom=0.3 ) )