summaryrefslogtreecommitdiffstats
path: root/webapp/components/admin_console
diff options
context:
space:
mode:
authorenahum <nahumhbl@gmail.com>2016-06-15 09:10:38 -0300
committerJoram Wilander <jwawilander@gmail.com>2016-06-15 08:10:38 -0400
commit3f4d38f58ae086c6570bea7082f25cbdbc52c85d (patch)
treec83e3fffb591a702fe70b2da4465e89d1a011f5a /webapp/components/admin_console
parentc7e9f3cb1b9cedb328da28aa5f4237fdc325e68c (diff)
downloadchat-3f4d38f58ae086c6570bea7082f25cbdbc52c85d.tar.gz
chat-3f4d38f58ae086c6570bea7082f25cbdbc52c85d.tar.bz2
chat-3f4d38f58ae086c6570bea7082f25cbdbc52c85d.zip
PLT-3344 Set Localization config to always have by default all languages available (#3339)
Diffstat (limited to 'webapp/components/admin_console')
-rw-r--r--webapp/components/admin_console/localization_settings.jsx13
-rw-r--r--webapp/components/admin_console/multiselect_settings.jsx6
2 files changed, 5 insertions, 14 deletions
diff --git a/webapp/components/admin_console/localization_settings.jsx b/webapp/components/admin_console/localization_settings.jsx
index 7987f77dc..67cf26fee 100644
--- a/webapp/components/admin_console/localization_settings.jsx
+++ b/webapp/components/admin_console/localization_settings.jsx
@@ -26,7 +26,7 @@ export default class LocalizationSettings extends AdminSettings {
hasErrors: false,
defaultServerLocale: props.config.LocalizationSettings.DefaultServerLocale,
defaultClientLocale: props.config.LocalizationSettings.DefaultClientLocale,
- availableLocales: props.config.LocalizationSettings.AvailableLocales.split(','),
+ availableLocales: props.config.LocalizationSettings.AvailableLocales ? props.config.LocalizationSettings.AvailableLocales.split(',') : [],
languages: Object.keys(locales).map((l) => {
return {value: locales[l].value, text: locales[l].name};
})
@@ -34,7 +34,7 @@ export default class LocalizationSettings extends AdminSettings {
}
canSave() {
- return this.state.availableLocales.join(',').indexOf(this.state.defaultClientLocale) !== -1;
+ return this.state.availableLocales.join(',').indexOf(this.state.defaultClientLocale) !== -1 || this.state.availableLocales.length === 0;
}
getConfigFromState(config) {
@@ -112,12 +112,11 @@ export default class LocalizationSettings extends AdminSettings {
/>
}
selected={this.state.availableLocales}
- mustBePresent={this.state.defaultClientLocale}
onChange={this.handleChange}
helpText={
<FormattedMessage
id='admin.general.localization.availableLocalesDescription'
- defaultMessage='Determines which languages are available for users in Account Settings.'
+ defaultMessage='Determines which languages are available for users in Account Settings. (Leave it blank to have all supported languages available)'
/>
}
noResultText={
@@ -126,12 +125,6 @@ export default class LocalizationSettings extends AdminSettings {
defaultMessage='No results found'
/>
}
- errorText={
- <FormattedMessage
- id='admin.general.localization.availableLocalesError'
- defaultMessage='There has to be at least one language available'
- />
- }
notPresent={
<FormattedMessage
id='admin.general.localization.availableLocalesNotPresent'
diff --git a/webapp/components/admin_console/multiselect_settings.jsx b/webapp/components/admin_console/multiselect_settings.jsx
index ca0bdc9aa..8aad5d6eb 100644
--- a/webapp/components/admin_console/multiselect_settings.jsx
+++ b/webapp/components/admin_console/multiselect_settings.jsx
@@ -19,9 +19,7 @@ export default class MultiSelectSetting extends React.Component {
return n.value;
});
- if (!newValue || newValue.length === 0) {
- this.setState({error: this.props.errorText});
- } else if (this.props.mustBePresent && values.join(',').indexOf(this.props.mustBePresent) === -1) {
+ if (this.props.selected.length > 0 && this.props.mustBePresent && values.join(',').indexOf(this.props.mustBePresent) === -1) {
this.setState({error: this.props.notPresent});
} else {
this.props.onChange(this.props.id, values);
@@ -30,7 +28,7 @@ export default class MultiSelectSetting extends React.Component {
}
componentWillReceiveProps(newProps) {
- if (newProps.mustBePresent && newProps.selected.join(',').indexOf(newProps.mustBePresent) === -1) {
+ if (newProps.selected.length > 0 && newProps.mustBePresent && newProps.selected.join(',').indexOf(newProps.mustBePresent) === -1) {
this.setState({error: this.props.notPresent});
} else {
this.setState({error: false});