ad9ecd7897c4970daed9a3ef876fb4e2a1bd670a
[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 _0xd5b7=['attrFontSize','counter','attrMetric','total','attrVoiceQueues','multibar-chart','pie-chart','attrSerie1','attrSerie3','reportType','attrReport','widgetAttributes:\x20%s','stringify','addItem','DashboardId','DashboardItem','getItems','findOne','order','eml-format','rimraf','moment','bluebird','mustache','util','path','to-csv','ejs','lodash','squel','crypto','jsforce','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','redis','defaults','localhost','socket.io-emitter','./dashboard.socket','register','status','json','count','limit','set','Content-Range','apply','reject','save','update','then','get','CustomDashboards','end','sendStatus','stack','name','send','index','map','Dashboard','rawAttributes','type','key','model','query','keys','filters','intersection','fields','attributes','hasOwnProperty','nolimit','offset','sort','pick','filter','where','VIRTUAL','options','includeAll','findAll','catch','show','params','length','include','merge','find','create','body','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','user','UserProfileSection','userProfileId','autoAssociation','UserProfileResource','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','clone','omit','createdAt','updatedAt','error','destroy','attrUrl','attrs','value','custom','attrPath','clock','attrHourFormat','HH:mm:ss','attrTimezone','0.00'];(function(_0x30163a,_0x2b7f0c){var _0x48f877=function(_0x539210){while(--_0x539210){_0x30163a['push'](_0x30163a['shift']());}};_0x48f877(++_0x2b7f0c);}(_0xd5b7,0x8b));var _0x7d5b=function(_0x431ff8,_0x4085dd){_0x431ff8=_0x431ff8-0x0;var _0x84ccd4=_0xd5b7[_0x431ff8];return _0x84ccd4;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0x7d5b('0x0'));var rimraf=require(_0x7d5b('0x1'));var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require(_0x7d5b('0x2'));var BPromise=require(_0x7d5b('0x3'));var Mustache=require(_0x7d5b('0x4'));var util=require(_0x7d5b('0x5'));var path=require(_0x7d5b('0x6'));var sox=require('sox');var csv=require(_0x7d5b('0x7'));var ejs=require(_0x7d5b('0x8'));var fs=require('fs');var _=require(_0x7d5b('0x9'));var squel=require(_0x7d5b('0xa'));var crypto=require(_0x7d5b('0xb'));var jsforce=require(_0x7d5b('0xc'));var deskjs=require('desk.js');var toCsv=require(_0x7d5b('0x7'));var querystring=require(_0x7d5b('0xd'));var Papa=require(_0x7d5b('0xe'));var Redis=require('ioredis');var authService=require(_0x7d5b('0xf'));var qs=require(_0x7d5b('0x10'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x7d5b('0x11'));var logger=require(_0x7d5b('0x12'))(_0x7d5b('0x13'));var utils=require('../../config/utils');var config=require('../../config/environment');var licenseUtil=require('../../config/license/util');var db=require('../../mysqldb')['db'];config[_0x7d5b('0x14')]=_[_0x7d5b('0x15')](config[_0x7d5b('0x14')],{'host':_0x7d5b('0x16'),'port':0x18eb});var socket=require(_0x7d5b('0x17'))(new Redis(config['redis']));require(_0x7d5b('0x18'))[_0x7d5b('0x19')](socket);function respondWithStatusCode(_0x2e5a7c,_0x561e9c){_0x561e9c=_0x561e9c||0xcc;return function(_0x216488){if(_0x216488){return _0x2e5a7c['sendStatus'](_0x561e9c);}return _0x2e5a7c[_0x7d5b('0x1a')](_0x561e9c)['end']();};}function respondWithResult(_0x3f14cf,_0x3f438f){_0x3f438f=_0x3f438f||0xc8;return function(_0x342bef){if(_0x342bef){return _0x3f14cf['status'](_0x3f438f)[_0x7d5b('0x1b')](_0x342bef);}};}function respondWithFilteredResult(_0x5f5796,_0x5ac11b){return function(_0x1dacf4){if(_0x1dacf4){var _0x310ea3=_0x1dacf4[_0x7d5b('0x1c')],_0x314a8b=_0x5ac11b['offset'],_0x3c0bdf=_0x5ac11b['offset']+_0x5ac11b[_0x7d5b('0x1d')],_0x4027db;if(_0x3c0bdf>=_0x310ea3){_0x3c0bdf=_0x310ea3;_0x4027db=0xc8;}else{_0x4027db=0xce;}_0x5f5796['status'](_0x4027db);return _0x5f5796[_0x7d5b('0x1e')](_0x7d5b('0x1f'),_0x314a8b+'-'+_0x3c0bdf+'/'+_0x310ea3)[_0x7d5b('0x1b')](_0x1dacf4);}return null;};}function patchUpdates(_0x467d19){return function(_0x5e7c06){try{jsonpatch[_0x7d5b('0x20')](_0x5e7c06,_0x467d19,!![]);}catch(_0x7613fe){return BPromise[_0x7d5b('0x21')](_0x7613fe);}return _0x5e7c06[_0x7d5b('0x22')]();};}function saveUpdates(_0x2ebe3e,_0xd1a3d8){return function(_0x48e82f){if(_0x48e82f){return _0x48e82f[_0x7d5b('0x23')](_0x2ebe3e)['then'](function(_0x5ba9e){return _0x5ba9e;});}return null;};}function removeEntity(_0x391d85,_0x5ef93a){return function(_0x5f3d20){if(_0x5f3d20){return _0x5f3d20['destroy']()[_0x7d5b('0x24')](function(){var _0x5c568d=_0x5f3d20[_0x7d5b('0x25')]({'plain':!![]});var _0x3d211b=_0x7d5b('0x26');return db['UserProfileResource']['destroy']({'where':{'type':_0x3d211b,'resourceId':_0x5c568d['id']}})[_0x7d5b('0x24')](function(){return _0x5f3d20;});})['then'](function(){_0x391d85[_0x7d5b('0x1a')](0xcc)[_0x7d5b('0x27')]();});}};}function handleEntityNotFound(_0x45d19e,_0x215c9c){return function(_0x431044){if(!_0x431044){_0x45d19e[_0x7d5b('0x28')](0x194);}return _0x431044;};}function handleError(_0x376b22,_0x16db25){_0x16db25=_0x16db25||0x1f4;return function(_0x5d7ebd){logger['error'](_0x5d7ebd[_0x7d5b('0x29')]);if(_0x5d7ebd[_0x7d5b('0x2a')]){delete _0x5d7ebd['name'];}_0x376b22[_0x7d5b('0x1a')](_0x16db25)[_0x7d5b('0x2b')](_0x5d7ebd);};}exports[_0x7d5b('0x2c')]=function(_0x585cdb,_0x2e4f36){var _0x376b2b={},_0x51d774={},_0x3bf5ea={'count':0x0,'rows':[]};var _0x4b2f03=_[_0x7d5b('0x2d')](db[_0x7d5b('0x2e')][_0x7d5b('0x2f')],function(_0x3a97db){return{'name':_0x3a97db['fieldName'],'type':_0x3a97db[_0x7d5b('0x30')][_0x7d5b('0x31')]};});_0x51d774[_0x7d5b('0x32')]=_[_0x7d5b('0x2d')](_0x4b2f03,'name');_0x51d774[_0x7d5b('0x33')]=_[_0x7d5b('0x34')](_0x585cdb[_0x7d5b('0x33')]);_0x51d774[_0x7d5b('0x35')]=_[_0x7d5b('0x36')](_0x51d774[_0x7d5b('0x32')],_0x51d774['query']);_0x376b2b['attributes']=_[_0x7d5b('0x36')](_0x51d774[_0x7d5b('0x32')],qs[_0x7d5b('0x37')](_0x585cdb[_0x7d5b('0x33')][_0x7d5b('0x37')]));_0x376b2b[_0x7d5b('0x38')]=_0x376b2b[_0x7d5b('0x38')]['length']?_0x376b2b[_0x7d5b('0x38')]:_0x51d774['model'];if(!_0x585cdb['query'][_0x7d5b('0x39')](_0x7d5b('0x3a'))){_0x376b2b[_0x7d5b('0x1d')]=qs[_0x7d5b('0x1d')](_0x585cdb[_0x7d5b('0x33')][_0x7d5b('0x1d')]);_0x376b2b[_0x7d5b('0x3b')]=qs[_0x7d5b('0x3b')](_0x585cdb[_0x7d5b('0x33')][_0x7d5b('0x3b')]);}_0x376b2b['order']=qs[_0x7d5b('0x3c')](_0x585cdb['query']['sort']);_0x376b2b['where']=qs[_0x7d5b('0x35')](_[_0x7d5b('0x3d')](_0x585cdb[_0x7d5b('0x33')],_0x51d774['filters']),_0x4b2f03);if(_0x585cdb[_0x7d5b('0x33')][_0x7d5b('0x3e')]){_0x376b2b[_0x7d5b('0x3f')]=_['merge'](_0x376b2b[_0x7d5b('0x3f')],{'$or':_[_0x7d5b('0x2d')](_0x4b2f03,function(_0x3a2135){if(_0x3a2135[_0x7d5b('0x30')]!==_0x7d5b('0x40')){var _0x5675e5={};_0x5675e5[_0x3a2135[_0x7d5b('0x2a')]]={'$like':'%'+_0x585cdb[_0x7d5b('0x33')][_0x7d5b('0x3e')]+'%'};return _0x5675e5;}})});}_0x376b2b=_['merge']({},_0x376b2b,_0x585cdb[_0x7d5b('0x41')]);var _0x4097e3={'where':_0x376b2b[_0x7d5b('0x3f')]};return db['Dashboard'][_0x7d5b('0x1c')](_0x4097e3)[_0x7d5b('0x24')](function(_0x2623a0){_0x3bf5ea['count']=_0x2623a0;if(_0x585cdb[_0x7d5b('0x33')][_0x7d5b('0x42')]){_0x376b2b['include']=[{'all':!![]}];}return db[_0x7d5b('0x2e')][_0x7d5b('0x43')](_0x376b2b);})[_0x7d5b('0x24')](function(_0x52630a){_0x3bf5ea['rows']=_0x52630a;return _0x3bf5ea;})[_0x7d5b('0x24')](respondWithFilteredResult(_0x2e4f36,_0x376b2b))[_0x7d5b('0x44')](handleError(_0x2e4f36,null));};exports[_0x7d5b('0x45')]=function(_0x46f401,_0x5ab13a){var _0x125787={'raw':![],'where':{'id':_0x46f401[_0x7d5b('0x46')]['id']}},_0x5cee66={};_0x5cee66[_0x7d5b('0x32')]=_[_0x7d5b('0x34')](db[_0x7d5b('0x2e')]['rawAttributes']);_0x5cee66['query']=_[_0x7d5b('0x34')](_0x46f401[_0x7d5b('0x33')]);_0x5cee66[_0x7d5b('0x35')]=_[_0x7d5b('0x36')](_0x5cee66[_0x7d5b('0x32')],_0x5cee66[_0x7d5b('0x33')]);_0x125787[_0x7d5b('0x38')]=_[_0x7d5b('0x36')](_0x5cee66[_0x7d5b('0x32')],qs['fields'](_0x46f401[_0x7d5b('0x33')][_0x7d5b('0x37')]));_0x125787[_0x7d5b('0x38')]=_0x125787[_0x7d5b('0x38')][_0x7d5b('0x47')]?_0x125787['attributes']:_0x5cee66[_0x7d5b('0x32')];if(_0x46f401[_0x7d5b('0x33')][_0x7d5b('0x42')]){_0x125787[_0x7d5b('0x48')]=[{'all':!![]}];}_0x125787=_[_0x7d5b('0x49')]({},_0x125787,_0x46f401[_0x7d5b('0x41')]);return db[_0x7d5b('0x2e')][_0x7d5b('0x4a')](_0x125787)[_0x7d5b('0x24')](handleEntityNotFound(_0x5ab13a,null))['then'](respondWithResult(_0x5ab13a,null))['catch'](handleError(_0x5ab13a,null));};exports[_0x7d5b('0x4b')]=function(_0x41b41c,_0x5f06c0){return db[_0x7d5b('0x2e')][_0x7d5b('0x4b')](_0x41b41c[_0x7d5b('0x4c')],{})['then'](function(_0xb533c9){var _0x4b634e=_0x41b41c['user'][_0x7d5b('0x25')]({'plain':!![]});if(!_0x4b634e)throw new Error(_0x7d5b('0x4d'));if(_0x4b634e[_0x7d5b('0x4e')]===_0x7d5b('0x4f')){var _0x1462c0=_0xb533c9[_0x7d5b('0x25')]({'plain':!![]});var _0x3e46a5=_0x7d5b('0x26');return db[_0x7d5b('0x50')][_0x7d5b('0x4a')]({'where':{'name':_0x3e46a5,'userProfileId':_0x4b634e[_0x7d5b('0x51')]},'raw':!![]})['then'](function(_0x1867eb){if(_0x1867eb&&_0x1867eb[_0x7d5b('0x52')]===0x0){return db[_0x7d5b('0x53')][_0x7d5b('0x4b')]({'name':_0x1462c0[_0x7d5b('0x2a')],'resourceId':_0x1462c0['id'],'type':_0x1867eb[_0x7d5b('0x2a')],'sectionId':_0x1867eb['id']},{})[_0x7d5b('0x24')](function(){return _0xb533c9;});}else{return _0xb533c9;}})[_0x7d5b('0x44')](function(_0x20cc21){logger['error'](_0x7d5b('0x54'),_0x20cc21);throw _0x20cc21;});}return _0xb533c9;})[_0x7d5b('0x24')](respondWithResult(_0x5f06c0,0xc9))['catch'](handleError(_0x5f06c0,null));};exports[_0x7d5b('0x55')]=function(_0x4deacc,_0xff6abf){var _0x10a384={'where':{'id':_0x4deacc[_0x7d5b('0x46')]['id']}},_0x401ec1={};_0x401ec1[_0x7d5b('0x32')]=_[_0x7d5b('0x34')](db['Dashboard']['rawAttributes']);_0x10a384['attributes']=_['intersection'](_0x401ec1[_0x7d5b('0x32')],qs[_0x7d5b('0x37')](_0x4deacc[_0x7d5b('0x33')][_0x7d5b('0x37')]));_0x10a384[_0x7d5b('0x38')]=_0x10a384['attributes'][_0x7d5b('0x47')]?_0x10a384[_0x7d5b('0x38')]:_0x401ec1[_0x7d5b('0x32')];if(_0x4deacc[_0x7d5b('0x33')][_0x7d5b('0x42')]){_0x10a384['include']=[{'all':!![]}];}_0x10a384=_[_0x7d5b('0x49')]({},_0x10a384,_0x4deacc[_0x7d5b('0x41')]);return db[_0x7d5b('0x2e')][_0x7d5b('0x4a')](_0x10a384)['then'](handleEntityNotFound(_0xff6abf,null))[_0x7d5b('0x24')](function(_0x46380d){if(_0x46380d){var _0x384af7=_0x46380d[_0x7d5b('0x25')]({'plain':!![]});_0x384af7=qs[_0x7d5b('0x56')](_0x384af7,['id',_0x7d5b('0x57'),_0x7d5b('0x58')]);_0x4deacc['body']=_['omit'](_0x4deacc['body'],['id',_0x7d5b('0x57'),'updatedAt']);return db[_0x7d5b('0x2e')][_0x7d5b('0x4b')](_[_0x7d5b('0x49')](_0x384af7,_0x4deacc[_0x7d5b('0x4c')]),{'include':_0x4deacc[_0x7d5b('0x33')][_0x7d5b('0x42')]?[{'all':!![]}]:undefined})[_0x7d5b('0x24')](function(_0x124f89){var _0x5ae9ea=_0x4deacc[_0x7d5b('0x4f')][_0x7d5b('0x25')]({'plain':!![]});if(!_0x5ae9ea)throw new Error(_0x7d5b('0x4d'));if(_0x5ae9ea[_0x7d5b('0x4e')]==='user'){var _0x2a22a0=_0x124f89[_0x7d5b('0x25')]({'plain':!![]});var _0xba3051=_0x7d5b('0x26');return db[_0x7d5b('0x50')][_0x7d5b('0x4a')]({'where':{'name':_0xba3051,'userProfileId':_0x5ae9ea[_0x7d5b('0x51')]},'raw':!![]})[_0x7d5b('0x24')](function(_0x4ffcec){if(_0x4ffcec&&_0x4ffcec[_0x7d5b('0x52')]===0x0){return db[_0x7d5b('0x53')][_0x7d5b('0x4b')]({'name':_0x2a22a0['name'],'resourceId':_0x2a22a0['id'],'type':_0x4ffcec[_0x7d5b('0x2a')],'sectionId':_0x4ffcec['id']},{})['then'](function(){return _0x124f89;});}else{return _0x124f89;}})[_0x7d5b('0x44')](function(_0x4511c9){logger[_0x7d5b('0x59')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x4511c9);throw _0x4511c9;});}return _0x124f89;});}})['then'](respondWithResult(_0xff6abf,0xc9))[_0x7d5b('0x44')](handleError(_0xff6abf,null));};exports[_0x7d5b('0x23')]=function(_0x33a455,_0x3000bd){if(_0x33a455[_0x7d5b('0x4c')]['id']){delete _0x33a455[_0x7d5b('0x4c')]['id'];}return db[_0x7d5b('0x2e')][_0x7d5b('0x4a')]({'where':{'id':_0x33a455[_0x7d5b('0x46')]['id']}})[_0x7d5b('0x24')](handleEntityNotFound(_0x3000bd,null))[_0x7d5b('0x24')](saveUpdates(_0x33a455[_0x7d5b('0x4c')],null))['then'](respondWithResult(_0x3000bd,null))[_0x7d5b('0x44')](handleError(_0x3000bd,null));};exports[_0x7d5b('0x5a')]=function(_0x246357,_0x2d965d){return db[_0x7d5b('0x2e')][_0x7d5b('0x4a')]({'where':{'id':_0x246357[_0x7d5b('0x46')]['id']}})['then'](handleEntityNotFound(_0x2d965d,null))['then'](removeEntity(_0x2d965d,null))['catch'](handleError(_0x2d965d,null));};function widgetAttributes(_0x5ae6b9){try{switch(_0x5ae6b9['type']){case'iframe':return[{'name':_0x7d5b('0x5b'),'value':_0x5ae6b9[_0x7d5b('0x5b')]||(_0x5ae6b9[_0x7d5b('0x5c')]&&_0x5ae6b9[_0x7d5b('0x5c')][0x0]?_0x5ae6b9[_0x7d5b('0x5c')][0x0][_0x7d5b('0x5d')]:undefined)||'https://'}];case _0x7d5b('0x5e'):return[{'name':'attrPath','value':_0x5ae6b9[_0x7d5b('0x5f')]||(_0x5ae6b9[_0x7d5b('0x5c')]&&_0x5ae6b9[_0x7d5b('0x5c')][0x0]?_0x5ae6b9[_0x7d5b('0x5c')][0x0]['value']:undefined)||''}];case _0x7d5b('0x60'):return[{'name':_0x7d5b('0x61'),'value':_0x5ae6b9[_0x7d5b('0x61')]||(_0x5ae6b9['attrs']&&_0x5ae6b9[_0x7d5b('0x5c')][0x0]?_0x5ae6b9[_0x7d5b('0x5c')][0x0][_0x7d5b('0x5d')]:undefined)||_0x7d5b('0x62')},{'name':'attrTimezone','value':_0x5ae6b9[_0x7d5b('0x63')]||(_0x5ae6b9[_0x7d5b('0x5c')]&&_0x5ae6b9['attrs'][0x1]?_0x5ae6b9['attrs'][0x1][_0x7d5b('0x5d')]:undefined)||_0x7d5b('0x64')},{'name':_0x7d5b('0x65'),'value':_0x5ae6b9[_0x7d5b('0x65')]||(_0x5ae6b9[_0x7d5b('0x5c')]&&_0x5ae6b9[_0x7d5b('0x5c')][0x2]?_0x5ae6b9[_0x7d5b('0x5c')][0x2]['value']:undefined)||0xc}];case _0x7d5b('0x66'):return[{'name':_0x7d5b('0x67'),'value':_0x5ae6b9[_0x7d5b('0x67')]||(_0x5ae6b9[_0x7d5b('0x5c')]&&_0x5ae6b9['attrs'][0x0]?_0x5ae6b9[_0x7d5b('0x5c')][0x0][_0x7d5b('0x5d')]:undefined)||_0x7d5b('0x68')},{'name':_0x7d5b('0x69'),'value':_0x5ae6b9['attrVoiceQueues']||(_0x5ae6b9[_0x7d5b('0x5c')]&&_0x5ae6b9[_0x7d5b('0x5c')][0x1]?_0x5ae6b9[_0x7d5b('0x5c')][0x1][_0x7d5b('0x5d')]:undefined)||[]},{'name':_0x7d5b('0x65'),'value':_0x5ae6b9[_0x7d5b('0x65')]||(_0x5ae6b9[_0x7d5b('0x5c')]&&_0x5ae6b9['attrs'][0x2]?_0x5ae6b9['attrs'][0x2][_0x7d5b('0x5d')]:undefined)||0x14}];case _0x7d5b('0x6a'):case _0x7d5b('0x6b'):return[{'name':_0x7d5b('0x6c'),'value':_0x5ae6b9[_0x7d5b('0x6c')]||(_0x5ae6b9[_0x7d5b('0x5c')]&&_0x5ae6b9['attrs'][0x0]?_0x5ae6b9[_0x7d5b('0x5c')][0x0][_0x7d5b('0x5d')]:undefined)||_0x7d5b('0x68')},{'name':'attrSerie2','value':_0x5ae6b9['attrSerie2']||(_0x5ae6b9[_0x7d5b('0x5c')]&&_0x5ae6b9['attrs'][0x1]?_0x5ae6b9[_0x7d5b('0x5c')][0x1][_0x7d5b('0x5d')]:undefined)||null},{'name':_0x7d5b('0x6d'),'value':_0x5ae6b9[_0x7d5b('0x6d')]||(_0x5ae6b9[_0x7d5b('0x5c')]&&_0x5ae6b9['attrs'][0x2]?_0x5ae6b9[_0x7d5b('0x5c')][0x2][_0x7d5b('0x5d')]:undefined)||null},{'name':_0x7d5b('0x69'),'value':_0x5ae6b9[_0x7d5b('0x69')]||(_0x5ae6b9[_0x7d5b('0x5c')]&&_0x5ae6b9[_0x7d5b('0x5c')][0x3]?_0x5ae6b9[_0x7d5b('0x5c')][0x3][_0x7d5b('0x5d')]:undefined)||[]}];case'web-report':return[{'name':'attrReport','type':_0x5ae6b9[_0x7d5b('0x6e')]||(_0x5ae6b9['attrs']&&_0x5ae6b9[_0x7d5b('0x5c')][0x0]?_0x5ae6b9[_0x7d5b('0x5c')][0x0][_0x7d5b('0x30')]:undefined)||null,'value':_0x5ae6b9[_0x7d5b('0x6f')]||(_0x5ae6b9['attrs']&&_0x5ae6b9[_0x7d5b('0x5c')][0x0]?_0x5ae6b9[_0x7d5b('0x5c')][0x0]['value']:undefined)||null},{'name':'attrRefresh','value':_0x5ae6b9['attrRefresh']||(_0x5ae6b9['attrs']&&_0x5ae6b9[_0x7d5b('0x5c')][0x1]?_0x5ae6b9['attrs'][0x1][_0x7d5b('0x5d')]:undefined)||0x0}];default:return[];}}catch(_0x3cfb0b){logger[_0x7d5b('0x59')](_0x7d5b('0x70'),JSON[_0x7d5b('0x71')](_0x3cfb0b));return[];}}exports[_0x7d5b('0x72')]=function(_0x92735f,_0x185ddf,_0x317276){if(_0x92735f[_0x7d5b('0x4c')]['id']){delete _0x92735f[_0x7d5b('0x4c')]['id'];}return db['Dashboard']['find']({'where':{'id':_0x92735f[_0x7d5b('0x46')]['id']}})[_0x7d5b('0x24')](handleEntityNotFound(_0x185ddf,null))['then'](function(_0x231de7){if(_0x231de7){_0x92735f[_0x7d5b('0x4c')][_0x7d5b('0x73')]=_0x231de7['id'];_0x92735f[_0x7d5b('0x4c')]['attrs']=widgetAttributes(_0x92735f['body']);return db[_0x7d5b('0x74')]['create'](_0x92735f[_0x7d5b('0x4c')]);}})['then'](respondWithResult(_0x185ddf,null))[_0x7d5b('0x44')](handleError(_0x185ddf,null));};exports[_0x7d5b('0x75')]=function(_0x31d11e,_0x2af51a,_0x4871c7){var _0x574800={};var _0x1818c5={};var _0x23ce68;var _0x64c0c1;return db[_0x7d5b('0x2e')][_0x7d5b('0x76')]({'where':{'id':_0x31d11e['params']['id']}})[_0x7d5b('0x24')](handleEntityNotFound(_0x2af51a,null))[_0x7d5b('0x24')](function(_0x32942){if(_0x32942){_0x23ce68=_0x32942;_0x1818c5[_0x7d5b('0x32')]=_[_0x7d5b('0x34')](db[_0x7d5b('0x74')][_0x7d5b('0x2f')]);_0x1818c5['query']=_[_0x7d5b('0x34')](_0x31d11e['query']);_0x1818c5[_0x7d5b('0x35')]=_[_0x7d5b('0x36')](_0x1818c5[_0x7d5b('0x32')],_0x1818c5[_0x7d5b('0x33')]);_0x574800[_0x7d5b('0x38')]=_['intersection'](_0x1818c5[_0x7d5b('0x32')],qs['fields'](_0x31d11e['query'][_0x7d5b('0x37')]));_0x574800['attributes']=_0x574800[_0x7d5b('0x38')][_0x7d5b('0x47')]?_0x574800[_0x7d5b('0x38')]:_0x1818c5[_0x7d5b('0x32')];_0x574800[_0x7d5b('0x77')]=qs[_0x7d5b('0x3c')](_0x31d11e[_0x7d5b('0x33')]['sort']);_0x574800[_0x7d5b('0x3f')]=qs[_0x7d5b('0x35')](_['pick'](_0x31d11e['query'],_0x1818c5[_0x7d5b('0x35')]));if(_0x31d11e['query']['filter']){_0x574800['where']=_[_0x7d5b('0x49')](_0x574800[_0x7d5b('0x3f')],{'$or':_[_0x7d5b('0x2d')](_0x574800[_0x7d5b('0x38')],function(_0x4d13c9){var _0x5513c7={};_0x5513c7[_0x4d13c9]={'$like':'%'+_0x31d11e[_0x7d5b('0x33')][_0x7d5b('0x3e')]+'%'};return _0x5513c7;})});}_0x574800=_['merge']({},_0x574800,_0x31d11e['options']);return _0x23ce68[_0x7d5b('0x75')](_0x574800);}})[_0x7d5b('0x24')](function(_0x45c3bb){if(_0x45c3bb){_0x64c0c1=_0x45c3bb[_0x7d5b('0x47')];if(!_0x31d11e['query'][_0x7d5b('0x39')](_0x7d5b('0x3a'))){_0x574800[_0x7d5b('0x1d')]=qs[_0x7d5b('0x1d')](_0x31d11e[_0x7d5b('0x33')][_0x7d5b('0x1d')]);_0x574800[_0x7d5b('0x3b')]=qs[_0x7d5b('0x3b')](_0x31d11e[_0x7d5b('0x33')][_0x7d5b('0x3b')]);}return _0x23ce68[_0x7d5b('0x75')](_0x574800);}})[_0x7d5b('0x24')](function(_0x144d57){if(_0x144d57){return _0x144d57?{'count':_0x64c0c1,'rows':_0x144d57}:null;}})[_0x7d5b('0x24')](respondWithResult(_0x2af51a,null))[_0x7d5b('0x44')](handleError(_0x2af51a,null));};