Add map size toggle button to trip page

Closes: #178
This commit is contained in:
Edward Betts 2024-10-13 10:12:39 +01:00
parent aad968a174
commit 7587c3d3b7
2 changed files with 41 additions and 3 deletions

View file

@ -153,5 +153,25 @@ function build_map(map_id, coordinates, routes) {
} }
}); });
var mapElement = document.getElementById(map_id);
document.getElementById('toggleMapSize').addEventListener('click', function() {
var mapElement = document.getElementById(map_id);
var isFullWindow = mapElement.classList.contains('full-window-map');
if (isFullWindow) {
mapElement.classList.remove('full-window-map');
mapElement.classList.add('half-map');
mapElement.style.position = 'relative';
} else {
mapElement.classList.add('full-window-map');
mapElement.classList.remove('half-map');
mapElement.style.position = '';
}
// Ensure the map adjusts to the new container size
map.invalidateSize();
});
return map; return map;
} }

View file

@ -52,8 +52,24 @@
/* Additional styling for grid items can go here */ /* Additional styling for grid items can go here */
} }
#map { .half-map {
height: 90vh; height: 100vh;
}
.full-window-map {
position: fixed; /* Make the map fixed position */
top: 56px;
left: 0;
right: 0;
bottom: 0;
z-index: 9999; /* Make sure it sits on top */
}
#toggleMapSize {
position: fixed; /* Fixed position */
top: 66px; /* 10px from the top */
right: 10px; /* 10px from the right */
z-index: 10000; /* Higher than the map's z-index */
} }
</style> </style>
@ -296,7 +312,9 @@
</div> </div>
</div> </div>
<div class="col-md-6 col-sm-12"> <div class="col-md-6 col-sm-12">
<div id="map"></div> <button id="toggleMapSize" class="btn btn-primary mb-2">Toggle map size</button>
<div id="map" class="half-map">
</div>
</div> </div>
</div> </div>
{% endblock %} {% endblock %}