|
|
|
|
@ -90,6 +90,7 @@ document.addEventListener('DOMContentLoaded', () => {
|
|
|
|
|
const def = MODEL_DEFINITIONS[modelCode];
|
|
|
|
|
if(!def) return;
|
|
|
|
|
|
|
|
|
|
// 1. 기본 'All' 체크박스 생성
|
|
|
|
|
const allLabel = document.createElement('label');
|
|
|
|
|
allLabel.className = 'filter-check';
|
|
|
|
|
const allInput = document.createElement('input');
|
|
|
|
|
@ -107,6 +108,7 @@ document.addEventListener('DOMContentLoaded', () => {
|
|
|
|
|
|
|
|
|
|
const classInputs = [];
|
|
|
|
|
|
|
|
|
|
// 2. 모델별 클래스 필터 생성
|
|
|
|
|
def.classes.forEach(cls => {
|
|
|
|
|
const label = document.createElement('label');
|
|
|
|
|
label.className = 'filter-check';
|
|
|
|
|
@ -121,7 +123,6 @@ document.addEventListener('DOMContentLoaded', () => {
|
|
|
|
|
|
|
|
|
|
// 개별 체크박스 변경 시 로직
|
|
|
|
|
input.addEventListener('change', () => {
|
|
|
|
|
// 하나라도 꺼지면 All 체크 해제, 모두 켜지면 All 체크
|
|
|
|
|
const allChecked = classInputs.every(i => i.checked);
|
|
|
|
|
allInput.checked = allChecked;
|
|
|
|
|
updateActiveFilters(classInputs);
|
|
|
|
|
@ -135,6 +136,32 @@ document.addEventListener('DOMContentLoaded', () => {
|
|
|
|
|
updateActiveFilters(classInputs);
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
// 3. [신규 기능] LPR(차량 인식) 모드일 때만 'Zoom In' 체크박스 추가
|
|
|
|
|
if (modelCode === 'LPR') {
|
|
|
|
|
const zoomLabel = document.createElement('label');
|
|
|
|
|
zoomLabel.className = 'filter-check filter-push-right'; // 우측 정렬 클래스 적용
|
|
|
|
|
|
|
|
|
|
const zoomInput = document.createElement('input');
|
|
|
|
|
zoomInput.type = 'checkbox';
|
|
|
|
|
zoomInput.id = 'zoom-toggle';
|
|
|
|
|
zoomInput.checked = false; // 기본값: 선택 안 됨
|
|
|
|
|
|
|
|
|
|
// 줌 기능 이벤트 리스너 (필요 시 로직 구현)
|
|
|
|
|
zoomInput.addEventListener('change', (e) => {
|
|
|
|
|
if(e.target.checked) {
|
|
|
|
|
console.log("Zoom In Activated");
|
|
|
|
|
// 여기에 줌 확대 로직 추가
|
|
|
|
|
} else {
|
|
|
|
|
console.log("Zoom In Deactivated");
|
|
|
|
|
// 여기에 줌 해제 로직 추가
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
zoomLabel.appendChild(zoomInput);
|
|
|
|
|
zoomLabel.append(' Zoom In');
|
|
|
|
|
filterBar.appendChild(zoomLabel);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 초기 필터 상태 반영
|
|
|
|
|
updateActiveFilters(classInputs);
|
|
|
|
|
}
|
|
|
|
|
@ -473,3 +500,5 @@ document.addEventListener('DOMContentLoaded', () => {
|
|
|
|
|
|
|
|
|
|
loadModelList();
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
//2025-12-04 15:41
|