rails4_client_side_validations 0.0.4 → 4.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +12 -7
  3. data/lib/client_side_validations.rb +12 -0
  4. data/lib/client_side_validations/action_view.rb +13 -0
  5. data/lib/client_side_validations/action_view/form_builder.rb +105 -0
  6. data/lib/{rails4_client_side_validations → client_side_validations}/action_view/form_helper.rb +13 -17
  7. data/lib/client_side_validations/action_view/form_tag_helper.rb +11 -0
  8. data/lib/{rails4_client_side_validations → client_side_validations}/active_model.rb +31 -9
  9. data/lib/{rails4_client_side_validations → client_side_validations}/active_model/absence.rb +1 -2
  10. data/lib/{rails4_client_side_validations → client_side_validations}/active_model/acceptance.rb +1 -2
  11. data/lib/client_side_validations/active_model/exclusion.rb +7 -0
  12. data/lib/{rails4_client_side_validations → client_side_validations}/active_model/format.rb +1 -2
  13. data/lib/client_side_validations/active_model/inclusion.rb +7 -0
  14. data/lib/{rails4_client_side_validations → client_side_validations}/active_model/length.rb +3 -4
  15. data/lib/{rails4_client_side_validations → client_side_validations}/active_model/numericality.rb +3 -4
  16. data/lib/{rails4_client_side_validations → client_side_validations}/active_model/presence.rb +1 -2
  17. data/lib/client_side_validations/active_record.rb +12 -0
  18. data/lib/{rails4_client_side_validations → client_side_validations}/active_record/middleware.rb +10 -6
  19. data/lib/{rails4_client_side_validations → client_side_validations}/active_record/uniqueness.rb +8 -6
  20. data/lib/{rails4_client_side_validations → client_side_validations}/config.rb +1 -1
  21. data/lib/client_side_validations/core_ext.rb +3 -0
  22. data/lib/{rails4_client_side_validations → client_side_validations}/core_ext/range.rb +0 -1
  23. data/lib/client_side_validations/core_ext/regexp.rb +25 -0
  24. data/lib/client_side_validations/engine.rb +5 -0
  25. data/lib/{rails4_client_side_validations → client_side_validations}/files.rb +2 -2
  26. data/lib/{rails4_client_side_validations → client_side_validations}/generators.rb +2 -3
  27. data/lib/client_side_validations/generators/rails_validations.rb +14 -0
  28. data/lib/{rails4_client_side_validations → client_side_validations}/middleware.rb +61 -16
  29. data/lib/client_side_validations/version.rb +3 -0
  30. data/lib/generators/{rails4_client_side_validations → client_side_validations}/copy_assets_generator.rb +3 -5
  31. data/lib/generators/client_side_validations/install_generator.rb +21 -0
  32. data/lib/generators/templates/{rails4_client_side_validations → client_side_validations}/initializer.rb +4 -4
  33. data/vendor/assets/javascripts/rails.validations.js +111 -98
  34. metadata +141 -81
  35. data/lib/generators/rails4_client_side_validations/install_generator.rb +0 -22
  36. data/lib/rails4_client_side_validations.rb +0 -13
  37. data/lib/rails4_client_side_validations/action_view.rb +0 -14
  38. data/lib/rails4_client_side_validations/action_view/form_builder.rb +0 -105
  39. data/lib/rails4_client_side_validations/action_view/form_tag_helper.rb +0 -12
  40. data/lib/rails4_client_side_validations/active_model/exclusion.rb +0 -27
  41. data/lib/rails4_client_side_validations/active_model/inclusion.rb +0 -26
  42. data/lib/rails4_client_side_validations/active_record.rb +0 -12
  43. data/lib/rails4_client_side_validations/core_ext.rb +0 -3
  44. data/lib/rails4_client_side_validations/core_ext/regexp.rb +0 -13
  45. data/lib/rails4_client_side_validations/engine.rb +0 -6
  46. data/lib/rails4_client_side_validations/generators/rails_validations.rb +0 -15
  47. data/lib/rails4_client_side_validations/version.rb +0 -3
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 6ad7d2b05a00e5ce63f9a1e7443fd0d991d2f6f3
4
- data.tar.gz: 9611698a23af73868534bcb49b7a619eb658f92d
3
+ metadata.gz: d8b093c6b17d7b641997d3bfbbb4e98726b1de02
4
+ data.tar.gz: 62995c5131322f8dcd4d67a7c8c551906a71a34c
5
5
  SHA512:
