리빌더 부분 추가

This commit is contained in:
2025-07-02 14:13:16 +09:00
parent b491c16b5e
commit 68797db562
1200 changed files with 264947 additions and 0 deletions

View File

@ -0,0 +1,42 @@
<?php
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
?>
<?php
$i = 0; // $i 변수를 초기화
while ($row = sql_fetch_array($result)) {
$bn_border = isset($row['bn_border']) && $row['bn_border'] ? ' bn_border' : '';
$bn_radius = isset($row['bn_radius']) && $row['bn_radius'] ? ' bn_radius' : '';
// 새창 옵션
$bn_new_win = isset($row['bn_new_win']) && $row['bn_new_win'] ? ' target="_blank"' : '';
if ($i == 0) echo '<div class="random_bn">'.PHP_EOL;
$bimg = G5_DATA_PATH.'/banners/'.$row['bn_id'];
if (file_exists($bimg)) {
$banner = '';
$size = getimagesize($bimg);
echo '<div class="random_item top_ad'.$bn_border.$bn_radius.'">'.PHP_EOL;
if ($row['bn_url'][0] == '#')
$banner .= '<a href="'.$row['bn_url'].'">';
else if ($row['bn_url'] && $row['bn_url'] != 'http://') {
$banner .= '<a href="'.G5_URL.'/rb/rb.mod/banner/bannerhit.php?bn_id='.$row['bn_id'].'"'.$bn_new_win.'>';
}
echo $banner.'<img src="'.G5_DATA_URL.'/banners/'.$row['bn_id'].'?ver='.G5_SERVER_TIME.'" title="'.get_text($row['bn_alt']).'" width="100%">';
if ($banner) {
echo '</a>'.PHP_EOL;
}
if (isset($row['bn_ad_ico']) && $row['bn_ad_ico']) {
echo '<span class="ico_ad">AD</span>'.PHP_EOL;
}
echo '</div>'.PHP_EOL;
}
$i++;
}
if ($i > 0) echo '</div>'.PHP_EOL;
?>

View File

@ -0,0 +1,23 @@
<?php
include_once("../_common.php");
$bn_id = isset($bn_id) ? (int)$bn_id : 0;
$sql = "SELECT bn_id, bn_url FROM rb_banner WHERE bn_id = '$bn_id'";
$row = sql_fetch($sql);
if (!isset($row['bn_id']) || !$row['bn_id']) {
alert('등록된 배너가 없습니다.', G5_URL);
}
if (!isset($_COOKIE['ck_bn_id']) || $_COOKIE['ck_bn_id'] != $bn_id) {
$sql = "UPDATE rb_banner SET bn_hit = bn_hit + 1 WHERE bn_id = '$bn_id'";
sql_query($sql);
// 하루 동안
set_cookie("ck_bn_id", $bn_id, 60*60*24);
}
$url = isset($row['bn_url']) ? clean_xss_tags($row['bn_url']) : G5_URL;
goto_url($url);
?>

View File

@ -0,0 +1,51 @@
<?php
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
global $row_mod, $rb_module_table;
$rb_skin = sql_fetch (" select * from {$rb_module_table} where md_id = '{$row_mod['md_id']}' "); //최신글 환경설정 테이블 조회 (삭제금지)
$md_banner_bg = isset($rb_skin['md_banner_bg']) ? $rb_skin['md_banner_bg'] : '';
?>
<style>
.basic_item {margin-top: 10px;}
.basic_item:first-child {margin-top: 0px;}
</style>
<?php
$i = 0; // $i 변수를 초기화
while ($row = sql_fetch_array($result)) {
$bn_border = isset($row['bn_border']) && $row['bn_border'] ? ' bn_border' : '';
$bn_radius = isset($row['bn_radius']) && $row['bn_radius'] ? ' bn_radius' : '';
// 새창 옵션
$bn_new_win = isset($row['bn_new_win']) && $row['bn_new_win'] ? ' target="_blank"' : '';
if ($i == 0) echo '<div class="mod_bn_wrap" style="background-color:'.$md_banner_bg.'">'.PHP_EOL;
$bimg = G5_DATA_PATH.'/banners/'.$row['bn_id'];
if (file_exists($bimg)) {
$banner = '';
$size = getimagesize($bimg);
echo '<div class="basic_item top_ad '.$bn_border.$bn_radius.'">'.PHP_EOL;
if ($row['bn_url'][0] == '#')
$banner .= '<a href="'.$row['bn_url'].'">';
else if ($row['bn_url'] && $row['bn_url'] != 'http://') {
$banner .= '<a href="'.G5_URL.'/rb/rb.mod/banner/bannerhit.php?bn_id='.$row['bn_id'].'"'.$bn_new_win.'>';
}
echo $banner.'<img src="'.G5_DATA_URL.'/banners/'.$row['bn_id'].'?ver='.G5_SERVER_TIME.'" title="'.get_text($row['bn_alt']).'" width="100%">';
if ($banner) {
echo '</a>'.PHP_EOL;
}
if (isset($row['bn_ad_ico']) && $row['bn_ad_ico']) {
echo '<span class="ico_ad">AD</span>'.PHP_EOL;
}
echo '</div>'.PHP_EOL;
}
$i++;
}
if ($i > 0) echo '</div>'.PHP_EOL;
?>

