Kaynağa Gözat

add UserGroupService

Yuki Takei 6 yıl önce
ebeveyn
işleme
f2eea6ca8d

+ 9 - 0
src/server/crowi/index.js

@@ -101,6 +101,7 @@ Crowi.prototype.init = async function() {
     this.setUpAcl(),
     this.setUpAcl(),
     this.setUpCustomize(),
     this.setUpCustomize(),
     this.setUpRestQiitaAPI(),
     this.setUpRestQiitaAPI(),
+    this.setupUserGroup(),
   ]);
   ]);
 };
 };
 
 
@@ -539,4 +540,12 @@ Crowi.prototype.setUpRestQiitaAPI = function() {
   }
   }
 };
 };
 
 
+Crowi.prototype.setupUserGroup = async function() {
+  const UserGroupService = require('../service/user-group');
+  if (this.userGroupService == null) {
+    this.userGroupService = new UserGroupService(this);
+    return this.userGroupService.init();
+  }
+};
+
 module.exports = Crowi;
 module.exports = Crowi;

+ 0 - 5
src/server/models/user-group-relation.js

@@ -41,10 +41,6 @@ class UserGroupRelation {
     return this._crowi;
     return this._crowi;
   }
   }
 
 
-  static init() {
-    this.removeAllInvalidRelations();
-  }
-
   /**
   /**
    * remove all invalid relations that has reference to unlinked document
    * remove all invalid relations that has reference to unlinked document
    */
    */
@@ -288,6 +284,5 @@ module.exports = function(crowi) {
   UserGroupRelation.crowi = crowi;
   UserGroupRelation.crowi = crowi;
   schema.loadClass(UserGroupRelation);
   schema.loadClass(UserGroupRelation);
   const model = mongoose.model('UserGroupRelation', schema);
   const model = mongoose.model('UserGroupRelation', schema);
-  model.init();
   return model;
   return model;
 };
 };

+ 23 - 0
src/server/service/user-group.js

@@ -0,0 +1,23 @@
+const logger = require('@alias/logger')('growi:service:UserGroupService'); // eslint-disable-line no-unused-vars
+
+const mongoose = require('mongoose');
+
+const UserGroupRelation = mongoose.model('UserGroupRelation');
+
+/**
+ * the service class of GlobalNotificationSetting
+ */
+class UserGroupService {
+
+  constructor(configManager) {
+    this.configManager = configManager;
+  }
+
+  async init() {
+    logger.debug('removing all invalid relations');
+    return UserGroupRelation.removeAllInvalidRelations();
+  }
+
+}
+
+module.exports = UserGroupService;