Răsfoiți Sursa

move ErrorV3 to /models

mizozobu 6 ani în urmă
părinte
comite
7b185a2e02

+ 3 - 1
src/server/util/ErrorV3.js → src/server/models/ErrorV3.js

@@ -8,4 +8,6 @@ class ErrorV3 extends Error {
 
 }
 
-module.exports = ErrorV3;
+module.exports = function(crowi) {
+  return ErrorV3;
+};

+ 3 - 0
src/server/models/index.js

@@ -15,4 +15,7 @@ module.exports = {
   GlobalNotificationSetting: require('./GlobalNotificationSetting'),
   GlobalNotificationMailSetting: require('./GlobalNotificationSetting/GlobalNotificationMailSetting'),
   GlobalNotificationSlackSetting: require('./GlobalNotificationSetting/GlobalNotificationSlackSetting'),
+
+  // non-persistent models
+  ErrorV3: require('./ErrorV3'),
 };

+ 3 - 4
src/server/routes/apiv3/index.js

@@ -6,12 +6,11 @@ const express = require('express');
 
 const router = express.Router();
 
-const addCustomFunctionToResponse = require('./response');
-
-addCustomFunctionToResponse(express);
-
 module.exports = (crowi) => {
 
+  // add custom functions to express response
+  require('./response')(express, crowi);
+
   router.use('/healthcheck', require('./healthcheck')(crowi));
 
   router.use('/user-groups', require('./user-group')(crowi));

+ 3 - 3
src/server/routes/apiv3/response.js

@@ -1,8 +1,8 @@
 const toArrayIfNot = require('../../../lib/util/toArrayIfNot');
-const ErrorV3 = require('../../util/ErrorV3');
 
-// add custom functions to express res
-const addCustomFunctionToResponse = (express) => {
+const addCustomFunctionToResponse = (express, crowi) => {
+  const { ErrorV3 } = crowi.models;
+
   express.response.apiv3 = function(obj) { // not arrow function
     // obj must be object
     if (typeof obj !== 'object' || obj instanceof Array) {

+ 1 - 2
src/server/routes/apiv3/user-group-relation.js

@@ -6,7 +6,6 @@ const express = require('express');
 
 const router = express.Router();
 
-const ErrorV3 = require('../../util/ErrorV3');
 const {
   accessTokenParser,
   loginRequired,
@@ -15,7 +14,7 @@ const {
 
 
 module.exports = (crowi) => {
-  const { UserGroup, UserGroupRelation } = crowi.models;
+  const { ErrorV3, UserGroup, UserGroupRelation } = crowi.models;
 
   router.use('/', accessTokenParser(crowi));
 

+ 4 - 4
src/server/routes/apiv3/user-group.js

@@ -7,7 +7,7 @@ const express = require('express');
 const router = express.Router();
 
 const { body, param, query } = require('express-validator/check');
-const ErrorV3 = require('../../util/ErrorV3');
+
 const {
   accessTokenParser,
   csrfVerify,
@@ -19,7 +19,7 @@ const {
 const validator = {};
 
 module.exports = (crowi) => {
-  const { UserGroup, UserGroupRelation } = crowi.models;
+  const { ErrorV3, UserGroup, UserGroupRelation } = crowi.models;
 
   router.use('/', accessTokenParser(crowi));
 
@@ -40,7 +40,7 @@ module.exports = (crowi) => {
     body('name', 'Group name is required').trim().exists(),
   ];
 
-  router.post('/', loginRequired(crowi), adminRequired(), csrfVerify(crowi), validator.create, formValid(), async(req, res) => {
+  router.post('/', loginRequired(crowi), adminRequired(), csrfVerify(crowi), validator.create, formValid(crowi), async(req, res) => {
     const { name } = req.body;
 
     try {
@@ -62,7 +62,7 @@ module.exports = (crowi) => {
     query('transferToUserGroupId').trim(),
   ];
 
-  router.delete('/:id', loginRequired(crowi), adminRequired(), csrfVerify(crowi), validator.delete, formValid(), async(req, res) => {
+  router.delete('/:id', loginRequired(crowi), adminRequired(), csrfVerify(crowi), validator.delete, formValid(crowi), async(req, res) => {
     const { id: deleteGroupId } = req.params;
     const { actionName, transferToUserGroupId } = req.query;
 

+ 3 - 2
src/server/util/middlewares.js

@@ -4,7 +4,6 @@ const pathUtils = require('growi-commons').pathUtils;
 const md5 = require('md5');
 const entities = require('entities');
 const { validationResult } = require('express-validator/check');
-const ErrorV3 = require('./ErrorV3');
 
 exports.csrfKeyGenerator = function(crowi, app) {
   return function(req, res, next) {
@@ -320,7 +319,9 @@ exports.awsEnabled = function() {
   };
 };
 
-exports.formValid = function() {
+exports.formValid = function(crowi) {
+  const { ErrorV3 } = crowi.models;
+
   return function(req, res, next) {
     const errObjArray = validationResult(req);
     if (errObjArray.isEmpty()) {