lib/purgatory/purgatory.rb in purgatory-3.1.0 vs lib/purgatory/purgatory.rb in purgatory-3.1.1
- old
+ new
@@ -43,14 +43,14 @@
soul
end
def approve!(approver = nil)
return false if approved?
- if performable_method.present?
- success = soul.send(performable_method[:method], *performable_method[:args])
- else
- success = soul_with_changes.save
+ success = soul_with_changes.save
+ if performable_method.present? && success
+ success = soul.send(performable_method[:method],*performable_method[:args])
end
+
if success
self.approver = approver
self.approved_at = Time.now
self.soul_id = soul.id
save