Web: Files: fixed files fileStatus

This commit is contained in:
Nikita Gopienko 2022-02-11 13:42:17 +03:00
parent 8a0aeda83c
commit a497f3ff19
6 changed files with 27 additions and 20 deletions

View File

@ -3,6 +3,7 @@ import { inject, observer } from "mobx-react";
import {
ShareAccessRights,
AppServerConfig,
FileStatus,
} from "@appserver/common/constants";
import toastr from "@appserver/components/toast/toastr";
import { combineUrl } from "@appserver/common/utils";
@ -91,7 +92,8 @@ export default function withBadges(WrappedComponent) {
} = this.props;
const { fileStatus, access } = item;
const newItems = item.new || fileStatus === 2;
const newItems =
item.new || (fileStatus & FileStatus.IsNew) === FileStatus.IsNew;
const showNew = !!newItems;
const accessToEdit =

View File

@ -7,6 +7,7 @@ import toastr from "studio/toastr";
import {
AppServerConfig,
FileAction,
FileStatus,
ShareAccessRights,
} from "@appserver/common/constants";
import { combineUrl } from "@appserver/common/utils";
@ -421,7 +422,8 @@ export default function withContent(WrappedContent) {
linkStyles.href = href;
}
const newItems = item.new || fileStatus === 2;
const newItems =
item.new || (fileStatus & FileStatus.IsNew) === FileStatus.IsNew;
const showNew = !!newItems;
const elementIcon = element ? (
element

View File

@ -2,7 +2,7 @@ import React from "react";
import { inject, observer } from "mobx-react";
import toastr from "@appserver/components/toast/toastr";
import { checkProtocol } from "../helpers/files-helpers";
import { AppServerConfig } from "@appserver/common/constants";
import { AppServerConfig, FileStatus } from "@appserver/common/constants";
import { combineUrl } from "@appserver/common/utils";
import config from "../../package.json";
import { isMobile } from "react-device-detect";
@ -185,7 +185,8 @@ export default function withFileActions(WrappedFileItem) {
return;
}
if (fileStatus === 2) this.onMarkAsRead(id);
if ((fileStatus & FileStatus.IsNew) === FileStatus.IsNew)
this.onMarkAsRead(id);
if (canWebEdit || canViewedDocs) {
let tab =

View File

@ -7,6 +7,7 @@ import {
StyledFileActionsEditFormIcon,
StyledFileActionsLockedIcon,
} from "./Icons";
import { FileStatus } from "@appserver/common/constants";
const Badges = ({
t,
@ -37,9 +38,8 @@ const Badges = ({
isEditing,
} = item;
const isFavorite = fileStatus === 32;
const isNewWithFav = fileStatus === 34;
const isEditingWithFav = fileStatus === 33;
const isFavorite =
(fileStatus & FileStatus.IsFavorite) === FileStatus.IsFavorite;
const showEditBadge = !locked || item.access === 0;
const isPrivacy = isPrivacyFolder && isDesktopClient;
const isForm = fileExst === ".oform";
@ -59,7 +59,6 @@ const Badges = ({
)}
{canWebEdit &&
!isEditing &&
!isEditingWithFav &&
!isTrashFolder &&
!isPrivacy &&
accessToEdit &&
@ -79,7 +78,7 @@ const Badges = ({
hoverColor="#3B72A7"
/>
)}
{(isEditing || isEditingWithFav) &&
{isEditing &&
React.createElement(
isForm
? StyledFileActionsEditFormIcon
@ -99,7 +98,7 @@ const Badges = ({
onClick={onClickLock}
/>
)}
{(isFavorite || isNewWithFav || isEditingWithFav) && !isTrashFolder && (
{isFavorite && !isTrashFolder && (
<StyledFavoriteIcon
className="favorite icons-group badge"
size="small"
@ -124,7 +123,7 @@ const Badges = ({
data-id={id}
/>
)}
{(showNew || isNewWithFav) && (
{showNew && (
<Badge
className="badge-version icons-group"
backgroundColor="#ED7309"

View File

@ -623,18 +623,17 @@ class FilesStore {
(this.userStore.user && this.userStore.user.isVisitor) || false;
const isFile = !!item.fileExst || item.contentLength;
const isFavorite =
item.fileStatus === 32 ||
item.fileStatus === 33 ||
item.fileStatus === 34;
(item.fileStatus & FileStatus.IsFavorite) === FileStatus.IsFavorite;
const isFullAccess = item.access < 2;
const withoutShare = false; //TODO: need this prop
const isThirdPartyItem = !!item.providerKey;
const hasNew =
item.new > 0 || item.fileStatus === 2 || item.fileStatus === 34;
item.new > 0 || (item.fileStatus & FileStatus.IsNew) === FileStatus.IsNew;
const canConvert = false; //TODO: fix of added convert check;
const isEncrypted = item.encrypted;
const isDocuSign = false; //TODO: need this prop;
const isEditing = item.fileStatus === 1;
const isEditing =
(item.fileStatus & FileStatus.IsEditing) === FileStatus.IsEditing;
const isFileOwner = item.createdBy.id === this.userStore.user.id;
const {
@ -1165,12 +1164,12 @@ class FilesStore {
updateFileBadge = (id) => {
const file = this.files.find((x) => x.id === id);
if (file) file.fileStatus = 0;
if (file) file.fileStatus = file.fileStatus & ~FileStatus.IsEditing;
};
updateFilesBadge = () => {
for (let file of this.files) {
file.fileStatus = 0;
file.fileStatus = file.fileStatus & ~FileStatus.IsEditing;
}
};
@ -1422,7 +1421,8 @@ class FilesStore {
: null;
const needConvert = canConvert(fileExst);
const isEditing = item.fileStatus === 1;
const isEditing =
(item.fileStatus & FileStatus.IsEditing) === FileStatus.IsEditing;
const docUrl = combineUrl(
AppServerConfig.proxyURL,

View File

@ -1,6 +1,7 @@
import { makeAutoObservable, runInAction } from "mobx";
import api from "@appserver/common/api";
import { size } from "@appserver/components/utils/device";
import { FileStatus } from "@appserver/common/constants";
class VersionHistoryStore {
isVisible = false;
@ -42,7 +43,9 @@ class VersionHistoryStore {
get isEditingVersion() {
if (this.fileId && this.filesStore.files.length) {
const file = this.filesStore.files.find((x) => x.id === +this.fileId);
return file ? file.fileStatus === 1 : false;
return file
? (file.fileStatus & FileStatus.IsEditing) === FileStatus.IsEditing
: false;
}
return false;
}