From 6a2b6e46e0feaa06042ac36bf970a9bb18ffba12 Mon Sep 17 00:00:00 2001 From: MDeeApp <6595194+MDeeApp@users.noreply.github.com> Date: Mon, 20 Oct 2025 22:58:22 +0200 Subject: [PATCH] enhanced deadline parsing --- extension/content.js | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/extension/content.js b/extension/content.js index 620ee5d..3dfe67d 100644 --- a/extension/content.js +++ b/extension/content.js @@ -1685,13 +1685,15 @@ function extractDeadlineFromPostText(postElement) { ]; const extractTimeAfterIndex = (text, index) => { - const tail = text.slice(index, index + 40); - const timeMatch = /^\s*(?:[,;:-]|\b)?\s*(?:um|ab|bis)?\s*(?:ca\.?)?\s*(\d{1,2})[:.](\d{2})\s*(?:uhr|h)?/i.exec(tail); + const tail = text.slice(index, index + 80); + const timeMatch = /^\s*(?:[,;:-]|\b)?\s*(?:um|ab|bis|gegen|spätestens)?\s*(?:den|dem|am)?\s*(?:ca\.?)?\s*(\d{1,2})(?:[:.](\d{2}))?\s*(?:uhr|h)?/i.exec(tail); if (!timeMatch) { return null; } const hour = parseInt(timeMatch[1], 10); - const minute = parseInt(timeMatch[2], 10); + const minute = typeof timeMatch[2] === 'string' && timeMatch[2].length + ? parseInt(timeMatch[2], 10) + : 0; if (Number.isNaN(hour) || Number.isNaN(minute)) { return null; }