From 26bf0d532b154b2ab7ff634708de3db8846c4433 Mon Sep 17 00:00:00 2001 From: Dmitry Lyzo Date: Tue, 18 Jan 2022 14:51:19 +0300 Subject: [PATCH 1/2] Make title of playstatebutton state-dependent --- .../emby-playstatebutton/emby-playstatebutton.js | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/src/elements/emby-playstatebutton/emby-playstatebutton.js b/src/elements/emby-playstatebutton/emby-playstatebutton.js index c55abd01f1..43140e4ec6 100644 --- a/src/elements/emby-playstatebutton/emby-playstatebutton.js +++ b/src/elements/emby-playstatebutton/emby-playstatebutton.js @@ -66,13 +66,15 @@ import ServerConnections from '../../components/ServerConnections'; if (updateAttribute !== false) { button.setAttribute('data-played', played); } + + setTitle(button, button.getAttribute('data-type'), played); } - function setTitle(button, itemType) { + function setTitle(button, itemType, played) { if (itemType !== 'AudioBook' && itemType !== 'AudioPodcast') { - button.title = globalize.translate('Watched'); + button.title = played ? globalize.translate('Watched') : globalize.translate('MarkPlayed'); } else { - button.title = globalize.translate('Played'); + button.title = played ? globalize.translate('Played') : globalize.translate('MarkPlayed'); } const text = button.querySelector('.button-text'); @@ -113,7 +115,6 @@ import ServerConnections from '../../components/ServerConnections'; if (itemId && serverId) { setState(this, this.getAttribute('data-played') === 'true', false); bindEvents(this); - setTitle(this, this.getAttribute('data-type')); } }; @@ -131,15 +132,15 @@ import ServerConnections from '../../components/ServerConnections'; if (item) { this.setAttribute('data-id', item.Id); this.setAttribute('data-serverid', item.ServerId); + this.setAttribute('data-type', item.Type); const played = item.UserData && item.UserData.Played; setState(this, played); bindEvents(this); - - setTitle(this, item.Type); } else { this.removeAttribute('data-id'); this.removeAttribute('data-serverid'); + this.removeAttribute('data-type'); this.removeAttribute('data-played'); clearEvents(this); } From 9f302dbf7207c179de9dba2cfe805fe551de7abf Mon Sep 17 00:00:00 2001 From: Dmitry Lyzo Date: Thu, 24 Feb 2022 18:37:32 +0300 Subject: [PATCH 2/2] Make title of ratingbutton state-dependent --- src/elements/emby-ratingbutton/emby-ratingbutton.js | 10 ++++++---- src/strings/en-us.json | 1 + 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/src/elements/emby-ratingbutton/emby-ratingbutton.js b/src/elements/emby-ratingbutton/emby-ratingbutton.js index 5e279616e4..de42531891 100644 --- a/src/elements/emby-ratingbutton/emby-ratingbutton.js +++ b/src/elements/emby-ratingbutton/emby-ratingbutton.js @@ -88,10 +88,12 @@ import ServerConnections from '../../components/ServerConnections'; button.setAttribute('data-likes', (likes === null ? '' : likes)); } + + setTitle(button, isFavorite); } - function setTitle(button) { - button.title = globalize.translate('Favorite'); + function setTitle(button, isFavorite) { + button.title = isFavorite ? globalize.translate('Favorite') : globalize.translate('AddToFavorites'); const text = button.querySelector('.button-text'); if (text) { @@ -141,9 +143,9 @@ import ServerConnections from '../../components/ServerConnections'; setState(this, likes, isFavorite, false); bindEvents(this); + } else { + setTitle(this); } - - setTitle(this); }; EmbyRatingButtonPrototype.detachedCallback = function () { diff --git a/src/strings/en-us.json b/src/strings/en-us.json index b28f9d60f8..d59708cf7e 100644 --- a/src/strings/en-us.json +++ b/src/strings/en-us.json @@ -6,6 +6,7 @@ "AddedOnValue": "Added {0}", "AdditionalNotificationServices": "Browse the plugin catalog to install additional notification services.", "AddToCollection": "Add to collection", + "AddToFavorites": "Add to favorites", "AddToPlaylist": "Add to playlist", "AddToPlayQueue": "Add to play queue", "AgeValue": "({0} years old)",