effective_resources 2.6.1 → 2.7.0

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: 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