perm
This commit is contained in:
parent
8269397fae
commit
36bfa31099
@ -19,6 +19,7 @@ class YobbleHomeView(QWidget):
|
||||
self.username = username
|
||||
self.setWindowTitle(f"Yobble Home - {username}")
|
||||
self.setMinimumSize(360, 640)
|
||||
self.permission_cache = set()
|
||||
|
||||
# --- Основной макет ---
|
||||
# Используем QHBoxLayout, чтобы можно было разместить меню и контент рядом
|
||||
@ -256,6 +257,10 @@ class YobbleHomeView(QWidget):
|
||||
|
||||
async def check_permissions_and_switch(self, index, permission_code):
|
||||
"""Асинхронно проверяет права и переключает вкладку."""
|
||||
if permission_code in self.permission_cache:
|
||||
self.switch_tab(index)
|
||||
return
|
||||
|
||||
access_token = get_current_access_token()
|
||||
if not access_token:
|
||||
self.show_error_message(localizer.translate("Сессия не найдена. Пожалуйста, войдите снова."))
|
||||
@ -265,6 +270,7 @@ class YobbleHomeView(QWidget):
|
||||
print("data", data)
|
||||
|
||||
if success and permission_code in data.get("user_permissions", []):
|
||||
self.permission_cache.add(permission_code)
|
||||
self.switch_tab(index)
|
||||
else:
|
||||
error_message = data if not success else localizer.translate("У вас нет прав для доступа к этому разделу.")
|
||||
|
||||
Reference in New Issue
Block a user