diff options
| author | mo <mo.khan@gmail.com> | 2017-09-07 20:26:55 -0600 |
|---|---|---|
| committer | mo <mo.khan@gmail.com> | 2017-09-07 20:26:55 -0600 |
| commit | 91464727b6c252f149e0c8c7e0d09c0f22a296b2 (patch) | |
| tree | 78357c1cdb7c0594b573955e952096a9fae18b6a /app/assets/javascripts | |
| parent | 1ca9d86bf171dc29a53f126e382e1be2b0ca506b (diff) | |
connect login-form to session model validation.
Diffstat (limited to 'app/assets/javascripts')
| -rw-r--r-- | app/assets/javascripts/views/sessions/login_form.js.coffee | 32 |
1 files changed, 14 insertions, 18 deletions
diff --git a/app/assets/javascripts/views/sessions/login_form.js.coffee b/app/assets/javascripts/views/sessions/login_form.js.coffee index a41de95b..0cb273da 100644 --- a/app/assets/javascripts/views/sessions/login_form.js.coffee +++ b/app/assets/javascripts/views/sessions/login_form.js.coffee @@ -8,30 +8,26 @@ class CakeSide.Views.LoginForm extends CakeSide.AutoView 'keyup #session_password': 'onKeyUp' 'submit form': 'onSubmit' - render: -> - @hideErrors() - @$('input[type=submit]').prop('disabled', !@isValid()) - _.each _.keys(@errors), (key) => - @showError(@field(key), @errors[key]) - - isValid: -> - _.keys(@errors).length == 0 - - validate: -> - @errors = {} - if _.isEmpty(@field("username").val()) - @errors['username'] = "Email is required" + initialize: () -> + @model = new CakeSide.Models.Session() - if _.isEmpty(@field("password").val()) - @errors['password'] = "Password is required" + render: -> + @renderErrors(@model.validationError) onKeyUp: (event) -> - @validate() + @model.set('username', @field('username').val()) + @model.set('password', @field('password').val()) + @$('input[type=submit]').prop('disabled', !@model.isValid()) @render() onSubmit: (event) -> - @validate() - if !@isValid() + if !@model.isValid() + @$('input[type=submit]').prop('disabled', true) event.preventDefault() event.stopPropagation() @render() + + renderErrors: (errors) -> + @hideErrors() + _.each _.keys(errors), (key) => + @showError(@field(key), errors[key]) |
