167833f63a2dbe1ddb58ce8528a70c60351d2f07
[motion2.git] / server / api / dashboard / dashboard.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 _0x28bd=['sox','to-csv','fs-extra','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/utils','../../config/environment','../../mysqldb','defaults','localhost','socket.io-emitter','./dashboard.socket','register','sendStatus','status','end','json','undefined','limit','count','offset','set','Content-Range','apply','reject','save','update','then','destroy','get','CustomDashboards','UserProfileResource','name','send','index','map','Dashboard','rawAttributes','fieldName','type','key','model','keys','query','filters','attributes','intersection','fields','nolimit','order','sort','where','pick','merge','VIRTUAL','options','includeAll','findAll','catch','show','params','length','include','find','create','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','userProfileId','error','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','clone','createdAt','omit','autoAssociation','iframe','attrUrl','attrs','value','https://','custom','attrPath','clock','attrHourFormat','attrTimezone','0.00','attrFontSize','counter','attrMetric','attrVoiceQueues','attrChannel','voice','attrEmailAccounts','attrFaxAccounts','attrSmsAccounts','attrOpenchannelAccounts','attrWhatsappAccounts','attrChatWebsites','multibar-chart','attrSerie1','total','attrSerie2','attrSerie3','web-report','attrReport','reportType','attrRefresh','widgetAttributes:\x20%s','DashboardId','DashboardItem','getItems','findOne','filter','hasOwnProperty','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path'];(function(_0x5f5282,_0x225bfe){var _0xd5e782=function(_0x5603fd){while(--_0x5603fd){_0x5f5282['push'](_0x5f5282['shift']());}};_0xd5e782(++_0x225bfe);}(_0x28bd,0x108));var _0xd28b=function(_0x5a4825,_0x27644a){_0x5a4825=_0x5a4825-0x0;var _0x9f2654=_0x28bd[_0x5a4825];return _0x9f2654;};'use strict';var emlformat=require(_0xd28b('0x0'));var rimraf=require(_0xd28b('0x1'));var zipdir=require(_0xd28b('0x2'));var jsonpatch=require(_0xd28b('0x3'));var rp=require(_0xd28b('0x4'));var moment=require(_0xd28b('0x5'));var BPromise=require(_0xd28b('0x6'));var Mustache=require(_0xd28b('0x7'));var util=require(_0xd28b('0x8'));var path=require(_0xd28b('0x9'));var sox=require(_0xd28b('0xa'));var csv=require(_0xd28b('0xb'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0xd28b('0xc'));var _=require(_0xd28b('0xd'));var squel=require(_0xd28b('0xe'));var crypto=require(_0xd28b('0xf'));var jsforce=require(_0xd28b('0x10'));var deskjs=require(_0xd28b('0x11'));var toCsv=require('to-csv');var querystring=require(_0xd28b('0x12'));var Papa=require(_0xd28b('0x13'));var Redis=require(_0xd28b('0x14'));var authService=require(_0xd28b('0x15'));var qs=require(_0xd28b('0x16'));var as=require(_0xd28b('0x17'));var hardwareService=require(_0xd28b('0x18'));var logger=require('../../config/logger')(_0xd28b('0x19'));var utils=require(_0xd28b('0x1a'));var config=require(_0xd28b('0x1b'));var licenseUtil=require('../../config/license/util');var db=require(_0xd28b('0x1c'))['db'];config['redis']=_[_0xd28b('0x1d')](config['redis'],{'host':_0xd28b('0x1e'),'port':0x18eb});var socket=require(_0xd28b('0x1f'))(new Redis(config['redis']));require(_0xd28b('0x20'))[_0xd28b('0x21')](socket);function respondWithStatusCode(_0x2a2cce,_0x12ab4d){_0x12ab4d=_0x12ab4d||0xcc;return function(_0x38762b){if(_0x38762b){return _0x2a2cce[_0xd28b('0x22')](_0x12ab4d);}return _0x2a2cce[_0xd28b('0x23')](_0x12ab4d)[_0xd28b('0x24')]();};}function respondWithResult(_0x92e9e6,_0x210e83){_0x210e83=_0x210e83||0xc8;return function(_0x45db22){if(_0x45db22){return _0x92e9e6['status'](_0x210e83)[_0xd28b('0x25')](_0x45db22);}};}function respondWithFilteredResult(_0x2a0d77,_0x229979){return function(_0x3cddad){if(_0x3cddad){var _0x407e03=typeof _0x229979['offset']===_0xd28b('0x26')&&typeof _0x229979[_0xd28b('0x27')]===_0xd28b('0x26');var _0x290c27=_0x3cddad[_0xd28b('0x28')];var _0x38273d=_0x407e03?0x0:_0x229979[_0xd28b('0x29')];var _0x161351=_0x407e03?_0x3cddad[_0xd28b('0x28')]:_0x229979[_0xd28b('0x29')]+_0x229979[_0xd28b('0x27')];var _0x408dc1;if(_0x161351>=_0x290c27){_0x161351=_0x290c27;_0x408dc1=0xc8;}else{_0x408dc1=0xce;}_0x2a0d77[_0xd28b('0x23')](_0x408dc1);return _0x2a0d77[_0xd28b('0x2a')](_0xd28b('0x2b'),_0x38273d+'-'+_0x161351+'/'+_0x290c27)[_0xd28b('0x25')](_0x3cddad);}return null;};}function patchUpdates(_0x52e703){return function(_0x40d424){try{jsonpatch[_0xd28b('0x2c')](_0x40d424,_0x52e703,!![]);}catch(_0x2b91c0){return BPromise[_0xd28b('0x2d')](_0x2b91c0);}return _0x40d424[_0xd28b('0x2e')]();};}function saveUpdates(_0xbb5b67,_0x46ffdf){return function(_0xfc8602){if(_0xfc8602){return _0xfc8602[_0xd28b('0x2f')](_0xbb5b67)[_0xd28b('0x30')](function(_0x57949d){return _0x57949d;});}return null;};}function removeEntity(_0x2aee89,_0x1a5b5a){return function(_0x5eca36){if(_0x5eca36){return _0x5eca36[_0xd28b('0x31')]()[_0xd28b('0x30')](function(){var _0x3864d2=_0x5eca36[_0xd28b('0x32')]({'plain':!![]});var _0x5bb112=_0xd28b('0x33');return db[_0xd28b('0x34')][_0xd28b('0x31')]({'where':{'type':_0x5bb112,'resourceId':_0x3864d2['id']}})['then'](function(){return _0x5eca36;});})['then'](function(){_0x2aee89[_0xd28b('0x23')](0xcc)[_0xd28b('0x24')]();});}};}function handleEntityNotFound(_0x479a0e,_0x407b06){return function(_0x264eaf){if(!_0x264eaf){_0x479a0e['sendStatus'](0x194);}return _0x264eaf;};}function handleError(_0x4dc20c,_0x30a981){_0x30a981=_0x30a981||0x1f4;return function(_0x4cfbf1){logger['error'](_0x4cfbf1['stack']);if(_0x4cfbf1[_0xd28b('0x35')]){delete _0x4cfbf1[_0xd28b('0x35')];}_0x4dc20c[_0xd28b('0x23')](_0x30a981)[_0xd28b('0x36')](_0x4cfbf1);};}exports[_0xd28b('0x37')]=function(_0x22c169,_0x368808){var _0x3d5614={},_0x126468={},_0x64f27d={'count':0x0,'rows':[]};var _0x546dcf=_[_0xd28b('0x38')](db[_0xd28b('0x39')][_0xd28b('0x3a')],function(_0x16dd4c){return{'name':_0x16dd4c[_0xd28b('0x3b')],'type':_0x16dd4c[_0xd28b('0x3c')][_0xd28b('0x3d')]};});_0x126468[_0xd28b('0x3e')]=_[_0xd28b('0x38')](_0x546dcf,_0xd28b('0x35'));_0x126468['query']=_[_0xd28b('0x3f')](_0x22c169[_0xd28b('0x40')]);_0x126468[_0xd28b('0x41')]=_['intersection'](_0x126468[_0xd28b('0x3e')],_0x126468[_0xd28b('0x40')]);_0x3d5614[_0xd28b('0x42')]=_[_0xd28b('0x43')](_0x126468[_0xd28b('0x3e')],qs[_0xd28b('0x44')](_0x22c169[_0xd28b('0x40')][_0xd28b('0x44')]));_0x3d5614[_0xd28b('0x42')]=_0x3d5614['attributes']['length']?_0x3d5614['attributes']:_0x126468[_0xd28b('0x3e')];if(!_0x22c169[_0xd28b('0x40')]['hasOwnProperty'](_0xd28b('0x45'))){_0x3d5614[_0xd28b('0x27')]=qs[_0xd28b('0x27')](_0x22c169[_0xd28b('0x40')][_0xd28b('0x27')]);_0x3d5614['offset']=qs[_0xd28b('0x29')](_0x22c169[_0xd28b('0x40')]['offset']);}_0x3d5614[_0xd28b('0x46')]=qs[_0xd28b('0x47')](_0x22c169['query']['sort']);_0x3d5614[_0xd28b('0x48')]=qs[_0xd28b('0x41')](_[_0xd28b('0x49')](_0x22c169[_0xd28b('0x40')],_0x126468[_0xd28b('0x41')]),_0x546dcf);if(_0x22c169[_0xd28b('0x40')]['filter']){_0x3d5614['where']=_[_0xd28b('0x4a')](_0x3d5614[_0xd28b('0x48')],{'$or':_[_0xd28b('0x38')](_0x546dcf,function(_0x51b6a7){if(_0x51b6a7[_0xd28b('0x3c')]!==_0xd28b('0x4b')){var _0x39e393={};_0x39e393[_0x51b6a7['name']]={'$like':'%'+_0x22c169['query']['filter']+'%'};return _0x39e393;}})});}_0x3d5614=_[_0xd28b('0x4a')]({},_0x3d5614,_0x22c169[_0xd28b('0x4c')]);var _0x38b36a={'where':_0x3d5614[_0xd28b('0x48')]};return db[_0xd28b('0x39')][_0xd28b('0x28')](_0x38b36a)[_0xd28b('0x30')](function(_0xfa32d1){_0x64f27d[_0xd28b('0x28')]=_0xfa32d1;if(_0x22c169[_0xd28b('0x40')][_0xd28b('0x4d')]){_0x3d5614['include']=[{'all':!![]}];}return db[_0xd28b('0x39')][_0xd28b('0x4e')](_0x3d5614);})[_0xd28b('0x30')](function(_0xe4f219){_0x64f27d['rows']=_0xe4f219;return _0x64f27d;})[_0xd28b('0x30')](respondWithFilteredResult(_0x368808,_0x3d5614))[_0xd28b('0x4f')](handleError(_0x368808,null));};exports[_0xd28b('0x50')]=function(_0x42bc2c,_0x201fb5){var _0x744ccb={'raw':![],'where':{'id':_0x42bc2c[_0xd28b('0x51')]['id']}},_0x58b008={};_0x58b008['model']=_[_0xd28b('0x3f')](db['Dashboard'][_0xd28b('0x3a')]);_0x58b008[_0xd28b('0x40')]=_[_0xd28b('0x3f')](_0x42bc2c[_0xd28b('0x40')]);_0x58b008[_0xd28b('0x41')]=_['intersection'](_0x58b008['model'],_0x58b008[_0xd28b('0x40')]);_0x744ccb['attributes']=_[_0xd28b('0x43')](_0x58b008['model'],qs[_0xd28b('0x44')](_0x42bc2c[_0xd28b('0x40')][_0xd28b('0x44')]));_0x744ccb[_0xd28b('0x42')]=_0x744ccb['attributes'][_0xd28b('0x52')]?_0x744ccb['attributes']:_0x58b008[_0xd28b('0x3e')];if(_0x42bc2c[_0xd28b('0x40')][_0xd28b('0x4d')]){_0x744ccb[_0xd28b('0x53')]=[{'all':!![]}];}_0x744ccb=_[_0xd28b('0x4a')]({},_0x744ccb,_0x42bc2c['options']);return db['Dashboard'][_0xd28b('0x54')](_0x744ccb)[_0xd28b('0x30')](handleEntityNotFound(_0x201fb5,null))[_0xd28b('0x30')](respondWithResult(_0x201fb5,null))[_0xd28b('0x4f')](handleError(_0x201fb5,null));};exports['create']=function(_0xd018b6,_0x5693b8){return db[_0xd28b('0x39')][_0xd28b('0x55')](_0xd018b6[_0xd28b('0x56')],{})['then'](function(_0x37cf05){var _0x19c77d=_0xd018b6[_0xd28b('0x57')][_0xd28b('0x32')]({'plain':!![]});if(!_0x19c77d)throw new Error(_0xd28b('0x58'));if(_0x19c77d[_0xd28b('0x59')]===_0xd28b('0x57')){var _0x2a95b8=_0x37cf05[_0xd28b('0x32')]({'plain':!![]});var _0x19abaa=_0xd28b('0x33');return db[_0xd28b('0x5a')][_0xd28b('0x54')]({'where':{'name':_0x19abaa,'userProfileId':_0x19c77d[_0xd28b('0x5b')]},'raw':!![]})['then'](function(_0x5a73f0){if(_0x5a73f0&&_0x5a73f0['autoAssociation']===0x0){return db[_0xd28b('0x34')]['create']({'name':_0x2a95b8['name'],'resourceId':_0x2a95b8['id'],'type':_0x5a73f0[_0xd28b('0x35')],'sectionId':_0x5a73f0['id']},{})[_0xd28b('0x30')](function(){return _0x37cf05;});}else{return _0x37cf05;}})[_0xd28b('0x4f')](function(_0x3a3d8d){logger[_0xd28b('0x5c')](_0xd28b('0x5d'),_0x3a3d8d);throw _0x3a3d8d;});}return _0x37cf05;})[_0xd28b('0x30')](respondWithResult(_0x5693b8,0xc9))[_0xd28b('0x4f')](handleError(_0x5693b8,null));};exports[_0xd28b('0x5e')]=function(_0x67fab,_0xddc5fb){var _0xdf7ff0={'where':{'id':_0x67fab['params']['id']}},_0x54c4e7={};_0x54c4e7[_0xd28b('0x3e')]=_[_0xd28b('0x3f')](db[_0xd28b('0x39')][_0xd28b('0x3a')]);_0xdf7ff0[_0xd28b('0x42')]=_[_0xd28b('0x43')](_0x54c4e7['model'],qs[_0xd28b('0x44')](_0x67fab[_0xd28b('0x40')][_0xd28b('0x44')]));_0xdf7ff0[_0xd28b('0x42')]=_0xdf7ff0[_0xd28b('0x42')][_0xd28b('0x52')]?_0xdf7ff0[_0xd28b('0x42')]:_0x54c4e7['model'];if(_0x67fab[_0xd28b('0x40')][_0xd28b('0x4d')]){_0xdf7ff0[_0xd28b('0x53')]=[{'all':!![]}];}_0xdf7ff0=_[_0xd28b('0x4a')]({},_0xdf7ff0,_0x67fab[_0xd28b('0x4c')]);return db[_0xd28b('0x39')][_0xd28b('0x54')](_0xdf7ff0)[_0xd28b('0x30')](handleEntityNotFound(_0xddc5fb,null))['then'](function(_0x581f05){if(_0x581f05){var _0x5b7535=_0x581f05['get']({'plain':!![]});_0x5b7535=qs['omit'](_0x5b7535,['id',_0xd28b('0x5f'),'updatedAt']);_0x67fab[_0xd28b('0x56')]=_[_0xd28b('0x60')](_0x67fab['body'],['id',_0xd28b('0x5f'),'updatedAt']);return db[_0xd28b('0x39')][_0xd28b('0x55')](_[_0xd28b('0x4a')](_0x5b7535,_0x67fab[_0xd28b('0x56')]),{'include':_0x67fab[_0xd28b('0x40')][_0xd28b('0x4d')]?[{'all':!![]}]:undefined})[_0xd28b('0x30')](function(_0x1ffd0c){var _0x365334=_0x67fab[_0xd28b('0x57')][_0xd28b('0x32')]({'plain':!![]});if(!_0x365334)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x365334[_0xd28b('0x59')]===_0xd28b('0x57')){var _0x4c0862=_0x1ffd0c[_0xd28b('0x32')]({'plain':!![]});var _0x45862f=_0xd28b('0x33');return db[_0xd28b('0x5a')][_0xd28b('0x54')]({'where':{'name':_0x45862f,'userProfileId':_0x365334['userProfileId']},'raw':!![]})[_0xd28b('0x30')](function(_0x5dbfba){if(_0x5dbfba&&_0x5dbfba[_0xd28b('0x61')]===0x0){return db['UserProfileResource']['create']({'name':_0x4c0862['name'],'resourceId':_0x4c0862['id'],'type':_0x5dbfba[_0xd28b('0x35')],'sectionId':_0x5dbfba['id']},{})[_0xd28b('0x30')](function(){return _0x1ffd0c;});}else{return _0x1ffd0c;}})['catch'](function(_0x17bb8b){logger[_0xd28b('0x5c')](_0xd28b('0x5d'),_0x17bb8b);throw _0x17bb8b;});}return _0x1ffd0c;});}})[_0xd28b('0x30')](respondWithResult(_0xddc5fb,0xc9))[_0xd28b('0x4f')](handleError(_0xddc5fb,null));};exports[_0xd28b('0x2f')]=function(_0x4124b6,_0x304c94){if(_0x4124b6[_0xd28b('0x56')]['id']){delete _0x4124b6[_0xd28b('0x56')]['id'];}return db['Dashboard'][_0xd28b('0x54')]({'where':{'id':_0x4124b6[_0xd28b('0x51')]['id']}})[_0xd28b('0x30')](handleEntityNotFound(_0x304c94,null))[_0xd28b('0x30')](saveUpdates(_0x4124b6['body'],null))[_0xd28b('0x30')](respondWithResult(_0x304c94,null))[_0xd28b('0x4f')](handleError(_0x304c94,null));};exports[_0xd28b('0x31')]=function(_0x57d7e3,_0x5852a7){return db[_0xd28b('0x39')]['find']({'where':{'id':_0x57d7e3['params']['id']}})[_0xd28b('0x30')](handleEntityNotFound(_0x5852a7,null))[_0xd28b('0x30')](removeEntity(_0x5852a7,null))['catch'](handleError(_0x5852a7,null));};function widgetAttributes(_0x2558f1){try{switch(_0x2558f1[_0xd28b('0x3c')]){case _0xd28b('0x62'):return[{'name':_0xd28b('0x63'),'value':_0x2558f1[_0xd28b('0x63')]||(_0x2558f1[_0xd28b('0x64')]&&_0x2558f1[_0xd28b('0x64')][0x0]?_0x2558f1[_0xd28b('0x64')][0x0][_0xd28b('0x65')]:undefined)||_0xd28b('0x66')}];case _0xd28b('0x67'):return[{'name':_0xd28b('0x68'),'value':_0x2558f1['attrPath']||(_0x2558f1['attrs']&&_0x2558f1['attrs'][0x0]?_0x2558f1[_0xd28b('0x64')][0x0]['value']:undefined)||''}];case _0xd28b('0x69'):return[{'name':_0xd28b('0x6a'),'value':_0x2558f1[_0xd28b('0x6a')]||(_0x2558f1[_0xd28b('0x64')]&&_0x2558f1[_0xd28b('0x64')][0x0]?_0x2558f1[_0xd28b('0x64')][0x0][_0xd28b('0x65')]:undefined)||'HH:mm:ss'},{'name':_0xd28b('0x6b'),'value':_0x2558f1['attrTimezone']||(_0x2558f1['attrs']&&_0x2558f1['attrs'][0x1]?_0x2558f1[_0xd28b('0x64')][0x1][_0xd28b('0x65')]:undefined)||_0xd28b('0x6c')},{'name':_0xd28b('0x6d'),'value':_0x2558f1[_0xd28b('0x6d')]||(_0x2558f1[_0xd28b('0x64')]&&_0x2558f1[_0xd28b('0x64')][0x2]?_0x2558f1['attrs'][0x2][_0xd28b('0x65')]:undefined)||0xc}];case _0xd28b('0x6e'):return[{'name':_0xd28b('0x6f'),'value':_0x2558f1[_0xd28b('0x6f')]||(_0x2558f1[_0xd28b('0x64')]&&_0x2558f1[_0xd28b('0x64')][0x0]?_0x2558f1[_0xd28b('0x64')][0x0][_0xd28b('0x65')]:undefined)||'total'},{'name':'attrVoiceQueues','value':_0x2558f1[_0xd28b('0x70')]||(_0x2558f1[_0xd28b('0x64')]&&_0x2558f1[_0xd28b('0x64')][0x1]?_0x2558f1[_0xd28b('0x64')][0x1][_0xd28b('0x65')]:undefined)||[]},{'name':_0xd28b('0x6d'),'value':_0x2558f1[_0xd28b('0x6d')]||(_0x2558f1[_0xd28b('0x64')]&&_0x2558f1[_0xd28b('0x64')][0x2]?_0x2558f1[_0xd28b('0x64')][0x2][_0xd28b('0x65')]:undefined)||0x14},{'name':_0xd28b('0x71'),'value':_0x2558f1[_0xd28b('0x71')]||(_0x2558f1[_0xd28b('0x64')]&&_0x2558f1[_0xd28b('0x64')][0x3]?_0x2558f1[_0xd28b('0x64')][0x3]['value']:undefined)||_0xd28b('0x72')},{'name':'attrEmailAccounts','value':_0x2558f1[_0xd28b('0x73')]||(_0x2558f1[_0xd28b('0x64')]&&_0x2558f1[_0xd28b('0x64')][0x4]?_0x2558f1[_0xd28b('0x64')][0x4][_0xd28b('0x65')]:undefined)||''},{'name':'attrFaxAccounts','value':_0x2558f1[_0xd28b('0x74')]||(_0x2558f1[_0xd28b('0x64')]&&_0x2558f1[_0xd28b('0x64')][0x5]?_0x2558f1['attrs'][0x5][_0xd28b('0x65')]:undefined)||''},{'name':_0xd28b('0x75'),'value':_0x2558f1['attrSmsAccounts']||(_0x2558f1[_0xd28b('0x64')]&&_0x2558f1[_0xd28b('0x64')][0x6]?_0x2558f1[_0xd28b('0x64')][0x6][_0xd28b('0x65')]:undefined)||''},{'name':_0xd28b('0x76'),'value':_0x2558f1['attrOpenchannelAccounts']||(_0x2558f1[_0xd28b('0x64')]&&_0x2558f1[_0xd28b('0x64')][0x7]?_0x2558f1[_0xd28b('0x64')][0x7]['value']:undefined)||''},{'name':_0xd28b('0x77'),'value':_0x2558f1['attrWhatsappAccounts']||(_0x2558f1[_0xd28b('0x64')]&&_0x2558f1[_0xd28b('0x64')][0x8]?_0x2558f1[_0xd28b('0x64')][0x8][_0xd28b('0x65')]:undefined)||''},{'name':_0xd28b('0x78'),'value':_0x2558f1['attrChatWebsites']||(_0x2558f1['attrs']&&_0x2558f1[_0xd28b('0x64')][0x9]?_0x2558f1[_0xd28b('0x64')][0x9][_0xd28b('0x65')]:undefined)||''}];case _0xd28b('0x79'):case'pie-chart':return[{'name':_0xd28b('0x7a'),'value':_0x2558f1[_0xd28b('0x7a')]||(_0x2558f1[_0xd28b('0x64')]&&_0x2558f1[_0xd28b('0x64')][0x0]?_0x2558f1['attrs'][0x0]['value']:undefined)||_0xd28b('0x7b')},{'name':_0xd28b('0x7c'),'value':_0x2558f1[_0xd28b('0x7c')]||(_0x2558f1[_0xd28b('0x64')]&&_0x2558f1[_0xd28b('0x64')][0x1]?_0x2558f1[_0xd28b('0x64')][0x1]['value']:undefined)||null},{'name':_0xd28b('0x7d'),'value':_0x2558f1[_0xd28b('0x7d')]||(_0x2558f1[_0xd28b('0x64')]&&_0x2558f1['attrs'][0x2]?_0x2558f1['attrs'][0x2][_0xd28b('0x65')]:undefined)||null},{'name':_0xd28b('0x70'),'value':_0x2558f1[_0xd28b('0x70')]||(_0x2558f1[_0xd28b('0x64')]&&_0x2558f1[_0xd28b('0x64')][0x3]?_0x2558f1['attrs'][0x3]['value']:undefined)||[]},{'name':'attrChannel','value':_0x2558f1['attrChannel']||(_0x2558f1[_0xd28b('0x64')]&&_0x2558f1[_0xd28b('0x64')][0x4]?_0x2558f1[_0xd28b('0x64')][0x4]['value']:undefined)||'voice'},{'name':_0xd28b('0x73'),'value':_0x2558f1['attrEmailAccounts']||(_0x2558f1[_0xd28b('0x64')]&&_0x2558f1['attrs'][0x5]?_0x2558f1[_0xd28b('0x64')][0x5][_0xd28b('0x65')]:undefined)||''},{'name':'attrFaxAccounts','value':_0x2558f1[_0xd28b('0x74')]||(_0x2558f1[_0xd28b('0x64')]&&_0x2558f1[_0xd28b('0x64')][0x6]?_0x2558f1[_0xd28b('0x64')][0x6]['value']:undefined)||''},{'name':'attrSmsAccounts','value':_0x2558f1['attrSmsAccounts']||(_0x2558f1['attrs']&&_0x2558f1['attrs'][0x7]?_0x2558f1['attrs'][0x7][_0xd28b('0x65')]:undefined)||''},{'name':'attrOpenchannelAccounts','value':_0x2558f1[_0xd28b('0x76')]||(_0x2558f1[_0xd28b('0x64')]&&_0x2558f1[_0xd28b('0x64')][0x8]?_0x2558f1[_0xd28b('0x64')][0x8]['value']:undefined)||''},{'name':_0xd28b('0x77'),'value':_0x2558f1['attrWhatsappAccounts']||(_0x2558f1[_0xd28b('0x64')]&&_0x2558f1[_0xd28b('0x64')][0x9]?_0x2558f1[_0xd28b('0x64')][0x9]['value']:undefined)||''},{'name':_0xd28b('0x78'),'value':_0x2558f1['attrChatWebsites']||(_0x2558f1[_0xd28b('0x64')]&&_0x2558f1[_0xd28b('0x64')][0xa]?_0x2558f1[_0xd28b('0x64')][0xa][_0xd28b('0x65')]:undefined)||''}];case _0xd28b('0x7e'):return[{'name':_0xd28b('0x7f'),'type':_0x2558f1[_0xd28b('0x80')]||(_0x2558f1[_0xd28b('0x64')]&&_0x2558f1[_0xd28b('0x64')][0x0]?_0x2558f1['attrs'][0x0]['type']:undefined)||null,'value':_0x2558f1[_0xd28b('0x7f')]||(_0x2558f1['attrs']&&_0x2558f1[_0xd28b('0x64')][0x0]?_0x2558f1[_0xd28b('0x64')][0x0][_0xd28b('0x65')]:undefined)||null},{'name':_0xd28b('0x81'),'value':_0x2558f1[_0xd28b('0x81')]||(_0x2558f1[_0xd28b('0x64')]&&_0x2558f1[_0xd28b('0x64')][0x1]?_0x2558f1[_0xd28b('0x64')][0x1][_0xd28b('0x65')]:undefined)||0x0}];default:return[];}}catch(_0x660185){logger['error'](_0xd28b('0x82'),JSON['stringify'](_0x660185));return[];}}exports['addItem']=function(_0x11d73d,_0x53e343,_0x27a9f2){if(_0x11d73d[_0xd28b('0x56')]['id']){delete _0x11d73d['body']['id'];}return db[_0xd28b('0x39')][_0xd28b('0x54')]({'where':{'id':_0x11d73d[_0xd28b('0x51')]['id']}})[_0xd28b('0x30')](handleEntityNotFound(_0x53e343,null))[_0xd28b('0x30')](function(_0x4b749d){if(_0x4b749d){_0x11d73d[_0xd28b('0x56')][_0xd28b('0x83')]=_0x4b749d['id'];_0x11d73d[_0xd28b('0x56')][_0xd28b('0x64')]=widgetAttributes(_0x11d73d[_0xd28b('0x56')]);return db[_0xd28b('0x84')]['create'](_0x11d73d[_0xd28b('0x56')]);}})['then'](respondWithResult(_0x53e343,null))[_0xd28b('0x4f')](handleError(_0x53e343,null));};exports[_0xd28b('0x85')]=function(_0x583a41,_0x35501c,_0x3a1ea0){var _0x5c6acf={};var _0x52304a={};var _0x11b74e;var _0x29ce7b;return db[_0xd28b('0x39')][_0xd28b('0x86')]({'where':{'id':_0x583a41[_0xd28b('0x51')]['id']}})[_0xd28b('0x30')](handleEntityNotFound(_0x35501c,null))[_0xd28b('0x30')](function(_0x436320){if(_0x436320){_0x11b74e=_0x436320;_0x52304a[_0xd28b('0x3e')]=_[_0xd28b('0x3f')](db[_0xd28b('0x84')][_0xd28b('0x3a')]);_0x52304a[_0xd28b('0x40')]=_[_0xd28b('0x3f')](_0x583a41['query']);_0x52304a[_0xd28b('0x41')]=_['intersection'](_0x52304a[_0xd28b('0x3e')],_0x52304a['query']);_0x5c6acf[_0xd28b('0x42')]=_[_0xd28b('0x43')](_0x52304a[_0xd28b('0x3e')],qs[_0xd28b('0x44')](_0x583a41['query'][_0xd28b('0x44')]));_0x5c6acf[_0xd28b('0x42')]=_0x5c6acf[_0xd28b('0x42')][_0xd28b('0x52')]?_0x5c6acf['attributes']:_0x52304a[_0xd28b('0x3e')];_0x5c6acf[_0xd28b('0x46')]=qs[_0xd28b('0x47')](_0x583a41['query']['sort']);_0x5c6acf['where']=qs[_0xd28b('0x41')](_[_0xd28b('0x49')](_0x583a41['query'],_0x52304a[_0xd28b('0x41')]));if(_0x583a41[_0xd28b('0x40')][_0xd28b('0x87')]){_0x5c6acf[_0xd28b('0x48')]=_['merge'](_0x5c6acf[_0xd28b('0x48')],{'$or':_[_0xd28b('0x38')](_0x5c6acf['attributes'],function(_0x15eef){var _0x346bde={};_0x346bde[_0x15eef]={'$like':'%'+_0x583a41[_0xd28b('0x40')][_0xd28b('0x87')]+'%'};return _0x346bde;})});}_0x5c6acf=_[_0xd28b('0x4a')]({},_0x5c6acf,_0x583a41[_0xd28b('0x4c')]);return _0x11b74e[_0xd28b('0x85')](_0x5c6acf);}})[_0xd28b('0x30')](function(_0x5d4330){if(_0x5d4330){_0x29ce7b=_0x5d4330[_0xd28b('0x52')];if(!_0x583a41[_0xd28b('0x40')][_0xd28b('0x88')]('nolimit')){_0x5c6acf[_0xd28b('0x27')]=qs[_0xd28b('0x27')](_0x583a41[_0xd28b('0x40')][_0xd28b('0x27')]);_0x5c6acf[_0xd28b('0x29')]=qs[_0xd28b('0x29')](_0x583a41[_0xd28b('0x40')][_0xd28b('0x29')]);}return _0x11b74e[_0xd28b('0x85')](_0x5c6acf);}})[_0xd28b('0x30')](function(_0x320fa8){if(_0x320fa8){return _0x320fa8?{'count':_0x29ce7b,'rows':_0x320fa8}:null;}})['then'](respondWithResult(_0x35501c,null))[_0xd28b('0x4f')](handleError(_0x35501c,null));};