mizozobu 7 лет назад
Родитель
Сommit
6204e623e8
4 измененных файлов с 32 добавлено и 8 удалено
  1. 20 3
      lib/routes/admin.js
  2. 3 3
      lib/routes/index.js
  3. 1 0
      lib/service/rest-qiita-API.js
  4. 8 2
      lib/util/importer.js

+ 20 - 3
lib/routes/admin.js

@@ -1226,12 +1226,29 @@ module.exports = function(crowi, app) {
   };
   };
 
 
   /**
   /**
-   * save settings, update config cache, and response json
+   * save esa settings, update config cache, and response json
+   *
+   * @param {*} req
+   * @param {*} res
+   */
+  actions.api.importerSettingEsa = async(req, res) => {
+    const form = req.form.settingForm;
+
+    if (!req.form.isValid) {
+      return res.json({status: false, message: req.form.errors.join('\n')});
+    }
+
+    await saveSetting(req, res, form);
+    await importer.initializeEsaClient();
+  };
+
+  /**
+   * save qiita settings, update config cache, and response json
    *
    *
    * @param {*} req
    * @param {*} req
    * @param {*} res
    * @param {*} res
    */
    */
-  actions.api.importerSetting = async(req, res) => {
+  actions.api.importerSettingQiita = async(req, res) => {
     const form = req.form.settingForm;
     const form = req.form.settingForm;
 
 
     if (!req.form.isValid) {
     if (!req.form.isValid) {
@@ -1239,7 +1256,7 @@ module.exports = function(crowi, app) {
     }
     }
 
 
     await saveSetting(req, res, form);
     await saveSetting(req, res, form);
-    await importer.initialize();
+    await importer.initializeQiitaClient();
   };
   };
 
 
   /**
   /**

+ 3 - 3
lib/routes/index.js

@@ -77,7 +77,7 @@ module.exports = function(crowi, app) {
   app.get('/passport/twitter'                     , loginPassport.loginWithTwitter);
   app.get('/passport/twitter'                     , loginPassport.loginWithTwitter);
   app.get('/passport/google/callback'             , loginPassport.loginPassportGoogleCallback);
   app.get('/passport/google/callback'             , loginPassport.loginPassportGoogleCallback);
   app.get('/passport/github/callback'             , loginPassport.loginPassportGitHubCallback);
   app.get('/passport/github/callback'             , loginPassport.loginPassportGitHubCallback);
-  app.get('/passport/twitter/callback'             , loginPassport.loginPassportTwitterCallback); 
+  app.get('/passport/twitter/callback'             , loginPassport.loginPassportTwitterCallback);
 
 
   // markdown admin
   // markdown admin
   app.get('/admin/markdown'                   , loginRequired(crowi, app) , middleware.adminRequired() , admin.markdown.index);
   app.get('/admin/markdown'                   , loginRequired(crowi, app) , middleware.adminRequired() , admin.markdown.index);
@@ -145,8 +145,8 @@ module.exports = function(crowi, app) {
 
 
   // importer management for admin
   // importer management for admin
   app.get('/admin/importer'                , loginRequired(crowi, app) , middleware.adminRequired() , admin.importer.index);
   app.get('/admin/importer'                , loginRequired(crowi, app) , middleware.adminRequired() , admin.importer.index);
-  app.post('/_api/admin/settings/importerEsa' , loginRequired(crowi, app) , middleware.adminRequired() , csrf , form.admin.importerEsa , admin.api.importerSetting);
-  app.post('/_api/admin/settings/importerQiita' , loginRequired(crowi, app) , middleware.adminRequired() , csrf , form.admin.importerQiita , admin.api.importerSetting);
+  app.post('/_api/admin/settings/importerEsa' , loginRequired(crowi, app) , middleware.adminRequired() , csrf , form.admin.importerEsa , admin.api.importerSettingEsa);
+  app.post('/_api/admin/settings/importerQiita' , loginRequired(crowi, app) , middleware.adminRequired() , csrf , form.admin.importerQiita , admin.api.importerSettingQiita);
   app.post('/_api/admin/import/esa'        , loginRequired(crowi, app) , middleware.adminRequired() , admin.api.importDataFromEsa);
   app.post('/_api/admin/import/esa'        , loginRequired(crowi, app) , middleware.adminRequired() , admin.api.importDataFromEsa);
   app.post('/_api/admin/import/testEsaAPI' , loginRequired(crowi, app) , middleware.adminRequired() , csrf , form.admin.importerEsa , admin.api.testEsaAPI);
   app.post('/_api/admin/import/testEsaAPI' , loginRequired(crowi, app) , middleware.adminRequired() , csrf , form.admin.importerEsa , admin.api.testEsaAPI);
   app.post('/_api/admin/import/qiita'        , loginRequired(crowi, app) , middleware.adminRequired() , admin.api.importDataFromQiita);
   app.post('/_api/admin/import/qiita'        , loginRequired(crowi, app) , middleware.adminRequired() , admin.api.importDataFromQiita);

+ 1 - 0
lib/service/rest-qiita-API.js

@@ -35,6 +35,7 @@ class RestQiitaAPIService {
   async reset() {
   async reset() {
     this.team = this.config.crowi['importer:qiita:team_name'];
     this.team = this.config.crowi['importer:qiita:team_name'];
     this.token = this.config.crowi['importer:qiita:access_token'];
     this.token = this.config.crowi['importer:qiita:access_token'];
+    this.axios = getAxios(this.team, this.token);
   }
   }
 
 
   /**
   /**

+ 8 - 2
lib/util/importer.js

@@ -15,13 +15,18 @@ module.exports = crowi => {
   /**
   /**
    * Initialize importer
    * Initialize importer
    */
    */
-  importer.initialize = () => {
+  importer.initializeEsaClient = () => {
     esaClient = esa({
     esaClient = esa({
       team:        config.crowi['importer:esa:team_name'],
       team:        config.crowi['importer:esa:team_name'],
       accessToken: config.crowi['importer:esa:access_token'],
       accessToken: config.crowi['importer:esa:access_token'],
     });
     });
     logger.info('initialize esa importer');
     logger.info('initialize esa importer');
+  };
 
 
+  /**
+   * Initialize importer
+   */
+  importer.initializeQiitaClient = () => {
     restQiitaAPIService.reset();
     restQiitaAPIService.reset();
     logger.info('initialize qiita importer');
     logger.info('initialize qiita importer');
   };
   };
@@ -172,7 +177,8 @@ module.exports = crowi => {
   };
   };
 
 
   // initialize when server starts
   // initialize when server starts
-  importer.initialize();
+  importer.initializeEsaClient();
+  importer.initializeQiitaClient();
 
 
   return importer;
   return importer;
 };
 };