Fix cron expression updates in dynamic group scheduling

Replit-Commit-Author: Agent
Replit-Commit-Session-Id: 705f2157-ef97-4fbd-89e4-8c7f2ecaea90
Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/7ed01c5f-a82d-405a-b728-b2e3d127c60c/84a9ea23-1975-4d94-9bee-0bd122ed0481.jpg
This commit is contained in:
alphaeusmote
2025-04-11 03:01:44 +00:00
@@ -90,6 +90,12 @@ export const CronJobBuilder: React.FC<CronJobBuilderProps> = ({
// Update cron expression // Update cron expression
const schedule = newSchedules[index]; const schedule = newSchedules[index];
// If we're in advanced mode and it's a custom schedule, use the advanced generator
if (schedule.mode === 'advanced' && schedule.customSchedule) {
newSchedules[index].cronExpression = generateAdvancedCronExpression(schedule);
} else {
// Otherwise use the standard frequency-based generator
let cronExpression = ''; let cronExpression = '';
switch (schedule.frequency) { switch (schedule.frequency) {
@@ -110,9 +116,14 @@ export const CronJobBuilder: React.FC<CronJobBuilderProps> = ({
const day = schedule.dayOfMonth || 1; const day = schedule.dayOfMonth || 1;
cronExpression = `${schedule.minute} ${schedule.hour} ${day} * *`; cronExpression = `${schedule.minute} ${schedule.hour} ${day} * *`;
break; break;
case 'custom':
// For custom schedules, if there's no existing cron expression, use a default
cronExpression = schedule.cronExpression || '0 0 * * *';
break;
} }
newSchedules[index].cronExpression = cronExpression; newSchedules[index].cronExpression = cronExpression;
}
setActiveSchedules(newSchedules); setActiveSchedules(newSchedules);
onSchedulesChange(newSchedules); onSchedulesChange(newSchedules);
@@ -598,11 +609,7 @@ export const CronJobBuilder: React.FC<CronJobBuilderProps> = ({
updateSchedule(index, { updateSchedule(index, {
minutes: newMinutes, minutes: newMinutes,
customSchedule: true, customSchedule: true
cronExpression: generateAdvancedCronExpression({
...schedule,
minutes: newMinutes
})
}); });
}} }}
> >
@@ -638,11 +645,7 @@ export const CronJobBuilder: React.FC<CronJobBuilderProps> = ({
updateSchedule(index, { updateSchedule(index, {
hours: newHours, hours: newHours,
customSchedule: true, customSchedule: true
cronExpression: generateAdvancedCronExpression({
...schedule,
hours: newHours
})
}); });
}} }}
> >
@@ -678,11 +681,7 @@ export const CronJobBuilder: React.FC<CronJobBuilderProps> = ({
updateSchedule(index, { updateSchedule(index, {
daysOfWeek: newDays, daysOfWeek: newDays,
customSchedule: true, customSchedule: true
cronExpression: generateAdvancedCronExpression({
...schedule,
daysOfWeek: newDays
})
}); });
}} }}
> >
@@ -718,11 +717,7 @@ export const CronJobBuilder: React.FC<CronJobBuilderProps> = ({
updateSchedule(index, { updateSchedule(index, {
daysOfMonth: newDays, daysOfMonth: newDays,
customSchedule: true, customSchedule: true
cronExpression: generateAdvancedCronExpression({
...schedule,
daysOfMonth: newDays
})
}); });
}} }}
> >
@@ -763,11 +758,7 @@ export const CronJobBuilder: React.FC<CronJobBuilderProps> = ({
updateSchedule(index, { updateSchedule(index, {
months: newMonths, months: newMonths,
customSchedule: true, customSchedule: true
cronExpression: generateAdvancedCronExpression({
...schedule,
months: newMonths
})
}); });
}} }}
> >