customer-riverside/web/modules/custom/riverside_pt/js/scroll.js
Philip Peterson 8962fc5f0e Smooth scroll, booking refactor, success summary
- Add scroll.js: data-scroll-to attribute drives smooth scrollIntoView;
  scroll-margin-top at md+ accounts for fixed header offset
- Wire Services, FAQ, Book An Appointment, View Our Services nav/hero
  links to on-page anchors; don't close hamburger on scroll-link clicks
- Refactor booking calendar: own the fetch (useEffect + dateRange state)
  instead of handing URL to FullCalendar; removes fetchedRef complexity;
  noSlotsInMonth derived cleanly from fetchLoading + fetchedEvents
- Success state shows appointment summary (name, service, date/time);
  hides calendar/form on success; no "book another" button

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-03 22:14:39 -07:00

13 lines
488 B
JavaScript

// Add data-scroll-to="#target-id" to any link to smooth-scroll instead of navigate.
(function () {
document.addEventListener('DOMContentLoaded', function () {
document.addEventListener('click', function (e) {
var link = e.target.closest('[data-scroll-to]');
if (!link) return;
var target = document.querySelector(link.dataset.scrollTo);
if (!target) return;
e.preventDefault();
target.scrollIntoView({ behavior: 'smooth' });
});
});
})();