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