Improvment: Replacing change EPG menu.

This commit is contained in:
Johnnybegood90
2026-03-14 01:18:02 +01:00
parent 30c0de2a2d
commit de0e1adf44
4 changed files with 77 additions and 8 deletions
+2 -4
View File
@@ -13,8 +13,7 @@ window.addEventListener('load', () => {
if (epg) {
currentEpgUrl = epg;
currentM3uUrl = m3u;
const sel = document.getElementById('sourceSelect');
if (sel) sel.value = 'personal';
updateSourceDropdownLabel('✏ Personal EPG');
loadEPG(epg);
if (m3u) loadM3U(m3u);
return;
@@ -26,8 +25,7 @@ window.addEventListener('load', () => {
activeSourceIndex = idx;
currentEpgUrl = src.epg_url;
currentM3uUrl = src.m3u_url ?? '';
const sel = document.getElementById('sourceSelect');
if (sel) sel.value = idx;
if (src) updateSourceDropdownLabel(src.name);
}
}
loadEPG(currentEpgUrl);
+22
View File
@@ -49,6 +49,7 @@ function applyPersonalEpg() {
localStorage.setItem('gridtv-personal-epg', epg);
localStorage.setItem('gridtv-personal-m3u', m3u);
localStorage.setItem('gridtv-active-source', 'personal');
updateSourceDropdownLabel('✏ Personal EPG');
currentEpgUrl = epg;
currentM3uUrl = m3u;
const sel = document.getElementById('sourceSelect');
@@ -58,3 +59,24 @@ function applyPersonalEpg() {
if (m3u) loadM3U(m3u);
}
function toggleSourceDropdown() {
document.getElementById('sourceDropdownMenu')?.classList.toggle('open');
}
function closeSourceDropdown() {
document.getElementById('sourceDropdownMenu')?.classList.remove('open');
}
// Fermer si clic en dehors
document.addEventListener('click', e => {
if (!e.target.closest('.source-dropdown')) closeSourceDropdown();
});
function updateSourceDropdownLabel(label) {
const el = document.getElementById('sourceDropdownLabel');
if (el) el.textContent = label;
// Mettre à jour la classe active
document.querySelectorAll('.source-dropdown-item').forEach((btn, i) => {
btn.classList.toggle('active', i === activeSourceIndex);
});
}