lib/opay/payable.rb in opay-1.0.6 vs lib/opay/payable.rb in opay-1.0.7

- old
+ new

@@ -16,12 +16,21 @@ run_callbacks :payment do payment.update_attribute(:finished, true) end end + def prepare_payment + if payment.blank? + create_payment!(provider: 'payu', amount: amount) + else + payment.update_attribute(:session_id, Payment.generate_session_id) + payment + end + end + def payment_session_id - raise 'Resource must be saved before payment' if id.nil? - Digest::MD5.hexdigest(self.class.name + id.to_s) + raise 'Resource must be prepared before payment' if payment.blank? + payment.session_id end module ClassMethods end