effective_resources 1.3.0 → 1.3.1

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
  SHA256:
3
- metadata.gz: 62a13e49dcaa1728b9d2e692effb9317025f50ee43c94c4bdfba755a41b6f934
4
- data.tar.gz: 12ae76b6b3036eeb8b4d96eb537db5de68549ca79d45430a98cde565454d58ae
3
+ metadata.gz: b6df84b754524ec505a90063610dcff9af6e4e24e0cb2e0ada087d5420dbe4fe
4
+ data.tar.gz: fc0be89c03c109066c49f87778eb85ba2ac0a38309f72bb2f668e8e4bcc1201a
5
5
  SHA512:
6
- metadata.gz: e34e82481d6186e20c200a24eb76db93b5c08e5f9bd2bc9a2c5910b22f30f543bdc1a742c009767e2adbe894dd5cc73b037500faa57408be0bf898e6890dd348
7
- data.tar.gz: ee8fc48132ea61fa5d0b4a5851c35e35578dd1b35bdb739ed48d8c1a3a191737a116ec1a49157d3c5e59e34f80553ea59eaf16be7a8105f15a00cd7bf72c51dc
6
+ metadata.gz: 339825fdc0ed4abb28094c5fe83e4f2dd2fa426447f8f1ee3933e909f58b4600958e647dae712dbd47fb7aed155af7eae027f0dfb61ace74418535691de463f0
7
+ data.tar.gz: 7b4b5ad7565dd0ea09728af5d2769fa6ce51a0ed7c4e6c7c68d594a66861e975cb23af87b3334d5481cd984c0e62c8bd10ef47b6b49f4c56de1fd4bdc758f0fe
@@ -68,7 +68,7 @@ module EffectiveResourcesHelper
68
68
  partial = atts[:partial]
69
69
  spacer_template = locals[:spacer_template]
70
70
 
71
- effective_resource = (atts[:effective_resource] || find_effective_resource)
71
+ effective_resource = (atts[:effective_resource] || find_effective_resource(resource))
72
72
  namespace = atts[:namespace] || (effective_resource.namespace.to_sym if effective_resource.namespace)
73
73
 
74
74
  # Assign actions
@@ -55,8 +55,19 @@ module EffectiveResourcesPrivateHelper
55
55
  end
56
56
  end
57
57
 
58
- def find_effective_resource
58
+ def find_effective_resource(resource = nil)
59
59
  @_effective_resource ||= (controller.respond_to?(:effective_resource) ? controller.effective_resource : Effective::Resource.new(controller_path))
60
+
61
+ # We might be calling this on a sub resource of the same page.
62
+ if resource.present? && @_effective_resource.present?
63
+ resource = Array(resource).first
64
+
65
+ if resource.kind_of?(ActiveRecord::Base) && resource.class != @_effective_resource.klass
66
+ return Effective::Resource.new(resource, namespace: @_effective_resource.namespace)
67
+ end
68
+ end
69
+
70
+ @_effective_resource
60
71
  end
61
72
 
62
73
  end
@@ -65,7 +65,7 @@ module ActsAsArchived
65
65
  scope :unarchived, -> { where(archived: [false, nil]) }
66
66
 
67
67
  effective_resource do
68
- archived :boolean, permitted: false
68
+ archived :boolean, permitted: false
69
69
  end
70
70
 
71
71
  acts_as_archived_options = @acts_as_archived_options
@@ -41,10 +41,6 @@ module EffectiveResources
41
41
  # resources :things, concerns: :acts_as_archived
42
42
  initializer 'effective_resources.routes_concern' do |app|
43
43
  ActionDispatch::Routing::Mapper.include(ActsAsArchived::RoutesConcern)
44
-
45
- # ActiveSupport.on_load :active_record do
46
- # ActionDispatch::Routing::Mapper.include(ActsAsArchived::RoutesConcern)
47
- # end
48
44
  end
49
45
 
50
46
  # Register the flash_messages concern so that it can be called in ActionController
@@ -1,3 +1,3 @@
1
1
  module EffectiveResources
2
- VERSION = '1.3.0'.freeze
2
+ VERSION = '1.3.1'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: effective_resources
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.3.0
4
+ version: 1.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Code and Effect
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-05-17 00:00:00.000000000 Z
11
+ date: 2019-05-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails