Enhance Radio France source with API routes initialization and default album art

This commit enhances the Radio France source by:

1. Updating the main.rs file to clarify the purpose of registering the Radio France source, including API route initialization
2. Modifying sources.rs to:
   - Add RadioFranceExt to the imports
   - Initialize API routes for Radio France after registering the source
3. Updating source.rs to:
   - Use a default logo for Radio France containers when server_base_url is configured
   - Apply the default logo to both group and 'Radios ICI' containers

These changes improve the integration and visual presentation of Radio France content within the media server.
This commit is contained in:
2026-01-23 20:21:11 +01:00
parent ab2f1af620
commit df8b062af6
3 changed files with 25 additions and 4 deletions

View File

@@ -305,6 +305,14 @@ impl RadioFranceSource {
async fn build_station_container(&self, group: &StationGroup) -> Result<Container> {
let child_count = 1 + group.webradios.len(); // main + webradios
// Utiliser le logo par défaut si server_base_url est configuré
let album_art = self.server_base_url.as_ref().map(|base| {
format!(
"{}/api/radiofrance/default-logo",
base.trim_end_matches('/')
)
});
Ok(Container {
id: format!("radiofrance:group:{}", group.main.slug),
parent_id: "radiofrance".to_string(),
@@ -314,7 +322,7 @@ impl RadioFranceSource {
title: group.main.name.clone(),
class: "object.container".to_string(),
artist: None,
album_art: None,
album_art,
containers: vec![],
items: vec![],
})
@@ -323,6 +331,14 @@ impl RadioFranceSource {
/// Build the "Radios ICI" container
/// Returns an empty container - items will be built when browsing into it
async fn build_ici_container(&self, local_radios: &[Station]) -> Result<Container> {
// Utiliser le logo par défaut si server_base_url est configuré
let album_art = self.server_base_url.as_ref().map(|base| {
format!(
"{}/api/radiofrance/default-logo",
base.trim_end_matches('/')
)
});
Ok(Container {
id: "radiofrance:ici".to_string(),
parent_id: "radiofrance".to_string(),
@@ -332,7 +348,7 @@ impl RadioFranceSource {
title: "Radios ICI".to_string(),
class: "object.container".to_string(),
artist: None,
album_art: None,
album_art,
containers: vec![],
items: vec![],
})