import { gregorianToHijri } from "../utils/hijri.js";
import { fetchWeather, getWeatherIcon, getWeatherDesc } from "../utils/weather.js";
import { fetchPrayerTimes } from "../utils/prayerTimes.js";
export function renderDesktop(selectedCity = "Edremit") {
const hijri = gregorianToHijri();
const today = new Date();
const dateStr = today.toLocaleDateString("tr-TR", {
weekday: "long",
year: "numeric",
month: "long",
day: "numeric",
});
const html = `
🖥️ Masaüstü Araçları
${selectedCity}
📅 HİCRİ TAKVİM
${hijri.day} ${hijri.monthName} ${hijri.year}
${dateStr} / ${hijri.weekday}
📿
Kaza Namazı Takibi
Kaydetmeye ve takibe başla
➔
`;
return {
html,
initEvents: (container) => {
loadWeather(container, selectedCity);
loadImsakiye(container, selectedCity);
container.querySelector("#kazaShortcut")?.addEventListener("click", () => {
window.dispatchEvent(new CustomEvent("navigate", { detail: "kaza" }));
});
},
};
}
async function loadWeather(container, selectedCity) {
const widget = container.querySelector("#weatherWidget");
if (!widget) return;
const data = await fetchWeather(selectedCity);
if (!data) {
widget.innerHTML = `Hava durumu alınamadı`;
return;
}
const icon = getWeatherIcon(data.weathercode);
const desc = getWeatherDesc(data.weathercode);
const temp = Math.round(data.temperature);
widget.innerHTML = `
`;
}
async function loadImsakiye(container, selectedCity) {
const widget = container.querySelector("#imsakiyeWidget");
if (!widget) return;
const times = await fetchPrayerTimes(selectedCity);
if (!times) {
widget.innerHTML = `Vakitler alınamadı`;
return;
}
const activeKey = times.currentPrayer?.key;
widget.innerHTML = `
🕌 NAMAZ VAKİTLERİ
Şu an: ${times.currentPrayer?.name}
İmsak: ${times.imsak}
Güneş: ${times.sunrise}
Öğle: ${times.dhuhr}
İkindi: ${times.asr}
Akşam: ${times.maghrib}
Yatsı: ${times.isha}
`;
}