Fix admin login and add subscription popup settings
Some checks failed
docker-images / build-and-push (admin, admin, termi-astro-admin, admin/Dockerfile) (push) Failing after 6s
docker-images / build-and-push (backend, backend, termi-astro-backend, backend/Dockerfile) (push) Failing after 5s
docker-images / build-and-push (frontend, frontend, termi-astro-frontend, frontend/Dockerfile) (push) Failing after 6s

This commit is contained in:
2026-04-01 00:05:16 +08:00
parent 350262c910
commit 660b255700
19 changed files with 1096 additions and 32 deletions

View File

@@ -230,6 +230,10 @@ export interface ApiSiteSettings {
}> | null;
ai_enabled: boolean;
paragraph_comments_enabled: boolean;
subscription_popup_enabled: boolean;
subscription_popup_title: string | null;
subscription_popup_description: string | null;
subscription_popup_delay_seconds: number | null;
seo_default_og_image: string | null;
seo_default_twitter_handle: string | null;
}
@@ -398,6 +402,12 @@ export const DEFAULT_SITE_SETTINGS: SiteSettings = {
comments: {
paragraphsEnabled: true,
},
subscriptions: {
popupEnabled: true,
popupTitle: '订阅更新',
popupDescription: '有新文章或汇总简报时,通过邮件第一时间收到提醒。需要先确认邮箱,可随时退订。',
popupDelaySeconds: 18,
},
seo: {
defaultOgImage: undefined,
defaultTwitterHandle: undefined,
@@ -523,6 +533,18 @@ const normalizeSiteSettings = (settings: ApiSiteSettings): SiteSettings => ({
comments: {
paragraphsEnabled: settings.paragraph_comments_enabled ?? true,
},
subscriptions: {
popupEnabled:
settings.subscription_popup_enabled ?? DEFAULT_SITE_SETTINGS.subscriptions.popupEnabled,
popupTitle:
settings.subscription_popup_title || DEFAULT_SITE_SETTINGS.subscriptions.popupTitle,
popupDescription:
settings.subscription_popup_description ||
DEFAULT_SITE_SETTINGS.subscriptions.popupDescription,
popupDelaySeconds:
settings.subscription_popup_delay_seconds ??
DEFAULT_SITE_SETTINGS.subscriptions.popupDelaySeconds,
},
seo: {
defaultOgImage: settings.seo_default_og_image ?? undefined,
defaultTwitterHandle: settings.seo_default_twitter_handle ?? undefined,

View File

@@ -77,6 +77,12 @@ export interface SiteSettings {
comments: {
paragraphsEnabled: boolean;
};
subscriptions: {
popupEnabled: boolean;
popupTitle: string;
popupDescription: string;
popupDelaySeconds: number;
};
seo: {
defaultOgImage?: string;
defaultTwitterHandle?: string;