function fre_update_after_bidding($bid_id) { global $user_ID; if ('publish' != get_post_status($bid_id)) { wp_update_post(array('ID' => $bid_id, 'post_status' => 'publish')); } $project_id = get_post_field('post_parent', $bid_id); //update avg bids for project $total_bids = get_number_bids($project_id); $avg = get_post_meta($bid_id, 'bid_average', true); if ($total_bids > 0) { $avg = get_total_cost_bids($project_id) / $total_bids; } update_post_meta($project_id, 'bid_average', number_format($avg, 2)); update_post_meta($project_id, 'total_bids', $total_bids); $this->mail->bid_mail($bid_id); $pay_credit = get_credit_to_pay(); $pay_credit = -$pay_credit; update_credit_number($user_ID, $pay_credit); fre_update_user_free_bid_number(); wp_send_json(array('success' => true, 'msg' => __('You are bid successful', ET_DOMAIN))); }
/** * check user can or can't bid a project * @param int $user_ID the user's ID * @return bool true if user can bid / false if user can't bid * @since version 1.5.4 * @author Tambh * */ function can_user_bid($user_ID) { global $user_ID; if (ae_get_option('pay_to_bid', false)) { $free_bid = (int) get_user_meta($user_ID, 'ae_user_free_bid', true); $op_free_bid = ae_get_option('ae_free_bid_number', 0); if ($op_free_bid > 0) { if ($op_free_bid - $free_bid > 0) { return true; } } $user_credits = get_user_credit_number($user_ID); $bid_credit = get_credit_to_pay(); $user_credits = $user_credits - $bid_credit; if ($user_credits >= 0) { return true; } return false; } return true; }