Adds num_songs_by_genre to artist details
This commit is contained in:
parent
54ce646931
commit
4072e3b07d
2 changed files with 11 additions and 1 deletions
|
@ -33,6 +33,7 @@ pub struct Artist {
|
||||||
pub albums_as_additional_performer: Vec<Album>, // Albums where this artist shows up as `artist` without being `album_artist`
|
pub albums_as_additional_performer: Vec<Album>, // Albums where this artist shows up as `artist` without being `album_artist`
|
||||||
pub albums_as_composer: Vec<Album>,
|
pub albums_as_composer: Vec<Album>,
|
||||||
pub albums_as_lyricist: Vec<Album>,
|
pub albums_as_lyricist: Vec<Album>,
|
||||||
|
pub num_songs_by_genre: HashMap<String, u32>,
|
||||||
}
|
}
|
||||||
|
|
||||||
#[derive(Debug, Default, PartialEq, Eq)]
|
#[derive(Debug, Default, PartialEq, Eq)]
|
||||||
|
@ -99,17 +100,24 @@ impl Collection {
|
||||||
albums
|
albums
|
||||||
};
|
};
|
||||||
|
|
||||||
|
let name = strings.resolve(&a.name).to_owned();
|
||||||
let albums_as_performer = list_albums(&a.albums_as_performer);
|
let albums_as_performer = list_albums(&a.albums_as_performer);
|
||||||
let albums_as_additional_performer = list_albums(&a.albums_as_additional_performer);
|
let albums_as_additional_performer = list_albums(&a.albums_as_additional_performer);
|
||||||
let albums_as_composer = list_albums(&a.albums_as_composer);
|
let albums_as_composer = list_albums(&a.albums_as_composer);
|
||||||
let albums_as_lyricist = list_albums(&a.albums_as_lyricist);
|
let albums_as_lyricist = list_albums(&a.albums_as_lyricist);
|
||||||
|
let num_songs_by_genre = a
|
||||||
|
.num_songs_by_genre
|
||||||
|
.iter()
|
||||||
|
.map(|(genre, num)| (strings.resolve(genre).to_string(), *num))
|
||||||
|
.collect();
|
||||||
|
|
||||||
Artist {
|
Artist {
|
||||||
name: strings.resolve(&a.name).to_owned(),
|
name,
|
||||||
albums_as_performer,
|
albums_as_performer,
|
||||||
albums_as_additional_performer,
|
albums_as_additional_performer,
|
||||||
albums_as_composer,
|
albums_as_composer,
|
||||||
albums_as_lyricist,
|
albums_as_lyricist,
|
||||||
|
num_songs_by_genre,
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
|
@ -349,6 +349,7 @@ pub struct Artist {
|
||||||
pub albums_as_additional_performer: Vec<AlbumHeader>,
|
pub albums_as_additional_performer: Vec<AlbumHeader>,
|
||||||
pub albums_as_composer: Vec<AlbumHeader>,
|
pub albums_as_composer: Vec<AlbumHeader>,
|
||||||
pub albums_as_lyricist: Vec<AlbumHeader>,
|
pub albums_as_lyricist: Vec<AlbumHeader>,
|
||||||
|
pub num_songs_by_genre: HashMap<String, u32>,
|
||||||
}
|
}
|
||||||
|
|
||||||
impl From<index::Artist> for Artist {
|
impl From<index::Artist> for Artist {
|
||||||
|
@ -360,6 +361,7 @@ impl From<index::Artist> for Artist {
|
||||||
albums_as_additional_performer: convert_albums(a.albums_as_additional_performer),
|
albums_as_additional_performer: convert_albums(a.albums_as_additional_performer),
|
||||||
albums_as_composer: convert_albums(a.albums_as_composer),
|
albums_as_composer: convert_albums(a.albums_as_composer),
|
||||||
albums_as_lyricist: convert_albums(a.albums_as_lyricist),
|
albums_as_lyricist: convert_albums(a.albums_as_lyricist),
|
||||||
|
num_songs_by_genre: a.num_songs_by_genre,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue