import React, { useEffect, useState, useRef } from "react";
// --- Utility: Bangla digits and month names ---
const bnDigits = (s) => String(s).replace(/\d/g, (d) => "০১২৩৪৫৬৭৮৯"[d]);
const bnMonths = [
"জানুয়ারি","ফেব্রুয়ারি","মার্চ","এপ্রিল","মে","জুন",
"জুলাই","আগস্ট","সেপ্টেম্বর","অক্টোবর","নভেম্বর","ডিসেম্বর"
];
const prayerNamesBn = {
fajr: "🌙 ফজর",
sunrise: "🌅 সূর্যোদয়",
dhuhr: "🌤 যোহর",
asr: "🌇 আসর",
maghrib: "🌙 মাগরিব",
isha: "⭐ ঈশা",
};
export default function NamazTimesColorful() {
const [coords, setCoords] = useState({ lat: 23.81, lon: 90.41 });
const [now, setNow] = useState(new Date());
const [dark, setDark] = useState(false);
const [selected, setSelected] = useState({ day: new Date().getDate(), month: new Date().getMonth(), year: new Date().getFullYear() });
useEffect(() => {
if (navigator.geolocation) {
navigator.geolocation.getCurrentPosition(
(p) => setCoords({ lat: p.coords.latitude, lon: p.coords.longitude }),
() => console.log("লোকেশন পাওয়া যায়নি")
);
}
const timer = setInterval(() => setNow(new Date()), 1000);
return () => clearInterval(timer);
}, []);
const formatTime = (d) => bnDigits(d.getHours().toString().padStart(2, '0')) + ':' + bnDigits(d.getMinutes().toString().padStart(2, '0'));
const colors = {
fajr: 'from-indigo-500 to-purple-500',
sunrise: 'from-orange-400 to-yellow-400',
dhuhr: 'from-yellow-300 to-green-400',
asr: 'from-teal-400 to-blue-400',
maghrib: 'from-pink-500 to-red-500',
isha: 'from-blue-800 to-indigo-800'
};
return (
🕌 নামাজের সময়
{bnDigits(now.getHours().toString().padStart(2,'0'))}:{bnDigits(now.getMinutes().toString().padStart(2,'0'))}:{bnDigits(now.getSeconds().toString().padStart(2,'0'))}
বাংলা সময়
{bnMonths[selected.month]} {bnDigits(selected.day)}, {bnDigits(selected.year)}
📍 {bnDigits(coords.lat.toFixed(2))}, {bnDigits(coords.lon.toFixed(2))}
{Array.from({length:31},(_,i)=>(
{Object.entries(prayerNamesBn).map(([key,label])=> (
{label}
{formatTime(now)}
))}
© Rasikul India — তৈরি করেছেন ভালোবাসা দিয়ে 💖
);
}
0 Comments