locations: before processing, after each send operations and after queue
processing
- Fixes an issue with sending continuing when newsletter is trashed
- Updates unit tests
- Adds new method to render newsletter to the newsletter model
- Adds new transient object to newsletter model that will hold temporary
values (i.e., rendered body) when working with the model
- Extracts common tracking data processing/validation code into the Track
class
- Refactors Clicks, Opens and View in Browser classes to enforce
subscriber id and token check
- Allows admin users to preview newsletters without tracking statistics
scheduler is configured and cron is not running
- Updates sending queue worker and related components to stop (delete)
cron when all processing is done