mirror of
https://github.com/ZoneMinder/zoneminder.git
synced 2026-08-03 00:37:21 -04:00
The DateTime filter attribute was taught the "event overlaps this instant/window" idiom in web/includes/FilterTerm.php: a lower bound (>=/>) compares COALESCE(EndDateTime, '9999-12-31 23:59:59') so still-running events are included, while an upper bound keeps comparing StartDateTime. The Perl Filter.pm still emitted E.StartDateTime for that attribute, so a saved filter using DateTime with >=/> selected different events in the web UI than in zmfilter.pl, which drives automated delete/email/execute actions. Apply the same column selection in ZoneMinder::Filter::Sql so the daemon and the web agree. Verified by generating SQL from both sides for =, <, <=, >, >=: the column expressions are now byte-identical. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01KQipwf632JGgNH4W7p8cqs