purgatory 4.0.0 → 6.0.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: be4d6f59af39018b4417a418f8e8c2e91eaa1eef4eeb8cb3764bcea91e08911a
4
- data.tar.gz: f02e6f1cd52fc530db2dc671abec047b896b576e34b988b8749418e29c9bc1bc
3
+ metadata.gz: a1583114c3324345ef6ace121844c2dbc67769d92982acfe17b6e96239d8d745
4
+ data.tar.gz: dff5194db0354ac30037530e6d007291db0adf30a01fc950e2d75f13990cd5fd
5
5
  SHA512:
6
- metadata.gz: 6aa6ed6eca3b918911dc1fabf5c02d1cdfbebf9a5f720712e39e707742071dbfee26428f4ea6a26663360642351e5e8ccf935df13968f0df3bc25ff2d40dc0e0
7
- data.tar.gz: 8d88f7c48bdc0956c315e73bcf30493e2c29bd836b6682d6bfeaf804401155e30a7bf186b626f4bc65a750a2b16124bddbd59626cfb82e5be7ed9c6136769cce
6
+ metadata.gz: f354e1057db8afa43f520c1c58658f0bb04fadc5b4ec63a972d733691bddc1673b30f010cbadfa7f857d0dbf0ab61796c9b1803c6e29d679e816e091a77c35f7
7
+ data.tar.gz: afb6c2f8af9874ab2ae52dc76174eec87c5fd97869ece5c2fabd3bbc4eb49f6b904de905d45766444b58b3f3e0a9f6b1e1c086836b10bed2b61d4fc62189a31b
data/VERSION CHANGED
@@ -1 +1 @@
1
- 4.0.0
1
+ 6.0.1
@@ -44,22 +44,26 @@ class Purgatory < ActiveRecord::Base
44
44
  end
45
45
 
46
46
  def approve!(approver = nil)
47
+ return false if approved?
48
+
49
+ success = nil
47
50
  self.with_lock do
48
- return false if approved?
49
- success = soul_with_changes.save
50
- if performable_method.present? && success
51
- success = soul.send(performable_method[:method],*performable_method[:args])
52
- end
51
+ unless approved?
52
+ success = soul_with_changes.save
53
+ if performable_method.present? && success
54
+ success = soul.send(performable_method[:method], *performable_method[:args])
55
+ end
53
56
 
54
- if success
55
- self.approver = approver
56
- self.approved_at = Time.now
57
- self.soul_id = soul.id
58
- save
59
- return true
57
+ if success
58
+ self.approver = approver
59
+ self.approved_at = Time.now
60
+ self.soul_id = soul.id
61
+ save
62
+ end
60
63
  end
61
- false
62
64
  end
65
+
66
+ success
63
67
  end
64
68
 
65
69
  def self.pending_with_matching_soul(soul)
data/purgatory.gemspec CHANGED
@@ -1,9 +1,9 @@
1
1
  # -*- encoding: utf-8 -*-
2
- # stub: purgatory 4.0.0 ruby lib
2
+ # stub: purgatory 6.0.1 ruby lib
3
3
 
4
4
  Gem::Specification.new do |s|
5
5
  s.name = "purgatory"
6
- s.version = "4.0.0"
6
+ s.version = "6.0.1"
7
7
 
8
8
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
9
9
  s.require_paths = ["lib"]
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: purgatory
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.0.0
4
+ version: 6.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Elan Dubrofsky
@@ -63,7 +63,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
63
63
  version: '0'
64
64
  requirements: []
65
65
  rubyforge_project:
66
- rubygems_version: 2.7.8
66
+ rubygems_version: 2.7.6.2
67
67
  signing_key:
68
68
  specification_version: 4
69
69
  summary: Allow changes to a model to be put in purgatory until they are approved