Add new settings meili_hosts

This commit is contained in:
2023-08-27 14:48:19 +08:00
parent aa78f40b34
commit b947cedc24
2 changed files with 33 additions and 9 deletions

View File

@@ -1,7 +1,7 @@
import { Handlers } from "$fresh/server.ts";
import { get_task_manager } from "../../server.ts";
import type { StatusData } from "../../server/status.ts";
import { return_data } from "../../server/utils.ts";
import { get_host, return_data } from "../../server/utils.ts";
import { check_ffmpeg_binary } from "../../thumbnail/ffmpeg_binary.ts";
import type * as FFMPEG_API from "../../thumbnail/ffmpeg_api.ts";
@@ -18,7 +18,7 @@ async function check_ffmpeg_api() {
}
export const handler: Handlers = {
async GET(_req, ctx) {
async GET(req, ctx) {
const m = get_task_manager();
const is_authed = ctx.state.user !== undefined ||
m.db.get_user_count() === 0;
@@ -27,15 +27,25 @@ export const handler: Handlers = {
);
const ffmpeg_api_enabled = await check_ffmpeg_api();
const meilisearch_enabled = m.meilisearch !== undefined;
const meilisearch =
let meilisearch;
if (
is_authed && meilisearch_enabled && m.cfg.meili_host &&
m.cfg.meili_update_api_key
? {
host: m.cfg.meili_host,
key: m.cfg.meili_search_api_key ||
m.cfg.meili_update_api_key,
m.cfg.meili_update_api_key
) {
const rhost = get_host(req);
const hosts = m.cfg.meili_hosts;
let host: string | undefined;
if (hosts !== undefined) {
if (hosts[rhost]) {
host = hosts[rhost];
}
: undefined;
}
if (!host) host = m.cfg.meili_host;
meilisearch = {
host,
key: m.cfg.meili_search_api_key || m.cfg.meili_update_api_key,
};
}
const no_user = m.db.get_user_count() === 0;
return return_data<StatusData>({
ffmpeg_api_enabled,