3e301125c89dbdade841e23ec44b8ca6b5c82a21
[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 _0x6fb8=['default','custom','download','gdpr','securePassword','addPreferred','defaultFavicon','default_preferred.png','default_favicon.ico','getDate','utcOffset','now','format','YYYY-MM-DD\x20HH:mm:ss:SSS','eml-format','zip-dir','fast-json-patch','moment','util','path','sox','to-csv','ejs','fs-extra','lodash','squel','crypto','jsforce','desk.js','querystring','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/environment','../../config/license/util','../../mysqldb','jayson/promise','client','http','request','then','info','Setting,\x20%s,\x20%s','request\x20sent','debug','Setting,\x20%s,\x20%s,\x20%s','stringify','error','code','message','result','catch','sendStatus','status','json','undefined','limit','count','offset','set','reject','save','destroy','stack','name','send','index','Setting','rawAttributes','fieldName','model','map','query','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','VIRTUAL','options','includeAll','findAll','show','keys','include','find','update','body','params','addLogo','file','logo','addLogoLogin','loginLogo','filename','getLogo','server/files/images/logos','getLicense','preferred','favicon','defaultLogo','defaultLoginLogo','defaultPreferred','existsSync','root','toLower','join','upperFirst','Sequelize','ValidationError','\x20not\x20found','getLogoLogin','default_loginLogo.svg'];(function(_0x29d530,_0x5da0d7){var _0x242905=function(_0x5e7857){while(--_0x5e7857){_0x29d530['push'](_0x29d530['shift']());}};_0x242905(++_0x5da0d7);}(_0x6fb8,0x104));var _0x86fb=function(_0x12b8ec,_0x1655be){_0x12b8ec=_0x12b8ec-0x0;var _0x21af77=_0x6fb8[_0x12b8ec];return _0x21af77;};'use strict';var emlformat=require(_0x86fb('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x86fb('0x1'));var jsonpatch=require(_0x86fb('0x2'));var rp=require('request-promise');var moment=require(_0x86fb('0x3'));var BPromise=require('bluebird');var Mustache=require('mustache');var util=require(_0x86fb('0x4'));var path=require(_0x86fb('0x5'));var sox=require(_0x86fb('0x6'));var csv=require(_0x86fb('0x7'));var ejs=require(_0x86fb('0x8'));var fs=require('fs');var fs_extra=require(_0x86fb('0x9'));var _=require(_0x86fb('0xa'));var squel=require(_0x86fb('0xb'));var crypto=require(_0x86fb('0xc'));var jsforce=require(_0x86fb('0xd'));var deskjs=require(_0x86fb('0xe'));var toCsv=require(_0x86fb('0x7'));var querystring=require(_0x86fb('0xf'));var Papa=require('papaparse');var Redis=require(_0x86fb('0x10'));var authService=require('../../components/auth/service');var qs=require(_0x86fb('0x11'));var as=require(_0x86fb('0x12'));var hardwareService=require(_0x86fb('0x13'));var logger=require('../../config/logger')(_0x86fb('0x14'));var utils=require('../../config/utils');var config=require(_0x86fb('0x15'));var licenseUtil=require(_0x86fb('0x16'));var db=require(_0x86fb('0x17'))['db'];var jayson=require(_0x86fb('0x18'));var client=jayson[_0x86fb('0x19')][_0x86fb('0x1a')]({'port':0x232a});function respondWithRpcPromise(_0x3c8b7d,_0x2817ac,_0xab7283,_0x15be09){return new BPromise(function(_0x580824,_0x314b5f){var _0x58a92c=_0x15be09||client;return _0x58a92c[_0x86fb('0x1b')](_0x3c8b7d,_0xab7283)[_0x86fb('0x1c')](function(_0x5ecc0b){logger[_0x86fb('0x1d')](_0x86fb('0x1e'),_0x2817ac,_0x86fb('0x1f'));logger[_0x86fb('0x20')](_0x86fb('0x21'),_0x2817ac,'request\x20sent',JSON[_0x86fb('0x22')](_0x5ecc0b));if(_0x5ecc0b[_0x86fb('0x23')]){if(_0x5ecc0b[_0x86fb('0x23')][_0x86fb('0x24')]===0x1f4){logger[_0x86fb('0x23')](_0x86fb('0x1e'),_0x2817ac,_0x5ecc0b[_0x86fb('0x23')]['message']);return _0x314b5f(_0x5ecc0b[_0x86fb('0x23')][_0x86fb('0x25')]);}logger[_0x86fb('0x23')](_0x86fb('0x1e'),_0x2817ac,_0x5ecc0b[_0x86fb('0x23')][_0x86fb('0x25')]);return _0x580824(_0x5ecc0b['error']['message']);}else{logger[_0x86fb('0x1d')](_0x86fb('0x1e'),_0x2817ac,_0x86fb('0x1f'));_0x580824(_0x5ecc0b[_0x86fb('0x26')][_0x86fb('0x25')]);}})[_0x86fb('0x27')](function(_0x42809d){logger[_0x86fb('0x23')]('Setting,\x20%s,\x20%s',_0x2817ac,_0x42809d);_0x314b5f(_0x42809d);});});}function respondWithStatusCode(_0x49eedd,_0x447407){_0x447407=_0x447407||0xcc;return function(_0x1fb70b){if(_0x1fb70b){return _0x49eedd[_0x86fb('0x28')](_0x447407);}return _0x49eedd[_0x86fb('0x29')](_0x447407)['end']();};}function respondWithResult(_0x2f94f5,_0x50da80){_0x50da80=_0x50da80||0xc8;return function(_0x59e639){if(_0x59e639){return _0x2f94f5[_0x86fb('0x29')](_0x50da80)[_0x86fb('0x2a')](_0x59e639);}};}function respondWithFilteredResult(_0x30f26f,_0x4762d3){return function(_0x54ca60){if(_0x54ca60){var _0x1b3f0d=typeof _0x4762d3['offset']===_0x86fb('0x2b')&&typeof _0x4762d3[_0x86fb('0x2c')]===_0x86fb('0x2b');var _0x1e2383=_0x54ca60[_0x86fb('0x2d')];var _0x519df5=_0x1b3f0d?0x0:_0x4762d3[_0x86fb('0x2e')];var _0x2e9d36=_0x1b3f0d?_0x54ca60[_0x86fb('0x2d')]:_0x4762d3['offset']+_0x4762d3[_0x86fb('0x2c')];var _0x196fd8;if(_0x2e9d36>=_0x1e2383){_0x2e9d36=_0x1e2383;_0x196fd8=0xc8;}else{_0x196fd8=0xce;}_0x30f26f[_0x86fb('0x29')](_0x196fd8);return _0x30f26f[_0x86fb('0x2f')]('Content-Range',_0x519df5+'-'+_0x2e9d36+'/'+_0x1e2383)[_0x86fb('0x2a')](_0x54ca60);}return null;};}function patchUpdates(_0x3987aa){return function(_0x3c7149){try{jsonpatch['apply'](_0x3c7149,_0x3987aa,!![]);}catch(_0x25635b){return BPromise[_0x86fb('0x30')](_0x25635b);}return _0x3c7149[_0x86fb('0x31')]();};}function saveUpdates(_0x19c7d0,_0x420226){return function(_0x9edcec){if(_0x9edcec){return _0x9edcec['update'](_0x19c7d0)[_0x86fb('0x1c')](function(_0x5eadd7){return _0x5eadd7;});}return null;};}function removeEntity(_0x3d3e25,_0x18aa97){return function(_0x152ca6){if(_0x152ca6){return _0x152ca6[_0x86fb('0x32')]()[_0x86fb('0x1c')](function(){_0x3d3e25[_0x86fb('0x29')](0xcc)['end']();});}};}function handleEntityNotFound(_0x34fa77,_0x4e7284){return function(_0x2ace40){if(!_0x2ace40){_0x34fa77[_0x86fb('0x28')](0x194);}return _0x2ace40;};}function handleError(_0x2e80c9,_0x163c10){_0x163c10=_0x163c10||0x1f4;return function(_0x524d0d){logger['error'](_0x524d0d[_0x86fb('0x33')]);if(_0x524d0d[_0x86fb('0x34')]){delete _0x524d0d[_0x86fb('0x34')];}_0x2e80c9['status'](_0x163c10)[_0x86fb('0x35')](_0x524d0d);};}exports[_0x86fb('0x36')]=function(_0x324a9b,_0x1d0959){var _0x1c3e7b={},_0x155c7c={},_0x2cc19a={'count':0x0,'rows':[]};var _0x670231=_['map'](db[_0x86fb('0x37')][_0x86fb('0x38')],function(_0x498e20){return{'name':_0x498e20[_0x86fb('0x39')],'type':_0x498e20['type']['key']};});_0x155c7c[_0x86fb('0x3a')]=_[_0x86fb('0x3b')](_0x670231,_0x86fb('0x34'));_0x155c7c[_0x86fb('0x3c')]=_['keys'](_0x324a9b[_0x86fb('0x3c')]);_0x155c7c[_0x86fb('0x3d')]=_[_0x86fb('0x3e')](_0x155c7c[_0x86fb('0x3a')],_0x155c7c[_0x86fb('0x3c')]);_0x1c3e7b[_0x86fb('0x3f')]=_[_0x86fb('0x3e')](_0x155c7c[_0x86fb('0x3a')],qs['fields'](_0x324a9b[_0x86fb('0x3c')][_0x86fb('0x40')]));_0x1c3e7b[_0x86fb('0x3f')]=_0x1c3e7b['attributes'][_0x86fb('0x41')]?_0x1c3e7b[_0x86fb('0x3f')]:_0x155c7c['model'];if(!_0x324a9b[_0x86fb('0x3c')][_0x86fb('0x42')](_0x86fb('0x43'))){_0x1c3e7b[_0x86fb('0x2c')]=qs['limit'](_0x324a9b[_0x86fb('0x3c')][_0x86fb('0x2c')]);_0x1c3e7b[_0x86fb('0x2e')]=qs[_0x86fb('0x2e')](_0x324a9b[_0x86fb('0x3c')]['offset']);}_0x1c3e7b[_0x86fb('0x44')]=qs[_0x86fb('0x45')](_0x324a9b[_0x86fb('0x3c')][_0x86fb('0x45')]);_0x1c3e7b[_0x86fb('0x46')]=qs['filters'](_[_0x86fb('0x47')](_0x324a9b[_0x86fb('0x3c')],_0x155c7c[_0x86fb('0x3d')]),_0x670231);if(_0x324a9b['query'][_0x86fb('0x48')]){_0x1c3e7b[_0x86fb('0x46')]=_[_0x86fb('0x49')](_0x1c3e7b[_0x86fb('0x46')],{'$or':_[_0x86fb('0x3b')](_0x670231,function(_0x5b5195){if(_0x5b5195['type']!==_0x86fb('0x4a')){var _0x4e65bb={};_0x4e65bb[_0x5b5195[_0x86fb('0x34')]]={'$like':'%'+_0x324a9b[_0x86fb('0x3c')][_0x86fb('0x48')]+'%'};return _0x4e65bb;}})});}_0x1c3e7b=_[_0x86fb('0x49')]({},_0x1c3e7b,_0x324a9b[_0x86fb('0x4b')]);var _0x45ce4e={'where':_0x1c3e7b[_0x86fb('0x46')]};return db[_0x86fb('0x37')][_0x86fb('0x2d')](_0x45ce4e)['then'](function(_0x3d2cd2){_0x2cc19a[_0x86fb('0x2d')]=_0x3d2cd2;if(_0x324a9b[_0x86fb('0x3c')][_0x86fb('0x4c')]){_0x1c3e7b['include']=[{'all':!![]}];}return db[_0x86fb('0x37')][_0x86fb('0x4d')](_0x1c3e7b);})[_0x86fb('0x1c')](function(_0x3d4656){_0x2cc19a['rows']=_0x3d4656;return _0x2cc19a;})[_0x86fb('0x1c')](respondWithFilteredResult(_0x1d0959,_0x1c3e7b))[_0x86fb('0x27')](handleError(_0x1d0959,null));};exports[_0x86fb('0x4e')]=function(_0x1d3ea3,_0x17fc5b){var _0x587be0={'raw':![],'where':{'id':_0x1d3ea3['params']['id']}},_0x3e8ae7={};_0x3e8ae7[_0x86fb('0x3a')]=_[_0x86fb('0x4f')](db[_0x86fb('0x37')]['rawAttributes']);_0x3e8ae7[_0x86fb('0x3c')]=_[_0x86fb('0x4f')](_0x1d3ea3[_0x86fb('0x3c')]);_0x3e8ae7[_0x86fb('0x3d')]=_[_0x86fb('0x3e')](_0x3e8ae7[_0x86fb('0x3a')],_0x3e8ae7[_0x86fb('0x3c')]);_0x587be0['attributes']=_[_0x86fb('0x3e')](_0x3e8ae7['model'],qs[_0x86fb('0x40')](_0x1d3ea3['query'][_0x86fb('0x40')]));_0x587be0['attributes']=_0x587be0['attributes'][_0x86fb('0x41')]?_0x587be0[_0x86fb('0x3f')]:_0x3e8ae7[_0x86fb('0x3a')];if(_0x1d3ea3[_0x86fb('0x3c')]['includeAll']){_0x587be0[_0x86fb('0x50')]=[{'all':!![]}];}_0x587be0=_[_0x86fb('0x49')]({},_0x587be0,_0x1d3ea3[_0x86fb('0x4b')]);return db[_0x86fb('0x37')][_0x86fb('0x51')](_0x587be0)[_0x86fb('0x1c')](handleEntityNotFound(_0x17fc5b,null))['then'](respondWithResult(_0x17fc5b,null))[_0x86fb('0x27')](handleError(_0x17fc5b,null));};exports[_0x86fb('0x52')]=function(_0x3c6714,_0x13f1cb){if(_0x3c6714[_0x86fb('0x53')]['id']){delete _0x3c6714[_0x86fb('0x53')]['id'];}return db[_0x86fb('0x37')][_0x86fb('0x51')]({'where':{'id':_0x3c6714[_0x86fb('0x54')]['id']}})[_0x86fb('0x1c')](handleEntityNotFound(_0x13f1cb,null))[_0x86fb('0x1c')](saveUpdates(_0x3c6714[_0x86fb('0x53')],null))[_0x86fb('0x1c')](respondWithResult(_0x13f1cb,null))[_0x86fb('0x27')](handleError(_0x13f1cb,null));};exports[_0x86fb('0x55')]=function(_0x154838,_0x32c48f,_0xe4ff21){if(_0x154838[_0x86fb('0x56')]&&_0x154838[_0x86fb('0x56')]['filename']){_0x154838['body'][_0x86fb('0x57')]=_0x154838[_0x86fb('0x56')]['filename'];}return db[_0x86fb('0x37')][_0x86fb('0x51')]({'where':{'id':_0x154838[_0x86fb('0x54')]['id']}})['then'](handleEntityNotFound(_0x32c48f,null))['then'](saveUpdates(_0x154838[_0x86fb('0x53')],null))['then'](respondWithResult(_0x32c48f,null))['catch'](handleError(_0x32c48f,null));};exports[_0x86fb('0x58')]=function(_0x173f82,_0x57e6a6,_0x95ac7b){if(_0x173f82[_0x86fb('0x56')]&&_0x173f82[_0x86fb('0x56')]['filename']){_0x173f82[_0x86fb('0x53')][_0x86fb('0x59')]=_0x173f82[_0x86fb('0x56')][_0x86fb('0x5a')];}return db[_0x86fb('0x37')]['find']({'where':{'id':_0x173f82[_0x86fb('0x54')]['id']}})['then'](handleEntityNotFound(_0x57e6a6,null))[_0x86fb('0x1c')](saveUpdates(_0x173f82['body'],null))['then'](respondWithResult(_0x57e6a6,null))[_0x86fb('0x27')](handleError(_0x57e6a6,null));};var utilLicense=require(_0x86fb('0x16'));exports[_0x86fb('0x5b')]=function(_0x1eb489,_0x4b7101,_0x17fac5){var _0x582f36=_0x86fb('0x5c');var _0x1a3eb4={'custom':![]};return utilLicense[_0x86fb('0x5d')]()[_0x86fb('0x1c')](function(_0x4eaffa){if(_0x4eaffa){_0x1a3eb4=_0x4eaffa;}return db[_0x86fb('0x37')][_0x86fb('0x51')]({'where':{'id':_0x1eb489[_0x86fb('0x54')]['id']},'attributes':[_0x86fb('0x57'),_0x86fb('0x59'),_0x86fb('0x5e'),_0x86fb('0x5f'),_0x86fb('0x60'),_0x86fb('0x61'),_0x86fb('0x62'),'defaultFavicon'],'raw':!![]});})['then'](handleEntityNotFound(_0x4b7101,null))[_0x86fb('0x1c')](function(_0x341b87){if(_0x341b87){var _0x549f47=_0x341b87[_0x86fb('0x57')]&&fs[_0x86fb('0x63')](path['join'](config[_0x86fb('0x64')],_0x582f36,_['toLower'](_0x341b87[_0x86fb('0x57')])))?path['join'](config[_0x86fb('0x64')],_0x582f36,_[_0x86fb('0x65')](_0x341b87[_0x86fb('0x57')])):path[_0x86fb('0x66')](config[_0x86fb('0x64')],_0x582f36,_[_0x86fb('0x65')]('default_logo.svg'));var _0x20161e='default'+_[_0x86fb('0x67')](_0x86fb('0x57'));if(_0x341b87[_0x20161e]||!_0x1a3eb4['custom']){_0x549f47=path[_0x86fb('0x66')](config[_0x86fb('0x64')],_0x582f36,_[_0x86fb('0x65')]('default_logo.svg'));}if(!fs[_0x86fb('0x63')](_0x549f47)){throw new db[(_0x86fb('0x68'))][(_0x86fb('0x69'))](_[_0x86fb('0x67')](_0x86fb('0x57'))+_0x86fb('0x6a'));}return _0x4b7101['download'](_0x549f47);}})[_0x86fb('0x27')](handleError(_0x4b7101,null));};var utilLicense=require(_0x86fb('0x16'));exports[_0x86fb('0x6b')]=function(_0x357441,_0x412d07,_0x59d15c){var _0x3f381b=_0x86fb('0x5c');var _0x478f8d={'custom':![]};return utilLicense[_0x86fb('0x5d')]()['then'](function(_0x492aa9){if(_0x492aa9){_0x478f8d=_0x492aa9;}return db[_0x86fb('0x37')][_0x86fb('0x51')]({'where':{'id':_0x357441[_0x86fb('0x54')]['id']},'attributes':[_0x86fb('0x57'),_0x86fb('0x59'),_0x86fb('0x5e'),_0x86fb('0x5f'),_0x86fb('0x60'),_0x86fb('0x61'),_0x86fb('0x62'),'defaultFavicon'],'raw':!![]});})[_0x86fb('0x1c')](handleEntityNotFound(_0x412d07,null))['then'](function(_0x310256){if(_0x310256){var _0x3b8049=_0x310256[_0x86fb('0x59')]&&fs['existsSync'](path[_0x86fb('0x66')](config['root'],_0x3f381b,_[_0x86fb('0x65')](_0x310256[_0x86fb('0x59')])))?path['join'](config['root'],_0x3f381b,_[_0x86fb('0x65')](_0x310256['loginLogo'])):path['join'](config[_0x86fb('0x64')],_0x3f381b,_[_0x86fb('0x65')](_0x86fb('0x6c')));var _0x5c2cfe=_0x86fb('0x6d')+_[_0x86fb('0x67')](_0x86fb('0x59'));if(_0x310256[_0x5c2cfe]||!_0x478f8d[_0x86fb('0x6e')]){_0x3b8049=path[_0x86fb('0x66')](config['root'],_0x3f381b,_[_0x86fb('0x65')]('default_loginLogo.svg'));}if(!fs[_0x86fb('0x63')](_0x3b8049)){throw new db[(_0x86fb('0x68'))][(_0x86fb('0x69'))](_[_0x86fb('0x67')](_0x86fb('0x59'))+_0x86fb('0x6a'));}return _0x412d07[_0x86fb('0x6f')](_0x3b8049);}})[_0x86fb('0x27')](handleError(_0x412d07,null));};exports[_0x86fb('0x70')]=function(_0x5559c5,_0x478648){return db[_0x86fb('0x37')][_0x86fb('0x51')]({'where':{'id':_0x5559c5[_0x86fb('0x54')]['id']},'attributes':[_0x86fb('0x71')]})[_0x86fb('0x1c')](respondWithResult(_0x478648,null))[_0x86fb('0x27')](handleError(_0x478648,null));};exports[_0x86fb('0x72')]=function(_0x322367,_0x593068,_0x13c1c3){if(_0x322367[_0x86fb('0x56')]&&_0x322367[_0x86fb('0x56')][_0x86fb('0x5a')]){_0x322367[_0x86fb('0x53')][_0x86fb('0x5e')]=_0x322367[_0x86fb('0x56')][_0x86fb('0x5a')];}return db[_0x86fb('0x37')][_0x86fb('0x51')]({'where':{'id':_0x322367[_0x86fb('0x54')]['id']}})['then'](handleEntityNotFound(_0x593068,null))[_0x86fb('0x1c')](saveUpdates(_0x322367[_0x86fb('0x53')],null))['then'](respondWithResult(_0x593068,null))['catch'](handleError(_0x593068,null));};var utilLicense=require(_0x86fb('0x16'));exports['getPreferred']=function(_0x8b2ed6,_0xb90507,_0x4cf1b6){var _0x1343b2=_0x86fb('0x5c');var _0x47d1fb={'custom':![]};return utilLicense['getLicense']()['then'](function(_0x4bd1ed){if(_0x4bd1ed){_0x47d1fb=_0x4bd1ed;}return db[_0x86fb('0x37')][_0x86fb('0x51')]({'where':{'id':_0x8b2ed6[_0x86fb('0x54')]['id']},'attributes':['logo',_0x86fb('0x59'),_0x86fb('0x5e'),'favicon',_0x86fb('0x60'),_0x86fb('0x61'),_0x86fb('0x62'),_0x86fb('0x73')],'raw':!![]});})['then'](handleEntityNotFound(_0xb90507,null))[_0x86fb('0x1c')](function(_0x33c5de){if(_0x33c5de){var _0x343dae=_0x33c5de['preferred']&&fs[_0x86fb('0x63')](path[_0x86fb('0x66')](config[_0x86fb('0x64')],_0x1343b2,_[_0x86fb('0x65')](_0x33c5de[_0x86fb('0x5e')])))?path['join'](config[_0x86fb('0x64')],_0x1343b2,_[_0x86fb('0x65')](_0x33c5de[_0x86fb('0x5e')])):path[_0x86fb('0x66')](config['root'],_0x1343b2,_['toLower'](_0x86fb('0x74')));var _0xd47bab='default'+_[_0x86fb('0x67')](_0x86fb('0x5e'));if(_0x33c5de[_0xd47bab]||!_0x47d1fb['custom']||!_0x47d1fb['preferred']){_0x343dae=path[_0x86fb('0x66')](config['root'],_0x1343b2,_['toLower'](_0x86fb('0x74')));}if(!fs[_0x86fb('0x63')](_0x343dae)){throw new db['Sequelize'][(_0x86fb('0x69'))](_[_0x86fb('0x67')]('preferred')+_0x86fb('0x6a'));}return _0xb90507[_0x86fb('0x6f')](_0x343dae);}})[_0x86fb('0x27')](handleError(_0xb90507,null));};exports['addFavicon']=function(_0xedf78a,_0x391863,_0x237e0b){if(_0xedf78a[_0x86fb('0x56')]&&_0xedf78a[_0x86fb('0x56')][_0x86fb('0x5a')]){_0xedf78a[_0x86fb('0x53')]['favicon']=_0xedf78a[_0x86fb('0x56')]['filename'];}return db[_0x86fb('0x37')][_0x86fb('0x51')]({'where':{'id':_0xedf78a[_0x86fb('0x54')]['id']}})['then'](handleEntityNotFound(_0x391863,null))[_0x86fb('0x1c')](saveUpdates(_0xedf78a[_0x86fb('0x53')],null))[_0x86fb('0x1c')](respondWithResult(_0x391863,null))[_0x86fb('0x27')](handleError(_0x391863,null));};var utilLicense=require(_0x86fb('0x16'));exports['getFavicon']=function(_0x1a5ebd,_0x255ccd,_0x12531f){var _0xd9641=_0x86fb('0x5c');var _0x71cf1={'custom':![]};return utilLicense[_0x86fb('0x5d')]()[_0x86fb('0x1c')](function(_0x457a8d){if(_0x457a8d){_0x71cf1=_0x457a8d;}return db['Setting']['find']({'where':{'id':_0x1a5ebd[_0x86fb('0x54')]['id']},'attributes':[_0x86fb('0x57'),_0x86fb('0x59'),_0x86fb('0x5e'),_0x86fb('0x5f'),_0x86fb('0x60'),_0x86fb('0x61'),_0x86fb('0x62'),_0x86fb('0x73')],'raw':!![]});})[_0x86fb('0x1c')](handleEntityNotFound(_0x255ccd,null))['then'](function(_0x323651){if(_0x323651){var _0x298826=_0x323651[_0x86fb('0x5f')]&&fs[_0x86fb('0x63')](path['join'](config[_0x86fb('0x64')],_0xd9641,_['toLower'](_0x323651['favicon'])))?path[_0x86fb('0x66')](config[_0x86fb('0x64')],_0xd9641,_[_0x86fb('0x65')](_0x323651[_0x86fb('0x5f')])):path[_0x86fb('0x66')](config[_0x86fb('0x64')],_0xd9641,_[_0x86fb('0x65')](_0x86fb('0x75')));var _0x406256=_0x86fb('0x6d')+_[_0x86fb('0x67')](_0x86fb('0x5f'));if(_0x323651[_0x406256]||!_0x71cf1[_0x86fb('0x6e')]){_0x298826=path['join'](config[_0x86fb('0x64')],_0xd9641,_[_0x86fb('0x65')](_0x86fb('0x75')));}if(!fs['existsSync'](_0x298826)){throw new db[(_0x86fb('0x68'))][(_0x86fb('0x69'))](_[_0x86fb('0x67')]('favicon')+'\x20not\x20found');}return _0x255ccd[_0x86fb('0x6f')](_0x298826);}})['catch'](handleError(_0x255ccd,null));};exports[_0x86fb('0x76')]=function(_0x59225f,_0x1ed917){var _0x29ac5e={'offset':moment()[_0x86fb('0x77')]()};_0x29ac5e[_0x86fb('0x78')]=moment()[_0x86fb('0x77')](_0x29ac5e['offset'])[_0x86fb('0x79')](_0x86fb('0x7a'));return _0x1ed917[_0x86fb('0x29')](0xc8)['send'](_0x29ac5e);};