diff --git a/src/components/structures/MatrixChat.js b/src/components/structures/MatrixChat.js index f2424dc06e..f38c75d676 100644 --- a/src/components/structures/MatrixChat.js +++ b/src/components/structures/MatrixChat.js @@ -41,7 +41,8 @@ module.exports = React.createClass({ config: React.PropTypes.object.isRequired, ConferenceHandler: React.PropTypes.any, onNewScreen: React.PropTypes.func, - registrationUrl: React.PropTypes.string + registrationUrl: React.PropTypes.string, + startingQueryParams: React.PropTypes.object }, PageTypes: { @@ -75,6 +76,12 @@ module.exports = React.createClass({ return s; }, + getDefaultProps: function() { + return { + startingQueryParams: {} + }; + }, + componentDidMount: function() { this.dispatcherRef = dis.register(this.onAction); if (this.state.logged_in) { @@ -540,9 +547,9 @@ module.exports = React.createClass({ } }, - notifyNewScreen: function(screen) { + notifyNewScreen: function(screen, queryParamString) { if (this.props.onNewScreen) { - this.props.onNewScreen(screen); + this.props.onNewScreen(screen, queryParamString); } }, @@ -706,6 +713,7 @@ module.exports = React.createClass({ clientSecret={this.state.register_client_secret} sessionId={this.state.register_session_id} idSid={this.state.register_id_sid} + email={this.props.startingQueryParams.email} hsUrl={this.props.config.default_hs_url} isUrl={this.props.config.default_is_url} registrationUrl={this.props.registrationUrl} diff --git a/src/components/structures/login/Registration.js b/src/components/structures/login/Registration.js index 1570641556..19e55c4d76 100644 --- a/src/components/structures/login/Registration.js +++ b/src/components/structures/login/Registration.js @@ -39,6 +39,7 @@ module.exports = React.createClass({ idSid: React.PropTypes.string, hsUrl: React.PropTypes.string, isUrl: React.PropTypes.string, + email: React.PropTypes.string, // registration shouldn't know or care how login is done. onLoginClick: React.PropTypes.func.isRequired }, @@ -185,6 +186,7 @@ module.exports = React.createClass({ registerStep = (