thecore_backend_commons 3.0.9 → 3.1.1

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: f945a5a988302320da13aacff1e60ac457bcfa90e821f7d2f3bd8c504814217f
4
- data.tar.gz: 17f5d7df875584740df6e1445cec02bda7e8222cfe7e33586c5681c054baead5
3
+ metadata.gz: 02e0dc0a4db400d2e673834351ca1e026b57404bc065277084520156a0ee7929
4
+ data.tar.gz: ab4b18f01d368505765cc48581e502ae348693fe8a8818f62fc7f4016611c4e4
5
5
  SHA512:
6
- metadata.gz: 045c8bebc2f8cfca9427e90955a5a6d0651f9a36b808fe848121699bf41e0495af70c14f6baa2e0ca9c07c5880085e60522be7225c3057b23eaff093315fbe03
7
- data.tar.gz: '025857799451bfa92eb226751bc2605510e600ba1e605bfbcefdba4c772a1e754b06285ed3dd0942845c1667be25b928e816b00fead8719c85a57c2c3f55de04'
6
+ metadata.gz: 0056a8bd4b9a0d4912f835c64f571e90071f5f1eabd9d336cfcbab2c1459748d8e2ff13f14bd6eb24aa89c4644dc33c54339226e87dbfebe4226df359a92749a
7
+ data.tar.gz: 9a8d6d01ca0a2b679da6a586f23379fdcc6db490f3a1fa1d87c51bbe332018699e8441f2df67fba6774a7fc5186542bf88dfe800e393a85185769db115bb7c32
@@ -4,5 +4,6 @@ Rails.application.configure do
4
4
  Integer.send(:include, FixnumConcern)
5
5
  String.send(:include, StringConcern)
6
6
  ApplicationCable::Connection.send(:include, CableConnectionConcern)
7
+ ApplicationRecord.send(:include, ApplicationRecordConcern)
7
8
  end
8
9
  end
@@ -0,0 +1,30 @@
1
+ require 'active_support/concern'
2
+
3
+ module ApplicationRecordConcern
4
+ extend ActiveSupport::Concern
5
+ included do
6
+ after_validation :validation_ko
7
+
8
+ after_commit :message_ok
9
+
10
+ after_rollback :message_ko
11
+
12
+ def validation_ko
13
+ ActionCable.server.broadcast("messages", { topic: :record, action: detect_action, success: false, valid: false, errors: self.errors.full_messages, record: self}) if self.errors.any?
14
+ end
15
+
16
+ def message_ok
17
+ ActionCable.server.broadcast("messages", { topic: :record, action: detect_action, success: true, valid: true, errors: [], record: self})
18
+ end
19
+
20
+ def message_ko
21
+ ActionCable.server.broadcast("messages", { topic: :record, action: detect_action, success: false, valid: true, errors: [], record: self})
22
+ end
23
+
24
+ def detect_action
25
+ return :create if transaction_include_any_action?([:create])
26
+ return :update if transaction_include_any_action?([:update])
27
+ :destroy
28
+ end
29
+ end
30
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: thecore_backend_commons
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.9
4
+ version: 3.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Gabriele Tassoni
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-04-04 00:00:00.000000000 Z
11
+ date: 2023-04-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: thecore_auth_commons
@@ -151,6 +151,7 @@ files:
151
151
  - config/initializers/add_to_db_migrations.rb
152
152
  - config/initializers/after_initialize.rb
153
153
  - config/initializers/application_config.rb
154
+ - config/initializers/concern_application_record.rb
154
155
  - config/initializers/concern_cable_connection.rb
155
156
  - config/initializers/concern_integer.rb
156
157
  - config/initializers/concern_string.rb