80 lines
4.4 KiB
PHP
80 lines
4.4 KiB
PHP
<?php
|
|
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
|
|
|
|
// --- (기존 PHP 데이터 처리 코드는 그대로 둡니다) ---
|
|
$main_visual_post = null;
|
|
$main_visual_files = [];
|
|
$layout_class = '';
|
|
$today = G5_TIME_YMD;
|
|
|
|
$sql = " SELECT * FROM {$g5['write_prefix']}main_visual
|
|
WHERE wr_is_comment = 0 AND wr_10 = '0' AND (wr_1 = 'IMMEDIATE' OR (wr_1 = 'RESERVED' AND '{$today}' BETWEEN wr_2 AND wr_3))
|
|
ORDER BY CASE wr_1 WHEN 'IMMEDIATE' THEN 1 ELSE 2 END, wr_num, wr_reply LIMIT 1 ";
|
|
$main_visual_post = sql_fetch($sql);
|
|
|
|
if ($main_visual_post) {
|
|
$layout_class = 'story-layout-full';
|
|
$temp_files = get_file('main_visual', $main_visual_post['wr_id']);
|
|
if (isset($temp_files) && $temp_files['count'] > 0) {
|
|
for ($i = 0; $i < $temp_files['count']; $i++) {
|
|
if (!isset($temp_files[$i]['file']) || !$temp_files[$i]['file']) continue;
|
|
$file_ext = strtolower(pathinfo($temp_files[$i]['file'], PATHINFO_EXTENSION));
|
|
$is_video = in_array($file_ext, ['mp4', 'mov', 'webm']);
|
|
$main_visual_files[] = ['url' => $temp_files[$i]['path'].'/'.$temp_files[$i]['file'], 'type' => $is_video ? 'video' : 'image'];
|
|
}
|
|
}
|
|
$has_media_in_content = preg_match('/<img|<video/i', $main_visual_post['wr_content']);
|
|
if ($has_media_in_content) {
|
|
$layout_class = (count($main_visual_files) > 0) ? 'story-layout-split' : 'story-layout-full';
|
|
} else {
|
|
$layout_class = (count($main_visual_files) > 0) ? 'story-layout-static' : 'story-layout-full';
|
|
}
|
|
} else {
|
|
$layout_class = 'story-layout-static';
|
|
}
|
|
// --- (PHP 코드 끝) ---
|
|
?>
|
|
|
|
<!-- 💡 [최종 수정] section에 'rb-autounwrap' 클래스를 추가하여 스마트 모듈임을 선언합니다. -->
|
|
<section id="story" class="story-section">
|
|
<div class="container <?php echo $layout_class; ?>">
|
|
<?php if ($main_visual_post) { // 표시할 게시물이 있을 경우 ?>
|
|
<div class="story-text">
|
|
<span class="subtitle">Our Vision</span>
|
|
<h2><?php echo get_text($main_visual_post['wr_subject']); ?></h2>
|
|
<?php echo conv_content($main_visual_post['wr_content'], 1); ?>
|
|
</div>
|
|
<div class="story-image">
|
|
<?php if (count($main_visual_files) > 0) { // 첨부파일이 있을 경우 슬라이더 표시 ?>
|
|
<div class="swiper-container story-slider">
|
|
<div class="swiper-wrapper">
|
|
<?php foreach ($main_visual_files as $file) { ?>
|
|
<div class="swiper-slide" data-type="<?php echo $file['type']; ?>">
|
|
<?php if ($file['type'] === 'video') { ?>
|
|
<video src="<?php echo $file['url']; ?>" muted playsinline loop autoplay></video>
|
|
<?php } else { ?>
|
|
<img src="<?php echo $file['url']; ?>" alt="메인 비주얼 이미지">
|
|
<?php } ?>
|
|
</div>
|
|
<?php } ?>
|
|
</div>
|
|
<div class="swiper-pagination"></div>
|
|
</div>
|
|
<?php } ?>
|
|
</div>
|
|
<?php } else { // 표시할 게시물이 없을 경우 (기존 정적 내용) ?>
|
|
<div class="story-text">
|
|
<span class="subtitle">Our Vision</span>
|
|
<h2>문을 열면, 삶이 달라져야 한다고 믿습니다.</h2>
|
|
<p>성진미도어는 국내 중문 시장 최초로 여닫이와 미닫이 기능을 복합한 ‘프리도어’를 개발했습니다. 시판과 특판 모두를 아우를 수 있는 기술력으로, 일상의 흐름을 바꾸는 문을 만듭니다. 중문 시장의 한줄기 빛이 되도록, 오늘도 한 걸음 더 나아갑니다.</p>
|
|
</div>
|
|
<div class="story-image">
|
|
<img src="<?php echo G5_THEME_URL ?>/img/mainimage/main1.png" alt="미래 지향적인 디자인의 문">
|
|
</div>
|
|
<?php } ?>
|
|
</div>
|
|
</section>
|
|
|
|
<!-- 💡 [핵심] 이 모듈에 필요한 CSS와 JS 파일을 모두 이곳에서 직접 불러옵니다. -->
|
|
<link rel="stylesheet" href="<?php echo G5_THEME_URL; ?>/rb.custom/main_visual/module.css?ver=<?php echo G5_CSS_VER; ?>">
|
|
<script src="<?php echo G5_THEME_URL; ?>/rb.custom/main_visual/module.js?ver=<?php echo G5_JS_VER; ?>"></script>
|