bootstrap_validator_rails 0.7.0 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 8f24e7559bb4e0670fee59b9fb8611fba9d5483b
4
- data.tar.gz: 13fd15cf0ab6ae2123df0ce283cd109367ba4841
3
+ metadata.gz: 13e47d5e48a7fb734088d604d3025195e4217650
4
+ data.tar.gz: 692c8197ebec05d8d8ddf6cf44ecae29a868070c
5
5
  SHA512:
6
- metadata.gz: 934ac5ab618188b89fa4713b19af2cc6d193ca941d3b5759d20fbbd0614025390711ae46e0040072913b1fb98c1135ead6d5b0d7067c748b2864a8b753a5c5aa
7
- data.tar.gz: f55b1e4fc1cf77b75c90887892474fe67bc7a1dd38268fdd1f1b3a99c254db85547e6d3521cef727788c59365e12352a56198f949d39dbcb09d71e94a4844245
6
+ metadata.gz: 53bede1541b0146fde84116f59fa19d44fb5559ec488b5b182802283779beaaecbc53294f6ae3447f47093ef0ef99dcfae5d3b7beafbcab0e7fcee48d29a03e8
7
+ data.tar.gz: d2f81d0304a2dbc9002a456ec57f46d1f6ba0fadad316986051db837d74868bfc1a63d76f2890dca36045749ad8e09f12603edad9fb1ef979b2fb41ae349e66c
data/README.md CHANGED
@@ -13,7 +13,7 @@ gem install bootstrap_validator_rails
13
13
  or add this to your Gemfile
14
14
 
15
15
  ```ruby
16
- gem 'bootstrap_validator_rails', '~> 0.6.0'
16
+ gem 'bootstrap_validator_rails', '~> 0.7.0'
17
17
  ```
18
18
 
19
19
  then run
@@ -74,6 +74,20 @@ Generated HTML
74
74
  <input id='product_price' name='product[price]' data-bv-greaterthan-inclusive='false' data-bv-greaterthan-value='20' />
