= NOW() ORDER BY bn_order ASC, bn_id DESC ";
$result = sql_query($sql);
$all_banners = [];
while ($row = sql_fetch_array($result)) {
$row['bn_img'] = '';
$all_banners[] = $row;
}
// 💡 [핵심 수정] 설정값(display_mode)에 따라 배너 분류
$display_mode = $general_ad_config['display_mode']; // 'fixed' or 'slide'
$fixed_banners = [];
$slide_groups = [];
if ($display_mode === 'fixed') {
// 고정형: 모든 배너를 고정 영역으로
$fixed_banners = $all_banners;
} else {
// 슬라이드형: 모든 배너를 하나의 슬라이드 그룹으로 (다중 행 처리는 아래에서 함)
// 키는 임의로 'default'로 지정
if (!empty($all_banners)) {
$slide_groups['default'] = $all_banners;
}
}
$md_banner_skin = isset($module_config['md_banner_skin']) && $module_config['md_banner_skin'] !=''? $module_config['md_banner_skin'] : 'rb.mod/banner/skin/split_layout';
$item_skin_file = G5_PATH . '/rb/' . $md_banner_skin . '/skin.php';
$css_vars = [
'--fixed-columns: ' . (int)$general_ad_config['fixed_grid_columns'],
'--banner-width: ' . (int)$general_ad_config['banner_width'] . 'px',
'--banner-height: ' . (int)$general_ad_config['banner_height'] . 'px',
'--banner-gap: ' . (int)$general_ad_config['banner_gap'] . 'px',
];
$visual_id = 'gas_' . uniqid();
?>