LP#1823983: repeat_delay check removes event definition id filter
authorMike Rylander <mrylander@gmail.com>
Tue, 9 Apr 2019 15:30:15 +0000 (11:30 -0400)
committerGalen Charlton <gmc@equinoxOLI.org>
Wed, 8 Sep 2021 16:28:31 +0000 (12:28 -0400)
commit36cc5ef5be9098374793faf8717b1e339b89f09a
tree41e6ce4a206cdbfe4e291e1a25615e3833e83432
parentdc243b47eddbedbcaf244ae63a0247b389509151
LP#1823983: repeat_delay check removes event definition id filter

This bug has existed since the repeat_delay feature was added, but likely only
rarely was triggered because most events don't have a repeat_delay, and those
that do don't interact with the same target.  However, as more repeatable event
definitions are created, inappropriate interaction becomes more likely.

In this commit we avoid overwriting the whole join condition clause, which
already contains an event definition id filter and needs to retain it.

Included is an unrelated change that uses the new-ish form of
interval_to_seconds that avoids DST boundary shifting issues by passing a
context DateTime object as the second parameter.

Signed-off-by: Mike Rylander <mrylander@gmail.com>
Signed-off-by: Galen Charlton <gmc@equinoxOLI.org>
Open-ILS/src/perlmods/lib/OpenILS/Application/Trigger.pm