Skip to content

Add footer-legal block for fortinet.com's second (gray) footer section - #25

Merged
samshao merged 1 commit into
mainfrom
footer-legal-section
Aug 10, 2026
Merged

Add footer-legal block for fortinet.com's second (gray) footer section#25
samshao merged 1 commit into
mainfrom
footer-legal-section

Conversation

@samshao

@samshao samshao commented Aug 10, 2026

Copy link
Copy Markdown
Owner

Summary

Adds a new footer-legal block for the second (light gray) section fortinet.com's real footer has below the main black footer — a sponsor/partner badge row, copyright line, extended legal-links row, tagline, and "Also of Interest" links. We didn't have this section at all.

  • New block rather than more content in the existing footer block: this section is full-bleed light gray (#e6e6e6, measured directly from fortinet.com's .footer-row.copyrights), not centered-on-black like the columns above it — needs its own section-level override of the generic centered footer .footer > div padding rule (same pattern already used in cards-panel.css).
  • decorate() classifies each authored row by what it actually contains (images+links → badge row, text starting "Copyright" → copyright line, "Also of Interest" → that row, 2+ links → legal-links row, otherwise → tagline), so an author isn't locked into an exact row order.
  • Self-hosted all 7 badge images (Fortinet wordmark + Founders Cup, FC Barcelona, DP World Tour, PGA Tour Americas, Juventus, Romain Attanasio) from fortinet.com's own DAM. Badge order/spacing matched to fortinet.com's real x-positions — the wordmark sits well apart from the sponsor-badge cluster after it, not an equal gap between every badge.

No live demo URL — here's why

The real /footer content lives in a connected CMS document (Word/Google Docs-style, per .migration/project.json), not in this repo, and I don't have edit access to it. That also means drafts/ test pages don't help here — header/footer always load from that same real content path regardless of which page you're viewing, even locally with --html-folder drafts.

I tested this by injecting the block's expected authored markup directly into the live footer and running decorate() on it in a real browser session, verified at 390px and 1464px against fortinet.com directly (see screenshots in chat).

To make this visible on a real preview URL: add a new section to the footer CMS document with a "Footer Legal" block (one row per part: badges, copyright, legal links, tagline, "Also of Interest") — the exact content/table to paste in is in the content draft shared earlier in this conversation. Once that's in, the feature-preview URL will show it rendering, and I can re-verify against fortinet.com there.

Test URL

None yet — see above. https://footer-legal-section--modernization-agent-test--samshao.aem.page/ will show it once the footer doc has content for it.

🤖 Generated with Claude Code

fortinet.com's footer has a whole section below the main black footer that
this site didn't have at all: a light-gray strip (bg #e6e6e6, measured
directly from .footer-row.copyrights) with a sponsor/partner badge row, a
copyright line, an extended legal-links row, a tagline, and an "Also of
Interest" links row.

New block, not just more content in the existing footer block, since this
section is a real markup/style if — full-bleed light gray rather than the
black footer's centered-on-black columns, and needs its own section-level
override of the generic centered "footer .footer > div" padding rule
(matching the same full-bleed-override pattern already used in
cards-panel.css).

decorate() classifies each authored row by what it actually contains
(images+links → badge row, text starting "Copyright" → copyright line,
text containing "Also of Interest" → that row, 2+ links → the legal-links
row, otherwise → tagline) rather than depending on a fixed row order, so
an author isn't locked into an exact sequence.

Self-hosted all 7 badge images (the Fortinet wordmark + 6 sponsor logos:
Founders Cup, FC Barcelona, DP World Tour, PGA Tour Americas, Juventus,
Romain Attanasio) from fortinet.com's own DAM, matching the same
fetch-and-inline pattern used for carousel-story-dots.svg and the
cards-trust watermarks. Badge order/spacing verified against fortinet.com's
real x-positions — the wordmark sits well apart from the sponsor-badge
cluster after it (margin-right:auto on just that first item), not an equal
gap between every badge.

Tested by injecting the block's expected authored markup directly into the
live footer and running decorate() on it (the real /footer content lives in
a connected CMS document, not this repo, and drafts/ pages don't apply to
header/footer — both load from that same real content path regardless of
which page you're viewing). Verified at 390px and 1464px widths against
fortinet.com directly.

The actual footer document still needs this block's markup added to
render on the live site — see the content draft shared separately for the
exact authored content (badges, copyright, legal links, tagline, "Also of
Interest") to paste in, plus how to invoke a "Footer Legal" block section.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@aem-code-sync

aem-code-sync Bot commented Aug 10, 2026

Copy link
Copy Markdown

Hello, I'm the AEM Code Sync Bot and I will run some actions to deploy your branch and validate page speed.
In case there are problems, just click a checkbox below to rerun the respective action.

  • Re-run all PSI checks
  • Re-run failed PSI checks
  • Re-sync branch
Commits

@aem-code-sync

aem-code-sync Bot commented Aug 10, 2026

Copy link
Copy Markdown
Page Scores Audits Google
📱 / PERFORMANCE A11Y SEO BEST PRACTICES SI FCP LCP TBT CLS PSI
🖥️ / PERFORMANCE A11Y SEO BEST PRACTICES SI FCP LCP TBT CLS PSI

@samshao
samshao merged commit d63b67d into main Aug 10, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant