$_suffix = "?banner_id=" . $_REQUEST['banner_id'];
        }
    }
    if ($mode == 'do_delete_linked') {
        if (!empty($_REQUEST['banner_id']) && !empty($_REQUEST['delete'])) {
            $banner_product_ids[$_REQUEST['banner_id']] = array_unique(array_diff($banner_product_ids[$_REQUEST['banner_id']], $_REQUEST['delete']));
            $_suffix = "?banner_id=" . $_REQUEST['banner_id'];
        }
    }
    return array(CONTROLLER_STATUS_OK, "banners_manager.select_product{$_suffix}");
}
if ($mode == 'select_product' && !empty($_REQUEST['banner_id'])) {
    if (!empty($_REQUEST['banner_id']) && !isset($banner_product_ids[$_REQUEST['banner_id']])) {
        $banner_product_ids = array($_REQUEST['banner_id'] => array());
    }
    $banner_data = fn_get_aff_banner_data($_REQUEST['banner_id'], CART_LANGUAGE, true);
    $banner_data['product_ids'] = implode('-', $banner_product_ids[$_REQUEST['banner_id']]);
    $banner_data['example'] = fn_get_aff_banner_html('js', $banner_data);
    $banner_data['code'] = fn_get_aff_banner_html('js', $banner_data, '', $auth['user_id']);
    $banner_data['url'] = fn_get_aff_banner_url($banner_data, $auth['user_id']);
    $view->assign('banner', $banner_data);
    // [Breadcrumbs]
    fn_add_breadcrumb(fn_get_lang_var('product_banners'), "banners_manager.manage?banner_type=P");
    fn_add_breadcrumb($banner_data['title']);
    // [/Breadcrumbs]
    $linked_products = array();
    foreach ($banner_product_ids[$_REQUEST['banner_id']] as $prod_id) {
        $linked_products[$prod_id] = fn_get_product_data($prod_id, $auth);
        $linked_products[$prod_id]['url'] = "{$banner_data['url']}&product_id={$prod_id}";
    }
    $view->assign('linked_products', $linked_products);
            $banners_data = $_REQUEST['banners_data'];
            foreach ($banners_data as $banner_id => $b_data) {
                $_b_data = fn_check_table_fields($b_data, 'aff_banners');
                db_query("UPDATE ?:aff_banners SET ?u WHERE banner_id = ?i", $_b_data, $banner_id);
            }
        }
        $suffix = ".manage&banner_type={$_REQUEST['banner_type']}&link_to={$_REQUEST['link_to']}";
    }
    if ($mode == 'update') {
        $banner_id = fn_update_banner($_REQUEST['banner'], $_REQUEST['banner_id'], DESCR_SL);
        $suffix = ".update?banner_id={$banner_id}";
    }
    return array(CONTROLLER_STATUS_OK, "banners_manager{$suffix}");
}
if ($mode == 'update') {
    $banner = fn_get_aff_banner_data($_REQUEST['banner_id'], DESCR_SL);
    if (empty($banner)) {
        return array(CONTROLLER_STATUS_NO_PAGE);
    }
    if ($banner['type'] != 'G') {
        $banner['code'] = fn_get_aff_banner_html('js', $banner, '', '', DESCR_SL);
    }
    if ($banner['link_to'] == 'G') {
        $view->assign('all_groups_list', fn_get_groups_list('D', DESCR_SL));
    }
    fn_add_breadcrumb(fn_get_lang_var('banners'), "banners_manager.manage?banner_type={$banner['type']}&link_to={$banner['link_to']}");
    $view->assign('banner', $banner);
    $view->assign('banner_type', $banner['type']);
    $view->assign('link_to', $banner['link_to']);
} elseif ($mode == 'add') {
    $banner_type = empty($_REQUEST['banner_type']) ? 'T' : $_REQUEST['banner_type'];