activetrail 0.1.4 → 0.1.5

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 953068b4c1c421f04cbdcfa3a7fbfe7749c797b9
4
- data.tar.gz: 0691b936cf18bbcef1e1f8e7d9250208092e32af
3
+ metadata.gz: 7717788e5846a1f404130db6e0caaa80b5c2f17b
4
+ data.tar.gz: c00e337288f1b9c612024f0e561b02e828223f3b
5
5
  SHA512:
6
- metadata.gz: 536a3e1c4e7487f9db98938974392686674cb30418691fa2d23a9afed479266be0d7ff1507042916099e2e9360e16abe14c24bcc2a77352070d8a5c3386ed67e
7
- data.tar.gz: 36faa959ace1a79d488d52d357d66366003bddb1e77564725a160980483de9fdb2928af6d3783921c96e9e253005c8385862840f15b2c6814fea72c832b870a6
6
+ metadata.gz: 955d9266d8e65606459e770622d55b1ef64ab09abf2e2c1a9842c17878a4f6a34338dc60d9689f9a220254393fbeb2e03519828f1c5d3093ca6c79180ad5b47c
7
+ data.tar.gz: 3adbb9c2187a625474c92976f081f2343425fb8d709d520090ee2d47ea59a32966375d17b7c47053f2a0f1f09667e39e9f0915b05a6a7d02934b594e077a9e85
@@ -2,6 +2,7 @@ require 'activeadmin'
2
2
  require "active_trail/version"
3
3
  require "active_trail/controller"
4
4
  require "active_trail/active_admin/filters/view_helper"
5
+ require "active_trail/reform/nested_form"
5
6
 
6
7
  module ActiveTrail
7
8
  end
@@ -0,0 +1,43 @@
1
+ module ActiveTrail
2
+ module Reform
3
+ module NestedForm
4
+ extend ActiveSupport::Concern
5
+
6
+ included do
7
+ property :id, virtual: true
8
+ property :_destroy, virtual: true
9
+ @reject_field = []
10
+ end
11
+
12
+ def sync_hash(options)
13
+ if fields._destroy == '1' || reject_fields?
14
+ model.mark_for_destruction
15
+ end
16
+ super(options)
17
+ end
18
+
19
+ def new_record?
20
+ model.new_record?
21
+ end
22
+
23
+ def marked_for_destruction?
24
+ model.marked_for_destruction?
25
+ end
26
+
27
+ def reject_fields?
28
+ self.class.reject_field.any? { |f| fields[f].blank? }
29
+ end
30
+
31
+ class_methods do
32
+ def reject_if_blank(field)
33
+ @reject_field << field
34
+ end
35
+
36
+ def reject_field
37
+ @reject_field
38
+ end
39
+ end
40
+
41
+ end
42
+ end
43
+ end
@@ -1,3 +1,3 @@
1
1
  module ActiveTrail
2
- VERSION = "0.1.4"
2
+ VERSION = "0.1.5"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: activetrail
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
4
+ version: 0.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Celso Fernandes
@@ -230,6 +230,7 @@ files:
230
230
  - lib/active_trail.rb
231
231
  - lib/active_trail/active_admin/filters/view_helper.rb
232
232
  - lib/active_trail/controller.rb
233
+ - lib/active_trail/reform/nested_form.rb
233
234
  - lib/active_trail/version.rb
234
235
  - lib/activetrail.rb
235
236
  homepage: https://github.com/fernandes/activetrail