function adrotate_request_action()
{
    global $wpdb, $adrotate_config;
    $banner_ids = $group_ids = '';
    if (wp_verify_nonce($_POST['adrotate_nonce'], 'adrotate_bulk_ads_active') or wp_verify_nonce($_POST['adrotate_nonce'], 'adrotate_bulk_ads_disable') or wp_verify_nonce($_POST['adrotate_nonce'], 'adrotate_bulk_ads_error') or wp_verify_nonce($_POST['adrotate_nonce'], 'adrotate_bulk_ads_queue') or wp_verify_nonce($_POST['adrotate_nonce'], 'adrotate_bulk_groups')) {
        if (isset($_POST['bannercheck'])) {
            $banner_ids = $_POST['bannercheck'];
        }
        if (isset($_POST['disabledbannercheck'])) {
            $banner_ids = $_POST['disabledbannercheck'];
        }
        if (isset($_POST['errorbannercheck'])) {
            $banner_ids = $_POST['errorbannercheck'];
        }
        if (isset($_POST['groupcheck'])) {
            $group_ids = $_POST['groupcheck'];
        }
        if (isset($_POST['adrotate_id'])) {
            $banner_ids = array($_POST['adrotate_id']);
        }
        // Determine which kind of action to use
        if (isset($_POST['adrotate_action'])) {
            // Default action call
            $actions = $_POST['adrotate_action'];
        } else {
            if (isset($_POST['adrotate_disabled_action'])) {
                // Disabled ads listing call
                $actions = $_POST['adrotate_disabled_action'];
            } else {
                if (isset($_POST['adrotate_error_action'])) {
                    // Erroneous ads listing call
                    $actions = $_POST['adrotate_error_action'];
                }
            }
        }
        if (preg_match("/-/", $actions)) {
            list($action, $specific) = explode("-", $actions);
        } else {
            $action = $actions;
        }
        if ($banner_ids != '') {
            $return = 'adrotate-ads';
            if ($action == 'export') {
                if (current_user_can('adrotate_moderate')) {
                    adrotate_export($banner_ids);
                    $result_id = 215;
                } else {
                    adrotate_return($return, 500);
                }
            }
            foreach ($banner_ids as $banner_id) {
                if ($action == 'deactivate') {
                    if (current_user_can('adrotate_ad_manage')) {
                        adrotate_active($banner_id, 'deactivate');
                        $result_id = $banner_id;
                    } else {
                        adrotate_return($return, 500);
                    }
                }
                if ($action == 'activate') {
                    if (current_user_can('adrotate_ad_manage')) {
                        adrotate_active($banner_id, 'activate');
                        $result_id = $banner_id;
                    } else {
                        adrotate_return($return, 500);
                    }
                }
                if ($action == 'delete') {
                    if (current_user_can('adrotate_ad_delete')) {
                        adrotate_delete($banner_id, 'banner');
                        $result_id = $banner_id;
                    } else {
                        adrotate_return($return, 500);
                    }
                }
                if ($action == 'reset') {
                    if (current_user_can('adrotate_ad_delete')) {
                        adrotate_reset($banner_id);
                        $result_id = $banner_id;
                    } else {
                        adrotate_return($return, 500);
                    }
                }
                if ($action == 'renew') {
                    if (current_user_can('adrotate_ad_manage')) {
                        adrotate_renew($banner_id, $specific);
                        $result_id = $banner_id;
                    } else {
                        adrotate_return($return, 500);
                    }
                }
                if ($action == 'weight') {
                    if (current_user_can('adrotate_ad_manage')) {
                        adrotate_weight($banner_id, $specific);
                        $result_id = $banner_id;
                    } else {
                        adrotate_return($return, 500);
                    }
                }
            }
            adrotate_prepare_evaluate_ads(false);
        }
        if ($group_ids != '') {
            $return = 'adrotate-groups';
            foreach ($group_ids as $group_id) {
                if ($action == 'group_delete') {
                    if (current_user_can('adrotate_group_delete')) {
                        adrotate_delete($group_id, 'group');
                        $result_id = $group_id;
                    } else {
                        adrotate_return($return, 500);
                    }
                }
                if ($action == 'group_delete_banners') {
                    if (current_user_can('adrotate_group_delete')) {
                        adrotate_delete($group_id, 'bannergroup');
                        $result_id = $group_id;
                    } else {
                        adrotate_return($return, 500);
                    }
                }
            }
        }
        adrotate_return($return, $result_id);
    } else {
        adrotate_nonce_error();
        exit;
    }
}
function adrotate_request_action()
{
    global $wpdb, $userdata, $adrotate_tracker;
    if (isset($_POST['bannercheck'])) {
        $banner_ids = $_POST['bannercheck'];
    }
    if (isset($_POST['adrotate_id'])) {
        $banner_ids = array($_POST['adrotate_id']);
    }
    if (isset($_POST['groupcheck'])) {
        $group_ids = $_POST['groupcheck'];
    }
    $actions = $_POST['adrotate_action'];
    list($action, $specific) = explode("-", $actions);
    if (current_user_can('manage_options')) {
        if ($banner_ids != '') {
            foreach ($banner_ids as $banner_id) {
                if ($action == 'deactivate') {
                    adrotate_active($banner_id, 'deactivate');
                }
                if ($action == 'activate') {
                    adrotate_active($banner_id, 'activate');
                }
                if ($action == 'delete') {
                    adrotate_delete($banner_id, 'banner');
                }
                if ($action == 'reset' or $action == 'resetmultiple') {
                    adrotate_reset($banner_id);
                }
                if ($action == 'renew') {
                    adrotate_renew($banner_id);
                }
                if ($action == 'renewmultiple') {
                    adrotate_renew($banner_id, $specific);
                }
                if ($action == 'move') {
                    adrotate_move($banner_id, $specific);
                }
            }
        }
        if ($group_ids != '') {
            foreach ($group_ids as $group_id) {
                if ($action == 'group_delete') {
                    adrotate_delete($group_id, 'group');
                }
                if ($action == 'group_delete_banners') {
                    adrotate_delete($group_id, 'bannergroup');
                }
            }
        }
        adrotate_return($action, array($banner_id));
    } else {
        adrotate_return('no_access');
    }
}