effective_resources 2.6.1 → 2.7.0

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: b05139233c80055128a85d5d530093dce5298a30f69bf22bf4ac52e6e8edea01
4
- data.tar.gz: 262b94abbdef2122707827ec1b838885b13f05689d3c274eacde638bebdbffc4
3
+ metadata.gz: 9df1eeb6569ea8687942cd36080e692b9e9f5d7e77fbc4bf2e407c5663e50837
4
+ data.tar.gz: bc8c7dbedd4b7f42535b9f80496cb6be2de1afb7b854ddee9ff7bee8471c3a90
5
5
  SHA512:
6
- metadata.gz: a4a5755f86f90fd14436bbce9e4595381c7159042b4fa671171ca7c4d7a52456653e0a0acc9307f655bc3c14d840f2b188907d2266dc937fb40f807bf88b64a8
7
- data.tar.gz: c81a56fbc58c5759239a1f6c7de59ccc3b0efe43bc1fa5a2332867602b029330a6820f8bc485566addd11abc7323f13036ae8d075b6bc1c0f027ac54e799264e
6
+ metadata.gz: 4c4bd92d1125a2cbfa3d29ce5f5dd18700c02a17e8779ed8ba1b0efd838fc9fe3638cd79efbb747c7df9edae3d061e2dd9497bdaf4a20a37ac1220df830d765b
7
+ data.tar.gz: fd57888df8906448c0c9513aeadf9e661e23830a15444d0b10d3935f31cd40049dac6351273146b11e5d0101d971d1d432276b56ad33d07439938537f92b6e1f
@@ -20,6 +20,21 @@ module Effective
20
20
  params.require(permitted_name).permit(*permitted_params)
21
21
  end
22
22
 
23
+ # Permit all params for the admin namespace
24
+ def resource_admin_permitted_params
25
+ raise 'expected resource class to have effective_resource do .. end' if effective_resource.model.blank?
26
+ raise 'expected to be called only on admin namespace' unless effective_resource.namespaces == ['admin']
27
+
28
+ permitted_name = params.key?(effective_resource.name) ? effective_resource.name : effective_resource.resource_name
29
+
30
+ if Rails.env.development?
31
+ Rails.logger.info "Effective::CrudController#resource_admin_permitted_params:"
32
+ Rails.logger.info "params.require(:#{permitted_name}).permit!"
33
+ end
34
+
35
+ params.require(permitted_name).permit!
36
+ end
37
+
23
38
  # If the resource is ActiveModel, just permit all
24
39
  # This can still be overridden by a controller
25
40
  def resource_active_model_permitted_params
@@ -141,6 +141,7 @@ module Effective
141
141
  end
142
142
 
143
143
  # Built in ones
144
+ return 'resource_admin_permitted_params' if effective_resource.model.present? && effective_resource.namespaces == ['admin']
144
145
  return 'resource_permitted_params' if effective_resource.model.present?
145
146
  return 'resource_active_model_permitted_params' if effective_resource.active_model?
146
147
 
@@ -63,8 +63,8 @@ module ActsAsSlugged
63
63
  slug = "#{slug}-#{self.class.name.demodulize.parameterize}"
64
64
  end
65
65
 
66
- if (count = self.class.where('slug ILIKE ?', "#{slug}%").count) > 0
67
- uid = (Time.zone.now.to_i - 1_500_000_000).to_s(36) # This is a unique 6 digit url safe string
66
+ if (count = self.class.where(slug: slug).count) > 0
67
+ uid = (Time.zone.now.to_i - 1_600_000_000).to_s(16) # This is a unique 7-8 digit url safe hex string
68
68
  slug = "#{slug}-#{uid}"
69
69
  end
70
70
 
@@ -142,6 +142,11 @@ module EffectiveDeviseUser
142
142
  super && (respond_to?(:archived?) ? !archived? : true)
143
143
  end
144
144
 
145
+ # Allow users to sign in even if they have a pending invitation
146
+ def block_from_invitation?
147
+ false
148
+ end
149
+
145
150
  def inactive_message
146
151
  (respond_to?(:archived?) && archived?) ? :archived : super
147
152
  end
@@ -6,12 +6,14 @@ module Effective
6
6
 
7
7
  def module_name
8
8
  return nil unless class_name.split('::').length > 1
9
+
9
10
  class_name.split('::').first
10
11
  end
11
12
 
12
13
  # Acpa
13
14
  def module_namespace
14
15
  return nil unless namespaces.present?
16
+
15
17
  Array(namespaces + [nil]).map { |name| name.to_s.classify } * '::'
16
18
  end
17
19
 
@@ -44,7 +46,6 @@ module Effective
44
46
  def tenant_class_name
45
47
  (Tenant.module_name + '::' + class_name) if tenant?
46
48
  end
47
-
48
49
  end
49
50
  end
50
51
  end
@@ -3,14 +3,13 @@
3
3
  module Effective
4
4
  module Resources
5
5
  module I18n
6
-
7
6
  def human_action_name(action)
8
7
  if klass.respond_to?(:model_name)
9
8
  value = ::I18n.t("activerecord.actions.#{klass.model_name.i18n_key}.#{action}")
10
9
  return value unless value.start_with?('translation missing:')
11
10
  end
12
11
 
13
- if(crud_actions.include?(action))
12
+ if crud_actions.include?(action)
14
13
  # Raises exception if not present
15
14
  return EffectiveResources.et("effective_resources.actions.#{action}")
16
15
  end
@@ -42,7 +41,6 @@ module Effective
42
41
  name.pluralize.gsub('::', ' ').underscore.gsub('_', ' ')
43
42
  end
44
43
  end
45
-
46
44
  end
47
45
  end
48
46
  end
@@ -1,3 +1,3 @@
1
1
  module EffectiveResources
2
- VERSION = '2.6.1'.freeze
2
+ VERSION = '2.7.0'.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: 2.6.1
4
+ version: 2.7.0
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: 2023-03-31 00:00:00.000000000 Z
11
+ date: 2023-04-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails