add WIP frontend

This commit is contained in:
David Rodenkirchen
2024-08-24 01:57:47 +02:00
parent 69c3ea9b68
commit 446956f721
11 changed files with 328 additions and 24 deletions
+65
View File
@@ -0,0 +1,65 @@
from __future__ import annotations
from typing import * # type: ignore
from rio import Component, event, Spacer, Card, Container, Column, Row, Rectangle, TextStyle, Color, Text
from src.ez_lan_manager.components.DesktopNavigation import DesktopNavigation
class BasePage(Component):
content: Component
@event.on_window_size_change
async def on_window_size_change(self):
await self.force_refresh()
def build(self) -> Component:
if self.content is None:
content = Spacer()
else:
content = Card(
self.content,
color="secondary",
min_width=38,
corner_radius=(0, 0.5, 0, 0)
)
if self.session.window_width > 28:
return Container(
content=Column(
Row(),
Column(
Row(
Spacer(grow_x=True, grow_y=True),
DesktopNavigation(),
content,
Spacer(grow_x=True, grow_y=True),
grow_y=True
),
Row(
Spacer(grow_x=True, grow_y=False),
Card(
content=Text("EZ LAN Manager Version 0.0.1 © EZ GG e.V.", align_x=0.5, align_y=0.5, style=TextStyle(fill=self.session.theme.primary_color, font_size=0.5)),
color=self.session.theme.neutral_color,
corner_radius=(0, 0, 0.5, 0.5),
grow_x=False,
grow_y=False,
min_height=1.2,
min_width=53.1
),
Spacer(grow_x=True, grow_y=False),
grow_y=False
)
),
Row(),
proportions=[4, 92, 4]
),
grow_x=True,
grow_y=True
)
else:
return Text(
"Der EZ LAN Manager wird\nauf mobilen Endgeräten nur\nim Querformat unterstützt.\nBitte drehe dein Gerät.",
align_x=0.5,
align_y=0.5,
style=TextStyle(fill=Color.from_hex("FFFFFF"), font_size=0.8)
)
+29
View File
@@ -0,0 +1,29 @@
from rio import Text, Column, Rectangle, TextStyle, Component
from src.ez_lan_manager.components.NewsPost import NewsPost
from src.ez_lan_manager.pages import BasePage
class NewsPage(Component):
def build(self) -> Component:
return BasePage(
content=Column(
NewsPost(
title="EZ LAN Manager",
text="Der EZ LAN Manager ist die offizielle Software der EZ GG e.V. um LAn-Parties zu verwalten."
"Ist schon echt cool wie der funktioniert! So kann LAN Party richtig geschmeidig ablaufen.",
date="23.08.2024"
),
NewsPost(
title="Alkohöl",
text="Der Verein 'EZ GG e.V.' ist bekannt für seinen unstillbaren Durst. "
"Bei jedem Treffen fließt der Alkohol in Strömen egal ob Bier, Wein oder Hochprozentiges. "
"Kein Glas bleibt lange leer, und bevor der Pegel auch nur ansatzweise sinkt, "
"wird schon nachgefüllt. Die Mitglieder feiern ausgiebig und trinken dabei so viel, "
"dass die Vorräte nie lange halten. Bei jeder Gelegenheit wird angestoßen, "
"die Stimmung steigt und der Alkohol fließt ohne Ende. "
"Ihr Motto: 'Kein Abend ohne reichlich Alkohol!'",
date="23.08.2024"
),
align_y=0,
)
)
+2
View File
@@ -0,0 +1,2 @@
from .BasePage import BasePage
from .NewsPage import NewsPage