forest_liana 1.7.6 → 1.7.7

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: 0df8e02deb4f4658a5ea5a25fc0f232ac70456de
4
- data.tar.gz: 7572acc016113e289354bf72550bed7c53c8a2f6
3
+ metadata.gz: c63c52a683c93517a22822d4e3843a04ae2f2ea6
4
+ data.tar.gz: fa645bef5cb90dd0c5c0b6f526475637e9ada0cd
5
5
  SHA512:
6
- metadata.gz: 290e84138c3b8a4ca3aa3f6bd334df6f8fe4650d776b075546d095d741f678e565a17e8d395094d880705446d95d8bf78e609fbd3f15820c62e8573e8db21c74
7
- data.tar.gz: 57f64110af477a4af2e35045d9e41b1a95ee10b9276e962d0e7ab161a13c49a0550ef3b583fedc69a47c220035ef1bd37834ab9da160fd02ad33f46127c48bc4
6
+ metadata.gz: a7011c1496907b1c996d1dd4657289d1ba6aa8d6b5b5fa40fe05d8a4d35b8ac0b41b746caba09b57a312b3b7117cb01035dc7746ff97c49e89ff7fe99b0ade8e
7
+ data.tar.gz: 3c972c4d951bb5e055305a5aaa26ea0d0f4be985db3bb2c3c09dcb371e6ddde7152bb3412d891ef2d0fd75bad68677f247c1ec550fac3bd64ccd165dc6d162c5
@@ -0,0 +1,12 @@
1
+ module ForestLiana
2
+ class BaseGetter
3
+ def get_resource
4
+ use_act_as_paranoid = @resource.instance_methods
5
+ .include? :really_destroyed?
6
+
7
+ # NOTICE: Do not unscope with the paranoia gem to prevent the retrieval
8
+ # of deleted records.
9
+ use_act_as_paranoid ? @resource : @resource.unscoped
10
+ end
11
+ end
12
+ end
@@ -1,5 +1,5 @@
1
1
  module ForestLiana
2
- class HasManyGetter
2
+ class HasManyGetter < BaseGetter
3
3
  def initialize(resource, association, params)
4
4
  @resource = resource
5
5
  @association = association
@@ -8,8 +8,7 @@ module ForestLiana
8
8
  end
9
9
 
10
10
  def perform
11
- @records = @resource
12
- .unscoped
11
+ @records = get_resource()
13
12
  .find(@params[:id])
14
13
  .send(@params[:association_name])
15
14
  .eager_load(includes)
@@ -25,7 +25,7 @@ module ForestLiana
25
25
  end
26
26
 
27
27
  def perform
28
- value = @resource.unscoped.eager_load(includes)
28
+ value = get_resource().eager_load(includes)
29
29
 
30
30
  if @params[:filterType] && @params[:filters]
31
31
  conditions = []
@@ -5,7 +5,6 @@ module ForestLiana
5
5
  def perform
6
6
  if @params[:group_by_field]
7
7
  timezone_offset = @params[:timezone].to_i
8
- value = @resource
9
8
  conditions = []
10
9
  filter_operator = ''
11
10
 
@@ -19,8 +18,7 @@ module ForestLiana
19
18
  end
20
19
  end
21
20
 
22
- value = value
23
- .unscoped
21
+ value = get_resource()
24
22
  .eager_load(includes)
25
23
  .where(conditions.join(filter_operator))
26
24
  .group(group_by_field)
@@ -1,5 +1,5 @@
1
1
  module ForestLiana
2
- class ResourceGetter
2
+ class ResourceGetter < BaseGetter
3
3
  attr_accessor :record
4
4
 
5
5
  def initialize(resource, params)
@@ -8,7 +8,7 @@ module ForestLiana
8
8
  end
9
9
 
10
10
  def perform
11
- @record = @resource.eager_load(includes).find(@params[:id])
11
+ @record = get_resource().eager_load(includes).find(@params[:id])
12
12
  end
13
13
 
14
14
  def includes
@@ -1,5 +1,5 @@
1
1
  module ForestLiana
2
- class ResourcesGetter
2
+ class ResourcesGetter < BaseGetter
3
3
  def initialize(resource, params)
4
4
  @resource = resource
5
5
  @params = params
@@ -10,7 +10,7 @@ module ForestLiana
10
10
  end
11
11
 
12
12
  def perform
13
- @records = @resource.unscoped
13
+ @records = get_resource
14
14
 
15
15
  if @segment && @segment.scope
16
16
  @records = @records.send(@segment.scope)
@@ -1,5 +1,5 @@
1
1
  module ForestLiana
2
- class StatGetter
2
+ class StatGetter < BaseGetter
3
3
  attr_accessor :record
4
4
 
5
5
  def initialize(resource, params)
@@ -4,8 +4,8 @@ module ForestLiana
4
4
 
5
5
  def perform
6
6
  return if @params[:aggregate].blank?
7
- valueCurrent = @resource.unscoped.eager_load(includes)
8
- valuePrevious = @resource.unscoped.eager_load(includes)
7
+ valueCurrent = get_resource().eager_load(includes)
8
+ valuePrevious = get_resource().eager_load(includes)
9
9
  filter_date_interval = false
10
10
 
11
11
  if @params[:filterType] && @params[:filters]
@@ -1,3 +1,3 @@
1
1
  module ForestLiana
2
- VERSION = "1.7.6"
2
+ VERSION = "1.7.7"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: forest_liana
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.7.6
4
+ version: 1.7.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sandro Munda
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-08-24 00:00:00.000000000 Z
11
+ date: 2017-08-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -168,6 +168,7 @@ files:
168
168
  - app/serializers/forest_liana/stripe_payment_serializer.rb
169
169
  - app/serializers/forest_liana/stripe_subscription_serializer.rb
170
170
  - app/services/forest_liana/allowed_users_getter.rb
171
+ - app/services/forest_liana/base_getter.rb
171
172
  - app/services/forest_liana/belongs_to_updater.rb
172
173
  - app/services/forest_liana/controller_factory.rb
173
174
  - app/services/forest_liana/has_many_associator.rb