mirror of
https://gitlab.com/PronounsPage/PronounsPage.git
synced 2025-09-22 20:24:18 -04:00
refactor: disable api routes for macrolanguages
This commit is contained in:
parent
bbc9400f0b
commit
e275e6e1ae
@ -1,18 +1,13 @@
|
||||
<script setup lang="ts">
|
||||
import { clearUrl } from '../src/helpers.ts';
|
||||
|
||||
import { useRoute, useNuxtApp, useRouter } from '#app';
|
||||
import { useRoute, useNuxtApp } from '#app';
|
||||
import useConfig from '~/composables/useConfig.ts';
|
||||
import useSimpleHead from '~/composables/useSimpleHead.ts';
|
||||
|
||||
const { $locales: locales, $t, $translator: translator } = useNuxtApp();
|
||||
const router = useRouter();
|
||||
const config = useConfig();
|
||||
|
||||
if (!config.macrolanguage?.enabled) {
|
||||
router.push('/');
|
||||
}
|
||||
|
||||
const route = useRoute();
|
||||
|
||||
useSimpleHead({
|
||||
@ -20,6 +15,15 @@ useSimpleHead({
|
||||
description: translator.translate('macrolanguage.prompt'),
|
||||
}, translator);
|
||||
|
||||
definePageMeta({
|
||||
translatedPaths: (config) => {
|
||||
if (!config.macrolanguage?.enabled) {
|
||||
return [];
|
||||
}
|
||||
return ['/langswitch'];
|
||||
},
|
||||
});
|
||||
|
||||
const getSanitizedReturnPath = (): string => {
|
||||
const returnPath = route.query.return;
|
||||
|
||||
|
@ -1,3 +1,5 @@
|
||||
import fs from 'fs';
|
||||
|
||||
import * as Sentry from '@sentry/node';
|
||||
import type { StartSpanOptions } from '@sentry/types';
|
||||
import express from 'express';
|
||||
@ -40,8 +42,13 @@ import translationsRoute from './express/translations.ts';
|
||||
import userRoute from './express/user.ts';
|
||||
import { config } from './social.ts';
|
||||
|
||||
import type { Config } from '~/locale/config.ts';
|
||||
import { closeAuditLogConnection } from '~/server/audit.ts';
|
||||
import useAuthentication from '~/server/utils/useAuthentication.ts';
|
||||
|
||||
import SUML from 'suml';
|
||||
|
||||
const localeConfig = new SUML()
|
||||
.parse(fs.readFileSync('./data/config.suml', 'utf-8')) as Config;
|
||||
|
||||
const MemoryStore = memorystore(session);
|
||||
|
||||
@ -147,25 +154,28 @@ router.use(grant.express()(config));
|
||||
|
||||
router.use(homeRoute);
|
||||
router.use(bannerRoute);
|
||||
router.use(userRoute);
|
||||
router.use(profileRoute);
|
||||
router.use(adminRoute);
|
||||
router.use(mfaRoute);
|
||||
router.use(pronounsRoute);
|
||||
router.use(sourcesRoute);
|
||||
router.use(nounsRoute);
|
||||
router.use(inclusiveRoute);
|
||||
router.use(termsRoute);
|
||||
router.use(pronounceRoute);
|
||||
router.use(censusRoute);
|
||||
router.use(namesRoute);
|
||||
router.use(imagesRoute);
|
||||
router.use(calendarRoute);
|
||||
router.use(translationsRoute);
|
||||
router.use(subscriptionRoute);
|
||||
router.use(discord);
|
||||
router.use(sentryRoute);
|
||||
|
||||
if (!localeConfig.macrolanguage?.enabled) {
|
||||
router.use(userRoute);
|
||||
router.use(profileRoute);
|
||||
router.use(adminRoute);
|
||||
router.use(mfaRoute);
|
||||
router.use(pronounsRoute);
|
||||
router.use(sourcesRoute);
|
||||
router.use(nounsRoute);
|
||||
router.use(inclusiveRoute);
|
||||
router.use(termsRoute);
|
||||
router.use(pronounceRoute);
|
||||
router.use(censusRoute);
|
||||
router.use(namesRoute);
|
||||
router.use(imagesRoute);
|
||||
router.use(calendarRoute);
|
||||
router.use(translationsRoute);
|
||||
router.use(subscriptionRoute);
|
||||
router.use(discord);
|
||||
}
|
||||
|
||||
router.use((err: Error, req: Request, res: Response, _next: NextFunction) => {
|
||||
console.error(formatError(err, req));
|
||||
res.status(500).send('Unexpected server error');
|
||||
@ -173,4 +183,6 @@ router.use((err: Error, req: Request, res: Response, _next: NextFunction) => {
|
||||
closeAuditLogConnection();
|
||||
});
|
||||
|
||||
router.use((_req, res) => res.status(404).send('Not found'));
|
||||
|
||||
export default useBase('/api', defineExpressHandler(router));
|
||||
|
Loading…
x
Reference in New Issue
Block a user