Blame view

client/controllers/public/reset-password.js 1.61 KB
3b214be5e   Ryan Glover   Convert all Coffe...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
  /*
  * Controller: Reset Password
  * Template: /client/views/public/reset-password.html
  */
  
  /*
  * Created
  */
  
  Template.resetPassword.created = function(){
    // Code to run when template is created goes here.
  }
  
  /*
  * Rendered
  */
  
  Template.resetPassword.rendered = function(){
    $('#application-reset-password').validate({
      rules: {
        newPassword: {
          required: true,
          minlength: 6
        },
        repeatNewPassword: {
          required: true,
          minlength: 6,
          equalTo: "[name='newPassword']"
        }
      },
      messages: {
        newPassword: {
          required: "Please enter a new password.",
          minlength: "Please use at least six characters."
        },
        repeatNewPassword: {
          required: "Please repeat your new password.",
          equalTo: "Your password do not match. Please try again."
        }
      },
      submitHandler: function(){
        // Grab the user's reset token and new password.
        var token    = Session.get('resetPasswordToken'),
            password = $('[name="newPassword"]').val();
  
        // Reset the user's password.
        Accounts.resetPassword(token, password, function(error){
          if(error){
c8b07469e   Ryan Glover   Add themeteorchef...
49
            Bert.alert(error.reason, 'danger');
3b214be5e   Ryan Glover   Convert all Coffe...
50
          } else {
c8b07469e   Ryan Glover   Add themeteorchef...
51
            Bert.alert('Password successfully reset!', 'success');
3b214be5e   Ryan Glover   Convert all Coffe...
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
            Session.set('resetPasswordToken', null);
          }
        });
      }
    });
  }
  
  /*
  * Helpers
  */
  
  Template.resetPassword.helpers({
    example: function(){
      // Code to run for helper function.
    }
  });
  
  /*
  * Events
  */
  
  Template.resetPassword.events({
    'submit form': function(e){
      // Prevent form from submitting.
      e.preventDefault();
    }
  });