Fix recurring ticket schedule edge cases in API and model
- manage_recurring.php calculateNextRun(): expand monthly cap from 28→31 with proper last-day-of-month clamping (matches model fix); use split with ':00' append to handle malformed time strings without crashing; fix weekly day array to start at index 1 (not 0) so day=0 never maps to empty string and blows up DateTime - RecurringTicketModel::calculateNextRunTime(): same weekly day array fix (start at index 1) to eliminate '' → DateTime exception on day=0 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -176,7 +176,8 @@ class RecurringTicketModel {
|
||||
break;
|
||||
|
||||
case 'weekly':
|
||||
$dayName = ['', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday'][$scheduleDay] ?? 'Monday';
|
||||
$dayNames = [1 => 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday'];
|
||||
$dayName = $dayNames[(int)$scheduleDay] ?? 'Monday';
|
||||
$next = new DateTime("next {$dayName} " . $scheduleTime);
|
||||
break;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user