aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorgnattu <gnattu@users.noreply.github.com>2024-05-07 23:43:54 +0800
committerGitHub <noreply@github.com>2024-05-07 09:43:54 -0600
commit8c583bbe3709d59f59801053912aa8cb1dbd9367 (patch)
tree7222d4c61bd159ee06ce15cc039a31493143a648
parent40444316107bed26e073f43df2bcdc38873da6e8 (diff)
Allow explicitly set userId for RequestHelpers.GetSession (#11505)
-rw-r--r--Jellyfin.Api/Controllers/PlaystateController.cs4
-rw-r--r--Jellyfin.Api/Helpers/RequestHelpers.cs6
2 files changed, 5 insertions, 5 deletions
diff --git a/Jellyfin.Api/Controllers/PlaystateController.cs b/Jellyfin.Api/Controllers/PlaystateController.cs
index 9d6d756818..88aa0178f9 100644
--- a/Jellyfin.Api/Controllers/PlaystateController.cs
+++ b/Jellyfin.Api/Controllers/PlaystateController.cs
@@ -90,7 +90,7 @@ public class PlaystateController : BaseJellyfinApiController
return NotFound();
}
- var session = await RequestHelpers.GetSession(_sessionManager, _userManager, HttpContext).ConfigureAwait(false);
+ var session = await RequestHelpers.GetSession(_sessionManager, _userManager, HttpContext, userId).ConfigureAwait(false);
var dto = UpdatePlayedStatus(user, item, true, datePlayed);
foreach (var additionalUserInfo in session.AdditionalUsers)
@@ -155,7 +155,7 @@ public class PlaystateController : BaseJellyfinApiController
return NotFound();
}
- var session = await RequestHelpers.GetSession(_sessionManager, _userManager, HttpContext).ConfigureAwait(false);
+ var session = await RequestHelpers.GetSession(_sessionManager, _userManager, HttpContext, userId).ConfigureAwait(false);
var dto = UpdatePlayedStatus(user, item, false, null);
foreach (var additionalUserInfo in session.AdditionalUsers)
diff --git a/Jellyfin.Api/Helpers/RequestHelpers.cs b/Jellyfin.Api/Helpers/RequestHelpers.cs
index 429e972132..b607e91041 100644
--- a/Jellyfin.Api/Helpers/RequestHelpers.cs
+++ b/Jellyfin.Api/Helpers/RequestHelpers.cs
@@ -117,10 +117,10 @@ public static class RequestHelpers
return user.EnableUserPreferenceAccess;
}
- internal static async Task<SessionInfo> GetSession(ISessionManager sessionManager, IUserManager userManager, HttpContext httpContext)
+ internal static async Task<SessionInfo> GetSession(ISessionManager sessionManager, IUserManager userManager, HttpContext httpContext, Guid? userId = null)
{
- var userId = httpContext.User.GetUserId();
- var user = userManager.GetUserById(userId);
+ userId ??= httpContext.User.GetUserId();
+ var user = userManager.GetUserById(userId.Value);
var session = await sessionManager.LogSessionActivity(
httpContext.User.GetClient(),
httpContext.User.GetVersion(),