View File

@ -0,0 +1,47 @@
<?php
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
global $row_mod, $rb_module_table;
$rb_skin = sql_fetch (" select * from {$rb_module_table} where md_id = '{$row_mod['md_id']}' "); //최신글 환경설정 테이블 조회 (삭제금지)
$md_banner_bg = isset($rb_skin['md_banner_bg']) ? $rb_skin['md_banner_bg'] : '';
?>
<?php
$i = 0; // $i 변수를 초기화
while ($row = sql_fetch_array($result)) {
$bn_border = isset($row['bn_border']) && $row['bn_border'] ? ' bn_border' : '';
$bn_radius = isset($row['bn_radius']) && $row['bn_radius'] ? ' bn_radius' : '';
// 새창 옵션
$bn_new_win = isset($row['bn_new_win']) && $row['bn_new_win'] ? ' target="_blank"' : '';
if ($i == 0) echo '<div class="mod_bn_wrap" style="background-color:'.$md_banner_bg.'">'.PHP_EOL;
$bimg = G5_DATA_PATH.'/banners/'.$row['bn_id'];
if (file_exists($bimg)) {
$banner = '';
$size = getimagesize($bimg);
echo '<div class="random_item top_ad '.$bn_border.$bn_radius.'">'.PHP_EOL;
if ($row['bn_url'][0] == '#')
$banner .= '<a href="'.$row['bn_url'].'">';
else if ($row['bn_url'] && $row['bn_url'] != 'http://') {
$banner .= '<a href="'.G5_URL.'/rb/rb.mod/banner/bannerhit.php?bn_id='.$row['bn_id'].'"'.$bn_new_win.'>';
}
echo $banner.'<img src="'.G5_DATA_URL.'/banners/'.$row['bn_id'].'?ver='.G5_SERVER_TIME.'" title="'.get_text($row['bn_alt']).'" width="100%">';
if ($banner) {
echo '</a>'.PHP_EOL;
}
if (isset($row['bn_ad_ico']) && $row['bn_ad_ico']) {
echo '<span class="ico_ad">AD</span>'.PHP_EOL;
}
echo '</div>'.PHP_EOL;
}
$i++;
}
if ($i > 0) echo '</div>'.PHP_EOL;
?>

View File

