Details
-
Type: New Feature
-
Status: Closed
-
Priority: Major
-
Resolution: Fixed
-
Affects Version/s: None
-
Fix Version/s: 5.9.0-b1
-
Component/s: None
-
Labels:None
Description
Add the following company settings
- Renewal Attempt Spacing Threshold 1 (The number of service renewals to attempt before delaying Spacing attempts Renewal Attempt Spacing 1 hours apart)
- Renewal Attempt Spacing 1 [Selector with --none-- and hours 1-72]
- Renewal Attempt Spacing Threshold 2 (The number of service renewals to attempt before delaying Spacing attempts Renewal Attempt Spacing 2 hours apart)
- Renewal Attempt Spacing 2 [Selector with --none-- and hours 1-72]
Add a column to service_invoices called date_next_attempt DATETIME NULL DEFAULT NULL
When a service renewal fails:
- If the post increment value of failed_attempts is greater than renewal_attempt_threshold_2, then set the date_next_attempt for this record to the current datetime + renewal_attempt_spacing_2 hours
- Else if the post increment value of failed_attempts is greater than renewal_attempt_threshold_1, then set the date_next_attempt for this record to the current datetime + renewal_attempt_spacing_1 hours
Add a column to the page under Tools > Renewal Queue for Next Attempt Date which displays "Next Cron Run" for records with a date_next_attempt of null.
Update getAllRenewablePaid() to only get records with date_next_attempt === null or date_next_attempt < current date