diff --git a/routes/api/task/import_cfg.ts b/routes/api/task/import_cfg.ts new file mode 100644 index 0000000..b212212 --- /dev/null +++ b/routes/api/task/import_cfg.ts @@ -0,0 +1,31 @@ +import { Handlers } from "$fresh/server.ts"; +import { ImportMethod } from "../../../config.ts"; +import { User, UserPermission } from "../../../db.ts"; +import { get_task_manager } from "../../../server.ts"; +import { return_data, return_error } from "../../../server/utils.ts"; + +export type DefaultImportConfig = { + max_import_img_count?: number; + mpv?: boolean; + method?: ImportMethod; + remove_previous_gallery?: boolean; +}; + +export const handler: Handlers = { + GET(_req, ctx) { + const user = ctx.state.user; + if ( + user && !user.is_admin && + !(user.permissions & UserPermission.ManageTasks) + ) { + return return_error(403, "Permission denied."); + } + const m = get_task_manager(); + return return_data({ + max_import_img_count: m.cfg.max_import_img_count, + method: m.cfg.import_method, + mpv: m.cfg.mpv, + remove_previous_gallery: m.cfg.remove_previous_gallery, + }); + }, +};