Method: MembershipChange#save
- Defined in:
- app/models/membership_change.rb
#save ⇒ Object
136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 |
# File 'app/models/membership_change.rb', line 136 def save return false unless valid? Order.transaction do expiration = 1.second.ago # Complete checkout success = checkout.finish # Failure? raise MembershipChange::Error unless success # Expire old memberships changing_memberships.each do |old| old.adjust_expiration_to(expiration) end end true rescue MembershipChange::Error => e payment.errors[:base].each do |msg| errors.add(:base, msg) end false end |