lbry-desktop/src/renderer/component/userPhoneVerify/view.jsx

68 lines
1.7 KiB
React
Raw Normal View History

import React from 'react';
import Link from 'component/link';
import { Form, FormRow, Submit } from 'component/form.js';
2017-06-03 01:09:52 +02:00
class UserPhoneVerify extends React.PureComponent {
2017-06-03 01:09:52 +02:00
constructor(props) {
super(props);
this.state = {
code: '',
2017-06-03 01:09:52 +02:00
};
}
handleCodeChanged(event) {
this.setState({
2017-07-19 01:00:13 +02:00
code: String(event.target.value).trim(),
2017-06-03 01:09:52 +02:00
});
}
handleSubmit() {
const { code } = this.state;
this.props.verifyUserPhone(code);
2017-06-03 01:09:52 +02:00
}
reset() {
const { resetPhone } = this.props;
resetPhone();
}
2017-06-03 01:09:52 +02:00
render() {
const { cancelButton, phoneErrorMessage, phone, countryCode } = this.props;
2017-06-08 23:15:34 +02:00
return (
<Form onSubmit={this.handleSubmit.bind(this)}>
2018-01-18 06:09:08 +01:00
<p>
{__(
2018-03-09 08:06:15 +01:00
`Please enter the verification code sent to +${countryCode}${phone}. Didn't receive it? `
)}
<Link onClick={this.reset.bind(this)} label="Go back." />
2018-01-18 06:09:08 +01:00
</p>
2017-06-08 23:15:34 +02:00
<FormRow
type="text"
label={__('Verification Code')}
2017-06-08 23:15:34 +02:00
name="code"
value={this.state.code}
onChange={event => {
this.handleCodeChanged(event);
}}
errorMessage={phoneErrorMessage}
2017-06-08 23:15:34 +02:00
/>
{/* render help separately so it always shows */}
<div className="form-field__helper">
<p>
{__('Email')} <Link href="mailto:help@lbry.io" label="help@lbry.io" /> or join our{' '}
<Link href="https://chat.lbry.io" label="chat" />{' '}
{__('if you encounter any trouble with your code.')}
2017-06-08 23:15:34 +02:00
</p>
</div>
<div className="form-row-submit">
<Submit label={__('Verify')} />
{cancelButton}
2017-06-08 23:15:34 +02:00
</div>
</Form>
2017-06-08 23:15:34 +02:00
);
2017-06-03 01:09:52 +02:00
}
}
export default UserPhoneVerify;