effective_resources 1.8.9 → 1.8.14

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: 9509a414f11385f7ea245dd9981a689630cf9266678ff038f96c46fddd79091a
4
- data.tar.gz: abb42db276f35a17a8a1cae9ed5d226d34488f6a06c0ca6096a95a55974a24f8
3
+ metadata.gz: ab19f65ea68338b5a7e21ba0fcfde5199789d1f2937da69f037e0b13762f4b75
4
+ data.tar.gz: 81412df42c0929a1d63a9cc5cb01091800dafaf069d94a714cf5b66bfd15d2a2
5
5
  SHA512:
6
- metadata.gz: e8364de4a198c0e481a8819571b12d8e2092ad1785a1403f8a5c7c4993497f8c4b4e6309582b8661651f0ab95933e36418d67a2dccdb811c74cb9914af49cdd4
7
- data.tar.gz: 68917727e998f65ad44282caa4ceb4810bce58a81c0a6ed66d56760992e840a5a4cdd662d889022e4fae3ff99fad488a4d44603604d1c986344bf42cf45c91c4
6
+ metadata.gz: ea5c34e0c690b684ddf2ef226fea52b6ee082bfd7cf58e7327380a5218df8c0aae53e05eceac92c630001a96d2548be42573653c2f3921f6a46e023d256abcda
7
+ data.tar.gz: 2d512658fc38f725ab4f0e3d6f208f76cd1613190747baf66601fb3482b2107198159d06c583413a01aec87feeaf7bd90cc9cc42d8f394bb575899732921c165
@@ -96,6 +96,10 @@ module Effective
96
96
  effective_resource.klass
97
97
  end
98
98
 
99
+ def resource_human_name
100
+ effective_resource.human_name
101
+ end
102
+
99
103
  def resource_plural_name # 'things'
100
104
  effective_resource.plural_name
101
105
  end
@@ -15,7 +15,7 @@ module Effective
15
15
 
16
16
  format.js do
17
17
  flash[:success] ||= resource_flash(:success, resource, action)
18
- redirect_to(resource_redirect_path(resource, action))
18
+ render(action, locals: { remote_form_redirect: resource_redirect_path(resource, action)}) # action.js.erb
19
19
  end
20
20
  end
21
21
  elsif template_present?(action)
@@ -27,7 +27,6 @@ module Effective
27
27
 
28
28
  format.js do
29
29
  flash.now[:success] ||= resource_flash(:success, resource, action)
30
- #reload_resource unless action == :destroy # Removed.
31
30
  render(action) # action.js.erb
32
31
  end
33
32
  end
@@ -96,9 +95,7 @@ module Effective
96
95
  end
97
96
 
98
97
  def template_present?(action)
99
- #lookup_context.template_exists?("#{action}.#{request.format.symbol.to_s.sub('json', 'js').presence || 'html'}", _prefixes)
100
-
101
- formats = [request.format.symbol.to_s.sub('json', 'js').presence || 'html']
98
+ formats = [(request.format.symbol.to_s.sub('json', 'js').presence || 'html').to_sym]
102
99
  lookup_context.template_exists?(action, _prefixes, formats: formats)
103
100
  end
104
101
 
@@ -9,9 +9,9 @@ module Effective
9
9
  raise 'expected an ActiveRecord resource' unless (name || resource.class.respond_to?(:model_name))
10
10
 
11
11
  name ||= if resource.respond_to?(:destroyed?) && resource.destroyed?
12
- resource.class.model_name.to_s.downcase.split('::').last
12
+ resource_human_name
13
13
  else
14
- resource.to_s.presence
14
+ resource.to_s.presence || resource_human_name
15
15
  end
16
16
 
17
17
  "Successfully #{action_verb(action)} #{name || 'resource'}".html_safe
@@ -27,9 +27,9 @@ module Effective
27
27
  messages = flash_errors(resource, e: e)
28
28
 
29
29
  name ||= if resource.respond_to?(:destroyed?) && resource.destroyed?
30
- resource.class.model_name.to_s.downcase.split('::').last
30
+ resource_human_name
31
31
  else
32
- resource.to_s.presence
32
+ resource.to_s.presence || resource_human_name
33
33
  end
34
34
 
35
35
  ["Unable to #{action}", (" #{name}" if name), (": #{messages}" if messages)].compact.join.html_safe
@@ -7,7 +7,7 @@ module Effective
7
7
  action ||= resource.respond_to?("#{step}!") ? step : :save
8
8
 
9
9
  if save_resource(resource, action)
10
- flash[:success] = options.delete(:success) || resource_flash(:success, resource, action)
10
+ flash[:success] ||= options.delete(:success) || resource_flash(:success, resource, action)
11
11
 
12
12
  @skip_to ||= next_step
13
13
  @redirect_to ||= resource_wizard_path(resource, @skip_to) if was_new_record
@@ -65,7 +65,7 @@ module ActsAsWizard
65
65
  end
66
66
 
67
67
  def has_completed_step?(step)
68
- wizard_steps[step].present?
68
+ (errors.present? ? wizard_steps_was : wizard_steps)[step].present?
69
69
  end
70
70
 
