From 023cdf0d7a6408f670fb0ef5c60e65bd0bd409a9 Mon Sep 17 00:00:00 2001 From: Alexandre Alapetite Date: Sun, 30 Nov 2025 21:42:46 +0100 Subject: Web scraping support date format epoch milliseconds (#8266) fix https://github.com/FreshRSS/FreshRSS/discussions/8264 Auto detect whether a `U` date format should be in seconds or milliseconds. --- app/Models/Feed.php | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'app/Models/Feed.php') diff --git a/app/Models/Feed.php b/app/Models/Feed.php index cd5fa508d..5cf82b718 100644 --- a/app/Models/Feed.php +++ b/app/Models/Feed.php @@ -1098,6 +1098,10 @@ class FreshRSS_Feed extends Minz_Model { $item['author'] = $xPathItemAuthor == '' ? '' : $xpathEvaluateString($xPathItemAuthor, $node); $item['timestamp'] = $xPathItemTimestamp == '' ? '' : $xpathEvaluateString($xPathItemTimestamp, $node); if ($xPathItemTimeFormat != '') { + if ($xPathItemTimeFormat === 'U' && strlen($item['timestamp']) > 10) { + // Compatibility with Unix timestamp in milliseconds + $item['timestamp'] = substr($item['timestamp'], 0, -3); + } $dateTime = DateTime::createFromFormat($xPathItemTimeFormat, $item['timestamp']); if ($dateTime != false) { $item['timestamp'] = $dateTime->format(DateTime::ATOM); -- cgit v1.2.3