fix(now-playing): Radio 7 главные каналы — slug не съедает '7'
Баг: strip /\d+$/ у маунта radio7128 резал '7128' → 'radio' (пусто в meta). Теперь slug = radio7(_слово)? без битрейта: radio7128→radio7, radio7_love64→radio7-love.
This commit is contained in:
@@ -103,13 +103,11 @@ export class EmgNowPlayingService {
|
||||
private extractSlug(streamUrl: string): string | null {
|
||||
const emg = streamUrl.match(/hls-\d+-([a-z0-9-]+)\.emgsound\.ru/i);
|
||||
if (emg) return emg[1].toLowerCase();
|
||||
const r7 = streamUrl.match(/radio7\.hostingradio\.ru[:0-9]*\/([a-z0-9_]+)/i);
|
||||
if (r7) {
|
||||
return r7[1]
|
||||
.toLowerCase()
|
||||
.replace(/\d+$/, '')
|
||||
.replace(/_/g, '-');
|
||||
}
|
||||
// Маунты radio7: radio7{br}, radio7_love{br}, radio7_happiness{br} (br=64/128/256).
|
||||
// ВАЖНО: нельзя резать цифры с конца «\d+$» — у «radio7128» это съест «7» (→radio).
|
||||
// Берём «radio7» + опциональный «_слово» (бренд), отбрасывая битрейт.
|
||||
const r7 = streamUrl.match(/radio7\.hostingradio\.ru[:0-9]*\/(radio7(?:_[a-z]+)?)/i);
|
||||
if (r7) return r7[1].toLowerCase().replace(/_/g, '-');
|
||||
return null;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user