PageSourceSearch

https://rqstradio.pages.dev/js/app.js?v=71.1-a22

js rqstradio.pages.dev collected 2026-10-03 05:54:43 UTC 2,136 bytes, 66 lines download raw bytes

1document.addEventListener('DOMContentLoaded', () => {
2  window.RQST_UI.init();
3  window.RQST_COVERS.init();
4  window.RQST_PLAYER.init();
5
6  // El arranque queda secuenciado: primero se resuelve la programación y se
7  // muestra su carátula durante 10 segundos. La propia agenda dispara después
8  // la primera lectura de metadata, evitando el parpadeo default → externa → programa.
9  window.RQST_SCHEDULE.init();
10
11  // El ciclo normal comienza después de que el arranque editorial haya terminado.
12  setTimeout(() => {
13    window.RQST_METADATA.update(1);
14    window.RQST_METADATA.update(2);
15    setInterval(() => {
16      window.RQST_METADATA.update(1);
17      window.RQST_METADATA.update(2);
18    }, 15000);
19  }, 30000);
20
21  const timedMinutes = new Set([0, 1, 15, 30, 45]);
22  const nowAtStartup = new Date();
23  let lastBoundaryKey = timedMinutes.has(nowAtStartup.getMinutes())
24    ? `${nowAtStartup.getFullYear()}-${nowAtStartup.getMonth()}-${nowAtStartup.getDate()}-${nowAtStartup.getHours()}-${nowAtStartup.getMinutes()}`
25    : '';
26
27  function checkTimedCover() {
28    const now = new Date();
29    const minute = now.getMinutes();
30    if (!timedMinutes.has(minute)) return;
31
32    const key = `${now.getFullYear()}-${now.getMonth()}-${now.getDate()}-${now.getHours()}-${minute}`;
33    if (key === lastBoundaryKey) return;
34    lastBoundaryKey = key;
35
36    const durationMs = window.RQST_CONFIG.temporaryCoverMs || 10000;
37
38    [1, 2].forEach(signalId => {
39      let src;
40      let sourceText;
41
42      if (minute === 0) {
43        src = window.RQST_CONFIG.hourCover;
44        sourceText = 'RQST Hora';
45      } else if (minute === 30) {
46        src = window.RQST_CONFIG.halfHourCover;
47        sourceText = 'RQST Media hora';
48      } else {
49        src = window.RQST_COVERS.getProgramCover(signalId).src;
50        sourceText = 'RQST Programa';
51      }
52
53      window.RQST_COVERS.showTemporaryCover(signalId, src, {
54        durationMs,
55        sourceText
56      });
57    });
58
59    setTimeout(() => {
60      window.RQST_METADATA.update(1);
61      window.RQST_METADATA.update(2);
62    }, durationMs + 100);
63  }
64
65  setInterval(checkTimedCover, 1000);
66});

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.