3.4 KiB
3.4 KiB
Task 12 — Navigation, footer & CTA link wiring
- Status: Done
- Depends on: 02, 03, 04, 05, 06, 07, 08, 09, 10, 11 (all routes must exist first)
- Size: M
Goal
Point every navbar, footer, and Index CTA at the real pages; remove the #contact anchor pattern and the dead # links; make the (currently non-functional) mobile menu work.
Files
- Modify:
plushealthtech/Pages/Shared/_Layout.cshtml - Modify:
plushealthtech/Pages/Index.cshtml - (Optional, if JS approach chosen)
plushealthtech/wwwroot/js/mobile-menu.jsor an inline<script>in the layout'sScriptssection.
Steps
1. Desktop nav (_Layout.cshtml, the hidden md:flex nav)
Replace the current anchor links with:
| Label | href |
|---|---|
| CDS | /ClinicalDecisionSupport |
| Patient Management | /PatientManagement |
| Veterinary | /Veterinary |
| About | /About |
| Careers | /Careers |
| Contact | /Contact |
| Blog | https://blog.plushealthtech.com (keep, external) |
(Removes the #solutions / #interoperability / #veterinary / #about anchors from the nav — those sections remain reachable by scrolling on the Index page.)
2. CTA buttons (_Layout.cshtml)
Sign In→/SignIn(was#contact).Request Demo→/RequestDemo(was#contact).
3. Footer (_Layout.cshtml)
- Remove
id="contact"from the<footer>— nothing may target it anymore. - Solutions column →
/ClinicalDecisionSupport,/PatientManagement,/Veterinary(labels: Clinical Decision Support / Patient Management / Veterinarian Solutions). - Company column →
/About,/Careers,/Contact. - New Legal column →
/Privacy(Privacy Policy),/Terms(Terms & Conditions). Grid becomesmd:grid-cols-5(or 4 + legal under Company — keep it tidy at md width). - Newsletter input block: leave as-is (decorative, no endpoint specified — plan §3.8).
4. Index page (Index.cshtml)
- Hero primary CTA "Explore Platform" (
#contact) →/RequestDemo. - Hero secondary CTA "View Solutions" — keep
#solutions(valid in-page anchor). - Solution cards "Learn more" / "Explore Vet Tech" links (
#) →/ClinicalDecisionSupport,/PatientManagement,/Veterinaryrespectively. - Keep
id="solutions",id="interoperability",id="veterinary"anchors on the sections (still used by the hero CTA and any deep links).
5. Mobile menu (currently a no-op <button>)
Add a minimal toggle so the desktop nav is reachable below md:
- Simplest robust option:
<details>/<summary>wrapper around the nav, or a 5–10 line vanilla JS toggle (classList.toggle('hidden')) in the layout'sScriptssection. - Close the menu when a link is tapped (optional nicety).
- No framework, no new dependency.
Acceptance criteria
- Build green.
- Desktop nav has 7 working links; CTAs point at
/SignInand/RequestDemo. - Footer columns link to all pages incl. new Legal column; footer no longer carries
id="contact". - Index: zero
href="#"left (grep to confirm); hero CTA lands on/RequestDemo. - Mobile menu opens/closes and all links are reachable at 375px width. (verified via rendered markup, CSS class presence, and JS review — not a live browser click-through)
- No new utility classes required →
wwwroot/css/tailwind.cssrebuild not needed (verify; if any new class slips in, runnpm run build:css). (pb-6was new — rebuilt withnpm run build:css.)