diff options
author | Joram Wilander <jwawilander@gmail.com> | 2016-12-12 08:16:10 -0500 |
---|---|---|
committer | enahum <nahumhbl@gmail.com> | 2016-12-12 10:16:10 -0300 |
commit | 30a10d35a8406f4af96fcc8200c4e2173856837d (patch) | |
tree | a2cc82592b3c7f6b6901d64fb4a3003180b7b154 /webapp/components/mfa/components/confirm.jsx | |
parent | f0d71d87899967335210b9130a7e2b8d180bef46 (diff) | |
download | chat-30a10d35a8406f4af96fcc8200c4e2173856837d.tar.gz chat-30a10d35a8406f4af96fcc8200c4e2173856837d.tar.bz2 chat-30a10d35a8406f4af96fcc8200c4e2173856837d.zip |
PLT-4767 Implement MFA Enforcement (#4662)
* Create MFA setup page and remove MFA setup from account settings modal
* Add enforce MFA to system console and force redirect
* Lockdown mfa required API routes, add localization, other changes
* Minor fixes
* Fix typo
* Fix some unit tests
* Fix more unit tests
* Minor fix
* Updating UI for MFA screen (#4670)
* Updating UI for MFA screen
* Updating styles for MFA page
* Add the ability to switch between email/sso with MFA enabled
* Added mfa change email
* Minor UI updates for MFA enforcement
* Fix unit test
* Fix client unit test
* Allow switching email to ldap and back when MFA is enabled
* Fix unit test
* Revert config.json
Diffstat (limited to 'webapp/components/mfa/components/confirm.jsx')
-rw-r--r-- | webapp/components/mfa/components/confirm.jsx | 75 |
1 files changed, 75 insertions, 0 deletions
diff --git a/webapp/components/mfa/components/confirm.jsx b/webapp/components/mfa/components/confirm.jsx new file mode 100644 index 000000000..026d12c6e --- /dev/null +++ b/webapp/components/mfa/components/confirm.jsx @@ -0,0 +1,75 @@ +// Copyright (c) 2016 Mattermost, Inc. All Rights Reserved. +// See License.txt for license information. + +import Constants from 'utils/constants.jsx'; +const KeyCodes = Constants.KeyCodes; + +import React from 'react'; +import {FormattedMessage, FormattedHTMLMessage} from 'react-intl'; +import {browserHistory} from 'react-router/es6'; + +export default class Confirm extends React.Component { + constructor(props) { + super(props); + + this.onKeyPress = this.onKeyPress.bind(this); + } + + componentDidMount() { + document.body.addEventListener('keydown', this.onKeyPress); + } + + componentWillUnmount() { + document.body.removeEventListener('keydown', this.onKeyPress); + } + + submit(e) { + e.preventDefault(); + browserHistory.push('/'); + } + + onKeyPress(e) { + if (e.which === KeyCodes.ENTER) { + this.submit(e); + } + } + + render() { + return ( + <div> + <form + onSubmit={this.submit} + onKeyPress={this.onKeyPress} + className='form-group' + > + <p> + <FormattedHTMLMessage + id='mfa.confirm.complete' + defaultMessage='<strong>Set up complete!</strong>' + /> + </p> + <p> + <FormattedMessage + id='mfa.confirm.secure' + defaultMessage='Your account is now secure. Next time you sign in, you will be asked to enter a code from the Google Authenticator app on your phone.' + /> + </p> + <button + type='submit' + className='btn btn-primary' + > + <FormattedMessage + id='mfa.confirm.okay' + defaultMessage='Okay' + /> + </button> + </form> + </div> + ); + } +} + +Confirm.defaultProps = { +}; +Confirm.propTypes = { +}; |