Files.Client: Home: Added translations and fixed item status display

This commit is contained in:
Ilya Oleshko 2020-03-13 09:16:12 +03:00
parent d65b09f003
commit 1baeaefdd9
4 changed files with 40 additions and 14 deletions

View File

@ -2,6 +2,7 @@
import React from "react"; import React from "react";
import { connect } from "react-redux"; import { connect } from "react-redux";
import { withRouter } from "react-router"; import { withRouter } from "react-router";
import { withTranslation } from "react-i18next";
import styled from "styled-components"; import styled from "styled-components";
import { RowContent, Link, Text, Icons, Badge, TextInput, Button, toastr } from "asc-web-components"; import { RowContent, Link, Text, Icons, Badge, TextInput, Button, toastr } from "asc-web-components";
import { createFile, createFolder, renameFolder, updateFile } from '../../../../../store/files/actions'; import { createFile, createFolder, renameFolder, updateFile } from '../../../../../store/files/actions';
@ -111,12 +112,24 @@ class FilesRowContent extends React.PureComponent {
} }
}; };
getStatusByDate = () => {
const { culture, t, item } = this.props;
const { created, updated, version, fileExst } = item;
const title = version > 1 ? t("TitleModified") : fileExst ? t("TitleUploaded") : t("TitleCreated");
const date = fileExst ? updated : created;
return `${title}: ${new Date(date).toLocaleString(culture)}`;
};
render() { render() {
const { item } = this.props; const { culture, t, item } = this.props;
const { itemTitle, editingId } = this.state; const { itemTitle, editingId } = this.state;
const { const {
contentLength, contentLength,
comment,
created, created,
updated,
createdBy, createdBy,
fileExst, fileExst,
filesCount, filesCount,
@ -124,7 +137,7 @@ class FilesRowContent extends React.PureComponent {
foldersCount, foldersCount,
id, id,
title, title,
version versionGroup
} = item; } = item;
const SimpleFilesRowContent = styled(RowContent)` const SimpleFilesRowContent = styled(RowContent)`
@ -176,8 +189,8 @@ class FilesRowContent extends React.PureComponent {
? title.split('.').slice(0, -1).join('.') ? title.split('.').slice(0, -1).join('.')
: title; : title;
const fileOwner = createdBy && ((this.props.viewer.id === createdBy && createdBy.id && "Me") || createdBy.displayName); const fileOwner = createdBy && ((this.props.viewer.id === createdBy.id && t("AuthorMe")) || createdBy.displayName);
const createdDate = created && new Date(created).toLocaleString("EN-US"); const updatedDate = updated && this.getStatusByDate();
const canEditFile = fileExst && canWebEdit(fileExst); const canEditFile = fileExst && canWebEdit(fileExst);
const canConvertFile = fileExst && canConvert(fileExst); const canConvertFile = fileExst && canConvert(fileExst);
@ -286,7 +299,7 @@ class FilesRowContent extends React.PureComponent {
color='#3B72A7' color='#3B72A7'
/> />
} }
{version > 1 && {versionGroup > 1 &&
<Badge <Badge
className='badge-version' className='badge-version'
backgroundColor="#A3A9AE" backgroundColor="#A3A9AE"
@ -294,7 +307,7 @@ class FilesRowContent extends React.PureComponent {
color="#FFFFFF" color="#FFFFFF"
fontSize="10px" fontSize="10px"
fontWeight={800} fontWeight={800}
label={`Ver.${version}`} label={`Ver.${versionGroup}`}
maxWidth="50px" maxWidth="50px"
onClick={() => { }} onClick={() => { }}
padding="0 5px" padding="0 5px"
@ -331,14 +344,14 @@ class FilesRowContent extends React.PureComponent {
<Link <Link
containerWidth='12%' containerWidth='12%'
type='page' type='page'
title={createdDate} title={updatedDate}
fontSize='12px' fontSize='12px'
fontWeight={400} fontWeight={400}
color="#333" color="#333"
onClick={() => { }} onClick={() => { }}
isTextOverflow={true} isTextOverflow={true}
> >
{createdDate && `Created: ${createdDate}`} {updatedDate && updatedDate}
</Link> </Link>
<Text <Text
containerWidth='10%' containerWidth='10%'
@ -351,7 +364,7 @@ class FilesRowContent extends React.PureComponent {
> >
{fileExst {fileExst
? contentLength ? contentLength
: `Dcs: ${filesCount} / Flds: ${foldersCount}`} : `${t("TitleDocuments")}: ${filesCount} / ${t("TitleSubfolders")}: ${foldersCount}`}
</Text> </Text>
</SimpleFilesRowContent> </SimpleFilesRowContent>
) )
@ -359,5 +372,5 @@ class FilesRowContent extends React.PureComponent {
}; };
export default connect(null, { createFile, createFolder, updateFile, renameFolder })( export default connect(null, { createFile, createFolder, updateFile, renameFolder })(
withRouter(FilesRowContent) withRouter(withTranslation()(FilesRowContent))
); );

View File

@ -20,8 +20,6 @@ import config from "../../../../../../package.json";
const { FilesFilter } = api; const { FilesFilter } = api;
//import i18n from '../../i18n';
class SectionBodyContent extends React.PureComponent { class SectionBodyContent extends React.PureComponent {
constructor(props) { constructor(props) {
@ -175,7 +173,7 @@ class SectionBodyContent extends React.PureComponent {
}; };
render() { render() {
const { files, folders, viewer, parentId, folderId } = this.props; const { files, folders, viewer, parentId, folderId, settings } = this.props;
const { editingId, isEdit, isCreating } = this.state; const { editingId, isEdit, isCreating } = this.state;
let items = [...folders, ...files]; let items = [...folders, ...files];
@ -215,7 +213,7 @@ class SectionBodyContent extends React.PureComponent {
{...contextOptionsProps} {...contextOptionsProps}
needForUpdate={this.needForUpdate} needForUpdate={this.needForUpdate}
> >
<FilesRowContent item={item} viewer={viewer} editingId={editingId} onEditComplete={this.onEditComplete} /> <FilesRowContent item={item} viewer={viewer} editingId={editingId} culture={settings.culture} onEditComplete={this.onEditComplete} />
</Row> </Row>
); );
})} })}

View File

@ -39,4 +39,11 @@
"NextPage": "Next", "NextPage": "Next",
"DefaultOptionLabel": "Me", "DefaultOptionLabel": "Me",
"LblSelect": "Select" "LblSelect": "Select"
"AuthorMe": "Me",
"TitleCreated": "Created",
"TitleUploaded": "Uploaded",
"TitleModified": "Updated",
"TitleRemoved": "Removed",
"TitleSubfolders": "Flds",
"TitleDocuments": "Dcs"
} }

View File

@ -39,4 +39,12 @@
"NextPage": "Следующая", "NextPage": "Следующая",
"DefaultOptionLabel": "Я", "DefaultOptionLabel": "Я",
"LblSelect": "Выберите" "LblSelect": "Выберите"
"AuthorMe": "Я",
"TitleCreated": "Создана",
"TitleUploaded": "Загружен",
"TitleModified": "Обновлён",
"TitleRemoved": "Удалён",
"TitleSubfolders": "Flds",
"TitleDocuments": "Dcs"
} }