aboutsummaryrefslogtreecommitdiff
path: root/Jellyfin.Api/Controllers/PlaystateController.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Jellyfin.Api/Controllers/PlaystateController.cs')
-rw-r--r--Jellyfin.Api/Controllers/PlaystateController.cs13
1 files changed, 10 insertions, 3 deletions
diff --git a/Jellyfin.Api/Controllers/PlaystateController.cs b/Jellyfin.Api/Controllers/PlaystateController.cs
index 0422bfe72..70394800b 100644
--- a/Jellyfin.Api/Controllers/PlaystateController.cs
+++ b/Jellyfin.Api/Controllers/PlaystateController.cs
@@ -1,5 +1,6 @@
using System;
using System.Diagnostics.CodeAnalysis;
+using System.Globalization;
using System.Threading.Tasks;
using Jellyfin.Api.Constants;
using Jellyfin.Api.Helpers;
@@ -73,15 +74,21 @@ namespace Jellyfin.Api.Controllers
public ActionResult<UserItemDataDto> MarkPlayedItem(
[FromRoute] Guid userId,
[FromRoute] Guid itemId,
- [FromQuery] DateTime? datePlayed)
+ [FromQuery] string? datePlayed)
{
+ DateTime? parsedDatePlayed = null;
+ if (!string.IsNullOrEmpty(datePlayed))
+ {
+ parsedDatePlayed = DateTime.ParseExact(datePlayed, "yyyyMMddHHmmss", CultureInfo.InvariantCulture, DateTimeStyles.AssumeUniversal);
+ }
+
var user = _userManager.GetUserById(userId);
var session = RequestHelpers.GetSession(_sessionManager, _authContext, Request);
- var dto = UpdatePlayedStatus(user, itemId, true, datePlayed);
+ var dto = UpdatePlayedStatus(user, itemId, true, parsedDatePlayed);
foreach (var additionalUserInfo in session.AdditionalUsers)
{
var additionalUser = _userManager.GetUserById(additionalUserInfo.UserId);
- UpdatePlayedStatus(additionalUser, itemId, true, datePlayed);
+ UpdatePlayedStatus(additionalUser, itemId, true, parsedDatePlayed);
}
return dto;