da2a0593ca
Fix lint Disable modern mode Fixes UI fixes Fixes Ignore .po~ files Fixes Fix homepage Fixes Fixes Mix format Fix tests Fix tests (yeah…) Signed-off-by: Thomas Citharel <tcit@tcit.fr>
24 lines
676 B
TypeScript
24 lines
676 B
TypeScript
import { apolloProvider } from '@/vue-apollo';
|
|
import { CONFIG } from '@/graphql/config';
|
|
import { IConfig } from '@/types/config.model';
|
|
import { NavigationGuard } from 'vue-router';
|
|
import { ErrorRouteName } from '@/router/error';
|
|
import { ErrorCode } from '@/types/error-code.model';
|
|
|
|
export const beforeRegisterGuard: NavigationGuard = async function (to, from, next) {
|
|
const { data } = await apolloProvider.defaultClient.query({
|
|
query: CONFIG,
|
|
});
|
|
|
|
const config: IConfig = data.config;
|
|
|
|
if (!config.registrationsOpen) {
|
|
return next({
|
|
name: ErrorRouteName.ERROR,
|
|
query: { code: ErrorCode.REGISTRATION_CLOSED },
|
|
});
|
|
}
|
|
|
|
return next();
|
|
};
|