
A Look At Local Bitcoin Adoption In El Salvador
/* Show "Prefer us on Google" only on desktop and tablets */
@media (min-width: 769px) {
.prefer-google-btn {
display: inline-block !important;
}
}
/* Hover effect for all buttons */
a > div:hover {
transform: translateY(-3px);
box-shadow: 0 6px 12px rgba(0,0,0,0.15) !important;
}
.td-module-meta-info .molongui-meta-contributor {
display: none;
}
.bitcoin-widget {
background-color: #111;
color: white;
padding: 20px;
border-radius: 10px;
max-width: 325px;
width: 100%;
font-family: Arial, sans-serif;
box-sizing: border-box;
margin: 0 auto;
}
.bitcoin-header {
display: flex;
align-items: center;
margin-bottom: 15px;
flex-wrap: wrap;
}
.bitcoin-icon {
width: 24px;
height: 24px;
margin-right: 10px;
}
.price {
font-size: 24px;
margin: 0;
margin-bottom: 10px;
}
.stats-container {
display: flex;
flex-wrap: wrap;
justify-content: space-around;
gap: 10px;
margin-top: 10px;
}
.stat-column {
text-align: center;
flex: 1 1 30%;
}
.stat-label {
font-size: 12px;
color: #999;
margin-bottom: 5px;
}
.stat-value {
font-size: 14px;
}
.positive {
color: #00ff00;
}
.negative {
color: #ff0000;
}
.error-message {
color: #ff0000;
font-size: 12px;
display: none;
margin-top: 10px;
}
async function updateBitcoinPrice() {
try {
const response = await fetch('https://api.coingecko.com/api/v3/coins/bitcoin?localization=false&tickers=false&market_data=true');
if (!response.ok) {
throw new Error(`HTTP error! status: ${response.status}`);
}
const data = await response.json();
// Update price
const price = data.market_data.current_price.usd;
const change = data.market_data.price_change_percentage_24h;
const high = data.market_data.high_24h.usd;
const low = data.market_data.low_24h.usd;
// Update price display
document.getElementById('bitcoin-price').textContent = `$${price.toLocaleString(undefined, { minimumFractionDigits: 2, maximumFractionDigits: 2 })}`;
// Update price change with color
const changeElement = document.getElementById('price-change');
changeElement.textContent = `${change.toFixed(1)}%`;
changeElement.className = 'stat-value ' + (change >= 0 ? 'positive' : 'negative');
// Update high and low prices
document.getElementById('high-price').textContent = `$${high.toLocaleString(undefined, { minimumFractionDigits: 2, maximumFractionDigits: 2 })}`;
document.getElementById('low-price').textContent = `$${low.toLocaleString(undefined, { minimumFractionDigits: 2, maximumFractionDigits: 2 })}`;
hideError();
} catch (error) {
console.error('Error fetching Bitcoin price:', error);
showError('Failed to fetch Bitcoin price');
}
}
function showError(message) {
const errorElement = document.getElementById('error-message');
errorElement.textContent = message;
errorElement.style.display = 'block';
}
function hideError() {
const errorElement = document.getElementById('error-message');
errorElement.style.display = 'none';
}
// Initialize and start updates
document.addEventListener('DOMContentLoaded', () => {
try {
updateBitcoinPrice();
setInterval(updateBitcoinPrice, 60000);
} catch (error) {
console.error('Initialization error:', error);
showError('Initialization failed');
}
});























