From 08277e1a9943217a533b7c8158b304de80a1c84a Mon Sep 17 00:00:00 2001 From: SachaG Date: Fri, 16 Jun 2017 09:00:33 +0900 Subject: [PATCH] move reset password component to accounts package; fix bug with PASSWORD_CHANGE state --- .../vulcan-accounts/imports/components.js | 1 + packages/vulcan-accounts/imports/routes.js | 3 ++ .../imports/ui/components/ResetPassword.jsx} | 28 +++++++++---------- packages/vulcan-accounts/main_client.js | 1 + packages/vulcan-accounts/main_server.js | 1 + .../vulcan-base-components/lib/components.js | 1 - packages/vulcan-base-components/lib/routes.js | 1 - 7 files changed, 19 insertions(+), 17 deletions(-) create mode 100644 packages/vulcan-accounts/imports/routes.js rename packages/{vulcan-base-components/lib/users/UsersResetPassword.jsx => vulcan-accounts/imports/ui/components/ResetPassword.jsx} (52%) diff --git a/packages/vulcan-accounts/imports/components.js b/packages/vulcan-accounts/imports/components.js index 43664a70d..a7403d2ca 100644 --- a/packages/vulcan-accounts/imports/components.js +++ b/packages/vulcan-accounts/imports/components.js @@ -8,3 +8,4 @@ import './ui/components/FormMessages.jsx'; import './ui/components/LoginForm.jsx'; import './ui/components/PasswordOrService.jsx'; import './ui/components/SocialButtons.jsx'; +import './ui/components/ResetPassword.jsx'; diff --git a/packages/vulcan-accounts/imports/routes.js b/packages/vulcan-accounts/imports/routes.js new file mode 100644 index 000000000..11d6def9c --- /dev/null +++ b/packages/vulcan-accounts/imports/routes.js @@ -0,0 +1,3 @@ +import { addRoute } from 'meteor/vulcan:core'; + +addRoute({name: 'resetPassword', path: '/reset-password/:token', componentName: 'AccountsResetPassword'}); diff --git a/packages/vulcan-base-components/lib/users/UsersResetPassword.jsx b/packages/vulcan-accounts/imports/ui/components/ResetPassword.jsx similarity index 52% rename from packages/vulcan-base-components/lib/users/UsersResetPassword.jsx rename to packages/vulcan-accounts/imports/ui/components/ResetPassword.jsx index 30c066dc7..202395a58 100644 --- a/packages/vulcan-base-components/lib/users/UsersResetPassword.jsx +++ b/packages/vulcan-accounts/imports/ui/components/ResetPassword.jsx @@ -3,8 +3,9 @@ import React, { PureComponent } from 'react'; import PropTypes from 'prop-types'; import { Link } from 'react-router'; import { intlShape } from 'meteor/vulcan:i18n'; +import { STATES } from '../../helpers.js'; -class UsersResetPassword extends PureComponent { +class AccountsResetPassword extends PureComponent { componentDidMount() { const token = this.props.params.token; Accounts._loginButtonsSession.set('resetPasswordToken', token); @@ -14,31 +15,28 @@ class UsersResetPassword extends PureComponent { if (!this.props.currentUser) { return ( ); + } else { + return ( +
+
{this.context.intl.formatMessage({id: 'accounts.info_password_changed'})}!
+
+ ); } - - return ( -
-
{this.context.intl.formatMessage({id: 'accounts.info_password_changed'})}!
- - Return Home - -
- ); } } -UsersResetPassword.contextTypes = { +AccountsResetPassword.contextTypes = { intl: intlShape } -UsersResetPassword.propsTypes = { +AccountsResetPassword.propsTypes = { currentUser: PropTypes.object, params: PropTypes.object, }; -UsersResetPassword.displayName = 'UsersResetPassword'; +AccountsResetPassword.displayName = 'AccountsResetPassword'; -registerComponent('UsersResetPassword', UsersResetPassword, withCurrentUser); +registerComponent('AccountsResetPassword', AccountsResetPassword, withCurrentUser); diff --git a/packages/vulcan-accounts/main_client.js b/packages/vulcan-accounts/main_client.js index 00a703e61..e657dfd2d 100755 --- a/packages/vulcan-accounts/main_client.js +++ b/packages/vulcan-accounts/main_client.js @@ -2,6 +2,7 @@ import { Accounts } from 'meteor/accounts-base'; import './imports/accounts_ui.js'; import './imports/components.js'; import './imports/login_session.js'; +import './imports/routes.js'; import { STATES } from './imports/helpers.js'; import './imports/ui/components/LoginForm.jsx'; diff --git a/packages/vulcan-accounts/main_server.js b/packages/vulcan-accounts/main_server.js index 29f12e921..d775f9b66 100755 --- a/packages/vulcan-accounts/main_server.js +++ b/packages/vulcan-accounts/main_server.js @@ -2,6 +2,7 @@ import { Accounts } from 'meteor/accounts-base'; import './imports/accounts_ui.js'; import './imports/components.js'; import './imports/login_session.js'; +import './imports/routes.js'; import { redirect, STATES } from './imports/helpers.js'; import './imports/api/server/servicesListPublication.js'; diff --git a/packages/vulcan-base-components/lib/components.js b/packages/vulcan-base-components/lib/components.js index 5018ebec2..b6811ebba 100644 --- a/packages/vulcan-base-components/lib/components.js +++ b/packages/vulcan-base-components/lib/components.js @@ -66,4 +66,3 @@ import './users/UsersAvatar.jsx'; import './users/UsersName.jsx'; import './users/UsersMenu.jsx'; import './users/UsersAccountMenu.jsx'; -import './users/UsersResetPassword.jsx'; diff --git a/packages/vulcan-base-components/lib/routes.js b/packages/vulcan-base-components/lib/routes.js index 968500264..04ef7c2c3 100644 --- a/packages/vulcan-base-components/lib/routes.js +++ b/packages/vulcan-base-components/lib/routes.js @@ -6,6 +6,5 @@ addRoute([ {name:'posts.single', path:'posts/:_id(/:slug)', componentName: 'PostsSingle'}, {name:'users.single', path:'users/:slug', componentName: 'UsersSingle'}, {name:'users.account', path:'account', componentName: 'UsersAccount'}, - {name:'resetPassword', path:'reset-password/:token', componentName: 'UsersResetPassword'}, {name:'users.edit', path:'users/:slug/edit', componentName: 'UsersAccount'}, ]);