Blame view
imports/client/app/utils/recover-password.js
980 Bytes
c4d3e07d0
|
1 2 |
import $ from 'jquery'; import 'jquery-validation'; |
cac7cbc73
|
3 4 |
import { Accounts } from 'meteor/accounts-base'; import { Bert } from 'meteor/themeteorchef:bert'; |
c4d3e07d0
|
5 |
import { getInputValue } from './get-input-value'; |
7df77f0fa
|
6 7 |
let component; |
cac7cbc73
|
8 |
const handleRecovery = () => { |
7df77f0fa
|
9 |
Accounts.forgotPassword({ |
c4d3e07d0
|
10 |
email: getInputValue(component.refs.emailAddress), |
f0c912bf1
|
11 12 13 |
}, (error) => { if (error) { Bert.alert(error.reason, 'warning'); |
7df77f0fa
|
14 |
} else { |
f0c912bf1
|
15 |
Bert.alert('Check your inbox for a reset link!', 'success'); |
7df77f0fa
|
16 17 18 |
} }); }; |
cac7cbc73
|
19 |
const validate = () => { |
c4d3e07d0
|
20 |
$(component.refs.recoverPassword).validate({ |
7df77f0fa
|
21 22 23 |
rules: { emailAddress: { required: true, |
f0c912bf1
|
24 25 |
email: true, }, |
7df77f0fa
|
26 27 28 29 |
}, messages: { emailAddress: { required: 'Need an email address here.', |
f0c912bf1
|
30 31 |
email: 'Is this email address legit?', }, |
7df77f0fa
|
32 |
}, |
cac7cbc73
|
33 |
submitHandler() { handleRecovery(); }, |
7df77f0fa
|
34 35 |
}); }; |
c4d3e07d0
|
36 |
export const handleRecoverPassword = (options) => { |
7df77f0fa
|
37 |
component = options.component; |
cac7cbc73
|
38 |
validate(); |
c4d3e07d0
|
39 |
}; |