diff --git a/client/src/app-components/language-selector.js b/client/src/app-components/language-selector.js index 14ab8012..cacb0d8e 100644 --- a/client/src/app-components/language-selector.js +++ b/client/src/app-components/language-selector.js @@ -3,6 +3,7 @@ import {connect} from 'react-redux'; import classNames from 'classnames'; import languageList from 'data/language-list'; +import i18n from 'lib-app/i18n'; import DropDown from 'core-components/drop-down'; const languageCodes = Object.keys(languageList); @@ -10,13 +11,15 @@ const languageCodes = Object.keys(languageList); class LanguageSelector extends React.Component { static propTypes = { value: React.PropTypes.oneOf(languageCodes), - type: React.PropTypes.oneOf(['allowed', 'supported']), + type: React.PropTypes.oneOf(['allowed', 'supported', 'custom']), + customList: React.PropTypes.array, allowedLanguages: React.PropTypes.array, supportedLanguages: React.PropTypes.array }; static defaultProps = { type: 'allowed', + customList: ['en'], allowedLanguages: languageCodes, supportedLanguages: languageCodes }; @@ -75,7 +78,14 @@ class LanguageSelector extends React.Component { } getLanguageList() { - return (this.props.type === 'supported') ? this.props.supportedLanguages : this.props.allowedLanguages; + switch(this.props.type) { + case 'supported': + return this.props.supportedLanguages; + case 'allowed': + return this.props.supportedLanguages; + case 'custom': + return this.props.customList; + } } } diff --git a/client/src/app/admin/panel/settings/admin-panel-system-preferences.js b/client/src/app/admin/panel/settings/admin-panel-system-preferences.js index 4b17f553..cdab72ec 100644 --- a/client/src/app/admin/panel/settings/admin-panel-system-preferences.js +++ b/client/src/app/admin/panel/settings/admin-panel-system-preferences.js @@ -15,13 +15,15 @@ import Button from 'core-components/button'; import Message from 'core-components/message'; import InfoTooltip from 'core-components/info-tooltip'; +const languageKeys = Object.keys(languageList); + class AdminPanelSystemPreferences extends React.Component { state = { loading: true, message: null, values: { - 'maintenance': false + maintenance: false } }; @@ -33,7 +35,7 @@ class AdminPanelSystemPreferences extends React.Component { return (