first commit 2

This commit is contained in:
hmw1001
2026-06-11 18:47:38 +09:00
parent c768729ce6
commit 6f534e33a6
11095 changed files with 1595758 additions and 0 deletions
@@ -0,0 +1,51 @@
document.addEventListener('DOMContentLoaded', function() {
const listBody = document.getElementById('bo_list_body');
const toggleBtn = document.getElementById('view-toggle-btn');
if (!listBody || !toggleBtn) {
return; // 필수 요소가 없으면 스크립트 중단
}
const toggleIcon = toggleBtn.querySelector('i');
const savedViewMode = localStorage.getItem('board_view_mode') || 'list'; // 기본값은 'list'
// 뷰 모드를 설정하고 버튼의 아이콘과 툴팁을 업데이트하는 함수
function setViewMode(mode) {
if (mode === 'card') {
listBody.classList.remove('list-view');
listBody.classList.add('card-view');
// 현재 카드뷰 -> 다음 행동은 '목록형 보기'
toggleIcon.className = 'fa fa-bars';
toggleBtn.title = '목록형으로 보기';
} else { // 'list'
listBody.classList.remove('card-view');
listBody.classList.add('list-view');
// 현재 목록뷰 -> 다음 행동은 '카드형 보기'
toggleIcon.className = 'fa fa-th-large';
toggleBtn.title = '카드형으로 보기';
}
// 사용자의 선택을 로컬 스토리지에 저장
localStorage.setItem('board_view_mode', mode);
}
// 토글 버튼 클릭 이벤트
toggleBtn.addEventListener('click', function() {
// 현재 뷰 모드를 확인하고 반대 모드로 전환
const currentMode = listBody.classList.contains('card-view') ? 'list' : 'card';
setViewMode(currentMode);
});
// 페이지 로드 시 저장된 뷰 모드를 적용
setViewMode(savedViewMode);
// 카드형 뷰에서 체크박스 클릭 시, 목록형 뷰의 동일한 체크박스도 동기화
const cardCheckboxes = document.querySelectorAll('input[name="chk_wr_id_card[]"]');
cardCheckboxes.forEach((cardChk, index) => {
cardChk.addEventListener('change', function() {
const listChk = document.getElementById('chk_wr_id_' + index);
if (listChk) {
listChk.checked = this.checked;
}
});
});
});