diff options
author | Christopher Speller <crspeller@gmail.com> | 2016-03-14 08:50:46 -0400 |
---|---|---|
committer | Christopher Speller <crspeller@gmail.com> | 2016-03-16 18:02:55 -0400 |
commit | 12896bd23eeba79884245c1c29fdc568cf21a7fa (patch) | |
tree | 4e7f83d3e2564b9b89d669e9f7905ff11768b11a /web/react/components/user_settings/manage_languages.jsx | |
parent | 29fe6a3d13c9c7aa490fffebbe5d1b5fdf1e3090 (diff) | |
download | chat-12896bd23eeba79884245c1c29fdc568cf21a7fa.tar.gz chat-12896bd23eeba79884245c1c29fdc568cf21a7fa.tar.bz2 chat-12896bd23eeba79884245c1c29fdc568cf21a7fa.zip |
Converting to Webpack. Stage 1.
Diffstat (limited to 'web/react/components/user_settings/manage_languages.jsx')
-rw-r--r-- | web/react/components/user_settings/manage_languages.jsx | 118 |
1 files changed, 0 insertions, 118 deletions
diff --git a/web/react/components/user_settings/manage_languages.jsx b/web/react/components/user_settings/manage_languages.jsx deleted file mode 100644 index 6b00a65c7..000000000 --- a/web/react/components/user_settings/manage_languages.jsx +++ /dev/null @@ -1,118 +0,0 @@ -// Copyright (c) 2015 Spinpunch, Inc. All Rights Reserved. -// See License.txt for license information. - -import SettingItemMax from '../setting_item_max.jsx'; - -import * as Client from '../../utils/client.jsx'; -import * as Utils from '../../utils/utils.jsx'; -import * as GlobalActions from '../../action_creators/global_actions.jsx'; - -import {FormattedMessage} from 'mm-intl'; - -export default class ManageLanguage extends React.Component { - constructor(props) { - super(props); - - this.setupInitialState = this.setupInitialState.bind(this); - this.setLanguage = this.setLanguage.bind(this); - this.changeLanguage = this.changeLanguage.bind(this); - this.submitUser = this.submitUser.bind(this); - this.state = this.setupInitialState(props); - } - setupInitialState(props) { - var user = props.user; - return { - languages: Utils.languages(), - locale: user.locale - }; - } - setLanguage(e) { - this.setState({locale: e.target.value}); - } - changeLanguage(e) { - e.preventDefault(); - - var user = this.props.user; - var locale = this.state.locale; - - user.locale = locale; - - this.submitUser(user); - } - submitUser(user) { - Client.updateUser(user, - () => { - GlobalActions.newLocalizationSelected(user.locale); - }, - (err) => { - let serverError; - if (err.message) { - serverError = err.message; - } else { - serverError = err; - } - this.setState({serverError}); - } - ); - } - render() { - let serverError; - if (this.state.serverError) { - serverError = <label className='has-error'>{this.state.serverError}</label>; - } - - const options = []; - this.state.languages.forEach((lang) => { - options.push( - <option - key={lang.value} - value={lang.value} - > - {lang.name} - </option>); - }); - - const input = ( - <div key='changeLanguage'> - <br/> - <label className='control-label'> - <FormattedMessage - id='user.settings.languages.change' - defaultMessage='Change interface language' - /> - </label> - <div className='padding-top'> - <select - ref='language' - className='form-control' - value={this.state.locale} - onChange={this.setLanguage} - > - {options} - </select> - {serverError} - </div> - </div> - ); - - return ( - <SettingItemMax - title={ - <FormattedMessage - id='user.settings.display.language' - defaultMessage='Language' - /> - } - width='medium' - submit={this.changeLanguage} - inputs={[input]} - updateSection={this.props.updateSection} - /> - ); - } -} - -ManageLanguage.propTypes = { - user: React.PropTypes.object.isRequired, - updateSection: React.PropTypes.func.isRequired -}; |