/**
  * Record a pending referral when a payment is authorized
  *
  * @access  public
  * @since   1.6
  */
 public function add_pending_referral(SI_Payment $payment)
 {
     if ($this->was_referred()) {
         $payment_id = $payment->get_id();
         $referral_total = $this->calculate_referral_amount($payment->get_amount(), $payment_id);
         $this->insert_pending_referral($referral_total, $payment_id, $payment->get_title());
     }
 }
 public static function payment_data(SI_Payment $payment)
 {
     $payment_data = array('title' => $payment->get_title(), 'id' => $payment->get_id(), 'status' => $payment->get_status(), 'payment_method' => $payment->get_payment_method(), 'amount' => $payment->get_amount(), 'invoice_id' => $payment->get_invoice_id(), 'data' => $payment->get_data());
     $invoice = SI_Invoice::get_instance($payment->get_invoice_id());
     if (is_a($invoice, 'SI_Invoice')) {
         $payment_data['invoice_data'] = self::invoice_data($invoice);
     }
     return $payment_data;
 }