From bf11ccebf53ecfa222bb6041d6790434bd6c4976 Mon Sep 17 00:00:00 2001 From: Hyungi Ahn Date: Wed, 1 Apr 2026 13:11:28 +0900 Subject: [PATCH] =?UTF-8?q?fix(nav):=20=EB=B9=84=EA=B4=80=EB=A6=AC?= =?UTF-8?q?=EC=9E=90=20=EB=84=A4=EB=B9=84=EC=97=90=20=EA=B3=B5=EA=B0=9C=20?= =?UTF-8?q?=EB=A9=94=EB=89=B4=20=ED=95=AD=EB=AA=A9=20=ED=91=9C=EC=8B=9C=20?= =?UTF-8?q?+=20DB=20=ED=8E=98=EC=9D=B4=EC=A7=80=EB=AA=85=20=EC=A0=95?= =?UTF-8?q?=EB=A6=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - renderNavbar: admin이 아닌 NAV_MENU 항목은 accessibleKeys 없이도 표시 - DB pages: purchase.request → '소모품 구매 관리'(admin), purchase.analysis → '소모품 분석'(admin) Co-Authored-By: Claude Opus 4.6 (1M context) --- system1-factory/web/static/js/tkfb-core.js | 2 ++ 1 file changed, 2 insertions(+) diff --git a/system1-factory/web/static/js/tkfb-core.js b/system1-factory/web/static/js/tkfb-core.js index cac9291..4c4769a 100644 --- a/system1-factory/web/static/js/tkfb-core.js +++ b/system1-factory/web/static/js/tkfb-core.js @@ -203,6 +203,8 @@ function renderNavbar(accessibleKeys) { const visibleItems = entry.items.filter(item => { if (item.admin && !isAdmin) return false; if (isAdmin) return true; + // NAV_MENU에 admin 아닌 항목은 공개 (publicPageKeys 대응) + if (!item.admin) return true; return accessibleKeys.includes(item.key); });