From c9eff55f059b1b55c78e5e4c91c9112496c29199 Mon Sep 17 00:00:00 2001 From: yu-i-i Date: Thu, 9 Jul 2026 01:18:58 +0200 Subject: [PATCH] Admin tools: remove themed pages env var; style admin header - themed pages now is enabled by default upstream - make the header background red on admin manage urers/projects pages - fix minor bug --- services/web/config/settings.defaults.js | 3 --- .../admin-tools/app/src/ProjectListController.mjs | 7 ------- .../modules/admin-tools/app/src/UserListController.mjs | 9 +-------- .../js/project-list/components/project-list-ds-nav.tsx | 4 ++-- .../js/project-list/components/project-list-root.tsx | 2 +- .../project-list/components/sidebar/sidebar-ds-nav.tsx | 5 +---- .../js/user-list/components/sidebar/sidebar-ds-nav.tsx | 4 +--- .../js/user-list/components/user-list-ds-nav.tsx | 4 ++-- .../frontend/js/user-list/components/user-list-root.tsx | 2 +- 9 files changed, 9 insertions(+), 31 deletions(-) diff --git a/services/web/config/settings.defaults.js b/services/web/config/settings.defaults.js index d7787426e7..97ce64fb87 100644 --- a/services/web/config/settings.defaults.js +++ b/services/web/config/settings.defaults.js @@ -1272,9 +1272,6 @@ module.exports = { }, splitTestOverrides: { - ...(process.env.OVERLEAF_THEMED_DASHBOARD?.toLowerCase() === 'true' ? { - 'themed-project-dashboard': 'enabled', - } : {}), ...(process.env.OVERLEAF_HISTORY_RESTORE?.toLowerCase() === 'true' ? { 'history-ranges-support': 'enabled', 'revert-file': 'enabled', diff --git a/services/web/modules/admin-tools/app/src/ProjectListController.mjs b/services/web/modules/admin-tools/app/src/ProjectListController.mjs index 2c85fde71c..587d3697a7 100644 --- a/services/web/modules/admin-tools/app/src/ProjectListController.mjs +++ b/services/web/modules/admin-tools/app/src/ProjectListController.mjs @@ -16,7 +16,6 @@ import { Project } from '../../../../app/src/models/Project.mjs' import { DeletedProject } from '../../../../app/src/models/DeletedProject.mjs' import { OError } from '../../../../app/src/Features/Errors/Errors.js' import HttpErrorHandler from '../../../../app/src/Features/Errors/HttpErrorHandler.mjs' -import SplitTestHandler from '../../../../app/src/Features/SplitTests/SplitTestHandler.mjs' const __dirname = Path.dirname(fileURLToPath(import.meta.url)) @@ -50,12 +49,6 @@ async function manageProjectsPage(req, res, next) { user ) - await SplitTestHandler.promises.getAssignment( - req, - res, - 'themed-project-dashboard' - ) - res.render(Path.resolve(__dirname, '../views/manage-projects-react'), { title: 'Manage Projects', userSettings, diff --git a/services/web/modules/admin-tools/app/src/UserListController.mjs b/services/web/modules/admin-tools/app/src/UserListController.mjs index 7fd65881b8..f8b61ac952 100644 --- a/services/web/modules/admin-tools/app/src/UserListController.mjs +++ b/services/web/modules/admin-tools/app/src/UserListController.mjs @@ -23,7 +23,6 @@ import HttpErrorHandler from '../../../../app/src/Features/Errors/HttpErrorHandl import ErrorController from '../../../../app/src/Features/Errors/ErrorController.mjs' import Errors, { OError } from '../../../../app/src/Features/Errors/Errors.js' import { db } from '../../../../app/src/infrastructure/mongodb.mjs' -import SplitTestHandler from '../../../../app/src/Features/SplitTests/SplitTestHandler.mjs' const __dirname = Path.dirname(fileURLToPath(import.meta.url)) @@ -84,12 +83,6 @@ async function manageUsersPage(req, res, next) { status: prefetchedUsersBlob ? 'success' : 'error', }) - await SplitTestHandler.promises.getAssignment( - req, - res, - 'themed-project-dashboard' - ) - const userId = SessionManager.getLoggedInUserId(req.session) const user = await User.findById(userId, 'ace') @@ -429,7 +422,7 @@ async function purgeDeletedUser(req, res, next) { logger.debug({ deleterUserId, userId }, 'admin is trying to purge deleted user account') try { - UserDeleter.promises.expireDeletedUser(userId) + await UserDeleter.promises.expireDeletedUser(userId) } catch (err) { logger.warn({ restorerId, userId }, err.message) const message = 'Something went wrong. The user is already deleted?' diff --git a/services/web/modules/admin-tools/frontend/js/project-list/components/project-list-ds-nav.tsx b/services/web/modules/admin-tools/frontend/js/project-list/components/project-list-ds-nav.tsx index f54854aad4..8e721b86fb 100644 --- a/services/web/modules/admin-tools/frontend/js/project-list/components/project-list-ds-nav.tsx +++ b/services/web/modules/admin-tools/frontend/js/project-list/components/project-list-ds-nav.tsx @@ -41,7 +41,7 @@ export function ProjectListDsNav() { totalPages, } = useProjectListContext() const { getUserNameById } = useUserIdentityContext() - const activeOverallTheme = useActiveOverallTheme('themed-project-dashboard') + const activeOverallTheme = useActiveOverallTheme() const userName = projectsOwnerId ? getUserNameById(projectsOwnerId) : t('all_users') const tableTopArea = ( @@ -58,7 +58,7 @@ export function ProjectListDsNav() { ) return ( -
+
diff --git a/services/web/modules/admin-tools/frontend/js/user-list/components/sidebar/sidebar-ds-nav.tsx b/services/web/modules/admin-tools/frontend/js/user-list/components/sidebar/sidebar-ds-nav.tsx index 01e9656033..33467f8d0c 100644 --- a/services/web/modules/admin-tools/frontend/js/user-list/components/sidebar/sidebar-ds-nav.tsx +++ b/services/web/modules/admin-tools/frontend/js/user-list/components/sidebar/sidebar-ds-nav.tsx @@ -7,7 +7,6 @@ import { usePersistedResize } from '@/shared/hooks/use-resize' import getMeta from '@/utils/meta' import OLTooltip from '@/shared/components/ol/ol-tooltip' import { AccountMenuItems } from '@/shared/components/navbar/account-menu-items' -import { useFeatureFlag } from '@/shared/context/split-test-context' import SidebarFilters from './sidebar-filters' import CreateAccountButton from '../create-account-button' import { useSendUserListMB } from '../user-list-events' @@ -22,7 +21,6 @@ function SidebarDsNav() { const sendMB = useSendUserListMB() const { sessionUser } = getMeta('ol-navbar') const { containerRef, scrolledUp, scrolledDown } = useScrolled() - const themedDsNav = useFeatureFlag('themed-project-dashboard') return (
diff --git a/services/web/modules/admin-tools/frontend/js/user-list/components/user-list-ds-nav.tsx b/services/web/modules/admin-tools/frontend/js/user-list/components/user-list-ds-nav.tsx index 4f658eef1c..776b64630b 100644 --- a/services/web/modules/admin-tools/frontend/js/user-list/components/user-list-ds-nav.tsx +++ b/services/web/modules/admin-tools/frontend/js/user-list/components/user-list-ds-nav.tsx @@ -38,7 +38,7 @@ export function UserListDsNav() { setCurrentPage, totalPages, } = useUserListContext() - const activeOverallTheme = useActiveOverallTheme('themed-project-dashboard') + const activeOverallTheme = useActiveOverallTheme() const tableTopArea = (
@@ -54,7 +54,7 @@ export function UserListDsNav() { ) return ( -
+
{