When viewing a shift summary, we want to show when the shift was "last updated". Events of course have an updated_at column, but that doesn't take into account task or user changes, nor associated public and admin notes, or any other associated objects. It also is changed when an event in a series is deleted or split and the original event gains an exdate, but that's not a meaningful change for admins.
This adds an admin_updated_at field to track the changes that admins would care about. It's updated when an event:
- Adds or removes a task
- Adds or removes a user
- Changes its start date, duration, title, public notes, or admin notes
- Is deleted from a series
All of these are true for single events and events into the future.
admin_updated_at is not changed when a volunteer adds a task log or event note.
When viewing a shift summary, we want to show when the shift was "last updated". Events of course have an `updated_at` column, but that doesn't take into account task or user changes, nor associated public and admin notes, or any other associated objects. It also is changed when an event in a series is deleted or split and the original event gains an `exdate`, but that's not a meaningful change for admins.
This adds an `admin_updated_at` field to track the changes that admins would care about. It's updated when an event:
- Adds or removes a task
- Adds or removes a user
- Changes its start date, duration, title, public notes, or admin notes
- Is deleted from a series
All of these are true for single events and events into the future.
`admin_updated_at` is not changed when a volunteer adds a task log or event note.