Phase 02: Provider Registration & Auth - 4 plans created - 8 total tasks defined - Ready for execution Plans: - 02-01: Formidable registration form with auto-login - 02-02: Combined login/registration page - 02-03: Provider dashboard template - 02-04: Access control and redirects
4.4 KiB
phase, plan, type, depends_on, files_modified
| phase | plan | type | depends_on | files_modified | ||
|---|---|---|---|---|---|---|
| 02-provider-registration-auth | 02 | execute |
|
|
Purpose: Provide single entry point for providers to register or log in. Output: WordPress page with registration form and login form in tabbed or stacked view.
<execution_context> ~/.claude/get-shit-done/workflows/execute-plan.md ./summary.md </execution_context>
@.planning/PROJECT.md @.planning/ROADMAP.md @.planning/phases/02-provider-registration-auth/02-01-SUMMARY.mdFrom 02-01:
- Registration form exists with ID accessible via DDHH_JM_Formidable::get_registration_form_id()
- Form creates users with ddhh_provider role and auto-logs in
Requirements:
- German UI (v1)
- Combined login/registration view
- Match existing Elementor site style
Use wp_insert_post() to create page "Anbieter Login":
- post_title: 'Anbieter Login'
- post_name: 'anbieter-login'
- post_status: 'publish'
- post_type: 'page'
- post_content: Two-section layout with:
- Registration section with heading "Neu registrieren" and Formidable shortcode [formidable id={registration_form_id}]
- Login section with heading "Bereits registriert?" and WordPress default login form wp_login_form()
Store page ID in option 'ddhh_jm_login_page_id' for later reference.
Hook create_provider_pages() to plugin activation (call in Activator class).
Check if page already exists (by post_name) before creating to avoid duplicates on re-activation.
DO NOT create separate pages for login vs registration - combine in one page per PROJECT.md. Page "Anbieter Login" exists at /anbieter-login/, displays registration form and login form Page created, accessible, shows both registration and login forms, German headings
Task 2: Style combined view for consistency includes/class-pages.php Add basic styling to make login/registration sections visually distinct:In post_content, wrap sections in div.ddhh-auth-container with:
- Registration section: div.ddhh-register-section
- Login section: div.ddhh-login-section
Add simple CSS (inline in page or via enqueued stylesheet):
- Two-column layout on desktop (50/50 split)
- Stacked on mobile
- Visual separator (border or background color difference)
- Headings styled consistently
Match Elementor site colors if possible (check if theme provides CSS variables).
DO NOT over-style - keep it minimal and functional for now. Phase 7 will polish UI. Page displays cleanly on desktop (side-by-side) and mobile (stacked), forms readable and usable Combined view styled, responsive, visually clear separation between register and login sections
Before declaring plan complete: - [ ] Page "Anbieter Login" exists and is published - [ ] Registration form displays via shortcode - [ ] Login form displays via wp_login_form() - [ ] Layout responsive (desktop: side-by-side, mobile: stacked) - [ ] German headings used - [ ] Page accessible at /anbieter-login/<success_criteria>
- All tasks completed
- Combined login/registration page functional
- Both forms display and work
- Responsive layout
- Ready for Phase 3 (job submission forms) </success_criteria>
Phase 2 Plan 2: Login/Registration Page Summary
Combined login/registration page with responsive layout
Accomplishments
- WordPress page "Anbieter Login" created programmatically
- Registration form integrated via Formidable shortcode
- WordPress login form integrated
- Responsive two-column/stacked layout
- German headings
Files Created/Modified
includes/class-pages.php- Page creation and layoutincludes/class-activator.php- Hook create_provider_pages()
Decisions Made
[Document layout choices, styling approach]
Issues Encountered
[Problems and resolutions, or "None"]
Next Step
Ready for 02-04-PLAN.md (sequential after 02-03 completes)