Skip to content

A11y: distinct aria-label for SMTP page step-number landmarks (aria_complementary_labelled) - #3370

Open
vivi-the-going-merry[bot] wants to merge 1 commit into
masterfrom
fix/issue-6698-complementary-labelled
Open

vivi-the-going-merry[bot] wants to merge 1 commit into
masterfrom
fix/issue-6698-complementary-labelled

Conversation

@vivi-the-going-merry

Copy link
Copy Markdown
Contributor

What was broken

The Formidable > SMTP admin page (?page=formidable-smtp) renders two step-number badges as <aside class="num"> elements (Install, Setup). <aside> carries an implicit role="complementary", and neither had an accessible name - tripping the IBM Equal Access aria_complementary_labelled rule. Confirmed exactly 2 violations, matching the CI run this issue was filed from.

What changed

Added a distinct aria-label to each <aside class="num"> in classes/controllers/FrmSMTPController.php, reusing the same "Step 1"/"Step 2" strings already used as the nested icon's own aria-label. Markup only - no CSS or JS changes.

How it was verified

Added a PHPUnit test (tests/phpunit/misc/test_FrmSMTPController.php) that renders the real page output and asserts both <aside> elements have a non-empty aria-label, via a new reusable helper (FrmUnitTest::assert_complementary_landmarks_are_labelled()). Confirmed red before the fix (empty accessible name) and green after, against the real local PHPUnit rig. PHPCS clean. Self-reviewed (security + correctness/simplify lenses) - no blocking findings.

Closes Strategy11/formidable-pro#6698

🤖 Generated with Claude Code

The Formidable > SMTP admin page renders two step-number <aside> badges
(Install, Setup). <aside> carries an implicit role="complementary", and
neither had an accessible name, tripping the IBM Equal Access
aria_complementary_labelled rule.

Closes Strategy11/formidable-pro#6698
@coderabbitai

coderabbitai Bot commented Sep 17, 2026

Copy link
Copy Markdown
Contributor

Important

Review skipped

Bot user detected.

To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Advanced

Run ID: 4fce0b4c-d568-417f-a17b-b2eb325b8b64

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@deepsource-io

deepsource-io Bot commented Sep 17, 2026

Copy link
Copy Markdown

DeepSource Code Review

We reviewed changes in e404085...6d9a227 on this pull request. Below is the summary for the review, and you can see the individual issues we found as inline review comments.

See full review on DeepSource ↗

PR Report Card

Overall Grade   Security  

Reliability  

Complexity  

Hygiene  

Code Review Summary

Analyzer Status Updated (UTC) Details
PHP Sep 17, 2026 11:35p.m. Review ↗
JavaScript Sep 17, 2026 11:35p.m. Review ↗

Important

AI Review is run only on demand for your team. We're only showing results of static analysis review right now. To trigger AI Review, comment @deepsourcebot review on this thread.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants