Class: CatarsePagarme::CreditCardTransaction

Inherits:
TransactionBase show all
Defined in:
app/models/catarse_pagarme/credit_card_transaction.rb

Instance Attribute Summary

Attributes inherited from TransactionBase

#attributes, #contribution, #subscription, #transaction, #user

Instance Method Summary collapse

Methods inherited from TransactionBase

#attributes_to_contribution, #change_contribution_state, #delegator, #initialize, #payment_method

Constructor Details

This class inherits a constructor from CatarsePagarme::TransactionBase

Instance Method Details

#charge!Object



3
4
5
6
7
8
9
10
11
12
13
# File 'app/models/catarse_pagarme/credit_card_transaction.rb', line 3

def charge!
  self.transaction = PagarMe::Transaction.new(self.attributes)
  self.transaction.charge

  if self.transaction.status == 'refused'
    raise ::PagarMe::PagarMeError.new(I18n.t('projects.contributions.edit.transaction_error'))
  end

  change_contribution_state
  self.transaction
end