Add Listenbrainz plugin Logo

This commit is contained in:
Shadowghost
2026-05-14 08:05:29 +02:00
parent ae7a8c418b
commit 0b209fe66b
5 changed files with 110 additions and 2 deletions

View File

@@ -54,6 +54,10 @@
<EmbeddedResource Include="Plugins\Omdb\Configuration\config.html" />
<None Remove="Plugins\ListenBrainz\Configuration\config.html" />
<EmbeddedResource Include="Plugins\ListenBrainz\Configuration\config.html" />
<None Remove="Plugins\ListenBrainz\Configuration\ListenBrainz_logo.svg" />
<EmbeddedResource Include="Plugins\ListenBrainz\Configuration\ListenBrainz_logo.svg" />
<None Remove="Plugins\ListenBrainz\Configuration\NOTICE.md" />
<EmbeddedResource Include="Plugins\ListenBrainz\Configuration\NOTICE.md" />
<None Remove="Plugins\MusicBrainz\Configuration\config.html" />
<EmbeddedResource Include="Plugins\MusicBrainz\Configuration\config.html" />
<None Remove="Plugins\StudioImages\Configuration\config.html" />

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 60 KiB

View File

@@ -0,0 +1,23 @@
# ListenBrainz logo attribution
The file `ListenBrainz_logo.svg` shipped alongside this plugin is a derivative
work used here under the terms of the Creative Commons Attribution-ShareAlike
4.0 International license (CC BY-SA 4.0).
## Attribution chain
1. Original work: [ListenBrainz logo](https://github.com/metabrainz/metabrainz-logos/commit/10127d3e84e5bb7e1c8509f1da12223d19581e18)
by [MonkeyDo](https://github.com/metabrainz/metabrainz-logos/commits?author=MonkeyDo)
at the [MetaBrainz Foundation](https://github.com/metabrainz), licensed under
CC BY-SA 4.0.
2. "ListenBrainz logo for Jellyfin plugin" — derivative by
[lyarenei](https://github.com/lyarenei), distributed in
[jellyfin-plugin-listenbrainz](https://github.com/lyarenei/jellyfin-plugin-listenbrainz/tree/main/res/listenbrainz)
under CC BY-SA 4.0.
3. This redistribution within Jellyfin retains the work unmodified and remains
licensed under CC BY-SA 4.0 per the license's ShareAlike requirement.
## License
A full copy of the CC BY-SA 4.0 license is available at
<https://creativecommons.org/licenses/by-sa/4.0/legalcode>.

View File

@@ -7,6 +7,7 @@
<div id="configPage" data-role="page" class="page type-interior pluginConfigurationPage configPage" data-require="emby-input,emby-button,emby-select">
<div data-role="content">
<div class="content-primary">
<img id="listenBrainzLogo" alt="ListenBrainz" style="max-width:240px;display:block;margin:0 auto 1em;" />
<h1>ListenBrainz</h1>
<p>Get similar artist recommendations from ListenBrainz Labs.</p>
<form class="configForm">
@@ -39,6 +40,14 @@
<button is="emby-button" type="submit" class="raised button-submit block"><span>Save</span></button>
</div>
</form>
<div class="verticalSection" style="margin-top:2em;font-size:0.85em;opacity:0.8;">
<p>The ListenBrainz logo is &copy; the MetaBrainz Foundation (by MonkeyDo),
adapted for Jellyfin plugin use by
<a href="https://github.com/lyarenei" target="_blank" rel="noopener">lyarenei</a>,
and redistributed here under
<a href="https://creativecommons.org/licenses/by-sa/4.0/" target="_blank" rel="noopener">CC BY-SA 4.0</a>.
Full attribution notice is shipped alongside the plugin in <code>NOTICE.md</code>.</p>
</div>
</div>
</div>
<script type="text/javascript">
@@ -49,6 +58,7 @@
document.querySelector('.configPage')
.addEventListener('pageshow', function () {
Dashboard.showLoadingMsg();
document.querySelector('#listenBrainzLogo').src = ApiClient.getUrl('web/ConfigurationPage', { name: 'ListenBrainzLogo' });
ApiClient.getPluginConfiguration(ListenBrainzPluginConfig.uniquePluginId).then(function (config) {
var labsServer = document.querySelector('#labsServer');
labsServer.value = config.LabsServer;

View File

@@ -33,7 +33,7 @@ public class ListenBrainzPlugin : BasePlugin<PluginConfiguration>, IHasWebPages
public override Guid Id => new("a5b2e8c1-9d4f-4a3b-8c7e-6f1a2b3c4d5e");
/// <inheritdoc />
public override string Name => "ListenBrainz";
public override string Name => "ListenBrainz Similarity Provider";
/// <inheritdoc />
public override string Description => "Get similar artist recommendations from ListenBrainz Labs.";
@@ -44,10 +44,21 @@ public class ListenBrainzPlugin : BasePlugin<PluginConfiguration>, IHasWebPages
/// <inheritdoc />
public IEnumerable<PluginPageInfo> GetPages()
{
var resourcePrefix = GetType().Namespace + ".Configuration.";
yield return new PluginPageInfo
{
Name = Name,
EmbeddedResourcePath = GetType().Namespace + ".Configuration.config.html"
EmbeddedResourcePath = resourcePrefix + "config.html"
};
yield return new PluginPageInfo
{
Name = Name + "Logo",
EmbeddedResourcePath = resourcePrefix + "ListenBrainz_logo.svg"
};
yield return new PluginPageInfo
{
Name = Name + "Notice",
EmbeddedResourcePath = resourcePrefix + "NOTICE.md"
};
}
}