/** * checkout and process payment when post back * @param $order object ET_Order * @since 1.0 * @author Dakachi */ function do_checkout(ET_Order $order) { $order_datas = $order->get_order_data(); switch (strtoupper($order_datas['status'])) { case 'COMPLETED': case 'PUBLISH': $paymentStatus = 'Completed'; break; case 'PROCESSING': case 'PENDING': $paymentStatus = 'Pending'; break; case 'DRAFT': $paymentStatus = 'fraud'; break; default: $paymentStatus = 'fraud'; break; } /** * should add a return here, check fraud and get the post back info * @since 1.2 * @author Dakachi */ if ('fraud' === $paymentStatus) { return $this->do_checkout_get_back($order); } // return return array('ACK' => in_array(strtoupper($order_datas['status']), array('COMPLETED', 'PUBLISH', 'PROCESSING', 'PENDING')), 'payment' => 'simplePaypal', 'payment_status' => $paymentStatus); }