Built motion from commit (unavailable).|2.4.20
[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 _0x7c83=['server/files/images/logos','preferred','favicon','defaultLogo','defaultLoginLogo','defaultPreferred','existsSync','root','toLower','default_logo.png','default','upperFirst','Sequelize','\x20not\x20found','download','getLogoLogin','getLicense','loginLogo','default_loginLogo.png','custom','join','ValidationError','gdpr','addPreferred','getPreferred','defaultFavicon','default_preferred.png','addFavicon','default_favicon.ico','html-pdf','eml-format','zip-dir','fast-json-patch','request-promise','moment','mustache','util','path','sox','to-csv','ejs','squel','desk.js','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','client','http','The\x20password\x20must\x20be\x20at\x20least\x208\x20characters\x20long\x20and\x20have\x201\x20lowercase\x20character,\x201\x20uppercase\x20character,\x201\x20number\x20and\x201\x20special\x20character\x20~!@#$%^&-_=+[{]}.','request','then','debug','Setting,\x20%s,\x20%s,\x20%s','request\x20sent','stringify','error','code','message','Setting,\x20%s,\x20%s','info','result','sendStatus','end','json','count','offset','limit','status','set','Content-Range','apply','reject','update','destroy','stack','name','index','map','Setting','rawAttributes','fieldName','type','key','model','query','keys','filters','intersection','attributes','fields','length','order','sort','where','pick','filter','merge','VIRTUAL','options','includeAll','include','findAll','catch','show','params','find','body','addLogo','file','filename','logo','addLogoLogin','../../config/license/util'];(function(_0x1ed579,_0x206ebc){var _0x793273=function(_0x56c373){while(--_0x56c373){_0x1ed579['push'](_0x1ed579['shift']());}};_0x793273(++_0x206ebc);}(_0x7c83,0x182));var _0x37c8=function(_0xe5f900,_0x726685){_0xe5f900=_0xe5f900-0x0;var _0x4bd547=_0x7c83[_0xe5f900];return _0x4bd547;};'use strict';var pdf=require(_0x37c8('0x0'));var emlformat=require(_0x37c8('0x1'));var rimraf=require('rimraf');var zipdir=require(_0x37c8('0x2'));var jsonpatch=require(_0x37c8('0x3'));var rp=require(_0x37c8('0x4'));var moment=require(_0x37c8('0x5'));var BPromise=require('bluebird');var Mustache=require(_0x37c8('0x6'));var util=require(_0x37c8('0x7'));var path=require(_0x37c8('0x8'));var sox=require(_0x37c8('0x9'));var csv=require(_0x37c8('0xa'));var ejs=require(_0x37c8('0xb'));var fs=require('fs');var _=require('lodash');var squel=require(_0x37c8('0xc'));var crypto=require('crypto');var jsforce=require('jsforce');var deskjs=require(_0x37c8('0xd'));var toCsv=require('to-csv');var querystring=require(_0x37c8('0xe'));var Papa=require(_0x37c8('0xf'));var Redis=require('ioredis');var authService=require(_0x37c8('0x10'));var qs=require(_0x37c8('0x11'));var as=require(_0x37c8('0x12'));var hardwareService=require(_0x37c8('0x13'));var logger=require(_0x37c8('0x14'))('api');var utils=require(_0x37c8('0x15'));var config=require(_0x37c8('0x16'));var db=require('../../mysqldb')['db'];var jayson=require('jayson/promise');var client=jayson[_0x37c8('0x17')][_0x37c8('0x18')]({'port':0x232a});function checkPasswordPattern(_0x35ecce,_0x4857ba,_0x12e0bf){if(_0x12e0bf){var _0x11a940=new RegExp(/(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[?!@#\$%\^&\*~\-_=+[{\]\}])(?=.{8,})/);if(_0x11a940['test'](_0x4857ba)){return _0x35ecce;}else{throw new db['Sequelize']['ValidationError'](_0x37c8('0x19'));}}else{return _0x35ecce;}}function respondWithRpcPromise(_0x2061cc,_0x42aa31,_0x1c7232,_0xe220bd){return new BPromise(function(_0x2a4cd8,_0x247078){var _0x47749c=_0xe220bd||client;return _0x47749c[_0x37c8('0x1a')](_0x2061cc,_0x1c7232)[_0x37c8('0x1b')](function(_0x294eb7){logger['info']('Setting,\x20%s,\x20%s',_0x42aa31,'request\x20sent');logger[_0x37c8('0x1c')](_0x37c8('0x1d'),_0x42aa31,_0x37c8('0x1e'),JSON[_0x37c8('0x1f')](_0x294eb7));if(_0x294eb7[_0x37c8('0x20')]){if(_0x294eb7[_0x37c8('0x20')][_0x37c8('0x21')]===0x1f4){logger['error']('Setting,\x20%s,\x20%s',_0x42aa31,_0x294eb7[_0x37c8('0x20')][_0x37c8('0x22')]);return _0x247078(_0x294eb7[_0x37c8('0x20')]['message']);}logger[_0x37c8('0x20')](_0x37c8('0x23'),_0x42aa31,_0x294eb7[_0x37c8('0x20')]['message']);return _0x2a4cd8(_0x294eb7[_0x37c8('0x20')][_0x37c8('0x22')]);}else{logger[_0x37c8('0x24')]('Setting,\x20%s,\x20%s',_0x42aa31,'request\x20sent');_0x2a4cd8(_0x294eb7[_0x37c8('0x25')][_0x37c8('0x22')]);}})['catch'](function(_0x1ca0a0){logger['error'](_0x37c8('0x23'),_0x42aa31,_0x1ca0a0);_0x247078(_0x1ca0a0);});});}function respondWithStatusCode(_0x1f6b59,_0x50e68c){_0x50e68c=_0x50e68c||0xcc;return function(_0x31b725){if(_0x31b725){return _0x1f6b59[_0x37c8('0x26')](_0x50e68c);}return _0x1f6b59['status'](_0x50e68c)[_0x37c8('0x27')]();};}function respondWithResult(_0x2460be,_0x31528d){_0x31528d=_0x31528d||0xc8;return function(_0x3ee96c){if(_0x3ee96c){return _0x2460be['status'](_0x31528d)[_0x37c8('0x28')](_0x3ee96c);}};}function respondWithFilteredResult(_0x446944,_0x15fb2a){return function(_0x268f98){if(_0x268f98){var _0x42e579=_0x268f98[_0x37c8('0x29')],_0x1f15e8=_0x15fb2a['offset'],_0x287a4e=_0x15fb2a[_0x37c8('0x2a')]+_0x15fb2a[_0x37c8('0x2b')],_0x4b3c19;if(_0x287a4e>=_0x42e579){_0x287a4e=_0x42e579;_0x4b3c19=0xc8;}else{_0x4b3c19=0xce;}_0x446944[_0x37c8('0x2c')](_0x4b3c19);return _0x446944[_0x37c8('0x2d')](_0x37c8('0x2e'),_0x1f15e8+'-'+_0x287a4e+'/'+_0x42e579)[_0x37c8('0x28')](_0x268f98);}return null;};}function patchUpdates(_0xa29519){return function(_0xe97d33){try{jsonpatch[_0x37c8('0x2f')](_0xe97d33,_0xa29519,!![]);}catch(_0x4bb484){return BPromise[_0x37c8('0x30')](_0x4bb484);}return _0xe97d33['save']();};}function saveUpdates(_0x5e8ba5,_0x307164){return function(_0x2f5ab2){if(_0x2f5ab2){return _0x2f5ab2[_0x37c8('0x31')](_0x5e8ba5)[_0x37c8('0x1b')](function(_0x5589ff){return _0x5589ff;});}return null;};}function removeEntity(_0x10d5eb,_0x5a529e){return function(_0x5ba885){if(_0x5ba885){return _0x5ba885[_0x37c8('0x32')]()[_0x37c8('0x1b')](function(){_0x10d5eb[_0x37c8('0x2c')](0xcc)[_0x37c8('0x27')]();});}};}function handleEntityNotFound(_0x19f4b4,_0x229a25){return function(_0x5dd0f2){if(!_0x5dd0f2){_0x19f4b4['sendStatus'](0x194);}return _0x5dd0f2;};}function handleError(_0x3bea65,_0x17598e){_0x17598e=_0x17598e||0x1f4;return function(_0x5a06dc){logger[_0x37c8('0x20')](_0x5a06dc[_0x37c8('0x33')]);if(_0x5a06dc[_0x37c8('0x34')]){delete _0x5a06dc[_0x37c8('0x34')];}_0x3bea65[_0x37c8('0x2c')](_0x17598e)['send'](_0x5a06dc);};}exports[_0x37c8('0x35')]=function(_0x4f7f59,_0x4f606c){var _0x5214bd={},_0xf13be={},_0x597f68={'count':0x0,'rows':[]};var _0x27a6a8=_[_0x37c8('0x36')](db[_0x37c8('0x37')][_0x37c8('0x38')],function(_0x4f66cd){return{'name':_0x4f66cd[_0x37c8('0x39')],'type':_0x4f66cd[_0x37c8('0x3a')][_0x37c8('0x3b')]};});_0xf13be[_0x37c8('0x3c')]=_[_0x37c8('0x36')](_0x27a6a8,_0x37c8('0x34'));_0xf13be[_0x37c8('0x3d')]=_[_0x37c8('0x3e')](_0x4f7f59[_0x37c8('0x3d')]);_0xf13be[_0x37c8('0x3f')]=_[_0x37c8('0x40')](_0xf13be[_0x37c8('0x3c')],_0xf13be[_0x37c8('0x3d')]);_0x5214bd[_0x37c8('0x41')]=_[_0x37c8('0x40')](_0xf13be[_0x37c8('0x3c')],qs[_0x37c8('0x42')](_0x4f7f59[_0x37c8('0x3d')][_0x37c8('0x42')]));_0x5214bd[_0x37c8('0x41')]=_0x5214bd[_0x37c8('0x41')][_0x37c8('0x43')]?_0x5214bd['attributes']:_0xf13be[_0x37c8('0x3c')];if(!_0x4f7f59[_0x37c8('0x3d')]['hasOwnProperty']('nolimit')){_0x5214bd[_0x37c8('0x2b')]=qs[_0x37c8('0x2b')](_0x4f7f59['query'][_0x37c8('0x2b')]);_0x5214bd[_0x37c8('0x2a')]=qs['offset'](_0x4f7f59['query'][_0x37c8('0x2a')]);}_0x5214bd[_0x37c8('0x44')]=qs[_0x37c8('0x45')](_0x4f7f59[_0x37c8('0x3d')][_0x37c8('0x45')]);_0x5214bd[_0x37c8('0x46')]=qs['filters'](_[_0x37c8('0x47')](_0x4f7f59[_0x37c8('0x3d')],_0xf13be[_0x37c8('0x3f')]));if(_0x4f7f59['query'][_0x37c8('0x48')]){_0x5214bd[_0x37c8('0x46')]=_[_0x37c8('0x49')](_0x5214bd[_0x37c8('0x46')],{'$or':_[_0x37c8('0x36')](_0x27a6a8,function(_0xf45523){if(_0xf45523[_0x37c8('0x3a')]!==_0x37c8('0x4a')){var _0x1fedd0={};_0x1fedd0[_0xf45523['name']]={'$like':'%'+_0x4f7f59[_0x37c8('0x3d')][_0x37c8('0x48')]+'%'};return _0x1fedd0;}})});}_0x5214bd=_[_0x37c8('0x49')]({},_0x5214bd,_0x4f7f59[_0x37c8('0x4b')]);var _0x9df112={'where':_0x5214bd[_0x37c8('0x46')]};return db['Setting'][_0x37c8('0x29')](_0x9df112)[_0x37c8('0x1b')](function(_0x2df30c){_0x597f68[_0x37c8('0x29')]=_0x2df30c;if(_0x4f7f59[_0x37c8('0x3d')][_0x37c8('0x4c')]){_0x5214bd[_0x37c8('0x4d')]=[{'all':!![]}];}return db[_0x37c8('0x37')][_0x37c8('0x4e')](_0x5214bd);})['then'](function(_0x23c136){_0x597f68['rows']=_0x23c136;return _0x597f68;})[_0x37c8('0x1b')](respondWithFilteredResult(_0x4f606c,_0x5214bd))[_0x37c8('0x4f')](handleError(_0x4f606c,null));};exports[_0x37c8('0x50')]=function(_0x488e94,_0x2f539d){var _0x4c44f5={'raw':![],'where':{'id':_0x488e94[_0x37c8('0x51')]['id']}},_0x2c57f9={};_0x2c57f9['model']=_[_0x37c8('0x3e')](db[_0x37c8('0x37')][_0x37c8('0x38')]);_0x2c57f9['query']=_[_0x37c8('0x3e')](_0x488e94[_0x37c8('0x3d')]);_0x2c57f9[_0x37c8('0x3f')]=_['intersection'](_0x2c57f9[_0x37c8('0x3c')],_0x2c57f9[_0x37c8('0x3d')]);_0x4c44f5[_0x37c8('0x41')]=_[_0x37c8('0x40')](_0x2c57f9['model'],qs[_0x37c8('0x42')](_0x488e94[_0x37c8('0x3d')][_0x37c8('0x42')]));_0x4c44f5['attributes']=_0x4c44f5[_0x37c8('0x41')][_0x37c8('0x43')]?_0x4c44f5[_0x37c8('0x41')]:_0x2c57f9[_0x37c8('0x3c')];if(_0x488e94[_0x37c8('0x3d')][_0x37c8('0x4c')]){_0x4c44f5['include']=[{'all':!![]}];}_0x4c44f5=_[_0x37c8('0x49')]({},_0x4c44f5,_0x488e94['options']);return db[_0x37c8('0x37')][_0x37c8('0x52')](_0x4c44f5)['then'](handleEntityNotFound(_0x2f539d,null))[_0x37c8('0x1b')](respondWithResult(_0x2f539d,null))[_0x37c8('0x4f')](handleError(_0x2f539d,null));};exports[_0x37c8('0x31')]=function(_0x1cc5e6,_0x2aebf4){if(_0x1cc5e6[_0x37c8('0x53')]['id']){delete _0x1cc5e6[_0x37c8('0x53')]['id'];}return db[_0x37c8('0x37')]['find']({'where':{'id':_0x1cc5e6[_0x37c8('0x51')]['id']}})['then'](handleEntityNotFound(_0x2aebf4,null))[_0x37c8('0x1b')](saveUpdates(_0x1cc5e6['body'],null))[_0x37c8('0x1b')](respondWithResult(_0x2aebf4,null))[_0x37c8('0x4f')](handleError(_0x2aebf4,null));};exports[_0x37c8('0x54')]=function(_0x2269ee,_0x4f732d,_0x22df7d){if(_0x2269ee[_0x37c8('0x55')]&&_0x2269ee[_0x37c8('0x55')][_0x37c8('0x56')]){_0x2269ee[_0x37c8('0x53')][_0x37c8('0x57')]=_0x2269ee['file'][_0x37c8('0x56')];}return db['Setting'][_0x37c8('0x52')]({'where':{'id':_0x2269ee[_0x37c8('0x51')]['id']}})[_0x37c8('0x1b')](handleEntityNotFound(_0x4f732d,null))[_0x37c8('0x1b')](saveUpdates(_0x2269ee[_0x37c8('0x53')],null))['then'](respondWithResult(_0x4f732d,null))[_0x37c8('0x4f')](handleError(_0x4f732d,null));};exports[_0x37c8('0x58')]=function(_0x1b8476,_0x3100b7,_0x43ba30){if(_0x1b8476['file']&&_0x1b8476[_0x37c8('0x55')][_0x37c8('0x56')]){_0x1b8476[_0x37c8('0x53')]['loginLogo']=_0x1b8476[_0x37c8('0x55')][_0x37c8('0x56')];}return db[_0x37c8('0x37')][_0x37c8('0x52')]({'where':{'id':_0x1b8476[_0x37c8('0x51')]['id']}})[_0x37c8('0x1b')](handleEntityNotFound(_0x3100b7,null))[_0x37c8('0x1b')](saveUpdates(_0x1b8476[_0x37c8('0x53')],null))[_0x37c8('0x1b')](respondWithResult(_0x3100b7,null))[_0x37c8('0x4f')](handleError(_0x3100b7,null));};var utilLicense=require(_0x37c8('0x59'));exports['getLogo']=function(_0x22317f,_0x4ce0ee,_0x3bd9f9){var _0x28ac9e=_0x37c8('0x5a');var _0x11be06={'custom':![]};return utilLicense['getLicense']()[_0x37c8('0x1b')](function(_0x3df586){if(_0x3df586){_0x11be06=_0x3df586;}return db['Setting'][_0x37c8('0x52')]({'where':{'id':_0x22317f[_0x37c8('0x51')]['id']},'attributes':['logo','loginLogo',_0x37c8('0x5b'),_0x37c8('0x5c'),_0x37c8('0x5d'),_0x37c8('0x5e'),_0x37c8('0x5f'),'defaultFavicon'],'raw':!![]});})[_0x37c8('0x1b')](handleEntityNotFound(_0x4ce0ee,null))[_0x37c8('0x1b')](function(_0xbba365){if(_0xbba365){var _0x9bc9b0=_0xbba365[_0x37c8('0x57')]&&fs[_0x37c8('0x60')](path['join'](config[_0x37c8('0x61')],_0x28ac9e,_[_0x37c8('0x62')](_0xbba365[_0x37c8('0x57')])))?path['join'](config[_0x37c8('0x61')],_0x28ac9e,_[_0x37c8('0x62')](_0xbba365[_0x37c8('0x57')])):path['join'](config[_0x37c8('0x61')],_0x28ac9e,_[_0x37c8('0x62')](_0x37c8('0x63')));var _0xba876a=_0x37c8('0x64')+_[_0x37c8('0x65')](_0x37c8('0x57'));if(_0xbba365[_0xba876a]||!_0x11be06['custom']){_0x9bc9b0=path['join'](config[_0x37c8('0x61')],_0x28ac9e,_['toLower'](_0x37c8('0x63')));}if(!fs[_0x37c8('0x60')](_0x9bc9b0)){throw new db[(_0x37c8('0x66'))]['ValidationError'](_['upperFirst'](_0x37c8('0x57'))+_0x37c8('0x67'));}return _0x4ce0ee[_0x37c8('0x68')](_0x9bc9b0);}})['catch'](handleError(_0x4ce0ee,null));};var utilLicense=require(_0x37c8('0x59'));exports[_0x37c8('0x69')]=function(_0x49588a,_0x5968a1,_0x94b198){var _0x17b285=_0x37c8('0x5a');var _0x54ea14={'custom':![]};return utilLicense[_0x37c8('0x6a')]()[_0x37c8('0x1b')](function(_0x1efecc){if(_0x1efecc){_0x54ea14=_0x1efecc;}return db[_0x37c8('0x37')][_0x37c8('0x52')]({'where':{'id':_0x49588a['params']['id']},'attributes':['logo',_0x37c8('0x6b'),'preferred',_0x37c8('0x5c'),_0x37c8('0x5d'),_0x37c8('0x5e'),_0x37c8('0x5f'),'defaultFavicon'],'raw':!![]});})[_0x37c8('0x1b')](handleEntityNotFound(_0x5968a1,null))[_0x37c8('0x1b')](function(_0x23820d){if(_0x23820d){var _0x421102=_0x23820d[_0x37c8('0x6b')]&&fs['existsSync'](path['join'](config[_0x37c8('0x61')],_0x17b285,_[_0x37c8('0x62')](_0x23820d[_0x37c8('0x6b')])))?path['join'](config['root'],_0x17b285,_[_0x37c8('0x62')](_0x23820d['loginLogo'])):path['join'](config[_0x37c8('0x61')],_0x17b285,_['toLower'](_0x37c8('0x6c')));var _0x258b86=_0x37c8('0x64')+_[_0x37c8('0x65')](_0x37c8('0x6b'));if(_0x23820d[_0x258b86]||!_0x54ea14[_0x37c8('0x6d')]){_0x421102=path[_0x37c8('0x6e')](config[_0x37c8('0x61')],_0x17b285,_[_0x37c8('0x62')](_0x37c8('0x6c')));}if(!fs['existsSync'](_0x421102)){throw new db['Sequelize'][(_0x37c8('0x6f'))](_[_0x37c8('0x65')](_0x37c8('0x6b'))+_0x37c8('0x67'));}return _0x5968a1[_0x37c8('0x68')](_0x421102);}})[_0x37c8('0x4f')](handleError(_0x5968a1,null));};exports[_0x37c8('0x70')]=function(_0x2d0740,_0x2ecd62){return db[_0x37c8('0x37')][_0x37c8('0x52')]({'where':{'id':_0x2d0740[_0x37c8('0x51')]['id']},'attributes':['securePassword']})[_0x37c8('0x1b')](respondWithResult(_0x2ecd62,null))['catch'](handleError(_0x2ecd62,null));};exports[_0x37c8('0x71')]=function(_0x210401,_0x40e7c8,_0x4f3845){if(_0x210401['file']&&_0x210401[_0x37c8('0x55')][_0x37c8('0x56')]){_0x210401[_0x37c8('0x53')][_0x37c8('0x5b')]=_0x210401['file'][_0x37c8('0x56')];}return db[_0x37c8('0x37')][_0x37c8('0x52')]({'where':{'id':_0x210401[_0x37c8('0x51')]['id']}})['then'](handleEntityNotFound(_0x40e7c8,null))[_0x37c8('0x1b')](saveUpdates(_0x210401[_0x37c8('0x53')],null))[_0x37c8('0x1b')](respondWithResult(_0x40e7c8,null))[_0x37c8('0x4f')](handleError(_0x40e7c8,null));};var utilLicense=require('../../config/license/util');exports[_0x37c8('0x72')]=function(_0x8ec01f,_0x2bb4e4,_0x1db6a4){var _0xc11a3e='server/files/images/logos';var _0x5b2d1e={'custom':![]};return utilLicense[_0x37c8('0x6a')]()[_0x37c8('0x1b')](function(_0x3930e7){if(_0x3930e7){_0x5b2d1e=_0x3930e7;}return db[_0x37c8('0x37')][_0x37c8('0x52')]({'where':{'id':_0x8ec01f[_0x37c8('0x51')]['id']},'attributes':['logo',_0x37c8('0x6b'),_0x37c8('0x5b'),'favicon',_0x37c8('0x5d'),'defaultLoginLogo',_0x37c8('0x5f'),_0x37c8('0x73')],'raw':!![]});})[_0x37c8('0x1b')](handleEntityNotFound(_0x2bb4e4,null))[_0x37c8('0x1b')](function(_0x51f717){if(_0x51f717){var _0x5f3181=_0x51f717[_0x37c8('0x5b')]&&fs[_0x37c8('0x60')](path['join'](config[_0x37c8('0x61')],_0xc11a3e,_[_0x37c8('0x62')](_0x51f717[_0x37c8('0x5b')])))?path['join'](config[_0x37c8('0x61')],_0xc11a3e,_[_0x37c8('0x62')](_0x51f717['preferred'])):path[_0x37c8('0x6e')](config['root'],_0xc11a3e,_['toLower'](_0x37c8('0x74')));var _0xfb5141=_0x37c8('0x64')+_[_0x37c8('0x65')](_0x37c8('0x5b'));if(_0x51f717[_0xfb5141]||!_0x5b2d1e[_0x37c8('0x6d')]||!_0x5b2d1e[_0x37c8('0x5b')]){_0x5f3181=path[_0x37c8('0x6e')](config[_0x37c8('0x61')],_0xc11a3e,_[_0x37c8('0x62')](_0x37c8('0x74')));}if(!fs[_0x37c8('0x60')](_0x5f3181)){throw new db[(_0x37c8('0x66'))][(_0x37c8('0x6f'))](_[_0x37c8('0x65')](_0x37c8('0x5b'))+_0x37c8('0x67'));}return _0x2bb4e4[_0x37c8('0x68')](_0x5f3181);}})[_0x37c8('0x4f')](handleError(_0x2bb4e4,null));};exports[_0x37c8('0x75')]=function(_0x21b511,_0x3d5dde,_0x2be985){if(_0x21b511[_0x37c8('0x55')]&&_0x21b511[_0x37c8('0x55')][_0x37c8('0x56')]){_0x21b511['body'][_0x37c8('0x5c')]=_0x21b511[_0x37c8('0x55')][_0x37c8('0x56')];}return db[_0x37c8('0x37')][_0x37c8('0x52')]({'where':{'id':_0x21b511[_0x37c8('0x51')]['id']}})['then'](handleEntityNotFound(_0x3d5dde,null))[_0x37c8('0x1b')](saveUpdates(_0x21b511[_0x37c8('0x53')],null))['then'](respondWithResult(_0x3d5dde,null))[_0x37c8('0x4f')](handleError(_0x3d5dde,null));};var utilLicense=require(_0x37c8('0x59'));exports['getFavicon']=function(_0x135fed,_0x4e0af7,_0x146d50){var _0x2b2f8b=_0x37c8('0x5a');var _0x15aca0={'custom':![]};return utilLicense[_0x37c8('0x6a')]()['then'](function(_0x587929){if(_0x587929){_0x15aca0=_0x587929;}return db[_0x37c8('0x37')][_0x37c8('0x52')]({'where':{'id':_0x135fed[_0x37c8('0x51')]['id']},'attributes':[_0x37c8('0x57'),'loginLogo',_0x37c8('0x5b'),_0x37c8('0x5c'),_0x37c8('0x5d'),_0x37c8('0x5e'),_0x37c8('0x5f'),_0x37c8('0x73')],'raw':!![]});})[_0x37c8('0x1b')](handleEntityNotFound(_0x4e0af7,null))['then'](function(_0x39a1f4){if(_0x39a1f4){var _0xf59f8b=_0x39a1f4[_0x37c8('0x5c')]&&fs['existsSync'](path[_0x37c8('0x6e')](config[_0x37c8('0x61')],_0x2b2f8b,_[_0x37c8('0x62')](_0x39a1f4['favicon'])))?path[_0x37c8('0x6e')](config['root'],_0x2b2f8b,_[_0x37c8('0x62')](_0x39a1f4[_0x37c8('0x5c')])):path['join'](config[_0x37c8('0x61')],_0x2b2f8b,_[_0x37c8('0x62')](_0x37c8('0x76')));var _0x32745b=_0x37c8('0x64')+_[_0x37c8('0x65')]('favicon');if(_0x39a1f4[_0x32745b]||!_0x15aca0[_0x37c8('0x6d')]){_0xf59f8b=path[_0x37c8('0x6e')](config[_0x37c8('0x61')],_0x2b2f8b,_[_0x37c8('0x62')](_0x37c8('0x76')));}if(!fs['existsSync'](_0xf59f8b)){throw new db['Sequelize']['ValidationError'](_[_0x37c8('0x65')](_0x37c8('0x5c'))+_0x37c8('0x67'));}return _0x4e0af7[_0x37c8('0x68')](_0xf59f8b);}})[_0x37c8('0x4f')](handleError(_0x4e0af7,null));};