function fn_approve_commissions($action_ids, $value = 'Y') { $tmp_amounts = db_get_array("SELECT partner_id, amount, action_id, approved FROM ?:aff_partner_actions WHERE action_id IN (?n)", $action_ids); if (!empty($tmp_amounts)) { foreach ($tmp_amounts as $action_data) { if (!empty($action_data['partner_id']) && !empty($action_data['amount']) && !empty($action_data['action_id']) && (empty($action_data['approved']) || $action_data['approved'] != $value) && fn_update_partner_balance($action_data['partner_id'], $action_data['amount'], $value == 'Y' ? '+' : '-')) { db_query("UPDATE ?:aff_partner_actions SET ?u WHERE action_id = ?i", array('approved' => $value), $action_data['action_id']); } } } }
function fn_affiliate_delete_order($order_id) { $_commissions = fn_get_commissions_4_order($order_id); if (!empty($_commissions)) { foreach ($_commissions as $val) { if ($val['payout_id'] == 0) { if (Registry::get('addons.affiliate.automatic_approval_commissions') != 'Y') { fn_update_partner_balance($val['partner_id'], $val['amount'], '-'); } } else { db_query("DELETE FROM ?:affiliate_payouts WHERE payout_id = ?i", $val['payout_id']); } db_query("DELETE FROM ?:aff_action_links WHERE action_id = ?i", $val['action_id']); db_query("DELETE FROM ?:aff_partner_actions WHERE action_id = ?i", $val['action_id']); } } }
function fn_delete_affiliate_payout($payout_id) { $_payout_data = db_get_row("SELECT * FROM ?:affiliate_payouts WHERE payout_id = ?i", $payout_id); $_amount = floatval($_payout_data['amount']); $_partner = fn_get_partner_data($_payout_data['partner_id'], true); if (!empty($_amount) && !empty($_partner['user_id'])) { if (fn_update_partner_balance($_partner['user_id'], $_amount, '+')) { db_query("UPDATE ?:aff_partner_actions SET ?u WHERE payout_id = ?i", array('payout_id' => '0'), $payout_id); db_query("DELETE FROM ?:affiliate_payouts WHERE payout_id = ?i", $payout_id); } } }