handle credential confirmation from EditAccountView
This commit is contained in:
@@ -168,7 +168,7 @@ export default class EditAccountView extends React.Component {
|
|||||||
this.state.credentials.map((cred) => {
|
this.state.credentials.map((cred) => {
|
||||||
credentials.push(<div key={cred.meth + ":" + cred.val}>{cred.meth}: <tt>{cred.val}</tt>
|
credentials.push(<div key={cred.meth + ":" + cred.val}>{cred.meth}: <tt>{cred.val}</tt>
|
||||||
<span > {!cred.done ?
|
<span > {!cred.done ?
|
||||||
<a href="javascript:;" className="clickable"
|
<a href="javascript:;"
|
||||||
onClick={this.props.onCredConfirm.bind(this, cred.meth, cred.val)}>
|
onClick={this.props.onCredConfirm.bind(this, cred.meth, cred.val)}>
|
||||||
<FormattedMessage id="validate_credential_action" defaultMessage="confirm"
|
<FormattedMessage id="validate_credential_action" defaultMessage="confirm"
|
||||||
description="Validate credentail call to action" />
|
description="Validate credentail call to action" />
|
||||||
|
|||||||
@@ -954,7 +954,7 @@ class TinodeWeb extends React.Component {
|
|||||||
}
|
}
|
||||||
|
|
||||||
handleCredConfirm(method, response) {
|
handleCredConfirm(method, response) {
|
||||||
handleCredentialsRequest({cred: [method]});
|
this.handleCredentialsRequest({cred: [method]});
|
||||||
}
|
}
|
||||||
|
|
||||||
// User clicked Cancel button in Setting or Sign Up panel.
|
// User clicked Cancel button in Setting or Sign Up panel.
|
||||||
@@ -1187,15 +1187,26 @@ class TinodeWeb extends React.Component {
|
|||||||
}
|
}
|
||||||
|
|
||||||
handleValidateCredentialsRequest(cred, code) {
|
handleValidateCredentialsRequest(cred, code) {
|
||||||
|
if (this.tinode.isAuthenticated()) {
|
||||||
|
const me = this.tinode.getMeTopic();
|
||||||
|
me.setMeta({cred: {meth: cred, resp: code}})
|
||||||
|
.then(() => {
|
||||||
|
HashNavigation.navigateTo('');
|
||||||
|
})
|
||||||
|
.catch((err) => {
|
||||||
|
this.handleError(err.message, 'err');
|
||||||
|
});
|
||||||
|
} else {
|
||||||
this.setState({credMethod: cred, credCode: code});
|
this.setState({credMethod: cred, credCode: code});
|
||||||
this.doLogin(null, null, {meth: cred, resp: code});
|
this.doLogin(null, null, {meth: cred, resp: code});
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
handlePasswordResetRequest(method, value) {
|
handlePasswordResetRequest(method, value) {
|
||||||
// If already connected, connnect() will return a resolved promise.
|
// If already connected, connnect() will return a resolved promise.
|
||||||
this.tinode.connect()
|
this.tinode.connect()
|
||||||
.then(() => {
|
.then(() => {
|
||||||
return this.tinode.requestResetAuthSecret('basic', method, value)
|
return this.tinode.requestResetAuthSecret('basic', method, value);
|
||||||
})
|
})
|
||||||
.catch((err) => {
|
.catch((err) => {
|
||||||
// Socket error
|
// Socket error
|
||||||
|
|||||||
+48
-33
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
+1
-1
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user