Web: Disabled security settings.
This commit is contained in:
parent
e59984bc5c
commit
19113eb32d
@ -3,6 +3,7 @@ import React from "react";
|
|||||||
import Text from "@docspace/components/text";
|
import Text from "@docspace/components/text";
|
||||||
import moment from "moment";
|
import moment from "moment";
|
||||||
import styled from "styled-components";
|
import styled from "styled-components";
|
||||||
|
import { UnavailableStyles } from "../../../../utils/commonSettingsStyles";
|
||||||
|
|
||||||
const StyledRowContent = styled(RowContent)`
|
const StyledRowContent = styled(RowContent)`
|
||||||
.row-main-container-wrapper {
|
.row-main-container-wrapper {
|
||||||
@ -10,9 +11,11 @@ const StyledRowContent = styled(RowContent)`
|
|||||||
justify-content: space-between;
|
justify-content: space-between;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
${(props) => props.isSettingNotPaid && UnavailableStyles}
|
||||||
`;
|
`;
|
||||||
|
|
||||||
export const AuditContent = ({ sectionWidth, item }) => {
|
export const AuditContent = ({ sectionWidth, item, isSettingNotPaid }) => {
|
||||||
const DATE_FORMAT = "YYYY-MM-DD LT";
|
const DATE_FORMAT = "YYYY-MM-DD LT";
|
||||||
const to = moment(item.date).local();
|
const to = moment(item.date).local();
|
||||||
|
|
||||||
@ -22,9 +25,15 @@ export const AuditContent = ({ sectionWidth, item }) => {
|
|||||||
sideColor="#A3A9AE"
|
sideColor="#A3A9AE"
|
||||||
nameColor="#D0D5DA"
|
nameColor="#D0D5DA"
|
||||||
sectionWidth={sectionWidth}
|
sectionWidth={sectionWidth}
|
||||||
|
isSettingNotPaid={isSettingNotPaid}
|
||||||
>
|
>
|
||||||
<div className="user-container-wrapper">
|
<div className="user-container-wrapper">
|
||||||
<Text fontWeight={600} fontSize="14px" isTextOverflow={true}>
|
<Text
|
||||||
|
fontWeight={600}
|
||||||
|
fontSize="14px"
|
||||||
|
isTextOverflow={true}
|
||||||
|
className="settings_unavailable"
|
||||||
|
>
|
||||||
{item.user}
|
{item.user}
|
||||||
</Text>
|
</Text>
|
||||||
</div>
|
</div>
|
||||||
@ -34,10 +43,16 @@ export const AuditContent = ({ sectionWidth, item }) => {
|
|||||||
fontSize="12px"
|
fontSize="12px"
|
||||||
fontWeight={600}
|
fontWeight={600}
|
||||||
truncate={true}
|
truncate={true}
|
||||||
|
className="settings_unavailable"
|
||||||
>
|
>
|
||||||
{dateStr}
|
{dateStr}
|
||||||
</Text>
|
</Text>
|
||||||
<Text fontSize="12px" as="div" fontWeight={600}>
|
<Text
|
||||||
|
fontSize="12px"
|
||||||
|
as="div"
|
||||||
|
fontWeight={600}
|
||||||
|
className="settings_unavailable"
|
||||||
|
>
|
||||||
{`${item.room} | ${item.action}`}
|
{`${item.room} | ${item.action}`}
|
||||||
</Text>
|
</Text>
|
||||||
</StyledRowContent>
|
</StyledRowContent>
|
||||||
|
@ -6,7 +6,14 @@ import TableHeader from "./TableHeader";
|
|||||||
import TableBody from "@docspace/components/table-container/TableBody";
|
import TableBody from "@docspace/components/table-container/TableBody";
|
||||||
import { isMobile } from "react-device-detect";
|
import { isMobile } from "react-device-detect";
|
||||||
|
|
||||||
const Table = ({ auditTrailUsers, sectionWidth, viewAs, setViewAs, theme }) => {
|
const Table = ({
|
||||||
|
auditTrailUsers,
|
||||||
|
sectionWidth,
|
||||||
|
viewAs,
|
||||||
|
setViewAs,
|
||||||
|
theme,
|
||||||
|
isSettingNotPaid,
|
||||||
|
}) => {
|
||||||
const ref = useRef(null);
|
const ref = useRef(null);
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
if (!sectionWidth) return;
|
if (!sectionWidth) return;
|
||||||
@ -22,7 +29,12 @@ const Table = ({ auditTrailUsers, sectionWidth, viewAs, setViewAs, theme }) => {
|
|||||||
<TableHeader sectionWidth={sectionWidth} containerRef={ref} />
|
<TableHeader sectionWidth={sectionWidth} containerRef={ref} />
|
||||||
<TableBody>
|
<TableBody>
|
||||||
{auditTrailUsers.map((item) => (
|
{auditTrailUsers.map((item) => (
|
||||||
<TableRow theme={theme} key={item.id} item={item} />
|
<TableRow
|
||||||
|
theme={theme}
|
||||||
|
key={item.id}
|
||||||
|
item={item}
|
||||||
|
isSettingNotPaid={isSettingNotPaid}
|
||||||
|
/>
|
||||||
))}
|
))}
|
||||||
</TableBody>
|
</TableBody>
|
||||||
</TableContainer>
|
</TableContainer>
|
||||||
|
@ -5,6 +5,7 @@ import TableCell from "@docspace/components/table-container/TableCell";
|
|||||||
import Text from "@docspace/components/text";
|
import Text from "@docspace/components/text";
|
||||||
import styled from "styled-components";
|
import styled from "styled-components";
|
||||||
import moment from "moment";
|
import moment from "moment";
|
||||||
|
import { UnavailableStyles } from "../../../../utils/commonSettingsStyles";
|
||||||
|
|
||||||
const StyledPeopleRow = styled(TableRow)`
|
const StyledPeopleRow = styled(TableRow)`
|
||||||
.table-container_cell {
|
.table-container_cell {
|
||||||
@ -29,10 +30,11 @@ const StyledPeopleRow = styled(TableRow)`
|
|||||||
.table-cell_username {
|
.table-cell_username {
|
||||||
margin-right: 12px;
|
margin-right: 12px;
|
||||||
}
|
}
|
||||||
|
${(props) => props.isSettingNotPaid && UnavailableStyles}
|
||||||
`;
|
`;
|
||||||
|
|
||||||
const PeopleTableRow = (props) => {
|
const PeopleTableRow = (props) => {
|
||||||
const { item, contextOptionsProps } = props;
|
const { item, contextOptionsProps, isSettingNotPaid } = props;
|
||||||
const { email, position } = item;
|
const { email, position } = item;
|
||||||
|
|
||||||
const DATE_FORMAT = "YYYY-MM-DD LT";
|
const DATE_FORMAT = "YYYY-MM-DD LT";
|
||||||
@ -41,7 +43,11 @@ const PeopleTableRow = (props) => {
|
|||||||
const dateStr = to.format(DATE_FORMAT);
|
const dateStr = to.format(DATE_FORMAT);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<StyledPeopleRow key={item.id} {...contextOptionsProps}>
|
<StyledPeopleRow
|
||||||
|
key={item.id}
|
||||||
|
{...contextOptionsProps}
|
||||||
|
isSettingNotPaid={isSettingNotPaid}
|
||||||
|
>
|
||||||
<TableCell>
|
<TableCell>
|
||||||
<Text
|
<Text
|
||||||
type="page"
|
type="page"
|
||||||
@ -49,6 +55,7 @@ const PeopleTableRow = (props) => {
|
|||||||
fontSize="12px"
|
fontSize="12px"
|
||||||
fontWeight={600}
|
fontWeight={600}
|
||||||
truncate
|
truncate
|
||||||
|
className="settings_unavailable"
|
||||||
>
|
>
|
||||||
{item.user}
|
{item.user}
|
||||||
</Text>
|
</Text>
|
||||||
@ -60,6 +67,7 @@ const PeopleTableRow = (props) => {
|
|||||||
fontSize="12px"
|
fontSize="12px"
|
||||||
fontWeight={600}
|
fontWeight={600}
|
||||||
truncate
|
truncate
|
||||||
|
className="settings_unavailable"
|
||||||
>
|
>
|
||||||
{dateStr}
|
{dateStr}
|
||||||
</Text>
|
</Text>
|
||||||
@ -71,6 +79,7 @@ const PeopleTableRow = (props) => {
|
|||||||
fontSize="12px"
|
fontSize="12px"
|
||||||
fontWeight={600}
|
fontWeight={600}
|
||||||
isTextOverflow
|
isTextOverflow
|
||||||
|
className="settings_unavailable"
|
||||||
>
|
>
|
||||||
{item.room}
|
{item.room}
|
||||||
</Text>
|
</Text>
|
||||||
@ -83,6 +92,7 @@ const PeopleTableRow = (props) => {
|
|||||||
fontSize="12px"
|
fontSize="12px"
|
||||||
fontWeight={600}
|
fontWeight={600}
|
||||||
isTextOverflow
|
isTextOverflow
|
||||||
|
className="settings_unavailable"
|
||||||
>
|
>
|
||||||
{item.action}
|
{item.action}
|
||||||
</Text>
|
</Text>
|
||||||
|
@ -19,6 +19,7 @@ const AuditTrail = (props) => {
|
|||||||
getLifetimeAuditSettings,
|
getLifetimeAuditSettings,
|
||||||
getAuditTrailReport,
|
getAuditTrailReport,
|
||||||
securityLifetime,
|
securityLifetime,
|
||||||
|
isAuditAvailable,
|
||||||
} = props;
|
} = props;
|
||||||
|
|
||||||
useEffect(() => {
|
useEffect(() => {
|
||||||
@ -40,11 +41,15 @@ const AuditTrail = (props) => {
|
|||||||
theme={theme}
|
theme={theme}
|
||||||
auditTrailUsers={auditTrailUsers}
|
auditTrailUsers={auditTrailUsers}
|
||||||
sectionWidth={context.sectionWidth}
|
sectionWidth={context.sectionWidth}
|
||||||
|
isSettingNotPaid={!isAuditAvailable}
|
||||||
/>
|
/>
|
||||||
</>
|
</>
|
||||||
) : (
|
) : (
|
||||||
<>
|
<>
|
||||||
<AuditRowContainer sectionWidth={context.sectionWidth} />
|
<AuditRowContainer
|
||||||
|
sectionWidth={context.sectionWidth}
|
||||||
|
isSettingNotPaid={!isAuditAvailable}
|
||||||
|
/>
|
||||||
</>
|
</>
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
@ -69,6 +74,7 @@ const AuditTrail = (props) => {
|
|||||||
content={getContent()}
|
content={getContent()}
|
||||||
downloadReport={t("DownloadReportBtn")}
|
downloadReport={t("DownloadReportBtn")}
|
||||||
getReport={getAuditTrailReport}
|
getReport={getAuditTrailReport}
|
||||||
|
isSettingNotPaid={!isAuditAvailable}
|
||||||
/>
|
/>
|
||||||
)}
|
)}
|
||||||
</>
|
</>
|
||||||
@ -85,8 +91,9 @@ export default inject(({ setup, auth }) => {
|
|||||||
getAuditTrailReport,
|
getAuditTrailReport,
|
||||||
securityLifetime,
|
securityLifetime,
|
||||||
} = setup;
|
} = setup;
|
||||||
const { theme } = auth.settingsStore;
|
const { settingsStore, currentQuotaStore } = auth;
|
||||||
|
const { theme } = settingsStore;
|
||||||
|
const { isAuditAvailable } = currentQuotaStore;
|
||||||
return {
|
return {
|
||||||
getAuditTrail,
|
getAuditTrail,
|
||||||
auditTrailUsers: security.auditTrail.users,
|
auditTrailUsers: security.auditTrail.users,
|
||||||
@ -96,5 +103,6 @@ export default inject(({ setup, auth }) => {
|
|||||||
setLifetimeAuditSettings,
|
setLifetimeAuditSettings,
|
||||||
getAuditTrailReport,
|
getAuditTrailReport,
|
||||||
securityLifetime,
|
securityLifetime,
|
||||||
|
isAuditAvailable,
|
||||||
};
|
};
|
||||||
})(withTranslation("Settings")(withRouter(AuditTrail)));
|
})(withTranslation("Settings")(withRouter(AuditTrail)));
|
||||||
|
@ -6,8 +6,9 @@ import SaveCancelButtons from "@docspace/components/save-cancel-buttons";
|
|||||||
import styled from "styled-components";
|
import styled from "styled-components";
|
||||||
import Button from "@docspace/components/button";
|
import Button from "@docspace/components/button";
|
||||||
import toastr from "@docspace/components/toast/toastr";
|
import toastr from "@docspace/components/toast/toastr";
|
||||||
|
import { UnavailableStyles } from "../../../utils/commonSettingsStyles";
|
||||||
import { hugeMobile, tablet } from "@docspace/components/utils/device";
|
import { hugeMobile, tablet } from "@docspace/components/utils/device";
|
||||||
|
import Badge from "@docspace/components/badge";
|
||||||
|
|
||||||
const StyledTextInput = styled(TextInput)`
|
const StyledTextInput = styled(TextInput)`
|
||||||
margin-top: 4px;
|
margin-top: 4px;
|
||||||
@ -74,6 +75,8 @@ const MainContainer = styled.div`
|
|||||||
width: 100%;
|
width: 100%;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
${(props) => props.isSettingNotPaid && UnavailableStyles}
|
||||||
`;
|
`;
|
||||||
|
|
||||||
const HistoryMainContent = (props) => {
|
const HistoryMainContent = (props) => {
|
||||||
@ -92,6 +95,7 @@ const HistoryMainContent = (props) => {
|
|||||||
content,
|
content,
|
||||||
downloadReport,
|
downloadReport,
|
||||||
getReport,
|
getReport,
|
||||||
|
isSettingNotPaid,
|
||||||
} = props;
|
} = props;
|
||||||
|
|
||||||
const [lifeTime, setLifeTime] = useState(String(lifetime) || "180");
|
const [lifeTime, setLifeTime] = useState(String(lifetime) || "180");
|
||||||
@ -149,14 +153,18 @@ const HistoryMainContent = (props) => {
|
|||||||
}, [lifeTime]);
|
}, [lifeTime]);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<MainContainer>
|
<MainContainer isSettingNotPaid={isSettingNotPaid}>
|
||||||
|
{isSettingNotPaid && <Badge backgroundColor="#EDC409" label="Paid" />}
|
||||||
<div className="main-wrapper">
|
<div className="main-wrapper">
|
||||||
<Text fontSize="13px" color="#657077">
|
<Text fontSize="13px" color="#657077" className="settings_unavailable">
|
||||||
{subHeader}
|
{subHeader}
|
||||||
</Text>
|
</Text>
|
||||||
<Text className="latest-text">{latestText} </Text>
|
<Text className="latest-text settings_unavailable">{latestText} </Text>
|
||||||
|
|
||||||
<label className="storage-label" htmlFor="storage-period">
|
<label
|
||||||
|
className="storage-label settings_unavailable"
|
||||||
|
htmlFor="storage-period"
|
||||||
|
>
|
||||||
{storagePeriod}
|
{storagePeriod}
|
||||||
</label>
|
</label>
|
||||||
<StyledTextInput
|
<StyledTextInput
|
||||||
@ -165,6 +173,7 @@ const HistoryMainContent = (props) => {
|
|||||||
size="base"
|
size="base"
|
||||||
id="storage-period"
|
id="storage-period"
|
||||||
type="text"
|
type="text"
|
||||||
|
isDisabled={isSettingNotPaid}
|
||||||
/>
|
/>
|
||||||
<SaveCancelButtons
|
<SaveCancelButtons
|
||||||
className="save-cancel"
|
className="save-cancel"
|
||||||
@ -175,8 +184,9 @@ const HistoryMainContent = (props) => {
|
|||||||
showReminder={showReminder}
|
showReminder={showReminder}
|
||||||
displaySettings={true}
|
displaySettings={true}
|
||||||
hasScroll={false}
|
hasScroll={false}
|
||||||
|
isDisabled={isSettingNotPaid}
|
||||||
/>
|
/>
|
||||||
<Text className="latest-text">{downloadText}</Text>
|
<Text className="latest-text settings_unavailable">{downloadText}</Text>
|
||||||
</div>
|
</div>
|
||||||
{content}
|
{content}
|
||||||
<Button
|
<Button
|
||||||
@ -186,6 +196,7 @@ const HistoryMainContent = (props) => {
|
|||||||
size="normal"
|
size="normal"
|
||||||
minwidth="auto"
|
minwidth="auto"
|
||||||
onClick={() => getReport()}
|
onClick={() => getReport()}
|
||||||
|
isDisabled={isSettingNotPaid}
|
||||||
/>
|
/>
|
||||||
</MainContainer>
|
</MainContainer>
|
||||||
);
|
);
|
||||||
|
Loading…
Reference in New Issue
Block a user