1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192 |
- import { TAPi18n } from '/imports/i18n';
- const passwordField = AccountsTemplates.removeField('password');
- const emailField = AccountsTemplates.removeField('email');
- AccountsTemplates.addFields([
- {
- _id: 'username',
- type: 'text',
- displayName: 'username',
- required: true,
- minLength: 2,
- },
- emailField,
- passwordField,
- {
- _id: 'invitationcode',
- type: 'text',
- displayName: 'Invitation Code',
- required: false,
- minLength: 6,
- template: 'invitationCode',
- },
- ]);
- AccountsTemplates.configure({
- defaultLayout: 'userFormsLayout',
- defaultContentRegion: 'content',
- confirmPassword: true,
- 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();
- },
- });
- if (Meteor.isServer) {
- [
- 'resetPassword-subject',
- 'resetPassword-text',
- 'verifyEmail-subject',
- 'verifyEmail-text',
- 'enrollAccount-subject',
- 'enrollAccount-text',
- ].forEach(str => {
- const [templateName, field] = str.split('-');
- Accounts.emailTemplates[templateName][field] = (user, url) => {
- return TAPi18n.__(
- `email-${str}`,
- {
- url,
- user: user.getName(),
- siteName: Accounts.emailTemplates.siteName,
- },
- user.getLanguage(),
- );
- };
- });
- }
|