/**
  * filter payment setup response if free return direct link to process payment
  */
 function ce_payment_setup($response, $paymentType, $order)
 {
     $order_pay = $order->generate_data_to_pay();
     if ($order_pay['total'] <= 0) {
         //$session	=	et_read_session();
         $ad_id = $order_pay['product_id'];
         $response = array('success' => true, 'data' => array('ACK' => true, 'url' => et_get_page_link('process-payment', array('paymentType' => 'coupon', 'ad_id' => $ad_id))));
         update_post_meta($order_pay['ID'], 'et_order_gateway', 'cash');
         et_update_post_field($ad_id, 'ad_paid', 1);
         $o = (array) et_get_post_field($ad_id, 'ad_order');
         if (empty($o)) {
             $o = array();
         }
         $o[] = $order_pay['ID'];
         et_update_post_field($ad_id, 'ad_order', $o);
     }
     if ((isset($response['success']) && $response['success'] || isset($response['ACK']) && $response['ACK'] == 'Success') && isset($_REQUEST['coupon_code'])) {
         // update coupon used.
         global $user_ID;
         $coupon_code = trim($_REQUEST['coupon_code']);
         $coupon_data = $this->generate_coupon_response($coupon_code);
         $pre = intval(get_user_meta($user_ID, 'ce_coupon_used_' . $coupon_code, true));
         $pre++;
         update_user_meta($user_ID, 'ce_coupon_used_' . $coupon_code, $pre);
         $used_time = intval($coupon_data['have_been_used']);
         $used_time++;
         update_post_meta($coupon_data['ID'], 'ce_coupon_have_been_used', $used_time);
     }
     return $response;
 }
 /**
  * filter payment setup response if free return direct link to process payment
  */
 function je_payment_setup($response, $paymentType, $order)
 {
     $order_pay = $order->generate_data_to_pay();
     if ($order_pay['total'] <= 0) {
         //$session	=	et_read_session();
         $job_id = $order_pay['product_id'];
         $response = array('success' => true, 'data' => array('ACK' => true, 'url' => et_get_page_link('process-payment', array('paymentType' => 'coupon', 'job_id' => $job_id))));
         update_post_meta($order_pay['ID'], 'et_order_gateway', 'cash');
         et_update_post_field($job_id, 'job_paid', 1);
         $o = et_get_post_field($job_id, 'job_order');
         if (empty($o)) {
             $o = array();
         }
         $o[] = $order_pay['ID'];
         et_update_post_field($job_id, 'job_order', $o);
     }
     return $response;
 }