6ab8024ed0d0f5476b1b7f34c8040a5ad56a3dd9
[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 _0x9f2c=['rimraf','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','lodash','squel','crypto','desk.js','querystring','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','defaults','redis','localhost','socket.io-emitter','./dashboard.socket','register','end','status','json','count','offset','limit','set','Content-Range','apply','save','update','then','destroy','get','UserProfileResource','sendStatus','error','stack','name','send','index','fieldName','type','key','model','query','keys','intersection','fields','attributes','hasOwnProperty','nolimit','sort','where','filters','pick','filter','merge','map','VIRTUAL','options','Dashboard','includeAll','findAll','catch','show','length','include','find','create','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','rawAttributes','updatedAt','createdAt','CustomDashboards','UserProfileSection','autoAssociation','params','attrUrl','attrs','value','https://','attrPath','clock','attrHourFormat','attrTimezone','attrFontSize','attrMetric','total','attrVoiceQueues','multibar-chart','attrSerie1','attrSerie2','attrSerie3','attrReport','reportType','attrRefresh','widgetAttributes:\x20%s','addItem','DashboardId','getItems','order','html-pdf','eml-format'];(function(_0x15e02c,_0x37db6a){var _0x4cdb3f=function(_0x5148a5){while(--_0x5148a5){_0x15e02c['push'](_0x15e02c['shift']());}};_0x4cdb3f(++_0x37db6a);}(_0x9f2c,0xe8));var _0xc9f2=function(_0x5b2809,_0x48b226){_0x5b2809=_0x5b2809-0x0;var _0x572dee=_0x9f2c[_0x5b2809];return _0x572dee;};'use strict';var pdf=require(_0xc9f2('0x0'));var emlformat=require(_0xc9f2('0x1'));var rimraf=require(_0xc9f2('0x2'));var zipdir=require('zip-dir');var jsonpatch=require(_0xc9f2('0x3'));var rp=require(_0xc9f2('0x4'));var moment=require(_0xc9f2('0x5'));var BPromise=require(_0xc9f2('0x6'));var Mustache=require(_0xc9f2('0x7'));var util=require(_0xc9f2('0x8'));var path=require(_0xc9f2('0x9'));var sox=require(_0xc9f2('0xa'));var csv=require(_0xc9f2('0xb'));var ejs=require('ejs');var fs=require('fs');var _=require(_0xc9f2('0xc'));var squel=require(_0xc9f2('0xd'));var crypto=require(_0xc9f2('0xe'));var jsforce=require('jsforce');var deskjs=require(_0xc9f2('0xf'));var toCsv=require(_0xc9f2('0xb'));var querystring=require(_0xc9f2('0x10'));var Papa=require(_0xc9f2('0x11'));var Redis=require(_0xc9f2('0x12'));var authService=require('../../components/auth/service');var qs=require(_0xc9f2('0x13'));var as=require(_0xc9f2('0x14'));var hardwareService=require(_0xc9f2('0x15'));var logger=require(_0xc9f2('0x16'))('api');var utils=require(_0xc9f2('0x17'));var config=require(_0xc9f2('0x18'));var db=require('../../mysqldb')['db'];config['redis']=_[_0xc9f2('0x19')](config[_0xc9f2('0x1a')],{'host':_0xc9f2('0x1b'),'port':0x18eb});var socket=require(_0xc9f2('0x1c'))(new Redis(config[_0xc9f2('0x1a')]));require(_0xc9f2('0x1d'))[_0xc9f2('0x1e')](socket);function respondWithStatusCode(_0x1c3db3,_0xe30a68){_0xe30a68=_0xe30a68||0xcc;return function(_0x125921){if(_0x125921){return _0x1c3db3['sendStatus'](_0xe30a68);}return _0x1c3db3['status'](_0xe30a68)[_0xc9f2('0x1f')]();};}function respondWithResult(_0x340198,_0x34ecdc){_0x34ecdc=_0x34ecdc||0xc8;return function(_0x6917b5){if(_0x6917b5){return _0x340198[_0xc9f2('0x20')](_0x34ecdc)[_0xc9f2('0x21')](_0x6917b5);}};}function respondWithFilteredResult(_0x83f72a,_0x139257){return function(_0x2c5396){if(_0x2c5396){var _0x5dab1c=_0x2c5396[_0xc9f2('0x22')],_0x19f10d=_0x139257[_0xc9f2('0x23')],_0x83f2d1=_0x139257[_0xc9f2('0x23')]+_0x139257[_0xc9f2('0x24')],_0x1caef6;if(_0x83f2d1>=_0x5dab1c){_0x83f2d1=_0x5dab1c;_0x1caef6=0xc8;}else{_0x1caef6=0xce;}_0x83f72a['status'](_0x1caef6);return _0x83f72a[_0xc9f2('0x25')](_0xc9f2('0x26'),_0x19f10d+'-'+_0x83f2d1+'/'+_0x5dab1c)[_0xc9f2('0x21')](_0x2c5396);}return null;};}function patchUpdates(_0x23930a){return function(_0x5b3cfc){try{jsonpatch[_0xc9f2('0x27')](_0x5b3cfc,_0x23930a,!![]);}catch(_0x2f75f6){return BPromise['reject'](_0x2f75f6);}return _0x5b3cfc[_0xc9f2('0x28')]();};}function saveUpdates(_0x259357,_0x1749f4){return function(_0x19a4e1){if(_0x19a4e1){return _0x19a4e1[_0xc9f2('0x29')](_0x259357)[_0xc9f2('0x2a')](function(_0x1b1bdc){return _0x1b1bdc;});}return null;};}function removeEntity(_0x406190,_0x4629eb){return function(_0x31e5f9){if(_0x31e5f9){return _0x31e5f9[_0xc9f2('0x2b')]()[_0xc9f2('0x2a')](function(){var _0x59042f=_0x31e5f9[_0xc9f2('0x2c')]({'plain':!![]});var _0x8782df='CustomDashboards';return db[_0xc9f2('0x2d')][_0xc9f2('0x2b')]({'where':{'type':_0x8782df,'resourceId':_0x59042f['id']}})[_0xc9f2('0x2a')](function(){return _0x31e5f9;});})[_0xc9f2('0x2a')](function(){_0x406190[_0xc9f2('0x20')](0xcc)[_0xc9f2('0x1f')]();});}};}function handleEntityNotFound(_0x2e0f24,_0xf0f0c8){return function(_0x3b7691){if(!_0x3b7691){_0x2e0f24[_0xc9f2('0x2e')](0x194);}return _0x3b7691;};}function handleError(_0x4203a7,_0x1f6605){_0x1f6605=_0x1f6605||0x1f4;return function(_0x2c792d){logger[_0xc9f2('0x2f')](_0x2c792d[_0xc9f2('0x30')]);if(_0x2c792d['name']){delete _0x2c792d[_0xc9f2('0x31')];}_0x4203a7[_0xc9f2('0x20')](_0x1f6605)[_0xc9f2('0x32')](_0x2c792d);};}exports[_0xc9f2('0x33')]=function(_0x187ca3,_0x5c2cb2){var _0x17b1ec={},_0x2f35a9={},_0x50d291={'count':0x0,'rows':[]};var _0x59821c=_['map'](db['Dashboard']['rawAttributes'],function(_0xa7f3a5){return{'name':_0xa7f3a5[_0xc9f2('0x34')],'type':_0xa7f3a5[_0xc9f2('0x35')][_0xc9f2('0x36')]};});_0x2f35a9[_0xc9f2('0x37')]=_['map'](_0x59821c,_0xc9f2('0x31'));_0x2f35a9[_0xc9f2('0x38')]=_[_0xc9f2('0x39')](_0x187ca3[_0xc9f2('0x38')]);_0x2f35a9['filters']=_[_0xc9f2('0x3a')](_0x2f35a9['model'],_0x2f35a9[_0xc9f2('0x38')]);_0x17b1ec['attributes']=_[_0xc9f2('0x3a')](_0x2f35a9[_0xc9f2('0x37')],qs[_0xc9f2('0x3b')](_0x187ca3['query'][_0xc9f2('0x3b')]));_0x17b1ec[_0xc9f2('0x3c')]=_0x17b1ec[_0xc9f2('0x3c')]['length']?_0x17b1ec[_0xc9f2('0x3c')]:_0x2f35a9[_0xc9f2('0x37')];if(!_0x187ca3[_0xc9f2('0x38')][_0xc9f2('0x3d')](_0xc9f2('0x3e'))){_0x17b1ec[_0xc9f2('0x24')]=qs[_0xc9f2('0x24')](_0x187ca3[_0xc9f2('0x38')]['limit']);_0x17b1ec[_0xc9f2('0x23')]=qs['offset'](_0x187ca3[_0xc9f2('0x38')][_0xc9f2('0x23')]);}_0x17b1ec['order']=qs[_0xc9f2('0x3f')](_0x187ca3[_0xc9f2('0x38')][_0xc9f2('0x3f')]);_0x17b1ec[_0xc9f2('0x40')]=qs[_0xc9f2('0x41')](_[_0xc9f2('0x42')](_0x187ca3[_0xc9f2('0x38')],_0x2f35a9[_0xc9f2('0x41')]),_0x59821c);if(_0x187ca3[_0xc9f2('0x38')][_0xc9f2('0x43')]){_0x17b1ec[_0xc9f2('0x40')]=_[_0xc9f2('0x44')](_0x17b1ec['where'],{'$or':_[_0xc9f2('0x45')](_0x59821c,function(_0x2c52c4){if(_0x2c52c4[_0xc9f2('0x35')]!==_0xc9f2('0x46')){var _0x59913a={};_0x59913a[_0x2c52c4[_0xc9f2('0x31')]]={'$like':'%'+_0x187ca3[_0xc9f2('0x38')][_0xc9f2('0x43')]+'%'};return _0x59913a;}})});}_0x17b1ec=_[_0xc9f2('0x44')]({},_0x17b1ec,_0x187ca3[_0xc9f2('0x47')]);var _0x57323e={'where':_0x17b1ec[_0xc9f2('0x40')]};return db[_0xc9f2('0x48')][_0xc9f2('0x22')](_0x57323e)[_0xc9f2('0x2a')](function(_0x39e864){_0x50d291[_0xc9f2('0x22')]=_0x39e864;if(_0x187ca3['query'][_0xc9f2('0x49')]){_0x17b1ec['include']=[{'all':!![]}];}return db[_0xc9f2('0x48')][_0xc9f2('0x4a')](_0x17b1ec);})[_0xc9f2('0x2a')](function(_0x3a3bba){_0x50d291['rows']=_0x3a3bba;return _0x50d291;})['then'](respondWithFilteredResult(_0x5c2cb2,_0x17b1ec))[_0xc9f2('0x4b')](handleError(_0x5c2cb2,null));};exports[_0xc9f2('0x4c')]=function(_0x1040cd,_0x2b8884){var _0x145231={'raw':![],'where':{'id':_0x1040cd['params']['id']}},_0x58afb3={};_0x58afb3['model']=_[_0xc9f2('0x39')](db[_0xc9f2('0x48')]['rawAttributes']);_0x58afb3[_0xc9f2('0x38')]=_[_0xc9f2('0x39')](_0x1040cd[_0xc9f2('0x38')]);_0x58afb3[_0xc9f2('0x41')]=_[_0xc9f2('0x3a')](_0x58afb3[_0xc9f2('0x37')],_0x58afb3[_0xc9f2('0x38')]);_0x145231[_0xc9f2('0x3c')]=_[_0xc9f2('0x3a')](_0x58afb3[_0xc9f2('0x37')],qs[_0xc9f2('0x3b')](_0x1040cd[_0xc9f2('0x38')][_0xc9f2('0x3b')]));_0x145231[_0xc9f2('0x3c')]=_0x145231[_0xc9f2('0x3c')][_0xc9f2('0x4d')]?_0x145231[_0xc9f2('0x3c')]:_0x58afb3[_0xc9f2('0x37')];if(_0x1040cd['query'][_0xc9f2('0x49')]){_0x145231[_0xc9f2('0x4e')]=[{'all':!![]}];}_0x145231=_[_0xc9f2('0x44')]({},_0x145231,_0x1040cd[_0xc9f2('0x47')]);return db[_0xc9f2('0x48')][_0xc9f2('0x4f')](_0x145231)[_0xc9f2('0x2a')](handleEntityNotFound(_0x2b8884,null))[_0xc9f2('0x2a')](respondWithResult(_0x2b8884,null))[_0xc9f2('0x4b')](handleError(_0x2b8884,null));};exports[_0xc9f2('0x50')]=function(_0x4b40ea,_0x47c7bc){return db[_0xc9f2('0x48')][_0xc9f2('0x50')](_0x4b40ea[_0xc9f2('0x51')],{})[_0xc9f2('0x2a')](function(_0x3f4c19){var _0xf40c33=_0x4b40ea[_0xc9f2('0x52')][_0xc9f2('0x2c')]({'plain':!![]});if(!_0xf40c33)throw new Error(_0xc9f2('0x53'));if(_0xf40c33[_0xc9f2('0x54')]===_0xc9f2('0x52')){var _0x191a47=_0x3f4c19['get']({'plain':!![]});var _0x4df610='CustomDashboards';return db['UserProfileSection'][_0xc9f2('0x4f')]({'where':{'name':_0x4df610,'userProfileId':_0xf40c33['userProfileId']},'raw':!![]})[_0xc9f2('0x2a')](function(_0x263a17){if(_0x263a17&&_0x263a17['autoAssociation']===0x0){return db['UserProfileResource'][_0xc9f2('0x50')]({'name':_0x191a47['name'],'resourceId':_0x191a47['id'],'type':_0x263a17['name'],'sectionId':_0x263a17['id']},{})[_0xc9f2('0x2a')](function(){return _0x3f4c19;});}else{return _0x3f4c19;}})[_0xc9f2('0x4b')](function(_0x24ed86){logger['error'](_0xc9f2('0x55'),_0x24ed86);throw _0x24ed86;});}return _0x3f4c19;})[_0xc9f2('0x2a')](respondWithResult(_0x47c7bc,0xc9))[_0xc9f2('0x4b')](handleError(_0x47c7bc,null));};exports['clone']=function(_0x4cc2c5,_0x50b3c7){var _0x2c91fb={'where':{'id':_0x4cc2c5['params']['id']}},_0x41674a={};_0x41674a[_0xc9f2('0x37')]=_[_0xc9f2('0x39')](db[_0xc9f2('0x48')][_0xc9f2('0x56')]);_0x2c91fb[_0xc9f2('0x3c')]=_[_0xc9f2('0x3a')](_0x41674a[_0xc9f2('0x37')],qs['fields'](_0x4cc2c5[_0xc9f2('0x38')][_0xc9f2('0x3b')]));_0x2c91fb[_0xc9f2('0x3c')]=_0x2c91fb[_0xc9f2('0x3c')][_0xc9f2('0x4d')]?_0x2c91fb[_0xc9f2('0x3c')]:_0x41674a[_0xc9f2('0x37')];if(_0x4cc2c5[_0xc9f2('0x38')][_0xc9f2('0x49')]){_0x2c91fb[_0xc9f2('0x4e')]=[{'all':!![]}];}_0x2c91fb=_[_0xc9f2('0x44')]({},_0x2c91fb,_0x4cc2c5[_0xc9f2('0x47')]);return db[_0xc9f2('0x48')][_0xc9f2('0x4f')](_0x2c91fb)['then'](handleEntityNotFound(_0x50b3c7,null))[_0xc9f2('0x2a')](function(_0xa9eda2){if(_0xa9eda2){var _0x35c560=_0xa9eda2['get']({'plain':!![]});_0x35c560=qs['omit'](_0x35c560,['id','createdAt',_0xc9f2('0x57')]);_0x4cc2c5[_0xc9f2('0x51')]=_['omit'](_0x4cc2c5[_0xc9f2('0x51')],['id',_0xc9f2('0x58'),'updatedAt']);return db[_0xc9f2('0x48')]['create'](_[_0xc9f2('0x44')](_0x35c560,_0x4cc2c5[_0xc9f2('0x51')]),{'include':_0x4cc2c5[_0xc9f2('0x38')][_0xc9f2('0x49')]?[{'all':!![]}]:undefined})[_0xc9f2('0x2a')](function(_0x65b0){var _0x59e649=_0x4cc2c5[_0xc9f2('0x52')][_0xc9f2('0x2c')]({'plain':!![]});if(!_0x59e649)throw new Error(_0xc9f2('0x53'));if(_0x59e649[_0xc9f2('0x54')]===_0xc9f2('0x52')){var _0x44581c=_0x65b0['get']({'plain':!![]});var _0x5f20bc=_0xc9f2('0x59');return db[_0xc9f2('0x5a')][_0xc9f2('0x4f')]({'where':{'name':_0x5f20bc,'userProfileId':_0x59e649['userProfileId']},'raw':!![]})['then'](function(_0x4c7e19){if(_0x4c7e19&&_0x4c7e19[_0xc9f2('0x5b')]===0x0){return db[_0xc9f2('0x2d')][_0xc9f2('0x50')]({'name':_0x44581c['name'],'resourceId':_0x44581c['id'],'type':_0x4c7e19[_0xc9f2('0x31')],'sectionId':_0x4c7e19['id']},{})[_0xc9f2('0x2a')](function(){return _0x65b0;});}else{return _0x65b0;}})['catch'](function(_0x1e1eb8){logger[_0xc9f2('0x2f')](_0xc9f2('0x55'),_0x1e1eb8);throw _0x1e1eb8;});}return _0x65b0;});}})['then'](respondWithResult(_0x50b3c7,0xc9))[_0xc9f2('0x4b')](handleError(_0x50b3c7,null));};exports[_0xc9f2('0x29')]=function(_0xd82c9,_0x1941e9){if(_0xd82c9['body']['id']){delete _0xd82c9[_0xc9f2('0x51')]['id'];}return db['Dashboard']['find']({'where':{'id':_0xd82c9[_0xc9f2('0x5c')]['id']}})['then'](handleEntityNotFound(_0x1941e9,null))[_0xc9f2('0x2a')](saveUpdates(_0xd82c9[_0xc9f2('0x51')],null))[_0xc9f2('0x2a')](respondWithResult(_0x1941e9,null))[_0xc9f2('0x4b')](handleError(_0x1941e9,null));};exports[_0xc9f2('0x2b')]=function(_0xe2f227,_0x14cb53){return db[_0xc9f2('0x48')][_0xc9f2('0x4f')]({'where':{'id':_0xe2f227[_0xc9f2('0x5c')]['id']}})[_0xc9f2('0x2a')](handleEntityNotFound(_0x14cb53,null))[_0xc9f2('0x2a')](removeEntity(_0x14cb53,null))[_0xc9f2('0x4b')](handleError(_0x14cb53,null));};function widgetAttributes(_0x5f1f9d){try{switch(_0x5f1f9d['type']){case'iframe':return[{'name':_0xc9f2('0x5d'),'value':_0x5f1f9d[_0xc9f2('0x5d')]||(_0x5f1f9d[_0xc9f2('0x5e')]&&_0x5f1f9d['attrs'][0x0]?_0x5f1f9d['attrs'][0x0][_0xc9f2('0x5f')]:undefined)||_0xc9f2('0x60')}];case'custom':return[{'name':_0xc9f2('0x61'),'value':_0x5f1f9d[_0xc9f2('0x61')]||(_0x5f1f9d[_0xc9f2('0x5e')]&&_0x5f1f9d[_0xc9f2('0x5e')][0x0]?_0x5f1f9d[_0xc9f2('0x5e')][0x0][_0xc9f2('0x5f')]:undefined)||''}];case _0xc9f2('0x62'):return[{'name':_0xc9f2('0x63'),'value':_0x5f1f9d[_0xc9f2('0x63')]||(_0x5f1f9d[_0xc9f2('0x5e')]&&_0x5f1f9d[_0xc9f2('0x5e')][0x0]?_0x5f1f9d[_0xc9f2('0x5e')][0x0][_0xc9f2('0x5f')]:undefined)||'HH:mm:ss'},{'name':'attrTimezone','value':_0x5f1f9d[_0xc9f2('0x64')]||(_0x5f1f9d['attrs']&&_0x5f1f9d[_0xc9f2('0x5e')][0x1]?_0x5f1f9d[_0xc9f2('0x5e')][0x1]['value']:undefined)||'0.00'},{'name':'attrFontSize','value':_0x5f1f9d[_0xc9f2('0x65')]||(_0x5f1f9d[_0xc9f2('0x5e')]&&_0x5f1f9d[_0xc9f2('0x5e')][0x2]?_0x5f1f9d[_0xc9f2('0x5e')][0x2][_0xc9f2('0x5f')]:undefined)||0xc}];case'counter':return[{'name':'attrMetric','value':_0x5f1f9d[_0xc9f2('0x66')]||(_0x5f1f9d['attrs']&&_0x5f1f9d[_0xc9f2('0x5e')][0x0]?_0x5f1f9d[_0xc9f2('0x5e')][0x0][_0xc9f2('0x5f')]:undefined)||_0xc9f2('0x67')},{'name':_0xc9f2('0x68'),'value':_0x5f1f9d[_0xc9f2('0x68')]||(_0x5f1f9d[_0xc9f2('0x5e')]&&_0x5f1f9d['attrs'][0x1]?_0x5f1f9d[_0xc9f2('0x5e')][0x1][_0xc9f2('0x5f')]:undefined)||[]},{'name':_0xc9f2('0x65'),'value':_0x5f1f9d['attrFontSize']||(_0x5f1f9d[_0xc9f2('0x5e')]&&_0x5f1f9d['attrs'][0x2]?_0x5f1f9d[_0xc9f2('0x5e')][0x2][_0xc9f2('0x5f')]:undefined)||0x14}];case _0xc9f2('0x69'):case'pie-chart':return[{'name':_0xc9f2('0x6a'),'value':_0x5f1f9d[_0xc9f2('0x6a')]||(_0x5f1f9d['attrs']&&_0x5f1f9d['attrs'][0x0]?_0x5f1f9d['attrs'][0x0][_0xc9f2('0x5f')]:undefined)||_0xc9f2('0x67')},{'name':_0xc9f2('0x6b'),'value':_0x5f1f9d[_0xc9f2('0x6b')]||(_0x5f1f9d['attrs']&&_0x5f1f9d[_0xc9f2('0x5e')][0x1]?_0x5f1f9d[_0xc9f2('0x5e')][0x1][_0xc9f2('0x5f')]:undefined)||null},{'name':_0xc9f2('0x6c'),'value':_0x5f1f9d[_0xc9f2('0x6c')]||(_0x5f1f9d['attrs']&&_0x5f1f9d[_0xc9f2('0x5e')][0x2]?_0x5f1f9d[_0xc9f2('0x5e')][0x2]['value']:undefined)||null},{'name':'attrVoiceQueues','value':_0x5f1f9d[_0xc9f2('0x68')]||(_0x5f1f9d['attrs']&&_0x5f1f9d[_0xc9f2('0x5e')][0x3]?_0x5f1f9d[_0xc9f2('0x5e')][0x3][_0xc9f2('0x5f')]:undefined)||[]}];case'web-report':return[{'name':_0xc9f2('0x6d'),'type':_0x5f1f9d[_0xc9f2('0x6e')]||(_0x5f1f9d[_0xc9f2('0x5e')]&&_0x5f1f9d[_0xc9f2('0x5e')][0x0]?_0x5f1f9d[_0xc9f2('0x5e')][0x0][_0xc9f2('0x35')]:undefined)||null,'value':_0x5f1f9d['attrReport']||(_0x5f1f9d['attrs']&&_0x5f1f9d['attrs'][0x0]?_0x5f1f9d[_0xc9f2('0x5e')][0x0][_0xc9f2('0x5f')]:undefined)||null},{'name':'attrRefresh','value':_0x5f1f9d[_0xc9f2('0x6f')]||(_0x5f1f9d['attrs']&&_0x5f1f9d[_0xc9f2('0x5e')][0x1]?_0x5f1f9d['attrs'][0x1][_0xc9f2('0x5f')]:undefined)||0x0}];default:return[];}}catch(_0xcbea9b){logger[_0xc9f2('0x2f')](_0xc9f2('0x70'),JSON['stringify'](_0xcbea9b));return[];}}exports[_0xc9f2('0x71')]=function(_0x2e6ec5,_0x199f6c,_0x46c3c2){if(_0x2e6ec5[_0xc9f2('0x51')]['id']){delete _0x2e6ec5[_0xc9f2('0x51')]['id'];}return db['Dashboard'][_0xc9f2('0x4f')]({'where':{'id':_0x2e6ec5[_0xc9f2('0x5c')]['id']}})[_0xc9f2('0x2a')](handleEntityNotFound(_0x199f6c,null))[_0xc9f2('0x2a')](function(_0x3dae72){if(_0x3dae72){_0x2e6ec5[_0xc9f2('0x51')][_0xc9f2('0x72')]=_0x3dae72['id'];_0x2e6ec5[_0xc9f2('0x51')][_0xc9f2('0x5e')]=widgetAttributes(_0x2e6ec5['body']);return db['DashboardItem'][_0xc9f2('0x50')](_0x2e6ec5[_0xc9f2('0x51')]);}})[_0xc9f2('0x2a')](respondWithResult(_0x199f6c,null))[_0xc9f2('0x4b')](handleError(_0x199f6c,null));};exports[_0xc9f2('0x73')]=function(_0x486fd1,_0x217c2f,_0x3de5c6){var _0xad5570={};var _0x1e2559={};var _0x45ce24;var _0x2d866b;return db[_0xc9f2('0x48')]['findOne']({'where':{'id':_0x486fd1['params']['id']}})[_0xc9f2('0x2a')](handleEntityNotFound(_0x217c2f,null))[_0xc9f2('0x2a')](function(_0x7b6d49){if(_0x7b6d49){_0x45ce24=_0x7b6d49;_0x1e2559['model']=_['keys'](db['DashboardItem'][_0xc9f2('0x56')]);_0x1e2559[_0xc9f2('0x38')]=_['keys'](_0x486fd1[_0xc9f2('0x38')]);_0x1e2559['filters']=_[_0xc9f2('0x3a')](_0x1e2559[_0xc9f2('0x37')],_0x1e2559[_0xc9f2('0x38')]);_0xad5570[_0xc9f2('0x3c')]=_[_0xc9f2('0x3a')](_0x1e2559[_0xc9f2('0x37')],qs[_0xc9f2('0x3b')](_0x486fd1[_0xc9f2('0x38')][_0xc9f2('0x3b')]));_0xad5570['attributes']=_0xad5570[_0xc9f2('0x3c')][_0xc9f2('0x4d')]?_0xad5570[_0xc9f2('0x3c')]:_0x1e2559['model'];_0xad5570[_0xc9f2('0x74')]=qs[_0xc9f2('0x3f')](_0x486fd1[_0xc9f2('0x38')][_0xc9f2('0x3f')]);_0xad5570[_0xc9f2('0x40')]=qs[_0xc9f2('0x41')](_[_0xc9f2('0x42')](_0x486fd1[_0xc9f2('0x38')],_0x1e2559[_0xc9f2('0x41')]));if(_0x486fd1[_0xc9f2('0x38')][_0xc9f2('0x43')]){_0xad5570[_0xc9f2('0x40')]=_[_0xc9f2('0x44')](_0xad5570[_0xc9f2('0x40')],{'$or':_[_0xc9f2('0x45')](_0xad5570[_0xc9f2('0x3c')],function(_0x1c0db3){var _0x47a215={};_0x47a215[_0x1c0db3]={'$like':'%'+_0x486fd1[_0xc9f2('0x38')][_0xc9f2('0x43')]+'%'};return _0x47a215;})});}_0xad5570=_['merge']({},_0xad5570,_0x486fd1[_0xc9f2('0x47')]);return _0x45ce24[_0xc9f2('0x73')](_0xad5570);}})[_0xc9f2('0x2a')](function(_0x3aa369){if(_0x3aa369){_0x2d866b=_0x3aa369['length'];if(!_0x486fd1[_0xc9f2('0x38')]['hasOwnProperty'](_0xc9f2('0x3e'))){_0xad5570[_0xc9f2('0x24')]=qs['limit'](_0x486fd1[_0xc9f2('0x38')][_0xc9f2('0x24')]);_0xad5570[_0xc9f2('0x23')]=qs['offset'](_0x486fd1['query'][_0xc9f2('0x23')]);}return _0x45ce24['getItems'](_0xad5570);}})[_0xc9f2('0x2a')](function(_0x120320){if(_0x120320){return _0x120320?{'count':_0x2d866b,'rows':_0x120320}:null;}})['then'](respondWithResult(_0x217c2f,null))[_0xc9f2('0x4b')](handleError(_0x217c2f,null));};