Historical Site
About This Attraction
Gediminas Tower is a prominent historical landmark in Vilnius, Lithuania. It stands as the remaining part of the Upper Castle, offering panoramic views of the city and the Neris River. The tower is a symbol of Lithuanias capital and has played a significant role in the countrys history. Visitors can explore an exhibition inside that details the history of Vilnius and its fortifications.
When planning a visit, its important to note Gediminas Tower opening hours, which typically vary by season. The site is accessible by foot or funicular for those who prefer an easier ascent. Surrounding the tower are expansive green spaces perfect for leisurely walks. This makes it a popular destination for both locals and tourists looking to experience Lithuanian heritage and enjoy scenic vistas.
Location Details
Address
Arsenalo g. 5, Vilnius 01143, Lithuania
Visitor Information
Pricing & Ratings
Ticket Prices
Adult
6 EUR
Child
3 EUR
Student
4 EUR
Senior
4 EUR
Opening Hours & Booking
Open
Days
Monday to Sunday
Hours
10:00 AM to 6:00 PM
Seasonality
Closed in January
Booking
Booking Required?
No
Nearby Attractions
Vilnius Cathedral, officially known as the Cathedral of St. Stanislaus and St. Ladislaus, is a…
Learn More
Vilnius Old Town, a UNESCO World Heritage site, is renowned for its well-preserved medieval architecture.…
Learn More
Tallinn Old Town is a well-preserved medieval area in Estonias capital, known for its charming…
Learn More
Alexander Nevsky Cathedral in Tallinn is a stunning example of Russian Revival architecture, situated on…
Learn More
Kadriorg Palace is a stunning example of Baroque architecture in Tallinn, Estonia. It was commissioned…
Learn More
The Seaplane Harbour in Tallinn is an exciting maritime museum located in the historical Lennusadam…
Learn More
Visby City Wall, located in the town of Visby on the Swedish island of Gotland,…
Learn More
Gotland Museum in Visby is a popular destination for those interested in history and culture.…
Learn More
Almedalen Park in Visby is a well-known public space located on the Swedish island of…
Learn More
St. Stephens Cathedral in Vienna is a significant landmark that embodies the citys architectural heritage.…
Learn More
";
}
// Initialize modal controls
const initModalControls = function() {
console.log('Initializing modal controls');
const modal = document.getElementById('attraction-modal');
const closeBtn = document.querySelector('.attraction-modal-close');
if (closeBtn) {
closeBtn.addEventListener('click', function() {
modal.style.display = 'none';
document.body.style.overflow = '';
});
}
window.addEventListener('click', function(event) {
if (event.target === modal) {
modal.style.display = 'none';
document.body.style.overflow = '';
}
});
// Make attraction cards clickable
const attractionCards = document.querySelectorAll('.attraction-card');
console.log('Found ' + attractionCards.length + ' attraction cards');
attractionCards.forEach(card => {
card.addEventListener('click', function(e) {
openModalWithCardData(this);
});
});
};
// Function to open modal with card data
const openModalWithCardData = function(card) {
// Get data from hidden div
const data = card.querySelector('.attraction-full-data');
if (!data) {
console.error('No attraction data found in card');
return;
}
const modal = document.getElementById('attraction-modal');
if (!modal) {
console.error('Modal element still not found after creation attempt');
return;
}
// Helper function to safely get element text
function getElementText(selector) {
const element = data.querySelector(selector);
return element ? element.textContent : '';
}
try {
// Basic Info
document.getElementById('attraction-modal-title').textContent = getElementText('.attraction-name');
document.getElementById('attraction-modal-type').textContent = getElementText('.attraction-type-full');
document.getElementById('attraction-modal-description').textContent = getElementText('.attraction-description-full');
// Reset all containers to hidden
['attraction-modal-hours-container', 'attraction-modal-price-container',
'attraction-modal-address-container', 'attraction-modal-image-container'].forEach(id => {
const container = document.getElementById(id);
if (container) container.style.display = 'none';
});
// Rating
const ratingText = getElementText('.attraction-rating-full');
if (ratingText) {
const ratingValue = parseFloat(ratingText);
if (!isNaN(ratingValue)) {
const ratingValueEl = document.getElementById('attraction-modal-rating-value');
const ratingFillEl = document.getElementById('attraction-modal-rating-fill');
if (ratingValueEl) ratingValueEl.textContent = ratingValue.toFixed(1) + '/10';
if (ratingFillEl) ratingFillEl.style.width = (ratingValue * 10) + '%';
}
}
// Show the modal
modal.style.display = 'block';
document.body.style.overflow = 'hidden'; // Prevent background scrolling
console.log('Modal opened successfully');
} catch (error) {
console.error('Error opening modal:', error);
}
};
// Try to create the modal
const created = createModal();
console.log('Modal created:', created);
// If not created (already exists), initialize the controls
if (!created) {
initModalControls();
}
// Also initialize distance toggle
const distanceToggle = document.getElementById('distance-unit-toggle');
if (distanceToggle) {
distanceToggle.addEventListener('change', function() {
const showKm = this.checked;
// Update toggle labels
const labels = document.querySelectorAll('.toggle-label');
if (labels.length >= 2) {
labels[0].style.opacity = showKm ? '0.5' : '1';
labels[1].style.opacity = showKm ? '1' : '0.5';
}
// Update all distance displays
document.querySelectorAll('.nearby-attraction-card').forEach(card => {
const kmEl = card.querySelector('.distance-km');
const miEl = card.querySelector('.distance-mi');
if (kmEl && miEl) {
kmEl.style.display = showKm ? 'inline' : 'none';
miEl.style.display = showKm ? 'none' : 'inline';
}
});
});
}
});