diff --git a/middleware/auth.go b/middleware/auth.go index a158318c..72900f83 100644 --- a/middleware/auth.go +++ b/middleware/auth.go @@ -122,6 +122,7 @@ func authHelper(c *gin.Context, minRole int) { c.Set("role", role) c.Set("id", id) c.Set("group", session.Get("group")) + c.Set("user_group", session.Get("group")) c.Set("use_access_token", useAccessToken) //userCache, err := model.GetUserCache(id.(int)) diff --git a/web/src/hooks/mj-logs/useMjLogsData.js b/web/src/hooks/mj-logs/useMjLogsData.js index 4720629a..00330785 100644 --- a/web/src/hooks/mj-logs/useMjLogsData.js +++ b/web/src/hooks/mj-logs/useMjLogsData.js @@ -94,6 +94,11 @@ export const useMjLogsData = () => { const parsed = JSON.parse(savedColumns); const defaults = getDefaultColumnVisibility(); const merged = { ...defaults, ...parsed }; + // If not admin, force hide columns only visible to admins + if (!isAdminUser) { + merged[COLUMN_KEYS.CHANNEL] = false; + merged[COLUMN_KEYS.SUBMIT_RESULT] = false; + } setVisibleColumns(merged); } catch (e) { console.error('Failed to parse saved column preferences', e); diff --git a/web/src/hooks/task-logs/useTaskLogsData.js b/web/src/hooks/task-logs/useTaskLogsData.js index 70e2bf00..23ed8a85 100644 --- a/web/src/hooks/task-logs/useTaskLogsData.js +++ b/web/src/hooks/task-logs/useTaskLogsData.js @@ -92,6 +92,10 @@ export const useTaskLogsData = () => { const parsed = JSON.parse(savedColumns); const defaults = getDefaultColumnVisibility(); const merged = { ...defaults, ...parsed }; + // If not admin, force hide columns only visible to admins + if (!isAdminUser) { + merged[COLUMN_KEYS.CHANNEL] = false; + } setVisibleColumns(merged); } catch (e) { console.error('Failed to parse saved column preferences', e); diff --git a/web/src/hooks/usage-logs/useUsageLogsData.js b/web/src/hooks/usage-logs/useUsageLogsData.js index b2312680..c25c155c 100644 --- a/web/src/hooks/usage-logs/useUsageLogsData.js +++ b/web/src/hooks/usage-logs/useUsageLogsData.js @@ -116,6 +116,12 @@ export const useLogsData = () => { const parsed = JSON.parse(savedColumns); const defaults = getDefaultColumnVisibility(); const merged = { ...defaults, ...parsed }; + // If not admin, force hide columns only visible to admins + if (!isAdminUser) { + merged[COLUMN_KEYS.CHANNEL] = false; + merged[COLUMN_KEYS.USERNAME] = false; + merged[COLUMN_KEYS.RETRY] = false; + } setVisibleColumns(merged); } catch (e) { console.error('Failed to parse saved column preferences', e);