add
This commit is contained in:
@@ -119,24 +119,8 @@ function PANEL:Init()
|
||||
|
||||
CreateNavBtn("Магазин", "shop", 0, COLOR_BASE)
|
||||
|
||||
-- Всегда создаем кнопку "Панель", но скрываем для не-superadmin
|
||||
local panelBtn = CreateNavBtn("Панель", "panel", 160, Color(120, 0, 180))
|
||||
|
||||
local ply = LocalPlayer()
|
||||
if IsValid(ply) and (ply:IsSuperAdmin() or ply:GetUserGroup() == "superadmin") then
|
||||
panelBtn:SetVisible(true)
|
||||
else
|
||||
panelBtn:SetVisible(false)
|
||||
end
|
||||
|
||||
-- Проверка через 0.5 секунды на случай если данные еще загружаются
|
||||
timer.Simple(0.5, function()
|
||||
if not IsValid(panelBtn) or not IsValid(self) then return end
|
||||
local ply = LocalPlayer()
|
||||
if IsValid(ply) and (ply:IsSuperAdmin() or ply:GetUserGroup() == "superadmin") then
|
||||
panelBtn:SetVisible(true)
|
||||
end
|
||||
end)
|
||||
-- Кнопка "Панель" - видима всем, сервер проверяет права
|
||||
CreateNavBtn("Панель", "panel", 160, Color(120, 0, 180))
|
||||
|
||||
self.content = self:Add("DScrollPanel")
|
||||
self.content:Dock(FILL)
|
||||
@@ -208,6 +192,18 @@ function PANEL:Refresh()
|
||||
end
|
||||
end
|
||||
elseif self.currentView == "panel" then
|
||||
-- Проверка прав на клиенте
|
||||
local ply = LocalPlayer()
|
||||
if not IsValid(ply) or not (ply:IsSuperAdmin() or ply:GetUserGroup() == "superadmin") then
|
||||
local errorPanel = self.content:Add("DPanel")
|
||||
errorPanel:Dock(FILL)
|
||||
errorPanel.Paint = function(s, w, h)
|
||||
draw.SimpleText("Доступ запрещен", "ixAdminShopTitle", w/2, h/2 - 20, COLOR_DANGER, TEXT_ALIGN_CENTER, TEXT_ALIGN_CENTER)
|
||||
draw.SimpleText("Эта панель доступна только суперадминистраторам", "ixAdminShopSmall", w/2, h/2 + 20, COLOR_TEXT_DIM, TEXT_ALIGN_CENTER, TEXT_ALIGN_CENTER)
|
||||
end
|
||||
return
|
||||
end
|
||||
|
||||
-- Запрос данных с сервера
|
||||
net.Start("ixAdminShopPanelOpen")
|
||||
net.SendToServer()
|
||||
|
||||
Reference in New Issue
Block a user