Built motion from commit da617fac.|2.6.6
[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 _0x0e85=['eml-format','rimraf','fast-json-patch','request-promise','util','sox','to-csv','ejs','fs-extra','squel','crypto','jsforce','desk.js','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../mysqldb','jayson/promise','request','info','Setting,\x20%s,\x20%s','request\x20sent','debug','Setting,\x20%s,\x20%s,\x20%s','error','code','message','result','catch','status','end','offset','undefined','limit','set','Content-Range','json','apply','save','then','destroy','sendStatus','stack','name','index','map','fieldName','type','key','model','query','keys','filters','attributes','intersection','fields','nolimit','order','sort','pick','filter','VIRTUAL','merge','Setting','count','includeAll','include','findAll','rows','show','params','rawAttributes','length','options','find','body','addLogo','file','addLogoLogin','loginLogo','filename','server/files/images/logos','getLicense','logo','favicon','defaultLogo','defaultLoginLogo','defaultPreferred','defaultFavicon','existsSync','join','toLower','root','default','upperFirst','custom','default_logo.svg','Sequelize','ValidationError','\x20not\x20found','download','../../config/license/util','preferred','default_loginLogo.svg','gdpr','securePassword','addPreferred','getPreferred','default_preferred.png','addFavicon','getFavicon','default_favicon.ico','getDate','now','utcOffset','format','YYYY-MM-DD\x20HH:mm:ss:SSS','send'];(function(_0x59befa,_0x4af99b){var _0x1dd63d=function(_0x4c1df4){while(--_0x4c1df4){_0x59befa['push'](_0x59befa['shift']());}};_0x1dd63d(++_0x4af99b);}(_0x0e85,0x7c));var _0x50e8=function(_0x3740fe,_0x6c543c){_0x3740fe=_0x3740fe-0x0;var _0x55492b=_0x0e85[_0x3740fe];return _0x55492b;};'use strict';var emlformat=require(_0x50e8('0x0'));var rimraf=require(_0x50e8('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0x50e8('0x2'));var rp=require(_0x50e8('0x3'));var moment=require('moment');var BPromise=require('bluebird');var Mustache=require('mustache');var util=require(_0x50e8('0x4'));var path=require('path');var sox=require(_0x50e8('0x5'));var csv=require(_0x50e8('0x6'));var ejs=require(_0x50e8('0x7'));var fs=require('fs');var fs_extra=require(_0x50e8('0x8'));var _=require('lodash');var squel=require(_0x50e8('0x9'));var crypto=require(_0x50e8('0xa'));var jsforce=require(_0x50e8('0xb'));var deskjs=require(_0x50e8('0xc'));var toCsv=require(_0x50e8('0x6'));var querystring=require(_0x50e8('0xd'));var Papa=require('papaparse');var Redis=require(_0x50e8('0xe'));var authService=require(_0x50e8('0xf'));var qs=require(_0x50e8('0x10'));var as=require(_0x50e8('0x11'));var hardwareService=require(_0x50e8('0x12'));var logger=require(_0x50e8('0x13'))(_0x50e8('0x14'));var utils=require(_0x50e8('0x15'));var config=require('../../config/environment');var licenseUtil=require('../../config/license/util');var db=require(_0x50e8('0x16'))['db'];var jayson=require(_0x50e8('0x17'));var client=jayson['client']['http']({'port':0x232a});function respondWithRpcPromise(_0x3cb45c,_0x2abda1,_0x1a4c85,_0x473aa7){return new BPromise(function(_0x54efd3,_0x18596f){var _0x3149d4=_0x473aa7||client;return _0x3149d4[_0x50e8('0x18')](_0x3cb45c,_0x1a4c85)['then'](function(_0x5524a3){logger[_0x50e8('0x19')](_0x50e8('0x1a'),_0x2abda1,_0x50e8('0x1b'));logger[_0x50e8('0x1c')](_0x50e8('0x1d'),_0x2abda1,_0x50e8('0x1b'),JSON['stringify'](_0x5524a3));if(_0x5524a3['error']){if(_0x5524a3[_0x50e8('0x1e')][_0x50e8('0x1f')]===0x1f4){logger[_0x50e8('0x1e')](_0x50e8('0x1a'),_0x2abda1,_0x5524a3[_0x50e8('0x1e')][_0x50e8('0x20')]);return _0x18596f(_0x5524a3[_0x50e8('0x1e')]['message']);}logger[_0x50e8('0x1e')]('Setting,\x20%s,\x20%s',_0x2abda1,_0x5524a3[_0x50e8('0x1e')][_0x50e8('0x20')]);return _0x54efd3(_0x5524a3[_0x50e8('0x1e')][_0x50e8('0x20')]);}else{logger[_0x50e8('0x19')]('Setting,\x20%s,\x20%s',_0x2abda1,_0x50e8('0x1b'));_0x54efd3(_0x5524a3[_0x50e8('0x21')]['message']);}})[_0x50e8('0x22')](function(_0x41500f){logger['error'](_0x50e8('0x1a'),_0x2abda1,_0x41500f);_0x18596f(_0x41500f);});});}function respondWithStatusCode(_0xe7e56c,_0x4f56b7){_0x4f56b7=_0x4f56b7||0xcc;return function(_0x47a3d8){if(_0x47a3d8){return _0xe7e56c['sendStatus'](_0x4f56b7);}return _0xe7e56c[_0x50e8('0x23')](_0x4f56b7)[_0x50e8('0x24')]();};}function respondWithResult(_0x124402,_0x371a1f){_0x371a1f=_0x371a1f||0xc8;return function(_0xc2f832){if(_0xc2f832){return _0x124402[_0x50e8('0x23')](_0x371a1f)['json'](_0xc2f832);}};}function respondWithFilteredResult(_0x3a6442,_0x396611){return function(_0x4b3a09){if(_0x4b3a09){var _0x177201=typeof _0x396611[_0x50e8('0x25')]===_0x50e8('0x26')&&typeof _0x396611[_0x50e8('0x27')]==='undefined';var _0x1f5a6c=_0x4b3a09['count'];var _0x30fedf=_0x177201?0x0:_0x396611[_0x50e8('0x25')];var _0x42bbef=_0x177201?_0x4b3a09['count']:_0x396611[_0x50e8('0x25')]+_0x396611[_0x50e8('0x27')];var _0x1bed48;if(_0x42bbef>=_0x1f5a6c){_0x42bbef=_0x1f5a6c;_0x1bed48=0xc8;}else{_0x1bed48=0xce;}_0x3a6442[_0x50e8('0x23')](_0x1bed48);return _0x3a6442[_0x50e8('0x28')](_0x50e8('0x29'),_0x30fedf+'-'+_0x42bbef+'/'+_0x1f5a6c)[_0x50e8('0x2a')](_0x4b3a09);}return null;};}function patchUpdates(_0x54d81d){return function(_0x290fd2){try{jsonpatch[_0x50e8('0x2b')](_0x290fd2,_0x54d81d,!![]);}catch(_0x535c24){return BPromise['reject'](_0x535c24);}return _0x290fd2[_0x50e8('0x2c')]();};}function saveUpdates(_0x3543b2,_0x32db93){return function(_0x47ace2){if(_0x47ace2){return _0x47ace2['update'](_0x3543b2)[_0x50e8('0x2d')](function(_0x19e3cc){return _0x19e3cc;});}return null;};}function removeEntity(_0x5c2e04,_0x26b974){return function(_0x17c6a5){if(_0x17c6a5){return _0x17c6a5[_0x50e8('0x2e')]()[_0x50e8('0x2d')](function(){_0x5c2e04['status'](0xcc)[_0x50e8('0x24')]();});}};}function handleEntityNotFound(_0x4ec6ad,_0x3aec30){return function(_0x33fc5b){if(!_0x33fc5b){_0x4ec6ad[_0x50e8('0x2f')](0x194);}return _0x33fc5b;};}function handleError(_0x5e2c30,_0x306816){_0x306816=_0x306816||0x1f4;return function(_0x40f566){logger['error'](_0x40f566[_0x50e8('0x30')]);if(_0x40f566[_0x50e8('0x31')]){delete _0x40f566[_0x50e8('0x31')];}_0x5e2c30[_0x50e8('0x23')](_0x306816)['send'](_0x40f566);};}exports[_0x50e8('0x32')]=function(_0x40dbe8,_0x24d3ea){var _0x4e2a37={},_0x5e556c={},_0x3c7778={'count':0x0,'rows':[]};var _0x2d0ccf=_[_0x50e8('0x33')](db['Setting']['rawAttributes'],function(_0x5dff99){return{'name':_0x5dff99[_0x50e8('0x34')],'type':_0x5dff99[_0x50e8('0x35')][_0x50e8('0x36')]};});_0x5e556c[_0x50e8('0x37')]=_[_0x50e8('0x33')](_0x2d0ccf,_0x50e8('0x31'));_0x5e556c[_0x50e8('0x38')]=_[_0x50e8('0x39')](_0x40dbe8[_0x50e8('0x38')]);_0x5e556c[_0x50e8('0x3a')]=_['intersection'](_0x5e556c[_0x50e8('0x37')],_0x5e556c[_0x50e8('0x38')]);_0x4e2a37[_0x50e8('0x3b')]=_[_0x50e8('0x3c')](_0x5e556c['model'],qs[_0x50e8('0x3d')](_0x40dbe8[_0x50e8('0x38')][_0x50e8('0x3d')]));_0x4e2a37[_0x50e8('0x3b')]=_0x4e2a37[_0x50e8('0x3b')]['length']?_0x4e2a37['attributes']:_0x5e556c[_0x50e8('0x37')];if(!_0x40dbe8[_0x50e8('0x38')]['hasOwnProperty'](_0x50e8('0x3e'))){_0x4e2a37[_0x50e8('0x27')]=qs[_0x50e8('0x27')](_0x40dbe8[_0x50e8('0x38')][_0x50e8('0x27')]);_0x4e2a37[_0x50e8('0x25')]=qs[_0x50e8('0x25')](_0x40dbe8[_0x50e8('0x38')]['offset']);}_0x4e2a37[_0x50e8('0x3f')]=qs[_0x50e8('0x40')](_0x40dbe8[_0x50e8('0x38')][_0x50e8('0x40')]);_0x4e2a37['where']=qs[_0x50e8('0x3a')](_[_0x50e8('0x41')](_0x40dbe8[_0x50e8('0x38')],_0x5e556c[_0x50e8('0x3a')]),_0x2d0ccf);if(_0x40dbe8['query'][_0x50e8('0x42')]){_0x4e2a37['where']=_['merge'](_0x4e2a37['where'],{'$or':_[_0x50e8('0x33')](_0x2d0ccf,function(_0x30077f){if(_0x30077f['type']!==_0x50e8('0x43')){var _0x2007c4={};_0x2007c4[_0x30077f[_0x50e8('0x31')]]={'$like':'%'+_0x40dbe8[_0x50e8('0x38')][_0x50e8('0x42')]+'%'};return _0x2007c4;}})});}_0x4e2a37=_[_0x50e8('0x44')]({},_0x4e2a37,_0x40dbe8['options']);var _0x16fdf6={'where':_0x4e2a37['where']};return db[_0x50e8('0x45')][_0x50e8('0x46')](_0x16fdf6)['then'](function(_0xcac7c2){_0x3c7778['count']=_0xcac7c2;if(_0x40dbe8[_0x50e8('0x38')][_0x50e8('0x47')]){_0x4e2a37[_0x50e8('0x48')]=[{'all':!![]}];}return db[_0x50e8('0x45')][_0x50e8('0x49')](_0x4e2a37);})[_0x50e8('0x2d')](function(_0x229d60){_0x3c7778[_0x50e8('0x4a')]=_0x229d60;return _0x3c7778;})[_0x50e8('0x2d')](respondWithFilteredResult(_0x24d3ea,_0x4e2a37))[_0x50e8('0x22')](handleError(_0x24d3ea,null));};exports[_0x50e8('0x4b')]=function(_0x49bfa8,_0x179f6b){var _0x275a1b={'raw':![],'where':{'id':_0x49bfa8[_0x50e8('0x4c')]['id']}},_0x479431={};_0x479431['model']=_[_0x50e8('0x39')](db['Setting'][_0x50e8('0x4d')]);_0x479431[_0x50e8('0x38')]=_[_0x50e8('0x39')](_0x49bfa8[_0x50e8('0x38')]);_0x479431[_0x50e8('0x3a')]=_[_0x50e8('0x3c')](_0x479431[_0x50e8('0x37')],_0x479431['query']);_0x275a1b[_0x50e8('0x3b')]=_[_0x50e8('0x3c')](_0x479431[_0x50e8('0x37')],qs[_0x50e8('0x3d')](_0x49bfa8[_0x50e8('0x38')][_0x50e8('0x3d')]));_0x275a1b['attributes']=_0x275a1b[_0x50e8('0x3b')][_0x50e8('0x4e')]?_0x275a1b[_0x50e8('0x3b')]:_0x479431[_0x50e8('0x37')];if(_0x49bfa8['query'][_0x50e8('0x47')]){_0x275a1b[_0x50e8('0x48')]=[{'all':!![]}];}_0x275a1b=_[_0x50e8('0x44')]({},_0x275a1b,_0x49bfa8[_0x50e8('0x4f')]);return db[_0x50e8('0x45')][_0x50e8('0x50')](_0x275a1b)[_0x50e8('0x2d')](handleEntityNotFound(_0x179f6b,null))['then'](respondWithResult(_0x179f6b,null))['catch'](handleError(_0x179f6b,null));};exports['update']=function(_0x2b54ad,_0x1400e7){if(_0x2b54ad[_0x50e8('0x51')]['id']){delete _0x2b54ad[_0x50e8('0x51')]['id'];}return db[_0x50e8('0x45')][_0x50e8('0x50')]({'where':{'id':_0x2b54ad['params']['id']}})[_0x50e8('0x2d')](handleEntityNotFound(_0x1400e7,null))[_0x50e8('0x2d')](saveUpdates(_0x2b54ad[_0x50e8('0x51')],null))[_0x50e8('0x2d')](respondWithResult(_0x1400e7,null))['catch'](handleError(_0x1400e7,null));};exports[_0x50e8('0x52')]=function(_0xf773fd,_0x373b41,_0x1cc5ba){if(_0xf773fd[_0x50e8('0x53')]&&_0xf773fd[_0x50e8('0x53')]['filename']){_0xf773fd[_0x50e8('0x51')]['logo']=_0xf773fd['file']['filename'];}return db[_0x50e8('0x45')]['find']({'where':{'id':_0xf773fd[_0x50e8('0x4c')]['id']}})[_0x50e8('0x2d')](handleEntityNotFound(_0x373b41,null))[_0x50e8('0x2d')](saveUpdates(_0xf773fd[_0x50e8('0x51')],null))[_0x50e8('0x2d')](respondWithResult(_0x373b41,null))[_0x50e8('0x22')](handleError(_0x373b41,null));};exports[_0x50e8('0x54')]=function(_0x59cdf2,_0x26ab46,_0x42f1ed){if(_0x59cdf2[_0x50e8('0x53')]&&_0x59cdf2['file']['filename']){_0x59cdf2['body'][_0x50e8('0x55')]=_0x59cdf2[_0x50e8('0x53')][_0x50e8('0x56')];}return db[_0x50e8('0x45')][_0x50e8('0x50')]({'where':{'id':_0x59cdf2[_0x50e8('0x4c')]['id']}})['then'](handleEntityNotFound(_0x26ab46,null))[_0x50e8('0x2d')](saveUpdates(_0x59cdf2['body'],null))[_0x50e8('0x2d')](respondWithResult(_0x26ab46,null))[_0x50e8('0x22')](handleError(_0x26ab46,null));};var utilLicense=require('../../config/license/util');exports['getLogo']=function(_0x51775a,_0x2eed72,_0x3588f0){var _0x5d1fc8=_0x50e8('0x57');var _0xb2d01a={'custom':![]};return utilLicense[_0x50e8('0x58')]()[_0x50e8('0x2d')](function(_0x71bf27){if(_0x71bf27){_0xb2d01a=_0x71bf27;}return db['Setting'][_0x50e8('0x50')]({'where':{'id':_0x51775a[_0x50e8('0x4c')]['id']},'attributes':[_0x50e8('0x59'),'loginLogo','preferred',_0x50e8('0x5a'),_0x50e8('0x5b'),_0x50e8('0x5c'),_0x50e8('0x5d'),_0x50e8('0x5e')],'raw':!![]});})[_0x50e8('0x2d')](handleEntityNotFound(_0x2eed72,null))['then'](function(_0x51ffae){if(_0x51ffae){var _0x127190=_0x51ffae['logo']&&fs[_0x50e8('0x5f')](path[_0x50e8('0x60')](config['root'],_0x5d1fc8,_[_0x50e8('0x61')](_0x51ffae['logo'])))?path['join'](config['root'],_0x5d1fc8,_[_0x50e8('0x61')](_0x51ffae[_0x50e8('0x59')])):path[_0x50e8('0x60')](config[_0x50e8('0x62')],_0x5d1fc8,_['toLower']('default_logo.svg'));var _0x25d89e=_0x50e8('0x63')+_[_0x50e8('0x64')](_0x50e8('0x59'));if(_0x51ffae[_0x25d89e]||!_0xb2d01a[_0x50e8('0x65')]){_0x127190=path[_0x50e8('0x60')](config[_0x50e8('0x62')],_0x5d1fc8,_[_0x50e8('0x61')](_0x50e8('0x66')));}if(!fs[_0x50e8('0x5f')](_0x127190)){throw new db[(_0x50e8('0x67'))][(_0x50e8('0x68'))](_[_0x50e8('0x64')](_0x50e8('0x59'))+_0x50e8('0x69'));}return _0x2eed72[_0x50e8('0x6a')](_0x127190);}})[_0x50e8('0x22')](handleError(_0x2eed72,null));};var utilLicense=require(_0x50e8('0x6b'));exports['getLogoLogin']=function(_0x35a382,_0x474978,_0xd9e82e){var _0x2359c2='server/files/images/logos';var _0x2e6992={'custom':![]};return utilLicense[_0x50e8('0x58')]()[_0x50e8('0x2d')](function(_0x161a07){if(_0x161a07){_0x2e6992=_0x161a07;}return db[_0x50e8('0x45')][_0x50e8('0x50')]({'where':{'id':_0x35a382['params']['id']},'attributes':[_0x50e8('0x59'),_0x50e8('0x55'),_0x50e8('0x6c'),_0x50e8('0x5a'),'defaultLogo',_0x50e8('0x5c'),'defaultPreferred',_0x50e8('0x5e')],'raw':!![]});})[_0x50e8('0x2d')](handleEntityNotFound(_0x474978,null))[_0x50e8('0x2d')](function(_0x1637b2){if(_0x1637b2){var _0x3b1aea=_0x1637b2['loginLogo']&&fs[_0x50e8('0x5f')](path[_0x50e8('0x60')](config[_0x50e8('0x62')],_0x2359c2,_[_0x50e8('0x61')](_0x1637b2[_0x50e8('0x55')])))?path[_0x50e8('0x60')](config['root'],_0x2359c2,_[_0x50e8('0x61')](_0x1637b2[_0x50e8('0x55')])):path['join'](config[_0x50e8('0x62')],_0x2359c2,_[_0x50e8('0x61')]('default_loginLogo.svg'));var _0x3d56e7='default'+_[_0x50e8('0x64')](_0x50e8('0x55'));if(_0x1637b2[_0x3d56e7]||!_0x2e6992['custom']){_0x3b1aea=path[_0x50e8('0x60')](config[_0x50e8('0x62')],_0x2359c2,_[_0x50e8('0x61')](_0x50e8('0x6d')));}if(!fs['existsSync'](_0x3b1aea)){throw new db[(_0x50e8('0x67'))]['ValidationError'](_[_0x50e8('0x64')](_0x50e8('0x55'))+'\x20not\x20found');}return _0x474978[_0x50e8('0x6a')](_0x3b1aea);}})[_0x50e8('0x22')](handleError(_0x474978,null));};exports[_0x50e8('0x6e')]=function(_0x2ea86b,_0x223355){return db[_0x50e8('0x45')][_0x50e8('0x50')]({'where':{'id':_0x2ea86b[_0x50e8('0x4c')]['id']},'attributes':[_0x50e8('0x6f')]})['then'](respondWithResult(_0x223355,null))[_0x50e8('0x22')](handleError(_0x223355,null));};exports[_0x50e8('0x70')]=function(_0x38c8ef,_0x5a79c4,_0x7d64e0){if(_0x38c8ef[_0x50e8('0x53')]&&_0x38c8ef[_0x50e8('0x53')]['filename']){_0x38c8ef['body'][_0x50e8('0x6c')]=_0x38c8ef[_0x50e8('0x53')]['filename'];}return db[_0x50e8('0x45')]['find']({'where':{'id':_0x38c8ef[_0x50e8('0x4c')]['id']}})[_0x50e8('0x2d')](handleEntityNotFound(_0x5a79c4,null))[_0x50e8('0x2d')](saveUpdates(_0x38c8ef[_0x50e8('0x51')],null))['then'](respondWithResult(_0x5a79c4,null))[_0x50e8('0x22')](handleError(_0x5a79c4,null));};var utilLicense=require('../../config/license/util');exports[_0x50e8('0x71')]=function(_0x51ea2a,_0x55d39f,_0x368d17){var _0x37429f='server/files/images/logos';var _0x18c2af={'custom':![]};return utilLicense['getLicense']()[_0x50e8('0x2d')](function(_0x585a79){if(_0x585a79){_0x18c2af=_0x585a79;}return db['Setting'][_0x50e8('0x50')]({'where':{'id':_0x51ea2a[_0x50e8('0x4c')]['id']},'attributes':[_0x50e8('0x59'),_0x50e8('0x55'),'preferred',_0x50e8('0x5a'),'defaultLogo','defaultLoginLogo',_0x50e8('0x5d'),_0x50e8('0x5e')],'raw':!![]});})[_0x50e8('0x2d')](handleEntityNotFound(_0x55d39f,null))['then'](function(_0x4f6906){if(_0x4f6906){var _0x4fe69f=_0x4f6906[_0x50e8('0x6c')]&&fs[_0x50e8('0x5f')](path[_0x50e8('0x60')](config[_0x50e8('0x62')],_0x37429f,_[_0x50e8('0x61')](_0x4f6906[_0x50e8('0x6c')])))?path['join'](config['root'],_0x37429f,_[_0x50e8('0x61')](_0x4f6906[_0x50e8('0x6c')])):path[_0x50e8('0x60')](config[_0x50e8('0x62')],_0x37429f,_[_0x50e8('0x61')]('default_preferred.png'));var _0x38a3da=_0x50e8('0x63')+_[_0x50e8('0x64')]('preferred');if(_0x4f6906[_0x38a3da]||!_0x18c2af['custom']||!_0x18c2af[_0x50e8('0x6c')]){_0x4fe69f=path[_0x50e8('0x60')](config[_0x50e8('0x62')],_0x37429f,_['toLower'](_0x50e8('0x72')));}if(!fs[_0x50e8('0x5f')](_0x4fe69f)){throw new db['Sequelize'][(_0x50e8('0x68'))](_['upperFirst'](_0x50e8('0x6c'))+_0x50e8('0x69'));}return _0x55d39f[_0x50e8('0x6a')](_0x4fe69f);}})[_0x50e8('0x22')](handleError(_0x55d39f,null));};exports[_0x50e8('0x73')]=function(_0x2f6815,_0x1c4f8f,_0x323e9f){if(_0x2f6815[_0x50e8('0x53')]&&_0x2f6815['file'][_0x50e8('0x56')]){_0x2f6815['body'][_0x50e8('0x5a')]=_0x2f6815[_0x50e8('0x53')][_0x50e8('0x56')];}return db[_0x50e8('0x45')][_0x50e8('0x50')]({'where':{'id':_0x2f6815[_0x50e8('0x4c')]['id']}})['then'](handleEntityNotFound(_0x1c4f8f,null))[_0x50e8('0x2d')](saveUpdates(_0x2f6815[_0x50e8('0x51')],null))[_0x50e8('0x2d')](respondWithResult(_0x1c4f8f,null))[_0x50e8('0x22')](handleError(_0x1c4f8f,null));};var utilLicense=require(_0x50e8('0x6b'));exports[_0x50e8('0x74')]=function(_0x4182f2,_0x5e399c,_0x1f576a){var _0x4253e8=_0x50e8('0x57');var _0xc55fb5={'custom':![]};return utilLicense[_0x50e8('0x58')]()[_0x50e8('0x2d')](function(_0x2cec01){if(_0x2cec01){_0xc55fb5=_0x2cec01;}return db[_0x50e8('0x45')]['find']({'where':{'id':_0x4182f2['params']['id']},'attributes':['logo',_0x50e8('0x55'),'preferred',_0x50e8('0x5a'),_0x50e8('0x5b'),_0x50e8('0x5c'),_0x50e8('0x5d'),_0x50e8('0x5e')],'raw':!![]});})[_0x50e8('0x2d')](handleEntityNotFound(_0x5e399c,null))[_0x50e8('0x2d')](function(_0x101d46){if(_0x101d46){var _0x351ece=_0x101d46[_0x50e8('0x5a')]&&fs[_0x50e8('0x5f')](path['join'](config[_0x50e8('0x62')],_0x4253e8,_[_0x50e8('0x61')](_0x101d46['favicon'])))?path[_0x50e8('0x60')](config[_0x50e8('0x62')],_0x4253e8,_[_0x50e8('0x61')](_0x101d46[_0x50e8('0x5a')])):path['join'](config[_0x50e8('0x62')],_0x4253e8,_[_0x50e8('0x61')]('default_favicon.ico'));var _0x20cdb1='default'+_[_0x50e8('0x64')](_0x50e8('0x5a'));if(_0x101d46[_0x20cdb1]||!_0xc55fb5[_0x50e8('0x65')]){_0x351ece=path[_0x50e8('0x60')](config[_0x50e8('0x62')],_0x4253e8,_[_0x50e8('0x61')](_0x50e8('0x75')));}if(!fs[_0x50e8('0x5f')](_0x351ece)){throw new db[(_0x50e8('0x67'))]['ValidationError'](_[_0x50e8('0x64')](_0x50e8('0x5a'))+_0x50e8('0x69'));}return _0x5e399c['download'](_0x351ece);}})[_0x50e8('0x22')](handleError(_0x5e399c,null));};exports[_0x50e8('0x76')]=function(_0xa8c6b2,_0x2850a1){var _0x5a4e02={'offset':moment()['utcOffset']()};_0x5a4e02[_0x50e8('0x77')]=moment()[_0x50e8('0x78')](_0x5a4e02[_0x50e8('0x25')])[_0x50e8('0x79')](_0x50e8('0x7a'));return _0x2850a1['status'](0xc8)[_0x50e8('0x7b')](_0x5a4e02);};