Bladeren bron

Merge pull request #533 from smiclea/hotfix-services-urls

Fix an issue where services URLs were not set
Nashwan Azhari 6 jaren geleden
bovenliggende
commit
ebabb1f814
1 gewijzigde bestanden met toevoegingen van 6 en 14 verwijderingen
  1. 6 14
      server/api/ConfigApi.js

+ 6 - 14
server/api/ConfigApi.js

@@ -25,17 +25,10 @@ const getBaseUrl = () => {
   return BASE_URL.trim().replace(/\/$/, '')
 }
 
-const setDefaultServicesUrls = (config: Config): Config => {
-  Object.keys(config.servicesUrls).forEach(key => {
-    config.servicesUrls[key] = config.servicesUrls[key].replace('{BASE_URL}', getBaseUrl())
-  })
-  return config
-}
-
-const modServicesUrls = (config: Config, servicesMod: Services): Services => {
-  let services: Services = { ...config.servicesUrls }
+const modServicesUrls = (configServices: Services, servicesMod?: Services): Services => {
+  let services: Services = { ...configServices }
   Object.keys(services).forEach(key => {
-    services[key] = (servicesMod[key] ? servicesMod[key] : services[key])
+    services[key] = ((servicesMod && servicesMod[key]) ? servicesMod[key] : services[key])
       .replace('{BASE_URL}', getBaseUrl())
   })
   return services
@@ -48,7 +41,7 @@ export default (router: express$Router) => {
     let config: Config = requireWithoutCache(configPath, require).config
     let modJsonPath: ?string = process.env.MOD_JSON
     if (!modJsonPath) {
-      setDefaultServicesUrls(config)
+      config.servicesUrls = modServicesUrls(config.servicesUrls)
       res.send(config)
       return
     }
@@ -56,12 +49,11 @@ export default (router: express$Router) => {
       let jsonContent = fs.readFileSync(modJsonPath)
       let configMod = JSON.parse(jsonContent).config
       Object.keys(configMod).forEach(key => {
-        if (key === 'servicesUrls') {
-          config[key] = modServicesUrls(config, configMod[key])
-        } else {
+        if (key !== 'servicesUrls') {
           config[key] = configMod[key]
         }
       })
+      config.servicesUrls = modServicesUrls(config.servicesUrls, configMod.servicesUrls)
       res.send(config)
     } catch (err) {
       console.error(err)