timelines 0.3.0 → 0.3.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: b596c9a86e1cb9a8773f9394a6d71ab6f2e4cd521f89eda1f6ac434cbf059e42
4
- data.tar.gz: 57236b6ed3b91ebe95afabedf0d192c277dd5d6127d810504a2f4b9c6a0db487
3
+ metadata.gz: f48e1bf0dfd0471248184f1039e1a1b4d3d338c9891369c5462756f8587f4da1
4
+ data.tar.gz: ddf9d3c52ca93eac3f4435b12ded8db25fb32fb746f283cb08b5982efd4043ea
5
5
  SHA512:
6
- metadata.gz: 8d02c52990e934303148e6ad8a2bbc021911d3fe21522ba8336ed481334a300e2c4419526dd516b1f1f986c14d5d6c6f6a4d92ece505354d2968d74c5a0b8628
7
- data.tar.gz: 48248ca65e37a9aed7757f5c129385f25a2047845e252444f5a04394d701f435a439a8487ddf385c840501474287769791c345eba62f90270afc2f02347b516c
6
+ metadata.gz: f854359a07cc0007336d067e028f5f88f3415b5203511422d784c3036183fe5f7857ab6079da9018ecb27075b6da097410bce57018732c504dc3e70e880537e2
7
+ data.tar.gz: 6f3cd805f1ef214f135e3a0d2856e806ccf4fbaedd20c414c1b7fe0f0bfd34246fb74b33e4f7fb37a184789319267422abb9df904ff4b7ab206039fe4ae7c11b
@@ -32,7 +32,15 @@ module Timelines
32
32
  end
33
33
 
34
34
  def end!
35
- destroy
35
+ return self if ended_at.present?
36
+
37
+ result = ActiveRecord::Base.transaction do
38
+ run_callbacks(:destroy) do
39
+ update(ended_at: Time.current)
40
+ end
41
+ end
42
+
43
+ result ? self : false
36
44
  end
37
45
 
38
46
  def ended?
@@ -44,13 +52,11 @@ module Timelines
44
52
  end
45
53
 
46
54
  def destroy
47
- return if ended_at.present?
48
-
49
- update(ended_at: Time.current)
55
+ end!
50
56
  end
51
57
 
52
- def self.destroy_all
53
- where(ended_at: nil).update_all(ended_at: Time.current)
58
+ def destroy!
59
+ end!
54
60
  end
55
61
  end
56
62
  end
@@ -4,8 +4,12 @@ module Timelines
4
4
  module HasAuditTrail
5
5
  extend ActiveSupport::Concern
6
6
 
7
- def audit_trail(reverse: false)
8
- ::Timelines::AuditTrail.new(resource: self, reverse: reverse)
7
+ included do
8
+ include ::Timelines::HasEvents
9
+
10
+ def audit_trail(reverse: false)
11
+ ::Timelines::AuditTrail.new(resource: self, reverse: reverse)
12
+ end
9
13
  end
10
14
  end
11
15
  end
@@ -1,3 +1,3 @@
1
1
  module Timelines
2
- VERSION = "0.3.0"
2
+ VERSION = "0.3.1"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: timelines
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.3.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Craig Gilchrist
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-05-28 00:00:00.000000000 Z
11
+ date: 2024-06-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails