diff --git a/server-ce/test/admin.spec.ts b/server-ce/test/admin.spec.ts index b404698b51..ef4c4a84ac 100644 --- a/server-ce/test/admin.spec.ts +++ b/server-ce/test/admin.spec.ts @@ -135,6 +135,24 @@ describe('admin panel', function () { ) }) + describe('admin menu items', () => { + beforeEach(() => { + login(admin) + cy.visit('/project') + }) + + it('displays expected admin menu items', () => { + const menuitems = ['Manage Site', 'Manage Users', 'Project URL Lookup'] + menuitems.forEach(name => { + cy.findByRole('menuitem', { name: 'Admin' }).click() + cy.get('ul[role="menu"]') + .findAllByRole('menuitem') + .should('have.length', menuitems.length) + cy.get('ul[role="menu"]').findByRole('menuitem', { name }).click() + }) + }) + }) + describe('manage site', () => { beforeEach(() => { login(admin) diff --git a/services/web/app/views/layout-react.pug b/services/web/app/views/layout-react.pug index 01570c8814..d9e7a83b52 100644 --- a/services/web/app/views/layout-react.pug +++ b/services/web/app/views/layout-react.pug @@ -12,7 +12,7 @@ block append meta - const canDisplayAdminRedirect = canRedirectToAdminDomain() - const sessionUser = getSessionUser() - const staffAccess = sessionUser?.staffAccess - - const canDisplayProjectUrlLookup = hasFeature('saas') && canDisplayAdminMenu && hasAdminCapability('view-project-setting', false) + - const canDisplayProjectUrlLookup = settings.adminPrivilegeAvailable && canDisplayAdminMenu && hasAdminCapability('view-project-setting', false) - const canDisplaySplitTestMenu = hasFeature('saas') && ((canDisplayAdminMenu && hasAdminCapability('view-split-test')) || staffAccess?.splitTestMetrics || staffAccess?.splitTestManagement) - const canDisplaySurveyMenu = hasFeature('saas') && canDisplayAdminMenu && hasAdminCapability('manage-survey', false) - const canDisplayScriptLogMenu = hasFeature('saas') && hasAdminCapability('view-script-log', false) && canDisplayAdminMenu diff --git a/services/web/app/views/layout/navbar-marketing.pug b/services/web/app/views/layout/navbar-marketing.pug index 10e8b747ae..ddd535bb47 100644 --- a/services/web/app/views/layout/navbar-marketing.pug +++ b/services/web/app/views/layout/navbar-marketing.pug @@ -30,7 +30,7 @@ nav.navbar.navbar-default.navbar-main.navbar-expand-lg( - var canDisplayAdminMenu = hasAdminAccess() - var canDisplayAdminRedirect = canRedirectToAdminDomain() - - var canDisplayProjectUrlLookup = hasFeature('saas') && canDisplayAdminMenu && hasAdminCapability('view-project-setting', false) + - var canDisplayProjectUrlLookup = settings.adminPrivilegeAvailable && canDisplayAdminMenu && hasAdminCapability('view-project-setting', false) - var canDisplaySplitTestMenu = hasFeature('saas') && ((canDisplayAdminMenu && hasAdminCapability('view-split-test')) || (getSessionUser() && getSessionUser().staffAccess && (getSessionUser().staffAccess.splitTestMetrics || getSessionUser().staffAccess.splitTestManagement))) - var canDisplaySurveyMenu = hasFeature('saas') && canDisplayAdminMenu && hasAdminCapability('manage-survey', false) - var canDisplayScriptLogMenu = hasFeature('saas') && hasAdminCapability('view-script-log', false) && canDisplayAdminMenu diff --git a/services/web/frontend/js/shared/components/navbar/admin-menu.tsx b/services/web/frontend/js/shared/components/navbar/admin-menu.tsx index 94c57e1dfc..9876e4a769 100644 --- a/services/web/frontend/js/shared/components/navbar/admin-menu.tsx +++ b/services/web/frontend/js/shared/components/navbar/admin-menu.tsx @@ -45,7 +45,7 @@ export default function AdminMenu({ ) : null} {canDisplayProjectUrlLookup ? ( - Project URL lookup + Project URL Lookup ) : null} {canDisplayAdminRedirect && adminUrl ? (