effective_resources 1.9.7 → 1.9.11

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
  SHA256:
3
- metadata.gz: 1054a07a0d8e4b48dd20bdf6c6f0acd310e67b943cbeb001b6414538fd723397
4
- data.tar.gz: 5b042ad47a6827741163a6fffd9c38c2b9b67b175acc8d7927153e08055a16aa
3
+ metadata.gz: 612fe4c620f16ea85250d0d20afff1cc730bd9608565aa2eae61227c2e16c561
4
+ data.tar.gz: 44163d5acae4f3092a7d1c5b1af45f41a6d009035cd5fd3756139105fd99e15d
5
5
  SHA512:
6
- metadata.gz: b972f9e99251ef240776847b2235c8359be6c7208a1854caa52f72ab87bf0e7b8cfd269db1f27b7893d75ca8eeb489c20990c9bce567cd9fe8e4e23c4d9f8d7c
7
- data.tar.gz: d455d59e0bcfd461b613b46710bfa44acb452171a960bb1d5444d009ccb93c95c105dcc66bd925ee8745971bfeb0d96635f774258f121cad3ecf2aab0adcdc40
6
+ metadata.gz: 01e8d523944f484b841a02d5ccff5ad07b1fd3ddf2f57179a965eed0965125b98e9210589876df52f630195b2eb100a7b921970d364ddf2c0aad59c289e50cec
7
+ data.tar.gz: 026427c9bf9876675d9dfaa99e5b63c5aafa93ca62f0aaa224d5d8446b823248ef6d9f083405e8900417517c1a8fcbacbbf6c8ae83a657fdf98f1fa653f8ea16
@@ -1,11 +1,9 @@
1
- # frozen_sting_literals: true
1
+ # frozen_string_literal: true
2
2
 
3
3
  module EffectiveResourcesPrivateHelper
4
4
  REPLACE_PAGE_ACTIONS = {'update' => :edit, 'create' => :new}
5
5
  BLACKLIST = [:default, :only, :except, :if, :unless, :redirect, :success, :danger, :klass]
6
6
 
7
- DATA_CONFIRM = 'data-confirm'
8
-
9
7
  def permitted_resource_actions(resource, actions)
10
8
  page_action = REPLACE_PAGE_ACTIONS[params[:action]] || params[:action].try(:to_sym) || :save
11
9
  executor = Effective::ResourceExec.new(self, resource)
@@ -38,8 +36,8 @@ module EffectiveResourcesPrivateHelper
38
36
  end
39
37
 
40
38
  # Replace resource name in any token strings
41
- if opts[DATA_CONFIRM].present? && opts[DATA_CONFIRM].include?('@resource'.freeze)
42
- opts[DATA_CONFIRM] = opts[DATA_CONFIRM].gsub('@resource'.freeze, resource_to_s)
39
+ if opts['data-confirm'].present? && opts['data-confirm'].include?('@resource'.freeze)
40
+ opts['data-confirm'] = opts['data-confirm'].gsub('@resource'.freeze, resource_to_s)
43
41
  end
44
42
 
45
43
  # Assign class
@@ -125,16 +125,16 @@ module ActsAsStatused
125
125
  define_method("#{sym}?") { status == sym.to_s }
126
126
  define_method("was_#{sym}?") { send("#{sym}_at").present? }
127
127
 
128
- unless has_attribute?("#{sym}_at")
128
+ #unless has_attribute?("#{sym}_at")
129
129
  define_method("#{sym}_at") { status_steps["#{sym}_at".to_sym] }
130
130
  define_method("#{sym}_at=") { |value| status_steps["#{sym}_at".to_sym] = value }
131
- end
131
+ #end
132
132
 
133
- unless has_attribute?("#{sym}_by_id")
133
+ #unless has_attribute?("#{sym}_by_id")
134
134
  define_method("#{sym}_by") { acts_as_statused_by_user(sym) }
135
135
  define_method("#{sym}_by_id") { status_steps["#{sym}_by".to_sym] }
136
136
  define_method("#{sym}_by_id=") { |value| status_steps["#{sym}_by".to_sym] = value }
137
- end
137
+ #end
138
138
 
139
139
  # approved!
140
140
  define_method("#{sym}!") do |atts = {}|
@@ -180,4 +180,3 @@ module ActsAsStatused
180
180
  end
181
181
 
182
182
  end
183
-
@@ -160,9 +160,7 @@ module EffectiveDeviseUser
160
160
  args.last[:tenant] ||= tenant
161
161
  end
162
162
 
163
- wait = (5 if notification == :invitation_instructions && !Rails.env.test?)
164
-
165
- devise_mailer.send(notification, self, *args).deliver_later(wait: wait)
163
+ devise_mailer.send(notification, self, *args).deliver_now
166
164
  end
167
165
 
168
166
  end
@@ -14,9 +14,7 @@ module Effective
14
14
 
15
15
  def route_engines
16
16
  if tenant? && Tenant.current.present?
17
- [Rails.application, Tenant.Engine] + Rails::Engine.subclasses.reverse.reject do |klass|
18
- tenant_engines_blacklist.any? { |name| klass.name.start_with?(name) }
19
- end
17
+ [Rails.application, Tenant.Engine] + (Rails::Engine.subclasses.reverse - Tenant.route_engines)
20
18
  else
21
19
  [Rails.application] + Rails::Engine.subclasses.reverse
22
20
  end
@@ -1,7 +1,8 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Effective
2
4
  module Resources
