Ejemplo n.º 1
0
 public function test_retrieve_order()
 {
     $order = APP_Order_Factory::create();
     $receipt = APP_Order_Receipt::retrieve($order->get_id());
     // Receipt should contain the same values as the original
     $this->assertEquals($order->get_id(), $receipt->get_id());
     $this->assertEquals($order->get_description(), $receipt->get_description());
     $this->assertEquals($order->get_author(), $receipt->get_author());
     $this->assertEquals($order->get_ip_address(), $receipt->get_ip_address());
     $this->assertEquals($order->get_return_url(), $receipt->get_return_url());
     $this->assertEquals($order->get_cancel_url(), $receipt->get_cancel_url());
     $this->assertEquals($order->get_total(), $receipt->get_total());
     $this->assertEquals($order->get_currency(), $receipt->get_currency());
     // Customized Data should also retain their value
     $order = APP_Order_Factory::create();
     $order->set_description('New Description');
     $order->add_item('test', 100, $order->get_id());
     $receipt = APP_Order_Receipt::retrieve($order->get_id());
     $this->assertEquals($order->get_id(), $receipt->get_id());
     $this->assertEquals($order->get_description(), $receipt->get_description());
     $this->assertEquals($order->get_author(), $receipt->get_author());
     $this->assertEquals($order->get_ip_address(), $receipt->get_ip_address());
     $this->assertEquals($order->get_return_url(), $receipt->get_return_url());
     $this->assertEquals($order->get_cancel_url(), $receipt->get_cancel_url());
     $this->assertEquals($order->get_total(), $receipt->get_total());
     $this->assertEquals($order->get_currency(), $receipt->get_currency());
 }
/**
 * Runs the process_recurring() method on a currently active gateway
 * @param  string $gateway_id Identifier of currently active gateway
 * @param  APP_Order $order   Order to be processed
 * @return boolean            False on error
 */
function appthemes_process_recurring_gateway($gateway_id, $order)
{
    $receipt_order = APP_Order_Receipt::retrieve($order->get_id());
    $options = APP_Gateway_Registry::get_gateway_options($gateway_id);
    $gateway = APP_Gateway_Registry::get_gateway($gateway_id);
    if (APP_Gateway_Registry::is_gateway_enabled($gateway_id) || current_user_can('manage_options')) {
        if (!$gateway->is_recurring()) {
            return false;
        }
        $gateway->process_recurring($receipt_order, $options);
        return true;
    } else {
        return false;
    }
}
Ejemplo n.º 3
0
 public function get_error_url()
 {
     return $this->order->get_return_url();
 }