mirror of
https://github.com/yu-i-i/overleaf-cep.git
synced 2026-05-23 17:19:37 +02:00
[web] Check adminPrivilegeAvailable to show "Project URL lookup" (#29020)
* Check `adminPrivilegeAvailable` to show "Project URL lookup"
This is the correct check as it's what used to decide if the AdminPanelRouter should be included:
ffa200d595/services/web/modules/admin-panel/index.mjs (L14-L15)
* Add "it displays expected admin menu items" to e2e tests
* Don't expect "Project URL lookup" in CE
* Revert "Don't expect "Project URL lookup" in CE"
This reverts commit 467cccbf6c0d538c386d459403c521e3f62cfee2.
* Make "Project URL Lookup" capitalization consistent
GitOrigin-RevId: ed5c219e9b5912a4c324cf9dce58061b58d911b0
This commit is contained in:
@@ -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', () => {
|
describe('manage site', () => {
|
||||||
beforeEach(() => {
|
beforeEach(() => {
|
||||||
login(admin)
|
login(admin)
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ block append meta
|
|||||||
- const canDisplayAdminRedirect = canRedirectToAdminDomain()
|
- const canDisplayAdminRedirect = canRedirectToAdminDomain()
|
||||||
- const sessionUser = getSessionUser()
|
- const sessionUser = getSessionUser()
|
||||||
- const staffAccess = sessionUser?.staffAccess
|
- 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 canDisplaySplitTestMenu = hasFeature('saas') && ((canDisplayAdminMenu && hasAdminCapability('view-split-test')) || staffAccess?.splitTestMetrics || staffAccess?.splitTestManagement)
|
||||||
- const canDisplaySurveyMenu = hasFeature('saas') && canDisplayAdminMenu && hasAdminCapability('manage-survey', false)
|
- const canDisplaySurveyMenu = hasFeature('saas') && canDisplayAdminMenu && hasAdminCapability('manage-survey', false)
|
||||||
- const canDisplayScriptLogMenu = hasFeature('saas') && hasAdminCapability('view-script-log', false) && canDisplayAdminMenu
|
- const canDisplayScriptLogMenu = hasFeature('saas') && hasAdminCapability('view-script-log', false) && canDisplayAdminMenu
|
||||||
|
|||||||
@@ -30,7 +30,7 @@ nav.navbar.navbar-default.navbar-main.navbar-expand-lg(
|
|||||||
|
|
||||||
- var canDisplayAdminMenu = hasAdminAccess()
|
- var canDisplayAdminMenu = hasAdminAccess()
|
||||||
- var canDisplayAdminRedirect = canRedirectToAdminDomain()
|
- 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 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 canDisplaySurveyMenu = hasFeature('saas') && canDisplayAdminMenu && hasAdminCapability('manage-survey', false)
|
||||||
- var canDisplayScriptLogMenu = hasFeature('saas') && hasAdminCapability('view-script-log', false) && canDisplayAdminMenu
|
- var canDisplayScriptLogMenu = hasFeature('saas') && hasAdminCapability('view-script-log', false) && canDisplayAdminMenu
|
||||||
|
|||||||
@@ -45,7 +45,7 @@ export default function AdminMenu({
|
|||||||
) : null}
|
) : null}
|
||||||
{canDisplayProjectUrlLookup ? (
|
{canDisplayProjectUrlLookup ? (
|
||||||
<NavDropdownLinkItem href="/admin/project">
|
<NavDropdownLinkItem href="/admin/project">
|
||||||
Project URL lookup
|
Project URL Lookup
|
||||||
</NavDropdownLinkItem>
|
</NavDropdownLinkItem>
|
||||||
) : null}
|
) : null}
|
||||||
{canDisplayAdminRedirect && adminUrl ? (
|
{canDisplayAdminRedirect && adminUrl ? (
|
||||||
|
|||||||
Reference in New Issue
Block a user