feat(#184): user form modes (tabs/accordion/wizard) + consent-safe plugin-responsive registration #186

Closed
jmiller wants to merge 0 commits from feature/user-form-modes into dev
Owner

Closes #184 (testing). → dev for a pre-release test build.

Generalizes layouts/mokoonyx/profile-tabset into a 3-mode sectioned form renderer:

  • tabs (default: profile edit), accordion, and a wizard (default: registration) with Back/Next that validates each step before advancing — forcing users through every section in order; caller's submit hidden until the last step; progressive-enhancement (no-JS shows all steps).
  • Orphan-field pass renders fields injected without a fieldset — Privacy Consent, Terms of Service, plugin fields — in an "Additional" section, so required consent is never dropped. Fully plugin-responsive (MokoSuiteCRM / MokoSuiteCommunity auto-section via their own labels).
  • New params user_registration_mode (wizard) + user_profile_mode (tabs); new user-form-wizard.js; wizard CSS; en-GB/en-US strings.

Testing plan (incl. the critical consent + plugin scenarios): comment on #184.
Validated: PHP php -l (all overrides + layout), JS node --check, XML, JSON.

Closes #184 (testing). → **dev** for a pre-release test build. Generalizes `layouts/mokoonyx/profile-tabset` into a 3-mode sectioned form renderer: - **tabs** (default: profile edit), **accordion**, and a **wizard** (default: registration) with Back/Next that **validates each step before advancing** — forcing users through every section in order; caller's submit hidden until the last step; progressive-enhancement (no-JS shows all steps). - **Orphan-field pass** renders fields injected *without* a fieldset — **Privacy Consent**, **Terms of Service**, plugin fields — in an "Additional" section, so required consent is **never dropped**. Fully plugin-responsive (MokoSuiteCRM / **MokoSuiteCommunity** auto-section via their own labels). - New params `user_registration_mode` (wizard) + `user_profile_mode` (tabs); new `user-form-wizard.js`; wizard CSS; en-GB/en-US strings. **Testing plan** (incl. the critical consent + plugin scenarios): comment on #184. Validated: PHP `php -l` (all overrides + layout), JS `node --check`, XML, JSON.
jmiller force-pushed feature/user-form-modes from b7f82104fc to 887a5c3cd5 2026-07-21 21:30:21 +00:00 Compare
jmiller added 1 commit 2026-07-21 21:32:38 +00:00
feat(user-forms): tabs/accordion/wizard modes + consent-safe plugin-responsive rendering
Universal: Auto Version Bump / Version Bump (push) Successful in 17s
Generic: Project CI / Tests (pull_request) Failing after 12s
Generic: Project CI / Lint & Validate (pull_request) Successful in 17s
Joomla: Extension CI / Release Readiness Check (pull_request) Has been skipped
Universal: PR Check / Branch Policy (pull_request) Successful in 1s
Universal: PR Check / Require Docs Update (pull_request) Has been skipped
Universal: PR Check / Wiki Update Reminder (pull_request) Has been skipped
Universal: PR Check / Secret Scan (pull_request) Successful in 10s
Joomla: Extension CI / Lint & Validate (pull_request) Failing after 18s
Joomla: Metadata Validation / Validate Joomla Metadata (pull_request) Failing after 15s
Universal: PR Check / Validate PR (pull_request) Successful in 32s
Joomla: Extension CI / Tests (PHP 8.2) (pull_request) Has been cancelled
Joomla: Extension CI / Tests (PHP 8.3) (pull_request) Has been cancelled
Joomla: Extension CI / PHPStan Analysis (pull_request) Has been cancelled
Joomla: Extension CI / Build RC Pre-Release (pull_request) Has been cancelled
Universal: PR Check / Build RC Package (pull_request) Has been cancelled
Universal: PR Check / Report Issues (pull_request) Has been cancelled
ea2a0ed16c
Generalize layouts/mokoonyx/profile-tabset into a 3-mode sectioned form renderer:
- tabs (default for profile edit), accordion, and a step-by-step wizard
  (default for registration) with Back/Next that validates each step before
  advancing — forcing users through every section in order.
- Orphan-field pass: fields injected WITHOUT a fieldset (Privacy Consent plugin,
  Terms of Service, plugin fields) are caught and rendered in an 'Additional'
  section so required consent is never dropped. Fully plugin-responsive
  (MokoSuiteCRM / MokoSuiteCommunity auto-tab via their own labels).
- New template params user_registration_mode (wizard) + user_profile_mode (tabs).
- New user-form-wizard.js driver (per-step native validation, hides caller submit
  until last step; progressive-enhancement: no-JS shows all steps).
- Registration + profile-edit overrides pass the param-driven mode.
- CSS for the wizard progress/steps/nav; en-GB/en-US strings.
jmiller force-pushed feature/user-form-modes from 5fc77a4845 to ea2a0ed16c 2026-07-21 21:32:38 +00:00 Compare
jmiller added 1 commit 2026-07-21 21:32:57 +00:00
Author
Owner

Merged into dev via git (merge commit ab21938) — the API merge was stuck recomputing after the version-stamp auto-bumps. dev now contains the full user-form-modes feature (verified: user-form-wizard.js, wizard CSS, the mode params, and the generalized profile-tabset layout are all present). Closing.

Merged into `dev` via git (merge commit `ab21938`) — the API merge was stuck recomputing after the version-stamp auto-bumps. `dev` now contains the full user-form-modes feature (verified: `user-form-wizard.js`, wizard CSS, the mode params, and the generalized `profile-tabset` layout are all present). Closing.
jmiller closed this pull request 2026-07-21 21:35:53 +00:00

Pull request closed

This pull request cannot be reopened because the branch was deleted.
Sign in to join this conversation.
No Reviewers
No labels
Priority -
Type -
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: MokoConsulting/MokoOnyx#186