a8a6138b35c5f9a09a92bdacd6bd0b4ed1565d7c
[motion2.git] / server / api / setting / setting.controller.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 _0xb6c2=['securePassword','addPreferred','getPreferred','default_preferred.png','addFavicon','getFavicon','default_favicon.ico','getDate','utcOffset','format','YYYY-MM-DD\x20HH:mm:ss:SSS','eml-format','moment','mustache','util','path','sox','to-csv','ejs','fs-extra','lodash','squel','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','jayson/promise','http','request','then','info','request\x20sent','Setting,\x20%s,\x20%s,\x20%s','stringify','error','code','Setting,\x20%s,\x20%s','message','result','sendStatus','status','end','json','offset','undefined','limit','count','set','Content-Range','reject','update','destroy','stack','name','send','index','map','fieldName','type','key','model','query','keys','intersection','attributes','fields','length','nolimit','sort','where','filters','merge','VIRTUAL','filter','options','Setting','includeAll','include','findAll','rows','catch','show','params','rawAttributes','find','body','addLogo','file','filename','addLogoLogin','loginLogo','getLogo','getLicense','logo','favicon','defaultLogo','defaultLoginLogo','defaultFavicon','existsSync','root','toLower','join','default','upperFirst','custom','default_logo.svg','ValidationError','\x20not\x20found','download','server/files/images/logos','preferred','defaultPreferred','default_loginLogo.svg','Sequelize','gdpr'];(function(_0x1da691,_0x48cdaa){var _0x56766b=function(_0x5bf781){while(--_0x5bf781){_0x1da691['push'](_0x1da691['shift']());}};_0x56766b(++_0x48cdaa);}(_0xb6c2,0x182));var _0x2b6c=function(_0x2c85b4,_0x1b2321){_0x2c85b4=_0x2c85b4-0x0;var _0x37d53f=_0xb6c2[_0x2c85b4];return _0x37d53f;};'use strict';var emlformat=require(_0x2b6c('0x0'));var rimraf=require('rimraf');var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require(_0x2b6c('0x1'));var BPromise=require('bluebird');var Mustache=require(_0x2b6c('0x2'));var util=require(_0x2b6c('0x3'));var path=require(_0x2b6c('0x4'));var sox=require(_0x2b6c('0x5'));var csv=require(_0x2b6c('0x6'));var ejs=require(_0x2b6c('0x7'));var fs=require('fs');var fs_extra=require(_0x2b6c('0x8'));var _=require(_0x2b6c('0x9'));var squel=require(_0x2b6c('0xa'));var crypto=require('crypto');var jsforce=require(_0x2b6c('0xb'));var deskjs=require(_0x2b6c('0xc'));var toCsv=require(_0x2b6c('0x6'));var querystring=require(_0x2b6c('0xd'));var Papa=require(_0x2b6c('0xe'));var Redis=require(_0x2b6c('0xf'));var authService=require(_0x2b6c('0x10'));var qs=require(_0x2b6c('0x11'));var as=require(_0x2b6c('0x12'));var hardwareService=require(_0x2b6c('0x13'));var logger=require(_0x2b6c('0x14'))('api');var utils=require(_0x2b6c('0x15'));var config=require(_0x2b6c('0x16'));var licenseUtil=require(_0x2b6c('0x17'));var db=require(_0x2b6c('0x18'))['db'];var jayson=require(_0x2b6c('0x19'));var client=jayson['client'][_0x2b6c('0x1a')]({'port':0x232a});function respondWithRpcPromise(_0x1618a2,_0x2cdc4e,_0x13bdb9,_0x5bb187){return new BPromise(function(_0x9ee8ba,_0x49c238){var _0x33da48=_0x5bb187||client;return _0x33da48[_0x2b6c('0x1b')](_0x1618a2,_0x13bdb9)[_0x2b6c('0x1c')](function(_0x1ae8a7){logger[_0x2b6c('0x1d')]('Setting,\x20%s,\x20%s',_0x2cdc4e,_0x2b6c('0x1e'));logger['debug'](_0x2b6c('0x1f'),_0x2cdc4e,_0x2b6c('0x1e'),JSON[_0x2b6c('0x20')](_0x1ae8a7));if(_0x1ae8a7[_0x2b6c('0x21')]){if(_0x1ae8a7[_0x2b6c('0x21')][_0x2b6c('0x22')]===0x1f4){logger['error'](_0x2b6c('0x23'),_0x2cdc4e,_0x1ae8a7[_0x2b6c('0x21')][_0x2b6c('0x24')]);return _0x49c238(_0x1ae8a7[_0x2b6c('0x21')][_0x2b6c('0x24')]);}logger[_0x2b6c('0x21')](_0x2b6c('0x23'),_0x2cdc4e,_0x1ae8a7['error']['message']);return _0x9ee8ba(_0x1ae8a7[_0x2b6c('0x21')][_0x2b6c('0x24')]);}else{logger[_0x2b6c('0x1d')](_0x2b6c('0x23'),_0x2cdc4e,_0x2b6c('0x1e'));_0x9ee8ba(_0x1ae8a7[_0x2b6c('0x25')][_0x2b6c('0x24')]);}})['catch'](function(_0xdec26e){logger['error']('Setting,\x20%s,\x20%s',_0x2cdc4e,_0xdec26e);_0x49c238(_0xdec26e);});});}function respondWithStatusCode(_0x2c72a3,_0x68d9c8){_0x68d9c8=_0x68d9c8||0xcc;return function(_0x2fce65){if(_0x2fce65){return _0x2c72a3[_0x2b6c('0x26')](_0x68d9c8);}return _0x2c72a3[_0x2b6c('0x27')](_0x68d9c8)[_0x2b6c('0x28')]();};}function respondWithResult(_0x5754d8,_0x41f7a4){_0x41f7a4=_0x41f7a4||0xc8;return function(_0x561bf9){if(_0x561bf9){return _0x5754d8[_0x2b6c('0x27')](_0x41f7a4)[_0x2b6c('0x29')](_0x561bf9);}};}function respondWithFilteredResult(_0xceaac7,_0x466d2c){return function(_0x483f2e){if(_0x483f2e){var _0x321471=typeof _0x466d2c[_0x2b6c('0x2a')]===_0x2b6c('0x2b')&&typeof _0x466d2c[_0x2b6c('0x2c')]==='undefined';var _0x1b30df=_0x483f2e['count'];var _0x3e485f=_0x321471?0x0:_0x466d2c['offset'];var _0x43ec6f=_0x321471?_0x483f2e[_0x2b6c('0x2d')]:_0x466d2c[_0x2b6c('0x2a')]+_0x466d2c[_0x2b6c('0x2c')];var _0x1f567d;if(_0x43ec6f>=_0x1b30df){_0x43ec6f=_0x1b30df;_0x1f567d=0xc8;}else{_0x1f567d=0xce;}_0xceaac7[_0x2b6c('0x27')](_0x1f567d);return _0xceaac7[_0x2b6c('0x2e')](_0x2b6c('0x2f'),_0x3e485f+'-'+_0x43ec6f+'/'+_0x1b30df)[_0x2b6c('0x29')](_0x483f2e);}return null;};}function patchUpdates(_0x20859e){return function(_0x3e4f92){try{jsonpatch['apply'](_0x3e4f92,_0x20859e,!![]);}catch(_0x137d62){return BPromise[_0x2b6c('0x30')](_0x137d62);}return _0x3e4f92['save']();};}function saveUpdates(_0x3530a7,_0x2142cd){return function(_0x453038){if(_0x453038){return _0x453038[_0x2b6c('0x31')](_0x3530a7)['then'](function(_0xb1dd8){return _0xb1dd8;});}return null;};}function removeEntity(_0x419c60,_0x100129){return function(_0x5790be){if(_0x5790be){return _0x5790be[_0x2b6c('0x32')]()['then'](function(){_0x419c60[_0x2b6c('0x27')](0xcc)[_0x2b6c('0x28')]();});}};}function handleEntityNotFound(_0x3430db,_0xb6e20){return function(_0x32daa8){if(!_0x32daa8){_0x3430db[_0x2b6c('0x26')](0x194);}return _0x32daa8;};}function handleError(_0x108e3e,_0xab18bd){_0xab18bd=_0xab18bd||0x1f4;return function(_0x5b8688){logger[_0x2b6c('0x21')](_0x5b8688[_0x2b6c('0x33')]);if(_0x5b8688[_0x2b6c('0x34')]){delete _0x5b8688[_0x2b6c('0x34')];}_0x108e3e[_0x2b6c('0x27')](_0xab18bd)[_0x2b6c('0x35')](_0x5b8688);};}exports[_0x2b6c('0x36')]=function(_0xc2bcc1,_0x33151e){var _0x171523={},_0xae605d={},_0x226492={'count':0x0,'rows':[]};var _0x4ad4ee=_[_0x2b6c('0x37')](db['Setting']['rawAttributes'],function(_0x3ccd7b){return{'name':_0x3ccd7b[_0x2b6c('0x38')],'type':_0x3ccd7b[_0x2b6c('0x39')][_0x2b6c('0x3a')]};});_0xae605d[_0x2b6c('0x3b')]=_['map'](_0x4ad4ee,'name');_0xae605d[_0x2b6c('0x3c')]=_[_0x2b6c('0x3d')](_0xc2bcc1['query']);_0xae605d['filters']=_[_0x2b6c('0x3e')](_0xae605d[_0x2b6c('0x3b')],_0xae605d[_0x2b6c('0x3c')]);_0x171523[_0x2b6c('0x3f')]=_[_0x2b6c('0x3e')](_0xae605d[_0x2b6c('0x3b')],qs[_0x2b6c('0x40')](_0xc2bcc1[_0x2b6c('0x3c')][_0x2b6c('0x40')]));_0x171523[_0x2b6c('0x3f')]=_0x171523['attributes'][_0x2b6c('0x41')]?_0x171523[_0x2b6c('0x3f')]:_0xae605d[_0x2b6c('0x3b')];if(!_0xc2bcc1[_0x2b6c('0x3c')]['hasOwnProperty'](_0x2b6c('0x42'))){_0x171523['limit']=qs['limit'](_0xc2bcc1['query'][_0x2b6c('0x2c')]);_0x171523[_0x2b6c('0x2a')]=qs[_0x2b6c('0x2a')](_0xc2bcc1['query'][_0x2b6c('0x2a')]);}_0x171523['order']=qs['sort'](_0xc2bcc1[_0x2b6c('0x3c')][_0x2b6c('0x43')]);_0x171523[_0x2b6c('0x44')]=qs[_0x2b6c('0x45')](_['pick'](_0xc2bcc1[_0x2b6c('0x3c')],_0xae605d['filters']),_0x4ad4ee);if(_0xc2bcc1[_0x2b6c('0x3c')]['filter']){_0x171523[_0x2b6c('0x44')]=_[_0x2b6c('0x46')](_0x171523[_0x2b6c('0x44')],{'$or':_[_0x2b6c('0x37')](_0x4ad4ee,function(_0x56eb34){if(_0x56eb34[_0x2b6c('0x39')]!==_0x2b6c('0x47')){var _0x451e56={};_0x451e56[_0x56eb34['name']]={'$like':'%'+_0xc2bcc1[_0x2b6c('0x3c')][_0x2b6c('0x48')]+'%'};return _0x451e56;}})});}_0x171523=_[_0x2b6c('0x46')]({},_0x171523,_0xc2bcc1[_0x2b6c('0x49')]);var _0x15858b={'where':_0x171523[_0x2b6c('0x44')]};return db[_0x2b6c('0x4a')][_0x2b6c('0x2d')](_0x15858b)['then'](function(_0x2a060e){_0x226492[_0x2b6c('0x2d')]=_0x2a060e;if(_0xc2bcc1[_0x2b6c('0x3c')][_0x2b6c('0x4b')]){_0x171523[_0x2b6c('0x4c')]=[{'all':!![]}];}return db[_0x2b6c('0x4a')][_0x2b6c('0x4d')](_0x171523);})[_0x2b6c('0x1c')](function(_0x79b5bc){_0x226492[_0x2b6c('0x4e')]=_0x79b5bc;return _0x226492;})[_0x2b6c('0x1c')](respondWithFilteredResult(_0x33151e,_0x171523))[_0x2b6c('0x4f')](handleError(_0x33151e,null));};exports[_0x2b6c('0x50')]=function(_0x5427d5,_0x4f7a94){var _0x5d57b4={'raw':![],'where':{'id':_0x5427d5[_0x2b6c('0x51')]['id']}},_0x54ee8a={};_0x54ee8a[_0x2b6c('0x3b')]=_[_0x2b6c('0x3d')](db['Setting'][_0x2b6c('0x52')]);_0x54ee8a[_0x2b6c('0x3c')]=_['keys'](_0x5427d5[_0x2b6c('0x3c')]);_0x54ee8a[_0x2b6c('0x45')]=_[_0x2b6c('0x3e')](_0x54ee8a[_0x2b6c('0x3b')],_0x54ee8a[_0x2b6c('0x3c')]);_0x5d57b4['attributes']=_[_0x2b6c('0x3e')](_0x54ee8a[_0x2b6c('0x3b')],qs[_0x2b6c('0x40')](_0x5427d5['query'][_0x2b6c('0x40')]));_0x5d57b4['attributes']=_0x5d57b4[_0x2b6c('0x3f')][_0x2b6c('0x41')]?_0x5d57b4['attributes']:_0x54ee8a[_0x2b6c('0x3b')];if(_0x5427d5[_0x2b6c('0x3c')][_0x2b6c('0x4b')]){_0x5d57b4[_0x2b6c('0x4c')]=[{'all':!![]}];}_0x5d57b4=_[_0x2b6c('0x46')]({},_0x5d57b4,_0x5427d5[_0x2b6c('0x49')]);return db['Setting'][_0x2b6c('0x53')](_0x5d57b4)['then'](handleEntityNotFound(_0x4f7a94,null))[_0x2b6c('0x1c')](respondWithResult(_0x4f7a94,null))['catch'](handleError(_0x4f7a94,null));};exports[_0x2b6c('0x31')]=function(_0x412a08,_0x2e0994){if(_0x412a08['body']['id']){delete _0x412a08[_0x2b6c('0x54')]['id'];}return db[_0x2b6c('0x4a')][_0x2b6c('0x53')]({'where':{'id':_0x412a08[_0x2b6c('0x51')]['id']}})[_0x2b6c('0x1c')](handleEntityNotFound(_0x2e0994,null))[_0x2b6c('0x1c')](saveUpdates(_0x412a08[_0x2b6c('0x54')],null))[_0x2b6c('0x1c')](respondWithResult(_0x2e0994,null))[_0x2b6c('0x4f')](handleError(_0x2e0994,null));};exports[_0x2b6c('0x55')]=function(_0x3953b3,_0x244178,_0x1a29f5){if(_0x3953b3[_0x2b6c('0x56')]&&_0x3953b3['file'][_0x2b6c('0x57')]){_0x3953b3[_0x2b6c('0x54')]['logo']=_0x3953b3['file'][_0x2b6c('0x57')];}return db['Setting'][_0x2b6c('0x53')]({'where':{'id':_0x3953b3[_0x2b6c('0x51')]['id']}})[_0x2b6c('0x1c')](handleEntityNotFound(_0x244178,null))[_0x2b6c('0x1c')](saveUpdates(_0x3953b3[_0x2b6c('0x54')],null))['then'](respondWithResult(_0x244178,null))['catch'](handleError(_0x244178,null));};exports[_0x2b6c('0x58')]=function(_0x5d8a7e,_0x3f0087,_0x449fd5){if(_0x5d8a7e['file']&&_0x5d8a7e[_0x2b6c('0x56')]['filename']){_0x5d8a7e['body'][_0x2b6c('0x59')]=_0x5d8a7e[_0x2b6c('0x56')]['filename'];}return db[_0x2b6c('0x4a')][_0x2b6c('0x53')]({'where':{'id':_0x5d8a7e['params']['id']}})[_0x2b6c('0x1c')](handleEntityNotFound(_0x3f0087,null))[_0x2b6c('0x1c')](saveUpdates(_0x5d8a7e[_0x2b6c('0x54')],null))[_0x2b6c('0x1c')](respondWithResult(_0x3f0087,null))['catch'](handleError(_0x3f0087,null));};var utilLicense=require(_0x2b6c('0x17'));exports[_0x2b6c('0x5a')]=function(_0x44424d,_0x2b083e,_0x40beb2){var _0x194cde='server/files/images/logos';var _0x11122a={'custom':![]};return utilLicense[_0x2b6c('0x5b')]()[_0x2b6c('0x1c')](function(_0x2fa3a9){if(_0x2fa3a9){_0x11122a=_0x2fa3a9;}return db[_0x2b6c('0x4a')][_0x2b6c('0x53')]({'where':{'id':_0x44424d[_0x2b6c('0x51')]['id']},'attributes':[_0x2b6c('0x5c'),'loginLogo','preferred',_0x2b6c('0x5d'),_0x2b6c('0x5e'),_0x2b6c('0x5f'),'defaultPreferred',_0x2b6c('0x60')],'raw':!![]});})['then'](handleEntityNotFound(_0x2b083e,null))[_0x2b6c('0x1c')](function(_0x3fa438){if(_0x3fa438){var _0x1f8bbe=_0x3fa438[_0x2b6c('0x5c')]&&fs[_0x2b6c('0x61')](path['join'](config[_0x2b6c('0x62')],_0x194cde,_[_0x2b6c('0x63')](_0x3fa438['logo'])))?path[_0x2b6c('0x64')](config['root'],_0x194cde,_[_0x2b6c('0x63')](_0x3fa438[_0x2b6c('0x5c')])):path['join'](config['root'],_0x194cde,_[_0x2b6c('0x63')]('default_logo.svg'));var _0x3939da=_0x2b6c('0x65')+_[_0x2b6c('0x66')](_0x2b6c('0x5c'));if(_0x3fa438[_0x3939da]||!_0x11122a[_0x2b6c('0x67')]){_0x1f8bbe=path[_0x2b6c('0x64')](config[_0x2b6c('0x62')],_0x194cde,_[_0x2b6c('0x63')](_0x2b6c('0x68')));}if(!fs[_0x2b6c('0x61')](_0x1f8bbe)){throw new db['Sequelize'][(_0x2b6c('0x69'))](_[_0x2b6c('0x66')]('logo')+_0x2b6c('0x6a'));}return _0x2b083e[_0x2b6c('0x6b')](_0x1f8bbe);}})[_0x2b6c('0x4f')](handleError(_0x2b083e,null));};var utilLicense=require('../../config/license/util');exports['getLogoLogin']=function(_0x17ec48,_0x1dc8e3,_0x4d62d1){var _0x238199=_0x2b6c('0x6c');var _0xd4a80f={'custom':![]};return utilLicense[_0x2b6c('0x5b')]()['then'](function(_0x277b75){if(_0x277b75){_0xd4a80f=_0x277b75;}return db[_0x2b6c('0x4a')][_0x2b6c('0x53')]({'where':{'id':_0x17ec48[_0x2b6c('0x51')]['id']},'attributes':[_0x2b6c('0x5c'),_0x2b6c('0x59'),_0x2b6c('0x6d'),'favicon',_0x2b6c('0x5e'),'defaultLoginLogo',_0x2b6c('0x6e'),_0x2b6c('0x60')],'raw':!![]});})['then'](handleEntityNotFound(_0x1dc8e3,null))[_0x2b6c('0x1c')](function(_0x42bf68){if(_0x42bf68){var _0x452e56=_0x42bf68[_0x2b6c('0x59')]&&fs[_0x2b6c('0x61')](path[_0x2b6c('0x64')](config[_0x2b6c('0x62')],_0x238199,_[_0x2b6c('0x63')](_0x42bf68['loginLogo'])))?path[_0x2b6c('0x64')](config[_0x2b6c('0x62')],_0x238199,_[_0x2b6c('0x63')](_0x42bf68['loginLogo'])):path[_0x2b6c('0x64')](config['root'],_0x238199,_['toLower'](_0x2b6c('0x6f')));var _0x504721=_0x2b6c('0x65')+_['upperFirst'](_0x2b6c('0x59'));if(_0x42bf68[_0x504721]||!_0xd4a80f['custom']){_0x452e56=path[_0x2b6c('0x64')](config[_0x2b6c('0x62')],_0x238199,_[_0x2b6c('0x63')]('default_loginLogo.svg'));}if(!fs[_0x2b6c('0x61')](_0x452e56)){throw new db[(_0x2b6c('0x70'))]['ValidationError'](_[_0x2b6c('0x66')](_0x2b6c('0x59'))+'\x20not\x20found');}return _0x1dc8e3['download'](_0x452e56);}})[_0x2b6c('0x4f')](handleError(_0x1dc8e3,null));};exports[_0x2b6c('0x71')]=function(_0x34c36a,_0x15974d){return db[_0x2b6c('0x4a')][_0x2b6c('0x53')]({'where':{'id':_0x34c36a[_0x2b6c('0x51')]['id']},'attributes':[_0x2b6c('0x72')]})[_0x2b6c('0x1c')](respondWithResult(_0x15974d,null))[_0x2b6c('0x4f')](handleError(_0x15974d,null));};exports[_0x2b6c('0x73')]=function(_0x2b117b,_0x263bdf,_0x62f496){if(_0x2b117b[_0x2b6c('0x56')]&&_0x2b117b[_0x2b6c('0x56')][_0x2b6c('0x57')]){_0x2b117b['body'][_0x2b6c('0x6d')]=_0x2b117b[_0x2b6c('0x56')][_0x2b6c('0x57')];}return db[_0x2b6c('0x4a')]['find']({'where':{'id':_0x2b117b[_0x2b6c('0x51')]['id']}})['then'](handleEntityNotFound(_0x263bdf,null))['then'](saveUpdates(_0x2b117b[_0x2b6c('0x54')],null))[_0x2b6c('0x1c')](respondWithResult(_0x263bdf,null))[_0x2b6c('0x4f')](handleError(_0x263bdf,null));};var utilLicense=require(_0x2b6c('0x17'));exports[_0x2b6c('0x74')]=function(_0x1effe4,_0x24f911,_0x1f8941){var _0x39b83e=_0x2b6c('0x6c');var _0x59398b={'custom':![]};return utilLicense[_0x2b6c('0x5b')]()[_0x2b6c('0x1c')](function(_0x96f0c){if(_0x96f0c){_0x59398b=_0x96f0c;}return db[_0x2b6c('0x4a')][_0x2b6c('0x53')]({'where':{'id':_0x1effe4[_0x2b6c('0x51')]['id']},'attributes':[_0x2b6c('0x5c'),_0x2b6c('0x59'),_0x2b6c('0x6d'),_0x2b6c('0x5d'),_0x2b6c('0x5e'),_0x2b6c('0x5f'),_0x2b6c('0x6e'),_0x2b6c('0x60')],'raw':!![]});})[_0x2b6c('0x1c')](handleEntityNotFound(_0x24f911,null))[_0x2b6c('0x1c')](function(_0x50b2f0){if(_0x50b2f0){var _0x4b76df=_0x50b2f0[_0x2b6c('0x6d')]&&fs['existsSync'](path[_0x2b6c('0x64')](config['root'],_0x39b83e,_[_0x2b6c('0x63')](_0x50b2f0[_0x2b6c('0x6d')])))?path[_0x2b6c('0x64')](config[_0x2b6c('0x62')],_0x39b83e,_[_0x2b6c('0x63')](_0x50b2f0[_0x2b6c('0x6d')])):path['join'](config[_0x2b6c('0x62')],_0x39b83e,_[_0x2b6c('0x63')](_0x2b6c('0x75')));var _0x21393a='default'+_[_0x2b6c('0x66')](_0x2b6c('0x6d'));if(_0x50b2f0[_0x21393a]||!_0x59398b['custom']||!_0x59398b[_0x2b6c('0x6d')]){_0x4b76df=path[_0x2b6c('0x64')](config['root'],_0x39b83e,_[_0x2b6c('0x63')](_0x2b6c('0x75')));}if(!fs[_0x2b6c('0x61')](_0x4b76df)){throw new db['Sequelize'][(_0x2b6c('0x69'))](_[_0x2b6c('0x66')](_0x2b6c('0x6d'))+'\x20not\x20found');}return _0x24f911[_0x2b6c('0x6b')](_0x4b76df);}})['catch'](handleError(_0x24f911,null));};exports[_0x2b6c('0x76')]=function(_0x18eae6,_0x3aaaf8,_0x395bc9){if(_0x18eae6[_0x2b6c('0x56')]&&_0x18eae6[_0x2b6c('0x56')][_0x2b6c('0x57')]){_0x18eae6[_0x2b6c('0x54')][_0x2b6c('0x5d')]=_0x18eae6[_0x2b6c('0x56')][_0x2b6c('0x57')];}return db[_0x2b6c('0x4a')][_0x2b6c('0x53')]({'where':{'id':_0x18eae6[_0x2b6c('0x51')]['id']}})[_0x2b6c('0x1c')](handleEntityNotFound(_0x3aaaf8,null))[_0x2b6c('0x1c')](saveUpdates(_0x18eae6[_0x2b6c('0x54')],null))[_0x2b6c('0x1c')](respondWithResult(_0x3aaaf8,null))[_0x2b6c('0x4f')](handleError(_0x3aaaf8,null));};var utilLicense=require('../../config/license/util');exports[_0x2b6c('0x77')]=function(_0x3355a5,_0x367fe6,_0x3e5804){var _0x21194a=_0x2b6c('0x6c');var _0x40c086={'custom':![]};return utilLicense[_0x2b6c('0x5b')]()['then'](function(_0x108cb7){if(_0x108cb7){_0x40c086=_0x108cb7;}return db['Setting'][_0x2b6c('0x53')]({'where':{'id':_0x3355a5[_0x2b6c('0x51')]['id']},'attributes':[_0x2b6c('0x5c'),_0x2b6c('0x59'),_0x2b6c('0x6d'),'favicon',_0x2b6c('0x5e'),'defaultLoginLogo',_0x2b6c('0x6e'),_0x2b6c('0x60')],'raw':!![]});})[_0x2b6c('0x1c')](handleEntityNotFound(_0x367fe6,null))[_0x2b6c('0x1c')](function(_0x215a71){if(_0x215a71){var _0x318945=_0x215a71['favicon']&&fs[_0x2b6c('0x61')](path['join'](config[_0x2b6c('0x62')],_0x21194a,_[_0x2b6c('0x63')](_0x215a71[_0x2b6c('0x5d')])))?path[_0x2b6c('0x64')](config['root'],_0x21194a,_[_0x2b6c('0x63')](_0x215a71[_0x2b6c('0x5d')])):path[_0x2b6c('0x64')](config[_0x2b6c('0x62')],_0x21194a,_[_0x2b6c('0x63')](_0x2b6c('0x78')));var _0x1d36ec=_0x2b6c('0x65')+_[_0x2b6c('0x66')](_0x2b6c('0x5d'));if(_0x215a71[_0x1d36ec]||!_0x40c086[_0x2b6c('0x67')]){_0x318945=path['join'](config[_0x2b6c('0x62')],_0x21194a,_[_0x2b6c('0x63')](_0x2b6c('0x78')));}if(!fs[_0x2b6c('0x61')](_0x318945)){throw new db[(_0x2b6c('0x70'))]['ValidationError'](_[_0x2b6c('0x66')](_0x2b6c('0x5d'))+_0x2b6c('0x6a'));}return _0x367fe6[_0x2b6c('0x6b')](_0x318945);}})['catch'](handleError(_0x367fe6,null));};exports[_0x2b6c('0x79')]=function(_0x30d138,_0x4322a9){var _0x6b9839={'offset':moment()[_0x2b6c('0x7a')]()};_0x6b9839['now']=moment()[_0x2b6c('0x7a')](_0x6b9839[_0x2b6c('0x2a')])[_0x2b6c('0x7b')](_0x2b6c('0x7c'));return _0x4322a9[_0x2b6c('0x27')](0xc8)['send'](_0x6b9839);};