Add list/map view toggle for location search results
All checks were successful
Build and Push Docker Image / build-and-push (push) Successful in 56s

When searching by location, users can now toggle between list view
(school cards grid) and a split map view showing:
- Interactive map on left with all school markers
- Scrollable school list on right
- Blue marker for search location, default markers for schools
- Clicking a marker highlights and scrolls to the corresponding card

Mobile responsive with stacked layout on smaller screens.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
Tudor
2026-01-15 11:09:35 +00:00
parent e843394d57
commit e0e3bb788e
4 changed files with 347 additions and 4 deletions

View File

@@ -154,8 +154,32 @@
</div>
</div>
<div class="schools-grid" id="schools-grid">
<!-- School cards populated by JS -->
<div class="view-toggle" id="view-toggle" style="display: none;">
<button class="view-toggle-btn active" data-view="list">
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" width="16" height="16">
<line x1="8" y1="6" x2="21" y2="6"/>
<line x1="8" y1="12" x2="21" y2="12"/>
<line x1="8" y1="18" x2="21" y2="18"/>
<line x1="3" y1="6" x2="3.01" y2="6"/>
<line x1="3" y1="12" x2="3.01" y2="12"/>
<line x1="3" y1="18" x2="3.01" y2="18"/>
</svg>
List
</button>
<button class="view-toggle-btn" data-view="map">
<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" width="16" height="16">
<path d="M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0 1 18 0z"/>
<circle cx="12" cy="10" r="3"/>
</svg>
Map
</button>
</div>
<div class="results-container" id="results-container">
<div class="results-map" id="results-map"></div>
<div class="schools-grid" id="schools-grid">
<!-- School cards populated by JS -->
</div>
</div>
</section>