From 0626d9b2264c18c4137288bb94395e7abf4672e0 Mon Sep 17 00:00:00 2001 From: Alfa Team Date: Wed, 24 Jun 2026 23:14:43 -0400 Subject: [PATCH] Apply legal corrected package --- assets/theme-v2/js/gamefoundry-partials.js | 10 +- assets/theme-v2/js/legal-document-page.js | 103 ----------- assets/theme-v2/partials/footer.html | 7 +- ...26175_OWNER_054-legal-corrected-package.md | 73 ++++++++ .../dev/reports/codex_changed_files.txt | 31 +++- docs_build/dev/reports/codex_review.diff | Bin 173301 -> 212382 bytes .../reports/coverage_changed_js_guardrail.txt | 4 +- .../reports/playwright_v8_coverage_report.txt | 25 +-- legal/community-guidelines.html | 99 ++++++---- legal/community-guidelines.md | 63 +++++++ legal/cookie-policy.html | 124 +++++++++---- legal/cookie-policy.md | 81 +++++++++ legal/cookies-policy.html | 45 +---- legal/copyright-policy.html | 115 ++++++++---- legal/copyright-policy.md | 73 ++++++++ legal/disclaimer.html | 50 ----- legal/dmca-policy.html | 107 +++++++---- legal/dmca-policy.md | 59 ++++++ legal/index.html | 56 ++++++ legal/index.md | 23 +++ legal/legal-nav.js | 37 ++++ legal/privacy-policy.html | 162 +++++++++++++---- legal/privacy-policy.md | 129 +++++++++++++ legal/terms-of-service.html | 116 ++++++++++++ legal/terms-of-service.md | 129 +++++++++++++ legal/terms.html | 43 +---- .../tools/RemainingLegalPages.spec.mjs | 172 +++++++----------- 27 files changed, 1381 insertions(+), 555 deletions(-) delete mode 100644 assets/theme-v2/js/legal-document-page.js create mode 100644 docs_build/dev/reports/PR_26175_OWNER_054-legal-corrected-package.md create mode 100644 legal/community-guidelines.md create mode 100644 legal/cookie-policy.md create mode 100644 legal/copyright-policy.md delete mode 100644 legal/disclaimer.html create mode 100644 legal/dmca-policy.md create mode 100644 legal/index.html create mode 100644 legal/index.md create mode 100644 legal/legal-nav.js create mode 100644 legal/privacy-policy.md create mode 100644 legal/terms-of-service.html create mode 100644 legal/terms-of-service.md diff --git a/assets/theme-v2/js/gamefoundry-partials.js b/assets/theme-v2/js/gamefoundry-partials.js index 6945db507..681d7874c 100644 --- a/assets/theme-v2/js/gamefoundry-partials.js +++ b/assets/theme-v2/js/gamefoundry-partials.js @@ -93,13 +93,15 @@ "owner-notes": "owner/notes.html", "owner-site-settings": "owner/site-settings.html", "owner-themes": "owner/themes.html", - "community-guidelines": "legal/community-guidelines.html", + "legal-overview": "legal/index.html", + "terms-of-service": "legal/terms-of-service.html", + "terms-legal": "legal/terms.html", + "privacy-policy": "legal/privacy-policy.html", + "cookie-policy": "legal/cookie-policy.html", "cookies-policy": "legal/cookies-policy.html", + "community-guidelines": "legal/community-guidelines.html", "copyright-policy": "legal/copyright-policy.html", - disclaimer: "legal/disclaimer.html", "dmca-policy": "legal/dmca-policy.html", - "privacy-policy": "legal/privacy-policy.html", - "terms-legal": "legal/terms.html", account: "account/index.html", "account-achievements": "account/achievements.html", "account-ai-credits": "account/ai-credits.html", diff --git a/assets/theme-v2/js/legal-document-page.js b/assets/theme-v2/js/legal-document-page.js deleted file mode 100644 index c5f6165f6..000000000 --- a/assets/theme-v2/js/legal-document-page.js +++ /dev/null @@ -1,103 +0,0 @@ -import { readPublishedLegalDocument } from "../../../src/api/legal-api-client.js"; - -function target(root, selector) { - return root.querySelector(selector); -} - -function text(value, fallback = "") { - const normalized = String(value || "").trim(); - return normalized || fallback; -} - -function setStatus(root, status, message) { - const statusTarget = target(root, "[data-legal-document-status]"); - if (statusTarget) { - statusTarget.textContent = `${status}: ${message}`; - } -} - -function effectiveDate(value) { - const date = new Date(value || ""); - if (Number.isNaN(date.getTime())) { - return "Effective date unavailable."; - } - return `Effective ${new Intl.DateTimeFormat("en-US", { - day: "numeric", - month: "long", - timeZone: "UTC", - year: "numeric", - }).format(date)}.`; -} - -function unavailableMessage(title) { - const label = text(title, "legal document"); - if (label === "Terms of Service") { - return "Published Terms are unavailable."; - } - return `Published ${label} is unavailable.`; -} - -function renderBody(root, bodyMarkdown) { - const body = target(root, "[data-legal-document-body]"); - if (!body) { - return; - } - body.replaceChildren(); - text(bodyMarkdown).split(/\n{2,}/).map((block) => block.trim()).filter(Boolean).forEach((block) => { - const paragraph = document.createElement("p"); - paragraph.textContent = block.replace(/^#+\s*/, ""); - body.append(paragraph); - }); -} - -function renderUnavailable(root, payload) { - const title = target(root, "[data-legal-document-title]"); - const effective = target(root, "[data-legal-document-effective]"); - const body = target(root, "[data-legal-document-body]"); - const titleText = text(payload.title, title?.textContent || "legal document"); - if (title) { - title.textContent = titleText; - } - if (effective) { - effective.textContent = unavailableMessage(titleText); - } - if (body) { - body.replaceChildren(); - } - setStatus(root, payload.status || "WARN", text(payload.diagnostic, "Published legal content is unavailable.")); -} - -function renderPublished(root, payload) { - const title = target(root, "[data-legal-document-title]"); - const effective = target(root, "[data-legal-document-effective]"); - if (title) { - title.textContent = text(payload.title, title.textContent); - } - if (effective) { - effective.textContent = effectiveDate(payload.effectiveAt); - } - renderBody(root, payload.bodyMarkdown); - setStatus(root, "PASS", text(payload.diagnostic, "Loaded published legal content.")); -} - -document.addEventListener("DOMContentLoaded", () => { - const root = document.querySelector("[data-legal-document-page]"); - if (!root) { - return; - } - try { - const documentType = root.dataset.legalDocumentType || ""; - const payload = readPublishedLegalDocument(documentType); - if (payload.available === true) { - renderPublished(root, payload); - return; - } - renderUnavailable(root, payload); - } catch (error) { - renderUnavailable(root, { - diagnostic: error instanceof Error ? error.message : "Legal document is unavailable.", - status: "FAIL", - title: target(root, "[data-legal-document-title]")?.textContent || "Legal Document", - }); - } -}); diff --git a/assets/theme-v2/partials/footer.html b/assets/theme-v2/partials/footer.html index 2b800c198..e2eab66d5 100644 --- a/assets/theme-v2/partials/footer.html +++ b/assets/theme-v2/partials/footer.html @@ -41,12 +41,13 @@