Compare commits
22 Commits
new_layout
...
manager
| Author | SHA1 | Date | |
|---|---|---|---|
| 6ab6c29bf9 | |||
| 84133db18a | |||
| fcc95c6c0a | |||
| 95fbca87ab | |||
| 99a9a6fd42 | |||
| cc2ee8cbb3 | |||
| 0817686f69 | |||
| 223100a698 | |||
| 1e7ba2d1e4 | |||
| cebd46a2e8 | |||
| b25d713914 | |||
| d2a66a9163 | |||
| 86b593765a | |||
| 8f0f32b3e2 | |||
| d45c277f02 | |||
| f95459ce77 | |||
| e625446711 | |||
| bccf145cf1 | |||
| 999219f2ec | |||
| 2ba6a6fb61 | |||
| c78f5557bb | |||
| 1154d140c1 |
@ -1,4 +1,6 @@
|
|||||||
<?php
|
<?php
|
||||||
|
if (!isset($_SESSION['user_id'])) exit; //페이지 직접 실행 방지
|
||||||
|
|
||||||
include_once "_common.php";
|
include_once "_common.php";
|
||||||
|
|
||||||
// 테이블 존재 유무 확인 쿼리
|
// 테이블 존재 유무 확인 쿼리
|
||||||
|
|||||||
@ -2,8 +2,6 @@
|
|||||||
include_once "_common.php";
|
include_once "_common.php";
|
||||||
if(!$_SESSION['user_id']) exit; // 로그인되어있지 않으면 확인 불가
|
if(!$_SESSION['user_id']) exit; // 로그인되어있지 않으면 확인 불가
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
$product_name = isset($_POST['product_name']) ? trim($_POST['product_name']) : exit;
|
$product_name = isset($_POST['product_name']) ? trim($_POST['product_name']) : exit;
|
||||||
$barcode = isset($_POST['barcode']) ? trim($_POST['barcode']) : exit;
|
$barcode = isset($_POST['barcode']) ? trim($_POST['barcode']) : exit;
|
||||||
$used = isset($_POST['used']) ? trim($_POST['used']) : exit;
|
$used = isset($_POST['used']) ? trim($_POST['used']) : exit;
|
||||||
|
|||||||
@ -2,6 +2,8 @@
|
|||||||
// 베이커리 제품목록록
|
// 베이커리 제품목록록
|
||||||
include_once "_common.php";
|
include_once "_common.php";
|
||||||
if (!isset($_SESSION['user_id'])) header( 'Location: FG_MANAGER_URL' ); // 로그인 되어있지 않으면 로그인 페이지로 보냄
|
if (!isset($_SESSION['user_id'])) header( 'Location: FG_MANAGER_URL' ); // 로그인 되어있지 않으면 로그인 페이지로 보냄
|
||||||
|
|
||||||
|
include_once 'head.sub.php';
|
||||||
include_once FG_MANAGER_PATH."/head.php";
|
include_once FG_MANAGER_PATH."/head.php";
|
||||||
|
|
||||||
// 검색 변수 초기화
|
// 검색 변수 초기화
|
||||||
|
|||||||
@ -3,6 +3,7 @@
|
|||||||
include_once "_common.php";
|
include_once "_common.php";
|
||||||
if (!isset($_SESSION['user_id'])) header( 'Location: FG_MANAGER_URL' ); // 로그인 되어있지 않으면 로그인 페이지로 보냄
|
if (!isset($_SESSION['user_id'])) header( 'Location: FG_MANAGER_URL' ); // 로그인 되어있지 않으면 로그인 페이지로 보냄
|
||||||
|
|
||||||
|
include_once 'head.sub.php';
|
||||||
include_once FG_MANAGER_PATH."/head.php";
|
include_once FG_MANAGER_PATH."/head.php";
|
||||||
|
|
||||||
// 검색 변수 초기화
|
// 검색 변수 초기화
|
||||||
@ -140,7 +141,7 @@ if (!$authInfo) {
|
|||||||
<thead class="table-light">
|
<thead class="table-light">
|
||||||
<tr class="align-middle">
|
<tr class="align-middle">
|
||||||
<th class="text-center no-click">No.</th>
|
<th class="text-center no-click">No.</th>
|
||||||
<th class="text-center" data-column="product_name" data-order="asc">품목 <span class="sort-icon" data-column="product_name"></span></th>
|
<th class="text-center" data-column="product_name" data-order="asc">품목 <span class="sort-icon fa fa-sort-up" data-column="product_name"></span></th>
|
||||||
<th class="text-center" data-column="barcode" data-order="asc">바코드 <span class="sort-icon" data-column="barcode"></span></th>
|
<th class="text-center" data-column="barcode" data-order="asc">바코드 <span class="sort-icon" data-column="barcode"></span></th>
|
||||||
<th class="text-center" data-column="previous_stock" data-order="asc">전일재고 <span class="sort-icon" data-column="previous_stock"></span></th>
|
<th class="text-center" data-column="previous_stock" data-order="asc">전일재고 <span class="sort-icon" data-column="previous_stock"></span></th>
|
||||||
<th class="text-center" data-column="production" data-order="asc">생산 <span class="sort-icon" data-column="production"></span></th>
|
<th class="text-center" data-column="production" data-order="asc">생산 <span class="sort-icon" data-column="production"></span></th>
|
||||||
|
|||||||
@ -2,6 +2,7 @@
|
|||||||
// 설정 파일 포함
|
// 설정 파일 포함
|
||||||
include_once('_common.php');
|
include_once('_common.php');
|
||||||
if(!$_SESSION['user_id']) exit; // 로그인 되어있지 않으면 확인 불가
|
if(!$_SESSION['user_id']) exit; // 로그인 되어있지 않으면 확인 불가
|
||||||
|
|
||||||
// 검색 날짜
|
// 검색 날짜
|
||||||
$searchDate = $_POST['searchDate'];
|
$searchDate = $_POST['searchDate'];
|
||||||
$ord_by = $_POST['ordBy'];
|
$ord_by = $_POST['ordBy'];
|
||||||
|
|||||||
269
manager/bakery/bakery_stock_view.php
Normal file
269
manager/bakery/bakery_stock_view.php
Normal file
@ -0,0 +1,269 @@
|
|||||||
|
<?php
|
||||||
|
// 베이커리 재고관리
|
||||||
|
include_once "_common.php";
|
||||||
|
if (!isset($_SESSION['user_id'])) header( 'Location: FG_MANAGER_URL' ); // 로그인 되어있지 않으면 로그인 페이지로 보냄
|
||||||
|
|
||||||
|
include_once 'head.sub.php';
|
||||||
|
include_once FG_MANAGER_PATH."/head.php";
|
||||||
|
|
||||||
|
// 검색 변수 초기화
|
||||||
|
!isset($search) ?? "";
|
||||||
|
!isset($where) ?? "";
|
||||||
|
!isset($search_count) ?? "";
|
||||||
|
|
||||||
|
$is_debug = false; // 디버깅 시 true로 변경
|
||||||
|
|
||||||
|
// ord_by 로 넘어온 값이 있으면 반영
|
||||||
|
$ord_by = isset($_REQUEST["ord_by"]) ? $_REQUEST["ord_by"] : "product_name ASC";
|
||||||
|
|
||||||
|
// 검색어 반영
|
||||||
|
$searchWord = $_GET["searchWord"] ?? "";
|
||||||
|
|
||||||
|
// 날짜 가져오기
|
||||||
|
$today = new DateTime();
|
||||||
|
|
||||||
|
$startDate = $_REQUEST["startDate"] ?? (clone $today)->modify('-7 days')->format('Y-m-d');
|
||||||
|
$endDate = $_REQUEST["endDate"] ?? (clone $today)->modify('-1 day')->format('Y-m-d');
|
||||||
|
|
||||||
|
// 최종 수정시간
|
||||||
|
$edit_datetime = date('Y-m-d H:i:s'); // 최종 수정 시간 업데이트
|
||||||
|
|
||||||
|
// 베이커리 계정인지 확인하고, 오늘 이후 날짜인 경우 생산-매출액란을 공란으로 출력하기 위한 변수
|
||||||
|
$is_bakery = ( $_SESSION['user_id'] == "bakery" ) ? true : false;
|
||||||
|
$is_bakery_input = ( strtotime($searchDate) >= strtotime(date("Y-m-d")) ) ? true : false;
|
||||||
|
|
||||||
|
// 합계 구하기
|
||||||
|
$totalBakeryInvenData = getBakeryInvenSumPeriod($startDate, $endDate, $searchWord);
|
||||||
|
// barcode별 그룹화된 상세 데이터를 구하기
|
||||||
|
$bakeryInvenData = getBakeryInvenDataPeriod($startDate, $endDate, $searchWord);
|
||||||
|
|
||||||
|
?>
|
||||||
|
|
||||||
|
<style>
|
||||||
|
/* 틀 고정
|
||||||
|
.tableWrapper {
|
||||||
|
overflow: auto;
|
||||||
|
height: 700px;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
#bakeryTable th {
|
||||||
|
position: sticky;
|
||||||
|
top: 0px;
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
|
</style>
|
||||||
|
|
||||||
|
<div class="d-flex justify-content-between mb-3 ">
|
||||||
|
<div class="row align-items-start">
|
||||||
|
<h2>베이커리 기간별 현황</h2>
|
||||||
|
</div>
|
||||||
|
<div class="row align-items-end align-self-end only-print">
|
||||||
|
<p>조회일자 : <?=$startDate?> ~ <?=$endDate?></p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="d-flex justify-content-between mb-3 no-print">
|
||||||
|
<div class="row align-items-start flex-nowrap">
|
||||||
|
<div class="input-group">
|
||||||
|
<span class="input-group-text">시작일</span>
|
||||||
|
<input type="date" class="form-control" id="startDateInput" name="startDate" max="9999-12-31" value="<?= $startDate ?>">
|
||||||
|
<span class="input-group-text">종료일</span>
|
||||||
|
<input type="date" class="form-control" id="endDateInput" name="endDate" max="9999-12-31" value="<?= $endDate ?>">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="row align-items-end">
|
||||||
|
<div class="input-group">
|
||||||
|
<input class="form-control" type="text" name="searchWord" id="searchWord" placeholder="상품명 검색" value="<?= htmlspecialchars($_GET['searchWord'] ?? '') ?>" />
|
||||||
|
<button class="btn btn-success" id="searchBtn" type="button">검색</button>
|
||||||
|
<button class="btn btn-primary" type="button" id="resetSearch">초기화</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<!--
|
||||||
|
<div class="row align-items-end">
|
||||||
|
<input type="file" id="inventoryFileInput" style="display:none;" accept=".xls,.xlsx" />
|
||||||
|
<div class="btn-group" role="group" aria-label="bakery-button">
|
||||||
|
<button type="button" class="btn btn-success" id="exportExcelButton">엑셀변환</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
-->
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
<div class="table">
|
||||||
|
<h3>개요</h3>
|
||||||
|
<table class="table align-middle" id="bakeryTotalTable">
|
||||||
|
<thead class="table-light">
|
||||||
|
<tr class="align-middle">
|
||||||
|
<th class="text-center">품목</th>
|
||||||
|
<th class="text-center">생산</th>
|
||||||
|
<th class="text-center">업장사용</th>
|
||||||
|
<th class="text-center">재활용</th>
|
||||||
|
<th class="text-center">폐기</th>
|
||||||
|
<th class="text-center">판매</th>
|
||||||
|
<th class="text-center">매출액</th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<tbody>
|
||||||
|
<tr class="align-middle">
|
||||||
|
<th class="text-center"><?=number_format(cntUsedBakeryItems())?></th>
|
||||||
|
<th class="text-center"><?=number_format($totalBakeryInvenData['t_production'])?></th>
|
||||||
|
<th class="text-center"><?=number_format($totalBakeryInvenData['t_inhouse_use'])?></th>
|
||||||
|
<th class="text-center"><?=number_format($totalBakeryInvenData['t_recycling'])?></th>
|
||||||
|
<th class="text-center"><?=number_format($totalBakeryInvenData['t_disposal'])?></th>
|
||||||
|
<th class="text-center"><?=number_format($totalBakeryInvenData['t_sales'])?></th>
|
||||||
|
<th class="text-center"><?=number_format($totalBakeryInvenData['t_payment_amount'])?></th>
|
||||||
|
</tr>
|
||||||
|
</tbody>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="tableWrapper">
|
||||||
|
<h3>상세</h3>
|
||||||
|
<table class="table align-middle table-hover <?php if( $bakeryInvenData) echo 'table-striped'?> bakery" id="bakeryTable">
|
||||||
|
<colgroup>
|
||||||
|
<col width="30px">
|
||||||
|
<col width="150px">
|
||||||
|
<col width="70px">
|
||||||
|
<col width="70px">
|
||||||
|
<col width="70px">
|
||||||
|
<col width="70px">
|
||||||
|
<col width="70px">
|
||||||
|
<col width="70px">
|
||||||
|
</colgroup>
|
||||||
|
<!-- 테이블 제목 -->
|
||||||
|
<thead class="table-light">
|
||||||
|
<tr class="align-middle">
|
||||||
|
<th class="text-center no-click">No.</th>
|
||||||
|
<th class="text-center" data-column="product_name" data-order="asc">품목 <span class="sort-icon fa fa-sort-up" data-column="product_name"></span></th>
|
||||||
|
<th class="text-center" data-column="production" data-order="asc">생산 <span class="sort-icon" data-column="production"></span></th>
|
||||||
|
<th class="text-center" data-column="inhouse_use" data-order="asc">업장사용 <span class="sort-icon" data-column="inhouse_use"></span></th>
|
||||||
|
<th class="text-center" data-column="recycling" data-order="asc">재활용 <span class="sort-icon" data-column="recycling"></span></th>
|
||||||
|
<th class="text-center" data-column="disposal" data-order="asc">폐기 <span class="sort-icon" data-column="disposal"></span></th>
|
||||||
|
<th class="text-center" data-column="sales" data-order="asc">판매 <span class="sort-icon" data-column="sales"></span></th>
|
||||||
|
<th class="text-center" data-column="payment_amount" data-order="asc">매출액 <span class="sort-icon" data-column="payment_amount"></span></th>
|
||||||
|
</tr>
|
||||||
|
</thead>
|
||||||
|
<!-- 테이블 데이터 -->
|
||||||
|
<tbody class="table-group-divider" id="bakeryTableBody">
|
||||||
|
<?php
|
||||||
|
if ( $bakeryInvenData ) {
|
||||||
|
// 데이터 가져와서 뿌리기
|
||||||
|
$i = 1; // number 표시를 위한 변수
|
||||||
|
foreach ($bakeryInvenData as $row) {
|
||||||
|
?>
|
||||||
|
|
||||||
|
<tr id="row-<?=$row['barcode']?>">
|
||||||
|
<td class="text-center"><?=$i?></td>
|
||||||
|
<td class="text-left"><?=htmlspecialchars($row['product_name'])?></td>
|
||||||
|
<td class="text-end"><span class="value"><?=number_format($row['production'])?></span>
|
||||||
|
<input class="form-control text-end d-none" type="text" value="<?=$row['production']?>" id="production-<?=$row['barcode']?>" product_name="<?=$row['product_name']?>" aria-label="production" readonly>
|
||||||
|
</td>
|
||||||
|
<td class="text-end"><span class="value"><?=number_format($row['inhouse_use'])?></span>
|
||||||
|
<input class="form-control text-end d-none" type="text" value="<?=$row['inhouse_use']?>" id="inhouse_use-<?=$row['barcode']?>" product_name="<?=$row['product_name']?>" aria-label="inhouse_use" readonly>
|
||||||
|
</td>
|
||||||
|
<td class="text-end"><span class="value"><?=number_format($row['recycling'])?></span>
|
||||||
|
<input class="form-control text-end d-none" type="text" value="<?=$row['recycling']?>" id="recycling-<?=$row['barcode']?>" product_name="<?=$row['product_name']?>" aria-label="recycling" readonly>
|
||||||
|
</td>
|
||||||
|
<td class="text-end"><span class="value"><?=number_format($row['disposal'])?></span>
|
||||||
|
<input class="form-control text-end d-none" type="text" value="<?=$row['disposal']?>" id="disposal-<?=$row['barcode']?>" product_name="<?=$row['product_name']?>" aria-label="disposal" readonly>
|
||||||
|
</td>
|
||||||
|
<td class="text-end"><?=number_format($row['sales'])?></td>
|
||||||
|
<td class="text-end"><?=number_format($row['payment_amount'])?></td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<?php
|
||||||
|
$i++;
|
||||||
|
} // endforeach
|
||||||
|
?>
|
||||||
|
</tbody>
|
||||||
|
<!-- 합계 데이터 출력 -->
|
||||||
|
<tfoot class="no-print">
|
||||||
|
<tr>
|
||||||
|
<td colspan="2" class="text-center">합계</th>
|
||||||
|
<td class="text-end" id="total_production"><?=number_format($totalBakeryInvenData['t_production'])?></td>
|
||||||
|
<td class="text-end" id="total_inhouse_use"><?=number_format($totalBakeryInvenData['t_inhouse_use'])?></td>
|
||||||
|
<td class="text-end" id="total_recycling"><?=number_format($totalBakeryInvenData['t_recycling'])?></td>
|
||||||
|
<td class="text-end" id="total_disposal"><?=number_format($totalBakeryInvenData['t_disposal'])?></td>
|
||||||
|
<td class="text-end" id="total_sales"><?=number_format($totalBakeryInvenData['t_sales'])?></td>
|
||||||
|
<td class="text-end" id="total_payment_amount"><?=number_format($totalBakeryInvenData['t_payment_amount'])?></td>
|
||||||
|
</tr>
|
||||||
|
</tfoot>
|
||||||
|
<?php
|
||||||
|
} else {
|
||||||
|
// 데이터가 없을 경우 출력
|
||||||
|
echo "<tr class='align-middle'>";
|
||||||
|
echo "<td class='text-center' colspan='9'> 자료가 존재하지 않습니다 </td>";
|
||||||
|
echo "</tr></tbody>";
|
||||||
|
} // endif
|
||||||
|
|
||||||
|
?>
|
||||||
|
</table>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
const startDateInput = document.getElementById('startDateInput');
|
||||||
|
const endDateInput = document.getElementById('endDateInput');
|
||||||
|
const searchInput = document.getElementById('searchWord');
|
||||||
|
const searchBtn = document.getElementById('searchBtn');
|
||||||
|
const resetBtn = document.getElementById('resetSearch');
|
||||||
|
|
||||||
|
// URL 쿼리 갱신 함수
|
||||||
|
function getUrlWithParams(paramsToUpdate = {}, paramsToDelete = []) {
|
||||||
|
const url = new URL(window.location.href);
|
||||||
|
|
||||||
|
// 업데이트
|
||||||
|
for (const key in paramsToUpdate) {
|
||||||
|
url.searchParams.set(key, paramsToUpdate[key]);
|
||||||
|
}
|
||||||
|
|
||||||
|
// 삭제
|
||||||
|
for (const key of paramsToDelete) {
|
||||||
|
url.searchParams.delete(key);
|
||||||
|
}
|
||||||
|
|
||||||
|
return url.toString();
|
||||||
|
}
|
||||||
|
|
||||||
|
// 날짜 변경 시
|
||||||
|
function onDateChange() {
|
||||||
|
const url = getUrlWithParams({
|
||||||
|
startDate: startDateInput.value,
|
||||||
|
endDate: endDateInput.value,
|
||||||
|
});
|
||||||
|
window.location.href = url;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 검색 버튼 클릭 시
|
||||||
|
function onSearchClick() {
|
||||||
|
const url = getUrlWithParams({
|
||||||
|
startDate: startDateInput.value,
|
||||||
|
endDate: endDateInput.value,
|
||||||
|
searchWord: searchInput.value,
|
||||||
|
});
|
||||||
|
window.location.href = url;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 검색어 입력창에서 엔터 입력 시 검색 실행
|
||||||
|
searchInput.addEventListener('keydown', function (e) {
|
||||||
|
if (e.key === 'Enter') {
|
||||||
|
e.preventDefault(); // 폼 제출 방지
|
||||||
|
onSearchClick(); // 검색 함수 호출
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
// 초기화 버튼 클릭 시
|
||||||
|
function onResetClick() {
|
||||||
|
const url = getUrlWithParams({}, ['searchWord']);
|
||||||
|
window.location.href = url;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 이벤트 바인딩
|
||||||
|
startDateInput.addEventListener('change', onDateChange);
|
||||||
|
endDateInput.addEventListener('change', onDateChange);
|
||||||
|
searchBtn.addEventListener('click', onSearchClick);
|
||||||
|
resetBtn.addEventListener('click', onResetClick);
|
||||||
|
</script>
|
||||||
|
<?php
|
||||||
|
include_once "tail.sub.php";
|
||||||
|
include_once FG_MANAGER_PATH."/tail.php";
|
||||||
8
manager/bakery/head.sub.php
Normal file
8
manager/bakery/head.sub.php
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
<?php
|
||||||
|
if (!isset($_SESSION['user_id'])) exit; //페이지 직접 실행 방지
|
||||||
|
|
||||||
|
// 권한부여 및 체크
|
||||||
|
if ( !in_array($_SESSION['user_id'], $pageAuth['bakery']) || $_SESSION['user_id'], $pageAuth['admin']) ) {
|
||||||
|
alert('권한이 없습니다', false);
|
||||||
|
}
|
||||||
|
?>
|
||||||
@ -1,4 +1,6 @@
|
|||||||
|
<?php
|
||||||
|
if (!isset($_SESSION['user_id'])) exit; //페이지 직접 실행 방지
|
||||||
|
?>
|
||||||
<script>
|
<script>
|
||||||
$(document).ready(function() {
|
$(document).ready(function() {
|
||||||
var ordBy = <?php echo json_encode(isset($ord_by) ? $ord_by : ''); ?>;
|
var ordBy = <?php echo json_encode(isset($ord_by) ? $ord_by : ''); ?>;
|
||||||
@ -71,18 +73,21 @@ $(document).ready(function() {
|
|||||||
|
|
||||||
function attachThClickEvent() {
|
function attachThClickEvent() {
|
||||||
$('table').off('click', 'th'); // 기존 이벤트 제거
|
$('table').off('click', 'th'); // 기존 이벤트 제거
|
||||||
$('table').on('click', 'th', function() {
|
|
||||||
|
// #bakeryTable에만 정렬 이벤트 등록
|
||||||
|
$('#bakeryTable').on('click', 'th', function() {
|
||||||
if ($(this).hasClass('no-click')) {
|
if ($(this).hasClass('no-click')) {
|
||||||
return; // no-click 클래스를 가진 th 요소는 클릭 이벤트를 무시하고 이후 코드 실행 안함
|
return; // no-click 클래스 th는 무시
|
||||||
}
|
}
|
||||||
console.log('th clicked:', $(this).data('column')); // 로그 추가
|
|
||||||
const column = $(this).data('column');
|
const column = $(this).data('column');
|
||||||
let order = $(this).data('order') || 'asc'; // 기본값 'asc'
|
let order = $(this).data('order') || 'asc';
|
||||||
order = order === 'asc' ? 'desc' : 'asc';
|
order = order === 'asc' ? 'desc' : 'asc';
|
||||||
$(this).data('order', order);
|
$(this).data('order', order);
|
||||||
|
|
||||||
sortTable(column, order); // 테이블 정렬 함수 호출
|
sortTable(column, order);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// 다른 테이블(#bakeryTotalTable 등)은 클릭해도 정렬 이벤트 없음
|
||||||
}
|
}
|
||||||
|
|
||||||
function sortTable(column, order) {
|
function sortTable(column, order) {
|
||||||
@ -102,9 +107,22 @@ $(document).ready(function() {
|
|||||||
|
|
||||||
$.each(rows, (index, row) => {
|
$.each(rows, (index, row) => {
|
||||||
tbody.append(row);
|
tbody.append(row);
|
||||||
// 정렬 후 No. 열의 값을 재설정
|
|
||||||
$(row).find('td').eq(0).text(index + 1);
|
$(row).find('td').eq(0).text(index + 1);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
// 아이콘 업데이트
|
||||||
|
// 모든 th의 .sort-icon 초기화 (모든 아이콘 초기화)
|
||||||
|
$('#bakeryTable th .sort-icon').removeClass('fa fa-sort-up fa-sort-down').text('');
|
||||||
|
|
||||||
|
// 정렬된 컬럼의 아이콘만 선택하기
|
||||||
|
const $icon = $(`#bakeryTable th[data-column="${column}"] > .sort-icon`);
|
||||||
|
if (order === 'asc') {
|
||||||
|
// FontAwesome 아이콘 클래스 사용 시
|
||||||
|
$icon.addClass('fa fa-sort-up').text('');
|
||||||
|
} else {
|
||||||
|
$icon.addClass('fa fa-sort-down').text('');
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
function getColumnIndex(column) {
|
function getColumnIndex(column) {
|
||||||
|
|||||||
@ -40,6 +40,14 @@ $recnum = 15; // 출력할 아이템 수
|
|||||||
$pagenum = 20; // 한 페이지에 출력할 페이지 수
|
$pagenum = 20; // 한 페이지에 출력할 페이지 수
|
||||||
$query_limit = "LIMIT ".(($p - 1) * $recnum).",".$recnum; // 출력할 아이템 수 만큼만 가져오기
|
$query_limit = "LIMIT ".(($p - 1) * $recnum).",".$recnum; // 출력할 아이템 수 만큼만 가져오기
|
||||||
|
|
||||||
|
// 권한설정
|
||||||
|
$pageAuth = [
|
||||||
|
'bakery' => ['bakery', 'firstgarden'],
|
||||||
|
'vip' => ['ticket', 'firstgarden', 'service', 'gift', 'heyum', 'dksdpwl'],
|
||||||
|
'ticket' => ['ticket'],
|
||||||
|
'admin' => ['abc']
|
||||||
|
];
|
||||||
|
|
||||||
// page 설정
|
// page 설정
|
||||||
// 페이지가 많지 않기 때문에 수동으로 배열을 만들었지만, 페이지가 많아지면 DB를 이용하는것이 편함
|
// 페이지가 많지 않기 때문에 수동으로 배열을 만들었지만, 페이지가 많아지면 DB를 이용하는것이 편함
|
||||||
// 1차배열의 index 순으로 출력함. 특정 메뉴가 상단에 출력되게 하고 싶다면 순서를 바꿔줄 것
|
// 1차배열의 index 순으로 출력함. 특정 메뉴가 상단에 출력되게 하고 싶다면 순서를 바꿔줄 것
|
||||||
@ -136,3 +144,4 @@ $setpage = array(
|
|||||||
'purl' => FG_MANAGER_URL.'/bakery/bakery_stock.php'
|
'purl' => FG_MANAGER_URL.'/bakery/bakery_stock.php'
|
||||||
)
|
)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|||||||
37
manager/css/main.css
Normal file
37
manager/css/main.css
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
/* 전역 */
|
||||||
|
body {padding-top: 5em; font-size: 0.9em;}
|
||||||
|
/* 사이드바 폭 */
|
||||||
|
.offcanvas.show,.offcanvas.showing,.offcanvas.hiding {width: 250px; }
|
||||||
|
|
||||||
|
/* 로그인 */
|
||||||
|
.container-login button {margin-top: 20px; width: 100%;}
|
||||||
|
.container-login h2 {text-align: center;}
|
||||||
|
|
||||||
|
/* viplist 전체숫자 */
|
||||||
|
.viplist_head {}
|
||||||
|
.mod-label {width:200px;}
|
||||||
|
|
||||||
|
.unused td {color:gray !important}
|
||||||
|
|
||||||
|
/* 중복체크 */
|
||||||
|
.checkdup {height: 25px; text-align: right;}
|
||||||
|
|
||||||
|
/* 베이커리용 CSS */
|
||||||
|
.bakery tfoot {
|
||||||
|
font-weight: 600;
|
||||||
|
}
|
||||||
|
.sort-icon {
|
||||||
|
margin-left: 5px;
|
||||||
|
vertical-align: middle;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* 인쇄시에만 출력되도록 */
|
||||||
|
.only-print { display: none !important; }
|
||||||
|
|
||||||
|
/* 프린트 시 출력되지 않도록 */
|
||||||
|
@media print {
|
||||||
|
.no-print { display: none !important; }
|
||||||
|
header, footer { display: none; }
|
||||||
|
/* 얘는 출력되어야 함 */
|
||||||
|
.only-print { display: block !important; }
|
||||||
|
}
|
||||||
@ -1,17 +0,0 @@
|
|||||||
/* 전역 */
|
|
||||||
body {padding-top: 5em; font-size: 0.9em;}
|
|
||||||
/* 사이드바 폭 */
|
|
||||||
.offcanvas.show,.offcanvas.showing,.offcanvas.hiding {width: 250px; }
|
|
||||||
|
|
||||||
/* 로그인 */
|
|
||||||
.container-login button {margin-top: 20px; width: 100%;}
|
|
||||||
.container-login h2 {text-align: center;}
|
|
||||||
|
|
||||||
/* viplist 전체숫자 */
|
|
||||||
.viplist_head {}
|
|
||||||
.mod-label {width:200px;}
|
|
||||||
|
|
||||||
.unused td {color:gray !important}
|
|
||||||
|
|
||||||
/* 중복체크 */
|
|
||||||
.checkdup {height: 25px; text-align: right;}
|
|
||||||
@ -22,7 +22,7 @@
|
|||||||
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-QWTKZyjpPEjISv5WaRU9OFeRpok6YctnYmDr5pNlyT2bRjXh0JMhjY6hW+ALEwIH" crossorigin="anonymous">
|
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-QWTKZyjpPEjISv5WaRU9OFeRpok6YctnYmDr5pNlyT2bRjXh0JMhjY6hW+ALEwIH" crossorigin="anonymous">
|
||||||
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-YvpcrYf0tY3lHB60NNkmXc5s9fDVZLESaAA55NDzOxhy9GkcIdslK1eN7N6jIeHz" crossorigin="anonymous"></script>
|
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/js/bootstrap.bundle.min.js" integrity="sha384-YvpcrYf0tY3lHB60NNkmXc5s9fDVZLESaAA55NDzOxhy9GkcIdslK1eN7N6jIeHz" crossorigin="anonymous"></script>
|
||||||
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
|
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script>
|
||||||
<link rel="stylesheet"href="<?=FG_MANAGER_URL?>/css/vip.css">
|
<link rel="stylesheet"href="<?=FG_MANAGER_URL?>/css/main.css">
|
||||||
<script src="<?=FG_MANAGER_URL?>/js/list.js"></script>
|
<script src="<?=FG_MANAGER_URL?>/js/list.js"></script>
|
||||||
<script src="<?=FG_MANAGER_URL?>/js/ajax.js"></script>
|
<script src="<?=FG_MANAGER_URL?>/js/ajax.js"></script>
|
||||||
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
|
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
|
||||||
@ -37,7 +37,7 @@
|
|||||||
$page = basename($_SERVER['PHP_SELF'], '.php'); // 로그인 했다면 현재 페이지 이름 구함
|
$page = basename($_SERVER['PHP_SELF'], '.php'); // 로그인 했다면 현재 페이지 이름 구함
|
||||||
?>
|
?>
|
||||||
<!-- 내비게이션 시작 -->
|
<!-- 내비게이션 시작 -->
|
||||||
<nav class="navbar navbar-expand-lg bg-body-tertiary fixed-top d-flex p-2">
|
<nav class="navbar navbar-expand-lg bg-body-tertiary fixed-top d-flex p-2 no-print">
|
||||||
<div class="container-fluid">
|
<div class="container-fluid">
|
||||||
<a class="navbar-brand" href="<?=FG_MANAGER_URL?>">퍼스트가든 관리페이지</a>
|
<a class="navbar-brand" href="<?=FG_MANAGER_URL?>">퍼스트가든 관리페이지</a>
|
||||||
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbar" aria-controls="navbar" aria-expanded="false" aria-label="Toggle navigation">
|
<button class="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbar" aria-controls="navbar" aria-expanded="false" aria-label="Toggle navigation">
|
||||||
@ -45,6 +45,9 @@
|
|||||||
</button>
|
</button>
|
||||||
<div class="collapse navbar-collapse" id="navbar">
|
<div class="collapse navbar-collapse" id="navbar">
|
||||||
<ul class="navbar-nav me-auto mb-2 mb-lg-0 justify-content-end">
|
<ul class="navbar-nav me-auto mb-2 mb-lg-0 justify-content-end">
|
||||||
|
|
||||||
|
<?php if ( in_array($_SESSION['user_id'], $pageAuth['ticket']) || in_array($_SESSION['user_id'], $pageAuth['admin']) ) { ?>
|
||||||
|
|
||||||
<li class="nav-item dropdown">
|
<li class="nav-item dropdown">
|
||||||
<a class="nav-link dropdown-toggle" href="#" role="button" data-bs-toggle="dropdown" aria-expanded="false">
|
<a class="nav-link dropdown-toggle" href="#" role="button" data-bs-toggle="dropdown" aria-expanded="false">
|
||||||
입장처리
|
입장처리
|
||||||
@ -54,6 +57,11 @@
|
|||||||
<li><a class="dropdown-item" href="<?=FG_MANAGER_URL.'/annual_member/annual_member_list_ent.php'?>">연간회원</a></li>
|
<li><a class="dropdown-item" href="<?=FG_MANAGER_URL.'/annual_member/annual_member_list_ent.php'?>">연간회원</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
|
<?php } ?>
|
||||||
|
|
||||||
|
<?php if ( in_array($_SESSION['user_id'], $pageAuth['vip']) || in_array($_SESSION['user_id'], $pageAuth['admin']) ) { ?>
|
||||||
|
|
||||||
<li class="nav-item dropdown">
|
<li class="nav-item dropdown">
|
||||||
<a class="nav-link dropdown-toggle" href="#" role="button" data-bs-toggle="dropdown" aria-expanded="false">
|
<a class="nav-link dropdown-toggle" href="#" role="button" data-bs-toggle="dropdown" aria-expanded="false">
|
||||||
명단관리
|
명단관리
|
||||||
@ -66,6 +74,11 @@
|
|||||||
<li><a class="dropdown-item" href="<?=FG_MANAGER_URL.'/annual_member/annual_member_category.php'?>">연간회원 구분관리</a></li>
|
<li><a class="dropdown-item" href="<?=FG_MANAGER_URL.'/annual_member/annual_member_category.php'?>">연간회원 구분관리</a></li>
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
|
<?php } ?>
|
||||||
|
|
||||||
|
<?php if ( in_array($_SESSION['user_id'], $pageAuth['bakery']) || in_array($_SESSION['user_id'], $pageAuth['admin']) ) { ?>
|
||||||
|
|
||||||
<li class="nav-item dropdown">
|
<li class="nav-item dropdown">
|
||||||
<a class="nav-link dropdown-toggle" href="#" role="button" data-bs-toggle="dropdown" aria-expanded="false">
|
<a class="nav-link dropdown-toggle" href="#" role="button" data-bs-toggle="dropdown" aria-expanded="false">
|
||||||
베이커리
|
베이커리
|
||||||
@ -73,10 +86,14 @@
|
|||||||
<ul class="dropdown-menu">
|
<ul class="dropdown-menu">
|
||||||
<li class="nav-item">
|
<li class="nav-item">
|
||||||
<a class="nav-link" href="<?=FG_MANAGER_URL.'/bakery/bakery_stock.php'?>">일일현황</a>
|
<a class="nav-link" href="<?=FG_MANAGER_URL.'/bakery/bakery_stock.php'?>">일일현황</a>
|
||||||
|
<a class="nav-link" href="<?=FG_MANAGER_URL.'/bakery/bakery_stock_view.php'?>">기간조회</a>
|
||||||
<a class="nav-link" href="<?=FG_MANAGER_URL.'/bakery/bakery_product_list.php'?>">제품목록관리</a>
|
<a class="nav-link" href="<?=FG_MANAGER_URL.'/bakery/bakery_product_list.php'?>">제품목록관리</a>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
|
<?php } ?>
|
||||||
|
|
||||||
<li class="nav-item dropdown">
|
<li class="nav-item dropdown">
|
||||||
<a class="nav-link dropdown-toggle" href="#" role="button" data-bs-toggle="dropdown" aria-expanded="false">
|
<a class="nav-link dropdown-toggle" href="#" role="button" data-bs-toggle="dropdown" aria-expanded="false">
|
||||||
관리자
|
관리자
|
||||||
|
|||||||
@ -1,6 +1,7 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
include_once '_common.php'; // 그누보드 설정 파일 불러오기
|
include_once '_common.php'; // 그누보드 설정 파일 불러오기
|
||||||
|
include_once 'config.php';
|
||||||
include_once 'head.php';
|
include_once 'head.php';
|
||||||
// 로그인 체크
|
// 로그인 체크
|
||||||
if( isset($_SESSION['user_id']) ) { // 로그인 했다면
|
if( isset($_SESSION['user_id']) ) { // 로그인 했다면
|
||||||
|
|||||||
@ -316,6 +316,76 @@ function get_total_count($db_name) {
|
|||||||
return $R;
|
return $R;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function getBakeryInvenDataPeriod($start_date, $end_date, $searchWord = "", $ord_by = "a.date ASC, b.product_name ASC") {
|
||||||
|
global $fg;
|
||||||
|
|
||||||
|
// 검색 조건
|
||||||
|
$search_sql = "";
|
||||||
|
if ($searchWord !== "") {
|
||||||
|
$searchWord = sql_real_escape_string($searchWord);
|
||||||
|
$search_sql = "AND b.product_name LIKE '%{$searchWord}%'";
|
||||||
|
}
|
||||||
|
|
||||||
|
$query = "SELECT
|
||||||
|
b.product_name,
|
||||||
|
SUM(a.production) AS production,
|
||||||
|
SUM(a.inhouse_use) AS inhouse_use,
|
||||||
|
SUM(a.recycling) AS recycling,
|
||||||
|
SUM(a.disposal) AS disposal,
|
||||||
|
SUM(a.sales) AS sales,
|
||||||
|
SUM(a.payment_amount) AS payment_amount
|
||||||
|
FROM {$fg['bakery_inventory_table']} AS a
|
||||||
|
LEFT JOIN {$fg['bakery_product_table']} AS b
|
||||||
|
ON a.barcode = b.barcode
|
||||||
|
WHERE b.used = 1
|
||||||
|
AND a.date BETWEEN '{$start_date}' AND '{$end_date}'
|
||||||
|
{$search_sql}
|
||||||
|
GROUP BY a.barcode
|
||||||
|
ORDER BY {$ord_by}";
|
||||||
|
|
||||||
|
error_log($query);
|
||||||
|
|
||||||
|
$result = sql_query($query);
|
||||||
|
$R = array();
|
||||||
|
|
||||||
|
while ($row = sql_fetch_array($result)) {
|
||||||
|
$R[] = $row;
|
||||||
|
}
|
||||||
|
|
||||||
|
return $R;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 기간별 합계 수량 구하기
|
||||||
|
function getBakeryInvenSumPeriod($start_date, $end_date, $searchWord = "") {
|
||||||
|
global $fg;
|
||||||
|
|
||||||
|
$search_sql = "";
|
||||||
|
if ($searchWord !== "") {
|
||||||
|
$searchWord = sql_real_escape_string($searchWord);
|
||||||
|
$search_sql = "AND b.product_name LIKE '%{$searchWord}%'";
|
||||||
|
}
|
||||||
|
|
||||||
|
$query = "SELECT
|
||||||
|
SUM(a.production) AS t_production,
|
||||||
|
SUM(a.inhouse_use) AS t_inhouse_use,
|
||||||
|
SUM(a.recycling) AS t_recycling,
|
||||||
|
SUM(a.disposal) AS t_disposal,
|
||||||
|
SUM(a.sales) AS t_sales,
|
||||||
|
SUM(a.payment_amount) AS t_payment_amount
|
||||||
|
FROM {$fg['bakery_inventory_table']} AS a
|
||||||
|
LEFT JOIN {$fg['bakery_product_table']} AS b
|
||||||
|
ON a.barcode = b.barcode
|
||||||
|
WHERE b.used = 1
|
||||||
|
AND a.date BETWEEN '{$start_date}' AND '{$end_date}'
|
||||||
|
{$search_sql}";
|
||||||
|
|
||||||
|
error_log($query);
|
||||||
|
|
||||||
|
return sql_fetch($query); // 결과 없으면 false 반환
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// 전체 품명 불러오기
|
// 전체 품명 불러오기
|
||||||
function getBakeryProductList($ord_by = "ASC") {
|
function getBakeryProductList($ord_by = "ASC") {
|
||||||
global $fg;
|
global $fg;
|
||||||
@ -329,6 +399,21 @@ function get_total_count($db_name) {
|
|||||||
return $R;
|
return $R;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 사용 중인(used=1) 품목 수 구하기
|
||||||
|
function cntUsedBakeryItems() {
|
||||||
|
global $fg;
|
||||||
|
|
||||||
|
$query = "SELECT COUNT(*) AS cnt FROM {$fg['bakery_product_table']} WHERE used = 1";
|
||||||
|
|
||||||
|
error_log($query);
|
||||||
|
|
||||||
|
$result = sql_fetch($query);
|
||||||
|
$result = $result['cnt'];
|
||||||
|
|
||||||
|
return $result;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
// 어제자 최종재고 불러오기
|
// 어제자 최종재고 불러오기
|
||||||
function getPrevStock($date, $barcode) {
|
function getPrevStock($date, $barcode) {
|
||||||
global $fg;
|
global $fg;
|
||||||
|
|||||||
21
rb/rb.widget/rb.fg_banner/style.css
Normal file
21
rb/rb.widget/rb.fg_banner/style.css
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
@charset "utf-8";
|
||||||
|
|
||||||
|
.fg_icon_menu {
|
||||||
|
background-color: #F3F3F3; padding-top: 50px; padding-bottom: 50px;}
|
||||||
|
.fg_icon_menu .fg_icon_menu_inner {position: relative; margin: 0px auto;}
|
||||||
|
|
||||||
|
.theme_btns {height:120px; border-radius: 10px; border:0px; background-repeat: no-repeat; background-size: cover; background-position: 0px 0px; display: flex; align-items: center; color:#fff; font-size: 20px; padding-left: 40px; padding-right: 40px; text-align: left;}
|
||||||
|
.theme_btns img {border:0px !important;}
|
||||||
|
.theme_btns span:nth-child(2) {margin-left: auto; height:20px;}
|
||||||
|
|
||||||
|
@media all and (max-width:1024px) {
|
||||||
|
.fg_icon_menu .fg_icon_menu_inner {width: 100% !important; }
|
||||||
|
.fg_icon_menu .rb_swipper_inner {padding-left: 20px; padding-right:20px; }
|
||||||
|
.fg_icon_menu .rb_swiper_paging_btn {top:14px;}
|
||||||
|
.fg_icon_menu .rb-swiper-slide {width: 100%;}
|
||||||
|
.fg_icon_menu .rb-swiper-slide {width: 100% !important;}
|
||||||
|
.fg_icon_menu .bbs_main_wrap_thumb_top_con {width: 100% !important;}
|
||||||
|
}
|
||||||
|
@media all and (max-width:768px) {
|
||||||
|
.fg_icon_menu .fg_icon_menu_inner {width: 100% !important;}
|
||||||
|
}
|
||||||
102
rb/rb.widget/rb.fg_banner/widget.php
Normal file
102
rb/rb.widget/rb.fg_banner/widget.php
Normal file
@ -0,0 +1,102 @@
|
|||||||
|
<?php
|
||||||
|
if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가
|
||||||
|
?>
|
||||||
|
|
||||||
|
<link rel="stylesheet" href="<?php echo G5_URL ?>/rb/rb.widget/rb.fg_banner/style.css?ver=<?php echo G5_TIME_YMDHIS ?>">
|
||||||
|
|
||||||
|
|
||||||
|
<!--
|
||||||
|
경로 : /rb/rb.widget/rb.icon_menu/
|
||||||
|
사용자코드를 입력하세요.
|
||||||
|
-->
|
||||||
|
|
||||||
|
|
||||||
|
<div class="fg_icon_menu rb_w100_div rb_w100_<?php echo $row_mod['md_id'] ?>">
|
||||||
|
|
||||||
|
<div class="fg_icon_menu_inner" style="width:<?php echo $rb_core['main_width'] ?>px;">
|
||||||
|
<div class="rb_swiper" id="rb_swiper_<?php echo $rb_skin['md_id'] ?>_btm" data-pc-w="3" data-pc-h="2" data-mo-w="1" data-mo-h="1" data-pc-gap="30" data-mo-gap="20" data-autoplay="1" data-autoplay-time="4000" data-pc-swap="0" data-mo-swap="1">
|
||||||
|
|
||||||
|
<div class="rb_swiper_inner">
|
||||||
|
<div class="rb-swiper-wrapper swiper-wrapper">
|
||||||
|
<div class="rb_swiper_list">
|
||||||
|
<button type="button" class="theme_btns" style="background-image:url('<?php echo G5_THEME_URL ?>/rb.img/theme1_bg.png');" onclick="window.open('/VR/2019(day).html');">
|
||||||
|
<span>23가지 테마가 있는<br>퍼스트가든</span>
|
||||||
|
<span><img src="<?php echo G5_THEME_URL ?>/rb.img/vr_ico.svg"></span>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
<div class="rb_swiper_list">
|
||||||
|
<button type="button" class="theme_btns" style="background-image:url('<?php echo G5_THEME_URL ?>/rb.img/theme2_bg.png');" onclick="window.open('/VR/2019(night).html');">
|
||||||
|
<span>별빛이 흐르는<br>퍼스트가든</span>
|
||||||
|
<span><img src="<?php echo G5_THEME_URL ?>/rb.img/vr_ico.svg"></span>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
<div class="rb_swiper_list">
|
||||||
|
<button type="button" class="theme_btns" style="background-image:url('<?php echo G5_THEME_URL ?>/rb.img/theme3_bg.png');" onclick="location.href='<?php echo G5_URL ?>/content/edu1';">
|
||||||
|
<span>교육과 체험이 있는<br>퍼스트가든</span>
|
||||||
|
<span><img src="<?php echo G5_THEME_URL ?>/rb.img/right_ico.svg"></span>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
<div class="rb_swiper_list">
|
||||||
|
<button type="button" class="theme_btns" style="background-image:url('<?php echo G5_THEME_URL ?>/rb.img/theme4_bg.png');" onclick="location.href='<?php echo G5_URL ?>/facilities';">
|
||||||
|
<span>볼거리와 즐길거리가 있는<br>퍼스트가든</span>
|
||||||
|
<span><img src="<?php echo G5_THEME_URL ?>/rb.img/right_ico.svg"></span>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
<div class="rb_swiper_list">
|
||||||
|
<button type="button" class="theme_btns" style="background-image:url('<?php echo G5_THEME_URL ?>/rb.img/theme5_bg.png');" onclick="location.href='<?php echo G5_URL ?>/dining';">
|
||||||
|
<span>맛있는 먹을거리가 있는<br>퍼스트가든</span>
|
||||||
|
<span><img src="<?php echo G5_THEME_URL ?>/rb.img/right_ico.svg"></span>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
<div class="rb_swiper_list">
|
||||||
|
<button type="button" class="theme_btns" style="background-image:url('<?php echo G5_THEME_URL ?>/rb.img/theme6_bg.png');" onclick="location.href='<?php echo G5_URL ?>/news';">
|
||||||
|
<span>365일 쉬지 않는<br>퍼스트가든</span>
|
||||||
|
<span><img src="<?php echo G5_THEME_URL ?>/rb.img/right_ico.svg"></span>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
|
||||||
|
//부모 width를 무시하고 div 를 100%로 만들고, 모듈설정 버튼의 100% 처리를 위해 스크립트를 사용 합니다.
|
||||||
|
//복제 사용을 위해 $row_mod['md_id'](모듈ID) 를 활용 합니다.
|
||||||
|
|
||||||
|
function adjustDivWidth_<?php echo $row_mod['md_id'] ?>() {
|
||||||
|
const content_w = $('.rb_w100_<?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>
|
||||||
@ -107,6 +107,51 @@ $rb_skin['md_auto_is'] 자동롤링 여부(1,0)
|
|||||||
<div class="rb-swiper-wrapper swiper-wrapper">
|
<div class="rb-swiper-wrapper swiper-wrapper">
|
||||||
|
|
||||||
<?php
|
<?php
|
||||||
|
$todays = date('Y-m-d');
|
||||||
|
|
||||||
|
foreach ($list as &$item) {
|
||||||
|
$start_date = $item['wr_1'] ?? '';
|
||||||
|
$end_date = $item['wr_2'] ?? '';
|
||||||
|
|
||||||
|
// 상태 및 정렬 우선순위 설정
|
||||||
|
if ($start_date && $end_date) {
|
||||||
|
if ($todays < $start_date) {
|
||||||
|
$item['_status'] = '예정'; // 예정
|
||||||
|
$item['_sort'] = 1;
|
||||||
|
} elseif ($todays > $end_date) {
|
||||||
|
$item['_status'] = '종료'; // 종료
|
||||||
|
$item['_sort'] = 3;
|
||||||
|
} else {
|
||||||
|
$item['_status'] = '진행'; // 진행 중
|
||||||
|
$item['_sort'] = 0;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
$item['_status'] = '기타';
|
||||||
|
$item['_sort'] = 9;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 시작일 없을 경우를 고려한 비교용 날짜 (미입력 시 최후순)
|
||||||
|
$item['_start_date'] = $start_date ? $start_date : '9999-99-99';
|
||||||
|
}
|
||||||
|
unset($item);
|
||||||
|
|
||||||
|
// 정렬: 상태 우선순위(_sort) → 시작일(_start_date)
|
||||||
|
usort($list, function ($a, $b) {
|
||||||
|
if ($a['_sort'] === $b['_sort']) {
|
||||||
|
// 시작일이 빠른 순서대로 하려는 경우 a, b의 순서를 변경하면 됨
|
||||||
|
return strcmp($b['_start_date'], $a['_start_date']);
|
||||||
|
}
|
||||||
|
return $a['_sort'] <=> $b['_sort'];
|
||||||
|
});
|
||||||
|
|
||||||
|
// 종료 상태인 항목 제외
|
||||||
|
$list = array_filter($list, function ($item) {
|
||||||
|
return $item['_status'] !== '종료';
|
||||||
|
});
|
||||||
|
|
||||||
|
// 정렬 후 list_count 재설정
|
||||||
|
$list_count = count($list);
|
||||||
|
|
||||||
for ($i=0; $i<$list_count; $i++) {
|
for ($i=0; $i<$list_count; $i++) {
|
||||||
|
|
||||||
//썸네일
|
//썸네일
|
||||||
@ -139,17 +184,16 @@ $rb_skin['md_auto_is'] 자동롤링 여부(1,0)
|
|||||||
$end_date = isset($list[$i]['wr_2']) ? $list[$i]['wr_2'] : '';
|
$end_date = isset($list[$i]['wr_2']) ? $list[$i]['wr_2'] : '';
|
||||||
$rb_ev_ico = '';
|
$rb_ev_ico = '';
|
||||||
|
|
||||||
if($start_date && $end_date) {
|
switch ($list[$i]['_status']) {
|
||||||
if ($todays < $start_date) {
|
case '예정':
|
||||||
// 진행 전
|
|
||||||
$rb_ev_ico = '<span class="rb_latest_event_label ev_label1 font-R" style="opacity:0.5;">예정</span>';
|
$rb_ev_ico = '<span class="rb_latest_event_label ev_label1 font-R" style="opacity:0.5;">예정</span>';
|
||||||
} elseif ($todays > $end_date) {
|
break;
|
||||||
// 종료
|
case '종료':
|
||||||
$rb_ev_ico = '<span class="rb_latest_event_label ev_label2 font-R">종료</span>';
|
$rb_ev_ico = '<span class="rb_latest_event_label ev_label2 font-R">종료</span>';
|
||||||
} else {
|
break;
|
||||||
// 진행 중
|
case '진행':
|
||||||
$rb_ev_ico = '<span class="rb_latest_event_label main_rb_bg color-fff font-R">진행</span>';
|
$rb_ev_ico = '<span class="rb_latest_event_label main_rb_bg color-fff font-R">진행</span>';
|
||||||
}
|
break;
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
|
|
||||||
|
|||||||
@ -1,57 +0,0 @@
|
|||||||
@charset "utf-8";
|
|
||||||
|
|
||||||
.rb_latest_event {box-sizing: border-box; width: 100%; background-color: #F3F3F3; padding-top: 50px; padding-bottom: 50px;}
|
|
||||||
.rb_latest_event .rb_latest_event_inner {position: relative; margin: 0 auto;}
|
|
||||||
.rb_latest_event dd {position: relative;}
|
|
||||||
.rb_latest_event dd:last-child {margin-bottom: 0px;}
|
|
||||||
.rb_latest_event .bbs_main_wrap_con_ul1 {width: 100%; box-sizing: border-box; position: relative; margin-bottom: 20px;}
|
|
||||||
.rb_latest_event .bbs_main_wrap_con_ul1 img {width: 100%; height:auto; border-radius: 10px;}
|
|
||||||
.rb_latest_event .bbs_main_wrap_con_ul2 {width: 100%;}
|
|
||||||
.rb_latest_event .bbs_main_wrap_con_subj {font-size: 18px;}
|
|
||||||
.rb_latest_event .bbs_main_wrap_con_cont {font-size: 14px; color:#666; word-break: keep-all; margin-top: 5px;}
|
|
||||||
.rb_latest_event .bbs_main_wrap_con_cont a {color:#666;}
|
|
||||||
.rb_latest_event .bbs_main_wrap_con_info {font-size: 12px; color:#999; margin-top: 10px;}
|
|
||||||
.rb_latest_event .bbs_main_wrap_con_writer {margin-top: 20px;}
|
|
||||||
.rb_latest_event .bbs_main_wrap_con_writer span {display: inline-block;}
|
|
||||||
.rb_latest_event .prof_tiny_image img {width: 30px; height:auto; border-radius: 50%; margin-right: 5px;}
|
|
||||||
.rb_latest_event .prof_tiny_name {font-size: 12px; color:#999; line-height: 30px; margin-right: 10px;}
|
|
||||||
.rb_latest_event .bbs_list_label {font-size: 11px; border-radius: 4px; padding-left: 5px; padding-right: 5px; padding-top: 3px; padding-bottom: 2px;}
|
|
||||||
.rb_latest_event .bbs_main_wrap_tit_l a {font-size: 50px; color:#483729; letter-spacing: -2px;}
|
|
||||||
.rb_latest_event .icon_abs {position: absolute; right:10px; top:10px;}
|
|
||||||
.rb_latest_event .bbs_list_label.label1 {background-color: #FFC700; color:#fff;}
|
|
||||||
.rb_latest_event .bbs_list_label.label2 {background-color: #00A3FF; color:#fff;}
|
|
||||||
.rb_latest_event .bbs_list_label.label3 {background-color: #8ED100; color:#fff;}
|
|
||||||
.rb_latest_event .bbs_list_label.label4 {background-color: #AA20FF; color:#fff;}
|
|
||||||
.rb_latest_event .bbs_list_label.label5 {background-color: #25282B; color:#fff;}
|
|
||||||
.rb_latest_event .bbs_list_label.label6 {background-color: #D6DCE0; color:#000;}
|
|
||||||
|
|
||||||
.rb_latest_event .rb_latest_event_item_date {display: flex; align-items: center; line-height: 24px; border-top:1px solid #ddd; padding-top: 15px; margin-top: 17px !important;}
|
|
||||||
.rb_latest_event .rb_latest_event_item_date_1 {}
|
|
||||||
.rb_latest_event .rb_latest_event_item_date_2 {margin-left: auto;}
|
|
||||||
.rb_latest_event .rb_latest_event_label {padding: 5px 10px; border-radius: 20px; font-size: 12px;}
|
|
||||||
.rb_latest_event .rb_latest_event_label.ev_label1 {background-color: #25282B; color:#fff;}
|
|
||||||
.rb_latest_event .rb_latest_event_label.ev_label2 {background-color: #fff}
|
|
||||||
.rb_latest_event .bbs_main_wrap_sub {margin-left: 30px; margin-top: 8px; font-size: 18px; color:#483729;}
|
|
||||||
|
|
||||||
.rb_latest_event_inner_btm {margin-top: 60px !important;}
|
|
||||||
.theme_btns {width:100%; height:120px; border-radius: 10px; border:0px; background-repeat: no-repeat; background-size: cover; background-position: 0px 0px; display: flex; align-items: center; color:#fff; font-size: 20px; padding-left: 40px; padding-right: 40px; text-align: left;}
|
|
||||||
.theme_btns img {border:0px !important;}
|
|
||||||
.theme_btns span:nth-child(2) {margin-left: auto; height:20px;}
|
|
||||||
|
|
||||||
@media all and (max-width:1024px) {
|
|
||||||
.rb_latest_event .rb_latest_event_inner {width: 100% !important;}
|
|
||||||
.rb_latest_event .rb_swiper_paging_btn {top:14px;}
|
|
||||||
.rb_latest_event .bbs_main_wrap_tit_l a {font-size: 34px;}
|
|
||||||
.rb_latest_event .bbs_main_wrap_sub {float:none; margin-left: 0px; font-size: 16px}
|
|
||||||
.rb_latest_event .bbs_main_wrap_tit_l {float:none;}
|
|
||||||
.rb_latest_event .rb-swiper-slide {width: 100%;}
|
|
||||||
.rb_latest_event .bbs_main_wrap_tit_r {margin-top: -86px;}
|
|
||||||
.rb_latest_event_inner_btm {margin-top: 30px !important;}
|
|
||||||
.rb_latest_event .rb-swiper-slide {width: 100% !important;}
|
|
||||||
.rb_latest_event bbs_main_wrap_thumb_top_con {width: 100% !important;}
|
|
||||||
}
|
|
||||||
@media all and (max-width:768px) {
|
|
||||||
.rb_latest_event .rb_latest_event_item_date {display:block;}
|
|
||||||
.rb_latest_event .rb_latest_event_item_date_1 {font-size: 12px;}
|
|
||||||
.rb_latest_event .rb_latest_event_inner {width: 100% !important;}
|
|
||||||
}
|
|
||||||
@ -58,9 +58,9 @@ $rb_skin['md_auto_is'] 자동롤링 여부(1,0)
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<div class="bbs_main rb_latest_event rb_latest_event_<?php echo $row_mod['md_id'] ?>" style="padding-top:0px !important;">
|
<div class="bbs_main rb_latest_promotion rb_latest_promotion_<?php echo $row_mod['md_id'] ?>">
|
||||||
|
|
||||||
<div class="rb_latest_event_inner" style="width:<?php echo $rb_core['main_width'] ?>px;">
|
<div class="rb_latest_promotion_inner" style="width:<?php echo $rb_core['main_width'] ?>px;">
|
||||||
|
|
||||||
<!-- { -->
|
<!-- { -->
|
||||||
<ul class="bbs_main_wrap_tit">
|
<ul class="bbs_main_wrap_tit">
|
||||||
@ -142,13 +142,13 @@ $rb_skin['md_auto_is'] 자동롤링 여부(1,0)
|
|||||||
if($start_date && $end_date) {
|
if($start_date && $end_date) {
|
||||||
if ($todays < $start_date) {
|
if ($todays < $start_date) {
|
||||||
// 진행 전
|
// 진행 전
|
||||||
$rb_ev_ico = '<span class="rb_latest_event_label ev_label1 font-R" style="opacity:0.5;">예정</span>';
|
$rb_ev_ico = '<span class="rb_latest_promotion_label ev_label1 font-R" style="opacity:0.5;">예정</span>';
|
||||||
} elseif ($todays > $end_date) {
|
} elseif ($todays > $end_date) {
|
||||||
// 종료
|
// 종료
|
||||||
$rb_ev_ico = '<span class="rb_latest_event_label ev_label2 font-R">종료</span>';
|
$rb_ev_ico = '<span class="rb_latest_promotion_label ev_label2 font-R">종료</span>';
|
||||||
} else {
|
} else {
|
||||||
// 진행 중
|
// 진행 중
|
||||||
$rb_ev_ico = '<span class="rb_latest_event_label main_rb_bg color-fff font-R">진행</span>';
|
$rb_ev_ico = '<span class="rb_latest_promotion_label main_rb_bg color-fff font-R">진행</span>';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
?>
|
?>
|
||||||
@ -221,9 +221,9 @@ $rb_skin['md_auto_is'] 자동롤링 여부(1,0)
|
|||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
<?php if (isset($list[$i]['wr_1']) && $list[$i]['wr_1'] && isset($list[$i]['wr_2']) && $list[$i]['wr_2']) { ?>
|
<?php if (isset($list[$i]['wr_1']) && $list[$i]['wr_1'] && isset($list[$i]['wr_2']) && $list[$i]['wr_2']) { ?>
|
||||||
<ul class="rb_latest_event_item_date mt-10 font-14 font-B main_color">
|
<ul class="rb_latest_promotion_item_date mt-10 font-14 font-B main_color">
|
||||||
<li class="rb_latest_event_item_date_1"><?php echo get_text($list[$i]['wr_1']); ?> ~ <?php echo get_text($list[$i]['wr_2']); ?></li>
|
<li class="rb_latest_promotion_item_date_1"><?php echo get_text($list[$i]['wr_1']); ?> ~ <?php echo get_text($list[$i]['wr_2']); ?></li>
|
||||||
<li class="rb_latest_event_item_date_2"><?php echo $rb_ev_ico ?></li>
|
<li class="rb_latest_promotion_item_date_2"><?php echo $rb_ev_ico ?></li>
|
||||||
</ul>
|
</ul>
|
||||||
<?php } ?>
|
<?php } ?>
|
||||||
|
|
||||||
@ -258,54 +258,6 @@ $rb_skin['md_auto_is'] 자동롤링 여부(1,0)
|
|||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="rb_latest_event_inner rb_latest_event_inner_btm" style="width:<?php echo $rb_core['main_width'] ?>px;">
|
|
||||||
<div class="rb_swiper" id="rb_swiper_<?php echo $rb_skin['md_id'] ?>_btm" data-pc-w="3" data-pc-h="2" data-mo-w="1" data-mo-h="1" data-pc-gap="30" data-mo-gap="20" data-autoplay="1" data-autoplay-time="4000" data-pc-swap="0" data-mo-swap="1">
|
|
||||||
|
|
||||||
<div class="rb_swiper_inner">
|
|
||||||
<div class="rb-swiper-wrapper swiper-wrapper">
|
|
||||||
<div class="rb_swiper_list">
|
|
||||||
<button type="button" class="theme_btns" style="background-image:url('<?php echo G5_THEME_URL ?>/rb.img/theme1_bg.png');" onclick="window.open('/VR/2019(day).html');">
|
|
||||||
<span>23가지 테마가 있는<br>퍼스트가든</span>
|
|
||||||
<span><img src="<?php echo G5_THEME_URL ?>/rb.img/vr_ico.svg"></span>
|
|
||||||
</button>
|
|
||||||
</div>
|
|
||||||
<div class="rb_swiper_list">
|
|
||||||
<button type="button" class="theme_btns" style="background-image:url('<?php echo G5_THEME_URL ?>/rb.img/theme2_bg.png');" onclick="window.open('/VR/2019(night).html');">
|
|
||||||
<span>별빛이 흐르는<br>퍼스트가든</span>
|
|
||||||
<span><img src="<?php echo G5_THEME_URL ?>/rb.img/vr_ico.svg"></span>
|
|
||||||
</button>
|
|
||||||
</div>
|
|
||||||
<div class="rb_swiper_list">
|
|
||||||
<button type="button" class="theme_btns" style="background-image:url('<?php echo G5_THEME_URL ?>/rb.img/theme3_bg.png');" onclick="location.href='<?php echo G5_URL ?>/content/edu1';">
|
|
||||||
<span>교육과 체험이 있는<br>퍼스트가든</span>
|
|
||||||
<span><img src="<?php echo G5_THEME_URL ?>/rb.img/right_ico.svg"></span>
|
|
||||||
</button>
|
|
||||||
</div>
|
|
||||||
<div class="rb_swiper_list">
|
|
||||||
<button type="button" class="theme_btns" style="background-image:url('<?php echo G5_THEME_URL ?>/rb.img/theme4_bg.png');" onclick="location.href='<?php echo G5_URL ?>/facilities';">
|
|
||||||
<span>볼거리와 즐길거리가 있는<br>퍼스트가든</span>
|
|
||||||
<span><img src="<?php echo G5_THEME_URL ?>/rb.img/right_ico.svg"></span>
|
|
||||||
</button>
|
|
||||||
</div>
|
|
||||||
<div class="rb_swiper_list">
|
|
||||||
<button type="button" class="theme_btns" style="background-image:url('<?php echo G5_THEME_URL ?>/rb.img/theme5_bg.png');" onclick="location.href='<?php echo G5_URL ?>/dining';">
|
|
||||||
<span>맛있는 먹을거리가 있는<br>퍼스트가든</span>
|
|
||||||
<span><img src="<?php echo G5_THEME_URL ?>/rb.img/right_ico.svg"></span>
|
|
||||||
</button>
|
|
||||||
</div>
|
|
||||||
<div class="rb_swiper_list">
|
|
||||||
<button type="button" class="theme_btns" style="background-image:url('<?php echo G5_THEME_URL ?>/rb.img/theme6_bg.png');" onclick="location.href='<?php echo G5_URL ?>/news';">
|
|
||||||
<span>365일 쉬지 않는<br>퍼스트가든</span>
|
|
||||||
<span><img src="<?php echo G5_THEME_URL ?>/rb.img/right_ico.svg"></span>
|
|
||||||
</button>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
<script>
|
<script>
|
||||||
|
|
||||||
@ -313,7 +265,7 @@ $rb_skin['md_auto_is'] 자동롤링 여부(1,0)
|
|||||||
//복제 사용을 위해 $row_mod['md_id'](모듈ID) 를 활용 합니다.
|
//복제 사용을 위해 $row_mod['md_id'](모듈ID) 를 활용 합니다.
|
||||||
|
|
||||||
function adjustDivWidth_<?php echo $row_mod['md_id'] ?>() {
|
function adjustDivWidth_<?php echo $row_mod['md_id'] ?>() {
|
||||||
const content_w = $('.rb_latest_event_<?php echo $row_mod['md_id'] ?>');
|
const content_w = $('.rb_latest_promotion_<?php echo $row_mod['md_id'] ?>');
|
||||||
const firstAdminOv_w = content_w.nextUntil('.admin_ov').next('.admin_ov');
|
const firstAdminOv_w = content_w.nextUntil('.admin_ov').next('.admin_ov');
|
||||||
|
|
||||||
if ($(window).width() > <?php echo $rb_core['main_width'] ?>) {
|
if ($(window).width() > <?php echo $rb_core['main_width'] ?>) {
|
||||||
55
theme/rb.basic/skin/latest/rb.latest.promotion/style.css
Normal file
55
theme/rb.basic/skin/latest/rb.latest.promotion/style.css
Normal file
@ -0,0 +1,55 @@
|
|||||||
|
@charset "utf-8";
|
||||||
|
|
||||||
|
.rb_latest_promotion {box-sizing: border-box; width: 100%; background-color: #fff; padding-top: 50px; padding-bottom: 50px;}
|
||||||
|
.rb_latest_promotion .rb_latest_promotion_inner {position: relative; margin: 0 auto;}
|
||||||
|
.rb_latest_promotion dd {position: relative;}
|
||||||
|
.rb_latest_promotion dd:last-child {margin-bottom: 0px;}
|
||||||
|
.rb_latest_promotion .bbs_main_wrap_con_ul1 {width: 100%; box-sizing: border-box; position: relative; margin-bottom: 20px;}
|
||||||
|
.rb_latest_promotion .bbs_main_wrap_con_ul1 img {width: 100%; height:auto; border-radius: 10px;}
|
||||||
|
.rb_latest_promotion .bbs_main_wrap_con_ul2 {width: 100%;}
|
||||||
|
.rb_latest_promotion .bbs_main_wrap_con_subj {font-size: 18px;}
|
||||||
|
.rb_latest_promotion .bbs_main_wrap_con_cont {font-size: 14px; color:#666; word-break: keep-all; margin-top: 5px;}
|
||||||
|
.rb_latest_promotion .bbs_main_wrap_con_cont a {color:#666;}
|
||||||
|
.rb_latest_promotion .bbs_main_wrap_con_info {font-size: 12px; color:#999; margin-top: 10px;}
|
||||||
|
.rb_latest_promotion .bbs_main_wrap_con_writer {margin-top: 20px;}
|
||||||
|
.rb_latest_promotion .bbs_main_wrap_con_writer span {display: inline-block;}
|
||||||
|
.rb_latest_promotion .prof_tiny_image img {width: 30px; height:auto; border-radius: 50%; margin-right: 5px;}
|
||||||
|
.rb_latest_promotion .prof_tiny_name {font-size: 12px; color:#999; line-height: 30px; margin-right: 10px;}
|
||||||
|
.rb_latest_promotion .bbs_list_label {font-size: 11px; border-radius: 4px; padding-left: 5px; padding-right: 5px; padding-top: 3px; padding-bottom: 2px;}
|
||||||
|
.rb_latest_promotion .bbs_main_wrap_tit_l a {font-size: 50px; color:#483729; letter-spacing: -2px;}
|
||||||
|
.rb_latest_promotion .icon_abs {position: absolute; right:10px; top:10px;}
|
||||||
|
.rb_latest_promotion .bbs_list_label.label1 {background-color: #FFC700; color:#fff;}
|
||||||
|
.rb_latest_promotion .bbs_list_label.label2 {background-color: #00A3FF; color:#fff;}
|
||||||
|
.rb_latest_promotion .bbs_list_label.label3 {background-color: #8ED100; color:#fff;}
|
||||||
|
.rb_latest_promotion .bbs_list_label.label4 {background-color: #AA20FF; color:#fff;}
|
||||||
|
.rb_latest_promotion .bbs_list_label.label5 {background-color: #25282B; color:#fff;}
|
||||||
|
.rb_latest_promotion .bbs_list_label.label6 {background-color: #D6DCE0; color:#000;}
|
||||||
|
|
||||||
|
.rb_latest_promotion .rb_latest_promotion_item_date {display: flex; align-items: center; line-height: 24px; border-top:1px solid #ddd; padding-top: 15px; margin-top: 17px !important;}
|
||||||
|
.rb_latest_promotion .rb_latest_promotion_item_date_1 {}
|
||||||
|
.rb_latest_promotion .rb_latest_promotion_item_date_2 {margin-left: auto;}
|
||||||
|
.rb_latest_promotion .rb_latest_promotion_label {padding: 5px 10px; border-radius: 20px; font-size: 12px;}
|
||||||
|
.rb_latest_promotion .rb_latest_promotion_label.ev_label1 {background-color: #25282B; color:#fff;}
|
||||||
|
.rb_latest_promotion .rb_latest_promotion_label.ev_label2 {background-color: #fff}
|
||||||
|
.rb_latest_promotion .bbs_main_wrap_sub {margin-left: 30px; margin-top: 8px; font-size: 18px; color:#483729;}
|
||||||
|
|
||||||
|
.theme_btns {width:100%; height:120px; border-radius: 10px; border:0px; background-repeat: no-repeat; background-size: cover; background-position: 0px 0px; display: flex; align-items: center; color:#fff; font-size: 20px; padding-left: 40px; padding-right: 40px; text-align: left;}
|
||||||
|
.theme_btns img {border:0px !important;}
|
||||||
|
.theme_btns span:nth-child(2) {margin-left: auto; height:20px;}
|
||||||
|
|
||||||
|
@media all and (max-width:1024px) {
|
||||||
|
.rb_latest_promotion .rb_latest_promotion_inner {width: 100% !important;}
|
||||||
|
.rb_latest_promotion .rb_swiper_paging_btn {top:14px;}
|
||||||
|
.rb_latest_promotion .bbs_main_wrap_tit_l a {font-size: 34px;}
|
||||||
|
.rb_latest_promotion .bbs_main_wrap_sub {float:none; margin-left: 0px; font-size: 16px}
|
||||||
|
.rb_latest_promotion .bbs_main_wrap_tit_l {float:none;}
|
||||||
|
.rb_latest_promotion .rb-swiper-slide {width: 100%;}
|
||||||
|
.rb_latest_promotion .bbs_main_wrap_tit_r {margin-top: -86px;}
|
||||||
|
.rb_latest_promotion .rb-swiper-slide {width: 100% !important;}
|
||||||
|
.rb_latest_promotion bbs_main_wrap_thumb_top_con {width: 100% !important;}
|
||||||
|
}
|
||||||
|
@media all and (max-width:768px) {
|
||||||
|
.rb_latest_promotion .rb_latest_promotion_item_date {display:block;}
|
||||||
|
.rb_latest_promotion .rb_latest_promotion_item_date_1 {font-size: 12px;}
|
||||||
|
.rb_latest_promotion .rb_latest_promotion_inner {width: 100% !important;}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user