import flet as ft import designer as ds class MainPageUser(ft.Column): def __init__(self, page: ft.Page): self._page = page self.spacing_groop = ds.s(6) self.border_radius = ds.s(15) super().__init__( alignment=ft.MainAxisAlignment.CENTER, horizontal_alignment=ft.CrossAxisAlignment.CENTER, spacing=self.spacing_groop, controls=[ ft.Row( alignment=ft.MainAxisAlignment.CENTER, spacing=self.spacing_groop, run_spacing=self.spacing_groop, wrap=True, controls=[ ft.Container( border_radius=self.border_radius, height=ds.s(160), width=ds.s(160), alignment=ft.Alignment(0.0, 0.0), content=ft.Column( alignment=ft.MainAxisAlignment.CENTER, controls=[ ft.Row( alignment=ft.MainAxisAlignment.CENTER, controls=[ ft.Image( src="icons/clipboard-question_16542596.svg", width=ds.s(100), height=ds.s(100), ) ] ), ft.Row( alignment=ft.MainAxisAlignment.CENTER, controls=[ ds.CastomText(text="Все тесты") ] ) ] ), bgcolor=ds.clolors.laer2, on_click=self.take_test, ink=True, ), ft.Container( border_radius=self.border_radius, height=ds.s(160), width=ds.s(160), alignment=ft.Alignment(0.0, 0.0), content=ft.Column( alignment=ft.MainAxisAlignment.CENTER, controls=[ ft.Row( alignment=ft.MainAxisAlignment.CENTER, controls=[ ft.Image( src="icons/leaderboard-trophy_14227576.svg", width=ds.s(100), height=ds.s(100), ) ] ), ft.Row( alignment=ft.MainAxisAlignment.CENTER, controls=[ ds.CastomText(text="Мои тесты") ] ) ] ), bgcolor=ds.clolors.laer2, on_click=self.my_test, ink=True, ) ] ), ], ) def take_test(self, e): url_key = self._page.session.store.get("url_key") or "" self._page.go(f"/take_test/{url_key}") def my_test(self, e): url_key = self._page.session.store.get("url_key") or "" self._page.go(f"/my_tests/{url_key}")