From cb36c6e89fcff42d3b26821e299c8e0e861c69f8 Mon Sep 17 00:00:00 2001 From: root Date: Mon, 21 Sep 2026 15:13:32 +0900 Subject: [PATCH] =?UTF-8?q?=EA=B4=80=EB=A6=AC=ED=8E=98=EC=9D=B4=EC=A7=80?= =?UTF-8?q?=20=EB=8D=B0=EC=9D=B4=ED=84=B0=20=EC=A0=84=EC=86=A1=20=EC=98=A4?= =?UTF-8?q?=EB=A5=98=20=EB=A9=94=EC=84=B8=EC=A7=80=20=ED=91=9C=EC=8B=9C1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app.js | 10 +++++++++- detail.html | 2 +- index.html | 2 +- src/index.js | 2 +- write.html | 2 +- 5 files changed, 13 insertions(+), 5 deletions(-) diff --git a/app.js b/app.js index 2a7c8da..d34ca28 100644 --- a/app.js +++ b/app.js @@ -166,7 +166,10 @@ function bindGlobal() { renderAuth(getAuthUser()); - authReady = loadAuthUser().then(function (user) { renderAuth(user); return user; }); + authReady = loadAuthUser().catch(function (error) { + console.error('[QA] SSO session load failed:', error); + return getAuthUser(); + }).then(function (user) { renderAuth(user); return user; }); const menuButton = qs('.menu-button'); const nav = qs('.global-nav'); if (menuButton && nav) { @@ -317,8 +320,10 @@ } form.addEventListener('submit', async function (event) { event.preventDefault(); + console.info('[QA] feedback submit started'); errorBox.style.display = 'none'; const currentUser = await (authReady || Promise.resolve(getAuthUser())); + console.info('[QA] SSO user resolved:', Boolean(currentUser), currentUser ? { hasRequesterId: Boolean(currentUser.requesterId), hasTenantId: Boolean(currentUser.requesterTenantId), hasPhone: Boolean(currentUser.phone) } : null); if (!currentUser) { errorBox.textContent = '로그인 후 문의를 등록할 수 있습니다.'; errorBox.style.display = 'block'; return; } if (!currentUser.requesterId || !currentUser.requesterTenantId) { errorBox.textContent = 'SSO에서 작성자 UUID와 테넌트 정보를 확인하지 못했습니다. 다시 로그인한 뒤 시도해주세요.'; errorBox.style.display = 'block'; return; } const title = qs('#title').value.trim(); @@ -333,12 +338,15 @@ try { const attachments = await uploadFiles(qs('#attachment').files, feedbackId, 'FEEDBACK_ATTACHMENT'); const payload = buildFeedbackPayload(post, currentUser, feedbackId, attachments); + console.info('[QA] sending feedback to Worker:', config.createFeedbackPath); const result = await postToApi(config.createFeedbackPath, payload); + console.info('[QA] Worker feedback response:', result); post.id = result.id || post.id; savePost(post); showToast(result.local ? '테스트 글로 저장했습니다. UUID가 생성되었습니다.' : '문의가 등록되었습니다.'); window.setTimeout(function () { window.location.href = 'detail.html?id=' + encodeURIComponent(post.id); }, 500); } catch (error) { + console.error('[QA] feedback submit failed:', error); errorBox.textContent = error.message || '등록 중 오류가 발생했습니다.'; errorBox.style.display = 'block'; submitButton.disabled = false; diff --git a/detail.html b/detail.html index 1de1188..0ad5fd3 100644 --- a/detail.html +++ b/detail.html @@ -5,5 +5,5 @@
EG-BIM SUPPORT

Q&A

EG-BIM 관련 문의하기

문의 상세

문의 내용과 답변을 확인할 수 있습니다.

문의 등록

문의 문의 제목

문의접수
2026-09-17작성자회사부서

첨부파일

첨부된 파일이 없습니다.

답변 0

-
+ diff --git a/index.html b/index.html index 676048a..ad42f23 100644 --- a/index.html +++ b/index.html @@ -36,6 +36,6 @@
- + diff --git a/src/index.js b/src/index.js index 0627402..0a0b73f 100644 --- a/src/index.js +++ b/src/index.js @@ -41,7 +41,7 @@ export default { headers.set('etag', object.httpEtag); headers.set('x-content-type-options', 'nosniff'); headers.set('referrer-policy', 'strict-origin-when-cross-origin'); - headers.set('cache-control', url.pathname.endsWith('.html') ? 'no-cache' : 'public, max-age=3600'); + headers.set('cache-control', url.pathname.endsWith('.html') || url.pathname.endsWith('.js') ? 'no-cache' : 'public, max-age=3600'); return new Response(request.method === 'HEAD' ? null : object.body, { headers }); } catch (error) { console.error(error); diff --git a/write.html b/write.html index 91634ed..4bf1074 100644 --- a/write.html +++ b/write.html @@ -5,5 +5,5 @@
EG-BIM SUPPORT

Q&A

EG-BIM 관련 문의하기

문의 등록

로그인한 사용자 정보로 문의가 등록됩니다.

로그인 상태를 확인하고 있습니다.
공개 설정
개인정보, 비밀번호, 인증번호 등 민감한 정보는 입력하지 마세요.
파일은 presigned URL을 통해 qa_cdn 버킷에 저장됩니다. 파일당 최대 30MB
-
+