diff --git a/packages/client/src/components/GlobalEvents/CreateEvent.js b/packages/client/src/components/GlobalEvents/CreateEvent.js
index ab3cdbb167..7659fcf0a6 100644
--- a/packages/client/src/components/GlobalEvents/CreateEvent.js
+++ b/packages/client/src/components/GlobalEvents/CreateEvent.js
@@ -48,7 +48,7 @@ const CreateEvent = ({
setEventDialogVisible,
eventDialogVisible,
- createWithoutDialog,
+ keepNewFileName,
}) => {
const [headerTitle, setHeaderTitle] = React.useState(null);
const [startValue, setStartValue] = React.useState("");
@@ -77,7 +77,7 @@ const CreateEvent = ({
if (!extension) return setEventDialogVisible(true);
- if (!createWithoutDialog) {
+ if (!keepNewFileName) {
setEventDialogVisible(true);
} else {
onSave(null, title || defaultName);
@@ -289,6 +289,7 @@ export default inject(
uploadDataStore,
dialogsStore,
oformsStore,
+ settingsStore,
}) => {
const {
setIsLoading,
@@ -321,7 +322,7 @@ export default inject(
eventDialogVisible,
} = dialogsStore;
- const { createWithoutDialog } = filesStore;
+ const { keepNewFileName } = settingsStore;
return {
setEventDialogVisible,
@@ -352,7 +353,7 @@ export default inject(
replaceFileStream,
setEncryptionAccess,
- createWithoutDialog,
+ keepNewFileName,
};
}
)(observer(CreateEvent));
diff --git a/packages/client/src/components/GlobalEvents/sub-components/Dialog.js b/packages/client/src/components/GlobalEvents/sub-components/Dialog.js
index 422a7b18a9..bcb7c5c596 100644
--- a/packages/client/src/components/GlobalEvents/sub-components/Dialog.js
+++ b/packages/client/src/components/GlobalEvents/sub-components/Dialog.js
@@ -22,9 +22,9 @@ const Dialog = ({
onCancel,
onClose,
isCreateDialog,
- createWithoutDialog,
- setCreateWithoutDialog,
extension,
+ keepNewFileName,
+ setKeepNewFileName,
}) => {
const [value, setValue] = useState("");
const [isDisabled, setIsDisabled] = useState(false);
@@ -32,8 +32,8 @@ const Dialog = ({
const [isChanged, setIsChanged] = useState(false);
useEffect(() => {
- createWithoutDialog && isCreateDialog && setIsChecked(createWithoutDialog);
- }, [isCreateDialog, createWithoutDialog]);
+ keepNewFileName && isCreateDialog && setIsChecked(keepNewFileName);
+ }, [isCreateDialog, keepNewFileName]);
useEffect(() => {
let input = document?.getElementById("create-text-input");
@@ -80,7 +80,7 @@ const Dialog = ({
const onSaveAction = useCallback(
(e) => {
setIsDisabled(true);
- isCreateDialog && setCreateWithoutDialog(isChecked);
+ isCreateDialog && setKeepNewFileName(isChecked);
onSave && onSave(e, value);
},
[onSave, isCreateDialog, value, isChecked]
@@ -88,7 +88,7 @@ const Dialog = ({
const onCancelAction = useCallback((e) => {
if (isChecked) {
- setCreateWithoutDialog(false);
+ setKeepNewFileName(false);
}
onCancel && onCancel(e);
}, []);
@@ -96,7 +96,7 @@ const Dialog = ({
const onCloseAction = useCallback(
(e) => {
if (!isDisabled && isChecked) {
- setCreateWithoutDialog(false);
+ setKeepNewFileName(false);
}
onClose && onClose(e);
},
@@ -171,9 +171,9 @@ const Dialog = ({
);
};
-export default inject(({ auth, filesStore }) => {
+export default inject(({ auth, settingsStore }) => {
const { folderFormValidation } = auth.settingsStore;
- const { createWithoutDialog, setCreateWithoutDialog } = filesStore;
+ const { keepNewFileName, setKeepNewFileName } = settingsStore;
- return { folderFormValidation, createWithoutDialog, setCreateWithoutDialog };
+ return { folderFormValidation, keepNewFileName, setKeepNewFileName };
})(observer(Dialog));
diff --git a/packages/client/src/pages/Settings/Section/Body/CommonSettings.js b/packages/client/src/pages/Settings/Section/Body/CommonSettings.js
index 427b963dd1..a5b317d502 100644
--- a/packages/client/src/pages/Settings/Section/Body/CommonSettings.js
+++ b/packages/client/src/pages/Settings/Section/Body/CommonSettings.js
@@ -28,10 +28,11 @@ const PersonalSettings = ({
t,
showTitle,
- createWithoutDialog,
- setCreateWithoutDialog,
showAdminSettings,
+
+ keepNewFileName,
+ setKeepNewFileName,
}) => {
const [isLoadingFavorites, setIsLoadingFavorites] = React.useState(false);
const [isLoadingRecent, setIsLoadingRecent] = React.useState(false);
@@ -52,6 +53,10 @@ const PersonalSettings = ({
setForceSave(!forceSave);
}, [setForceSave, forceSave]);
+ const onChangeKeepNewFileName = React.useCallback(() => {
+ setKeepNewFileName(!keepNewFileName);
+ }, [setKeepNewFileName, keepNewFileName]);
+
const onChangeFavorites = React.useCallback(
(e) => {
setIsLoadingFavorites(true);
@@ -72,10 +77,6 @@ const PersonalSettings = ({
[setIsLoadingRecent, setRecentSetting]
);
- const onChangeCheckbox = () => {
- setCreateWithoutDialog(!createWithoutDialog);
- };
-
return (
)}
{
- const {
- storeOriginalFiles,
- confirmDelete,
- updateIfExist,
- forcesave,
+export default inject(({ auth, settingsStore, treeFoldersStore }) => {
+ const {
+ storeOriginalFiles,
+ confirmDelete,
+ updateIfExist,
+ forcesave,
- setUpdateIfExist,
- setStoreOriginal,
+ setUpdateIfExist,
+ setStoreOriginal,
- setConfirmDelete,
+ setConfirmDelete,
- setForceSave,
+ setForceSave,
- favoritesSection,
- recentSection,
- setFavoritesSetting,
- setRecentSetting,
- } = settingsStore;
+ favoritesSection,
+ recentSection,
+ setFavoritesSetting,
+ setRecentSetting,
- const { myFolderId, commonFolderId } = treeFoldersStore;
- const { setCreateWithoutDialog, createWithoutDialog } = filesStore;
+ keepNewFileName,
+ setKeepNewFileName,
+ } = settingsStore;
- return {
- storeOriginalFiles,
- confirmDelete,
- updateIfExist,
- forceSave: forcesave,
+ const { myFolderId, commonFolderId } = treeFoldersStore;
- myFolderId,
- commonFolderId,
- isVisitor: auth.userStore.user.isVisitor,
- favoritesSection,
- recentSection,
+ return {
+ storeOriginalFiles,
+ confirmDelete,
+ updateIfExist,
+ forceSave: forcesave,
- setUpdateIfExist,
- setStoreOriginal,
+ myFolderId,
+ commonFolderId,
+ isVisitor: auth.userStore.user.isVisitor,
+ favoritesSection,
+ recentSection,
- setConfirmDelete,
+ setUpdateIfExist,
+ setStoreOriginal,
- setForceSave,
+ setConfirmDelete,
- setFavoritesSetting,
- setRecentSetting,
- myFolderId,
- commonFolderId,
- setCreateWithoutDialog,
- createWithoutDialog,
- };
- }
-)(observer(PersonalSettings));
+ setForceSave,
+
+ setFavoritesSetting,
+ setRecentSetting,
+ myFolderId,
+ commonFolderId,
+
+ keepNewFileName,
+ setKeepNewFileName,
+ };
+})(observer(PersonalSettings));
diff --git a/packages/client/src/store/FilesStore.js b/packages/client/src/store/FilesStore.js
index 9e61153784..f91dd9a1de 100644
--- a/packages/client/src/store/FilesStore.js
+++ b/packages/client/src/store/FilesStore.js
@@ -32,7 +32,6 @@ import debounce from "lodash.debounce";
const { FilesFilter, RoomsFilter } = api;
const storageViewAs = localStorage.getItem("viewAs");
-const storageCheckbox = JSON.parse(localStorage.getItem("createWithoutDialog"));
let requestCounter = 0;
@@ -56,7 +55,6 @@ class FilesStore {
isLoaded = false;
isLoading = false;
- createWithoutDialog = storageCheckbox ? true : false;
viewAs =
isMobile && storageViewAs !== "tile" ? "row" : storageViewAs || "table";
@@ -569,11 +567,6 @@ class FilesStore {
viewAs === "tile" && this.createThumbnails();
};
- setCreateWithoutDialog = (checked) => {
- this.createWithoutDialog = checked;
- localStorage.setItem("createWithoutDialog", JSON.stringify(checked));
- };
-
setPageItemsLength = (pageItemsLength) => {
this.pageItemsLength = pageItemsLength;
};
diff --git a/packages/client/src/store/SettingsStore.js b/packages/client/src/store/SettingsStore.js
index c406b95da0..52cffa9dee 100644
--- a/packages/client/src/store/SettingsStore.js
+++ b/packages/client/src/store/SettingsStore.js
@@ -30,6 +30,7 @@ class SettingsStore {
favoritesSection = null;
recentSection = null;
hideConfirmConvertSave = null;
+ keepNewFileName = null;
chunkUploadSize = 1024 * 1023; // 1024 * 1023; //~0.999mb
settingsIsLoaded = false;
@@ -149,6 +150,12 @@ class SettingsStore {
setStoreForcesave = (val) => (this.storeForcesave = val);
+ setKeepNewFileName = (data) => {
+ api.files
+ .changeKeepNewFileName(data)
+ .then((res) => this.setFilesSetting("keepNewFileName", res));
+ };
+
setEnableThirdParty = async (data, setting) => {
const res = await api.files.thirdParty(data);
this.setFilesSetting(setting, res);
diff --git a/packages/common/api/files/index.js b/packages/common/api/files/index.js
index 6854cfe786..6ba5be8d84 100644
--- a/packages/common/api/files/index.js
+++ b/packages/common/api/files/index.js
@@ -703,6 +703,11 @@ export function forceSave(val) {
return request({ method: "put", url: "files/forcesave", data });
}
+export function changeKeepNewFileName(val) {
+ const data = { set: val };
+ return request({ method: "put", url: "files/keepnewfilename", data });
+}
+
export function thirdParty(val) {
const data = { set: val };
return request({ method: "put", url: "files/thirdparty", data });