Historical Fort
About This Attraction
Castillo San Felipe de Barajas is a historic fortress located in Cartagena, Colombia. Built by the Spanish during the colonial era, it served as a military stronghold to protect the city from invasions. The fortress is strategically positioned on a hill, offering panoramic views of the surrounding area. It is an impressive example of Spanish military architecture and features a complex system of tunnels and bunkers.
Visitors can explore its extensive network of tunnels and learn about its historical significance. Castillo San Felipe de Barajas opening hours typically range from early morning to late afternoon, but its best to check current times before planning a visit. The site provides educational information through guided tours, which are available in multiple languages. Its advisable to wear comfortable shoes due to the uneven surfaces and steep paths within the fortress.
Location Details
Address
Carrera 17, Cartagena, Bolívar, Colombia
Visitor Information
Pricing & Ratings
Ticket Prices
Adult
$10
Child
$4
Student
$8
Senior
$8
Opening Hours & Booking
Open
Days
Monday to Sunday
Hours
8:00 AM to 6:00 PM
Seasonality
Year-round
Booking
Booking Required?
No
Nearby Attractions
Getsemani, a neighborhood in Cartagena, Colombia, is known for its lively streets and colorful murals…
Learn More
The Rosario Islands are an archipelago located off the coast of Cartagena, Colombia. Known for…
Learn More
Parque Arví is a sprawling nature reserve located in the hills above Medellín, Colombia. Offering…
Learn More
Comuna 13 in Medellín, Colombia is known for its vibrant street art and rich history.…
Learn More
The Museo de Antioquia is a prominent cultural institution located in Medellín, Colombia. It is…
Learn More
Plaza Botero in Medellin is a public square located in the heart of the city,…
Learn More
The Walled City in Cartagena, Colombia, is a historic area renowned for its cultural and…
Learn More
The Jardín Botánico in Medellín is a popular destination for nature enthusiasts and families alike.…
Learn More
Baconao Park in Santiago de Cuba is a UNESCO Biosphere Reserve known for its natural…
Learn More
Céspedes Park, located in the heart of Santiago de Cuba, is a central gathering spot…
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';
}
});
});
}
});