diff options
| author | mo <mo.khan@gmail.com> | 2017-09-07 20:42:49 -0600 |
|---|---|---|
| committer | mo <mo.khan@gmail.com> | 2017-09-07 20:42:49 -0600 |
| commit | c4364a98bfb8c13212ef70c2aab0aa91bfd3d804 (patch) | |
| tree | 148a9a23c8a9cb4afb9dfa1d489bd73fc3877600 /app/assets/javascripts | |
| parent | 0fa9222da133b609013d8689eb3f8fe9f4462cf0 (diff) | |
use input event and promote renderErrors method.
Diffstat (limited to 'app/assets/javascripts')
| -rw-r--r-- | app/assets/javascripts/views/auto_view.js.coffee | 5 | ||||
| -rw-r--r-- | app/assets/javascripts/views/sessions/login_form.js.coffee | 12 |
2 files changed, 8 insertions, 9 deletions
diff --git a/app/assets/javascripts/views/auto_view.js.coffee b/app/assets/javascripts/views/auto_view.js.coffee index 6c2c263f..4c520a5c 100644 --- a/app/assets/javascripts/views/auto_view.js.coffee +++ b/app/assets/javascripts/views/auto_view.js.coffee @@ -31,6 +31,11 @@ class CakeSide.AutoView extends Backbone.View showError: (field, message) -> @$(field).addClass('is-invalid').siblings('.invalid-feedback').html(message) + renderErrors: (errors) -> + @hideErrors() + _.each _.keys(errors), (key) => + @showError(@field(key), errors[key]) + field: (name) -> @$("##{@fieldName(name)}") fieldName: (name) -> "#{@modelKey}_#{name}" render: -> @ diff --git a/app/assets/javascripts/views/sessions/login_form.js.coffee b/app/assets/javascripts/views/sessions/login_form.js.coffee index b833d46d..7240bdbe 100644 --- a/app/assets/javascripts/views/sessions/login_form.js.coffee +++ b/app/assets/javascripts/views/sessions/login_form.js.coffee @@ -4,18 +4,17 @@ class CakeSide.Views.LoginForm extends CakeSide.AutoView @viewName 'login-form' modelKey: "session" events: - 'keyup #session_username': 'onKeyUp' - 'keyup #session_password': 'onKeyUp' + 'input #session_username': 'onInput' + 'input #session_password': 'onInput' 'submit form': 'onSubmit' - initialize: () -> @model = new CakeSide.Models.Session() render: -> @renderErrors(@model.validationError) - onKeyUp: (event) -> + onInput: (event) -> @model.set('username', @field('username').val()) @model.set('password', @field('password').val()) @$('input[type=submit]').prop('disabled', !@model.isValid()) @@ -27,8 +26,3 @@ class CakeSide.Views.LoginForm extends CakeSide.AutoView event.preventDefault() event.stopPropagation() @render() - - renderErrors: (errors) -> - @hideErrors() - _.each _.keys(errors), (key) => - @showError(@field(key), errors[key]) |
