diff --git a/maloja/data_files/settings/default.ini b/maloja/data_files/settings/default.ini index d7fb210..e07427d 100644 --- a/maloja/data_files/settings/default.ini +++ b/maloja/data_files/settings/default.ini @@ -34,8 +34,8 @@ CACHE_EXPIRE_POSITIVE = 300 # after how many days positive results should be ref THUMBOR_SERVER = None THUMBOR_SECRET = "" -# Can be 'YouTube', 'YouTube Music', 'Google Play Music', 'Spotify', 'Tidal', 'SoundCloud', 'Deezer', 'Amazon Music' -# Omit or set to none to disable +# Can be 'YouTube', 'YouTube Music', 'Spotify', 'Tidal', 'SoundCloud', 'Deezer', 'Amazon Music', 'Apple' +# Set to None to disable TRACK_SEARCH_PROVIDER = None [Database] diff --git a/maloja/web/jinja/snippets/entityrow.jinja b/maloja/web/jinja/snippets/entityrow.jinja index 4dae85a..719f7b3 100644 --- a/maloja/web/jinja/snippets/entityrow.jinja +++ b/maloja/web/jinja/snippets/entityrow.jinja @@ -10,6 +10,9 @@
{% if "artists" in entity %} + {% if settings('TRACK_SEARCH_PROVIDER') != 'None' %} + {{ links.link_search(entity) }} + {% endif %} {{ links.links(entity.artists) }} – {{ links.link(entity) }} diff --git a/maloja/web/jinja/snippets/links.jinja b/maloja/web/jinja/snippets/links.jinja index 2c27750..f6d712c 100644 --- a/maloja/web/jinja/snippets/links.jinja +++ b/maloja/web/jinja/snippets/links.jinja @@ -57,3 +57,33 @@ {% endif %} {%- endmacro %} + + +{% macro link_search(entity) -%} + {% set track = entity.title %} + {% set artists = entity.artists|join(', ') %} + + {% if settings('TRACK_SEARCH_PROVIDER') == 'YouTube' %} + {% set provider = 'https://www.youtube.com/results?search_query=' %} + {% elif settings('TRACK_SEARCH_PROVIDER') == 'YouTube Music' %} + {% set provider = 'https://music.youtube.com/search?q=' %} + {% elif settings('TRACK_SEARCH_PROVIDER') == 'Spotify' %} + {% set provider = 'https://open.spotify.com/search/' %} + {% elif settings('TRACK_SEARCH_PROVIDER') == 'Tidal' %} + {% set provider = 'https://listen.tidal.com/search/tracks?q=' %} + {% elif settings('TRACK_SEARCH_PROVIDER') == 'SoundCloud' %} + {% set provider = 'https://soundcloud.com/search?q=' %} + {% elif settings('TRACK_SEARCH_PROVIDER') == 'Amazon Music' %} + {% set provider = 'https://music.amazon.com/search/' %} + {% elif settings('TRACK_SEARCH_PROVIDER') == 'Deezer' %} + {% set provider = 'https://www.deezer.com/search/' %} + {% elif settings('TRACK_SEARCH_PROVIDER') == 'Apple' %} + {% set provider = 'https://music.apple.com/us/search/song?term=' %} + {% else %} + {% set provider = 'https://www.google.com/search?q=' %} + {% endif %} + + {% set icon = '' %} + + {{ icon }} +{%- endmacro %} diff --git a/maloja/web/static/less/maloja.less b/maloja/web/static/less/maloja.less index 18b5701..fc2af66 100644 --- a/maloja/web/static/less/maloja.less +++ b/maloja/web/static/less/maloja.less @@ -497,9 +497,13 @@ table.list td.track span.artist_in_trackcolumn { color:@TEXT_COLOR_SECONDARY; } -table.list td.track a.trackProviderSearch { - margin-right: 5px; - padding: 0 10px; +table.list td.searchProvider { + width: 20px; + padding-right: 5px; +} + +table.list td.searchProvider:hover { + color: gold; }