import type { iSchedule } from "types/schedules.js"
import executeQuery from "../lib/db.js"

export async function getList() {
	const result = await executeQuery({
		query: `
			SELECT
				scheduleID,
				description,
				every,
				frequency,
				startOn
			FROM
				schedules
		`,
	})

	return result
}

export async function create(sched: iSchedule) {
	const result = await executeQuery({
		query: `
			INSERT INTO schedules (
				description,
				every,
				frequency,
				startOn
			) VALUES (
				'${sched.description}',
				${sched.every},
				${sched.frequency},
				'${sched.startOn}'
			)
		`,
	})

	return result
}

export async function update(sched: iSchedule) {
	const result = await executeQuery({
		query: `
			UPDATE
				schedules 
			SET
				description='${sched.description}',
				every=${sched.every},
				frequency=${sched.frequency},
				startOn='${sched.startOn}' 
			WHERE
				scheduleID=${sched.scheduleID}
		`,
	})

	return result
}

export async function remove(id: string) {
	const result = await executeQuery({
		query: `
			DELETE FROM schedules WHERE scheduleID=${id}
		`,
	})

	return result
}
