diff options
author | =Corey Hulen <corey@hulen.com> | 2016-01-24 20:48:31 -0600 |
---|---|---|
committer | =Corey Hulen <corey@hulen.com> | 2016-01-24 20:48:31 -0600 |
commit | 056fdec301de69e235313c0e27aadf8c769f8082 (patch) | |
tree | 1312503989c58cd1db6d8c763f0159e6132f9f54 /web/react/pages/signup_user_complete.jsx | |
parent | 1dfd8c78c99e3d1556b6845b76c457d16c3dcf94 (diff) | |
download | chat-056fdec301de69e235313c0e27aadf8c769f8082.tar.gz chat-056fdec301de69e235313c0e27aadf8c769f8082.tar.bz2 chat-056fdec301de69e235313c0e27aadf8c769f8082.zip |
PLT-7 client side infra for loc
Diffstat (limited to 'web/react/pages/signup_user_complete.jsx')
-rw-r--r-- | web/react/pages/signup_user_complete.jsx | 73 |
1 files changed, 61 insertions, 12 deletions
diff --git a/web/react/pages/signup_user_complete.jsx b/web/react/pages/signup_user_complete.jsx index de2c48443..6c761c1ee 100644 --- a/web/react/pages/signup_user_complete.jsx +++ b/web/react/pages/signup_user_complete.jsx @@ -2,19 +2,68 @@ // See License.txt for license information. import SignupUserComplete from '../components/signup_user_complete.jsx'; +import * as Client from '../utils/client.jsx'; -function setupSignupUserCompletePage(props) { +var IntlProvider = ReactIntl.IntlProvider; + +class Root extends React.Component { + constructor() { + super(); + this.state = { + translations: null, + loaded: false + }; + } + + static propTypes() { + return { + map: React.PropTypes.object.isRequired + }; + } + + componentWillMount() { + Client.getTranslations( + this.props.map.Locale, + (data) => { + this.setState({ + translations: data, + loaded: true + }); + }, + () => { + this.setState({ + loaded: true + }); + } + ); + } + + render() { + if (!this.state.loaded) { + return <div></div>; + } + + return ( + <IntlProvider + locale={this.props.map.Locale} + messages={this.state.translations} + > + <SignupUserComplete + teamId={this.props.map.TeamId} + teamName={this.props.map.TeamName} + teamDisplayName={this.props.map.TeamDisplayName} + email={this.props.map.Email} + hash={this.props.map.Hash} + data={this.props.map.Data} + /> + </IntlProvider> + ); + } +} + +global.window.setup_signup_user_complete_page = function setup(props) { ReactDOM.render( - <SignupUserComplete - teamId={props.TeamId} - teamName={props.TeamName} - teamDisplayName={props.TeamDisplayName} - email={props.Email} - hash={props.Hash} - data={props.Data} - />, + <Root map={props} />, document.getElementById('signup-user-complete') ); -} - -global.window.setup_signup_user_complete_page = setupSignupUserCompletePage; +};
\ No newline at end of file |