Do not write all the artists in case no album artist is found. ref #154
This commit is contained in:
@@ -15,6 +15,7 @@
|
|||||||
<div class="Lms-header">
|
<div class="Lms-header">
|
||||||
<h3><div class="Lms-releasename text-primary">${name}</div></h3>
|
<h3><div class="Lms-releasename text-primary">${name}</div></h3>
|
||||||
${<if-has-release-artists>}${artists}${</if-has-release-artists>}
|
${<if-has-release-artists>}${artists}${</if-has-release-artists>}
|
||||||
|
${<if-has-various-release-artists>}<div class="Lms-artistname text-muted">${tr:Lms.Explore.various-artists}</div>${</if-has-various-release-artists>}
|
||||||
<div class="text-muted"><small>${<if-has-year>}${year}${</if-has-year>}${<if-has-orig-year>} (${orig-year})${</if-has-orig-year>}</small></div>
|
<div class="text-muted"><small>${<if-has-year>}${year}${</if-has-year>}${<if-has-orig-year>} (${orig-year})${</if-has-orig-year>}</small></div>
|
||||||
${clusters}
|
${clusters}
|
||||||
${play-btn class="Lms-explore-btn Lms-btn"}${more-btn class="Lms-explore-btn Lms-btn"}
|
${play-btn class="Lms-explore-btn Lms-btn"}${more-btn class="Lms-explore-btn Lms-btn"}
|
||||||
|
|||||||
@@ -107,25 +107,7 @@ Release::refreshView()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
{
|
refreshReleaseArtists(release);
|
||||||
std::vector<Wt::Dbo::ptr<Database::Artist>> artists;
|
|
||||||
|
|
||||||
artists = release->getReleaseArtists();
|
|
||||||
if (artists.empty())
|
|
||||||
artists = release->getArtists();
|
|
||||||
|
|
||||||
if (!artists.empty())
|
|
||||||
{
|
|
||||||
setCondition("if-has-release-artists", true);
|
|
||||||
|
|
||||||
Wt::WContainerWidget* artistsContainer {bindNew<Wt::WContainerWidget>("artists")};
|
|
||||||
for (const auto& artist : artists)
|
|
||||||
{
|
|
||||||
Wt::WTemplate* artistTemplate {artistsContainer->addNew<Wt::WTemplate>(Wt::WString::tr("Lms.Explore.Release.template.entry-release-artist"))};
|
|
||||||
artistTemplate->bindWidget("artist", LmsApplication::createArtistAnchor(artist));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
{
|
{
|
||||||
Wt::WImage* cover {bindNew<Wt::WImage>("cover", Wt::WLink(LmsApp->getCoverResource()->getReleaseUrl(release.id(), CoverResource::Size::Large)))};
|
Wt::WImage* cover {bindNew<Wt::WImage>("cover", Wt::WLink(LmsApp->getCoverResource()->getReleaseUrl(release.id(), CoverResource::Size::Large)))};
|
||||||
@@ -263,6 +245,35 @@ Release::refreshView()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void
|
||||||
|
Release::refreshReleaseArtists(const Database::Release::pointer& release)
|
||||||
|
{
|
||||||
|
std::vector<Wt::Dbo::ptr<Database::Artist>> artists;
|
||||||
|
|
||||||
|
artists = release->getReleaseArtists();
|
||||||
|
if (artists.empty())
|
||||||
|
{
|
||||||
|
artists = release->getArtists(Database::TrackArtistLinkType::Artist);
|
||||||
|
if (artists.size() > 1)
|
||||||
|
{
|
||||||
|
setCondition("if-has-various-release-artists", true);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!artists.empty())
|
||||||
|
{
|
||||||
|
setCondition("if-has-release-artists", true);
|
||||||
|
|
||||||
|
Wt::WContainerWidget* artistsContainer {bindNew<Wt::WContainerWidget>("artists")};
|
||||||
|
for (const auto& artist : artists)
|
||||||
|
{
|
||||||
|
Wt::WTemplate* artistTemplate {artistsContainer->addNew<Wt::WTemplate>(Wt::WString::tr("Lms.Explore.Release.template.entry-release-artist"))};
|
||||||
|
artistTemplate->bindWidget("artist", LmsApplication::createArtistAnchor(artist));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
Release::refreshCopyright(const Database::Release::pointer& release)
|
Release::refreshCopyright(const Database::Release::pointer& release)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -44,6 +44,7 @@ namespace UserInterface
|
|||||||
|
|
||||||
private:
|
private:
|
||||||
void refreshView();
|
void refreshView();
|
||||||
|
void refreshReleaseArtists(const Wt::Dbo::ptr<Database::Release>& release);
|
||||||
void refreshCopyright(const Wt::Dbo::ptr<Database::Release>& release);
|
void refreshCopyright(const Wt::Dbo::ptr<Database::Release>& release);
|
||||||
void refreshLinks(const Wt::Dbo::ptr<Database::Release>& release);
|
void refreshLinks(const Wt::Dbo::ptr<Database::Release>& release);
|
||||||
void refreshSimilarReleases(const std::unordered_set<Database::IdType>& similarReleasesId);
|
void refreshSimilarReleases(const std::unordered_set<Database::IdType>& similarReleasesId);
|
||||||
|
|||||||
Reference in New Issue
Block a user