# HG changeset patch # User bsw # Date 1340377554 -7200 # Node ID d22125d054aaac1c1623b42c6c1577ccc7a14eba # Parent ce8cba9d88bb123b3071a49f43a2370ed8505413 Forbid sending of notifications for events more than 7 days in future or past diff -r ce8cba9d88bb -r d22125d054aa model/event.lua --- a/model/event.lua Fri Jun 22 16:31:07 2012 +0200 +++ b/model/event.lua Fri Jun 22 17:05:54 2012 +0200 @@ -53,11 +53,13 @@ })[self.state] end -function Event.object:send_notification() - +function Event.object:send_notification() + local members_to_notify = Member:new_selector() :join("event_seen_by_member", nil, { "event_seen_by_member.seen_by_member_id = member.id AND event_seen_by_member.notify_level <= member.notify_level AND event_seen_by_member.id = ?", self.id } ) :add_where("member.activated NOTNULL AND member.notify_email NOTNULL") + -- SAFETY FIRST, NEVER send notifications for events more then 7 days in past or future + :add_where("now() - event_seen_by_member.occurrence BETWEEN '-7 days'::interval AND '7 days'::interval") :exec() print (_("Event #{id} -> #{num} members", { id = self.id, num = #members_to_notify }))