Built motion from commit (unavailable).|2.5.4
[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 _0x64f9=['counter','attrMetric','total','attrVoiceQueues','multibar-chart','attrSerie1','attrSerie2','attrSerie3','web-report','reportType','attrReport','attrRefresh','widgetAttributes:\x20%s','stringify','addItem','DashboardItem','getItems','findOne','filter','hasOwnProperty','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','to-csv','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/utils','../../config/environment','../../mysqldb','redis','defaults','localhost','socket.io-emitter','./dashboard.socket','sendStatus','status','json','offset','limit','set','apply','save','update','then','get','CustomDashboards','end','error','stack','send','map','Dashboard','rawAttributes','type','key','name','query','keys','filters','intersection','model','attributes','fields','length','nolimit','sort','where','pick','VIRTUAL','merge','options','count','includeAll','include','findAll','catch','params','find','create','user','role','UserProfileSection','userProfileId','autoAssociation','UserProfileResource','clone','createdAt','updatedAt','omit','body','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','iframe','attrUrl','attrs','value','https://','custom','attrPath','attrHourFormat','attrTimezone','0.00','attrFontSize'];(function(_0x37817f,_0x3f242b){var _0x6e2a0b=function(_0x3b33e4){while(--_0x3b33e4){_0x37817f['push'](_0x37817f['shift']());}};_0x6e2a0b(++_0x3f242b);}(_0x64f9,0x17c));var _0x964f=function(_0x1d426f,_0x37e919){_0x1d426f=_0x1d426f-0x0;var _0x17f71a=_0x64f9[_0x1d426f];return _0x17f71a;};'use strict';var pdf=require(_0x964f('0x0'));var emlformat=require(_0x964f('0x1'));var rimraf=require(_0x964f('0x2'));var zipdir=require(_0x964f('0x3'));var jsonpatch=require(_0x964f('0x4'));var rp=require(_0x964f('0x5'));var moment=require(_0x964f('0x6'));var BPromise=require(_0x964f('0x7'));var Mustache=require(_0x964f('0x8'));var util=require(_0x964f('0x9'));var path=require(_0x964f('0xa'));var sox=require('sox');var csv=require(_0x964f('0xb'));var ejs=require('ejs');var fs=require('fs');var _=require(_0x964f('0xc'));var squel=require(_0x964f('0xd'));var crypto=require(_0x964f('0xe'));var jsforce=require(_0x964f('0xf'));var deskjs=require(_0x964f('0x10'));var toCsv=require(_0x964f('0xb'));var querystring=require(_0x964f('0x11'));var Papa=require(_0x964f('0x12'));var Redis=require('ioredis');var authService=require(_0x964f('0x13'));var qs=require(_0x964f('0x14'));var as=require(_0x964f('0x15'));var hardwareService=require(_0x964f('0x16'));var logger=require('../../config/logger')(_0x964f('0x17'));var utils=require(_0x964f('0x18'));var config=require(_0x964f('0x19'));var db=require(_0x964f('0x1a'))['db'];config[_0x964f('0x1b')]=_[_0x964f('0x1c')](config[_0x964f('0x1b')],{'host':_0x964f('0x1d'),'port':0x18eb});var socket=require(_0x964f('0x1e'))(new Redis(config[_0x964f('0x1b')]));require(_0x964f('0x1f'))['register'](socket);function respondWithStatusCode(_0x1b4cd9,_0x5b3938){_0x5b3938=_0x5b3938||0xcc;return function(_0x5bc93f){if(_0x5bc93f){return _0x1b4cd9[_0x964f('0x20')](_0x5b3938);}return _0x1b4cd9[_0x964f('0x21')](_0x5b3938)['end']();};}function respondWithResult(_0x49aa68,_0x4f6f5f){_0x4f6f5f=_0x4f6f5f||0xc8;return function(_0x401539){if(_0x401539){return _0x49aa68[_0x964f('0x21')](_0x4f6f5f)[_0x964f('0x22')](_0x401539);}};}function respondWithFilteredResult(_0x1b1647,_0x220d58){return function(_0x1b212c){if(_0x1b212c){var _0x275b12=_0x1b212c['count'],_0x1899e8=_0x220d58[_0x964f('0x23')],_0x261dbc=_0x220d58[_0x964f('0x23')]+_0x220d58[_0x964f('0x24')],_0x122201;if(_0x261dbc>=_0x275b12){_0x261dbc=_0x275b12;_0x122201=0xc8;}else{_0x122201=0xce;}_0x1b1647[_0x964f('0x21')](_0x122201);return _0x1b1647[_0x964f('0x25')]('Content-Range',_0x1899e8+'-'+_0x261dbc+'/'+_0x275b12)[_0x964f('0x22')](_0x1b212c);}return null;};}function patchUpdates(_0x18de55){return function(_0x48358a){try{jsonpatch[_0x964f('0x26')](_0x48358a,_0x18de55,!![]);}catch(_0x1e3f0a){return BPromise['reject'](_0x1e3f0a);}return _0x48358a[_0x964f('0x27')]();};}function saveUpdates(_0x4a9acb,_0x155646){return function(_0x3240c4){if(_0x3240c4){return _0x3240c4[_0x964f('0x28')](_0x4a9acb)[_0x964f('0x29')](function(_0x46936b){return _0x46936b;});}return null;};}function removeEntity(_0x2bf709,_0x3ca7c3){return function(_0x2238d6){if(_0x2238d6){return _0x2238d6['destroy']()[_0x964f('0x29')](function(){var _0x228702=_0x2238d6[_0x964f('0x2a')]({'plain':!![]});var _0x142f16=_0x964f('0x2b');return db['UserProfileResource']['destroy']({'where':{'type':_0x142f16,'resourceId':_0x228702['id']}})[_0x964f('0x29')](function(){return _0x2238d6;});})[_0x964f('0x29')](function(){_0x2bf709[_0x964f('0x21')](0xcc)[_0x964f('0x2c')]();});}};}function handleEntityNotFound(_0xa4d7f5,_0x14f740){return function(_0xcbc026){if(!_0xcbc026){_0xa4d7f5[_0x964f('0x20')](0x194);}return _0xcbc026;};}function handleError(_0x3d61e3,_0x2ddd7d){_0x2ddd7d=_0x2ddd7d||0x1f4;return function(_0x62189f){logger[_0x964f('0x2d')](_0x62189f[_0x964f('0x2e')]);if(_0x62189f['name']){delete _0x62189f['name'];}_0x3d61e3['status'](_0x2ddd7d)[_0x964f('0x2f')](_0x62189f);};}exports['index']=function(_0x5a0201,_0x4d0c15){var _0x285a52={},_0x12e618={},_0x2da33a={'count':0x0,'rows':[]};var _0x4b515c=_[_0x964f('0x30')](db[_0x964f('0x31')][_0x964f('0x32')],function(_0x18de38){return{'name':_0x18de38['fieldName'],'type':_0x18de38[_0x964f('0x33')][_0x964f('0x34')]};});_0x12e618['model']=_[_0x964f('0x30')](_0x4b515c,_0x964f('0x35'));_0x12e618[_0x964f('0x36')]=_[_0x964f('0x37')](_0x5a0201[_0x964f('0x36')]);_0x12e618[_0x964f('0x38')]=_[_0x964f('0x39')](_0x12e618[_0x964f('0x3a')],_0x12e618[_0x964f('0x36')]);_0x285a52[_0x964f('0x3b')]=_[_0x964f('0x39')](_0x12e618[_0x964f('0x3a')],qs['fields'](_0x5a0201['query'][_0x964f('0x3c')]));_0x285a52['attributes']=_0x285a52['attributes'][_0x964f('0x3d')]?_0x285a52[_0x964f('0x3b')]:_0x12e618['model'];if(!_0x5a0201[_0x964f('0x36')]['hasOwnProperty'](_0x964f('0x3e'))){_0x285a52[_0x964f('0x24')]=qs[_0x964f('0x24')](_0x5a0201['query'][_0x964f('0x24')]);_0x285a52[_0x964f('0x23')]=qs[_0x964f('0x23')](_0x5a0201[_0x964f('0x36')][_0x964f('0x23')]);}_0x285a52['order']=qs[_0x964f('0x3f')](_0x5a0201['query'][_0x964f('0x3f')]);_0x285a52[_0x964f('0x40')]=qs['filters'](_[_0x964f('0x41')](_0x5a0201[_0x964f('0x36')],_0x12e618[_0x964f('0x38')]),_0x4b515c);if(_0x5a0201[_0x964f('0x36')]['filter']){_0x285a52[_0x964f('0x40')]=_['merge'](_0x285a52['where'],{'$or':_[_0x964f('0x30')](_0x4b515c,function(_0x1a6965){if(_0x1a6965[_0x964f('0x33')]!==_0x964f('0x42')){var _0x46f706={};_0x46f706[_0x1a6965[_0x964f('0x35')]]={'$like':'%'+_0x5a0201['query']['filter']+'%'};return _0x46f706;}})});}_0x285a52=_[_0x964f('0x43')]({},_0x285a52,_0x5a0201[_0x964f('0x44')]);var _0x417a11={'where':_0x285a52[_0x964f('0x40')]};return db['Dashboard'][_0x964f('0x45')](_0x417a11)[_0x964f('0x29')](function(_0x25911b){_0x2da33a[_0x964f('0x45')]=_0x25911b;if(_0x5a0201[_0x964f('0x36')][_0x964f('0x46')]){_0x285a52[_0x964f('0x47')]=[{'all':!![]}];}return db[_0x964f('0x31')][_0x964f('0x48')](_0x285a52);})[_0x964f('0x29')](function(_0x47e8e5){_0x2da33a['rows']=_0x47e8e5;return _0x2da33a;})[_0x964f('0x29')](respondWithFilteredResult(_0x4d0c15,_0x285a52))[_0x964f('0x49')](handleError(_0x4d0c15,null));};exports['show']=function(_0x5e4718,_0x26c736){var _0x40bf36={'raw':![],'where':{'id':_0x5e4718[_0x964f('0x4a')]['id']}},_0x5f44fc={};_0x5f44fc[_0x964f('0x3a')]=_[_0x964f('0x37')](db[_0x964f('0x31')]['rawAttributes']);_0x5f44fc[_0x964f('0x36')]=_[_0x964f('0x37')](_0x5e4718[_0x964f('0x36')]);_0x5f44fc[_0x964f('0x38')]=_['intersection'](_0x5f44fc['model'],_0x5f44fc['query']);_0x40bf36[_0x964f('0x3b')]=_[_0x964f('0x39')](_0x5f44fc[_0x964f('0x3a')],qs[_0x964f('0x3c')](_0x5e4718[_0x964f('0x36')][_0x964f('0x3c')]));_0x40bf36[_0x964f('0x3b')]=_0x40bf36[_0x964f('0x3b')][_0x964f('0x3d')]?_0x40bf36['attributes']:_0x5f44fc[_0x964f('0x3a')];if(_0x5e4718['query'][_0x964f('0x46')]){_0x40bf36[_0x964f('0x47')]=[{'all':!![]}];}_0x40bf36=_['merge']({},_0x40bf36,_0x5e4718['options']);return db[_0x964f('0x31')][_0x964f('0x4b')](_0x40bf36)[_0x964f('0x29')](handleEntityNotFound(_0x26c736,null))[_0x964f('0x29')](respondWithResult(_0x26c736,null))['catch'](handleError(_0x26c736,null));};exports[_0x964f('0x4c')]=function(_0x1acab7,_0x15fa5d){return db[_0x964f('0x31')][_0x964f('0x4c')](_0x1acab7['body'],{})['then'](function(_0x3c2e3f){var _0x358dd0=_0x1acab7[_0x964f('0x4d')][_0x964f('0x2a')]({'plain':!![]});if(!_0x358dd0)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x358dd0[_0x964f('0x4e')]===_0x964f('0x4d')){var _0x436478=_0x3c2e3f[_0x964f('0x2a')]({'plain':!![]});var _0x4372d2=_0x964f('0x2b');return db[_0x964f('0x4f')][_0x964f('0x4b')]({'where':{'name':_0x4372d2,'userProfileId':_0x358dd0[_0x964f('0x50')]},'raw':!![]})[_0x964f('0x29')](function(_0x3f536c){if(_0x3f536c&&_0x3f536c[_0x964f('0x51')]===0x0){return db[_0x964f('0x52')]['create']({'name':_0x436478[_0x964f('0x35')],'resourceId':_0x436478['id'],'type':_0x3f536c[_0x964f('0x35')],'sectionId':_0x3f536c['id']},{})['then'](function(){return _0x3c2e3f;});}else{return _0x3c2e3f;}})[_0x964f('0x49')](function(_0x4a292e){logger[_0x964f('0x2d')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x4a292e);throw _0x4a292e;});}return _0x3c2e3f;})['then'](respondWithResult(_0x15fa5d,0xc9))[_0x964f('0x49')](handleError(_0x15fa5d,null));};exports[_0x964f('0x53')]=function(_0x351bd1,_0x296a98){var _0x2e66db={'where':{'id':_0x351bd1[_0x964f('0x4a')]['id']}},_0x342d75={};_0x342d75['model']=_[_0x964f('0x37')](db['Dashboard']['rawAttributes']);_0x2e66db[_0x964f('0x3b')]=_[_0x964f('0x39')](_0x342d75['model'],qs[_0x964f('0x3c')](_0x351bd1[_0x964f('0x36')][_0x964f('0x3c')]));_0x2e66db[_0x964f('0x3b')]=_0x2e66db[_0x964f('0x3b')]['length']?_0x2e66db[_0x964f('0x3b')]:_0x342d75['model'];if(_0x351bd1['query'][_0x964f('0x46')]){_0x2e66db['include']=[{'all':!![]}];}_0x2e66db=_[_0x964f('0x43')]({},_0x2e66db,_0x351bd1[_0x964f('0x44')]);return db[_0x964f('0x31')][_0x964f('0x4b')](_0x2e66db)[_0x964f('0x29')](handleEntityNotFound(_0x296a98,null))[_0x964f('0x29')](function(_0x333110){if(_0x333110){var _0x216a31=_0x333110['get']({'plain':!![]});_0x216a31=qs['omit'](_0x216a31,['id',_0x964f('0x54'),_0x964f('0x55')]);_0x351bd1['body']=_[_0x964f('0x56')](_0x351bd1[_0x964f('0x57')],['id',_0x964f('0x54'),_0x964f('0x55')]);return db['Dashboard'][_0x964f('0x4c')](_[_0x964f('0x43')](_0x216a31,_0x351bd1[_0x964f('0x57')]),{'include':_0x351bd1[_0x964f('0x36')][_0x964f('0x46')]?[{'all':!![]}]:undefined})['then'](function(_0x37e7f4){var _0xaa5d1c=_0x351bd1[_0x964f('0x4d')][_0x964f('0x2a')]({'plain':!![]});if(!_0xaa5d1c)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0xaa5d1c[_0x964f('0x4e')]==='user'){var _0x522300=_0x37e7f4['get']({'plain':!![]});var _0x10deaf=_0x964f('0x2b');return db[_0x964f('0x4f')][_0x964f('0x4b')]({'where':{'name':_0x10deaf,'userProfileId':_0xaa5d1c[_0x964f('0x50')]},'raw':!![]})['then'](function(_0x2c4e2e){if(_0x2c4e2e&&_0x2c4e2e[_0x964f('0x51')]===0x0){return db[_0x964f('0x52')][_0x964f('0x4c')]({'name':_0x522300[_0x964f('0x35')],'resourceId':_0x522300['id'],'type':_0x2c4e2e[_0x964f('0x35')],'sectionId':_0x2c4e2e['id']},{})['then'](function(){return _0x37e7f4;});}else{return _0x37e7f4;}})[_0x964f('0x49')](function(_0x9009bf){logger[_0x964f('0x2d')](_0x964f('0x58'),_0x9009bf);throw _0x9009bf;});}return _0x37e7f4;});}})[_0x964f('0x29')](respondWithResult(_0x296a98,0xc9))[_0x964f('0x49')](handleError(_0x296a98,null));};exports[_0x964f('0x28')]=function(_0x5c79f4,_0x30cff4){if(_0x5c79f4[_0x964f('0x57')]['id']){delete _0x5c79f4['body']['id'];}return db[_0x964f('0x31')][_0x964f('0x4b')]({'where':{'id':_0x5c79f4[_0x964f('0x4a')]['id']}})[_0x964f('0x29')](handleEntityNotFound(_0x30cff4,null))[_0x964f('0x29')](saveUpdates(_0x5c79f4['body'],null))[_0x964f('0x29')](respondWithResult(_0x30cff4,null))['catch'](handleError(_0x30cff4,null));};exports['destroy']=function(_0x342394,_0x20b637){return db[_0x964f('0x31')][_0x964f('0x4b')]({'where':{'id':_0x342394[_0x964f('0x4a')]['id']}})[_0x964f('0x29')](handleEntityNotFound(_0x20b637,null))[_0x964f('0x29')](removeEntity(_0x20b637,null))[_0x964f('0x49')](handleError(_0x20b637,null));};function widgetAttributes(_0x569e6d){try{switch(_0x569e6d[_0x964f('0x33')]){case _0x964f('0x59'):return[{'name':_0x964f('0x5a'),'value':_0x569e6d[_0x964f('0x5a')]||(_0x569e6d[_0x964f('0x5b')]&&_0x569e6d[_0x964f('0x5b')][0x0]?_0x569e6d[_0x964f('0x5b')][0x0][_0x964f('0x5c')]:undefined)||_0x964f('0x5d')}];case _0x964f('0x5e'):return[{'name':_0x964f('0x5f'),'value':_0x569e6d[_0x964f('0x5f')]||(_0x569e6d['attrs']&&_0x569e6d[_0x964f('0x5b')][0x0]?_0x569e6d[_0x964f('0x5b')][0x0][_0x964f('0x5c')]:undefined)||''}];case'clock':return[{'name':_0x964f('0x60'),'value':_0x569e6d['attrHourFormat']||(_0x569e6d['attrs']&&_0x569e6d[_0x964f('0x5b')][0x0]?_0x569e6d[_0x964f('0x5b')][0x0][_0x964f('0x5c')]:undefined)||'HH:mm:ss'},{'name':_0x964f('0x61'),'value':_0x569e6d[_0x964f('0x61')]||(_0x569e6d['attrs']&&_0x569e6d[_0x964f('0x5b')][0x1]?_0x569e6d['attrs'][0x1][_0x964f('0x5c')]:undefined)||_0x964f('0x62')},{'name':'attrFontSize','value':_0x569e6d[_0x964f('0x63')]||(_0x569e6d[_0x964f('0x5b')]&&_0x569e6d[_0x964f('0x5b')][0x2]?_0x569e6d[_0x964f('0x5b')][0x2][_0x964f('0x5c')]:undefined)||0xc}];case _0x964f('0x64'):return[{'name':_0x964f('0x65'),'value':_0x569e6d[_0x964f('0x65')]||(_0x569e6d[_0x964f('0x5b')]&&_0x569e6d['attrs'][0x0]?_0x569e6d['attrs'][0x0]['value']:undefined)||_0x964f('0x66')},{'name':_0x964f('0x67'),'value':_0x569e6d[_0x964f('0x67')]||(_0x569e6d[_0x964f('0x5b')]&&_0x569e6d[_0x964f('0x5b')][0x1]?_0x569e6d[_0x964f('0x5b')][0x1][_0x964f('0x5c')]:undefined)||[]},{'name':_0x964f('0x63'),'value':_0x569e6d['attrFontSize']||(_0x569e6d['attrs']&&_0x569e6d[_0x964f('0x5b')][0x2]?_0x569e6d[_0x964f('0x5b')][0x2]['value']:undefined)||0x14}];case _0x964f('0x68'):case'pie-chart':return[{'name':_0x964f('0x69'),'value':_0x569e6d['attrSerie1']||(_0x569e6d['attrs']&&_0x569e6d[_0x964f('0x5b')][0x0]?_0x569e6d[_0x964f('0x5b')][0x0][_0x964f('0x5c')]:undefined)||_0x964f('0x66')},{'name':'attrSerie2','value':_0x569e6d[_0x964f('0x6a')]||(_0x569e6d[_0x964f('0x5b')]&&_0x569e6d[_0x964f('0x5b')][0x1]?_0x569e6d[_0x964f('0x5b')][0x1]['value']:undefined)||null},{'name':_0x964f('0x6b'),'value':_0x569e6d['attrSerie3']||(_0x569e6d[_0x964f('0x5b')]&&_0x569e6d[_0x964f('0x5b')][0x2]?_0x569e6d['attrs'][0x2][_0x964f('0x5c')]:undefined)||null},{'name':_0x964f('0x67'),'value':_0x569e6d[_0x964f('0x67')]||(_0x569e6d[_0x964f('0x5b')]&&_0x569e6d[_0x964f('0x5b')][0x3]?_0x569e6d[_0x964f('0x5b')][0x3][_0x964f('0x5c')]:undefined)||[]}];case _0x964f('0x6c'):return[{'name':'attrReport','type':_0x569e6d[_0x964f('0x6d')]||(_0x569e6d[_0x964f('0x5b')]&&_0x569e6d[_0x964f('0x5b')][0x0]?_0x569e6d[_0x964f('0x5b')][0x0][_0x964f('0x33')]:undefined)||null,'value':_0x569e6d[_0x964f('0x6e')]||(_0x569e6d[_0x964f('0x5b')]&&_0x569e6d[_0x964f('0x5b')][0x0]?_0x569e6d[_0x964f('0x5b')][0x0]['value']:undefined)||null},{'name':_0x964f('0x6f'),'value':_0x569e6d[_0x964f('0x6f')]||(_0x569e6d[_0x964f('0x5b')]&&_0x569e6d[_0x964f('0x5b')][0x1]?_0x569e6d[_0x964f('0x5b')][0x1][_0x964f('0x5c')]:undefined)||0x0}];default:return[];}}catch(_0x52396f){logger['error'](_0x964f('0x70'),JSON[_0x964f('0x71')](_0x52396f));return[];}}exports[_0x964f('0x72')]=function(_0xac6ce9,_0x499371,_0x4576f7){if(_0xac6ce9[_0x964f('0x57')]['id']){delete _0xac6ce9[_0x964f('0x57')]['id'];}return db[_0x964f('0x31')][_0x964f('0x4b')]({'where':{'id':_0xac6ce9['params']['id']}})[_0x964f('0x29')](handleEntityNotFound(_0x499371,null))[_0x964f('0x29')](function(_0x3bb637){if(_0x3bb637){_0xac6ce9[_0x964f('0x57')]['DashboardId']=_0x3bb637['id'];_0xac6ce9[_0x964f('0x57')][_0x964f('0x5b')]=widgetAttributes(_0xac6ce9[_0x964f('0x57')]);return db[_0x964f('0x73')][_0x964f('0x4c')](_0xac6ce9['body']);}})[_0x964f('0x29')](respondWithResult(_0x499371,null))[_0x964f('0x49')](handleError(_0x499371,null));};exports[_0x964f('0x74')]=function(_0x2a5d59,_0xc30766,_0x5e5cb6){var _0x6189ea={};var _0x54320d={};var _0x5869ee;var _0x4b4deb;return db[_0x964f('0x31')][_0x964f('0x75')]({'where':{'id':_0x2a5d59[_0x964f('0x4a')]['id']}})[_0x964f('0x29')](handleEntityNotFound(_0xc30766,null))['then'](function(_0x421d64){if(_0x421d64){_0x5869ee=_0x421d64;_0x54320d['model']=_['keys'](db[_0x964f('0x73')][_0x964f('0x32')]);_0x54320d[_0x964f('0x36')]=_[_0x964f('0x37')](_0x2a5d59['query']);_0x54320d[_0x964f('0x38')]=_['intersection'](_0x54320d[_0x964f('0x3a')],_0x54320d['query']);_0x6189ea['attributes']=_['intersection'](_0x54320d[_0x964f('0x3a')],qs[_0x964f('0x3c')](_0x2a5d59[_0x964f('0x36')][_0x964f('0x3c')]));_0x6189ea[_0x964f('0x3b')]=_0x6189ea[_0x964f('0x3b')][_0x964f('0x3d')]?_0x6189ea[_0x964f('0x3b')]:_0x54320d[_0x964f('0x3a')];_0x6189ea['order']=qs[_0x964f('0x3f')](_0x2a5d59[_0x964f('0x36')][_0x964f('0x3f')]);_0x6189ea[_0x964f('0x40')]=qs[_0x964f('0x38')](_[_0x964f('0x41')](_0x2a5d59['query'],_0x54320d['filters']));if(_0x2a5d59[_0x964f('0x36')][_0x964f('0x76')]){_0x6189ea[_0x964f('0x40')]=_[_0x964f('0x43')](_0x6189ea[_0x964f('0x40')],{'$or':_[_0x964f('0x30')](_0x6189ea[_0x964f('0x3b')],function(_0x1dc99b){var _0x3e8185={};_0x3e8185[_0x1dc99b]={'$like':'%'+_0x2a5d59[_0x964f('0x36')][_0x964f('0x76')]+'%'};return _0x3e8185;})});}_0x6189ea=_[_0x964f('0x43')]({},_0x6189ea,_0x2a5d59[_0x964f('0x44')]);return _0x5869ee[_0x964f('0x74')](_0x6189ea);}})[_0x964f('0x29')](function(_0x343985){if(_0x343985){_0x4b4deb=_0x343985['length'];if(!_0x2a5d59[_0x964f('0x36')][_0x964f('0x77')]('nolimit')){_0x6189ea['limit']=qs[_0x964f('0x24')](_0x2a5d59['query'][_0x964f('0x24')]);_0x6189ea[_0x964f('0x23')]=qs[_0x964f('0x23')](_0x2a5d59[_0x964f('0x36')][_0x964f('0x23')]);}return _0x5869ee[_0x964f('0x74')](_0x6189ea);}})[_0x964f('0x29')](function(_0xea5717){if(_0xea5717){return _0xea5717?{'count':_0x4b4deb,'rows':_0xea5717}:null;}})[_0x964f('0x29')](respondWithResult(_0xc30766,null))[_0x964f('0x49')](handleError(_0xc30766,null));};