71
71
  def next_step
@@ -78,8 +78,20 @@ module Effective
78
78
  # acpa/admin/shirts
79
79
  (names.length).downto(1).each do |n|
80
80
  names.combination(n).to_a.each do |pieces|
81
- klass_pieces = pieces.map { |piece| piece.classify } * '::'
82
- klass = klass_pieces.safe_constantize
81
+ klass = begin
82
+ klass_pieces = pieces.map { |piece| piece.classify } * '::'
83
+ klass_pieces.safe_constantize
84
+ end
85
+
86
+ klass ||= if pieces.length > 1
87
+ klass_pieces = ([pieces.first.classify] + pieces[1..-1].map { |piece| piece.classify }) * '::'
88
+ klass_pieces.safe_constantize
89
+ end
90
+
91
+ klass ||= if pieces.length > 1
92
+ klass_pieces = ([pieces.first.classify.pluralize] + pieces[1..-1].map { |piece| piece.classify }) * '::'
93
+ klass_pieces.safe_constantize
94
+ end
83
95
 
84
96
  if klass.present? && klass.class != Module
85
97
  @namespaces ||= (names - pieces)
@@ -31,14 +31,14 @@ module Effective
31
31
  end
32
32
 
33
33
  def route_name_fallbacks
34
- mod = class_name.split('::').first.downcase
34
+ mod = class_name.split('::').first.to_s.downcase
35
35
 
36
36
  matches = [
37
37
  route_name.singularize,
38
38
  [*namespace, plural_name].join('/'),
39
39
  [*namespace, name].join('/'),
40
- [mod, *namespace, plural_name].join('/'),
41
- [mod, *namespace, name].join('/')
40
+ [*mod, *namespace, plural_name].join('/'),
41
+ [*mod, *namespace, name].join('/')
42
42
  ]
43
43
  end
44
44
 
@@ -4,8 +4,8 @@
4
4
  EffectiveForm.remote_form_payload = "<%= j render_resource_form(@resource) %>";
5
5
  EffectiveForm.remote_form_commit = "<%= params[:commit] %>";
6
6
  EffectiveForm.remote_form_flash = <%= raw flash.to_json %>;
7
+ EffectiveForm.remote_form_redirect = "<%= local_assigns[:remote_form_redirect] %>";
7
8
 
8
9
  <% if @resource.respond_to?(:refresh_datatables) && @resource.refresh_datatables.present? %>
9
10
  EffectiveForm.remote_form_refresh_datatables = <%= raw Array(@resource.refresh_datatables).uniq.compact.map(&:to_s) %>;
10
11
  <% end %>
11
-
@@ -4,6 +4,7 @@
4
4
  EffectiveForm.remote_form_payload = '';
5
5
  EffectiveForm.remote_form_commit = "<%= params[:commit] %>";
6
6
  EffectiveForm.remote_form_flash = <%= raw flash.to_json %>;
7
+ EffectiveForm.remote_form_redirect = "<%= local_assigns[:remote_form_redirect] %>";
7
8
 
8
9
  <% if @resource.respond_to?(:refresh_datatables) && @resource.refresh_datatables.present? %>
9
10
  EffectiveForm.remote_form_refresh_datatables = <%= raw Array(@resource.refresh_datatables).uniq.compact.map(&:to_s) %>;
@@ -5,6 +5,10 @@ EffectiveForm.remote_form_payload = "<%= j render_resource_form(@resource, actio
5
5
  EffectiveForm.remote_form_commit = "<%= params[:commit] %>";
6
6
  EffectiveForm.remote_form_flash = <%= raw flash.to_json %>;
7
7
 
8
+ <% if !request.get? %>
9
+ EffectiveForm.remote_form_redirect = "<%= local_assigns[:remote_form_redirect] %>";
10
+ <% end %>
11
+
8
12
  <% if !request.get? && @resource.respond_to?(:refresh_datatables) && @resource.refresh_datatables.present? %>
9
13
  EffectiveForm.remote_form_refresh_datatables = <%= raw Array(@resource.refresh_datatables).uniq.compact.map(&:to_s) %>;
10
14
  <% end %>
@@ -4,6 +4,7 @@
4
4
  EffectiveForm.remote_form_payload = "<%= j render_resource_form(@resource) %>";
5
5
  EffectiveForm.remote_form_commit = "<%= params[:commit] %>";
6
6
  EffectiveForm.remote_form_flash = <%= raw flash.to_json %>;
7
+ EffectiveForm.remote_form_redirect = "<%= raw local_assigns[:remote_form_redirect] %>";
7
8
 
8
9
  <% if @resource.respond_to?(:refresh_datatables) && @resource.refresh_datatables.present? %>
9
10
  EffectiveForm.remote_form_refresh_datatables = <%= raw Array(@resource.refresh_datatables).uniq.compact.map(&:to_s) %>;
@@ -1,3 +1,3 @@
1
1
  module EffectiveResources
2
- VERSION = '1.8.9'.freeze
2
+ VERSION = '1.8.14'.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.9
4
+ version: 1.8.14
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-03-29 00:00:00.000000000 Z
11
+ date: 2021-04-16 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails