function vtprd_checkout_cart_purchases_subtotal($msgType) { global $vtprd_cart, $woocommerce, $vtprd_cart_item, $vtprd_info, $vtprd_rules_set, $vtprd_rule, $vtprd_setup_options; $output = ''; //v1.0.7.9 //$subTotal = $vtprd_cart->cart_original_total_amt; //show as a credit $amt = vtprd_get_Woo_cartSubtotal(); if ($msgType == 'html') { $output .= '<tr>'; $output .= '<td colspan="2">' . $vtprd_setup_options['checkout_credit_subtotal_title'] . '</td>'; $output .= '<td>' . $amt . '</td>'; $output .= '</tr>'; } else { $output .= $vtprd_setup_options['checkout_credit_subtotal_title']; $output .= ' '; $output .= $amt; $output .= "\r\n"; } return $output; }
public function vtprd_process_cart() { global $post, $vtprd_setup_options, $vtprd_cart, $vtprd_rules_set, $vtprd_rule, $vtprd_info; //error_log( print_r( 'vtprd_process_cart ', true ) ); //cart may be empty... if (sizeof($vtprd_cart) == 0) { $vtprd_cart->cart_level_status = 'rejected'; $vtprd_cart->cart_level_auditTrail_msg = 'No Products in the Cart.'; return; } //v1.0.7.4 begin if ($vtprd_setup_options['discount_taken_where'] == 'discountCoupon') { //v1.0.9.4 if ($vtprd_info['current_processing_request'] == 'cart' && $vtprd_info['skip_cart_processing_due_to_coupon_individual_use']) { $vtprd_cart->cart_level_status = 'rejected'; $vtprd_cart->cart_level_auditTrail_msg = 'Another Coupon with Individual_use = "yes" has been activated. Cart processing may not continue.'; return; } } //v1.0.7.4 end //test all rules for inPop and actionPop participation $vtprd_cart->at_least_one_rule_actionPop_product_found = 'no'; // $this->vtprd_test_cart_for_rules_populations(); // if ($vtprd_cart->at_least_one_rule_actionPop_product_found != 'yes') { $vtprd_cart->cart_level_status = 'rejected'; $vtprd_cart->cart_level_auditTrail_msg = 'No actionPop Products found. Processing ended.'; return; } /* if price or template code request (display), there's only one product in the cart for the call if either of these conditions exist: no display rules found or product does not participate in a display rule product_in_rule_allowing_display will be 'no' */ if ($vtprd_info['current_processing_request'] == 'display' && $vtprd_cart->cart_items[0]->product_in_rule_allowing_display == 'no') { $vtprd_cart->cart_level_status = 'rejected'; $vtprd_cart->cart_level_auditTrail_msg = 'A single product "Display" request sent, product not in any Display rule. Processing ended.'; return; } //v1.0.9.3 begin if ($vtprd_info['current_processing_request'] == 'cart') { $vtprd_cart->cart_contents_orig_subtotal = vtprd_get_Woo_cartSubtotal(); } //v1.0.9.3 end //test all rules whether in and out counts satisfied $this->vtprd_process_cart_for_rules_discounts(); return; }