@ -0,0 +1,97 @@
<?php
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
global $row_mod, $rb_module_table;
$rb_skin = sql_fetch (" select * from {$rb_module_table} where md_id = '{$row_mod['md_id']}' "); //최신글 환경설정 테이블 조회 (삭제금지)
$md_banner_bg = isset($rb_skin['md_banner_bg']) ? $rb_skin['md_banner_bg'] : '';
?>
<style>
.swiper-button-next-slide_bn {right:20px;}
.swiper-button-prev-slide_bn {left:20px;}
.swiper-button-next-slide_bn svg {width: 10px;}
.swiper-button-prev-slide_bn svg {width: 10px;}
</style>
<?php
$i = 0; // $i 변수를 초기화
while ($row = sql_fetch_array($result)) {
$bn_border = isset($row['bn_border']) && $row['bn_border'] ? ' bn_border' : '';
$bn_radius = isset($row['bn_radius']) && $row['bn_radius'] ? ' bn_radius' : '';
// 새창 옵션
$bn_new_win = isset($row['bn_new_win']) && $row['bn_new_win'] ? ' target="_blank"' : '';
if ($i == 0) echo '<div class="mod_bn_wrap" style="background-color:'.$md_banner_bg.'"><div class="swiper-container swiper-container-slide_bn swiper-container-slide_bn_'.$row_mod['md_id'].'"><ul class="swiper-wrapper swiper-wrapper-slide_bn swiper-wrapper-slide_bn_'.$row_mod['md_id'].'">'.PHP_EOL;
$bimg = G5_DATA_PATH.'/banners/'.$row['bn_id'];
if (file_exists($bimg)) {
$banner = '';
$size = getimagesize($bimg);
echo '<div class="swiper-slide swiper-slide-slide_bn swiper-slide-slide_bn_'.$row_mod['md_id'].' slide_item top_ad '.$bn_border.$bn_radius.'">'.PHP_EOL;
if ($row['bn_url'][0] == '#')
$banner .= '<a href="'.$row['bn_url'].'">';
else if ($row['bn_url'] && $row['bn_url'] != 'http://') {
$banner .= '<a href="'.G5_URL.'/rb/rb.mod/banner/bannerhit.php?bn_id='.$row['bn_id'].'"'.$bn_new_win.'>';
}
echo $banner.'<img src="'.G5_DATA_URL.'/banners/'.$row['bn_id'].'?ver='.G5_SERVER_TIME.'" title="'.get_text($row['bn_alt']).'" width="100%">';
if ($banner) {
echo '</a>'.PHP_EOL;
}
if (isset($row['bn_ad_ico']) && $row['bn_ad_ico']) {
echo '<span class="ico_ad">AD</span>'.PHP_EOL;
}
echo '</div>'.PHP_EOL;
}
$i++;
}
if ($i > 0) echo '</ul>';
if ($i > 1) echo '
<div class="swiper-button-next swiper-button-next-slide_bn swiper-button-next-slide_bn_'.$row_mod['md_id'].'">
<svg width="24" height="46" viewBox="0 0 24 46" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M1 45L22.3333 23L1 1" stroke="#09244B" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
</svg>
</div>
<div class="swiper-button-prev swiper-button-next-slide_bn swiper-button-prev-slide_bn_'.$row_mod['md_id'].'">
<svg width="24" height="46" viewBox="0 0 24 46" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M23 0.999999L1.66667 23L23 45" stroke="#09244B" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
</svg>
</div>'.PHP_EOL;
if ($i > 0) echo '</div></div>';
?>
<script>
var swiper = new Swiper('.swiper-container-slide_bn_<?php echo $row_mod['md_id'] ?>', {
slidesPerView: 1, //가로갯수
spaceBetween: 0, // 간격
observer: true, //리셋
observeParents: true, //리셋
<?php if ($i > 1) { ?>
touchRatio: 1,
loop: true,
navigation: { //네비
nextEl: '.swiper-button-next-slide_bn_<?php echo $row_mod['md_id'] ?>',
prevEl: '.swiper-button-prev-slide_bn_<?php echo $row_mod['md_id'] ?>',
},
<?php } else { ?>
touchRatio: 0,
loop: false,
<?php } ?>
});
</script>

View File

