Files
budapest-sites-map/index.html
2025-10-23 18:06:57 +02:00

148 lines
7.5 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Budapest Travel Guide - Interactive Map &amp; Route Planner</title>
<link rel="stylesheet" href="https://unpkg.com/leaflet@1.9.4/dist/leaflet.css" />
<link rel="stylesheet" href="style.css">
</head>
<body>
<div class="app-container">
<!-- Header -->
<header class="app-header">
<div class="header-content">
<h1><span class="icon-budapest">🏛️</span> Budapest Travel Guide</h1>
<p>Explore the Pearl of the Danube with our interactive map &amp; route planner</p>
</div>
</header>
<!-- Main Content -->
<main class="main-content">
<!-- Sidebar -->
<aside class="sidebar">
<!-- Search -->
<div class="search-section">
<div class="form-group">
<input type="text" id="searchInput" class="form-control" placeholder="Search sights...">
</div>
</div>
<!-- Category Filters -->
<div class="filters-section">
<h3>Filter by Category</h3>
<div class="filter-buttons">
<button class="btn btn--sm filter-btn active" data-category="all">All Sights</button>
<button class="btn btn--sm filter-btn" data-category="Historic Landmark">🏛️ Historic</button>
<button class="btn btn--sm filter-btn" data-category="Museum">🏛️ Museums</button>
<button class="btn btn--sm filter-btn" data-category="Religious Site">⛪ Religious</button>
<button class="btn btn--sm filter-btn" data-category="Thermal Bath">🛁 Baths</button>
<button class="btn btn--sm filter-btn" data-category="Activity">🎯 Activities</button>
<button class="btn btn--sm filter-btn" data-category="Café">☕ Cafés</button>
<button class="btn btn--sm filter-btn" data-category="Restaurant">🍽️ Restaurants</button>
<button class="btn btn--sm filter-btn" data-category="Market">🏪 Markets</button>
<button class="btn btn--sm filter-btn" data-category="Shopping Street">🛍️ Shopping</button>
<button class="btn btn--sm filter-btn" data-category="Bridge">🌉 Bridges</button>
<button class="btn btn--sm filter-btn" data-category="Park">🌳 Parks</button>
<button class="btn btn--sm filter-btn" data-category="Viewpoint">🏔️ Views</button>
<button class="btn btn--sm filter-btn" data-category="Cultural Venue">🎭 Cultural</button>
<button class="btn btn--sm filter-btn" data-category="Ruin Bar">🍺 Ruin Bars</button>
<button class="btn btn--sm filter-btn" data-category="Memorial">🕊️ Memorials</button>
</div>
</div>
<!-- Route Planning -->
<div class="route-section">
<h3>My Route Planner</h3>
<div class="route-controls">
<button id="placeHotelBtn" class="btn btn--secondary btn--sm">📍 Place My Hotel</button>
<button id="optimizeRouteBtn" class="btn btn--primary btn--sm">⚡ Optimize Route</button>
<button id="clearRouteBtn" class="btn btn--outline btn--sm">🗑️ Clear Route</button>
</div>
<div id="hotelInfo" class="hotel-info hidden">
<div class="hotel-marker">🏨 Hotel Location Set</div>
<button id="removeHotelBtn" class="btn btn--sm btn--outline">Remove Hotel</button>
</div>
<div id="routeStats" class="route-stats hidden">
<div class="stats-row">
<span class="stat-label">Distance:</span>
<span id="totalDistance">0 km (0 mi)</span>
</div>
<div class="stats-row">
<span class="stat-label">Walking Time:</span>
<span id="totalTime">0 minutes</span>
</div>
<div class="stats-row">
<span class="stat-label">Selected:</span>
<span id="selectedCount">0 sights</span>
</div>
</div>
<div id="selectedSights" class="selected-sights"></div>
<button id="downloadRouteBtn" class="btn btn--primary btn--sm btn--full-width hidden">📄 Download Route</button>
</div>
<!-- Sights List -->
<div class="sights-section">
<h3>Budapest Attractions</h3>
<div id="sightsList" class="sights-list"></div>
</div>
<!-- Getting Around Info -->
<div class="info-section">
<h3>Getting Around</h3>
<div class="info-content">
<p><strong>Walking:</strong> Most attractions in city center are within 30-45 minutes walking distance.</p>
<p><strong>Hills:</strong> Buda side has hills - budget extra time for uphill walks.</p>
<p><strong>Public Transport:</strong> Efficient metro, tram, and bus system available.</p>
</div>
</div>
</aside>
<!-- Map Container -->
<div class="map-container">
<div id="map"></div>
<div id="mapInstructions" class="map-instructions">
<div class="instruction-content">
<h4>🗺️ How to Use This Map</h4>
<ul>
<li>Click markers to see sight details</li>
<li>Check sights in sidebar to plan your route</li>
<li>Click "Place My Hotel" then click on map</li>
<li>Use filters to find specific types of attractions</li>
</ul>
<button id="closeInstructions" class="btn btn--sm btn--primary">Got it!</button>
</div>
</div>
</div>
</main>
<!-- Sight Detail Modal -->
<div id="sightModal" class="modal hidden">
<div class="modal-content">
<div class="modal-header">
<h2 id="modalTitle"></h2>
<button id="closeModal" class="btn-close">×</button>
</div>
<div class="modal-body">
<div id="modalContent"></div>
</div>
<div class="modal-footer">
<label class="checkbox-wrapper">
<input type="checkbox" id="modalAddToRoute">
<span>Add to my route</span>
</label>
<button id="zoomToSight" class="btn btn--primary">Show on Map</button>
</div>
</div>
</div>
</div>
<!-- Scripts -->
<script src="https://unpkg.com/leaflet@1.9.4/dist/leaflet.js"></script>
<script src="app.js"></script>
</body>
</html>