Web: Client: Settings: Fix language-and-time-zone and customization pages, refactoring

This commit is contained in:
Alexey 2020-07-27 18:13:01 +03:00
parent 3ec06cab83
commit 7982194f5a
2 changed files with 13 additions and 9 deletions

View File

@ -116,7 +116,7 @@ class Customization extends React.Component {
componentDidMount() {
const { getPortalCultures, portalLanguage, portalTimeZoneId, t, getPortalTimezones } = this.props;
const { timezones, languages } = this.state;
const { timezones, languages, isLoadedData } = this.state;
if (!timezones.length && !languages.length) {
let languages;
@ -133,6 +133,10 @@ class Customization extends React.Component {
this.setState({ languages, language, timezones, timezone });
});
}
if (timezones.length && languages.length && !isLoadedData) {
this.setState({ isLoadedData: true });
}
}
componentDidUpdate(prevProps, prevState) {

View File

@ -1,11 +1,11 @@
import React from "react";
import { connect } from "react-redux";
import { withTranslation } from 'react-i18next';
import { FieldContainer, Text, ComboBox, Loader, Button, toastr, Link, TextInput } from "asc-web-components";
import { FieldContainer, Text, ComboBox, Loader, Button, toastr, Link } from "asc-web-components";
import styled from 'styled-components';
import { Trans } from 'react-i18next';
import { store, utils } from 'asc-web-common';
import { setLanguageAndTime, getPortalTimezones, setGreetingTitle, restoreGreetingTitle } from '../../../../../store/settings/actions';
import { setLanguageAndTime, getPortalTimezones } from '../../../../../store/settings/actions';
import { default as clientStore } from '../../../../../store/store';
const { changeLanguage } = utils;
@ -74,7 +74,7 @@ class LanguageAndTimeZone extends React.Component {
componentDidMount() {
const { getPortalCultures, portalLanguage, portalTimeZoneId, t, getPortalTimezones } = this.props;
const { timezones, languages } = this.state;
const { timezones, languages, isLoadedData } = this.state;
if (!timezones.length && !languages.length) {
let languages;
@ -91,6 +91,9 @@ class LanguageAndTimeZone extends React.Component {
this.setState({ languages, language, timezones, timezone });
});
}
if (timezones.length && languages.length && !isLoadedData) {
this.setState({ isLoadedData: true });
}
}
componentDidUpdate(prevProps, prevState) {
@ -161,7 +164,7 @@ class LanguageAndTimeZone extends React.Component {
<div className='settings-block'>
<FieldContainer
id='fieldContainerLanguage'
className='margin-top field-container-width'
className='field-container-width'
labelText={`${t("Language")}:`}
tooltipContent={tooltipLanguage}
helpButtonHeaderContent={t("Language")}
@ -228,7 +231,4 @@ function mapStateToProps(state) {
};
}
export default connect(mapStateToProps, {
getPortalCultures, setLanguageAndTime, getPortalTimezones,
setGreetingTitle, restoreGreetingTitle
})(withTranslation()(LanguageAndTimeZone));
export default connect(mapStateToProps, { getPortalCultures, setLanguageAndTime, getPortalTimezones})(withTranslation()(LanguageAndTimeZone));