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

View File

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

View File

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

View File

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

View File

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

View File

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