From 0557c03d11f3620b03db809dbe34f184341fea0d Mon Sep 17 00:00:00 2001 From: David Lu Date: Tue, 5 Jul 2016 07:26:09 -0400 Subject: added errors to claim ldap account (#3468) --- .../components/claim/components/email_to_ldap.jsx | 69 +++++++++++++----- .../components/claim/components/ldap_to_email.jsx | 81 +++++++++++++++------- 2 files changed, 108 insertions(+), 42 deletions(-) diff --git a/webapp/components/claim/components/email_to_ldap.jsx b/webapp/components/claim/components/email_to_ldap.jsx index c37717421..92d822a34 100644 --- a/webapp/components/claim/components/email_to_ldap.jsx +++ b/webapp/components/claim/components/email_to_ldap.jsx @@ -14,34 +14,43 @@ export default class EmailToLDAP extends React.Component { this.submit = this.submit.bind(this); - this.state = {}; + this.state = { + passwordError: '', + ldapError: '', + ldapPasswordError: '', + serverError: '' + }; } submit(e) { e.preventDefault(); - var state = {}; + var state = { + passwordError: '', + ldapError: '', + ldapPasswordError: '', + serverError: '' + }; const password = ReactDOM.findDOMNode(this.refs.emailpassword).value; if (!password) { - state.error = Utils.localizeMessage('claim.email_to_ldap.pwdError', 'Please enter your password.'); + state.passwordError = Utils.localizeMessage('claim.email_to_ldap.pwdError', 'Please enter your password.'); this.setState(state); return; } const ldapId = ReactDOM.findDOMNode(this.refs.ldapid).value.trim(); if (!ldapId) { - state.error = Utils.localizeMessage('claim.email_to_ldap.ldapIdError', 'Please enter your LDAP ID.'); + state.ldapError = Utils.localizeMessage('claim.email_to_ldap.ldapIdError', 'Please enter your LDAP ID.'); this.setState(state); return; } const ldapPassword = ReactDOM.findDOMNode(this.refs.ldappassword).value; if (!ldapPassword) { - state.error = Utils.localizeMessage('claim.email_to_ldap.ldapPasswordError', 'Please enter your LDAP password.'); + state.ldapPasswordError = Utils.localizeMessage('claim.email_to_ldap.ldapPasswordError', 'Please enter your LDAP password.'); this.setState(state); return; } - state.error = null; this.setState(state); Client.emailToLdap( @@ -55,19 +64,37 @@ export default class EmailToLDAP extends React.Component { } }, (err) => { - this.setState({error: err.message}); + this.setState({serverError: err.message}); } ); } render() { - var error = null; - if (this.state.error) { - error =
; + let serverError = null; + let formClass = 'form-group'; + if (this.state.serverError) { + serverError =
; + formClass += ' has-error'; } - var formClass = 'form-group'; - if (error) { - formClass += ' has-error'; + let passwordError = null; + let passwordClass = 'form-group'; + if (this.state.passwordError) { + passwordError =
; + passwordClass += ' has-error'; + } + + let ldapError = null; + let ldapClass = 'form-group'; + if (this.state.ldapError) { + ldapError =
; + ldapClass += ' has-error'; + } + + let ldapPasswordError = null; + let ldapPasswordClass = 'form-group'; + if (this.state.ldapPasswordError) { + ldapPasswordError =
; + ldapPasswordClass += ' has-error'; } let loginPlaceholder; @@ -92,7 +119,10 @@ export default class EmailToLDAP extends React.Component { defaultMessage='Switch Email/Password Account to LDAP' /> -
+

-

+
+ {passwordError}

-
+
-
+ {ldapError} +
- {error} + {ldapPasswordError} + {serverError}
); diff --git a/webapp/components/claim/components/ldap_to_email.jsx b/webapp/components/claim/components/ldap_to_email.jsx index fbc8bcebf..002ff89bd 100644 --- a/webapp/components/claim/components/ldap_to_email.jsx +++ b/webapp/components/claim/components/ldap_to_email.jsx @@ -15,35 +15,44 @@ export default class LDAPToEmail extends React.Component { this.submit = this.submit.bind(this); - this.state = {}; + this.state = { + passwordError: '', + confirmError: '', + ldapPasswordError: '', + serverError: '' + }; } submit(e) { e.preventDefault(); - var state = {}; + var state = { + passwordError: '', + confirmError: '', + ldapPasswordError: '', + serverError: '' + }; - const password = ReactDOM.findDOMNode(this.refs.password).value; - if (!password) { - state.error = Utils.localizeMessage('claim.ldap_to_email.pwdError', 'Please enter your password.'); + const ldapPassword = ReactDOM.findDOMNode(this.refs.ldappassword).value; + if (!ldapPassword) { + state.ldapPasswordError = Utils.localizeMessage('claim.ldap_to_email.ldapPasswordError', 'Please enter your LDAP password.'); this.setState(state); return; } - const confirmPassword = ReactDOM.findDOMNode(this.refs.passwordconfirm).value; - if (!confirmPassword || password !== confirmPassword) { - state.error = Utils.localizeMessage('claim.ldap_to_email.pwdNotMatch', 'Passwords do not match.'); + const password = ReactDOM.findDOMNode(this.refs.password).value; + if (!password) { + state.passwordError = Utils.localizeMessage('claim.ldap_to_email.pwdError', 'Please enter your password.'); this.setState(state); return; } - const ldapPassword = ReactDOM.findDOMNode(this.refs.ldappassword).value; - if (!ldapPassword) { - state.error = Utils.localizeMessage('claim.ldap_to_email.ldapPasswordError', 'Please enter your LDAP password.'); + const confirmPassword = ReactDOM.findDOMNode(this.refs.passwordconfirm).value; + if (!confirmPassword || password !== confirmPassword) { + state.confirmError = Utils.localizeMessage('claim.ldap_to_email.pwdNotMatch', 'Passwords do not match.'); this.setState(state); return; } - state.error = null; this.setState(state); switchFromLdapToEmail( @@ -51,19 +60,37 @@ export default class LDAPToEmail extends React.Component { password, ldapPassword, null, - (err) => this.setState({error: err.message}) + (err) => this.setState({serverError: err.message}) ); } render() { - var error = null; - if (this.state.error) { - error =
; + let serverError = null; + let formClass = 'form-group'; + if (this.state.serverError) { + serverError =
; + formClass += ' has-error'; } - var formClass = 'form-group'; - if (error) { - formClass += ' has-error'; + let passwordError = null; + let passwordClass = 'form-group'; + if (this.state.passwordError) { + passwordError =
; + passwordClass += ' has-error'; + } + + let ldapPasswordError = null; + let ldapPasswordClass = 'form-group'; + if (this.state.ldapPasswordError) { + ldapPasswordError =
; + ldapPasswordClass += ' has-error'; + } + + let confirmError = null; + let confimClass = 'form-group'; + if (this.state.confirmError) { + confirmError =
; + confimClass += ' has-error'; } let passwordPlaceholder; @@ -81,7 +108,10 @@ export default class LDAPToEmail extends React.Component { defaultMessage='Switch LDAP Account to Email/Password' /> -
+

-
+
+ {ldapPasswordError}

-
+
-
+ {passwordError} +
- {error} + {confirmError} + {serverError}
); -- cgit v1.2.3-1-g7c22