29 lines
1.1 KiB
TypeScript
29 lines
1.1 KiB
TypeScript
import { Server, Socket } from "socket.io";
|
|
import { log_error } from "../util";
|
|
import { SocketEvents } from "../events";
|
|
import TasksRecurringController from "../../controllers/task-recurring-controller";
|
|
|
|
export async function on_task_recurring_change(_io: Server, socket: Socket, data?: { task_id?: string, schedule_id?: string }) {
|
|
if (!data?.task_id) return;
|
|
try {
|
|
if (!data.schedule_id) {
|
|
const scheduleData = await TasksRecurringController.createTaskSchedule(data.task_id);
|
|
|
|
socket.emit(SocketEvents.TASK_RECURRING_CHANGE.toString(), {
|
|
task_id: data?.task_id,
|
|
id: scheduleData.id,
|
|
schedule_type: scheduleData.schedule_type
|
|
});
|
|
} else {
|
|
await TasksRecurringController.removeTaskSchedule(data.schedule_id);
|
|
socket.emit(SocketEvents.TASK_RECURRING_CHANGE.toString(), {
|
|
task_id: data?.task_id,
|
|
id: null,
|
|
schedule_type: null
|
|
});
|
|
}
|
|
|
|
} catch (e) {
|
|
log_error(e);
|
|
}
|
|
} |