Web: Client: Added check for differences between selected options for the room editing dialog.
This commit is contained in:
parent
3ffb98a9df
commit
029e6534af
@ -291,7 +291,7 @@ const EditRoomEvent = ({
|
|||||||
const [tags, watermarks] = await Promise.all(requests);
|
const [tags, watermarks] = await Promise.all(requests);
|
||||||
|
|
||||||
setFetchedTags(tags);
|
setFetchedTags(tags);
|
||||||
setWatermarks(watermarks);
|
setWatermarks(watermarks, true);
|
||||||
|
|
||||||
setIsInitLoading(false);
|
setIsInitLoading(false);
|
||||||
};
|
};
|
||||||
|
@ -25,6 +25,7 @@
|
|||||||
// International. See the License terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
// International. See the License terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
||||||
|
|
||||||
import React, { useState, useEffect, useRef, useCallback } from "react";
|
import React, { useState, useEffect, useRef, useCallback } from "react";
|
||||||
|
import { inject, observer } from "mobx-react";
|
||||||
|
|
||||||
import TagHandler from "./handlers/TagHandler";
|
import TagHandler from "./handlers/TagHandler";
|
||||||
import SetRoomParams from "./sub-components/SetRoomParams";
|
import SetRoomParams from "./sub-components/SetRoomParams";
|
||||||
@ -43,6 +44,7 @@ const EditRoomDialog = ({
|
|||||||
fetchedTags,
|
fetchedTags,
|
||||||
fetchedImage,
|
fetchedImage,
|
||||||
isInitLoading,
|
isInitLoading,
|
||||||
|
isEqualWatermarkChanges,
|
||||||
}) => {
|
}) => {
|
||||||
const [isScrollLocked, setIsScrollLocked] = useState(false);
|
const [isScrollLocked, setIsScrollLocked] = useState(false);
|
||||||
const [isValidTitle, setIsValidTitle] = useState(true);
|
const [isValidTitle, setIsValidTitle] = useState(true);
|
||||||
@ -77,7 +79,8 @@ const EditRoomDialog = ({
|
|||||||
currentParams.icon.uploadedFile === undefined)) ||
|
currentParams.icon.uploadedFile === undefined)) ||
|
||||||
prevParams.icon.uploadedFile === currentParams.icon.uploadedFile) &&
|
prevParams.icon.uploadedFile === currentParams.icon.uploadedFile) &&
|
||||||
prevParams.quota === currentParams.quota &&
|
prevParams.quota === currentParams.quota &&
|
||||||
prevParams.indexing === currentParams.indexing
|
prevParams.indexing === currentParams.indexing &&
|
||||||
|
isEqualWatermarkChanges()
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -184,4 +187,10 @@ const EditRoomDialog = ({
|
|||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
export default EditRoomDialog;
|
export default inject(({ createEditRoomStore }) => {
|
||||||
|
const { isEqualWatermarkChanges } = createEditRoomStore;
|
||||||
|
|
||||||
|
return {
|
||||||
|
isEqualWatermarkChanges,
|
||||||
|
};
|
||||||
|
})(observer(EditRoomDialog));
|
||||||
|
@ -118,7 +118,6 @@ const ViewerInfoWatermark = ({
|
|||||||
scale
|
scale
|
||||||
value={textValue}
|
value={textValue}
|
||||||
tabIndex={1}
|
tabIndex={1}
|
||||||
isAutoFocussed
|
|
||||||
onChange={onTextChange}
|
onChange={onTextChange}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
|
@ -29,10 +29,10 @@ import { useTranslation } from "react-i18next";
|
|||||||
import { inject, observer } from "mobx-react";
|
import { inject, observer } from "mobx-react";
|
||||||
|
|
||||||
import { RadioButtonGroup } from "@docspace/shared/components/radio-button-group";
|
import { RadioButtonGroup } from "@docspace/shared/components/radio-button-group";
|
||||||
|
import { WatermarkAdditions } from "@docspace/shared/enums";
|
||||||
|
|
||||||
import ViewerInfoWatermark from "./ViewerInfo";
|
import ViewerInfoWatermark from "./ViewerInfo";
|
||||||
import { StyledBody } from "./StyledComponent";
|
import { StyledBody } from "./StyledComponent";
|
||||||
import { WatermarkAdditions } from "@docspace/shared/enums";
|
|
||||||
|
|
||||||
const imageWatermark = "image",
|
const imageWatermark = "image",
|
||||||
viewerInfoWatermark = "viewerInfo";
|
viewerInfoWatermark = "viewerInfo";
|
||||||
@ -124,6 +124,8 @@ const Watermarks = ({ setWatermarks, watermarksSettings, isEdit }) => {
|
|||||||
additions: WatermarkAdditions.UserName,
|
additions: WatermarkAdditions.UserName,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return () => setWatermarks(null);
|
||||||
}, []);
|
}, []);
|
||||||
|
|
||||||
const onSelectType = (e) => {
|
const onSelectType = (e) => {
|
||||||
|
@ -25,6 +25,8 @@
|
|||||||
// International. See the License terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
// International. See the License terms at http://creativecommons.org/licenses/by-sa/4.0/legalcode
|
||||||
|
|
||||||
import { makeAutoObservable } from "mobx";
|
import { makeAutoObservable } from "mobx";
|
||||||
|
import isEqual from "lodash/isEqual";
|
||||||
|
|
||||||
import { toastr } from "@docspace/shared/components/toast";
|
import { toastr } from "@docspace/shared/components/toast";
|
||||||
import { isDesktop } from "@docspace/shared/utils";
|
import { isDesktop } from "@docspace/shared/utils";
|
||||||
import FilesFilter from "@docspace/shared/api/files/filter";
|
import FilesFilter from "@docspace/shared/api/files/filter";
|
||||||
@ -93,7 +95,17 @@ class CreateEditRoomStore {
|
|||||||
this.onClose = onClose;
|
this.onClose = onClose;
|
||||||
};
|
};
|
||||||
|
|
||||||
setWatermarks = (watermarksSettings) => {
|
setWatermarks = (watermarksSettings, isInit = false) => {
|
||||||
|
if (isInit) {
|
||||||
|
this.initialWatermarksSettings = {
|
||||||
|
...watermarksSettings,
|
||||||
|
enabled: true,
|
||||||
|
};
|
||||||
|
|
||||||
|
this.watermarksSettings = this.initialWatermarksSettings;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
if (!watermarksSettings) {
|
if (!watermarksSettings) {
|
||||||
this.watermarksSettings = null;
|
this.watermarksSettings = null;
|
||||||
return;
|
return;
|
||||||
@ -102,10 +114,14 @@ class CreateEditRoomStore {
|
|||||||
this.watermarksSettings = {
|
this.watermarksSettings = {
|
||||||
...this.watermarksSettings,
|
...this.watermarksSettings,
|
||||||
...watermarksSettings,
|
...watermarksSettings,
|
||||||
enabled: true,
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
|
isEqualWatermarkChanges = () => {
|
||||||
|
|
||||||
|
return isEqual(this.watermarksSettings, this.initialWatermarksSettings);
|
||||||
|
};
|
||||||
|
|
||||||
onCreateRoom = async (withConfirm = false, t) => {
|
onCreateRoom = async (withConfirm = false, t) => {
|
||||||
const roomParams = this.roomParams;
|
const roomParams = this.roomParams;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user