|
|
@@ -5,9 +5,11 @@ import { format, subSeconds } from 'date-fns';
|
|
|
import { body, validationResult } from 'express-validator';
|
|
|
|
|
|
import { SupportedAction } from '~/interfaces/activity';
|
|
|
+import { RegistrationMode } from '~/interfaces/registration-mode';
|
|
|
import UserRegistrationOrder from '~/server/models/user-registration-order';
|
|
|
import loggerFactory from '~/utils/logger';
|
|
|
|
|
|
+
|
|
|
const logger = loggerFactory('growi:routes:apiv3:user-activation');
|
|
|
|
|
|
const PASSOWRD_MINIMUM_NUMBER = 8;
|
|
|
@@ -246,6 +248,11 @@ export const registerAction = (crowi) => {
|
|
|
const registerForm = req.body.registerForm || {};
|
|
|
const email = registerForm.email;
|
|
|
const isRegisterableEmail = await User.isRegisterableEmail(email);
|
|
|
+ const registrationMode = crowi.configManager.getConfig('crowi', 'security:registrationMode') as RegistrationMode;
|
|
|
+
|
|
|
+ if (registrationMode === RegistrationMode.CLOSED) {
|
|
|
+ return res.apiv3Err(['message.registration_closed'], 400);
|
|
|
+ }
|
|
|
|
|
|
if (!isRegisterableEmail) {
|
|
|
req.body.registerForm.email = email;
|