6
- metadata.gz: 53f7c96caae0ca0afb27fc32d55de40ffee7ac46949220739bf34b5828c3d9283d81479a64c9da4cd589299974d1f391464ef253529b71a19a11c84dcefcd37f
7
- data.tar.gz: f91ae6fc15f363bfb8433355be929705e3ee11202cc9b1646209217d49389abc103f6dbc16ccb2140239544e75d1691679f6d4ee52cef2d69aaef16288fe2f22
6
+ metadata.gz: c2fb46377e7241745c17ce084fe160af267a1aa0f902379212ba77fc426c4be96a35746e83b52422d93a1fc476b9dc5e9c66cb95cb9bd8af7ee1ce545a15b24a
7
+ data.tar.gz: f33e5a9bc2c6dee2387d8fc8f4c78ad614a596b6f433a98431477f268f11e06fcdd6a55b1dfb57dffbea66a823456f5b978930a36e9e8a395c6c8c9899541a46
data/README.md CHANGED
@@ -1,9 +1,14 @@
1
- [![Gem Version](https://badge.fury.io/rb/rails4_client_side_validations.png)](http://badge.fury.io/rb/rails4_client_side_validations)
2
- [![Build Status](https://travis-ci.org/kalkov/rails4_client_side_validations.png)](https://travis-ci.org/kalkov/rails4_client_side_validations)
3
- [![Code Climate](https://codeclimate.com/github/kalkov/rails4_client_side_validations.png)](https://codeclimate.com/github/kalkov/rails4_client_side_validations)
4
- [![Dependency Status](https://gemnasium.com/kalkov/rails4_client_side_validations.svg)](https://gemnasium.com/kalkov/rails4_client_side_validations)
1
+ Original repo is here: [client_side_validations](https://github.com/DavyJonesLocker/client_side_validations)
5
2
 
3
+ The purpose ot this repo is that you can install it like a 'normal' gem from rubygems, instead of Github.
6
4
 
7
- Important
8
- ---------
9
- It's not recommended to use this gem. It's modified version of [client_side_validations](https://github.com/bcardarella/client_side_validations.git), which supports Rails 4. But I can't understand well the codebase, so no guarantee I'll continue to support it.
5
+
6
+ ## Install
7
+
8
+ ```ruby
9
+ gem 'rails4_client_side_validations'
10
+ ```
11
+
12
+ ## Usage
13
+
14
+ Same as original gem.
@@ -0,0 +1,12 @@
1
+ module ClientSideValidations
2
+ end
3
+
4
+ require 'client_side_validations/config'
5
+ require 'client_side_validations/active_model' if defined?(::ActiveModel)
6
+ require 'client_side_validations/active_record' if defined?(::ActiveRecord)
7
+ require 'client_side_validations/action_view' if defined?(::ActionView)
8
+ if defined?(::Rails)
9
+ require 'client_side_validations/generators'
10
+ require 'client_side_validations/middleware'
11
+ require 'client_side_validations/engine'
12
+ end
@@ -0,0 +1,13 @@
1
+ module ClientSideValidations::ActionView
2
+ module Helpers
3
+ end
4
+ end
5
+
6
+ require 'client_side_validations/core_ext'
7
+ require 'client_side_validations/action_view/form_helper'
8
+ require 'client_side_validations/action_view/form_tag_helper'
9
+ require 'client_side_validations/action_view/form_builder'
10
+
11
+ ActionView::Base.send(:include, ClientSideValidations::ActionView::Helpers::FormHelper)
12
+ ActionView::Base.send(:include, ClientSideValidations::ActionView::Helpers::FormTagHelper)
13
+ ActionView::Helpers::FormBuilder.send(:include, ClientSideValidations::ActionView::Helpers::FormBuilder)
@@ -0,0 +1,105 @@
1
+ module ClientSideValidations::ActionView::Helpers
2
+ module FormBuilder
3
+
4
+ def self.included(base)
5
+ (base.field_helpers.map(&:to_s) - %w(apply_form_for_options! label check_box radio_button fields_for hidden_field)).each do |selector|
6
+ base.class_eval <<-RUBY_EVAL
7
+ def #{selector}_with_client_side_validations(method, options = {})
8
+ build_validation_options(method, options)
9
+ options.delete(:validate)
10
+ #{selector}_without_client_side_validations(method, options)
11
+ end
12
+ RUBY_EVAL
13
+
14
+ base.class_eval { alias_method_chain selector, :client_side_validations }
15
+ end
16
+
17
+ base.class_eval do
18
+ alias_method_chain :initialize, :client_side_validations
19
+ alias_method_chain :fields_for, :client_side_validations
20
+ alias_method_chain :check_box, :client_side_validations
21
+ alias_method_chain :radio_button, :client_side_validations
22
+ alias_method_chain :select, :client_side_validations
23
+ alias_method_chain :collection_select, :client_side_validations
24
+ alias_method_chain :grouped_collection_select, :client_side_validations
25
+ alias_method_chain :time_zone_select, :client_side_validations
26
+
27
+ def client_side_form_settings(options, form_helper)
28
+ {
29
+ type: self.class.to_s,
30
+ input_tag: form_helper.class.field_error_proc.call(%{<span id="input_tag" />}, Struct.new(:error_message, :tag_id).new([], "")),
31
+ label_tag: form_helper.class.field_error_proc.call(%{<label id="label_tag" />}, Struct.new(:error_message, :tag_id).new([], ""))
32
+ }
33
+ end
34
+ end
35
+ end
36
+
37
+ def validate(*attrs)
38
+ options = attrs.pop if attrs.last.is_a?(Hash)
39
+ (attrs.present? ? attrs : @object._validators.keys).each do |attr|
40
+ build_validation_options(attr, validate: options)
41
+ end
42
+ nil
43
+ end
44
+
45
+ def initialize_with_client_side_validations(object_name, object, *args)
46
+ initialize_without_client_side_validations(object_name, object, *args)
47
+ @options[:validators] = { object => {} }
48
+ end
49
+
50
+ def fields_for_with_client_side_validations(record_or_name_or_array, *args, &block)
51
+ options = args.extract_options!
52
+ options[:validate] ||= @options[:validate] if @options[:validate] && !options.key?(:validate)
53
+ fields_for_without_client_side_validations(record_or_name_or_array, *(args << options), &block)
54
+ end
55
+
56
+ def check_box_with_client_side_validations(method, options = {}, checked_value = "1", unchecked_value = "0")
57
+ build_validation_options(method, options)
58
+ options.delete(:validate)
59
+ check_box_without_client_side_validations(method, options, checked_value, unchecked_value)
60
+ end
61
+
62
+ def radio_button_with_client_side_validations(method, tag_value, options = {})
63
+ build_validation_options(method, options)
64
+ options.delete(:validate)
65
+ radio_button_without_client_side_validations(method, tag_value, options)
66
+ end
67
+
68
+ def select_with_client_side_validations(method, choices, options = {}, html_options = {})
69
+ build_validation_options(method, html_options.merge(name: options[:name]))
70
+ html_options.delete(:validate)
71
+ select_without_client_side_validations(method, choices, options, html_options)
72
+ end
73
+
74
+ def collection_select_with_client_side_validations(method, collection, value_method, text_method, options = {}, html_options = {})
75
+ build_validation_options(method, html_options.merge(name: options[:name]))
76
+ html_options.delete(:validate)
77
+ collection_select_without_client_side_validations(method, collection, value_method, text_method, options, html_options)
78
+ end
79
+
80
+ def grouped_collection_select_with_client_side_validations(method, collection, group_method, group_label_method, option_key_method, option_value_method, options = {}, html_options = {})
81
+ build_validation_options(method, html_options.merge(name: options[:name]))
82
+ html_options.delete(:validate)
83
+ grouped_collection_select_without_client_side_validations(method, collection, group_method, group_label_method, option_key_method, option_value_method, options, html_options)
84
+ end
85
+
86
+ def time_zone_select_with_client_side_validations(method, priority_zones = nil, options = {}, html_options = {})
87
+ build_validation_options(method, html_options.merge(name: options[:name]))
88
+ html_options.delete(:validate)
89
+ time_zone_select_without_client_side_validations(method, priority_zones, options, html_options)
90
+ end
91
+
92
+ private
93
+
94
+ def build_validation_options(method, options = {})
95
+ if @options[:validate]
96
+ index = @default_options[:index].present? ? "[#{@default_options[:index]}]" : ''
97
+ name = options[:name] || "#{@object_name}#{index}[#{method}]"
98
+ child_index = @options[:child_index] ? "(\\d+|#{Regexp.escape(@options[:child_index].to_s)})" : "\\d+"
99
+ name = name.to_s.gsub(/_attributes\]\[#{child_index}\]/, '_attributes][]')
100
+ name = "#{name}#{options[:multiple] ? "[]" : nil}"
101
+ @options[:validators][@object][method] = { name: name, options: options[:validate] }
102
+ end
103
+ end
104
+ end
105
+ end
@@ -1,10 +1,9 @@
1
- module Rails4ClientSideValidations::ActionView::Helpers
1
+ module ClientSideValidations::ActionView::Helpers
2
2
  module FormHelper
3
3
  class Error < StandardError; end
4
4
 
5
- def form_for(record, *args, &block)
5
+ def form_for(record, options = {}, &block)
6
6
  raise ArgumentError, "Missing block" unless block_given?
7
- options = args.extract_options!
8
7
  if options[:validate]
9
8
 
10
9
  # Always turn off HTML5 Validations
@@ -13,7 +12,7 @@ module Rails4ClientSideValidations::ActionView::Helpers
13
12
 
14
13
  case record
15
14
  when String, Symbol
16
- raise Rails4ClientSideValidations::ActionView::Helpers::FormHelper::Error, 'Using form_for(:name, @resource) is not supported with ClientSideValidations. Please use form_for(@resource, :as => :name) instead.'
15
+ raise ClientSideValidations::ActionView::Helpers::FormHelper::Error, 'Using form_for(:name, @resource) is not supported with ClientSideValidations. Please use form_for(@resource, as: :name) instead.'
17
16
  else
18
17
  object = record.is_a?(Array) ? record.last : record
19
18
  object_name = options[:as] || model_name_from_record_or_class(object).param_key
@@ -24,12 +23,11 @@ module Rails4ClientSideValidations::ActionView::Helpers
24
23
 
25
24
  # Order matters here. Rails mutates the options object
26
25
  html_id = options[:html][:id] if options[:html]
27
- form = super(record, *(args << options), &block)
26
+ form = super(record, options, &block)
28
27
  options[:id] = html_id if html_id
29
28
 
30
- process_validators options
29
+ build_bound_validators options
31
30
  builder = instantiate_builder(object_name, object, options) if object_name and object
32
-
33
31
  script = client_side_form_settings(object, options, builder)
34
32
 
35
33
  # Because of the load order requirement above this sub is necessary
@@ -50,20 +48,20 @@ module Rails4ClientSideValidations::ActionView::Helpers
50
48
  end
51
49
  end
52
50
 
53
- def apply_form_for_options!(object_or_array, object, options)
51
+ def apply_form_for_options!(record, object, options)
54
52
  super
55
53
  options[:html][:validate] = true if options[:validate]
56
54
  end
57
55
 
58
56
  def fields_for(record_or_name_or_array, record_object = nil, options = {}, &block)
59
57
  output = super
60
- process_validators options
58
+ build_bound_validators options
61
59
  output
62
60
  end
63
61
 
64
62
  private
65
63
 
66
- def process_validators(options)
64
+ def build_bound_validators(options)
67
65
  if @validators
68
66
  options[:validators].each do |key, value|
69
67
  if @validators.key?(key)
@@ -120,20 +118,18 @@ module Rails4ClientSideValidations::ActionView::Helpers
120
118
  end
121
119
  end
122
120
 
123
- if Rails4ClientSideValidations::Config.number_format_with_locale and defined?(I18n)
124
- number_format = I18n.t("number.format").slice(:separator, :delimiter)
121
+ if ClientSideValidations::Config.number_format_with_locale and defined?(I18n)
122
+ number_format = I18n.t('number.format').slice(:separator, :delimiter)
125
123
  else
126
- number_format = {:separator=>".", :delimiter=>","}
124
+ number_format = { separator:'.', delimiter:',' }
127
125
  end
128
- patterns = {:numericality=>"/^(-|\\+)?(?:\\d+|\\d{1,3}(?:\\#{number_format[:delimiter]}\\d{3})+)(?:\\#{number_format[:separator]}\\d*)?$/"}
126
+ patterns = { numericality:"/^(-|\\+)?(?:\\d+|\\d{1,3}(?:\\#{number_format[:delimiter]}\\d{3})+)(?:\\#{number_format[:separator]}\\d*)?$/" }
129
127
 
130
128
 
131
129
  content_tag(:script) do
132
- "//<![CDATA[\nif(window.Rails4ClientSideValidations===undefined)window.Rails4ClientSideValidations={};window.Rails4ClientSideValidations.disabled_validators=#{Rails4ClientSideValidations::Config.disabled_validators.to_json};window.Rails4ClientSideValidations.number_format=#{number_format.to_json};if(window.Rails4ClientSideValidations.patterns===undefined)window.Rails4ClientSideValidations.patterns = {};window.Rails4ClientSideValidations.patterns.numericality=#{patterns[:numericality]};if(window.Rails4ClientSideValidations.remote_validators_prefix===undefined)window.Rails4ClientSideValidations.remote_validators_prefix='#{(Rails4ClientSideValidations::Config.root_path||"").sub(/\/+\Z/,'')}';if(window.Rails4ClientSideValidations.forms===undefined)window.Rails4ClientSideValidations.forms={};window.Rails4ClientSideValidations.forms['#{var_name}'] = #{builder.client_side_form_settings(options, self).merge(:validators => 'validator_hash').to_json};\n//]]>".html_safe
130
+ "//<![CDATA[\nif(window.ClientSideValidations===undefined)window.ClientSideValidations={};window.ClientSideValidations.disabled_validators=#{ClientSideValidations::Config.disabled_validators.to_json};window.ClientSideValidations.number_format=#{number_format.to_json};if(window.ClientSideValidations.patterns===undefined)window.ClientSideValidations.patterns = {};window.ClientSideValidations.patterns.numericality=#{patterns[:numericality]};#{"if(window.ClientSideValidations.remote_validators_prefix===undefined)window.ClientSideValidations.remote_validators_prefix='#{(ClientSideValidations::Config.root_path).sub(/\/+\Z/,'')}';" if ClientSideValidations::Config.root_path.present? }if(window.ClientSideValidations.forms===undefined)window.ClientSideValidations.forms={};window.ClientSideValidations.forms['#{var_name}'] = #{builder.client_side_form_settings(options, self).merge(validators: 'validator_hash').to_json};\n//]]>".html_safe
133
131
  end
134
132
  end
135
133
  end
136
-
137
134
  end
138
135
  end
139
-
@@ -0,0 +1,11 @@
1
+ module ClientSideValidations::ActionView::Helpers
2
+ module FormTagHelper
3
+ private
4
+ def html_options_for_form(url_for_options, options)
5
+ options.stringify_keys!
6
+ html_options = {}
7
+ html_options['data-validate'] = options.delete('validate') if options['validate']
8
+ html_options.merge!(super(url_for_options, options))
9
+ end
10
+ end
11
+ end
@@ -1,6 +1,6 @@
1
- require 'rails4_client_side_validations/core_ext'
1
+ require 'client_side_validations/core_ext'
2
2
 
3
- module Rails4ClientSideValidations::ActiveModel
3
+ module ClientSideValidations::ActiveModel
4
4
  module Validator
5
5
 
6
6
  def client_side_hash(model, attribute, force = nil)
@@ -14,7 +14,7 @@ module Rails4ClientSideValidations::ActiveModel
14
14
  private
15
15
 
16
16
  def build_client_side_hash(model, attribute, options)
17
- { :message => model.errors.generate_message(attribute, message_type, options) }.merge(options.except(*::ActiveModel::Errors::CALLBACKS_OPTIONS - [:allow_blank, :if, :unless]))
17
+ { message: model.errors.generate_message(attribute, message_type, options) }.merge(options.except(*::ActiveModel::Errors::CALLBACKS_OPTIONS - [:allow_blank, :if, :unless]))
18
18
  end
19
19
 
20
20
  def message_type
@@ -108,7 +108,7 @@ module Rails4ClientSideValidations::ActiveModel
108
108
  false
109
109
  end
110
110
  else
111
- ::Rails4ClientSideValidations::Config.disabled_validators.include?(validator.kind)
111
+ ::ClientSideValidations::Config.disabled_validators.include?(validator.kind)
112
112
  end
113
113
  end
114
114
 
@@ -130,14 +130,36 @@ module Rails4ClientSideValidations::ActiveModel
130
130
  end
131
131
  end
132
132
  end
133
+
134
+ module EnumerableValidator
135
+ def client_side_hash(model, attribute, force = nil)
136
+ options = self.options.dup
137
+ if options[:in].respond_to?(:call)
138
+ if force
139
+ options[:in] = options[:in].call(model)
140
+ hash = build_client_side_hash(model, attribute, options)
141
+ else
142
+ return
143
+ end
144
+ else
145
+ hash = build_client_side_hash(model, attribute, options)
146
+ end
147
+
148
+ if hash[:in].is_a?(Range)
149
+ hash[:range] = hash[:in]
150
+ hash.delete(:in)
151
+ end
152
+
153
+ hash
154
+ end
155
+ end
133
156
  end
134
157
 
135
- ActiveModel::Validator.send(:include, Rails4ClientSideValidations::ActiveModel::Validator)
136
- ActiveModel::Validations.send(:include, Rails4ClientSideValidations::ActiveModel::Validations)
158
+ ActiveModel::Validator.send(:include, ClientSideValidations::ActiveModel::Validator)
159
+ ActiveModel::Validations.send(:include, ClientSideValidations::ActiveModel::Validations)
137
160
 
138
161
  %w{absence acceptance exclusion inclusion length format numericality presence}.each do |validator|
139
- require "rails4_client_side_validations/active_model/#{validator}"
162
+ require "client_side_validations/active_model/#{validator}"
140
163
  validator.capitalize!
141
- eval "ActiveModel::Validations::#{validator}Validator.send(:include, Rails4ClientSideValidations::ActiveModel::#{validator})"
164
+ eval "ActiveModel::Validations::#{validator}Validator.send(:include, ClientSideValidations::ActiveModel::#{validator})"
142
165
  end
143
-
@@ -1,4 +1,4 @@
1
- module Rails4ClientSideValidations::ActiveModel
1
+ module ClientSideValidations::ActiveModel
2
2
  module Absence
3
3
  private
4
4
 
@@ -7,4 +7,3 @@ module Rails4ClientSideValidations::ActiveModel
7
7
  end
8
8
  end
9
9
  end
10
-
@@ -1,4 +1,4 @@
1
- module Rails4ClientSideValidations::ActiveModel
1
+ module ClientSideValidations::ActiveModel
2
2
  module Acceptance
3
3
  private
4
4
 
@@ -7,4 +7,3 @@ module Rails4ClientSideValidations::ActiveModel
7
7
  end
8
8
  end
9
9
  end
10
-
@@ -0,0 +1,7 @@
1
+ module ClientSideValidations::ActiveModel
2
+ module Exclusion
3
+
4
+ include EnumerableValidator
5
+
6
+ end
7
+ end
@@ -1,4 +1,4 @@
1
- module Rails4ClientSideValidations::ActiveModel
1
+ module ClientSideValidations::ActiveModel
2
2
  module Format
3
3
  def client_side_hash(model, attribute, force = nil)
4
4
  options = self.options.dup
@@ -28,4 +28,3 @@ module Rails4ClientSideValidations::ActiveModel
28
28
  end
29
29
  end
30
30
  end
31
-
@@ -0,0 +1,7 @@
1
+ module ClientSideValidations::ActiveModel
2
+ module Inclusion
3
+
4
+ include EnumerableValidator
5
+
6
+ end
7
+ end
@@ -1,9 +1,9 @@
1
- module Rails4ClientSideValidations::ActiveModel
1
+ module ClientSideValidations::ActiveModel
2
2
  module Length
3
3
 
4
4
  def client_side_hash(model, attribute, force = nil)
5
5
  options = self.options.dup
6
- hash = { :messages => {} }
6
+ hash = { messages: {} }
7
7
  hash[:js_tokenizer] = options[:js_tokenizer] if options[:js_tokenizer]
8
8
  hash[:allow_blank] = true if options[:allow_blank]
9
9
 
@@ -11,7 +11,7 @@ module Rails4ClientSideValidations::ActiveModel
11
11
  if count = options[option]
12
12
  options[:message] = options[message_type] if options[message_type].present?
13
13
  options.delete(:message) if options[:message].nil?
14
- hash[:messages][option] = model.errors.generate_message(attribute, message_type, options.merge(:count => count))
14
+ hash[:messages][option] = model.errors.generate_message(attribute, message_type, options.merge(count: count))
15
15
  hash[option] = count
16
16
  end
17
17
  end
@@ -23,4 +23,3 @@ module Rails4ClientSideValidations::ActiveModel
23
23
 
24
24
  end
25
25
  end
26
-
@@ -1,4 +1,4 @@
1
- module Rails4ClientSideValidations::ActiveModel
1
+ module ClientSideValidations::ActiveModel
2
2
  module Numericality
3
3
 
4
4
  OPTION_MAP = {}
@@ -9,7 +9,7 @@ module Rails4ClientSideValidations::ActiveModel
9
9
 
10
10
  def client_side_hash(model, attribute, force = nil)
11
11
  options = self.options.dup
12
- hash = { :messages => { :numericality => model.errors.generate_message(attribute, :not_a_number, options) } }
12
+ hash = { messages: { numericality: model.errors.generate_message(attribute, :not_a_number, options) } }
13
13
 
14
14
  if options[:only_integer]
15
15
  hash[:messages][:only_integer] = model.errors.generate_message(attribute, :not_an_integer, options)
@@ -27,7 +27,7 @@ module Rails4ClientSideValidations::ActiveModel
27
27
  next
28
28
  end
29
29
  end
30
- hash[:messages][option] = model.errors.generate_message(attribute, message_type, options.merge(:count => count))
30
+ hash[:messages][option] = model.errors.generate_message(attribute, message_type, options.merge(count: count))
31
31
  hash[option] = count
32
32
  end
33
33
  end
@@ -39,4 +39,3 @@ module Rails4ClientSideValidations::ActiveModel
39
39
 
40
40
  end
41
41
  end
42
-
@@ -1,4 +1,4 @@
1
- module Rails4ClientSideValidations::ActiveModel
1
+ module ClientSideValidations::ActiveModel
2
2
  module Presence
3
3
  private
4
4
 
@@ -7,4 +7,3 @@ module Rails4ClientSideValidations::ActiveModel
7
7
  end
8
8
  end
9
9
  end
10
-