diff --git a/system1-factory/web/static/js/tkfb-core.js b/system1-factory/web/static/js/tkfb-core.js index 643c95d..cac9291 100644 --- a/system1-factory/web/static/js/tkfb-core.js +++ b/system1-factory/web/static/js/tkfb-core.js @@ -117,7 +117,7 @@ async function _fetchPageAccess(userId) { const NAV_MENU = [ { cat: null, href: '/pages/dashboard-new.html', icon: 'fa-home', label: '대시보드', key: 'dashboard' }, { cat: '작업 관리', items: [ - { href: '/pages/work/tbm-mobile.html', icon: 'fa-clipboard-list', label: 'TBM 관리', key: 'work.tbm' }, + { href: '/pages/work/tbm-mobile.html', icon: 'fa-clipboard-list', label: 'TBM 관리', key: 'work.tbm', restricted: true }, { href: '/pages/work/report-create-mobile.html', icon: 'fa-file-alt', label: '작업보고서 작성', key: 'work.report_create' }, { href: '/pages/work/analysis.html', icon: 'fa-chart-bar', label: '작업 분석', key: 'work.analysis', admin: true }, { href: `${_tkqcBase}/`, icon: 'fa-exclamation-triangle', label: '부적합 현황', key: 'work.nonconformity', external: true }, @@ -282,11 +282,11 @@ async function initAuth() { let accessibleKeys = []; if (!isAdmin) { accessibleKeys = await _fetchPageAccess(currentUser.id); - // NAV_MENU에서 admin이 아닌 페이지는 모든 인증 사용자에게 공개 + // NAV_MENU에서 admin/restricted가 아닌 페이지는 모든 인증 사용자에게 공개 const publicPageKeys = NAV_MENU.flatMap(entry => { if (!entry.items) return entry.key ? [entry.key] : []; if (entry.admin) return []; - return entry.items.filter(item => !item.admin).map(item => item.key); + return entry.items.filter(item => !item.admin && !item.restricted).map(item => item.key); }); // 현재 페이지 접근 권한 확인 const pageKey = _getCurrentPageKey();