Web: Deleted canChangeVersionFileHistory and canViewRoomInfo.

This commit is contained in:
Tatiana Lopaeva 2022-12-14 15:52:45 +03:00
parent 52149e1312
commit 7f75592e7f
7 changed files with 55 additions and 86 deletions

View File

@ -13,21 +13,17 @@ const CommentEditor = ({
setSelection,
fetchFileVersions,
updateCommentVersion,
canChangeVersionFileHistory,
setVerHistoryFileId,
setVerHistoryFileAccess,
}) => {
const { id, comment, version, access, folderType } = item;
const changeVersionHistoryAbility = canChangeVersionFileHistory({
access,
folderType,
editing,
});
setVerHistoryFileId,
setVerHistoryFileSecurity,
}) => {
const { id, comment, version, access, security } = item;
const changeVersionHistoryAbility = !editing && security?.EditHistory;
useEffect(() => {
setVerHistoryFileId(id);
setVerHistoryFileAccess(access);
setVerHistoryFileSecurity(security);
}, []);
const [isEdit, setIsEdit] = useState(false);
@ -116,7 +112,7 @@ const CommentEditor = ({
);
};
export default inject(({ auth, versionHistoryStore, accessRightsStore }) => {
export default inject(({ auth, versionHistoryStore }) => {
const { setSelection } = auth.infoPanelStore;
const {
@ -126,19 +122,18 @@ export default inject(({ auth, versionHistoryStore, accessRightsStore }) => {
isEditing,
fileId,
setVerHistoryFileId,
setVerHistoryFileAccess,
setVerHistoryFileSecurity,
} = versionHistoryStore;
const { canChangeVersionFileHistory } = accessRightsStore;
const editing = isEditingVersion || isEditing;
return {
setSelection,
fetchFileVersions,
updateCommentVersion,
canChangeVersionFileHistory,
editing,
setVerHistoryFileId,
setVerHistoryFileAccess,
setVerHistoryFileSecurity,
};
})(CommentEditor);

View File

@ -220,44 +220,34 @@ const VersionRow = (props) => {
);
};
export default inject(
({ auth, versionHistoryStore, accessRightsStore, selectedFolderStore }) => {
const { user } = auth.userStore;
const { culture, isTabletView } = auth.settingsStore;
const language = (user && user.cultureName) || culture || "en";
export default inject(({ auth, versionHistoryStore, selectedFolderStore }) => {
const { user } = auth.userStore;
const { culture, isTabletView } = auth.settingsStore;
const language = (user && user.cultureName) || culture || "en";
const {
markAsVersion,
restoreVersion,
updateCommentVersion,
isEditing,
isEditingVersion,
fileAccess,
} = versionHistoryStore;
const {
markAsVersion,
restoreVersion,
updateCommentVersion,
isEditing,
isEditingVersion,
fileSecurity,
} = versionHistoryStore;
const { rootFolderType } = selectedFolderStore;
const isEdit = isEditingVersion || isEditing;
const canChangeVersionFileHistory = !isEdit && fileSecurity?.EditHistory;
const isEdit = isEditingVersion || isEditing;
const canChangeVersionFileHistory = accessRightsStore.canChangeVersionFileHistory(
{
access: fileAccess,
rootFolderType,
editing: isEdit,
}
);
return {
theme: auth.settingsStore.theme,
culture: language,
isTabletView,
markAsVersion,
restoreVersion,
updateCommentVersion,
isEditing: isEdit,
canChangeVersionFileHistory,
};
}
)(
return {
theme: auth.settingsStore.theme,
culture: language,
isTabletView,
markAsVersion,
restoreVersion,
updateCommentVersion,
isEditing: isEdit,
canChangeVersionFileHistory,
};
})(
withRouter(
withTranslation(["VersionHistory", "Common", "Translations"])(
observer(VersionRow)

View File

@ -24,15 +24,15 @@ class SectionBodyContent extends React.Component {
const fileId = match.params.fileId || this.props.fileId;
if (fileId && fileId !== this.props.fileId) {
this.getFileVersions(fileId, fileAccess);
this.getFileVersions(fileId, this.props.fileSecurity);
setFirstLoad(false);
}
}
getFileVersions = (fileId, fileAccess) => {
getFileVersions = (fileId, fileSecurity) => {
const { fetchFileVersions, setIsLoading } = this.props;
setIsLoading(true);
fetchFileVersions(fileId, fileAccess).then(() => setIsLoading(false));
fetchFileVersions(fileId, fileSecurity).then(() => setIsLoading(false));
};
onSetRestoreProcess = (restoring) => {
@ -142,7 +142,7 @@ export default inject(({ auth, filesStore, versionHistoryStore }) => {
versions,
fetchFileVersions,
fileId,
fileAccess,
fileSecurity,
} = versionHistoryStore;
return {
@ -150,7 +150,7 @@ export default inject(({ auth, filesStore, versionHistoryStore }) => {
isLoading,
versions,
fileId,
fileAccess,
fileSecurity,
setFirstLoad,
setIsLoading,
fetchFileVersions,

View File

@ -52,23 +52,6 @@ class AccessRightsStore {
return security?.EditAccess;
};
canChangeVersionFileHistory = (file) => {
const { editing, security } = file;
if (editing) return false;
return security?.EditHistory;
};
canViewRoomInfo = (room) => {
const { access, rootFolderType } = room;
if (rootFolderType === FolderType.Archive)
return getArchiveRoomRoleActions(access).viewInfo;
return getRoomRoleActions(access).viewInfo;
};
get canCreateFiles() {
const { security } = this.selectedFolderStore;

View File

@ -164,7 +164,7 @@ class ContextOptionsStore {
this.dialogsStore.setCopyPanelVisible(true);
};
showVersionHistory = (id) => {
showVersionHistory = (id, security) => {
const {
fetchFileVersions,
setIsVerHistoryPanel,
@ -172,7 +172,7 @@ class ContextOptionsStore {
if (this.treeFoldersStore.isRecycleBinFolder) return;
fetchFileVersions(id + "");
fetchFileVersions(id + "", security);
setIsVerHistoryPanel(true);
};
@ -528,7 +528,7 @@ class ContextOptionsStore {
key: "show-version-history",
label: t("ShowVersionHistory"),
icon: "images/history.react.svg",
onClick: () => this.showVersionHistory(item.id, item.access),
onClick: () => this.showVersionHistory(item.id, item.security),
disabled: false,
},
]
@ -544,7 +544,7 @@ class ContextOptionsStore {
key: "finalize-version",
label: t("FinalizeVersion"),
icon: "images/history-finalized.react.svg",
onClick: () => this.finalizeVersion(item.id, item.access),
onClick: () => this.finalizeVersion(item.id, item.security),
disabled: false,
},
{
@ -553,7 +553,7 @@ class ContextOptionsStore {
label: t("ShowVersionHistory"),
icon: "images/history.react.svg",
onClick: () =>
this.showVersionHistory(item.id, item.access),
this.showVersionHistory(item.id, item.security),
disabled: false,
},
],

View File

@ -1147,9 +1147,8 @@ class FilesStore {
if (isFile) {
const shouldFillForm = canFormFillingDocs(item.fileExst);
const canLockFile = item.security?.Lock;
const canChangeVersionFileHistory = this.accessRightsStore.canChangeVersionFileHistory(
{ ...item, ...{ editing: isEditing } }
);
const canChangeVersionFileHistory =
!isEditing && item.security?.EditHistory;
const canViewVersionFileHistory = item.security?.ReadHistory;
const canFillForm = item.security?.FillForms;
@ -1394,7 +1393,7 @@ class FilesStore {
const canEditRoom = item.security?.EditRoom;
const canViewRoomInfo = this.accessRightsStore.canViewRoomInfo(item);
const canViewRoomInfo = item.security?.Read;
let roomOptions = [
"select",

View File

@ -6,7 +6,8 @@ import { FileStatus } from "@docspace/common/constants";
class VersionHistoryStore {
isVisible = false;
fileId = null;
fileAccess = null;
fileSecurity = null;
versions = null;
filesStore = null;
showProgressBar = false;
@ -62,8 +63,9 @@ class VersionHistoryStore {
setVerHistoryFileId = (fileId) => {
this.fileId = fileId;
};
setVerHistoryFileAccess = (access) => {
this.fileAccess = access;
setVerHistoryFileSecurity = (security) => {
this.fileSecurity = security;
};
setVersions = (versions) => {
this.versions = versions;
@ -96,7 +98,7 @@ class VersionHistoryStore {
fetchFileVersions = (fileId, access) => {
if (this.fileId !== fileId || !this.versions) {
this.setVerHistoryFileId(fileId);
this.setVerHistoryFileAccess(access);
this.setVerHistoryFileSecurity(access);
return api.files
.getFileVersionInfo(fileId)