Built motion from commit ffdca78c.|2.6.24
[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 _0x4062=['attributes','model','fields','length','hasOwnProperty','nolimit','order','sort','where','filters','pick','filter','merge','VIRTUAL','options','includeAll','include','findAll','catch','show','params','keys','body','find','addLogo','file','filename','logo','getLogo','server/files/images/logos','getLicense','loginLogo','preferred','defaultLogo','defaultFavicon','join','root','toLower','default','custom','existsSync','Sequelize','ValidationError','upperFirst','\x20not\x20found','getLogoLogin','favicon','defaultPreferred','default_loginLogo.svg','download','gdpr','addPreferred','getPreferred','defaultLoginLogo','default_preferred.png','addFavicon','getFavicon','default_favicon.ico','getDate','utcOffset','now','format','YYYY-MM-DD\x20HH:mm:ss:SSS','send','rimraf','fast-json-patch','moment','mustache','path','sox','to-csv','ejs','fs-extra','lodash','squel','crypto','querystring','ioredis','../../components/auth/service','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','jayson/promise','client','http','request','then','info','Setting,\x20%s,\x20%s','Setting,\x20%s,\x20%s,\x20%s','request\x20sent','error','message','result','status','end','json','offset','undefined','limit','count','set','Content-Range','apply','reject','save','update','sendStatus','stack','name','index','map','Setting','rawAttributes','fieldName','type','key','query','intersection'];(function(_0x2cfb58,_0x3d9412){var _0xd99951=function(_0x329afa){while(--_0x329afa){_0x2cfb58['push'](_0x2cfb58['shift']());}};_0xd99951(++_0x3d9412);}(_0x4062,0x1ae));var _0x2406=function(_0x2a0bb5,_0x4d54b3){_0x2a0bb5=_0x2a0bb5-0x0;var _0x40951c=_0x4062[_0x2a0bb5];return _0x40951c;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x2406('0x0'));var zipdir=require('zip-dir');var jsonpatch=require(_0x2406('0x1'));var rp=require('request-promise');var moment=require(_0x2406('0x2'));var BPromise=require('bluebird');var Mustache=require(_0x2406('0x3'));var util=require('util');var path=require(_0x2406('0x4'));var sox=require(_0x2406('0x5'));var csv=require(_0x2406('0x6'));var ejs=require(_0x2406('0x7'));var fs=require('fs');var fs_extra=require(_0x2406('0x8'));var _=require(_0x2406('0x9'));var squel=require(_0x2406('0xa'));var crypto=require(_0x2406('0xb'));var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require(_0x2406('0x6'));var querystring=require(_0x2406('0xc'));var Papa=require('papaparse');var Redis=require(_0x2406('0xd'));var authService=require(_0x2406('0xe'));var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require(_0x2406('0xf'))(_0x2406('0x10'));var utils=require(_0x2406('0x11'));var config=require(_0x2406('0x12'));var licenseUtil=require(_0x2406('0x13'));var db=require(_0x2406('0x14'))['db'];var jayson=require(_0x2406('0x15'));var client=jayson[_0x2406('0x16')][_0x2406('0x17')]({'port':0x232a});function respondWithRpcPromise(_0x2fe81c,_0x2b4aec,_0x54d218,_0x1b1f11){return new BPromise(function(_0xed0d53,_0x260ef7){var _0x552f4b=_0x1b1f11||client;return _0x552f4b[_0x2406('0x18')](_0x2fe81c,_0x54d218)[_0x2406('0x19')](function(_0x7d3691){logger[_0x2406('0x1a')](_0x2406('0x1b'),_0x2b4aec,'request\x20sent');logger['debug'](_0x2406('0x1c'),_0x2b4aec,_0x2406('0x1d'),JSON['stringify'](_0x7d3691));if(_0x7d3691['error']){if(_0x7d3691[_0x2406('0x1e')]['code']===0x1f4){logger['error'](_0x2406('0x1b'),_0x2b4aec,_0x7d3691[_0x2406('0x1e')]['message']);return _0x260ef7(_0x7d3691[_0x2406('0x1e')][_0x2406('0x1f')]);}logger['error'](_0x2406('0x1b'),_0x2b4aec,_0x7d3691['error'][_0x2406('0x1f')]);return _0xed0d53(_0x7d3691['error'][_0x2406('0x1f')]);}else{logger[_0x2406('0x1a')](_0x2406('0x1b'),_0x2b4aec,_0x2406('0x1d'));_0xed0d53(_0x7d3691[_0x2406('0x20')]['message']);}})['catch'](function(_0x168076){logger[_0x2406('0x1e')](_0x2406('0x1b'),_0x2b4aec,_0x168076);_0x260ef7(_0x168076);});});}function respondWithStatusCode(_0x7d1454,_0x4152a8){_0x4152a8=_0x4152a8||0xcc;return function(_0xaed734){if(_0xaed734){return _0x7d1454['sendStatus'](_0x4152a8);}return _0x7d1454[_0x2406('0x21')](_0x4152a8)[_0x2406('0x22')]();};}function respondWithResult(_0x37f3ef,_0x2c88b0){_0x2c88b0=_0x2c88b0||0xc8;return function(_0x35d7dd){if(_0x35d7dd){return _0x37f3ef[_0x2406('0x21')](_0x2c88b0)[_0x2406('0x23')](_0x35d7dd);}};}function respondWithFilteredResult(_0x246539,_0x38c169){return function(_0xf08a64){if(_0xf08a64){var _0x5c29d0=typeof _0x38c169[_0x2406('0x24')]===_0x2406('0x25')&&typeof _0x38c169[_0x2406('0x26')]===_0x2406('0x25');var _0x3e5d7e=_0xf08a64[_0x2406('0x27')];var _0x98424e=_0x5c29d0?0x0:_0x38c169[_0x2406('0x24')];var _0x48a4f8=_0x5c29d0?_0xf08a64['count']:_0x38c169[_0x2406('0x24')]+_0x38c169[_0x2406('0x26')];var _0x837523;if(_0x48a4f8>=_0x3e5d7e){_0x48a4f8=_0x3e5d7e;_0x837523=0xc8;}else{_0x837523=0xce;}_0x246539[_0x2406('0x21')](_0x837523);return _0x246539[_0x2406('0x28')](_0x2406('0x29'),_0x98424e+'-'+_0x48a4f8+'/'+_0x3e5d7e)[_0x2406('0x23')](_0xf08a64);}return null;};}function patchUpdates(_0x3ec2ae){return function(_0x2fa662){try{jsonpatch[_0x2406('0x2a')](_0x2fa662,_0x3ec2ae,!![]);}catch(_0x4df577){return BPromise[_0x2406('0x2b')](_0x4df577);}return _0x2fa662[_0x2406('0x2c')]();};}function saveUpdates(_0x594a3b,_0x33855c){return function(_0x30e370){if(_0x30e370){return _0x30e370[_0x2406('0x2d')](_0x594a3b)[_0x2406('0x19')](function(_0x8c45e5){return _0x8c45e5;});}return null;};}function removeEntity(_0x341fb7,_0x1433e6){return function(_0xc99e6a){if(_0xc99e6a){return _0xc99e6a['destroy']()['then'](function(){_0x341fb7[_0x2406('0x21')](0xcc)['end']();});}};}function handleEntityNotFound(_0xfddae3,_0x386c64){return function(_0x318b95){if(!_0x318b95){_0xfddae3[_0x2406('0x2e')](0x194);}return _0x318b95;};}function handleError(_0x3f62c9,_0x16fa3f){_0x16fa3f=_0x16fa3f||0x1f4;return function(_0x51cc73){logger[_0x2406('0x1e')](_0x51cc73[_0x2406('0x2f')]);if(_0x51cc73[_0x2406('0x30')]){delete _0x51cc73[_0x2406('0x30')];}_0x3f62c9[_0x2406('0x21')](_0x16fa3f)['send'](_0x51cc73);};}exports[_0x2406('0x31')]=function(_0x118c26,_0x5a1134){var _0x511ef6={},_0x4f945d={},_0x42569b={'count':0x0,'rows':[]};var _0x5f5172=_[_0x2406('0x32')](db[_0x2406('0x33')][_0x2406('0x34')],function(_0xb56c28){return{'name':_0xb56c28[_0x2406('0x35')],'type':_0xb56c28[_0x2406('0x36')][_0x2406('0x37')]};});_0x4f945d['model']=_[_0x2406('0x32')](_0x5f5172,_0x2406('0x30'));_0x4f945d['query']=_['keys'](_0x118c26[_0x2406('0x38')]);_0x4f945d['filters']=_[_0x2406('0x39')](_0x4f945d['model'],_0x4f945d[_0x2406('0x38')]);_0x511ef6[_0x2406('0x3a')]=_[_0x2406('0x39')](_0x4f945d[_0x2406('0x3b')],qs[_0x2406('0x3c')](_0x118c26[_0x2406('0x38')][_0x2406('0x3c')]));_0x511ef6[_0x2406('0x3a')]=_0x511ef6[_0x2406('0x3a')][_0x2406('0x3d')]?_0x511ef6[_0x2406('0x3a')]:_0x4f945d[_0x2406('0x3b')];if(!_0x118c26[_0x2406('0x38')][_0x2406('0x3e')](_0x2406('0x3f'))){_0x511ef6[_0x2406('0x26')]=qs[_0x2406('0x26')](_0x118c26['query']['limit']);_0x511ef6[_0x2406('0x24')]=qs[_0x2406('0x24')](_0x118c26['query'][_0x2406('0x24')]);}_0x511ef6[_0x2406('0x40')]=qs[_0x2406('0x41')](_0x118c26[_0x2406('0x38')][_0x2406('0x41')]);_0x511ef6[_0x2406('0x42')]=qs[_0x2406('0x43')](_[_0x2406('0x44')](_0x118c26[_0x2406('0x38')],_0x4f945d[_0x2406('0x43')]),_0x5f5172);if(_0x118c26[_0x2406('0x38')][_0x2406('0x45')]){_0x511ef6[_0x2406('0x42')]=_[_0x2406('0x46')](_0x511ef6[_0x2406('0x42')],{'$or':_[_0x2406('0x32')](_0x5f5172,function(_0x4539f6){if(_0x4539f6['type']!==_0x2406('0x47')){var _0x2bbda3={};_0x2bbda3[_0x4539f6['name']]={'$like':'%'+_0x118c26['query'][_0x2406('0x45')]+'%'};return _0x2bbda3;}})});}_0x511ef6=_[_0x2406('0x46')]({},_0x511ef6,_0x118c26[_0x2406('0x48')]);var _0x5eb1a8={'where':_0x511ef6[_0x2406('0x42')]};return db[_0x2406('0x33')][_0x2406('0x27')](_0x5eb1a8)[_0x2406('0x19')](function(_0x27d695){_0x42569b['count']=_0x27d695;if(_0x118c26[_0x2406('0x38')][_0x2406('0x49')]){_0x511ef6[_0x2406('0x4a')]=[{'all':!![]}];}return db[_0x2406('0x33')][_0x2406('0x4b')](_0x511ef6);})[_0x2406('0x19')](function(_0x24e867){_0x42569b['rows']=_0x24e867;return _0x42569b;})[_0x2406('0x19')](respondWithFilteredResult(_0x5a1134,_0x511ef6))[_0x2406('0x4c')](handleError(_0x5a1134,null));};exports[_0x2406('0x4d')]=function(_0x426600,_0x11634b){var _0x1d2ac6={'raw':![],'where':{'id':_0x426600[_0x2406('0x4e')]['id']}},_0x1a3ccc={};_0x1a3ccc[_0x2406('0x3b')]=_[_0x2406('0x4f')](db[_0x2406('0x33')][_0x2406('0x34')]);_0x1a3ccc[_0x2406('0x38')]=_[_0x2406('0x4f')](_0x426600['query']);_0x1a3ccc['filters']=_[_0x2406('0x39')](_0x1a3ccc[_0x2406('0x3b')],_0x1a3ccc[_0x2406('0x38')]);_0x1d2ac6[_0x2406('0x3a')]=_['intersection'](_0x1a3ccc[_0x2406('0x3b')],qs[_0x2406('0x3c')](_0x426600[_0x2406('0x38')][_0x2406('0x3c')]));_0x1d2ac6['attributes']=_0x1d2ac6[_0x2406('0x3a')][_0x2406('0x3d')]?_0x1d2ac6[_0x2406('0x3a')]:_0x1a3ccc[_0x2406('0x3b')];if(_0x426600[_0x2406('0x38')][_0x2406('0x49')]){_0x1d2ac6[_0x2406('0x4a')]=[{'all':!![]}];}_0x1d2ac6=_[_0x2406('0x46')]({},_0x1d2ac6,_0x426600['options']);return db[_0x2406('0x33')]['find'](_0x1d2ac6)[_0x2406('0x19')](handleEntityNotFound(_0x11634b,null))[_0x2406('0x19')](respondWithResult(_0x11634b,null))[_0x2406('0x4c')](handleError(_0x11634b,null));};exports[_0x2406('0x2d')]=function(_0x14f89a,_0x34d1c7){if(_0x14f89a[_0x2406('0x50')]['id']){delete _0x14f89a['body']['id'];}return db[_0x2406('0x33')][_0x2406('0x51')]({'where':{'id':_0x14f89a[_0x2406('0x4e')]['id']}})['then'](handleEntityNotFound(_0x34d1c7,null))[_0x2406('0x19')](saveUpdates(_0x14f89a[_0x2406('0x50')],null))[_0x2406('0x19')](respondWithResult(_0x34d1c7,null))['catch'](handleError(_0x34d1c7,null));};exports[_0x2406('0x52')]=function(_0x44d366,_0x59a99d,_0x10e977){if(_0x44d366['file']&&_0x44d366[_0x2406('0x53')][_0x2406('0x54')]){_0x44d366[_0x2406('0x50')][_0x2406('0x55')]=_0x44d366[_0x2406('0x53')][_0x2406('0x54')];}return db[_0x2406('0x33')][_0x2406('0x51')]({'where':{'id':_0x44d366[_0x2406('0x4e')]['id']}})[_0x2406('0x19')](handleEntityNotFound(_0x59a99d,null))[_0x2406('0x19')](saveUpdates(_0x44d366[_0x2406('0x50')],null))[_0x2406('0x19')](respondWithResult(_0x59a99d,null))[_0x2406('0x4c')](handleError(_0x59a99d,null));};exports['addLogoLogin']=function(_0x449ff3,_0x47c057,_0x376b5e){if(_0x449ff3['file']&&_0x449ff3[_0x2406('0x53')]['filename']){_0x449ff3['body']['loginLogo']=_0x449ff3[_0x2406('0x53')][_0x2406('0x54')];}return db[_0x2406('0x33')][_0x2406('0x51')]({'where':{'id':_0x449ff3['params']['id']}})[_0x2406('0x19')](handleEntityNotFound(_0x47c057,null))[_0x2406('0x19')](saveUpdates(_0x449ff3[_0x2406('0x50')],null))[_0x2406('0x19')](respondWithResult(_0x47c057,null))['catch'](handleError(_0x47c057,null));};var utilLicense=require(_0x2406('0x13'));exports[_0x2406('0x56')]=function(_0x3ba3da,_0x462ac6,_0x4ec684){var _0x93b77=_0x2406('0x57');var _0x3a12f5={'custom':![]};return utilLicense[_0x2406('0x58')]()[_0x2406('0x19')](function(_0x5b1572){if(_0x5b1572){_0x3a12f5=_0x5b1572;}return db[_0x2406('0x33')][_0x2406('0x51')]({'where':{'id':_0x3ba3da[_0x2406('0x4e')]['id']},'attributes':[_0x2406('0x55'),_0x2406('0x59'),_0x2406('0x5a'),'favicon',_0x2406('0x5b'),'defaultLoginLogo','defaultPreferred',_0x2406('0x5c')],'raw':!![]});})[_0x2406('0x19')](handleEntityNotFound(_0x462ac6,null))[_0x2406('0x19')](function(_0x277021){if(_0x277021){var _0x3808f5=_0x277021['logo']&&fs['existsSync'](path[_0x2406('0x5d')](config[_0x2406('0x5e')],_0x93b77,_[_0x2406('0x5f')](_0x277021[_0x2406('0x55')])))?path[_0x2406('0x5d')](config[_0x2406('0x5e')],_0x93b77,_['toLower'](_0x277021[_0x2406('0x55')])):path[_0x2406('0x5d')](config[_0x2406('0x5e')],_0x93b77,_[_0x2406('0x5f')]('default_logo.svg'));var _0x6eea45=_0x2406('0x60')+_['upperFirst']('logo');if(_0x277021[_0x6eea45]||!_0x3a12f5[_0x2406('0x61')]){_0x3808f5=path[_0x2406('0x5d')](config[_0x2406('0x5e')],_0x93b77,_['toLower']('default_logo.svg'));}if(!fs[_0x2406('0x62')](_0x3808f5)){throw new db[(_0x2406('0x63'))][(_0x2406('0x64'))](_[_0x2406('0x65')](_0x2406('0x55'))+_0x2406('0x66'));}return _0x462ac6['download'](_0x3808f5);}})[_0x2406('0x4c')](handleError(_0x462ac6,null));};var utilLicense=require('../../config/license/util');exports[_0x2406('0x67')]=function(_0x306c66,_0x3f438e,_0x40085c){var _0x254758=_0x2406('0x57');var _0x52a0bc={'custom':![]};return utilLicense['getLicense']()[_0x2406('0x19')](function(_0xc05d0d){if(_0xc05d0d){_0x52a0bc=_0xc05d0d;}return db[_0x2406('0x33')][_0x2406('0x51')]({'where':{'id':_0x306c66[_0x2406('0x4e')]['id']},'attributes':[_0x2406('0x55'),_0x2406('0x59'),_0x2406('0x5a'),_0x2406('0x68'),_0x2406('0x5b'),'defaultLoginLogo',_0x2406('0x69'),_0x2406('0x5c')],'raw':!![]});})[_0x2406('0x19')](handleEntityNotFound(_0x3f438e,null))[_0x2406('0x19')](function(_0x1e90ce){if(_0x1e90ce){var _0x589eed=_0x1e90ce['loginLogo']&&fs[_0x2406('0x62')](path['join'](config[_0x2406('0x5e')],_0x254758,_[_0x2406('0x5f')](_0x1e90ce['loginLogo'])))?path[_0x2406('0x5d')](config[_0x2406('0x5e')],_0x254758,_[_0x2406('0x5f')](_0x1e90ce[_0x2406('0x59')])):path[_0x2406('0x5d')](config[_0x2406('0x5e')],_0x254758,_['toLower'](_0x2406('0x6a')));var _0x501a83=_0x2406('0x60')+_[_0x2406('0x65')](_0x2406('0x59'));if(_0x1e90ce[_0x501a83]||!_0x52a0bc['custom']){_0x589eed=path['join'](config['root'],_0x254758,_['toLower'](_0x2406('0x6a')));}if(!fs[_0x2406('0x62')](_0x589eed)){throw new db[(_0x2406('0x63'))][(_0x2406('0x64'))](_[_0x2406('0x65')](_0x2406('0x59'))+_0x2406('0x66'));}return _0x3f438e[_0x2406('0x6b')](_0x589eed);}})[_0x2406('0x4c')](handleError(_0x3f438e,null));};exports[_0x2406('0x6c')]=function(_0x103352,_0x44b5e1){return db['Setting'][_0x2406('0x51')]({'where':{'id':_0x103352[_0x2406('0x4e')]['id']},'attributes':['securePassword']})['then'](respondWithResult(_0x44b5e1,null))[_0x2406('0x4c')](handleError(_0x44b5e1,null));};exports[_0x2406('0x6d')]=function(_0x2f69f9,_0x1ef236,_0x1e8458){if(_0x2f69f9[_0x2406('0x53')]&&_0x2f69f9['file'][_0x2406('0x54')]){_0x2f69f9['body'][_0x2406('0x5a')]=_0x2f69f9[_0x2406('0x53')][_0x2406('0x54')];}return db[_0x2406('0x33')]['find']({'where':{'id':_0x2f69f9[_0x2406('0x4e')]['id']}})['then'](handleEntityNotFound(_0x1ef236,null))[_0x2406('0x19')](saveUpdates(_0x2f69f9[_0x2406('0x50')],null))[_0x2406('0x19')](respondWithResult(_0x1ef236,null))[_0x2406('0x4c')](handleError(_0x1ef236,null));};var utilLicense=require(_0x2406('0x13'));exports[_0x2406('0x6e')]=function(_0x220ab9,_0x12e583,_0x44667e){var _0x3c701d=_0x2406('0x57');var _0x527cab={'custom':![]};return utilLicense['getLicense']()[_0x2406('0x19')](function(_0x2dd80a){if(_0x2dd80a){_0x527cab=_0x2dd80a;}return db[_0x2406('0x33')]['find']({'where':{'id':_0x220ab9[_0x2406('0x4e')]['id']},'attributes':[_0x2406('0x55'),_0x2406('0x59'),_0x2406('0x5a'),_0x2406('0x68'),_0x2406('0x5b'),_0x2406('0x6f'),'defaultPreferred',_0x2406('0x5c')],'raw':!![]});})[_0x2406('0x19')](handleEntityNotFound(_0x12e583,null))['then'](function(_0x41eeb6){if(_0x41eeb6){var _0x1c2908=_0x41eeb6[_0x2406('0x5a')]&&fs[_0x2406('0x62')](path[_0x2406('0x5d')](config['root'],_0x3c701d,_[_0x2406('0x5f')](_0x41eeb6[_0x2406('0x5a')])))?path[_0x2406('0x5d')](config[_0x2406('0x5e')],_0x3c701d,_[_0x2406('0x5f')](_0x41eeb6[_0x2406('0x5a')])):path['join'](config[_0x2406('0x5e')],_0x3c701d,_[_0x2406('0x5f')](_0x2406('0x70')));var _0x56de9a=_0x2406('0x60')+_[_0x2406('0x65')](_0x2406('0x5a'));if(_0x41eeb6[_0x56de9a]||!_0x527cab[_0x2406('0x61')]||!_0x527cab[_0x2406('0x5a')]){_0x1c2908=path[_0x2406('0x5d')](config[_0x2406('0x5e')],_0x3c701d,_['toLower'](_0x2406('0x70')));}if(!fs[_0x2406('0x62')](_0x1c2908)){throw new db[(_0x2406('0x63'))][(_0x2406('0x64'))](_[_0x2406('0x65')](_0x2406('0x5a'))+'\x20not\x20found');}return _0x12e583[_0x2406('0x6b')](_0x1c2908);}})[_0x2406('0x4c')](handleError(_0x12e583,null));};exports[_0x2406('0x71')]=function(_0x4d9cd6,_0x540b0a,_0x148f4b){if(_0x4d9cd6['file']&&_0x4d9cd6[_0x2406('0x53')][_0x2406('0x54')]){_0x4d9cd6[_0x2406('0x50')][_0x2406('0x68')]=_0x4d9cd6[_0x2406('0x53')][_0x2406('0x54')];}return db[_0x2406('0x33')]['find']({'where':{'id':_0x4d9cd6[_0x2406('0x4e')]['id']}})[_0x2406('0x19')](handleEntityNotFound(_0x540b0a,null))[_0x2406('0x19')](saveUpdates(_0x4d9cd6[_0x2406('0x50')],null))[_0x2406('0x19')](respondWithResult(_0x540b0a,null))['catch'](handleError(_0x540b0a,null));};var utilLicense=require('../../config/license/util');exports[_0x2406('0x72')]=function(_0x150c8c,_0x2e0c10,_0x423fdc){var _0x8d2e88=_0x2406('0x57');var _0x3b7bb0={'custom':![]};return utilLicense[_0x2406('0x58')]()[_0x2406('0x19')](function(_0x1a8a09){if(_0x1a8a09){_0x3b7bb0=_0x1a8a09;}return db[_0x2406('0x33')][_0x2406('0x51')]({'where':{'id':_0x150c8c['params']['id']},'attributes':[_0x2406('0x55'),_0x2406('0x59'),_0x2406('0x5a'),'favicon',_0x2406('0x5b'),_0x2406('0x6f'),_0x2406('0x69'),'defaultFavicon'],'raw':!![]});})[_0x2406('0x19')](handleEntityNotFound(_0x2e0c10,null))[_0x2406('0x19')](function(_0x442ec3){if(_0x442ec3){var _0x2fd52e=_0x442ec3[_0x2406('0x68')]&&fs['existsSync'](path['join'](config[_0x2406('0x5e')],_0x8d2e88,_[_0x2406('0x5f')](_0x442ec3[_0x2406('0x68')])))?path['join'](config[_0x2406('0x5e')],_0x8d2e88,_[_0x2406('0x5f')](_0x442ec3[_0x2406('0x68')])):path[_0x2406('0x5d')](config[_0x2406('0x5e')],_0x8d2e88,_[_0x2406('0x5f')]('default_favicon.ico'));var _0x4b7b8b=_0x2406('0x60')+_[_0x2406('0x65')]('favicon');if(_0x442ec3[_0x4b7b8b]||!_0x3b7bb0['custom']){_0x2fd52e=path[_0x2406('0x5d')](config['root'],_0x8d2e88,_[_0x2406('0x5f')](_0x2406('0x73')));}if(!fs['existsSync'](_0x2fd52e)){throw new db[(_0x2406('0x63'))][(_0x2406('0x64'))](_[_0x2406('0x65')](_0x2406('0x68'))+_0x2406('0x66'));}return _0x2e0c10[_0x2406('0x6b')](_0x2fd52e);}})[_0x2406('0x4c')](handleError(_0x2e0c10,null));};exports[_0x2406('0x74')]=function(_0x5ad5ad,_0xf2851){var _0x5a47bc={'offset':moment()[_0x2406('0x75')]()};_0x5a47bc[_0x2406('0x76')]=moment()['utcOffset'](_0x5a47bc[_0x2406('0x24')])[_0x2406('0x77')](_0x2406('0x78'));return _0xf2851[_0x2406('0x21')](0xc8)[_0x2406('0x79')](_0x5a47bc);};