effective_resources 1.8.36 → 1.9.1

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: 06f8572e4cacab573ff3121145f120c1844e81af1c35d57d3fa9d42ffd819338
4
- data.tar.gz: c168aa140a18323a17132c25d16edd3fb88329738f63c1a4dcfe7d66bde6ec6d
3
+ metadata.gz: d4e5791f81c07c0f264f6c4d91d4cb3e01c0194577457ae38239cfafd99ae6a6
4
+ data.tar.gz: 5e82bcba8a50e8b9beceffa977241c95000805690f02343aad7ffef7a66d0f97
5
5
  SHA512:
6
- metadata.gz: 5043556b5414776fd0ad50ee9a298cede2ae403da26eb6cbacc4d2ccf418c71db71c22671fc5e52f378d2a0db244dd14ee45ecbf21756edcd468d0b8b22f07f2
7
- data.tar.gz: eb2538b9526d60153db7faa8bd37eee9080001bcf268070ba2b754333213142ec90d98ba3067cb76c643f2eff988cad395d9353bdadc0a1910ed304388626054
6
+ metadata.gz: 14a3dce0969cf7487a9f950a11b8fc8cd696b5dd01253c1d89792ed1c804af08b8ba886ce640e118e5f75e1ab47a6ff500c4dd3feca75ecacc1b3f5e9646e2ec
7
+ data.tar.gz: 72546fd49b52e4da7c713bcadf0179438d2f91fae66d9a99d09f08a35d96a71eb149d107add609b9232dc666af8866482e7f7a5d365d00b0af06af03e06cb2a5
@@ -12,7 +12,13 @@ module Effective
12
12
  @skip_to ||= skip_to_step(resource)
13
13
  @redirect_to ||= resource_wizard_path(resource, @skip_to) if was_new_record
14
14
 
15
- redirect_to(@redirect_to || wizard_path(@skip_to))
15
+ if @redirect_to
16
+ redirect_to(@redirect_to)
17
+ elsif @skip_to
18
+ redirect_to(wizard_path(@skip_to))
19
+ else
20
+ redirect_to_finish_wizard(options, params)
21
+ end
16
22
  else
17
23
  flash.now[:danger] = options.delete(:error) || resource_flash(:danger, resource, action)
18
24
  render_step(wizard_value(step), options)
@@ -1,3 +1,5 @@
1
+ # frozen_sting_literals: true
2
+
1
3
  module Effective
2
4
  module Resources
3
5
  module Forms
@@ -1,3 +1,5 @@
1
+ # frozen_sting_literals: true
2
+
1
3
  module Effective
2
4
  module Resources
3
5
  module Generator
@@ -26,6 +28,23 @@ module Effective
26
28
  Array(namespaces).map { |name| name.to_s.classify }.join('::') + '::' + class_name.gsub('::', '')
27
29
  end
28
30
 
31
+ # Tenants
32
+ def tenant_controller_path
33
+ (Tenant.module_name.downcase + '/' + controller_path) if defined?(Tenant)
34
+ end
35
+
36
+ def tenant_namespaced_class_name
37
+ (Tenant.module_name + '::' + namespaced_class_name) if defined?(Tenant)
38
+ end
39
+
40
+ def tenant_namespaced_module_name
41
+ (Tenant.module_name + '::' + namespaced_module_name) if defined?(Tenant)
42
+ end
43
+
44
+ def tenant_class_name
45
+ (Tenant.module_name + '::' + class_name) if defined?(Tenant)
46
+ end
47
+
29
48
  end
30
49
  end
31
50
  end
@@ -1,3 +1,5 @@
1
+ # frozen_sting_literals: true
2
+
1
3
  module Effective
2
4
  module Resources
3
5
  module Init
@@ -7,28 +7,11 @@ module Effective
7
7
  end
8
8
 
9
9
  def datatable_klass
10
- if defined?(EffectiveDatatables)
11
- "#{controller_path.classify.pluralize}Datatable".safe_constantize ||
12
- "#{controller_path.classify}Datatable".safe_constantize ||
13
- "#{namespaced_class_name.pluralize}Datatable".safe_constantize ||
14
- "#{namespaced_module_name.pluralize}Datatable".safe_constantize ||
15
- "#{namespaced_class_name.pluralize.gsub('::', '')}Datatable".safe_constantize ||
16
- "#{class_name.pluralize.camelize}Datatable".safe_constantize ||
17
- "#{class_name.pluralize.camelize.gsub('::', '')}Datatable".safe_constantize ||
18
- "#{name.pluralize.camelize}Datatable".safe_constantize ||
19
- "#{name.pluralize.camelize.gsub('::', '')}Datatable".safe_constantize ||
20
- "Effective::Datatables::#{namespaced_class_name.pluralize}".safe_constantize ||
21
- "Effective::Datatables::#{class_name.pluralize.camelize}".safe_constantize ||
22
- "Effective::Datatables::#{name.pluralize.camelize}".safe_constantize
23
- end
10
+ (find_tenant_datatable_klass || find_datatable_klass) if defined?(EffectiveDatatables)
24
11
  end
