Skip to content

Commit 5275fcc

Browse files
committed
20250530 19:57
1 parent aad4d9c commit 5275fcc

File tree

2 files changed

+21
-3
lines changed

2 files changed

+21
-3
lines changed

apps/app/src/client/components/PageControls/PageControls.tsx

Lines changed: 20 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ import type {
88
import {
99
isIPageInfoForEntity, isIPageInfoForOperation,
1010
} from '@growi/core';
11+
import { pagePathUtils } from '@growi/core/dist/utils';
1112
import { useRect } from '@growi/ui/dist/utils';
1213
import { useTranslation } from 'next-i18next';
1314
import { DropdownItem } from 'reactstrap';
@@ -29,7 +30,7 @@ import {
2930
} from '~/stores/ui';
3031
import loggerFactory from '~/utils/logger';
3132

32-
import { useSWRxPageInfo, useSWRxTagsInfo } from '../../../stores/page';
33+
import { useSWRxPageInfo, useSWRxTagsInfo, useCurrentPagePath } from '../../../stores/page';
3334
import { useSWRxUsersList } from '../../../stores/user';
3435
import type { AdditionalMenuItemsRendererProps, ForceHideMenuItems } from '../Common/Dropdown/PageItemControl';
3536
import {
@@ -137,6 +138,11 @@ const PageControlsSubstance = (props: PageControlsSubstanceProps): JSX.Element =
137138
const { data: isDeviceLargerThanMd } = useIsDeviceLargerThanMd();
138139
const { data: isSearchPage } = useIsSearchPage();
139140
const { data: isUsersHomepageDeletionEnabled } = useIsUsersHomepageDeletionEnabled();
141+
const { data: currentPagePath } = useCurrentPagePath();
142+
143+
const isUsersHomepage = pagePathUtils.isUsersHomepage(currentPagePath ?? '');
144+
console.log(isUsersHomepage);
145+
140146

141147
const { mutate: mutatePageInfo } = useSWRxPageInfo(pageId, shareLinkId);
142148

@@ -283,6 +289,18 @@ const PageControlsSubstance = (props: PageControlsSubstanceProps): JSX.Element =
283289
const _isIPageInfoForOperation = isIPageInfoForOperation(pageInfo);
284290
const isViewMode = editorMode === EditorMode.View;
285291

292+
const isEnableActions = () => {
293+
if (isGuestUser) {
294+
return false;
295+
}
296+
297+
if (isUsersHomepage && !isUsersHomepageDeletionEnabled) {
298+
return false;
299+
}
300+
301+
return true;
302+
};
303+
286304
return (
287305
<div className={`${styles['grw-page-controls']} hstack gap-2`} ref={pageControlsRef}>
288306
{ isViewMode && isDeviceLargerThanMd && !isSearchPage && !isSearchPage && (
@@ -335,7 +353,7 @@ const PageControlsSubstance = (props: PageControlsSubstanceProps): JSX.Element =
335353
<PageItemControl
336354
pageId={pageId}
337355
pageInfo={pageInfo}
338-
isEnableActions={!isGuestUser && isUsersHomepageDeletionEnabled}
356+
isEnableActions={isEnableActions()}
339357
isReadOnlyUser={!!isReadOnlyUser}
340358
forceHideMenuItems={forceHideMenuItemsWithAdditions}
341359
additionalMenuItemOnTopRenderer={!isReadOnlyUser ? additionalMenuItemOnTopRenderer : undefined}

apps/app/src/pages/[[...path]].page.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -580,7 +580,7 @@ function injectServerConfigurations(context: GetServerSidePropsContext, props: P
580580

581581
props.aiEnabled = configManager.getConfig('app:aiEnabled');
582582
props.limitLearnablePageCountPerAssistant = configManager.getConfig('openai:limitLearnablePageCountPerAssistant');
583-
props.isUsersHomepageDeletionEnabled = configManager.getConfig('security:user-homepage-deletion:isEnabled') && pagePathUtils.isUsersHomepage(props.pageWithMeta?.data.path ?? '');
583+
props.isUsersHomepageDeletionEnabled = configManager.getConfig('security:user-homepage-deletion:isEnabled');
584584
props.isSearchServiceConfigured = searchService.isConfigured;
585585
props.isSearchServiceReachable = searchService.isReachable;
586586
props.isSearchScopeChildrenAsDefault = configManager.getConfig('customize:isSearchScopeChildrenAsDefault');

0 commit comments

Comments
 (0)