Esempio n. 1
0
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']);
            }
        }
    }
}
Esempio n. 2
0
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']);
        }
    }
}
Esempio n. 3
0
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);
        }
    }
}