From e551d067b1ff85b9095952059ab8d6cb6dc3a4f1 Mon Sep 17 00:00:00 2001 From: Maxime Quandalle Date: Mon, 2 Nov 2015 18:47:06 -0800 Subject: Share the useraccounts configuration with the server The previous users accounts templates configuration only happened on the client, which was wrong and caused some bugs, for instance an invalid URL was generated in the reset password e-mail. Fixes #297 --- config/accounts.js | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 config/accounts.js (limited to 'config/accounts.js') diff --git a/config/accounts.js b/config/accounts.js new file mode 100644 index 00000000..d475e6b2 --- /dev/null +++ b/config/accounts.js @@ -0,0 +1,48 @@ +const passwordField = AccountsTemplates.removeField('password'); +const emailField = AccountsTemplates.removeField('email'); +AccountsTemplates.addFields([{ + _id: 'username', + type: 'text', + displayName: 'username', + required: true, + minLength: 2, +}, emailField, passwordField]); + +AccountsTemplates.configure({ + defaultLayout: 'userFormsLayout', + defaultContentRegion: 'content', + confirmPassword: false, + enablePasswordChange: true, + sendVerificationEmail: true, + showForgotPasswordLink: true, + onLogoutHook() { + const homePage = 'home'; + if (FlowRouter.getRouteName() === homePage) { + FlowRouter.reload(); + } else { + FlowRouter.go(homePage); + } + }, +}); + +['signIn', 'signUp', 'resetPwd', 'forgotPwd', 'enrollAccount'].forEach( + (routeName) => AccountsTemplates.configureRoute(routeName)); + +// We display the form to change the password in a popup window that already +// have a title, so we unset the title automatically displayed by useraccounts. +AccountsTemplates.configure({ + texts: { + title: { + changePwd: '', + }, + }, +}); + +AccountsTemplates.configureRoute('changePwd', { + redirect() { + // XXX We should emit a notification once we have a notification system. + // Currently the user has no indication that his modification has been + // applied. + Popup.back(); + }, +}); -- cgit v1.2.3-1-g7c22