3
5
  module Associations
4
-
5
6
  def macros
6
7
  [:belongs_to, :belongs_to_polymorphic, :has_many, :has_and_belongs_to_many, :has_one]
7
8
  end
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Effective
2
4
  module Resources
3
5
  module Attributes
@@ -1,4 +1,4 @@
1
- # frozen_sting_literals: true
1
+ # frozen_string_literal: true
2
2
 
3
3
  module Effective
4
4
  module Resources
@@ -1,4 +1,4 @@
1
- # frozen_sting_literals: true
1
+ # frozen_string_literal: true
2
2
 
3
3
  module Effective
4
4
  module Resources
@@ -1,4 +1,4 @@
1
- # frozen_sting_literals: true
1
+ # frozen_string_literal: true
2
2
 
3
3
  module Effective
4
4
  module Resources
@@ -1,4 +1,4 @@
1
- # frozen_sting_literals: true
1
+ # frozen_string_literal: true
2
2
 
3
3
  module Effective
4
4
  module Resources
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Effective
2
4
  module Resources
3
5
  module Instance
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Effective
2
4
  module Resources
3
5
  module Klass
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Effective
2
4
  module Resources
3
5
  module Model
@@ -18,7 +20,3 @@ module Effective
18
20
  end
19
21
  end
20
22
  end
21
-
22
-
23
-
24
-
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Effective
2
4
  module Resources
3
5
  module Naming
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Effective
2
4
  module Resources
3
5
  module Relation
@@ -1,10 +1,13 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Effective
2
4
  module Resources
3
5
  module Sql
4
-
5
6
  def column(name)
6
7
  name = name.to_s
7
- columns.find { |col| col.name == name || (belongs_to(name) && col.name == belongs_to(name).foreign_key) }
8
+ bt = belongs_to(name)
9
+
10
+ columns.find { |col| col.name == name || (bt && col.name == bt.foreign_key) }
8
11
  end
9
12
 
10
13
  def columns
@@ -32,17 +35,18 @@ module Effective
32
35
  end
33
36
 
34
37
  def sql_direction(name)
35
- name.to_s.downcase == 'desc' ? 'DESC'.freeze : 'ASC'.freeze
38
+ name.to_s.downcase == 'desc' ? 'DESC' : 'ASC'
36
39
  end
37
40
 
38
41
  # This is for EffectiveDatatables (col as:)
39
42
  # Might be :name, or 'users.name'
40
43
  def sql_type(name)
41
- name = name.to_s.split('.').first
44
+ name = (name.kind_of?(String) ? name.split('.').first : name.to_s)
42
45
 
43
46
  return :belongs_to if belongs_to(name)
44
47
 
45
- column = column(name)
48
+ # Skip using columns() cause we dont need to check for belongs_to
49
+ column = columns.find { |col| col.name == name }
46
50
 
47
51
  if column.present?
48
52
  column.type
@@ -105,13 +109,11 @@ module Effective
105
109
  end
106
110
 
107
111
  def postgres?
108
- return @postgres unless @postgres.nil?
109
- @postgres ||= (klass.connection.kind_of?(ActiveRecord::ConnectionAdapters::PostgreSQLAdapter) rescue false)
112
+ klass.connection.adapter_name == 'PostgreSQL'
110
113
  end
111
114
 
112
115
  def mysql?
113
- return @mysql unless @mysql.nil?
114
- @mysql ||= (klass.connection.kind_of?(ActiveRecord::ConnectionAdapters::Mysql2Adapter) rescue false)
116
+ klass.connection.adapter_name == 'MySQL'
115
117
  end
116
118
 
117
119
  def is_null(sql_column)
@@ -1,3 +1,5 @@
1
+ # frozen_string_literal: true
2
+
1
3
  module Effective
2
4
  module Resources
3
5
  module Tenants
@@ -15,10 +17,6 @@ module Effective
15
17
  name if Rails.application.config.tenants[name].present?
16
18
  end
17
19
 
18
- def tenant_engines_blacklist
19
- return [] unless tenant?
20
- Rails.application.config.tenants.map { |name, _| name.to_s.classify }
21
- end
22
20
  end
23
21
  end
24
22
  end
@@ -1,3 +1,3 @@
1
1
  module EffectiveResources
2
- VERSION = '1.9.7'.freeze
2
+ VERSION = '1.9.11'.freeze
3
3
  end
@@ -62,6 +62,21 @@ module EffectiveResources
62
62
  connection.transaction { yield }
63
63
  end
64
64
 
65
+ # Used by streaming CSV export in datatables
66
+ def self.with_resource_enumerator(&block)
67
+ raise('expected a block') unless block_given?
68
+
69
+ tenant = Tenant.current if defined?(Tenant)
70
+
71
+ if tenant
72
+ Enumerator.new do |enumerator|
73
+ Tenant.as(tenant) { yield(enumerator) }
74
+ end
75
+ else
76
+ Enumerator.new { |enumerator| yield(enumerator) }
77
+ end
78
+ end
79
+
65
80
  def self.truthy?(value)
66
81
  if defined?(::ActiveRecord::ConnectionAdapters::Column::TRUE_VALUES) # Rails <5
67
82
  ::ActiveRecord::ConnectionAdapters::Column::TRUE_VALUES.include?(value)
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.9.7
4
+ version: 1.9.11
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: 2021-11-28 00:00:00.000000000 Z
11
+ date: 2021-12-15 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails