From c3647f0ba9f2d16bb858a6611c417fb581ad2b1c Mon Sep 17 00:00:00 2001 From: Viktor Fomin Date: Tue, 28 Mar 2023 10:17:40 +0300 Subject: [PATCH] Client: PortalSettings: DeleteData: disable for not activated email --- .../delete-data/StyledDeleteData.js | 30 ++++++--- .../delete-data/portalDeactivation.js | 62 ++++++++++++++---- .../categories/delete-data/portalDeletion.js | 63 +++++++++++++++---- 3 files changed, 124 insertions(+), 31 deletions(-) diff --git a/packages/client/src/pages/PortalSettings/categories/delete-data/StyledDeleteData.js b/packages/client/src/pages/PortalSettings/categories/delete-data/StyledDeleteData.js index 2ed4adcea1..aa63d25086 100644 --- a/packages/client/src/pages/PortalSettings/categories/delete-data/StyledDeleteData.js +++ b/packages/client/src/pages/PortalSettings/categories/delete-data/StyledDeleteData.js @@ -27,16 +27,30 @@ export const MainContainer = styled.div` margin-bottom: 24px; color: ${(props) => props.theme.client.settings.common.descriptionColor}; } +`; - .button { - @media (${smallTablet}) { - position: absolute; - bottom: 16px; - width: calc(100% - 40px); +export const ButtonWrapper = styled.div` + display: flex; + gap: 8px; + align-items: center; - @media (${mobile}) { - width: calc(100% - 32px); - } + .request-again-link { + margin-left: 4px; + } + + @media (${smallTablet}) { + flex-direction: column-reverse; + gap: 16px; + position: absolute; + bottom: 16px; + width: calc(100% - 40px); + + @media (${mobile}) { + width: calc(100% - 32px); + } + + .button { + width: 100%; } } `; diff --git a/packages/client/src/pages/PortalSettings/categories/delete-data/portalDeactivation.js b/packages/client/src/pages/PortalSettings/categories/delete-data/portalDeactivation.js index 874e0b602f..04be7ce6e7 100644 --- a/packages/client/src/pages/PortalSettings/categories/delete-data/portalDeactivation.js +++ b/packages/client/src/pages/PortalSettings/categories/delete-data/portalDeactivation.js @@ -5,13 +5,21 @@ import { inject } from "mobx-react"; import Text from "@docspace/components/text"; import Button from "@docspace/components/button"; import toastr from "@docspace/components/toast/toastr"; -import { MainContainer } from "./StyledDeleteData"; +import Link from "@docspace/components/link"; +import { MainContainer, ButtonWrapper } from "./StyledDeleteData"; import { setDocumentTitle } from "../../../../helpers/utils"; import { sendSuspendPortalEmail } from "@docspace/common/api/portal"; import { isDesktop } from "@docspace/components/utils/device"; +import { EmployeeActivationStatus } from "@docspace/common/constants"; const PortalDeactivation = (props) => { - const { t, getPortalOwner, owner } = props; + const { + t, + getPortalOwner, + owner, + currentColorScheme, + sendActivationLink, + } = props; const [isDesktopView, setIsDesktopView] = useState(false); const fetchData = async () => { @@ -42,6 +50,13 @@ const PortalDeactivation = (props) => { } }; + const requestAgain = () => { + sendActivationLink && sendActivationLink(t); + }; + + const notActivatedEmail = + owner.activationStatus === EmployeeActivationStatus.NotActivated; + return ( @@ -51,21 +66,46 @@ const PortalDeactivation = (props) => { {t("PortalDeactivationDescription")} {t("PortalDeactivationHelper")} -