From 1ce6587078377197b83f72357efc8b702715f6c8 Mon Sep 17 00:00:00 2001 From: Jurrer Date: Mon, 10 Nov 2025 00:39:47 +0100 Subject: [PATCH 1/2] fix condition for onWatchedStatusChanged --- Jellyfin.Plugin.TubeArchivistMetadata/Plugin.cs | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Jellyfin.Plugin.TubeArchivistMetadata/Plugin.cs b/Jellyfin.Plugin.TubeArchivistMetadata/Plugin.cs index 7902298..fde396a 100644 --- a/Jellyfin.Plugin.TubeArchivistMetadata/Plugin.cs +++ b/Jellyfin.Plugin.TubeArchivistMetadata/Plugin.cs @@ -192,8 +192,7 @@ namespace Jellyfin.Plugin.TubeArchivistMetadata var user = _userManager.GetUserById(eventArgs.UserId); if ( Configuration.JFTAProgressSync && - user != null && - Configuration.GetJFUsernamesToArray().Contains(user!.Username) && + user == null && string.Equals(topParent?.Name, Instance?.Configuration.CollectionTitle, StringComparison.OrdinalIgnoreCase) ) { From 4c3de5146be91333dc3f789e6ff686dca8e077e2 Mon Sep 17 00:00:00 2001 From: Jurrer Date: Thu, 13 Nov 2025 00:55:18 +0100 Subject: [PATCH 2/2] collection name + user name check to OnWatchedStatusChange --- Jellyfin.Plugin.TubeArchivistMetadata/Plugin.cs | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/Jellyfin.Plugin.TubeArchivistMetadata/Plugin.cs b/Jellyfin.Plugin.TubeArchivistMetadata/Plugin.cs index fde396a..7321375 100644 --- a/Jellyfin.Plugin.TubeArchivistMetadata/Plugin.cs +++ b/Jellyfin.Plugin.TubeArchivistMetadata/Plugin.cs @@ -191,16 +191,21 @@ namespace Jellyfin.Plugin.TubeArchivistMetadata var topParent = eventArgs.Item.GetTopParent(); var user = _userManager.GetUserById(eventArgs.UserId); if ( - Configuration.JFTAProgressSync && - user == null && - string.Equals(topParent?.Name, Instance?.Configuration.CollectionTitle, StringComparison.OrdinalIgnoreCase) + Configuration.JFTAProgressSync + && user == null + && string.Equals(topParent?.Name, Instance?.Configuration.CollectionTitle, StringComparison.OrdinalIgnoreCase) ) { Logger.LogError("OnWatchedStatusChange callback called without user id for item {ItemName}", eventArgs.Item.Name); return; } - if (Configuration.JFTAProgressSync && user != null && Configuration.GetJFUsernamesToArray().Contains(user!.Username)) + if ( + Configuration.JFTAProgressSync + && user != null + && string.Equals(Configuration.JFUsernameFrom, user!.Username, StringComparison.Ordinal) + && string.Equals(topParent?.Name, Instance?.Configuration.CollectionTitle, StringComparison.OrdinalIgnoreCase) + ) { var userItemData = _userDataManager.GetUserData(user, eventArgs.Item); var isPlayed = eventArgs.Item.IsPlayed(user, userItemData);