fe2e38057e33e938cbe9fa450a5614f42e74e7fb
[motion2.git] / server / utils / update-app-config.js
1 // *************************************************************************
2 // *                                                                       *
3 // * xCALLY Motion -  The Omnichannel Contact Center                       *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
5 // *                                                                       *
6 // *************************************************************************
7 // *                                                                       *
8 // * Email: info@xcally.com                                                *
9 // * Website: https://www.xcally.com                                       *
10 // *                                                                       *
11 // *************************************************************************
12 // *                                                                       *
13 // * The SOFTWARE PRODUCT is protected by copyright laws and international *
14 // * copyright treaties, as well as other intellectual property laws and   *
15 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                         *
16 // *                                                                       *
17 // *************************************************************************
18 var _0x4b30=['env','NODE_PATH','string','then','readJSON','info','Updating\x20app.json','exports','fs-extra','root','resolve','server/app.json','legacy-libs','apps','findIndex','name'];(function(_0x20a584,_0xe384a5){var _0x4b41a8=function(_0x2127c6){while(--_0x2127c6){_0x20a584['push'](_0x20a584['shift']());}};_0x4b41a8(++_0xe384a5);}(_0x4b30,0x188));var _0x04b3=function(_0x119172,_0x3e83f2){_0x119172=_0x119172-0x0;var _0x1498a8=_0x4b30[_0x119172];return _0x1498a8;};var fs=require(_0x04b3('0x0'));var path=require('path');var config=require('../config/environment');var root=config[_0x04b3('0x1')];var APP_JSON_PATH=path[_0x04b3('0x2')](root,_0x04b3('0x3'));var NODEPATH=path[_0x04b3('0x2')](root,_0x04b3('0x4'));function setLegacyLibsNodeEnvPath(_0x2cbde6){let _0x389690=![];if(Array['isArray'](_0x2cbde6[_0x04b3('0x5')])){var _0x47101a=_0x2cbde6['apps'][_0x04b3('0x6')](function(_0x15c72c){return _0x15c72c[_0x04b3('0x7')]==='motion2';});if(_0x47101a>-0x1){var _0x24ef05=_0x2cbde6[_0x04b3('0x5')][_0x47101a];if(typeof _0x24ef05[_0x04b3('0x8')][_0x04b3('0x9')]!==_0x04b3('0xa')){_0x24ef05[_0x04b3('0x8')][_0x04b3('0x9')]=NODEPATH;_0x389690=!![];}}return{'appConfig':_0x2cbde6,'updated':_0x389690};}}function updateAppConfig(_0x5e27d5){return fs['pathExists'](APP_JSON_PATH)[_0x04b3('0xb')](function(_0x3a7aa2){if(_0x3a7aa2){return fs[_0x04b3('0xc')](APP_JSON_PATH)[_0x04b3('0xb')](function(_0x54240b){var _0x3e82a9=setLegacyLibsNodeEnvPath(_0x54240b);if(_0x3e82a9['updated']){_0x5e27d5[_0x04b3('0xd')](_0x04b3('0xe'));return fs['writeJSON'](APP_JSON_PATH,_0x54240b,{'spaces':0x2});}else{return Promise['resolve']();}});}else{return Promise['resolve']();}});}module[_0x04b3('0xf')]=updateAppConfig;