eliminacion-localhost

This commit is contained in:
2026-03-05 23:13:15 +01:00
parent 8d8cc97bef
commit 0b8fe7bbec
3 changed files with 104 additions and 36 deletions

View File

@@ -13,11 +13,103 @@
"tags": [],
"mirrors": [
{
"resolution": "360p",
"resolution": "1080p",
"acestream_hash": "eb6ffec065b26259ad3d1811e0bbb0a5332ed276"
},
{
"resolution": "1080p",
"acestream_hash": "7ba1f321f4d0791b7ebd42f41a07c1cd1479e784"
},
{
"resolution": "720p",
"acestream_hash": "a116ce3ff95c41c60e987e2b1aa247007f707884"
}
]
},
{
"id": "dazn-2",
"name": "DAZN 2",
"group": "DAZN",
"subcategory": "",
"country_code": "es",
"logo_url": "/logos/countries/spain/dazn-2-es.png",
"tags": [],
"mirrors": [
{
"resolution": "1080p",
"acestream_hash": "ae68a0835039fab28fd2314108fabd4fab33b8ab"
}
]
},
{
"id": "dazn-laliga",
"name": "DAZN LaLiga",
"group": "DAZN",
"subcategory": "LaLiga",
"country_code": "es",
"logo_url": "/logos/countries/spain/dazn-laliga-es.png",
"tags": [],
"mirrors": [
{
"resolution": "1080p",
"acestream_hash": "e2b8a4aba2f4ea3dd68992fcdb65c9e62d910b05"
},
{
"resolution": "1080p",
"acestream_hash": "74defb8f4ed3a917fd07c21b34f43c17107ec618"
},
{
"resolution": "720p",
"acestream_hash": "4e6d9cf7d177366045d33cd8311d8b1d7f4bed1f"
}
]
},
{
"id": "dazn-laliga-2",
"name": "DAZN LaLiga 2",
"group": "DAZN",
"subcategory": "LaLiga",
"country_code": "es",
"logo_url": "/logos/countries/spain/dazn-laliga-2-es.png",
"tags": [],
"mirrors": [
{
"resolution": "1080p",
"acestream_hash": "a231b2fa1f7754433efeb8bb8d69d7b9096dcba8"
},
{
"resolution": "720p",
"acestream_hash": "c976c7b37964322752db562b4ad65515509c8d36"
}
]
},
{
"id": "dazn-f1",
"name": "DAZN F1",
"group": "DAZN",
"subcategory": "F1",
"country_code": "es",
"logo_url": "/logos/countries/spain/dazn-f1-es.png",
"tags": [],
"mirrors": [
{
"resolution": "360p",
"acestream_hash": "eb4975702ceadca7ed74f8707e17a9f55569dbb9"
},
{
"resolution": "720p",
"acestream_hash": "4e6d9cf7d177366045d33cd8311d8b1d7f4bed1f"
},
{
"resolution": "1080p",
"acestream_hash": "cc108ae39f92c48f6c946763047bd1c9b7b7d889"
},
{
"resolution": "1080p",
"acestream_hash": "e2b8a4aba2f4ea3dd68992fcdb65c9e62d910b05"
}
]
},
{
"id": "laliga-tv-hypermotion",
"name": "LaLiga TV Hypermotion",
@@ -37,33 +129,6 @@
}
]
},
{
"id": "dazn-laliga",
"name": "DAZN LaLiga",
"group": "DAZN",
"subcategory": "LaLiga",
"country_code": "es",
"logo_url": "/logos/countries/spain/dazn-laliga-es.png",
"tags": [],
"mirrors": [
{
"resolution": "360p",
"acestream_hash": "eb4975702ceadca7ed74f8707e17a9f55569dbb9"
},
{
"resolution": "720p",
"acestream_hash": "4e6d9cf7d177366045d33cd8311d8b1d7f4bed1f"
},
{
"resolution": "1080p",
"acestream_hash": "cc108ae39f92c48f6c946763047bd1c9b7b7d889"
},
{
"resolution": "1080p",
"acestream_hash": "e2b8a4aba2f4ea3dd68992fcdb65c9e62d910b05"
}
]
},
{
"id": "m-liga-de-campeones",
"name": "M+ Liga de Campeones",

View File

@@ -1,11 +1,12 @@
#!/bin/bash
# Despliega static/ en release/project-a13tv/
SRC="$(dirname "$(realpath "$0")")/static"
DST="$(dirname "$(realpath "$0")")/release/project-a13tv"
# Despliega static/ y channels.json en release/project-a13tv/
PROJ="$(dirname "$(realpath "$0")")"
SRC="$PROJ/static"
DST="$PROJ/release/project-a13tv"
echo "Desplegando en $DST ..."
# --no-group --no-owner: no intenta cambiar propietario/grupo en destino
rsync -rlt --no-group --no-owner --chmod=ug+rw "$SRC/" "$DST/"
sg webedit -c "rsync -rlt --no-group --no-owner --chmod=ug+rw \"$SRC/\" \"$DST/\""
sg webedit -c "cp \"$PROJ/channels.json\" \"$DST/channels.json\""
echo "Despliegue completado."

View File

@@ -874,11 +874,13 @@
// ── Init ─────────────────────────────────────────────────────────────────────
async function init() {
try {
const res = await fetch('/api/channels');
const res = await fetch('channels.json');
const data = await res.json();
App.channels = data.channels;
App.groups = data.groups;
App.groupMeta = data.group_meta || {};
App.groups = (data.groups || []).map(g => typeof g === 'string' ? g : g.name).sort();
App.groupMeta = Object.fromEntries(
(data.groups || []).filter(g => typeof g !== 'string').map(g => [g.name, g.logo || ''])
);
$('sourceLabel').textContent = data.source || '';
renderAll();
} catch (err) {