Built motion from commit 19a84241.|2.5.34
[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 _0xa89a=['model','query','attributes','fields','length','nolimit','order','sort','where','filter','merge','options','include','rows','show','params','includeAll','find','create','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','userProfileId','autoAssociation','catch','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','clone','get','createdAt','updatedAt','omit','iframe','attrUrl','attrs','https://','custom','attrPath','value','clock','attrHourFormat','HH:mm:ss','0.00','attrFontSize','counter','attrMetric','attrVoiceQueues','multibar-chart','pie-chart','attrSerie1','attrSerie2','attrSerie3','web-report','attrReport','reportType','attrRefresh','widgetAttributes:\x20%s','stringify','addItem','DashboardId','DashboardItem','getItems','findOne','pick','hasOwnProperty','eml-format','rimraf','zip-dir','fast-json-patch','bluebird','mustache','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','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','redis','defaults','localhost','socket.io-emitter','./dashboard.socket','register','sendStatus','status','end','json','offset','undefined','limit','set','apply','reject','save','update','then','destroy','CustomDashboards','UserProfileResource','error','name','send','map','Dashboard','rawAttributes','fieldName','type','key','keys','filters','intersection'];(function(_0x5d72da,_0xb7ce32){var _0x43ebe7=function(_0x503755){while(--_0x503755){_0x5d72da['push'](_0x5d72da['shift']());}};_0x43ebe7(++_0xb7ce32);}(_0xa89a,0x142));var _0xaa89=function(_0x465a0c,_0x19d4d5){_0x465a0c=_0x465a0c-0x0;var _0x1e202e=_0xa89a[_0x465a0c];return _0x1e202e;};'use strict';var emlformat=require(_0xaa89('0x0'));var rimraf=require(_0xaa89('0x1'));var zipdir=require(_0xaa89('0x2'));var jsonpatch=require(_0xaa89('0x3'));var rp=require('request-promise');var moment=require('moment');var BPromise=require(_0xaa89('0x4'));var Mustache=require(_0xaa89('0x5'));var util=require(_0xaa89('0x6'));var path=require(_0xaa89('0x7'));var sox=require(_0xaa89('0x8'));var csv=require(_0xaa89('0x9'));var ejs=require(_0xaa89('0xa'));var fs=require('fs');var fs_extra=require(_0xaa89('0xb'));var _=require(_0xaa89('0xc'));var squel=require(_0xaa89('0xd'));var crypto=require(_0xaa89('0xe'));var jsforce=require(_0xaa89('0xf'));var deskjs=require(_0xaa89('0x10'));var toCsv=require(_0xaa89('0x9'));var querystring=require(_0xaa89('0x11'));var Papa=require('papaparse');var Redis=require(_0xaa89('0x12'));var authService=require('../../components/auth/service');var qs=require(_0xaa89('0x13'));var as=require(_0xaa89('0x14'));var hardwareService=require(_0xaa89('0x15'));var logger=require(_0xaa89('0x16'))(_0xaa89('0x17'));var utils=require(_0xaa89('0x18'));var config=require(_0xaa89('0x19'));var licenseUtil=require(_0xaa89('0x1a'));var db=require(_0xaa89('0x1b'))['db'];config[_0xaa89('0x1c')]=_[_0xaa89('0x1d')](config[_0xaa89('0x1c')],{'host':_0xaa89('0x1e'),'port':0x18eb});var socket=require(_0xaa89('0x1f'))(new Redis(config[_0xaa89('0x1c')]));require(_0xaa89('0x20'))[_0xaa89('0x21')](socket);function respondWithStatusCode(_0x23e30f,_0x33c971){_0x33c971=_0x33c971||0xcc;return function(_0x6ae4d0){if(_0x6ae4d0){return _0x23e30f[_0xaa89('0x22')](_0x33c971);}return _0x23e30f[_0xaa89('0x23')](_0x33c971)[_0xaa89('0x24')]();};}function respondWithResult(_0x232a44,_0x1ac44d){_0x1ac44d=_0x1ac44d||0xc8;return function(_0x2f6f43){if(_0x2f6f43){return _0x232a44[_0xaa89('0x23')](_0x1ac44d)[_0xaa89('0x25')](_0x2f6f43);}};}function respondWithFilteredResult(_0x1b2b8b,_0xa750cb){return function(_0x569b7c){if(_0x569b7c){var _0x50b325=typeof _0xa750cb[_0xaa89('0x26')]===_0xaa89('0x27')&&typeof _0xa750cb[_0xaa89('0x28')]==='undefined';var _0x13ac28=_0x569b7c['count'];var _0x311988=_0x50b325?0x0:_0xa750cb[_0xaa89('0x26')];var _0xeb6f23=_0x50b325?_0x569b7c['count']:_0xa750cb[_0xaa89('0x26')]+_0xa750cb[_0xaa89('0x28')];var _0xf6fd8d;if(_0xeb6f23>=_0x13ac28){_0xeb6f23=_0x13ac28;_0xf6fd8d=0xc8;}else{_0xf6fd8d=0xce;}_0x1b2b8b['status'](_0xf6fd8d);return _0x1b2b8b[_0xaa89('0x29')]('Content-Range',_0x311988+'-'+_0xeb6f23+'/'+_0x13ac28)['json'](_0x569b7c);}return null;};}function patchUpdates(_0x56dd47){return function(_0x3290ab){try{jsonpatch[_0xaa89('0x2a')](_0x3290ab,_0x56dd47,!![]);}catch(_0x321325){return BPromise[_0xaa89('0x2b')](_0x321325);}return _0x3290ab[_0xaa89('0x2c')]();};}function saveUpdates(_0x31b948,_0x1895d7){return function(_0x184b8c){if(_0x184b8c){return _0x184b8c[_0xaa89('0x2d')](_0x31b948)[_0xaa89('0x2e')](function(_0x4e8611){return _0x4e8611;});}return null;};}function removeEntity(_0x1ab888,_0x11f550){return function(_0x1360f3){if(_0x1360f3){return _0x1360f3[_0xaa89('0x2f')]()[_0xaa89('0x2e')](function(){var _0x33a98d=_0x1360f3['get']({'plain':!![]});var _0x4d1913=_0xaa89('0x30');return db[_0xaa89('0x31')][_0xaa89('0x2f')]({'where':{'type':_0x4d1913,'resourceId':_0x33a98d['id']}})[_0xaa89('0x2e')](function(){return _0x1360f3;});})[_0xaa89('0x2e')](function(){_0x1ab888[_0xaa89('0x23')](0xcc)[_0xaa89('0x24')]();});}};}function handleEntityNotFound(_0x47a20a,_0x5b53c3){return function(_0x35193f){if(!_0x35193f){_0x47a20a[_0xaa89('0x22')](0x194);}return _0x35193f;};}function handleError(_0x5aa21f,_0x221935){_0x221935=_0x221935||0x1f4;return function(_0x159c3a){logger[_0xaa89('0x32')](_0x159c3a['stack']);if(_0x159c3a[_0xaa89('0x33')]){delete _0x159c3a[_0xaa89('0x33')];}_0x5aa21f[_0xaa89('0x23')](_0x221935)[_0xaa89('0x34')](_0x159c3a);};}exports['index']=function(_0x323068,_0xd1f35b){var _0x4453eb={},_0x53fa2f={},_0x40328f={'count':0x0,'rows':[]};var _0x52eb14=_[_0xaa89('0x35')](db[_0xaa89('0x36')][_0xaa89('0x37')],function(_0x37d870){return{'name':_0x37d870[_0xaa89('0x38')],'type':_0x37d870[_0xaa89('0x39')][_0xaa89('0x3a')]};});_0x53fa2f['model']=_[_0xaa89('0x35')](_0x52eb14,'name');_0x53fa2f['query']=_[_0xaa89('0x3b')](_0x323068['query']);_0x53fa2f[_0xaa89('0x3c')]=_[_0xaa89('0x3d')](_0x53fa2f[_0xaa89('0x3e')],_0x53fa2f[_0xaa89('0x3f')]);_0x4453eb[_0xaa89('0x40')]=_[_0xaa89('0x3d')](_0x53fa2f[_0xaa89('0x3e')],qs[_0xaa89('0x41')](_0x323068['query'][_0xaa89('0x41')]));_0x4453eb[_0xaa89('0x40')]=_0x4453eb[_0xaa89('0x40')][_0xaa89('0x42')]?_0x4453eb[_0xaa89('0x40')]:_0x53fa2f[_0xaa89('0x3e')];if(!_0x323068[_0xaa89('0x3f')]['hasOwnProperty'](_0xaa89('0x43'))){_0x4453eb[_0xaa89('0x28')]=qs['limit'](_0x323068[_0xaa89('0x3f')][_0xaa89('0x28')]);_0x4453eb[_0xaa89('0x26')]=qs[_0xaa89('0x26')](_0x323068[_0xaa89('0x3f')][_0xaa89('0x26')]);}_0x4453eb[_0xaa89('0x44')]=qs[_0xaa89('0x45')](_0x323068['query'][_0xaa89('0x45')]);_0x4453eb[_0xaa89('0x46')]=qs[_0xaa89('0x3c')](_['pick'](_0x323068[_0xaa89('0x3f')],_0x53fa2f['filters']),_0x52eb14);if(_0x323068[_0xaa89('0x3f')][_0xaa89('0x47')]){_0x4453eb['where']=_[_0xaa89('0x48')](_0x4453eb[_0xaa89('0x46')],{'$or':_[_0xaa89('0x35')](_0x52eb14,function(_0x1b28bc){if(_0x1b28bc[_0xaa89('0x39')]!=='VIRTUAL'){var _0x208f2a={};_0x208f2a[_0x1b28bc[_0xaa89('0x33')]]={'$like':'%'+_0x323068[_0xaa89('0x3f')][_0xaa89('0x47')]+'%'};return _0x208f2a;}})});}_0x4453eb=_[_0xaa89('0x48')]({},_0x4453eb,_0x323068[_0xaa89('0x49')]);var _0x1c7a60={'where':_0x4453eb[_0xaa89('0x46')]};return db[_0xaa89('0x36')]['count'](_0x1c7a60)[_0xaa89('0x2e')](function(_0x386087){_0x40328f['count']=_0x386087;if(_0x323068[_0xaa89('0x3f')]['includeAll']){_0x4453eb[_0xaa89('0x4a')]=[{'all':!![]}];}return db['Dashboard']['findAll'](_0x4453eb);})[_0xaa89('0x2e')](function(_0x3f5285){_0x40328f[_0xaa89('0x4b')]=_0x3f5285;return _0x40328f;})[_0xaa89('0x2e')](respondWithFilteredResult(_0xd1f35b,_0x4453eb))['catch'](handleError(_0xd1f35b,null));};exports[_0xaa89('0x4c')]=function(_0x3e8081,_0x4b2cbc){var _0x2fc372={'raw':![],'where':{'id':_0x3e8081[_0xaa89('0x4d')]['id']}},_0x4060c0={};_0x4060c0[_0xaa89('0x3e')]=_[_0xaa89('0x3b')](db[_0xaa89('0x36')][_0xaa89('0x37')]);_0x4060c0[_0xaa89('0x3f')]=_[_0xaa89('0x3b')](_0x3e8081[_0xaa89('0x3f')]);_0x4060c0[_0xaa89('0x3c')]=_[_0xaa89('0x3d')](_0x4060c0[_0xaa89('0x3e')],_0x4060c0[_0xaa89('0x3f')]);_0x2fc372['attributes']=_[_0xaa89('0x3d')](_0x4060c0['model'],qs['fields'](_0x3e8081[_0xaa89('0x3f')][_0xaa89('0x41')]));_0x2fc372[_0xaa89('0x40')]=_0x2fc372['attributes'][_0xaa89('0x42')]?_0x2fc372[_0xaa89('0x40')]:_0x4060c0[_0xaa89('0x3e')];if(_0x3e8081['query'][_0xaa89('0x4e')]){_0x2fc372[_0xaa89('0x4a')]=[{'all':!![]}];}_0x2fc372=_[_0xaa89('0x48')]({},_0x2fc372,_0x3e8081[_0xaa89('0x49')]);return db[_0xaa89('0x36')][_0xaa89('0x4f')](_0x2fc372)['then'](handleEntityNotFound(_0x4b2cbc,null))[_0xaa89('0x2e')](respondWithResult(_0x4b2cbc,null))['catch'](handleError(_0x4b2cbc,null));};exports['create']=function(_0x4e6951,_0x456201){return db[_0xaa89('0x36')][_0xaa89('0x50')](_0x4e6951[_0xaa89('0x51')],{})[_0xaa89('0x2e')](function(_0x543fdc){var _0x3f89ae=_0x4e6951[_0xaa89('0x52')]['get']({'plain':!![]});if(!_0x3f89ae)throw new Error(_0xaa89('0x53'));if(_0x3f89ae[_0xaa89('0x54')]==='user'){var _0x151f12=_0x543fdc['get']({'plain':!![]});var _0x5eb09e='CustomDashboards';return db[_0xaa89('0x55')][_0xaa89('0x4f')]({'where':{'name':_0x5eb09e,'userProfileId':_0x3f89ae[_0xaa89('0x56')]},'raw':!![]})['then'](function(_0x1dd2bf){if(_0x1dd2bf&&_0x1dd2bf[_0xaa89('0x57')]===0x0){return db[_0xaa89('0x31')]['create']({'name':_0x151f12[_0xaa89('0x33')],'resourceId':_0x151f12['id'],'type':_0x1dd2bf[_0xaa89('0x33')],'sectionId':_0x1dd2bf['id']},{})[_0xaa89('0x2e')](function(){return _0x543fdc;});}else{return _0x543fdc;}})[_0xaa89('0x58')](function(_0x14de73){logger['error'](_0xaa89('0x59'),_0x14de73);throw _0x14de73;});}return _0x543fdc;})[_0xaa89('0x2e')](respondWithResult(_0x456201,0xc9))[_0xaa89('0x58')](handleError(_0x456201,null));};exports[_0xaa89('0x5a')]=function(_0x1b14c4,_0x463a35){var _0x365767={'where':{'id':_0x1b14c4[_0xaa89('0x4d')]['id']}},_0x384bc3={};_0x384bc3['model']=_[_0xaa89('0x3b')](db[_0xaa89('0x36')][_0xaa89('0x37')]);_0x365767[_0xaa89('0x40')]=_[_0xaa89('0x3d')](_0x384bc3['model'],qs['fields'](_0x1b14c4[_0xaa89('0x3f')][_0xaa89('0x41')]));_0x365767[_0xaa89('0x40')]=_0x365767[_0xaa89('0x40')][_0xaa89('0x42')]?_0x365767['attributes']:_0x384bc3['model'];if(_0x1b14c4[_0xaa89('0x3f')][_0xaa89('0x4e')]){_0x365767[_0xaa89('0x4a')]=[{'all':!![]}];}_0x365767=_[_0xaa89('0x48')]({},_0x365767,_0x1b14c4[_0xaa89('0x49')]);return db[_0xaa89('0x36')][_0xaa89('0x4f')](_0x365767)[_0xaa89('0x2e')](handleEntityNotFound(_0x463a35,null))[_0xaa89('0x2e')](function(_0x58f4f5){if(_0x58f4f5){var _0x4b664c=_0x58f4f5[_0xaa89('0x5b')]({'plain':!![]});_0x4b664c=qs['omit'](_0x4b664c,['id',_0xaa89('0x5c'),_0xaa89('0x5d')]);_0x1b14c4[_0xaa89('0x51')]=_[_0xaa89('0x5e')](_0x1b14c4[_0xaa89('0x51')],['id','createdAt',_0xaa89('0x5d')]);return db['Dashboard'][_0xaa89('0x50')](_[_0xaa89('0x48')](_0x4b664c,_0x1b14c4[_0xaa89('0x51')]),{'include':_0x1b14c4['query'][_0xaa89('0x4e')]?[{'all':!![]}]:undefined})[_0xaa89('0x2e')](function(_0x25202d){var _0x3fe456=_0x1b14c4[_0xaa89('0x52')]['get']({'plain':!![]});if(!_0x3fe456)throw new Error(_0xaa89('0x53'));if(_0x3fe456[_0xaa89('0x54')]===_0xaa89('0x52')){var _0x484f4a=_0x25202d[_0xaa89('0x5b')]({'plain':!![]});var _0x13cb3f=_0xaa89('0x30');return db[_0xaa89('0x55')][_0xaa89('0x4f')]({'where':{'name':_0x13cb3f,'userProfileId':_0x3fe456[_0xaa89('0x56')]},'raw':!![]})[_0xaa89('0x2e')](function(_0xef7de1){if(_0xef7de1&&_0xef7de1['autoAssociation']===0x0){return db['UserProfileResource'][_0xaa89('0x50')]({'name':_0x484f4a['name'],'resourceId':_0x484f4a['id'],'type':_0xef7de1['name'],'sectionId':_0xef7de1['id']},{})[_0xaa89('0x2e')](function(){return _0x25202d;});}else{return _0x25202d;}})[_0xaa89('0x58')](function(_0x1d5f3d){logger[_0xaa89('0x32')](_0xaa89('0x59'),_0x1d5f3d);throw _0x1d5f3d;});}return _0x25202d;});}})[_0xaa89('0x2e')](respondWithResult(_0x463a35,0xc9))[_0xaa89('0x58')](handleError(_0x463a35,null));};exports[_0xaa89('0x2d')]=function(_0x32cef1,_0x42ce66){if(_0x32cef1['body']['id']){delete _0x32cef1[_0xaa89('0x51')]['id'];}return db[_0xaa89('0x36')][_0xaa89('0x4f')]({'where':{'id':_0x32cef1[_0xaa89('0x4d')]['id']}})[_0xaa89('0x2e')](handleEntityNotFound(_0x42ce66,null))['then'](saveUpdates(_0x32cef1[_0xaa89('0x51')],null))[_0xaa89('0x2e')](respondWithResult(_0x42ce66,null))[_0xaa89('0x58')](handleError(_0x42ce66,null));};exports[_0xaa89('0x2f')]=function(_0x15ee5c,_0x387abc){return db['Dashboard'][_0xaa89('0x4f')]({'where':{'id':_0x15ee5c[_0xaa89('0x4d')]['id']}})[_0xaa89('0x2e')](handleEntityNotFound(_0x387abc,null))[_0xaa89('0x2e')](removeEntity(_0x387abc,null))[_0xaa89('0x58')](handleError(_0x387abc,null));};function widgetAttributes(_0x2843cd){try{switch(_0x2843cd[_0xaa89('0x39')]){case _0xaa89('0x5f'):return[{'name':_0xaa89('0x60'),'value':_0x2843cd['attrUrl']||(_0x2843cd['attrs']&&_0x2843cd[_0xaa89('0x61')][0x0]?_0x2843cd[_0xaa89('0x61')][0x0]['value']:undefined)||_0xaa89('0x62')}];case _0xaa89('0x63'):return[{'name':_0xaa89('0x64'),'value':_0x2843cd['attrPath']||(_0x2843cd['attrs']&&_0x2843cd[_0xaa89('0x61')][0x0]?_0x2843cd[_0xaa89('0x61')][0x0][_0xaa89('0x65')]:undefined)||''}];case _0xaa89('0x66'):return[{'name':'attrHourFormat','value':_0x2843cd[_0xaa89('0x67')]||(_0x2843cd[_0xaa89('0x61')]&&_0x2843cd[_0xaa89('0x61')][0x0]?_0x2843cd[_0xaa89('0x61')][0x0][_0xaa89('0x65')]:undefined)||_0xaa89('0x68')},{'name':'attrTimezone','value':_0x2843cd['attrTimezone']||(_0x2843cd[_0xaa89('0x61')]&&_0x2843cd[_0xaa89('0x61')][0x1]?_0x2843cd[_0xaa89('0x61')][0x1][_0xaa89('0x65')]:undefined)||_0xaa89('0x69')},{'name':_0xaa89('0x6a'),'value':_0x2843cd['attrFontSize']||(_0x2843cd[_0xaa89('0x61')]&&_0x2843cd[_0xaa89('0x61')][0x2]?_0x2843cd['attrs'][0x2][_0xaa89('0x65')]:undefined)||0xc}];case _0xaa89('0x6b'):return[{'name':_0xaa89('0x6c'),'value':_0x2843cd['attrMetric']||(_0x2843cd['attrs']&&_0x2843cd['attrs'][0x0]?_0x2843cd[_0xaa89('0x61')][0x0][_0xaa89('0x65')]:undefined)||'total'},{'name':_0xaa89('0x6d'),'value':_0x2843cd[_0xaa89('0x6d')]||(_0x2843cd[_0xaa89('0x61')]&&_0x2843cd[_0xaa89('0x61')][0x1]?_0x2843cd[_0xaa89('0x61')][0x1][_0xaa89('0x65')]:undefined)||[]},{'name':_0xaa89('0x6a'),'value':_0x2843cd['attrFontSize']||(_0x2843cd[_0xaa89('0x61')]&&_0x2843cd[_0xaa89('0x61')][0x2]?_0x2843cd[_0xaa89('0x61')][0x2][_0xaa89('0x65')]:undefined)||0x14}];case _0xaa89('0x6e'):case _0xaa89('0x6f'):return[{'name':_0xaa89('0x70'),'value':_0x2843cd['attrSerie1']||(_0x2843cd[_0xaa89('0x61')]&&_0x2843cd['attrs'][0x0]?_0x2843cd['attrs'][0x0][_0xaa89('0x65')]:undefined)||'total'},{'name':_0xaa89('0x71'),'value':_0x2843cd[_0xaa89('0x71')]||(_0x2843cd['attrs']&&_0x2843cd[_0xaa89('0x61')][0x1]?_0x2843cd[_0xaa89('0x61')][0x1][_0xaa89('0x65')]:undefined)||null},{'name':_0xaa89('0x72'),'value':_0x2843cd['attrSerie3']||(_0x2843cd[_0xaa89('0x61')]&&_0x2843cd['attrs'][0x2]?_0x2843cd[_0xaa89('0x61')][0x2][_0xaa89('0x65')]:undefined)||null},{'name':_0xaa89('0x6d'),'value':_0x2843cd[_0xaa89('0x6d')]||(_0x2843cd['attrs']&&_0x2843cd[_0xaa89('0x61')][0x3]?_0x2843cd[_0xaa89('0x61')][0x3]['value']:undefined)||[]}];case _0xaa89('0x73'):return[{'name':_0xaa89('0x74'),'type':_0x2843cd[_0xaa89('0x75')]||(_0x2843cd[_0xaa89('0x61')]&&_0x2843cd['attrs'][0x0]?_0x2843cd[_0xaa89('0x61')][0x0][_0xaa89('0x39')]:undefined)||null,'value':_0x2843cd[_0xaa89('0x74')]||(_0x2843cd['attrs']&&_0x2843cd[_0xaa89('0x61')][0x0]?_0x2843cd[_0xaa89('0x61')][0x0][_0xaa89('0x65')]:undefined)||null},{'name':_0xaa89('0x76'),'value':_0x2843cd[_0xaa89('0x76')]||(_0x2843cd[_0xaa89('0x61')]&&_0x2843cd[_0xaa89('0x61')][0x1]?_0x2843cd[_0xaa89('0x61')][0x1][_0xaa89('0x65')]:undefined)||0x0}];default:return[];}}catch(_0x4603b0){logger[_0xaa89('0x32')](_0xaa89('0x77'),JSON[_0xaa89('0x78')](_0x4603b0));return[];}}exports[_0xaa89('0x79')]=function(_0x32d331,_0xef42bf,_0xbd04b4){if(_0x32d331[_0xaa89('0x51')]['id']){delete _0x32d331[_0xaa89('0x51')]['id'];}return db['Dashboard']['find']({'where':{'id':_0x32d331[_0xaa89('0x4d')]['id']}})[_0xaa89('0x2e')](handleEntityNotFound(_0xef42bf,null))[_0xaa89('0x2e')](function(_0x2c5629){if(_0x2c5629){_0x32d331[_0xaa89('0x51')][_0xaa89('0x7a')]=_0x2c5629['id'];_0x32d331[_0xaa89('0x51')][_0xaa89('0x61')]=widgetAttributes(_0x32d331[_0xaa89('0x51')]);return db[_0xaa89('0x7b')][_0xaa89('0x50')](_0x32d331[_0xaa89('0x51')]);}})[_0xaa89('0x2e')](respondWithResult(_0xef42bf,null))['catch'](handleError(_0xef42bf,null));};exports[_0xaa89('0x7c')]=function(_0x470f9b,_0x3659f7,_0x4d4c78){var _0x26be3d={};var _0x924467={};var _0x408f67;var _0x408605;return db['Dashboard'][_0xaa89('0x7d')]({'where':{'id':_0x470f9b['params']['id']}})[_0xaa89('0x2e')](handleEntityNotFound(_0x3659f7,null))[_0xaa89('0x2e')](function(_0x28bb67){if(_0x28bb67){_0x408f67=_0x28bb67;_0x924467[_0xaa89('0x3e')]=_[_0xaa89('0x3b')](db[_0xaa89('0x7b')][_0xaa89('0x37')]);_0x924467[_0xaa89('0x3f')]=_['keys'](_0x470f9b[_0xaa89('0x3f')]);_0x924467['filters']=_[_0xaa89('0x3d')](_0x924467['model'],_0x924467['query']);_0x26be3d['attributes']=_[_0xaa89('0x3d')](_0x924467[_0xaa89('0x3e')],qs[_0xaa89('0x41')](_0x470f9b[_0xaa89('0x3f')]['fields']));_0x26be3d[_0xaa89('0x40')]=_0x26be3d[_0xaa89('0x40')][_0xaa89('0x42')]?_0x26be3d[_0xaa89('0x40')]:_0x924467[_0xaa89('0x3e')];_0x26be3d[_0xaa89('0x44')]=qs[_0xaa89('0x45')](_0x470f9b[_0xaa89('0x3f')][_0xaa89('0x45')]);_0x26be3d[_0xaa89('0x46')]=qs['filters'](_[_0xaa89('0x7e')](_0x470f9b[_0xaa89('0x3f')],_0x924467[_0xaa89('0x3c')]));if(_0x470f9b[_0xaa89('0x3f')][_0xaa89('0x47')]){_0x26be3d['where']=_['merge'](_0x26be3d[_0xaa89('0x46')],{'$or':_[_0xaa89('0x35')](_0x26be3d[_0xaa89('0x40')],function(_0x3aded7){var _0x2a2561={};_0x2a2561[_0x3aded7]={'$like':'%'+_0x470f9b[_0xaa89('0x3f')][_0xaa89('0x47')]+'%'};return _0x2a2561;})});}_0x26be3d=_[_0xaa89('0x48')]({},_0x26be3d,_0x470f9b[_0xaa89('0x49')]);return _0x408f67[_0xaa89('0x7c')](_0x26be3d);}})[_0xaa89('0x2e')](function(_0x4c1873){if(_0x4c1873){_0x408605=_0x4c1873[_0xaa89('0x42')];if(!_0x470f9b[_0xaa89('0x3f')][_0xaa89('0x7f')](_0xaa89('0x43'))){_0x26be3d[_0xaa89('0x28')]=qs['limit'](_0x470f9b[_0xaa89('0x3f')][_0xaa89('0x28')]);_0x26be3d[_0xaa89('0x26')]=qs[_0xaa89('0x26')](_0x470f9b[_0xaa89('0x3f')][_0xaa89('0x26')]);}return _0x408f67[_0xaa89('0x7c')](_0x26be3d);}})[_0xaa89('0x2e')](function(_0x3e4e4e){if(_0x3e4e4e){return _0x3e4e4e?{'count':_0x408605,'rows':_0x3e4e4e}:null;}})[_0xaa89('0x2e')](respondWithResult(_0x3659f7,null))['catch'](handleError(_0x3659f7,null));};