27 lines
1.0 KiB
Python
27 lines
1.0 KiB
Python
from typing import Optional
|
|
|
|
from rio import Column, Component, event, Spacer
|
|
|
|
from src.ezgg_lan_manager import ConfigurationService, UserService
|
|
from src.ezgg_lan_manager.components.MainViewContentBox import MainViewContentBox
|
|
from src.ezgg_lan_manager.components.UserEditForm import UserEditForm
|
|
from src.ezgg_lan_manager.types.SessionStorage import SessionStorage
|
|
from src.ezgg_lan_manager.types.User import User
|
|
|
|
|
|
class EditProfilePage(Component):
|
|
user: Optional[User] = None
|
|
pfp: Optional[bytes] = None
|
|
|
|
@event.on_populate
|
|
async def on_populate(self) -> None:
|
|
await self.session.set_title(f"{self.session[ConfigurationService].get_lan_info().name} - Profil bearbeiten")
|
|
self.user = await self.session[UserService].get_user(self.session[SessionStorage].user_id)
|
|
self.pfp = await self.session[UserService].get_profile_picture(self.user.user_id)
|
|
|
|
def build(self) -> Component:
|
|
return Column(
|
|
MainViewContentBox(UserEditForm(is_own_profile=True)),
|
|
Spacer(grow_y=True)
|
|
)
|