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