75
75
  ```
76
76
 
77
+ #### ActiveRecord Message
78
+
79
+ ```yml
80
+ activerecord:
81
+ errors:
82
+ models:
83
+ post:
84
+ attributes:
85
+ title:
86
+ blank: is required
87
+ ```
88
+
89
+ Please see: http://guides.rubyonrails.org/i18n.html#error-message-scopes
90
+
77
91
  ## List of helpers supported
78
92
 
79
93
  * color_field
@@ -21,8 +21,8 @@ module BootstrapValidatorRails
21
21
  methods = validator.attributes
22
22
  methods.each do |method|
23
23
  @generator = BootstrapValidatorRails::Validators::Generator.new(object, validator, method)
24
- json = @generator.generate_json
25
- bv_options[:fields].deep_merge! json
24
+ js_options = @generator.generate_js_options
25
+ bv_options[:fields].deep_merge! js_options
26
26
  end
27
27
  end
28
28
  bv_options.to_json.html_safe
@@ -1,8 +1,8 @@
1
1
  module BootstrapValidatorRails
2
2
  module Validators
3
3
  class Acceptance < Presence
4
- def generate_message
5
- 'should be accepted'
4
+ def i18n_message
5
+ @record.errors.generate_message(@method, :accepted, default: '')
6
6
  end
7
7
  end
8
8
  end
@@ -10,7 +10,7 @@ module BootstrapValidatorRails
10
10
 
11
11
  validators.inject({}) do |attributes, validator|
12
12
  @generator = BootstrapValidatorRails::Validators::Generator.new(@record, validator, method)
13
- attributes.merge @generator.generate_data
13
+ attributes.merge @generator.generate_html_attributes
14
14
  end
15
15
  end
16
16
 
@@ -7,32 +7,9 @@ end
7
7
  module BootstrapValidatorRails
8
8
  module Validators
9
9
  class Format < Validator
10
- def generate_data
11
- data = {}
12
- return data if unsupported?
13
-
14
- options = validator_options
15
-
16
- regex = options[:with].to_javascript
17
- regex.sub!('/^', '^')
18
- regex.sub!('$/', '$')
19
-
20
- data[:bv_regexp] = 'true'
21
-
22
- if options[:with]
23
- data[:bv_regexp_regexp] = regex
24
- end
25
-
26
- if options[:message]
27
- data[:bv_regexp_message] = options[:message]
28
- end
29
-
30
- data
31
- end
32
10
 
33
- def generate_object
34
- data = {}
35
- return data if unsupported?
11
+ def generate_options!
12
+ return if unsupported?
36
13
 
37
14
  options = validator_options
38
15
 
@@ -40,17 +17,18 @@ module BootstrapValidatorRails
40
17
  regex.sub!('/^', '^')
41
18
  regex.sub!('$/', '$')
42
19
 
43
- data["regexp"] = {}
20
+ @js_options['regexp'] = {}
21
+ @html_attributes[:bv_regexp] = 'true'
44
22
 
45
23
  if options[:with]
46
- data["regexp"]["regexp"] = regex
24
+ @js_options['regexp']['regexp'] = regex
25
+ @html_attributes[:bv_regexp_regexp] = regex
47
26
  end
48
27
 
49
28
  if options[:message]
50
- data["regexp"]["message"] = options[:message]
29
+ @js_options['regexp']['message'] = generate_message
30
+ @html_attributes[:bv_regexp_message] = generate_message
51
31
  end
52
-
53
- {method_key => {'validators' => data}}
54
32
  end
55
33
  end
56
34
  end
@@ -6,18 +6,18 @@ module BootstrapValidatorRails
6
6
  @kind = validator.kind
7
7
  end
8
8
 
9
- def generate_data(options = {})
9
+ def generate_html_attributes
10
10
  return {} unless VALIDATOR_SUPPORTED.include?(@kind)
11
11
  klass = "BootstrapValidatorRails::Validators::#{@kind.to_s.capitalize}".constantize
12
12
  bootstrap_validator = klass.new(@record, @method, @validator)
13
- bootstrap_validator.generate_data
13
+ bootstrap_validator.html_attributes
14
14
  end
15
15
 
16
- def generate_json
16
+ def generate_js_options
17
17
  return {} unless VALIDATOR_SUPPORTED.include?(@kind)
18
18
  klass = "BootstrapValidatorRails::Validators::#{@kind.to_s.capitalize}".constantize
19
19
  bootstrap_validator = klass.new(@record, @method, @validator)
20
- bootstrap_validator.generate_object
20
+ bootstrap_validator.js_options
21
21
  end
22
22
  end
23
23
  end
@@ -1,53 +1,33 @@
1
1
  module BootstrapValidatorRails
2
2
  module Validators
3
3
  class Length < Validator
4
- def generate_data
5
- data = {}
6
- return data if unsupported?
7
-
8
- options = validator_options
9
-
10
- data[:bv_stringlength] = 'true'
11
4
 
12
- if options[:minimum]
13
- data[:bv_stringlength_min] = options[:minimum]
14
- end
5
+ def generate_options!
6
+ @html_attributes ||= {}
7
+ @js_options ||= {}
15
8
 
16
- if options[:maximum]
17
- data[:bv_stringlength_max] = options[:maximum]
18
- end
19
-
20
- if options[:is]
21
- data[:bv_stringlength_minimum] = options[:is]
22
- data[:bv_stringlength_maximum] = options[:is]
23
- data[:bv_stringlength_message] = @record.errors.generate_message(@method)
24
- end
25
-
26
- data
27
- end
28
-
29
- def generate_object
30
- options = @validator.options
31
-
32
- data = {}
9
+ return if unsupported?
10
+
11
+ options = validator_options
33
12
 
34
- data["stringLength"] = {}
13
+ @html_attributes[:bv_stringlength] = 'true'
14
+ @js_options['stringLength'] = {}
35
15
 
36
16
  if options[:minimum]
37
- data["stringLength"]["min"] = options[:minimum]
17
+ @html_attributes[:bv_stringlength_min] = @js_options['stringLength']['min'] = options[:minimum]
38
18
  end
39
19
 
40
20
  if options[:maximum]
41
- data["stringLength"]["max"] = options[:maximum]
21
+ @html_attributes[:bv_stringlength_max] = @js_options['stringLength']['max'] = options[:maximum]
42
22
  end
43
23
 
44
24
  if options[:is]
45
- data["stringLength"]["min"] = options[:is]
46
- data["stringLength"]["max"] = options[:is]
47
- data["stringLength"]['message'] = @record.errors.generate_message(@method)
25
+ @html_attributes[:bv_stringlength_minimum] = options[:is]
26
+ @js_options['stringLength']['min'] = options[:is]
27
+ @html_attributes[:bv_stringlength_maximum] = options[:is]
28
+ @js_options['stringLength']['max'] = options[:is]
29
+ @html_attributes[:bv_stringlength_message] = @js_options['stringLength']['message'] = generate_message
48
30
  end
49
-
50
- {method_key => {'validators' => data}}
51
31
  end
52
32
  end
53
33
  end
@@ -1,121 +1,97 @@
1
1
  module BootstrapValidatorRails
2
2
  module Validators
3
3
  class Numericality < Validator
4
- def generate_data
5
- data = {}
6
- return data if unsupported?
7
-
8
- options = validator_options
9
-
10
- data[:bv_numeric] = 'true'
11
- data[:bv_numeric_separator] = '.'
12
-
13
- data.merge(generate_options)
14
- end
15
-
16
4
  def generate_message
17
5
  @record.errors.generate_message(@method, :presence, {default: 'should be a number'})
18
6
  end
19
7
 
20
- def generate_object
8
+ def generate_options!
9
+ return if unsupported?
10
+
21
11
  options = @validator.options
22
12
 
23
- data = {}
13
+ generate_numeric_options!
14
+ generate_integer_options!
15
+ generate_greater_than_options!
16
+ generate_less_than_options!
17
+ generate_parity_options!
18
+ end
24
19
 
25
- if options[:only_integer].present?
26
- data["integer"] = {}
27
- data["integer"]['message'] = 'should be a number'
28
- end
20
+ private
21
+ def generate_numeric_options!
22
+ @html_attributes[:bv_numeric] = 'true'
23
+ @html_attributes[:bv_numeric_separator] = '.'
29
24
 
30
- if options[:greater_than].present?
31
- data["greaterThan"] = {}
32
- data["greaterThan"]["inclusive"] = false
33
- data["greaterThan"]["value"] = options[:greater_than]
34
- end
25
+ @js_options['numeric'] = {}
26
+ @js_options['numeric']['separator'] = ','
27
+ end
35
28
 
36
- if options[:greater_than_or_equal_to].present?
37
- data["greaterThan"] = {}
38
- data["greaterThan"]["inclusive"] = true
39
- data["greaterThan"]["value"] = options[:greater_than_or_equal_to]
40
- end
29
+ def generate_integer_options!
30
+ options = validator_options
41
31
 
42
- if options[:less_than].present?
43
- data["lessThan"] = {}
44
- data["lessThan"]["inclusive"] = false
45
- data["lessThan"]["value"] = options[:less_than]
32
+ if options[:only_integer].present?
33
+ @html_attributes[:bv_integer] = 'true'
34
+ @html_attributes[:bv_integer_message] = generate_message
35
+ @js_options['integer'] = {}
36
+ @js_options['integer']['message'] = generate_message
46
37
  end
38
+ end
47
39
 
48
- if options[:less_than_or_equal_to].present?
49
- data["lessThan"] = {}
50
- data["lessThan"]["inclusive"] = true
51
- data["lessThan"]["value"] = options[:less_than_or_equal_to]
52
- end
40
+ def generate_greater_than_options!
41
+ options = validator_options
53
42
 
54
- if options[:odd].present?
55
- data["step"] = {}
56
- data["step"]["message"] = 'should be odd'
57
- data["step"]["base"] = 1
58
- data["step"]["step"] = 2
59
- end
43
+ return if options[:greater_than].nil? && options[:greater_than_or_equal_to].nil?
60
44
 
61
- if options[:even].present?
62
- data["step"] = {}
63
- data["step"]["message"] = 'should be even'
64
- data["step"]["base"] = 0
65
- data["step"]["step"] = 2
66
- end
45
+ inclusive = options[:greater_than_or_equal_to].present?
46
+ value = options[:greater_than] || options[:greater_than_or_equal_to]
47
+
48
+ @html_attributes[:bv_greaterthan] = 'true'
49
+ @js_options["greaterThan"] = {}
67
50
 
68
- {method_key => {'validators' => data}}
51
+ @html_attributes[:bv_greaterthan_value] = value
52
+ @js_options["greaterThan"]["value"] = value
53
+
54
+ @html_attributes[:bv_greaterthan_inclusive] = inclusive.to_s
55
+ @js_options["greaterThan"]["inclusive"] = inclusive
69
56
  end
70
57
 
71
- def generate_options
72
- options = @validator.options
58
+ def generate_less_than_options!
59
+ options = validator_options
73
60
 
74
- data = {}
61
+ return if options[:less_than].nil? && options[:less_than_or_equal_to].nil?
75
62
 
76
- if options[:only_integer].present?
77
- data[:bv_integer] = 'true'
78
- end
63
+ inclusive = options[:less_than_or_equal_to].present?
64
+ value = options[:less_than] || options[:less_than_or_equal_to]
79
65
 
80
- if options[:greater_than].present?
81
- data[:bv_greaterthan] = 'true'
82
- data[:bv_greaterthan_inclusive] = 'false'
83
- data[:bv_greaterthan_value] = options[:greater_than]
84
- end
66
+ @html_attributes[:bv_lessthan] = 'true'
67
+ @js_options["lessThan"] = {}
85
68
 
86
- if options[:greater_than_or_equal_to].present?
87
- data[:bv_greaterthan] = 'true'
88
- data[:bv_greaterthan_inclusive] = 'true'
89
- data[:bv_greaterthan_value] = options[:greater_than_or_equal_to]
90
- end
69
+ @html_attributes[:bv_lessthan_value] = value
70
+ @js_options["lessThan"]["value"] = value
71
+
72
+ @html_attributes[:bv_lessthan_inclusive] = inclusive.to_s
73
+ @js_options["lessThan"]["inclusive"] = inclusive
74
+ end
91
75
 
92
- if options[:less_than].present?
93
- data[:bv_lessthan] = 'true'
94
- data[:bv_lessthan_inclusive] = 'false'
95
- data[:bv_lessthan_value] = options[:less_than]
96
- end
76
+ def generate_parity_options!
77
+ options = validator_options
97
78
 
98
- if options[:less_than_or_equal_to].present?
99
- data[:bv_lessthan] = 'true'
100
- data[:bv_lessthan_inclusive] = 'true'
101
- data[:bv_lessthan_value] = options[:less_than_or_equal_to]
102
- end
79
+ return if options[:odd].nil? && options[:even].nil?
103
80
 
104
- if options[:odd].present?
105
- data[:bv_step] = 'true'
106
- data[:bv_step_message] = 'should be odd'
107
- data[:bv_step_base] = '1'
108
- data[:bv_step_step] = '2'
109
- end
81
+ base = options[:odd].present? ? 1 : 0
82
+ message = options[:odd].present? ? 'should be odd' : 'should be even'
110
83
 
111
- if options[:even].present?
112
- data[:bv_step] = 'true'
113
- data[:bv_step_message] = 'should be even'
114
- data[:bv_step_base] = '0'
115
- data[:bv_step_step] = '2'
116
- end
117
- data
84
+ @js_options["step"] = {}
85
+ @js_options["step"]["message"] = message
86
+ @js_options["step"]["base"] = base
87
+ @js_options["step"]["step"] = 2
88
+
89
+ @html_attributes[:bv_step] = 'true'
90
+ @html_attributes[:bv_step_message] = message
91
+ @html_attributes[:bv_step_base] = base
92
+ @html_attributes[:bv_step_step] = 2
118
93
  end
94
+
119
95
  end
120
96
  end
121
97
  end
@@ -1,24 +1,14 @@
1
1
  module BootstrapValidatorRails
2
2
  module Validators
3
3
  class Presence < Validator
4
- def generate_data
5
- data = {}
6
- return data if unsupported?
4
+ def generate_options!(options = {})
5
+ return if unsupported?
7
6
 
8
- data[:bv_notempty] = 'true'
9
- data[:bv_notempty_message] = generate_message
10
- data
11
- end
12
-
13
- def generate_message
14
- @record.errors.generate_message(@method, :blank, default: "can't be blank")
15
- end
7
+ @js_options['notEmpty'] = {}
8
+ @html_attributes[:bv_notempty] = 'true'
16
9
 
17
- def generate_object(options = {})
18
- data = {}
19
- data["notEmpty"] = {}
20
- data["notEmpty"]["message"] = generate_message
21
- {method_key => {'validators' => data}}
10
+ @js_options['notEmpty']['message'] = generate_message
11
+ @html_attributes[:bv_notempty_message] = generate_message
22
12
  end
23
13
  end
24
14
  end
@@ -3,6 +3,9 @@ module BootstrapValidatorRails
3
3
  class Validator
4
4
  def initialize(record, method, validator)
5
5
  @record, @method, @validator = record, method, validator
6
+ @js_options = {}
7
+ @html_attributes = {}
8
+ generate_options!
6
9
  end
7
10
 
8
11
  def validator_options
@@ -19,6 +22,18 @@ module BootstrapValidatorRails
19
22
  unsupported_options.any? { |opt| options.has_key? opt }
20
23
  end
21
24
 
25
+ def html_attributes
26
+ @html_attributes
27
+ end
28
+
29
+ def js_options
30
+ {method_key => {'validators' => @js_options}}
31
+ end
32
+
33
+ def generate_message
34
+ validator_options[:message] || i18n_message
35
+ end
36
+
22
37
  protected
23
38
  def unsupported_options
24
39
  BootstrapValidatorRails::CONFIGURATION[:unsupported_options]
@@ -27,6 +42,10 @@ module BootstrapValidatorRails
27
42
  def method_key
28
43
  "#{@record.class.to_s.underscore.to_sym}[#{@method}]"
29
44
  end
45
+
46
+ def i18n_message
47
+ @record.errors.generate_message(@method, @validator.kind, default: '')
48
+ end
30
49
  end
31
50
  end
32
51
  end
@@ -1,3 +1,3 @@
1
1
  module BootstrapValidatorRails
2
- VERSION = "0.7.0"
2
+ VERSION = "1.0.0"
3
3
  end
@@ -4062,3 +4062,759 @@ BootstrapValidatorRailsTest: test_test_will_be_included_later
4062
4062
   (0.0ms) rollback transaction
4063
4063
   (0.0ms) begin transaction
4064
4064
   (0.0ms) rollback transaction
4065
+  (0.1ms) begin transaction
4066
+  (0.1ms) rollback transaction
4067
+  (0.1ms) begin transaction
4068
+  (0.1ms) rollback transaction
4069
+  (0.0ms) begin transaction
4070
+  (0.1ms) rollback transaction
4071
+  (0.1ms) begin transaction
4072
+  (0.1ms) rollback transaction
4073
+  (0.0ms) begin transaction
4074
+  (0.0ms) rollback transaction
4075
+  (0.0ms) begin transaction
4076
+  (0.0ms) rollback transaction
4077
+  (0.0ms) begin transaction
4078
+  (0.0ms) rollback transaction
4079
+  (0.0ms) begin transaction
4080
+  (0.0ms) rollback transaction
4081
+  (0.0ms) begin transaction
4082
+  (0.0ms) rollback transaction
4083
+  (0.0ms) begin transaction
4084
+  (0.0ms) rollback transaction
4085
+  (0.1ms) begin transaction
4086
+  (0.0ms) rollback transaction
4087
+  (0.1ms) begin transaction
4088
+  (0.0ms) rollback transaction
4089
+  (0.1ms) begin transaction
4090
+  (0.0ms) rollback transaction
4091
+  (0.1ms) begin transaction
4092
+  (0.0ms) rollback transaction
4093
+  (0.1ms) begin transaction
4094
+  (0.0ms) rollback transaction
4095
+  (0.1ms) begin transaction
4096
+  (0.0ms) rollback transaction
4097
+  (0.1ms) begin transaction
4098
+  (0.0ms) rollback transaction
4099
+  (0.2ms) begin transaction
4100
+  (0.1ms) rollback transaction
4101
+  (0.2ms) begin transaction
4102
+  (0.1ms) rollback transaction
4103
+  (0.1ms) begin transaction
4104
+  (0.1ms) rollback transaction
4105
+  (0.0ms) begin transaction
4106
+  (0.0ms) rollback transaction
4107
+  (0.1ms) begin transaction
4108
+  (0.1ms) rollback transaction
4109
+  (0.0ms) begin transaction
4110
+  (0.1ms) rollback transaction
4111
+  (0.1ms) begin transaction
4112
+  (0.0ms) rollback transaction
4113
+  (0.1ms) begin transaction
4114
+  (0.0ms) rollback transaction
4115
+  (0.1ms) begin transaction
4116
+  (0.1ms) rollback transaction
4117
+  (0.0ms) begin transaction
4118
+  (0.0ms) rollback transaction
4119
+  (0.1ms) begin transaction
4120
+  (0.0ms) rollback transaction
4121
+  (0.0ms) begin transaction
4122
+  (0.0ms) rollback transaction
4123
+  (0.1ms) begin transaction
4124
+  (0.0ms) rollback transaction
4125
+  (0.0ms) begin transaction
4126
+  (0.0ms) rollback transaction
4127
+  (0.1ms) begin transaction
4128
+  (0.1ms) rollback transaction
4129
+  (0.0ms) begin transaction
4130
+  (0.1ms) rollback transaction
4131
+  (0.1ms) begin transaction
4132
+  (0.1ms) rollback transaction
4133
+  (0.0ms) begin transaction
4134
+  (0.1ms) rollback transaction
4135
+  (0.1ms) begin transaction
4136
+  (0.1ms) rollback transaction
4137
+  (0.0ms) begin transaction
4138
+  (0.1ms) rollback transaction
4139
+  (0.1ms) begin transaction
4140
+  (0.1ms) rollback transaction
4141
+  (0.1ms) begin transaction
4142
+  (0.0ms) rollback transaction
4143
+  (0.1ms) begin transaction
4144
+  (0.1ms) rollback transaction
4145
+  (0.1ms) begin transaction
4146
+  (0.0ms) rollback transaction
4147
+  (0.1ms) begin transaction
4148
+  (0.0ms) rollback transaction
4149
+  (0.1ms) begin transaction
4150
+  (0.0ms) rollback transaction
4151
+  (0.1ms) begin transaction
4152
+  (0.1ms) rollback transaction
4153
+  (0.0ms) begin transaction
4154
+  (0.1ms) rollback transaction
4155
+  (0.1ms) begin transaction
4156
+  (0.0ms) rollback transaction
4157
+  (0.0ms) begin transaction
4158
+  (0.0ms) rollback transaction
4159
+  (0.2ms) begin transaction
4160
+  (0.0ms) rollback transaction
4161
+  (0.0ms) begin transaction
4162
+  (0.0ms) rollback transaction
4163
+  (0.1ms) begin transaction
4164
+  (0.0ms) rollback transaction
4165
+  (0.0ms) begin transaction
4166
+  (0.0ms) rollback transaction
4167
+  (0.1ms) begin transaction
4168
+  (0.0ms) rollback transaction
4169
+  (0.0ms) begin transaction
4170
+  (0.0ms) rollback transaction
4171
+  (0.1ms) begin transaction
4172
+  (0.0ms) rollback transaction
4173
+  (0.1ms) begin transaction
4174
+  (0.0ms) rollback transaction
4175
+  (0.1ms) begin transaction
4176
+  (0.1ms) rollback transaction
4177
+  (0.0ms) begin transaction
4178
+  (0.0ms) rollback transaction
4179
+  (0.1ms) begin transaction
4180
+  (0.1ms) rollback transaction
4181
+  (0.0ms) begin transaction
4182
+  (0.1ms) rollback transaction
4183
+  (0.1ms) begin transaction
4184
+  (0.0ms) rollback transaction
4185
+  (0.0ms) begin transaction
4186
+  (0.1ms) rollback transaction
4187
+  (0.0ms) begin transaction
4188
+  (0.0ms) rollback transaction
4189
+  (0.0ms) begin transaction
4190
+  (0.0ms) rollback transaction
4191
+  (0.0ms) begin transaction
4192
+  (0.0ms) rollback transaction
4193
+  (0.0ms) begin transaction
4194
+  (0.0ms) rollback transaction
4195
+  (0.0ms) begin transaction
4196
+  (0.0ms) rollback transaction
4197
+  (0.0ms) begin transaction
4198
+  (0.0ms) rollback transaction
4199
+  (0.0ms) begin transaction
4200
+  (0.0ms) rollback transaction
4201
+  (0.1ms) begin transaction
4202
+  (0.0ms) rollback transaction
4203
+  (0.1ms) begin transaction
4204
+  (0.0ms) rollback transaction
4205
+  (0.1ms) begin transaction
4206
+  (0.1ms) rollback transaction
4207
+  (0.0ms) begin transaction
4208
+  (0.1ms) rollback transaction
4209
+  (0.1ms) begin transaction
4210
+  (0.1ms) rollback transaction
4211
+  (0.0ms) begin transaction
4212
+  (0.1ms) rollback transaction
4213
+  (0.0ms) begin transaction
4214
+  (0.0ms) rollback transaction
4215
+  (0.0ms) begin transaction
4216
+  (0.0ms) rollback transaction
4217
+  (0.0ms) begin transaction
4218
+  (0.0ms) rollback transaction
4219
+  (0.1ms) begin transaction
4220
+  (0.0ms) rollback transaction
4221
+  (0.1ms) begin transaction
4222
+  (0.0ms) rollback transaction
4223
+  (0.0ms) begin transaction
4224
+  (0.0ms) rollback transaction
4225
+  (0.0ms) begin transaction
4226
+  (0.1ms) rollback transaction
4227
+  (0.0ms) begin transaction
4228
+  (0.1ms) rollback transaction
4229
+  (0.0ms) begin transaction
4230
+  (0.0ms) rollback transaction
4231
+  (0.2ms) begin transaction
4232
+  (0.1ms) rollback transaction
4233
+  (0.1ms) begin transaction
4234
+  (0.1ms) rollback transaction
4235
+  (0.1ms) begin transaction
4236
+  (0.1ms) rollback transaction
4237
+  (0.0ms) begin transaction
4238
+  (0.1ms) rollback transaction
4239
+  (0.0ms) begin transaction
4240
+  (0.0ms) rollback transaction
4241
+  (0.0ms) begin transaction
4242
+  (0.1ms) rollback transaction
4243
+  (0.1ms) begin transaction
4244
+  (0.0ms) rollback transaction
4245
+  (0.1ms) begin transaction
4246
+  (0.0ms) rollback transaction
4247
+  (0.0ms) begin transaction
4248
+  (0.0ms) rollback transaction
4249
+  (0.1ms) begin transaction
4250
+  (0.0ms) rollback transaction
4251
+  (0.0ms) begin transaction
4252
+  (0.0ms) rollback transaction
4253
+  (0.0ms) begin transaction
4254
+  (0.0ms) rollback transaction
4255
+  (0.0ms) begin transaction
4256
+  (0.0ms) rollback transaction
4257
+  (0.1ms) begin transaction
4258
+  (0.1ms) rollback transaction
4259
+  (0.1ms) begin transaction
4260
+  (0.1ms) rollback transaction
4261
+  (0.1ms) begin transaction
4262
+  (0.1ms) rollback transaction
4263
+  (0.1ms) begin transaction
4264
+  (0.1ms) rollback transaction
4265
+  (0.1ms) begin transaction
4266
+  (0.0ms) rollback transaction
4267
+  (0.1ms) begin transaction
4268
+  (0.1ms) rollback transaction
4269
+  (0.1ms) begin transaction
4270
+  (0.0ms) rollback transaction
4271
+  (0.1ms) begin transaction
4272
+  (0.0ms) rollback transaction
4273
+  (0.1ms) begin transaction
4274
+  (0.0ms) rollback transaction
4275
+  (0.1ms) begin transaction
4276
+  (0.1ms) rollback transaction
4277
+  (0.1ms) begin transaction
4278
+  (0.1ms) rollback transaction
4279
+  (0.1ms) begin transaction
4280
+  (0.1ms) rollback transaction
4281
+  (0.1ms) begin transaction
4282
+  (0.1ms) rollback transaction
4283
+  (0.0ms) begin transaction
4284
+  (0.0ms) rollback transaction
4285
+  (0.0ms) begin transaction
4286
+  (0.0ms) rollback transaction
4287
+  (0.0ms) begin transaction
4288
+  (0.0ms) rollback transaction
4289
+  (0.0ms) begin transaction
4290
+  (0.0ms) rollback transaction
4291
+  (0.0ms) begin transaction
4292
+  (0.0ms) rollback transaction
4293
+  (0.0ms) begin transaction
4294
+  (0.0ms) rollback transaction
4295
+  (0.0ms) begin transaction
4296
+  (0.0ms) rollback transaction
4297
+  (0.0ms) begin transaction
4298
+  (0.0ms) rollback transaction
4299
+  (0.0ms) begin transaction
4300
+  (0.0ms) rollback transaction
4301
+  (0.1ms) begin transaction
4302
+  (0.1ms) rollback transaction
4303
+  (0.1ms) begin transaction
4304
+  (0.1ms) rollback transaction
4305
+  (0.1ms) begin transaction
4306
+  (0.1ms) rollback transaction
4307
+  (0.0ms) begin transaction
4308
+  (0.0ms) rollback transaction
4309
+  (0.0ms) begin transaction
4310
+  (0.0ms) rollback transaction
4311
+  (0.0ms) begin transaction
4312
+  (0.0ms) rollback transaction
4313
+  (0.0ms) begin transaction
4314
+  (0.0ms) rollback transaction
4315
+  (0.0ms) begin transaction
4316
+  (0.0ms) rollback transaction
4317
+  (0.0ms) begin transaction
4318
+  (0.0ms) rollback transaction
4319
+  (0.0ms) begin transaction
4320
+  (0.0ms) rollback transaction
4321
+  (0.0ms) begin transaction
4322
+  (0.0ms) rollback transaction
4323
+  (0.0ms) begin transaction
4324
+  (0.0ms) rollback transaction
4325
+  (0.1ms) begin transaction
4326
+  (0.1ms) rollback transaction
4327
+  (0.0ms) begin transaction
4328
+  (0.1ms) rollback transaction
4329
+  (0.1ms) begin transaction
4330
+  (0.1ms) rollback transaction
4331
+  (0.1ms) begin transaction
4332
+  (0.1ms) rollback transaction
4333
+  (0.0ms) begin transaction
4334
+  (0.1ms) rollback transaction
4335
+  (0.1ms) begin transaction
4336
+  (0.0ms) rollback transaction
4337
+  (0.0ms) begin transaction
4338
+  (0.0ms) rollback transaction
4339
+  (0.0ms) begin transaction
4340
+  (0.0ms) rollback transaction
4341
+  (0.0ms) begin transaction
4342
+  (0.0ms) rollback transaction
4343
+  (0.0ms) begin transaction
4344
+  (0.0ms) rollback transaction
4345
+  (0.0ms) begin transaction
4346
+  (0.0ms) rollback transaction
4347
+  (0.1ms) begin transaction
4348
+  (0.0ms) rollback transaction
4349
+  (0.1ms) begin transaction
4350
+  (0.1ms) rollback transaction
4351
+  (0.0ms) begin transaction
4352
+  (0.1ms) rollback transaction
4353
+  (0.0ms) begin transaction
4354
+  (0.0ms) rollback transaction
4355
+  (0.0ms) begin transaction
4356
+  (0.0ms) rollback transaction
4357
+  (0.0ms) begin transaction
4358
+  (0.1ms) rollback transaction
4359
+  (0.1ms) begin transaction
4360
+  (0.0ms) rollback transaction
4361
+  (0.1ms) begin transaction
4362
+  (0.0ms) rollback transaction
4363
+  (0.0ms) begin transaction
4364
+  (0.0ms) rollback transaction
4365
+  (0.0ms) begin transaction
4366
+  (0.0ms) rollback transaction
4367
+  (0.0ms) begin transaction
4368
+  (0.0ms) rollback transaction
4369
+  (0.0ms) begin transaction
4370
+  (0.0ms) rollback transaction
4371
+  (0.0ms) begin transaction
4372
+  (0.0ms) rollback transaction
4373
+  (0.1ms) begin transaction
4374
+  (0.1ms) rollback transaction
4375
+  (0.0ms) begin transaction
4376
+  (0.5ms) rollback transaction
4377
+  (0.1ms) begin transaction
4378
+  (0.1ms) rollback transaction
4379
+  (0.1ms) begin transaction
4380
+  (0.1ms) rollback transaction
4381
+  (0.0ms) begin transaction
4382
+  (0.0ms) rollback transaction
4383
+  (0.0ms) begin transaction
4384
+  (0.0ms) rollback transaction
4385
+  (0.0ms) begin transaction
4386
+  (0.0ms) rollback transaction
4387
+  (0.0ms) begin transaction
4388
+  (0.1ms) rollback transaction
4389
+  (0.1ms) begin transaction
4390
+  (0.0ms) rollback transaction
4391
+  (0.0ms) begin transaction
4392
+  (0.0ms) rollback transaction
4393
+  (0.0ms) begin transaction
4394
+  (0.1ms) rollback transaction
4395
+  (0.0ms) begin transaction
4396
+  (0.0ms) rollback transaction
4397
+  (0.1ms) begin transaction
4398
+  (0.1ms) rollback transaction
4399
+  (0.1ms) begin transaction
4400
+  (0.1ms) rollback transaction
4401
+  (0.0ms) begin transaction
4402
+  (0.0ms) rollback transaction
4403
+  (0.0ms) begin transaction
4404
+  (0.0ms) rollback transaction
4405
+  (0.0ms) begin transaction
4406
+  (0.0ms) rollback transaction
4407
+  (0.0ms) begin transaction
4408
+  (0.0ms) rollback transaction
4409
+  (0.0ms) begin transaction
4410
+  (0.0ms) rollback transaction
4411
+  (0.0ms) begin transaction
4412
+  (0.1ms) rollback transaction
4413
+  (0.1ms) begin transaction
4414
+  (0.0ms) rollback transaction
4415
+  (0.0ms) begin transaction
4416
+  (0.0ms) rollback transaction
4417
+  (0.0ms) begin transaction
4418
+  (0.1ms) rollback transaction
4419
+  (0.0ms) begin transaction
4420
+  (0.1ms) rollback transaction
4421
+  (0.1ms) begin transaction
4422
+  (0.1ms) rollback transaction
4423
+  (0.0ms) begin transaction
4424
+  (0.1ms) rollback transaction
4425
+  (0.1ms) begin transaction
4426
+  (0.0ms) rollback transaction
4427
+  (0.0ms) begin transaction
4428
+  (0.0ms) rollback transaction
4429
+  (0.0ms) begin transaction
4430
+  (0.1ms) rollback transaction
4431
+  (0.1ms) begin transaction
4432
+  (0.1ms) rollback transaction
4433
+  (0.1ms) begin transaction
4434
+  (0.1ms) rollback transaction
4435
+  (0.0ms) begin transaction
4436
+  (0.0ms) rollback transaction
4437
+  (0.0ms) begin transaction
4438
+  (0.0ms) rollback transaction
4439
+  (0.0ms) begin transaction
4440
+  (0.0ms) rollback transaction
4441
+  (0.0ms) begin transaction
4442
+  (0.0ms) rollback transaction
4443
+  (0.0ms) begin transaction
4444
+  (0.0ms) rollback transaction
4445
+  (0.1ms) begin transaction
4446
+  (0.1ms) rollback transaction
4447
+  (0.1ms) begin transaction
4448
+  (0.1ms) rollback transaction
4449
+  (0.1ms) begin transaction
4450
+  (0.1ms) rollback transaction
4451
+  (0.0ms) begin transaction
4452
+  (0.0ms) rollback transaction
4453
+  (0.0ms) begin transaction
4454
+  (0.0ms) rollback transaction
4455
+  (0.0ms) begin transaction
4456
+  (0.0ms) rollback transaction
4457
+  (0.1ms) begin transaction
4458
+  (0.0ms) rollback transaction
4459
+  (0.0ms) begin transaction
4460
+  (0.0ms) rollback transaction
4461
+  (0.1ms) begin transaction
4462
+  (0.0ms) rollback transaction
4463
+  (0.1ms) begin transaction
4464
+  (0.2ms) rollback transaction
4465
+  (0.1ms) begin transaction
4466
+  (0.0ms) rollback transaction
4467
+  (0.0ms) begin transaction
4468
+  (0.0ms) rollback transaction
4469
+  (0.1ms) begin transaction
4470
+  (0.1ms) rollback transaction
4471
+  (0.2ms) begin transaction
4472
+  (0.1ms) rollback transaction
4473
+  (0.1ms) begin transaction
4474
+  (0.1ms) rollback transaction
4475
+  (0.0ms) begin transaction
4476
+  (0.0ms) rollback transaction
4477
+  (0.1ms) begin transaction
4478
+  (0.1ms) rollback transaction
4479
+  (0.0ms) begin transaction
4480
+  (0.0ms) rollback transaction
4481
+  (0.0ms) begin transaction
4482
+  (0.0ms) rollback transaction
4483
+  (0.0ms) begin transaction
4484
+  (0.0ms) rollback transaction
4485
+  (0.0ms) begin transaction
4486
+  (0.0ms) rollback transaction
4487
+  (0.0ms) begin transaction
4488
+  (0.0ms) rollback transaction
4489
+  (0.0ms) begin transaction
4490
+  (0.0ms) rollback transaction
4491
+  (0.0ms) begin transaction
4492
+  (0.0ms) rollback transaction
4493
+  (0.1ms) begin transaction
4494
+  (0.1ms) rollback transaction
4495
+  (0.1ms) begin transaction
4496
+  (0.1ms) rollback transaction
4497
+  (0.1ms) begin transaction
4498
+  (0.0ms) rollback transaction
4499
+  (0.0ms) begin transaction
4500
+  (0.0ms) rollback transaction
4501
+  (0.0ms) begin transaction
4502
+  (0.1ms) rollback transaction
4503
+  (0.1ms) begin transaction
4504
+  (0.1ms) rollback transaction
4505
+  (0.1ms) begin transaction
4506
+  (0.1ms) rollback transaction
4507
+  (0.1ms) begin transaction
4508
+  (0.1ms) rollback transaction
4509
+  (0.1ms) begin transaction
4510
+  (0.0ms) rollback transaction
4511
+  (0.0ms) begin transaction
4512
+  (0.0ms) rollback transaction
4513
+  (0.0ms) begin transaction
4514
+  (0.1ms) rollback transaction
4515
+  (0.0ms) begin transaction
4516
+  (0.0ms) rollback transaction
4517
+  (0.1ms) begin transaction
4518
+  (0.1ms) rollback transaction
4519
+  (0.1ms) begin transaction
4520
+  (0.1ms) rollback transaction
4521
+  (0.1ms) begin transaction
4522
+  (0.1ms) rollback transaction
4523
+  (0.1ms) begin transaction
4524
+  (0.0ms) rollback transaction
4525
+  (0.1ms) begin transaction
4526
+  (0.0ms) rollback transaction
4527
+  (0.0ms) begin transaction
4528
+  (0.0ms) rollback transaction
4529
+  (0.0ms) begin transaction
4530
+  (0.1ms) rollback transaction
4531
+  (0.0ms) begin transaction
4532
+  (0.1ms) rollback transaction
4533
+  (0.0ms) begin transaction
4534
+  (0.0ms) rollback transaction
4535
+  (0.0ms) begin transaction
4536
+  (0.0ms) rollback transaction
4537
+  (0.0ms) begin transaction
4538
+  (0.0ms) rollback transaction
4539
+  (0.0ms) begin transaction
4540
+  (0.0ms) rollback transaction
4541
+  (0.1ms) begin transaction
4542
+  (0.1ms) rollback transaction
4543
+  (0.1ms) begin transaction
4544
+  (0.1ms) rollback transaction
4545
+  (0.1ms) begin transaction
4546
+  (0.1ms) rollback transaction
4547
+  (0.0ms) begin transaction
4548
+  (0.0ms) rollback transaction
4549
+  (0.0ms) begin transaction
4550
+  (0.0ms) rollback transaction
4551
+  (0.0ms) begin transaction
4552
+  (0.0ms) rollback transaction
4553
+  (0.0ms) begin transaction
4554
+  (0.0ms) rollback transaction
4555
+  (0.0ms) begin transaction
4556
+  (0.0ms) rollback transaction
4557
+  (0.0ms) begin transaction
4558
+  (0.0ms) rollback transaction
4559
+  (0.0ms) begin transaction
4560
+  (0.0ms) rollback transaction
4561
+  (0.0ms) begin transaction
4562
+  (0.1ms) rollback transaction
4563
+  (0.0ms) begin transaction
4564
+  (0.0ms) rollback transaction
4565
+  (0.1ms) begin transaction
4566
+  (0.1ms) rollback transaction
4567
+  (0.1ms) begin transaction
4568
+  (0.1ms) rollback transaction
4569
+  (0.1ms) begin transaction
4570
+  (0.1ms) rollback transaction
4571
+  (0.0ms) begin transaction
4572
+  (0.0ms) rollback transaction
4573
+  (0.1ms) begin transaction
4574
+  (0.1ms) rollback transaction
4575
+  (0.1ms) begin transaction
4576
+  (0.1ms) rollback transaction
4577
+  (0.0ms) begin transaction
4578
+  (0.0ms) rollback transaction
4579
+  (0.0ms) begin transaction
4580
+  (0.0ms) rollback transaction
4581
+  (0.0ms) begin transaction
4582
+  (0.0ms) rollback transaction
4583
+  (0.0ms) begin transaction
4584
+  (0.0ms) rollback transaction
4585
+  (0.0ms) begin transaction
4586
+  (0.0ms) rollback transaction
4587
+  (0.0ms) begin transaction
4588
+  (0.0ms) rollback transaction
4589
+  (0.1ms) begin transaction
4590
+  (0.1ms) rollback transaction
4591
+  (0.0ms) begin transaction
4592
+  (0.1ms) rollback transaction
4593
+  (0.0ms) begin transaction
4594
+  (0.0ms) rollback transaction
4595
+  (0.0ms) begin transaction
4596
+  (0.0ms) rollback transaction
4597
+  (0.0ms) begin transaction
4598
+  (0.0ms) rollback transaction
4599
+  (0.0ms) begin transaction
4600
+  (0.0ms) rollback transaction
4601
+  (0.0ms) begin transaction
4602
+  (0.0ms) rollback transaction
4603
+  (0.0ms) begin transaction
4604
+  (0.0ms) rollback transaction
4605
+  (0.0ms) begin transaction
4606
+  (0.0ms) rollback transaction
4607
+  (0.0ms) begin transaction
4608
+  (0.0ms) rollback transaction
4609
+  (0.0ms) begin transaction
4610
+  (0.0ms) rollback transaction
4611
+  (0.0ms) begin transaction
4612
+  (0.0ms) rollback transaction
4613
+  (0.1ms) begin transaction
4614
+  (0.0ms) rollback transaction
4615
+  (0.1ms) begin transaction
4616
+  (0.0ms) rollback transaction
4617
+  (0.1ms) begin transaction
4618
+  (0.1ms) rollback transaction
4619
+  (0.1ms) begin transaction
4620
+  (0.1ms) rollback transaction
4621
+  (0.1ms) begin transaction
4622
+  (0.1ms) rollback transaction
4623
+  (0.0ms) begin transaction
4624
+  (0.1ms) rollback transaction
4625
+  (0.1ms) begin transaction
4626
+  (0.1ms) rollback transaction
4627
+  (0.0ms) begin transaction
4628
+  (0.1ms) rollback transaction
4629
+  (0.1ms) begin transaction
4630
+  (0.1ms) rollback transaction
4631
+  (0.1ms) begin transaction
4632
+  (0.0ms) rollback transaction
4633
+  (0.1ms) begin transaction
4634
+  (0.0ms) rollback transaction
4635
+  (0.0ms) begin transaction
4636
+  (0.0ms) rollback transaction
4637
+  (0.1ms) begin transaction
4638
+  (0.0ms) rollback transaction
4639
+  (0.0ms) begin transaction
4640
+  (0.0ms) rollback transaction
4641
+  (0.1ms) begin transaction
4642
+  (0.1ms) rollback transaction
4643
+  (0.1ms) begin transaction
4644
+  (0.1ms) rollback transaction
4645
+  (0.0ms) begin transaction
4646
+  (0.0ms) rollback transaction
4647
+  (0.0ms) begin transaction
4648
+  (0.0ms) rollback transaction
4649
+  (0.0ms) begin transaction
4650
+  (0.0ms) rollback transaction
4651
+  (0.0ms) begin transaction
4652
+  (0.0ms) rollback transaction
4653
+  (0.0ms) begin transaction
4654
+  (0.0ms) rollback transaction
4655
+  (0.0ms) begin transaction
4656
+  (0.0ms) rollback transaction
4657
+  (0.0ms) begin transaction
4658
+  (0.0ms) rollback transaction
4659
+  (0.0ms) begin transaction
4660
+  (0.0ms) rollback transaction
4661
+  (0.0ms) begin transaction
4662
+  (0.0ms) rollback transaction
4663
+  (0.0ms) begin transaction
4664
+  (0.0ms) rollback transaction
4665
+  (0.1ms) begin transaction
4666
+  (0.1ms) rollback transaction
4667
+  (0.0ms) begin transaction
4668
+  (0.1ms) rollback transaction
4669
+  (0.1ms) begin transaction
4670
+  (0.0ms) rollback transaction
4671
+  (0.0ms) begin transaction
4672
+  (0.1ms) rollback transaction
4673
+  (0.0ms) begin transaction
4674
+  (0.1ms) rollback transaction
4675
+  (0.0ms) begin transaction
4676
+  (0.1ms) rollback transaction
4677
+  (0.0ms) begin transaction
4678
+  (0.1ms) rollback transaction
4679
+  (0.0ms) begin transaction
4680
+  (0.0ms) rollback transaction
4681
+  (0.0ms) begin transaction
4682
+  (0.0ms) rollback transaction
4683
+  (0.0ms) begin transaction
4684
+  (0.0ms) rollback transaction
4685
+  (0.0ms) begin transaction
4686
+  (0.0ms) rollback transaction
4687
+  (0.1ms) begin transaction
4688
+  (0.0ms) rollback transaction
4689
+  (0.0ms) begin transaction
4690
+  (0.0ms) rollback transaction
4691
+  (0.0ms) begin transaction
4692
+  (0.0ms) rollback transaction
4693
+  (0.1ms) begin transaction
4694
+  (0.0ms) rollback transaction
4695
+  (0.1ms) begin transaction
4696
+  (0.1ms) rollback transaction
4697
+  (0.1ms) begin transaction
4698
+  (0.1ms) rollback transaction
4699
+  (0.1ms) begin transaction
4700
+  (0.1ms) rollback transaction
4701
+  (0.1ms) begin transaction
4702
+  (0.0ms) rollback transaction
4703
+  (0.0ms) begin transaction
4704
+  (0.1ms) rollback transaction
4705
+  (0.0ms) begin transaction
4706
+  (0.0ms) rollback transaction
4707
+  (0.0ms) begin transaction
4708
+  (0.1ms) rollback transaction
4709
+  (0.0ms) begin transaction
4710
+  (0.0ms) rollback transaction
4711
+  (0.0ms) begin transaction
4712
+  (0.0ms) rollback transaction
4713
+  (0.1ms) begin transaction
4714
+  (0.0ms) rollback transaction
4715
+  (0.1ms) begin transaction
4716
+  (0.0ms) rollback transaction
4717
+  (0.0ms) begin transaction
4718
+  (0.0ms) rollback transaction
4719
+  (0.0ms) begin transaction
4720
+  (0.0ms) rollback transaction
4721
+  (0.1ms) begin transaction
4722
+  (0.0ms) rollback transaction
4723
+  (0.0ms) begin transaction
4724
+  (0.0ms) rollback transaction
4725
+  (0.1ms) begin transaction
4726
+  (0.1ms) rollback transaction
4727
+  (0.1ms) begin transaction
4728
+  (0.1ms) rollback transaction
4729
+  (0.1ms) begin transaction
4730
+  (0.0ms) rollback transaction
4731
+  (0.0ms) begin transaction
4732
+  (0.1ms) rollback transaction
4733
+  (0.1ms) begin transaction
4734
+  (0.0ms) rollback transaction
4735
+  (0.0ms) begin transaction
4736
+  (0.0ms) rollback transaction
4737
+  (0.0ms) begin transaction
4738
+  (0.0ms) rollback transaction
4739
+  (0.0ms) begin transaction
4740
+  (0.0ms) rollback transaction
4741
+  (0.0ms) begin transaction
4742
+  (0.0ms) rollback transaction
4743
+  (0.0ms) begin transaction
4744
+  (0.0ms) rollback transaction
4745
+  (0.0ms) begin transaction
4746
+  (0.0ms) rollback transaction
4747
+  (0.0ms) begin transaction
4748
+  (0.0ms) rollback transaction
4749
+  (0.1ms) begin transaction
4750
+  (0.1ms) rollback transaction
4751
+  (0.0ms) begin transaction
4752
+  (0.1ms) rollback transaction
4753
+  (0.0ms) begin transaction
4754
+  (0.0ms) rollback transaction
4755
+  (0.0ms) begin transaction
4756
+  (0.1ms) rollback transaction
4757
+  (0.0ms) begin transaction
4758
+  (0.0ms) rollback transaction
4759
+  (0.0ms) begin transaction
4760
+  (0.0ms) rollback transaction
4761
+  (0.0ms) begin transaction
4762
+  (0.0ms) rollback transaction
4763
+  (0.0ms) begin transaction
4764
+  (0.0ms) rollback transaction
4765
+  (0.0ms) begin transaction
4766
+  (0.0ms) rollback transaction
4767
+  (0.0ms) begin transaction
4768
+  (0.0ms) rollback transaction
4769
+  (0.0ms) begin transaction
4770
+  (0.0ms) rollback transaction
4771
+  (0.0ms) begin transaction
4772
+  (0.0ms) rollback transaction
4773
+  (0.1ms) begin transaction
4774
+  (0.1ms) rollback transaction
4775
+  (0.0ms) begin transaction
4776
+  (0.1ms) rollback transaction
4777
+  (0.0ms) begin transaction
4778
+  (0.0ms) rollback transaction
4779
+  (0.0ms) begin transaction
4780
+  (0.1ms) rollback transaction
4781
+  (0.0ms) begin transaction
4782
+  (0.0ms) rollback transaction
4783
+  (0.0ms) begin transaction
4784
+  (0.0ms) rollback transaction
4785
+  (0.1ms) begin transaction
4786
+  (0.0ms) rollback transaction
4787
+  (0.0ms) begin transaction
4788
+  (0.0ms) rollback transaction
4789
+  (0.0ms) begin transaction
4790
+  (0.0ms) rollback transaction
4791
+  (0.0ms) begin transaction
4792
+  (0.0ms) rollback transaction
4793
+  (0.0ms) begin transaction
4794
+  (0.0ms) rollback transaction
4795
+  (0.0ms) begin transaction
4796
+  (0.0ms) rollback transaction
4797
+  (0.1ms) begin transaction
4798
+  (0.0ms) rollback transaction
4799
+  (0.0ms) begin transaction
4800
+  (0.1ms) rollback transaction
4801
+  (0.0ms) begin transaction
4802
+  (0.0ms) rollback transaction
4803
+  (0.0ms) begin transaction
4804
+  (0.1ms) rollback transaction
4805
+  (0.0ms) begin transaction
4806
+  (0.0ms) rollback transaction
4807
+  (0.0ms) begin transaction
4808
+  (0.0ms) rollback transaction
4809
+  (0.1ms) begin transaction
4810
+  (0.0ms) rollback transaction
4811
+  (0.0ms) begin transaction
4812
+  (0.0ms) rollback transaction
4813
+  (0.0ms) begin transaction
4814
+  (0.0ms) rollback transaction
4815
+  (0.0ms) begin transaction
4816
+  (0.0ms) rollback transaction
4817
+  (0.0ms) begin transaction
4818
+  (0.0ms) rollback transaction
4819
+  (0.0ms) begin transaction
4820
+  (0.0ms) rollback transaction
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bootstrap_validator_rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.0
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - huynhquancam
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-07-30 00:00:00.000000000 Z
11
+ date: 2014-07-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bootstrap_form