diff --git a/Controllers/DisplayController.cs b/Controllers/DisplayController.cs index 76311ec..12799af 100644 --- a/Controllers/DisplayController.cs +++ b/Controllers/DisplayController.cs @@ -26,6 +26,12 @@ public class DisplayController : Controller return View("NotFound", devices); } + // Skip expired Meows — expiry is enforced at playback time, not on the stored data + var now = DateTime.Now; + device.DeviceSlides = device.DeviceSlides + .Where(ds => ds.Slide.ExpiresAt == null || ds.Slide.ExpiresAt > now) + .ToList(); + return View(device); } @@ -40,7 +46,10 @@ public class DisplayController : Controller if (device == null) return NotFound(); - var playlist = device.DeviceSlides.Select(ds => new + var now = DateTime.Now; + var playlist = device.DeviceSlides + .Where(ds => ds.Slide.ExpiresAt == null || ds.Slide.ExpiresAt > now) + .Select(ds => new { id = ds.Slide.Id, name = ds.Slide.Name,