Beispiel #1
0
 /**
  * Start
  *
  * @param Pronamic_Pay_PaymentDataInterface $data
  * @param Pronamic_Pay_Payment              $payment
  *
  * @see Pronamic_WP_Pay_Gateway::start()
  */
 public function start(Pronamic_Pay_Payment $payment)
 {
     $payment->set_action_url($this->client->get_payment_server_url());
     $payment_method = $payment->get_method();
     switch ($payment_method) {
         case Pronamic_WP_Pay_PaymentMethods::IDEAL:
             $this->client->set_payment_method(Pronamic_WP_Pay_Gateways_Buckaroo_PaymentMethods::IDEAL);
             $this->client->set_ideal_issuer($payment->get_issuer());
             break;
         case Pronamic_WP_Pay_PaymentMethods::CREDIT_CARD:
             $this->client->add_requested_service(Pronamic_WP_Pay_Gateways_Buckaroo_PaymentMethods::AMERICAN_EXPRESS);
             $this->client->add_requested_service(Pronamic_WP_Pay_Gateways_Buckaroo_PaymentMethods::MAESTRO);
             $this->client->add_requested_service(Pronamic_WP_Pay_Gateways_Buckaroo_PaymentMethods::MASTERCARD);
             $this->client->add_requested_service(Pronamic_WP_Pay_Gateways_Buckaroo_PaymentMethods::VISA);
             break;
         case Pronamic_WP_Pay_PaymentMethods::BANCONTACT:
         case Pronamic_WP_Pay_PaymentMethods::MISTER_CASH:
             $this->client->set_payment_method(Pronamic_WP_Pay_Gateways_Buckaroo_PaymentMethods::BANCONTACT_MISTER_CASH);
             break;
         default:
             if ('0' !== $payment_method) {
                 // Leap of faith if the WordPress payment method could not transform to a Buckaroo method?
                 $this->client->set_payment_method($payment_method);
             }
             break;
     }
     // Buckaroo uses 'nl-NL' instead of 'nl_NL'
     $culture = str_replace('_', '-', $payment->get_locale());
     $this->client->set_culture($culture);
     $this->client->set_currency($payment->get_currency());
     $this->client->set_description($payment->get_description());
     $this->client->set_amount($payment->get_amount());
     $this->client->set_invoice_number(Pronamic_WP_Pay_Gateways_Buckaroo_Util::get_invoice_number($this->client->get_invoice_number(), $payment));
     $this->client->set_return_url($payment->get_return_url());
     $this->client->set_return_cancel_url($payment->get_return_url());
     $this->client->set_return_error_url($payment->get_return_url());
     $this->client->set_return_reject_url($payment->get_return_url());
 }