@ -0,0 +1,233 @@
<?php
if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가
global $row_mod, $rb_module_table;
$rb_skin = sql_fetch (" select * from {$rb_module_table} where md_id = '{$row_mod['md_id']}' "); //환경설정 테이블 조회 (삭제금지)
$md_banner_bg = isset($rb_skin['md_banner_bg']) ? $rb_skin['md_banner_bg'] : '';
?>
<style>
.swiper-wrapper-slide_wide_bn {text-align: left;}
.swiper-button-next-wide {right:auto; left: 50px !important; opacity: 1 !important; top:7px !important}
.swiper-button-prev-wide {left:-10px; top:7px !important}
.sl_bn_inner {min-height: 800px; background-repeat: no-repeat; background-position: center center; background-size: cover; position: relative;}
.sl_overlay {position: absolute;top: 0; left: 0;width: 100%; height: 100%;background: rgba(0, 0, 0, 0.1); z-index: 1;}
.sl_content {position: absolute; bottom:0px; left: 0px; z-index: 2; color:#fff; left: 50%; transform: translateX(-50%); padding-bottom: 100px;}
.swiper-pagination-wide-page {text-align: center; width: 70px !important; float:left; font-size: 12px;}
.sl_arrows {margin-bottom: 100px;}
.sl_dates {font-size: 16px; margin-bottom: 30px;}
.sl_dates span {background-color: rgba(0,0,0,0.6); padding: 10px 15px; border-radius: 10px;}
.sl_alt1 {font-size: 60px; line-height: 140%; color:#fff; text-shadow: 0px 0px 20px rgba(0,0,0,0.5);}
.sl_alt2 {font-size: 22px; line-height: 100%; color:#fff; text-shadow: 0px 0px 10px rgba(0,0,0,0.7);}
.sl_a_links {font-size: 20px; padding: 15px 30px; border-radius: 10px; background-color: #FAE100; color:#483729; line-height: 100%; margin-top: 40px; float:left;}
.ico_j {float:right; margin-top: -80px; filter: drop-shadow(0px 0px 5px black);}
.ico_j img {height:90px; width: 90px;}
.ico_j_ul1 {float: left; font-size: 20px; font-weight: 900; margin-top: 17px; text-shadow: 0px 0px 20px rgba(0,0,0,0.5);}
.ico_j_ul1 span {font-size: 40px;}
.ico_j_ul2 {float:right; padding-left: 10px;}
.image_roll {object-fit: cover; height:800px !important; width: 100%; position: absolute; top:0px; left: 0px;}
@media all and (max-width:1400px) {
.sl_content {width: 100%; left: 0px; transform: none;}
.swiper-button-prev-wide {left: 10px;}
.swiper-button-next-wide svg {width: 10px;}
.swiper-button-prev-wide svg {width: 10px;}
.rb_wide_bn_wrap {padding: 0px;}
.swiper-button-next-wide {right:auto; left: 73px !important;}
.sl_a_links {font-size: 18px;}
.ico_j {float:none; position: absolute; top:-150px; right:0px; margin-right: 10px;}
}
</style>
<?php
$i = 0; // $i 변수를 초기화
while ($row = sql_fetch_array($result)) {
global $config;
$bn_border = isset($row['bn_border']) && $row['bn_border'] ? ' bn_border' : '';
$bn_radius = isset($row['bn_radius']) && $row['bn_radius'] ? ' bn_radius' : '';
$bn_image = G5_DATA_URL.'/banners/'.$row['bn_id'];
// 새창 옵션
$bn_new_win = isset($row['bn_new_win']) && $row['bn_new_win'] ? ' target="_blank"' : '';
if ($i == 0) echo '<div class="mod_bn_wrap rb_wide_bn_wrap rb_wide_bn_'.$row_mod['md_id'].'" style="background-color:'.$md_banner_bg.'"><div class="swiper-container swiper-container-slide_wide_bn_'.$row_mod['md_id'].'"><ul class="swiper-wrapper swiper-wrapper-slide_wide_bn swiper-wrapper-slide_wide_bn_'.$row_mod['md_id'].'">'.PHP_EOL;
$bimg = G5_DATA_PATH.'/banners/'.$row['bn_id'];
if (file_exists($bimg)) {
$banner = '';
$size = getimagesize($bimg);
$img_width = $size[0];
echo '<div class="swiper-slide swiper-slide-slide_wide_bn_'.$row_mod['md_id'].' slide_item top_ad">'.PHP_EOL;
echo '<div class="sl_bn_inner">'.PHP_EOL;
echo '<img src="'.$bn_image.'" class="image_roll">'.PHP_EOL;
echo '<div class="sl_overlay"></div>'.PHP_EOL;
echo '<div class="sl_content" style="width:'.$rb_core['main_width'].'px">'.PHP_EOL;
echo '
<div class="sl_arrows">
<div class="swiper-button-next swiper-button-next-wide swiper-button-next-wide_'.$row_mod['md_id'].'">
<svg width="10" height="16" viewBox="0 0 24 46" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M1 45L22.3333 23L1 1" stroke="#fff" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
</svg>
</div>
<div class="swiper-pagination-fraction swiper-pagination-wide-page swiper-pagination-wide_'.$row_mod['md_id'].'"></div>
<div class="swiper-button-prev swiper-button-prev-wide swiper-button-prev-wide_'.$row_mod['md_id'].'">
<svg width="10" height="16" viewBox="0 0 24 46" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M23 0.999999L1.66667 23L23 45" stroke="#fff" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
</svg>
</div>
<div class="cb"></div>
</div>'.PHP_EOL;
if(isset($row['bn_alt3']) && $row['bn_alt3']) {
echo '<div class="sl_dates font-R"><span>'.$row['bn_alt3'].'</span></div>'.PHP_EOL;
}
if(isset($row['bn_alt']) && $row['bn_alt']) {
echo '<div class="sl_alt1 font-B"><span>'.$row['bn_alt'].'</span></div>'.PHP_EOL;
}
if(isset($row['bn_alt2']) && $row['bn_alt2']) {
echo '<div class="sl_alt2 font-R"><span>'.$row['bn_alt2'].'</span></div>'.PHP_EOL;
}
if(isset($row['bn_url']) && $row['bn_url']) {
if ($row['bn_url'][0] == '#') {
$banner .= '<a href="'.$row['bn_url'].'" class="sl_a_links font-B">';
if(isset($row['bn_alt4']) && $row['bn_alt4']) {
$banner .= $row['bn_alt4'].'</a>'.PHP_EOL;
} else {
$banner .= '자세히 보기</a>'.PHP_EOL;
}
} else if ($row['bn_url'] && $row['bn_url'] != 'http://') {
$banner .= '<a href="'.G5_URL.'/rb/rb.mod/banner/bannerhit.php?bn_id='.$row['bn_id'].'"'.$bn_new_win.' class="sl_a_links font-B">';
if(isset($row['bn_alt4']) && $row['bn_alt4']) {
$banner .= $row['bn_alt4'].'</a>'.PHP_EOL;
} else {
$banner .= '자세히 보기</a>'.PHP_EOL;
}
}
}
$banner .= '<div class="cb"></div>'.PHP_EOL;
echo $banner;
echo '<div class="ico_j"><ul class="ico_j_ul1">'.PHP_EOL;
if(isset($config['cf_1']) && $config['cf_1']) {
echo '<li>'.$config['cf_1_subj'].'</li>'.PHP_EOL;
}
if(isset($config['cf_1']) && $config['cf_1']) {
echo '<li><span class="font-B">'.$config['cf_1'].'</span></li>'.PHP_EOL;
}
echo '</ul><ul class="ico_j_ul2"><img src="'.G5_THEME_URL.'/rb.img/ico_j.svg"></ul></div>'.PHP_EOL;
echo '</div><div class="cb"></div>'.PHP_EOL;
echo '</div>'.PHP_EOL;
if (isset($row['bn_ad_ico']) && $row['bn_ad_ico']) {
echo '<span class="ico_ad">AD</span>'.PHP_EOL;
}
echo '</div>'.PHP_EOL;
}
$i++;
}
if ($i > 0) echo '</ul>';
if ($i > 0) echo '</div></div>';
?>
<script>
var swiper = new Swiper('.swiper-container-slide_wide_bn_<?php echo $row_mod['md_id'] ?>', {
slidesPerView: 1,
spaceBetween: 0,
observer: true,
observeParents: true,
autoHeight: true,
<?php if ($i > 1) { ?>
touchRatio: 1,
loop: true,
<?php } else { ?>
touchRatio: 0,
loop: false,
<?php } ?>
navigation: {
nextEl: '.swiper-button-next-wide_<?php echo $row_mod['md_id'] ?>',
prevEl: '.swiper-button-prev-wide_<?php echo $row_mod['md_id'] ?>',
},
pagination: {
el: '.swiper-pagination-wide_<?php echo $row_mod['md_id'] ?>',
type: 'fraction', // ← 핵심
formatFractionCurrent: function (number) {
return number;
},
formatFractionTotal: function (number) {
return number;
},
},
});
</script>
<script>
//부모 width를 무시하고 div 를 100%로 만들고, 모듈설정 버튼의 100% 처리를 위해 스크립트를 사용 합니다.
//복제 사용을 위해 $row_mod['md_id'](모듈ID) 를 활용 합니다.
function adjustDivWidth_<?php echo $row_mod['md_id'] ?>() {
const content_w = $('.rb_wide_bn_<?php echo $row_mod['md_id'] ?>');
const firstAdminOv_w = content_w.nextUntil('.admin_ov').next('.admin_ov');
if ($(window).width() > <?php echo $rb_core['main_width'] ?>) {
content_w.css({
'width': '100vw',
'position': 'relative',
'left': '50%',
'transform': 'translateX(-50%)'
});
firstAdminOv_w.css({
'width': '100vw',
'left': '50%',
'transform': 'translateX(-50%)'
});
} else {
content_w.css({
'width': '100%',
'position': 'static',
'left': '0',
'transform': 'none'
});
firstAdminOv_w.css({
'width': '100%',
'left': '0',
'transform': 'none'
});
}
}
$(document).ready(adjustDivWidth_<?php echo $row_mod['md_id'] ?>);
$(window).resize(adjustDivWidth_<?php echo $row_mod['md_id'] ?>);
</script>