당사는 귀하의 개인정보를 존중합니다. 거주 지역에 따라 관련 현지 개인정보 보호법에 의거하여 귀하의 개인정보에 관한 특정 권리를 가질 수 있습니다. 아래 옵션을 사용해 요청을 제출해 주세요. 당사는 귀하의 지역에 적용되는 법률에 따라 요청을 검토하고 답변합니다.
요청 처리 방식 이 페이지를 통해 요청을 제출하면 당사의 규정 준수 서비스 제공업체인 (Consentmo)가 요청 확인 및 처리, 오용 방지, 규정 준수 기록 보관만을 목적으로 귀하의 이메일 주소와 기술 정보(예: IP 주소)를 처리합니다. 자세한 내용은 Consentmo의 데이터 처리 정책을 참조하세요.
보안 안내: 귀하의 개인정보를 보호하기 위해 특정 요청을 처리하기 전에 본인 확인이 필요할 수 있습니다.
내 데이터 열람 또는 다운로드
계정 정보 및 주문 내역을 포함하여 당사가 보유한 귀하의 개인정보 사본을 요청할 수 있습니다. 가능한 경우 일반적으로 사용되는 전자 형식으로 해당 데이터를 제공합니다.
응답 기간: 당사는 귀하의 지역에 적용되는 법률에서 정한 기간에 따라 응답합니다.
내 정보 수정
당사가 보유한 귀하의 개인정보가 부정확하거나 불완전하다고 판단되는 경우 수정을 요청할 수 있습니다.
내 데이터 삭제
당사 스토어와 관련된 귀하의 개인정보 삭제를 요청할 수 있습니다.
⚠ 중요: 법률상 요구되거나 정당한 목적이 있는 경우(예: 세무 기록, 보안, 사기 방지 또는 거래 기록) 당사는 특정 정보를 보관할 수 있습니다.
개인정보 보호 선택 사항
개인정보 보호 선택 사항 관리 거주 지역에 따라 개인정보 판매를 거부하거나, 추적에 대한 동의를 철회하거나, 쿠키 환경설정을 맞춤 설정할 권리가 있을 수 있습니다.
기타 요청 및 문의
다른 유형의 요청(예: 처리에 대한 이의 제기 또는 구체적인 동의 관련 문의)을 제출하려면 당사가 도와드릴 수 있도록 연락해 주세요.
이메일: admin@simgasm.com
연락처 정보
개인정보 보호 권리 또는 이 페이지에 관한 문의는 다음 연락처로 해 주세요.
이메일: admin@simgasm.com
주소:
불만 제기
당사가 귀하의 우려 사항을 충분히 해결하지 못했다고 판단되는 경우, 귀하는 관할 지역의 데이터 보호 기관에 불만을 제기할 권리가 있을 수 있습니다.
본인은 이 요청을 처리하기 위한 이메일 주소 및 IP 주소 수집에 동의합니다. 자세한 내용은 개인정보 처리방침을 확인해 주세요.
'; var isEmailValid = function(email) { let regex = /^(([^()\[\]\\.,;:\s@"]+(\.[^()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/; if (email == '' || email == undefined) { return false; } else { return regex.test(email); } } var rowSendRequest = function(callback) { fetch('https://www.cloudflare.com/cdn-cgi/trace', { method: 'GET' , headers: { 'Content-Type': 'text/plain', }, }) .then(resp => resp.text()) .then(resp => { if (!resp.error) { let ipInfo = resp; let formData = new FormData(); formData.append('shop', Shopify.shop); formData.append('email', email); formData.append('type', type); formData.append('sourceOfRequest', 12); formData.append('ipAddress', ipInfo); formData.append('consentGiven', consentGiven); formData.append('page', 'row'); formData.append('lang', Shopify.locale ? Shopify.locale : ''); formData.append('gtranslateLang', (typeof isenseGDPR !== 'undefined' && isenseGDPR.Cookies) ? isenseGDPR.Cookies.get('googtrans') : ''); fetch('https://app.consentmo.com/gdprRequests/submitRequest', { method: 'POST', body: formData }) .then(resp => resp.json()) .then(resp => { if (!resp.error) { showInlineSuccessMessage(); } else { showInlineErrorMessage(resp.message); } if (typeof callback == 'function') { callback(resp); } }) .catch(error => { showInlineErrorMessage(error.message || '문제가 발생했습니다. 다시 시도해 주세요.'); }) } else { showInlineErrorMessage(resp.message || '문제가 발생했습니다. 다시 시도해 주세요.'); } }) } function showInlineSuccessMessage() { if (!activeSubmitButton) { return; } var form = activeSubmitButton.closest('form'); if (!form) { return; } var errNode = form.querySelector('.gdpr-request-error'); if (errNode) { errNode.remove(); } var successNode = form.querySelector('.gdpr-request-success'); if (!successNode) { successNode = document.createElement('p'); successNode.className = 'gdpr-request-success'; form.appendChild(successNode); } successNode.textContent = successMessage; } function showInlineErrorMessage(message) { if (!activeSubmitButton) { return; } var form = activeSubmitButton.closest('form'); if (!form) { return; } var successNode = form.querySelector('.gdpr-request-success'); if (successNode) { successNode.remove(); } var errorNode = form.querySelector('.gdpr-request-error'); if (!errorNode) { errorNode = document.createElement('p'); errorNode.className = 'gdpr-request-error'; form.appendChild(errorNode); } errorNode.textContent = message; } // 모달 DOM 설정 – 추가된 요소를 위해 DOMContentLoaded 내부에 배치
document.addEventListener("DOMContentLoaded", function() { document.querySelector("body").insertAdjacentHTML( 'beforeend', verificationModalContent); document.querySelector('.data-verification-close').addEventListener('click', function(e) { e.preventDefault(); closeVerificationModal(); }); document.querySelector('#data-verification-icon, #data-verification-container p').addEventListener('click', function(e) { e.preventDefault(); if(e.target.tagName === "A") { window.open(e.target.href, '_blank'); return; } document.querySelector('#data-verification-icon').classList.add("clicked"); setTimeout(()=>{ toggleFadeiSense(document.querySelector("#data-verification-modal"), false); document.querySelector('#data-verification-background .loading').style.display = 'inline-block'; consentGiven = true; rowSendRequest(function(resp) { consentGiven = false; closeVerificationModal(); }); }, 400); }); }); function openVerificationModal(){ if(!isEmailValid(email)) { showInlineErrorMessage('유효하지 않은 이메일 주소입니다'); return; } toggleFadeiSense(document.querySelector("#data-verification-modal"), true); toggleFadeiSense(document.querySelector('#data-verification-background'), true); document.querySelector('#data-verification-container input').focus(); } function closeVerificationModal(){ toggleFadeiSense(document.querySelector("#data-verification-background"), false); document.querySelector('#data-verification-icon').classList.remove("clicked"); document.querySelector('#data-verification-background .loading').style.display = 'none'; let rowForms = document.querySelectorAll('.form-row-request'); rowForms.forEach(function(rowForm) { if (rowForm.style.display !== "none") { let rowFormLinks = rowForm.previousElementSibling.querySelectorAll('li'); if (rowFormLinks.length === 1) { rowFormLinks[0].querySelector('button').focus(); } else { rowFormLinks = rowForm.parentElement; if (rowFormLinks.nodeName === 'LI') { rowFormLinks.querySelector('button').focus(); } } } }); } // 버튼 클릭 핸들러 – 즉시 연결(DOMContentLoaded 내부가 아님) // 페이지 로드 시점과 관계없이 스크립트가 실행되도록 합니다. console.log('[ROW] 스크립트 실행 중. document.readyState =', document.readyState); console.log('[ROW] #btn-row-access-data-request 요소:', document.querySelector('#btn-row-access-data-request')); console.log('[ROW] #form-row-access-data-request 요소:', document.querySelector('#form-row-access-data-request')); // 내 데이터에 액세스하거나 다운로드 var btnAccessData = document.querySelector('#btn-row-access-data-request'); if (btnAccessData) { console.log('[ROW] #btn-row-access-data-request에 클릭 리스너를 연결합니다'); btnAccessData.addEventListener('click', function(e) { console.log('[ROW] "데이터 보고서 요청"을 클릭했습니다!'); e.preventDefault(); let isExpanded = this.getAttribute('aria-expanded') === 'true' ? true : false; console.log('[ROW] 이전 aria-expanded 값:', isExpanded); rowSlideUpAll(); var formEl = document.querySelector('#form-row-access-data-request'); console.log('[ROW] 양식 요소:', formEl, '표시 상태:', formEl ? window.getComputedStyle(formEl).display : '해당 없음'); if(!isExpanded) { console.log('[ROW] 양식을 아래로 슬라이드'); slideDown(formEl, 200); this.setAttribute("aria-expanded", "true"); } else { console.log('[ROW] 양식을 위로 슬라이드'); slideUp(formEl, 200); this.setAttribute("aria-expanded", "false"); } }); } else { console.error('[ROW] 실패: DOM에서 #btn-row-access-data-request를 찾을 수 없습니다!'); } document.querySelector('#form-row-access-data-request-submit').addEventListener('click', function(e) { e.preventDefault(); activeSubmitButton = this; email = document.querySelector('#form-row-access-data-request-email').value; type = 'customer/report'; openVerificationModal(); }); // 내 정보 수정 document.querySelector('#btn-row-correct-info-request').addEventListener('click', function(e) { e.preventDefault(); let isExpanded = this.getAttribute('aria-expanded') === 'true' ? true : false; rowSlideUpAll(); if(!isExpanded) { slideDown(document.querySelector('#form-row-correct-info-request'), 200); this.setAttribute("aria-expanded", "true"); } else { slideUp(document.querySelector('#form-row-correct-info-request'), 200); this.setAttribute("aria-expanded", "false"); } }); document.querySelector('#form-row-correct-info-request-submit').addEventListener('click', function(e) { e.preventDefault(); activeSubmitButton = this; email = document.querySelector('#form-row-correct-info-request-email').value; type = 'customer/edit'; openVerificationModal(); }); // 내 데이터 삭제 document.querySelector('#btn-row-delete-data-request').addEventListener('click', function(e) { e.preventDefault(); let isExpanded = this.getAttribute('aria-expanded') === 'true' ? true : false; rowSlideUpAll(); if(!isExpanded) { slideDown(document.querySelector('#form-row-delete-data-request'), 200); this.setAttribute("aria-expanded", "true"); } else { slideUp(document.querySelector('#form-row-delete-data-request'), 200); this.setAttribute("aria-expanded", "false"); } }); document.querySelector('#form-row-delete-data-request-submit').addEventListener('click', function(e) { e.preventDefault(); activeSubmitButton = this; email = document.querySelector('#form-row-delete-data-request-email').value; type = 'customer/delete'; openVerificationModal(); }); // 개인정보 보호 설정 업데이트 document.querySelector('#btn-row-update-privacy-settings').addEventListener('click', function(e) { e.preventDefault(); if (typeof showPreferences === 'function') { showPreferences(this); return; } let settingsButton = document.querySelector('.cc-window .cc-settings'); if (settingsButton) { settingsButton.click(); return; } alert('이 페이지에서는 쿠키 설정을 사용할 수 없습니다.'); }); // 접근성을 위한 데이터 확인 모달의 키보드 탐색 document.addEventListener("DOMContentLoaded", function() { document.querySelector('#data-verification-modal').addEventListener('keydown', function(e) { let isTabPressed = e.keyCode === 9 || e.key === "Tab" || e.code === "Tab"; let isEscapePressed = e.keyCode === 27 || e.key === "Escape" || e.code === "Escape"; let isSpacePressed = e.keyCode === 32 || e.key === " " || e.code === "Space"; let isEnterPressed = e.keyCode === 13 || e.key === "Enter" || e.code === "Enter"; let dataVerificationCloseButton = document.querySelector('.data-verification-close'); let dataVerificationCheckbox = document.querySelector('#data-verification-container input'); let dataVerificationLink = document.querySelector('#data-verification-container a'); let executeFocus = (focusElement) => {focusElement.focus();e.preventDefault();} if (isEscapePressed) { if (dataVerificationCloseButton) { dataVerificationCloseButton.click(); } } if (isSpacePressed || isEnterPressed) { if (document.activeElement === dataVerificationCheckbox) { document.querySelector('#data-verification-container #data-verification-icon').click(); } } if (isTabPressed) { if (e.shiftKey) { if (dataVerificationCloseButton && document.activeElement === dataVerificationCloseButton) { executeFocus(dataVerificationLink); } } else { if (dataVerificationLink && document.activeElement === dataVerificationLink) { executeFocus(dataVerificationCloseButton); } } } }); });