가정의달 할인 10%
알림받기 쿠폰까지 받으면 가격 나옵니다!!
⚠️ Để áp dụng những ưu đãi hấp dẫn cho tất cả các bài đăng, bạn cần nhấp vào liên kết và đăng nhập hoặc nhận một phiếu giảm giá.
// PHP 데이터를 JavaScript로 전달
window.viewPageData = {
currentProduct: {
id: 130801,
seo_url: ‘프링글스110g-외-10종-3-3-3-골라담기-ab70’,
title: ‘프링글스110g 외 10종 3+3+3 골라담기’,
price: ‘13,450원’,
site: ‘네이버 브랜드스토어’,
category: ‘식품’,
thumbnail: ‘https://image.hotdeal.zip/thumbnails/2026/04/23/thumb_d61931ae118c84a812debacc9b710266.webp’,
url: ‘https://hotdeal.zip/프링글스110g-외-10종-3-3-3-골라담기-ab70’,
post_url: ‘https://hotdealzip.mycafe24.com/ruliweb_view.php?url=https%3A%2F%2Fbbs.ruliweb.com%2Fmarket%2Fboard%2F1020%2Fread%2F103621%3Fpage%3D1’
},
shareData: {
url: ‘https://hotdeal.zip/프링글스110g-외-10종-3-3-3-골라담기-ab70’,
title: ‘프링글스110g 외 10종 3+3+3 골라담기’,
description: ‘네이버 브랜드스토어에서 판매중인 프링글스110g 외 10종 3+3+3 골라담기 핫딜 정보’,
image: ‘https://image.hotdeal.zip/thumbnails/2026/04/23/thumb_d61931ae118c84a812debacc9b710266.webp’
},
comments: {
dealId: 130801,
currentPage: 1,
hasMore: true
}
};
function openReportModal(event) {
if (event) {
event.preventDefault();
}
const modal = document.getElementById(‘reportModal’);
if (!modal) {
return false;
}
modal.classList.add(‘is-open’);
modal.setAttribute(‘aria-hidden’, ‘false’);
document.body.classList.add(‘report-modal-open’);
return false;
}
function closeReportModal() {
const modal = document.getElementById(‘reportModal’);
if (!modal) {
return;
}
modal.classList.remove(‘is-open’);
modal.setAttribute(‘aria-hidden’, ‘true’);
document.body.classList.remove(‘report-modal-open’);
}
document.addEventListener(‘DOMContentLoaded’, function() {
const modal = document.getElementById(‘reportModal’);
if (!modal) {
return;
}
modal.addEventListener(‘click’, function(event) {
if (event.target === modal) {
closeReportModal();
}
});
document.addEventListener(‘keydown’, function(event) {
if (event.key === ‘Escape’ && modal.classList.contains(‘is-open’)) {
closeReportModal();
}
});
const shouldOpenModal = false;
if (shouldOpenModal) {
openReportModal();
}
});
function handleBackButton(event) {
event.preventDefault();
// 히스토리 길이 체크 (1이면 첫 페이지)
const hasHistory = window.history.length > 1;
// 이전 페이지가 자신의 사이트인지 체크
const referrer = document.referrer;
const currentDomain = window.location.hostname;
const isFromOwnSite = referrer && referrer.includes(currentDomain);
console.log(‘뒤로가기 체크:’, {
히스토리길이: window.history.length,
이전페이지: referrer,
자신의사이트: isFromOwnSite
});
// 자신의 사이트에서 왔고 히스토리가 있으면 뒤로가기
if (hasHistory && isFromOwnSite) {
console.log(‘✅ 히스토리 뒤로가기’);
window.history.back();
} else {
// 다이렉트 접속이거나 외부 사이트에서 온 경우 메인으로
console.log(‘🏠 메인으로 이동 (다이렉트 접속 또는 외부 유입)’);
window.location.href = ‘/’;
}
}
document.addEventListener(‘DOMContentLoaded’, function() {
// 댓글 관련 변수
let currentPage = 1;
let hasMoreComments = true;
let isReplyMode = false;
// DOM 요소들
const commentForm = document.getElementById(‘commentForm’);
const commentsList = document.getElementById(‘comments-list’);
const loadMoreBtn = document.getElementById(‘load-more-comments’);
const loadMoreSection = document.getElementById(‘load-more-section’);
const charCounter = document.getElementById(‘char-counter’);
const commentContent = document.getElementById(‘comment_content’);
const cancelReplyBtn = document.getElementById(‘cancel-reply’);
const commentCount = document.getElementById(‘comment-count’);
const authorNameInput = document.getElementById(‘author_name’);
// 익명 닉네임 생성 및 관리
function getOrCreateAnonymousName() {
let anonymousName = localStorage.getItem(‘hotdeal_anonymous_name’);
if (!anonymousName) {
// 고유한 익명 닉네임 생성
const randomId = Math.random().toString(36).substr(2, 6).toUpperCase();
anonymousName = ‘익명_’ + randomId;
localStorage.setItem(‘hotdeal_anonymous_name’, anonymousName);
}
return anonymousName;
}
// 닉네임 입력 필드 초기화
function initializeNickname() {
const anonymousName = getOrCreateAnonymousName();
const savedNickname = localStorage.getItem(‘hotdeal_user_nickname’);
// 사용자가 설정한 닉네임이 있으면 사용, 없으면 익명 닉네임 사용
if (savedNickname && savedNickname !== anonymousName) {
authorNameInput.value = savedNickname;
authorNameInput.setAttribute(‘data-is-default’, ‘false’);
} else {
authorNameInput.value = anonymousName;
authorNameInput.setAttribute(‘data-is-default’, ‘true’);
}
// 사용자가 닉네임을 수정하면 기본값이 아님을 표시하고 저장
authorNameInput.addEventListener(‘input’, function() {
const currentValue = this.value.trim();
if (currentValue && currentValue !== anonymousName) {
this.setAttribute(‘data-is-default’, ‘false’);
localStorage.setItem(‘hotdeal_user_nickname’, currentValue);
} else if (currentValue === anonymousName) {
this.setAttribute(‘data-is-default’, ‘true’);
localStorage.removeItem(‘hotdeal_user_nickname’);
}
});
// 포커스 시 기본값이면 선택
authorNameInput.addEventListener(‘focus’, function() {
if (this.getAttribute(‘data-is-default’) === ‘true’) {
this.select();
}
});
// 빈 값으로 변경하려고 할 때 익명 닉네임으로 되돌리기
authorNameInput.addEventListener(‘blur’, function() {
if (!this.value.trim()) {
this.value = anonymousName;
this.setAttribute(‘data-is-default’, ‘true’);
localStorage.removeItem(‘hotdeal_user_nickname’);
}
});
}
// 닉네임 초기화 실행
initializeNickname();
// 문자 수 카운터
commentContent.addEventListener(‘input’, function() {
const count = this.value.length;
charCounter.textContent = count;
if (count > 1000) {
charCounter.style.color = ‘#ff4444’;
} else {
charCounter.style.color = ‘#666’;
}
});
// 댓글 로드
function loadComments(page = 1, append = false) {
console.log(‘댓글 로드 시작:’, { deal_id: window.viewPageData.comments.dealId, page: page });
fetch(`/api/comments.php?deal_id=${window.viewPageData.comments.dealId}&page=${page}`)
.then(response => {
console.log(‘응답 상태:’, response.status);
return response.json();
})
.then(data => {
console.log(‘응답 데이터:’, data);
if (data.success) {
if (!append) {
commentsList.innerHTML = ”;
}
if (data.comments.length > 0) {
data.comments.forEach(comment => {
commentsList.appendChild(createCommentElement(comment));
});
} else if (!append) {
// 댓글이 없을 때 메시지 표시
commentsList.innerHTML = ‘
💬 댓글 0개
더보기
0/1000
취소
댓글 작성
등록일: 2026-04-23 13:50
신고하기
×
.hdz-report-root .report-message {
margin-top: 12px;
padding: 9px 10px;
border-radius: 6px;
font-size: 12px;
border: 1px solid var(–border-light);
background: var(–hover-bg);
color: var(–text-primary);
}
.hdz-report-root .report-message.success {
border-color: rgba(40, 167, 69, 0.3);
background: rgba(40, 167, 69, 0.08);
color: #28a745;
}
.hdz-report-root .report-message.error {
border-color: rgba(255, 68, 68, 0.3);
background: rgba(255, 68, 68, 0.06);
color: #ff4444;
}
.hdz-report-root .report-hp {
position: absolute;
left: -9999px;
top: -9999px;
width: 1px;
height: 1px;
overflow: hidden;
}
.hdz-report-root .report-panel {
margin-top: 14px;
border: 1px solid var(–border-light);
border-radius: 8px;
background: var(–surface-color);
padding: 14px;
}
.hdz-report-root .deal-title {
overflow-wrap: anywhere;
word-break: break-word;
margin-bottom: 10px;
}
.hdz-report-root .deal-meta span {
max-width: 100%;
overflow-wrap: anywhere;
word-break: break-word;
line-height: 1.35;
}
.hdz-report-root .report-form-grid {
display: grid;
grid-template-columns: 1fr;
gap: 12px;
}
.hdz-report-root .comment-form label {
display: block;
font-size: 12px;
color: var(–text-secondary);
margin-bottom: 6px;
}
.hdz-report-root .comment-form select,
.hdz-report-root .comment-form textarea {
width: 100%;
padding: 9px 10px;
border: 1px solid var(–border-light);
border-radius: 6px;
font-size: 12px;
background: var(–surface-color);
color: var(–text-primary);
transition: all 0.2s ease;
font-family: inherit;
}
.hdz-report-root .comment-form textarea {
resize: vertical;
min-height: 110px;
line-height: 1.4;
}
.hdz-report-root .comment-form select:focus,
.hdz-report-root .comment-form textarea:focus {
outline: none;
border-color: var(–accent-color);
box-shadow: 0 0 0 2px rgba(0, 122, 255, 0.10);
}
.hdz-report-root .hint {
margin-top: 5px;
font-size: 11px;
color: var(–text-secondary);
}
.hdz-report-root .report-actions {
display: flex;
justify-content: space-between;
align-items: center;
gap: 12px;
margin-top: 4px;
}
.hdz-report-root .report-submit {
border: none;
border-radius: 6px;
background: var(–accent-color);
color: #fff;
padding: 8px 14px;
font-size: 12px;
font-weight: 600;
cursor: pointer;
}
.hdz-report-root .report-submit:hover {
background: var(–accent-hover);
}
@media (min-width: 720px) {
.hdz-report-root .report-form-grid {
grid-template-columns: 1fr 1fr;
}
.hdz-report-root .report-form-grid .full {
grid-column: 1 / -1;
}
}
@media (max-width: 768px) {
.hdz-report-root .deal-title {
font-size: 16px;
}
.hdz-report-root .report-panel {
padding: 12px;
}
}
🚨 신고하기
📦 프링글스110g 외 10종 3+3+3 골라담기
웹사이트
신고 항목
선택해주세요
가격 정보가 이상해요
구매 링크가 이상해요
중복/스팸 게시물 같아요
불법/유해/위험한 내용이에요
기타 (직접 입력)
기타를 선택하면 신고 내용을 꼭 입력해주세요.
신고 내용
최대 2000자
기타 항목은 신고 내용을 꼭 입력해주세요
신고 보내기
(function () {
const reason = document.getElementById(
‘report-in-view-reason’
);
const details = document.getElementById(
‘report-in-view-details’
);
if (!reason || !details) {
return;
}
function sync() {
const isOther = reason.value === ‘other’;
details.required = isOther;
details.placeholder = isOther
? ‘기타 사유를 자세히 입력해주세요.’
: ‘상세 내용은 선택 입력입니다.’;
}
reason.addEventListener(‘change’, sync);
sync();
})();
// PHP 데이터를 JavaScript로 전달
window.viewPageData = {
currentProduct: {
id: 130801,
seo_url: ‘프링글스110g-외-10종-3-3-3-골라담기-ab70’,
title: ‘프링글스110g 외 10종 3+3+3 골라담기’,
price: ‘13,450원’,
site: ‘네이버 브랜드스토어’,
category: ‘식품’,
thumbnail: ‘https://image.hotdeal.zip/thumbnails/2026/04/23/thumb_d61931ae118c84a812debacc9b710266.webp’,
url: ‘https://hotdeal.zip/프링글스110g-외-10종-3-3-3-골라담기-ab70’,
post_url: ‘https://hotdealzip.mycafe24.com/ruliweb_view.php?url=https%3A%2F%2Fbbs.ruliweb.com%2Fmarket%2Fboard%2F1020%2Fread%2F103621%3Fpage%3D1’
},
shareData: {
url: ‘https://hotdeal.zip/프링글스110g-외-10종-3-3-3-골라담기-ab70’,
title: ‘프링글스110g 외 10종 3+3+3 골라담기’,
description: ‘네이버 브랜드스토어에서 판매중인 프링글스110g 외 10종 3+3+3 골라담기 핫딜 정보’,
image: ‘https://image.hotdeal.zip/thumbnails/2026/04/23/thumb_d61931ae118c84a812debacc9b710266.webp’
},
comments: {
dealId: 130801,
currentPage: 1,
hasMore: true
}
};
function openReportModal(event) {
if (event) {
event.preventDefault();
}
const modal = document.getElementById(‘reportModal’);
if (!modal) {
return false;
}
modal.classList.add(‘is-open’);
modal.setAttribute(‘aria-hidden’, ‘false’);
document.body.classList.add(‘report-modal-open’);
return false;
}
function closeReportModal() {
const modal = document.getElementById(‘reportModal’);
if (!modal) {
return;
}
modal.classList.remove(‘is-open’);
modal.setAttribute(‘aria-hidden’, ‘true’);
document.body.classList.remove(‘report-modal-open’);
}
document.addEventListener(‘DOMContentLoaded’, function() {
const modal = document.getElementById(‘reportModal’);
if (!modal) {
return;
}
modal.addEventListener(‘click’, function(event) {
if (event.target === modal) {
closeReportModal();
}
});
document.addEventListener(‘keydown’, function(event) {
if (event.key === ‘Escape’ && modal.classList.contains(‘is-open’)) {
closeReportModal();
}
});
const shouldOpenModal = false;
if (shouldOpenModal) {
openReportModal();
}
});
function handleBackButton(event) {
event.preventDefault();
// 히스토리 길이 체크 (1이면 첫 페이지)
const hasHistory = window.history.length > 1;
// 이전 페이지가 자신의 사이트인지 체크
const referrer = document.referrer;
const currentDomain = window.location.hostname;
const isFromOwnSite = referrer && referrer.includes(currentDomain);
console.log(‘뒤로가기 체크:’, {
히스토리길이: window.history.length,
이전페이지: referrer,
자신의사이트: isFromOwnSite
});
// 자신의 사이트에서 왔고 히스토리가 있으면 뒤로가기
if (hasHistory && isFromOwnSite) {
console.log(‘✅ 히스토리 뒤로가기’);
window.history.back();
} else {
// 다이렉트 접속이거나 외부 사이트에서 온 경우 메인으로
console.log(‘🏠 메인으로 이동 (다이렉트 접속 또는 외부 유입)’);
window.location.href = ‘/’;
}
}
document.addEventListener(‘DOMContentLoaded’, function() {
// 댓글 관련 변수
let currentPage = 1;
let hasMoreComments = true;
let isReplyMode = false;
// DOM 요소들
const commentForm = document.getElementById(‘commentForm’);
const commentsList = document.getElementById(‘comments-list’);
const loadMoreBtn = document.getElementById(‘load-more-comments’);
const loadMoreSection = document.getElementById(‘load-more-section’);
const charCounter = document.getElementById(‘char-counter’);
const commentContent = document.getElementById(‘comment_content’);
const cancelReplyBtn = document.getElementById(‘cancel-reply’);
const commentCount = document.getElementById(‘comment-count’);
const authorNameInput = document.getElementById(‘author_name’);
// 익명 닉네임 생성 및 관리
function getOrCreateAnonymousName() {
let anonymousName = localStorage.getItem(‘hotdeal_anonymous_name’);
if (!anonymousName) {
// 고유한 익명 닉네임 생성
const randomId = Math.random().toString(36).substr(2, 6).toUpperCase();
anonymousName = ‘익명_’ + randomId;
localStorage.setItem(‘hotdeal_anonymous_name’, anonymousName);
}
return anonymousName;
}
// 닉네임 입력 필드 초기화
function initializeNickname() {
const anonymousName = getOrCreateAnonymousName();
const savedNickname = localStorage.getItem(‘hotdeal_user_nickname’);
// 사용자가 설정한 닉네임이 있으면 사용, 없으면 익명 닉네임 사용
if (savedNickname && savedNickname !== anonymousName) {
authorNameInput.value = savedNickname;
authorNameInput.setAttribute(‘data-is-default’, ‘false’);
} else {
authorNameInput.value = anonymousName;
authorNameInput.setAttribute(‘data-is-default’, ‘true’);
}
// 사용자가 닉네임을 수정하면 기본값이 아님을 표시하고 저장
authorNameInput.addEventListener(‘input’, function() {
const currentValue = this.value.trim();
if (currentValue && currentValue !== anonymousName) {
this.setAttribute(‘data-is-default’, ‘false’);
localStorage.setItem(‘hotdeal_user_nickname’, currentValue);
} else if (currentValue === anonymousName) {
this.setAttribute(‘data-is-default’, ‘true’);
localStorage.removeItem(‘hotdeal_user_nickname’);
}
});
// 포커스 시 기본값이면 선택
authorNameInput.addEventListener(‘focus’, function() {
if (this.getAttribute(‘data-is-default’) === ‘true’) {
this.select();
}
});
// 빈 값으로 변경하려고 할 때 익명 닉네임으로 되돌리기
authorNameInput.addEventListener(‘blur’, function() {
if (!this.value.trim()) {
this.value = anonymousName;
this.setAttribute(‘data-is-default’, ‘true’);
localStorage.removeItem(‘hotdeal_user_nickname’);
}
});
}
// 닉네임 초기화 실행
initializeNickname();
// 문자 수 카운터
commentContent.addEventListener(‘input’, function() {
const count = this.value.length;
charCounter.textContent = count;
if (count > 1000) {
charCounter.style.color = ‘#ff4444’;
} else {
charCounter.style.color = ‘#666’;
}
});
// 댓글 로드
function loadComments(page = 1, append = false) {
console.log(‘댓글 로드 시작:’, { deal_id: window.viewPageData.comments.dealId, page: page });
fetch(`/api/comments.php?deal_id=${window.viewPageData.comments.dealId}&page=${page}`)
.then(response => {
console.log(‘응답 상태:’, response.status);
return response.json();
})
.then(data => {
console.log(‘응답 데이터:’, data);
if (data.success) {
if (!append) {
commentsList.innerHTML = ”;
}
if (data.comments.length > 0) {
data.comments.forEach(comment => {
commentsList.appendChild(createCommentElement(comment));
});
} else if (!append) {
// 댓글이 없을 때 메시지 표시
commentsList.innerHTML = ‘아직 댓글이 없습니다. 첫 번째 댓글을 남겨보세요!
Chưa có bình luận nào.
💬 댓글 0개