Web: Settings: Backup: Refactoring.
This commit is contained in:
parent
54fa2309f4
commit
8d971cc286
@ -196,6 +196,7 @@ class TreeFolders extends React.Component {
|
||||
};
|
||||
|
||||
getItems = (data) => {
|
||||
const { withoutProvider } = this.props;
|
||||
return data.map((item) => {
|
||||
const dragging = this.props.dragging ? this.showDragItems(item) : false;
|
||||
|
||||
@ -205,6 +206,9 @@ class TreeFolders extends React.Component {
|
||||
const provider = item.providerKey;
|
||||
const serviceFolder = !!item.providerKey;
|
||||
let className = `tree-drag tree-id_${item.id}`;
|
||||
|
||||
if (withoutProvider && provider) return;
|
||||
|
||||
if (dragging) className += " dragging";
|
||||
if ((item.folders && item.folders.length > 0) || serviceFolder) {
|
||||
return (
|
||||
@ -261,78 +265,6 @@ class TreeFolders extends React.Component {
|
||||
});
|
||||
};
|
||||
|
||||
getCommonItems = (data) => {
|
||||
//debugger;
|
||||
return data.map((item) => {
|
||||
const dragging = this.props.dragging ? this.showDragItems(item) : false;
|
||||
|
||||
const showBadge = item.newItems
|
||||
? item.newItems > 0 && this.props.needUpdate
|
||||
: false;
|
||||
const provider = item.providerKey;
|
||||
const serviceFolder = !!item.providerKey;
|
||||
let className = `tree-drag tree-id_${item.id}`;
|
||||
if (dragging) className += " dragging";
|
||||
|
||||
if (provider) return;
|
||||
if ((item.folders && item.folders.length > 0) || serviceFolder) {
|
||||
return !provider ? (
|
||||
<TreeNode
|
||||
id={item.id}
|
||||
key={item.id}
|
||||
className={className}
|
||||
title={item.title}
|
||||
needTopMargin={item.rootFolderType === FolderType.Privacy}
|
||||
icon={this.getFolderIcon(item)}
|
||||
dragging={dragging}
|
||||
isLeaf={
|
||||
item.rootFolderType === FolderType.Privacy &&
|
||||
!this.props.isDesktop
|
||||
? true
|
||||
: null
|
||||
}
|
||||
newItems={
|
||||
!this.props.isDesktop &&
|
||||
item.rootFolderType === FolderType.Privacy
|
||||
? null
|
||||
: item.newItems
|
||||
}
|
||||
providerKey={item.providerKey}
|
||||
onBadgeClick={this.onBadgeClick}
|
||||
showBadge={showBadge}
|
||||
>
|
||||
{item.rootFolderType === FolderType.Privacy && !this.props.isDesktop
|
||||
? null
|
||||
: this.getCommonItems(item.folders ? item.folders : [])}
|
||||
</TreeNode>
|
||||
) : (
|
||||
<></>
|
||||
);
|
||||
}
|
||||
return !provider ? (
|
||||
<TreeNode
|
||||
id={item.id}
|
||||
key={item.id}
|
||||
className={className}
|
||||
title={item.title}
|
||||
needTopMargin={item.rootFolderType === FolderType.TRASH}
|
||||
dragging={dragging}
|
||||
isLeaf={item.foldersCount ? false : true}
|
||||
icon={this.getFolderIcon(item)}
|
||||
newItems={
|
||||
!this.props.isDesktop && item.rootFolderType === FolderType.Privacy
|
||||
? null
|
||||
: item.newItems
|
||||
}
|
||||
providerKey={item.providerKey}
|
||||
onBadgeClick={this.onBadgeClick}
|
||||
showBadge={showBadge}
|
||||
/>
|
||||
) : (
|
||||
<></>
|
||||
);
|
||||
});
|
||||
};
|
||||
switcherIcon = (obj) => {
|
||||
if (obj.isLeaf) {
|
||||
return null;
|
||||
@ -507,7 +439,6 @@ class TreeFolders extends React.Component {
|
||||
expandedPanelKeys,
|
||||
treeFolders,
|
||||
data,
|
||||
isCommonWithoutProvider,
|
||||
} = this.props;
|
||||
//debugger;
|
||||
return (
|
||||
@ -532,9 +463,7 @@ class TreeFolders extends React.Component {
|
||||
gapBetweenNodesTablet="26"
|
||||
isFullFillSelection={false}
|
||||
>
|
||||
{isCommonWithoutProvider
|
||||
? this.getCommonItems(data)
|
||||
: this.getItems(data || treeFolders)}
|
||||
{this.getItems(data || treeFolders)}
|
||||
</StyledTreeMenu>
|
||||
);
|
||||
}
|
||||
|
@ -203,7 +203,7 @@ class OperationsDialog extends React.PureComponent {
|
||||
filter={filter}
|
||||
onSelect={this.onSelect}
|
||||
needUpdate={false}
|
||||
isCommonWithoutProvider={isCommonWithoutProvider}
|
||||
withoutProvider={isCommonWithoutProvider}
|
||||
/>
|
||||
) : (
|
||||
<div key="loader" className="panel-loader-wrapper">
|
||||
|
@ -1,4 +1,4 @@
|
||||
import React, { useEffect } from "react";
|
||||
import React from "react";
|
||||
import { withRouter } from "react-router";
|
||||
import ModalDialog from "@appserver/components/modal-dialog";
|
||||
import { withTranslation } from "react-i18next";
|
||||
@ -24,17 +24,13 @@ const OperationsPanelComponent = (props) => {
|
||||
setMoveToPanelVisible,
|
||||
checkOperationConflict,
|
||||
setThirdPartyMoveDialogVisible,
|
||||
commonFolder,
|
||||
getCommonFolder,
|
||||
commonTreeFolder,
|
||||
} = props;
|
||||
|
||||
useEffect(() => getCommonFolder(), []);
|
||||
const zIndex = 310;
|
||||
const deleteAfter = true; // TODO: get from settings
|
||||
|
||||
const expandedKeys = props.expandedKeys.map((item) => item.toString());
|
||||
//const expandedKeys = ["1"];
|
||||
|
||||
const onClose = () => {
|
||||
isCopy ? setCopyPanelVisible(false) : setMoveToPanelVisible(false);
|
||||
setExpandedPanelKeys(null);
|
||||
@ -98,7 +94,6 @@ const OperationsPanelComponent = (props) => {
|
||||
};
|
||||
|
||||
//console.log("Operations panel render");
|
||||
console.log("commonTreeFolder", commonTreeFolder);
|
||||
return (
|
||||
<StyledAsidePanel visible={visible}>
|
||||
<ModalDialog
|
||||
@ -129,29 +124,22 @@ const OperationsPanel = withTranslation("OperationsPanel")(
|
||||
);
|
||||
|
||||
export default inject(
|
||||
(
|
||||
{
|
||||
filesStore,
|
||||
treeFoldersStore,
|
||||
selectedFolderStore,
|
||||
dialogsStore,
|
||||
filesActionsStore,
|
||||
},
|
||||
commonTreeFolder
|
||||
) => {
|
||||
({
|
||||
filesStore,
|
||||
treeFoldersStore,
|
||||
selectedFolderStore,
|
||||
dialogsStore,
|
||||
filesActionsStore,
|
||||
}) => {
|
||||
const { filter, selection } = filesStore;
|
||||
const {
|
||||
isRecycleBinFolder,
|
||||
operationsFolders,
|
||||
setExpandedPanelKeys,
|
||||
expandedPanelKeys,
|
||||
commonFolder,
|
||||
getCommonFolder,
|
||||
} = treeFoldersStore;
|
||||
const { checkOperationConflict } = filesActionsStore;
|
||||
|
||||
//debugger;
|
||||
console.log("commonFolder", commonFolder);
|
||||
const {
|
||||
moveToPanelVisible,
|
||||
copyPanelVisible,
|
||||
@ -162,7 +150,7 @@ export default inject(
|
||||
} = dialogsStore;
|
||||
|
||||
const provider = selection.find((x) => x.providerKey);
|
||||
//debugger;
|
||||
|
||||
return {
|
||||
expandedKeys: expandedPanelKeys
|
||||
? expandedPanelKeys
|
||||
@ -174,8 +162,7 @@ export default inject(
|
||||
visible: copyPanelVisible || moveToPanelVisible,
|
||||
provider,
|
||||
selection,
|
||||
getCommonFolder,
|
||||
commonTreeFolder,
|
||||
|
||||
setCopyPanelVisible,
|
||||
setMoveToPanelVisible,
|
||||
setDestFolderId,
|
||||
|
@ -80,9 +80,7 @@ let defaultMonthly = false;
|
||||
let defaultWeekly = false;
|
||||
let defaultDaily = false;
|
||||
|
||||
let moduleName = "";
|
||||
let storageFiledValue = "";
|
||||
class AutomaticBackup extends React.Component {
|
||||
class AutomaticBackup extends React.PureComponent {
|
||||
constructor(props) {
|
||||
super(props);
|
||||
const { t, language } = props;
|
||||
@ -91,8 +89,6 @@ class AutomaticBackup extends React.Component {
|
||||
moment.locale(this.lng);
|
||||
|
||||
this.state = {
|
||||
isShowedStorageType: false, //if current automatic storage not choose
|
||||
|
||||
isShowDocuments: false,
|
||||
isShowThirdParty: false,
|
||||
isShowThirdPartyStorage: false,
|
||||
@ -186,11 +182,6 @@ class AutomaticBackup extends React.Component {
|
||||
defaultMaxCopies = `${selectedSchedule.backupsStored}`;
|
||||
|
||||
if (defaultStorageType === "5") {
|
||||
this.setState({
|
||||
selectedPermission: "enable",
|
||||
isShowedStorageTypes: true,
|
||||
});
|
||||
|
||||
this.onSetDefaultOptions();
|
||||
} else {
|
||||
getFolderPath(folderId)
|
||||
@ -199,14 +190,7 @@ class AutomaticBackup extends React.Component {
|
||||
? (folderDocumentsModulePath = folderPath)
|
||||
: (folderThirdPartyModulePath = folderPath)
|
||||
)
|
||||
.then(() => {
|
||||
this.setState({
|
||||
selectedPermission: "enable",
|
||||
isShowedStorageTypes: true,
|
||||
});
|
||||
|
||||
this.onSetDefaultOptions();
|
||||
});
|
||||
.then(() => this.onSetDefaultOptions());
|
||||
}
|
||||
}
|
||||
})
|
||||
@ -234,6 +218,9 @@ class AutomaticBackup extends React.Component {
|
||||
if (defaultStorageType === "0") {
|
||||
// Documents Module
|
||||
this.setState({
|
||||
selectedPermission: "enable",
|
||||
isShowedStorageTypes: true,
|
||||
|
||||
isShowDocuments: true,
|
||||
isCheckedDocuments: true,
|
||||
selectedTimeOption: defaultHour,
|
||||
@ -244,9 +231,11 @@ class AutomaticBackup extends React.Component {
|
||||
if (defaultStorageType === "1") {
|
||||
// ThirdPartyResource Module
|
||||
this.setState({
|
||||
selectedPermission: "enable",
|
||||
isShowedStorageTypes: true,
|
||||
|
||||
isShowThirdParty: true,
|
||||
isCheckedThirdParty: true,
|
||||
|
||||
selectedTimeOption: defaultHour,
|
||||
selectedMaxCopies: defaultMaxCopies,
|
||||
selectedNumberMaxCopies: defaultMaxCopies,
|
||||
@ -256,6 +245,9 @@ class AutomaticBackup extends React.Component {
|
||||
if (defaultStorageType === "5") {
|
||||
// ThirdPartyStorage Module
|
||||
this.setState({
|
||||
selectedPermission: "enable",
|
||||
isShowedStorageTypes: true,
|
||||
|
||||
isShowThirdPartyStorage: true,
|
||||
isCheckedThirdPartyStorage: true,
|
||||
selectedTimeOption: defaultHour,
|
||||
@ -567,19 +559,9 @@ class AutomaticBackup extends React.Component {
|
||||
}
|
||||
})
|
||||
.then(() => {
|
||||
this.setState({
|
||||
selectedPermission: "enable",
|
||||
isShowedStorageTypes: true,
|
||||
});
|
||||
|
||||
this.onSetDefaultOptions();
|
||||
});
|
||||
} else {
|
||||
this.setState({
|
||||
selectedPermission: "enable",
|
||||
isShowedStorageTypes: true,
|
||||
});
|
||||
|
||||
this.onSetDefaultOptions();
|
||||
}
|
||||
}
|
||||
@ -614,6 +596,7 @@ class AutomaticBackup extends React.Component {
|
||||
});
|
||||
|
||||
if (isError) this.setState({ isError: false });
|
||||
|
||||
if (defaultStorageType) {
|
||||
selectedPermission === "disable" &&
|
||||
this.setState({
|
||||
@ -751,6 +734,7 @@ class AutomaticBackup extends React.Component {
|
||||
isCheckedDocuments,
|
||||
isCheckedThirdParty,
|
||||
isCheckedThirdPartyStorage,
|
||||
isChanged,
|
||||
} = this.state;
|
||||
let changed;
|
||||
//debugger;
|
||||
@ -759,14 +743,16 @@ class AutomaticBackup extends React.Component {
|
||||
//debugger;
|
||||
if (+defaultStorageType === 0) {
|
||||
changed = this.checkOptions();
|
||||
this.setState({
|
||||
isChanged: changed,
|
||||
});
|
||||
isChanged !== changed &&
|
||||
this.setState({
|
||||
isChanged: changed,
|
||||
});
|
||||
return;
|
||||
} else {
|
||||
this.setState({
|
||||
isChanged: true,
|
||||
});
|
||||
isChanged !== changed &&
|
||||
this.setState({
|
||||
isChanged: true,
|
||||
});
|
||||
return;
|
||||
}
|
||||
}
|
||||
@ -774,28 +760,32 @@ class AutomaticBackup extends React.Component {
|
||||
if (isCheckedThirdParty) {
|
||||
if (+defaultStorageType === 1) {
|
||||
changed = this.checkOptions();
|
||||
this.setState({
|
||||
isChanged: changed,
|
||||
});
|
||||
isChanged !== changed &&
|
||||
this.setState({
|
||||
isChanged: changed,
|
||||
});
|
||||
return;
|
||||
} else {
|
||||
this.setState({
|
||||
isChanged: true,
|
||||
});
|
||||
isChanged !== changed &&
|
||||
this.setState({
|
||||
isChanged: true,
|
||||
});
|
||||
return;
|
||||
}
|
||||
}
|
||||
if (isCheckedThirdPartyStorage) {
|
||||
if (+defaultStorageType === 5) {
|
||||
changed = this.checkOptions();
|
||||
this.setState({
|
||||
isChanged: changed,
|
||||
});
|
||||
isChanged !== changed &&
|
||||
this.setState({
|
||||
isChanged: changed,
|
||||
});
|
||||
return;
|
||||
} else {
|
||||
this.setState({
|
||||
isChanged: true,
|
||||
});
|
||||
isChanged !== changed &&
|
||||
this.setState({
|
||||
isChanged: true,
|
||||
});
|
||||
return;
|
||||
}
|
||||
}
|
||||
@ -853,7 +843,6 @@ class AutomaticBackup extends React.Component {
|
||||
if (name === "enable") {
|
||||
this.setState({
|
||||
isShowedStorageTypes: true,
|
||||
|
||||
selectedPermission: "enable",
|
||||
});
|
||||
|
||||
@ -885,10 +874,6 @@ class AutomaticBackup extends React.Component {
|
||||
} else {
|
||||
this.setState({
|
||||
isShowedStorageTypes: false,
|
||||
//isCheckedDocuments: false,
|
||||
//isCheckedThirdParty: false,
|
||||
//isCheckedThirdPartyStorage: false,
|
||||
|
||||
isShowDocuments: false,
|
||||
isShowThirdParty: false,
|
||||
isShowThirdPartyStorage: false,
|
||||
@ -969,6 +954,7 @@ class AutomaticBackup extends React.Component {
|
||||
|
||||
console.log("this.state", this.state);
|
||||
console.log("this.props", this.props);
|
||||
console.log("__________________");
|
||||
|
||||
return isLoading ? (
|
||||
<Loader className="pageLoader" type="rombs" size="40px" />
|
||||
|
Loading…
Reference in New Issue
Block a user