StationLogos: карта домен -> URL логотипа для сетей без своего API обложек. Comedy Radio (Comedy FM/Club/Spa, comedy-radio.ru) -> официальный apple-touch логотип. Расширяемо по сетям.
28 lines
1.1 KiB
Kotlin
28 lines
1.1 KiB
Kotlin
package com.radiola.data.local
|
||
|
||
/**
|
||
* Кураторские логотипы станций по домену сайта — для сетей, у которых нет
|
||
* своего API обложек. Пополняется по мере проработки сетей.
|
||
* Ключ — хост сайта (без www), значение — прямой URL квадратного логотипа.
|
||
*/
|
||
object StationLogos {
|
||
|
||
private val byDomain: Map<String, String> = mapOf(
|
||
// Comedy Radio (Comedy FM / Comedy Club / Comedy Spa) — платформа 101.ru
|
||
"comedy-radio.ru" to "https://comedy-radio.ru/design/images/logo/apple-touch-icon-180.png?v=2",
|
||
)
|
||
|
||
/** Логотип станции по её сайту, либо null. */
|
||
fun forSite(site: String?): String? {
|
||
val host = site
|
||
?.substringAfter("://", site)
|
||
?.removePrefix("www.")
|
||
?.substringBefore("/")
|
||
?.trim()
|
||
?.lowercase()
|
||
?.takeIf { it.isNotEmpty() }
|
||
?: return null
|
||
return byDomain[host]
|
||
}
|
||
}
|