25
12
 
26
13
  def controller_klass
27
- "#{namespaced_class_name.pluralize}Controller".safe_constantize ||
28
- "#{class_name.pluralize.classify}Controller".safe_constantize ||
29
- "#{name.pluralize.classify}Controller".safe_constantize ||
30
- "#{initialized_name.to_s.classify.pluralize}Controller".safe_constantize ||
31
- "#{initialized_name.to_s.classify}Controller".safe_constantize
14
+ find_controller_klass
32
15
  end
33
16
 
34
17
  def active_record?
@@ -39,6 +22,44 @@ module Effective
39
22
  klass && klass.ancestors.include?(ActiveModel::Model)
40
23
  end
41
24
 
25
+ private
26
+
27
+ def find_datatable_klass
28
+ "::#{controller_path.classify.pluralize}Datatable".safe_constantize ||
29
+ "::#{controller_path.classify}Datatable".safe_constantize ||
30
+ "::#{namespaced_class_name.pluralize}Datatable".safe_constantize ||
31
+ "::#{namespaced_module_name.pluralize}Datatable".safe_constantize ||
32
+ "::#{namespaced_class_name.pluralize.gsub('::', '')}Datatable".safe_constantize ||
33
+ "::#{class_name.pluralize.camelize}Datatable".safe_constantize ||
34
+ "::#{class_name.pluralize.camelize.gsub('::', '')}Datatable".safe_constantize ||
35
+ "::#{name.pluralize.camelize}Datatable".safe_constantize ||
36
+ "::#{name.pluralize.camelize.gsub('::', '')}Datatable".safe_constantize ||
37
+ "::Effective::Datatables::#{namespaced_class_name.pluralize}".safe_constantize ||
38
+ "::Effective::Datatables::#{class_name.pluralize.camelize}".safe_constantize ||
39
+ "::Effective::Datatables::#{name.pluralize.camelize}".safe_constantize
40
+ end
41
+
42
+ def find_tenant_datatable_klass
43
+ return unless defined?(Tenant)
44
+
45
+ "::#{tenant_controller_path.classify.pluralize}Datatable".safe_constantize ||
46
+ "::#{tenant_controller_path.classify}Datatable".safe_constantize ||
47
+ "::#{tenant_namespaced_class_name.pluralize}Datatable".safe_constantize ||
48
+
49
+ "::#{tenant_namespaced_module_name.pluralize}Datatable".safe_constantize ||
50
+ "::#{tenant_namespaced_class_name.pluralize.gsub('::', '')}Datatable".safe_constantize ||
51
+ "::#{tenant_class_name.pluralize.camelize}Datatable".safe_constantize ||
52
+ "::#{tenant_class_name.pluralize.camelize.gsub('::', '')}Datatable".safe_constantize
53
+ end
54
+
55
+ def find_controller_klass
56
+ "#{namespaced_class_name.pluralize}Controller".safe_constantize ||
57
+ "#{class_name.pluralize.classify}Controller".safe_constantize ||
58
+ "#{name.pluralize.classify}Controller".safe_constantize ||
59
+ "#{initialized_name.to_s.classify.pluralize}Controller".safe_constantize ||
60
+ "#{initialized_name.to_s.classify}Controller".safe_constantize
61
+ end
62
+
42
63
  end
43
64
  end
44
65
  end
@@ -8,22 +8,23 @@ module EffectiveGem
8
8
 
9
9
  config_keys.each do |key|
10
10
  self.singleton_class.define_method(key) { config()[key] }
11
+ self.singleton_class.define_method("#{key}=") { |value| config()[key] = value }
11
12
  end
12
13
  end
13
14
 
14
15
  module ClassMethods
15
16
  def config(namespace = nil)
16
17
  namespace ||= Tenant.current if defined?(Tenant)
17
- @config.dig(namespace) || @config
18
+ @config.dig(namespace) || @config.dig(:effective)
18
19
  end
19
20
 
20
21
  def setup(namespace = nil, &block)
21
22
  @config ||= ActiveSupport::OrderedOptions.new
23
+
22
24
  namespace ||= Tenant.current if defined?(Tenant)
25
+ namespace ||= :effective
23
26
 
24
- if namespace
25
- @config[namespace] ||= ActiveSupport::OrderedOptions.new
26
- end
27
+ @config[namespace] ||= ActiveSupport::OrderedOptions.new
27
28
 
28
29
  yield(config(namespace))
29
30
 
@@ -1,3 +1,3 @@
1
1
  module EffectiveResources
2
- VERSION = '1.8.36'.freeze
2
+ VERSION = '1.9.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.8.36
4
+ version: 1.9.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: 2021-10-13 00:00:00.000000000 Z
11
+ date: 2021-11-04 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails