Update meta-handler.js
This commit is contained in:
parent
5db8022fbc
commit
ee9da63294
1 changed files with 13 additions and 15 deletions
|
|
@ -35,12 +35,13 @@ const MetaHandler = {
|
|||
const stationDisplay = document.getElementById('current-station-name');
|
||||
if (!stationDisplay) return;
|
||||
|
||||
// 1. Alles vor dem Titel extrahieren (enthält das Sender-Icon + Name)
|
||||
// 1. Alles vor dem Songtitel isolieren
|
||||
let currentContent = stationDisplay.innerHTML;
|
||||
// Wir isolieren den Sender-Teil, indem wir alles nach dem Music-Icon oder Trenner-Span abschneiden
|
||||
let stationPart = currentContent.split(' <span')[0].split(' <i class="fa-solid fa-music"')[0].trim();
|
||||
|
||||
// 2. Dubletten-Check (Text ohne Icons vergleichen)
|
||||
// Wir suchen nach dem Icon oder dem geschützten Leerzeichen und schneiden dort ab
|
||||
let stationPart = currentContent.split(' ')[0].split(' <i class="fa-solid fa-music"')[0].trim();
|
||||
|
||||
// 2. Dubletten-Check
|
||||
const tempDiv = document.createElement("div");
|
||||
tempDiv.innerHTML = stationPart;
|
||||
const stationNameOnly = tempDiv.textContent.trim();
|
||||
|
|
@ -48,19 +49,17 @@ const MetaHandler = {
|
|||
const cleanTitle = title.toLowerCase();
|
||||
const cleanStation = stationNameOnly.toLowerCase();
|
||||
|
||||
// Filter für Dubletten und Systemmeldungen
|
||||
if (cleanTitle === cleanStation || cleanTitle.includes(cleanStation) || title.includes('0848')) {
|
||||
stationDisplay.innerHTML = stationPart; // Nur Sender anzeigen
|
||||
stationDisplay.innerHTML = stationPart;
|
||||
return;
|
||||
}
|
||||
|
||||
// 3. Anzeige OHNE Bindestrich zusammenbauen (mit Abstandshaltern)
|
||||
stationDisplay.innerHTML = `${stationPart} <i class="fa-solid fa-music"></i> ${title}`;
|
||||
// 3. Anzeige neu zusammenbauen (die Leerzeichen werden hier jedes Mal neu gesetzt, nicht addiert)
|
||||
stationDisplay.innerHTML = `${stationPart} <i class="fa-solid fa-music"></i> ${title}`;
|
||||
},
|
||||
|
||||
start(streamUrl) {
|
||||
this.stop();
|
||||
// Erster Aufruf sofort
|
||||
this.fetchTitle(streamUrl);
|
||||
|
||||
this.intervalId = setInterval(() => {
|
||||
|
|
@ -76,16 +75,15 @@ const MetaHandler = {
|
|||
|
||||
const stationDisplay = document.getElementById('current-station-name');
|
||||
if (stationDisplay) {
|
||||
// Entfernt alles ab dem Musik-Icon oder dem alten Bindestrich
|
||||
if (stationDisplay.innerHTML.includes('<i class="fa-solid fa-music"')) {
|
||||
stationDisplay.innerHTML = stationDisplay.innerHTML.split(' <i class="fa-solid fa-music"')[0];
|
||||
} else if (stationDisplay.innerHTML.includes(' – ')) {
|
||||
stationDisplay.innerHTML = stationDisplay.innerHTML.split(' – ')[0];
|
||||
// Beim Stoppen alles nach dem Sender-Teil entfernen
|
||||
if (stationDisplay.innerHTML.includes(' ')) {
|
||||
stationDisplay.innerHTML = stationDisplay.innerHTML.split(' ')[0].trim();
|
||||
} else if (stationDisplay.innerHTML.includes('<i class="fa-solid fa-music"')) {
|
||||
stationDisplay.innerHTML = stationDisplay.innerHTML.split(' <i class="fa-solid fa-music"')[0].trim();
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
// Global verfügbar machen
|
||||
window.MetaHandler = MetaHandler;
|
||||
MetaHandler.init();
|
||||
Loading…
Reference in a new issue