Built motion from commit 9e1399f3.|2.5.37
[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 _0x1195=['order','sort','filters','pick','where','filter','merge','options','includeAll','include','findAll','catch','params','keys','find','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','userProfileId','autoAssociation','error','clone','createdAt','updatedAt','create','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','iframe','attrUrl','attrs','value','custom','attrPath','clock','attrHourFormat','attrTimezone','attrFontSize','counter','attrMetric','total','attrVoiceQueues','multibar-chart','pie-chart','attrSerie1','attrSerie3','web-report','reportType','attrReport','attrRefresh','widgetAttributes:\x20%s','stringify','DashboardId','DashboardItem','getItems','findOne','eml-format','zip-dir','fast-json-patch','request-promise','moment','path','sox','to-csv','fs-extra','lodash','squel','crypto','querystring','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/utils','../../config/environment','../../config/license/util','redis','localhost','./dashboard.socket','register','sendStatus','status','end','json','undefined','limit','count','offset','set','apply','save','update','destroy','get','CustomDashboards','UserProfileResource','then','name','send','index','map','Dashboard','rawAttributes','type','key','model','query','intersection','attributes','fields','length','hasOwnProperty','nolimit'];(function(_0x4cf0b7,_0x560029){var _0x545f10=function(_0x993533){while(--_0x993533){_0x4cf0b7['push'](_0x4cf0b7['shift']());}};_0x545f10(++_0x560029);}(_0x1195,0x11c));var _0x5119=function(_0x1e6db1,_0xb90700){_0x1e6db1=_0x1e6db1-0x0;var _0x55e924=_0x1195[_0x1e6db1];return _0x55e924;};'use strict';var emlformat=require(_0x5119('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x5119('0x1'));var jsonpatch=require(_0x5119('0x2'));var rp=require(_0x5119('0x3'));var moment=require(_0x5119('0x4'));var BPromise=require('bluebird');var Mustache=require('mustache');var util=require('util');var path=require(_0x5119('0x5'));var sox=require(_0x5119('0x6'));var csv=require(_0x5119('0x7'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x5119('0x8'));var _=require(_0x5119('0x9'));var squel=require(_0x5119('0xa'));var crypto=require(_0x5119('0xb'));var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require(_0x5119('0x7'));var querystring=require(_0x5119('0xc'));var Papa=require('papaparse');var Redis=require(_0x5119('0xd'));var authService=require('../../components/auth/service');var qs=require(_0x5119('0xe'));var as=require(_0x5119('0xf'));var hardwareService=require(_0x5119('0x10'));var logger=require('../../config/logger')(_0x5119('0x11'));var utils=require(_0x5119('0x12'));var config=require(_0x5119('0x13'));var licenseUtil=require(_0x5119('0x14'));var db=require('../../mysqldb')['db'];config[_0x5119('0x15')]=_['defaults'](config['redis'],{'host':_0x5119('0x16'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x5119('0x15')]));require(_0x5119('0x17'))[_0x5119('0x18')](socket);function respondWithStatusCode(_0x434ff2,_0x2c0c4d){_0x2c0c4d=_0x2c0c4d||0xcc;return function(_0x4874a7){if(_0x4874a7){return _0x434ff2[_0x5119('0x19')](_0x2c0c4d);}return _0x434ff2[_0x5119('0x1a')](_0x2c0c4d)[_0x5119('0x1b')]();};}function respondWithResult(_0x4e64ca,_0x17726f){_0x17726f=_0x17726f||0xc8;return function(_0x50f8d1){if(_0x50f8d1){return _0x4e64ca[_0x5119('0x1a')](_0x17726f)[_0x5119('0x1c')](_0x50f8d1);}};}function respondWithFilteredResult(_0x12393c,_0x2ed9fc){return function(_0x28dd22){if(_0x28dd22){var _0x1957e0=typeof _0x2ed9fc['offset']===_0x5119('0x1d')&&typeof _0x2ed9fc[_0x5119('0x1e')]==='undefined';var _0x4b221d=_0x28dd22[_0x5119('0x1f')];var _0x497f8a=_0x1957e0?0x0:_0x2ed9fc[_0x5119('0x20')];var _0x4d3f18=_0x1957e0?_0x28dd22['count']:_0x2ed9fc[_0x5119('0x20')]+_0x2ed9fc[_0x5119('0x1e')];var _0x2cd386;if(_0x4d3f18>=_0x4b221d){_0x4d3f18=_0x4b221d;_0x2cd386=0xc8;}else{_0x2cd386=0xce;}_0x12393c[_0x5119('0x1a')](_0x2cd386);return _0x12393c[_0x5119('0x21')]('Content-Range',_0x497f8a+'-'+_0x4d3f18+'/'+_0x4b221d)[_0x5119('0x1c')](_0x28dd22);}return null;};}function patchUpdates(_0x403013){return function(_0x12a8c9){try{jsonpatch[_0x5119('0x22')](_0x12a8c9,_0x403013,!![]);}catch(_0x5cf738){return BPromise['reject'](_0x5cf738);}return _0x12a8c9[_0x5119('0x23')]();};}function saveUpdates(_0x56347e,_0x4fde4f){return function(_0x3197ea){if(_0x3197ea){return _0x3197ea[_0x5119('0x24')](_0x56347e)['then'](function(_0x516476){return _0x516476;});}return null;};}function removeEntity(_0xff2c4b,_0x2276b4){return function(_0x39ab8a){if(_0x39ab8a){return _0x39ab8a[_0x5119('0x25')]()['then'](function(){var _0x28ba0c=_0x39ab8a[_0x5119('0x26')]({'plain':!![]});var _0x2d1a67=_0x5119('0x27');return db[_0x5119('0x28')]['destroy']({'where':{'type':_0x2d1a67,'resourceId':_0x28ba0c['id']}})[_0x5119('0x29')](function(){return _0x39ab8a;});})[_0x5119('0x29')](function(){_0xff2c4b[_0x5119('0x1a')](0xcc)[_0x5119('0x1b')]();});}};}function handleEntityNotFound(_0x3f7e34,_0x465f65){return function(_0x2f620e){if(!_0x2f620e){_0x3f7e34[_0x5119('0x19')](0x194);}return _0x2f620e;};}function handleError(_0x2d076b,_0x1001d4){_0x1001d4=_0x1001d4||0x1f4;return function(_0x342599){logger['error'](_0x342599['stack']);if(_0x342599[_0x5119('0x2a')]){delete _0x342599[_0x5119('0x2a')];}_0x2d076b[_0x5119('0x1a')](_0x1001d4)[_0x5119('0x2b')](_0x342599);};}exports[_0x5119('0x2c')]=function(_0x41506d,_0x83622f){var _0x1ee7d7={},_0x149703={},_0x2a9323={'count':0x0,'rows':[]};var _0xf49648=_[_0x5119('0x2d')](db[_0x5119('0x2e')][_0x5119('0x2f')],function(_0x18c3d5){return{'name':_0x18c3d5['fieldName'],'type':_0x18c3d5[_0x5119('0x30')][_0x5119('0x31')]};});_0x149703[_0x5119('0x32')]=_[_0x5119('0x2d')](_0xf49648,_0x5119('0x2a'));_0x149703[_0x5119('0x33')]=_['keys'](_0x41506d[_0x5119('0x33')]);_0x149703['filters']=_[_0x5119('0x34')](_0x149703['model'],_0x149703['query']);_0x1ee7d7[_0x5119('0x35')]=_[_0x5119('0x34')](_0x149703[_0x5119('0x32')],qs[_0x5119('0x36')](_0x41506d['query'][_0x5119('0x36')]));_0x1ee7d7[_0x5119('0x35')]=_0x1ee7d7[_0x5119('0x35')][_0x5119('0x37')]?_0x1ee7d7[_0x5119('0x35')]:_0x149703[_0x5119('0x32')];if(!_0x41506d[_0x5119('0x33')][_0x5119('0x38')](_0x5119('0x39'))){_0x1ee7d7['limit']=qs[_0x5119('0x1e')](_0x41506d[_0x5119('0x33')][_0x5119('0x1e')]);_0x1ee7d7['offset']=qs[_0x5119('0x20')](_0x41506d[_0x5119('0x33')]['offset']);}_0x1ee7d7[_0x5119('0x3a')]=qs[_0x5119('0x3b')](_0x41506d[_0x5119('0x33')][_0x5119('0x3b')]);_0x1ee7d7['where']=qs[_0x5119('0x3c')](_[_0x5119('0x3d')](_0x41506d[_0x5119('0x33')],_0x149703['filters']),_0xf49648);if(_0x41506d['query']['filter']){_0x1ee7d7[_0x5119('0x3e')]=_['merge'](_0x1ee7d7[_0x5119('0x3e')],{'$or':_['map'](_0xf49648,function(_0x3dc7af){if(_0x3dc7af[_0x5119('0x30')]!=='VIRTUAL'){var _0x1de224={};_0x1de224[_0x3dc7af[_0x5119('0x2a')]]={'$like':'%'+_0x41506d['query'][_0x5119('0x3f')]+'%'};return _0x1de224;}})});}_0x1ee7d7=_[_0x5119('0x40')]({},_0x1ee7d7,_0x41506d[_0x5119('0x41')]);var _0x2edad5={'where':_0x1ee7d7['where']};return db['Dashboard'][_0x5119('0x1f')](_0x2edad5)['then'](function(_0x49de4f){_0x2a9323[_0x5119('0x1f')]=_0x49de4f;if(_0x41506d['query'][_0x5119('0x42')]){_0x1ee7d7[_0x5119('0x43')]=[{'all':!![]}];}return db[_0x5119('0x2e')][_0x5119('0x44')](_0x1ee7d7);})['then'](function(_0x50db9d){_0x2a9323['rows']=_0x50db9d;return _0x2a9323;})[_0x5119('0x29')](respondWithFilteredResult(_0x83622f,_0x1ee7d7))[_0x5119('0x45')](handleError(_0x83622f,null));};exports['show']=function(_0x349e86,_0x4fbf55){var _0x44f3c0={'raw':![],'where':{'id':_0x349e86[_0x5119('0x46')]['id']}},_0x12312f={};_0x12312f[_0x5119('0x32')]=_[_0x5119('0x47')](db[_0x5119('0x2e')][_0x5119('0x2f')]);_0x12312f[_0x5119('0x33')]=_[_0x5119('0x47')](_0x349e86['query']);_0x12312f[_0x5119('0x3c')]=_[_0x5119('0x34')](_0x12312f['model'],_0x12312f['query']);_0x44f3c0['attributes']=_[_0x5119('0x34')](_0x12312f['model'],qs[_0x5119('0x36')](_0x349e86[_0x5119('0x33')]['fields']));_0x44f3c0[_0x5119('0x35')]=_0x44f3c0[_0x5119('0x35')]['length']?_0x44f3c0[_0x5119('0x35')]:_0x12312f[_0x5119('0x32')];if(_0x349e86[_0x5119('0x33')]['includeAll']){_0x44f3c0[_0x5119('0x43')]=[{'all':!![]}];}_0x44f3c0=_[_0x5119('0x40')]({},_0x44f3c0,_0x349e86[_0x5119('0x41')]);return db[_0x5119('0x2e')][_0x5119('0x48')](_0x44f3c0)['then'](handleEntityNotFound(_0x4fbf55,null))[_0x5119('0x29')](respondWithResult(_0x4fbf55,null))[_0x5119('0x45')](handleError(_0x4fbf55,null));};exports['create']=function(_0x46e5e8,_0x4c14a6){return db['Dashboard']['create'](_0x46e5e8[_0x5119('0x49')],{})[_0x5119('0x29')](function(_0x417ae6){var _0xdafc30=_0x46e5e8[_0x5119('0x4a')][_0x5119('0x26')]({'plain':!![]});if(!_0xdafc30)throw new Error(_0x5119('0x4b'));if(_0xdafc30[_0x5119('0x4c')]===_0x5119('0x4a')){var _0x463423=_0x417ae6[_0x5119('0x26')]({'plain':!![]});var _0x1521e8=_0x5119('0x27');return db[_0x5119('0x4d')][_0x5119('0x48')]({'where':{'name':_0x1521e8,'userProfileId':_0xdafc30[_0x5119('0x4e')]},'raw':!![]})['then'](function(_0x5bbd30){if(_0x5bbd30&&_0x5bbd30[_0x5119('0x4f')]===0x0){return db[_0x5119('0x28')]['create']({'name':_0x463423[_0x5119('0x2a')],'resourceId':_0x463423['id'],'type':_0x5bbd30[_0x5119('0x2a')],'sectionId':_0x5bbd30['id']},{})[_0x5119('0x29')](function(){return _0x417ae6;});}else{return _0x417ae6;}})[_0x5119('0x45')](function(_0x4dac28){logger[_0x5119('0x50')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x4dac28);throw _0x4dac28;});}return _0x417ae6;})[_0x5119('0x29')](respondWithResult(_0x4c14a6,0xc9))[_0x5119('0x45')](handleError(_0x4c14a6,null));};exports[_0x5119('0x51')]=function(_0x162561,_0x3cb127){var _0x6f673f={'where':{'id':_0x162561['params']['id']}},_0x3482cc={};_0x3482cc[_0x5119('0x32')]=_[_0x5119('0x47')](db[_0x5119('0x2e')][_0x5119('0x2f')]);_0x6f673f[_0x5119('0x35')]=_[_0x5119('0x34')](_0x3482cc[_0x5119('0x32')],qs[_0x5119('0x36')](_0x162561[_0x5119('0x33')][_0x5119('0x36')]));_0x6f673f[_0x5119('0x35')]=_0x6f673f[_0x5119('0x35')][_0x5119('0x37')]?_0x6f673f[_0x5119('0x35')]:_0x3482cc[_0x5119('0x32')];if(_0x162561[_0x5119('0x33')]['includeAll']){_0x6f673f[_0x5119('0x43')]=[{'all':!![]}];}_0x6f673f=_[_0x5119('0x40')]({},_0x6f673f,_0x162561[_0x5119('0x41')]);return db[_0x5119('0x2e')]['find'](_0x6f673f)[_0x5119('0x29')](handleEntityNotFound(_0x3cb127,null))[_0x5119('0x29')](function(_0x2d87e6){if(_0x2d87e6){var _0x8be3f5=_0x2d87e6[_0x5119('0x26')]({'plain':!![]});_0x8be3f5=qs['omit'](_0x8be3f5,['id','createdAt','updatedAt']);_0x162561[_0x5119('0x49')]=_['omit'](_0x162561[_0x5119('0x49')],['id',_0x5119('0x52'),_0x5119('0x53')]);return db[_0x5119('0x2e')][_0x5119('0x54')](_[_0x5119('0x40')](_0x8be3f5,_0x162561[_0x5119('0x49')]),{'include':_0x162561[_0x5119('0x33')][_0x5119('0x42')]?[{'all':!![]}]:undefined})[_0x5119('0x29')](function(_0x5b73bf){var _0x59d7e6=_0x162561['user'][_0x5119('0x26')]({'plain':!![]});if(!_0x59d7e6)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x59d7e6['role']===_0x5119('0x4a')){var _0x2527fb=_0x5b73bf['get']({'plain':!![]});var _0x3e478d='CustomDashboards';return db['UserProfileSection'][_0x5119('0x48')]({'where':{'name':_0x3e478d,'userProfileId':_0x59d7e6['userProfileId']},'raw':!![]})['then'](function(_0x3c82f9){if(_0x3c82f9&&_0x3c82f9[_0x5119('0x4f')]===0x0){return db[_0x5119('0x28')]['create']({'name':_0x2527fb[_0x5119('0x2a')],'resourceId':_0x2527fb['id'],'type':_0x3c82f9[_0x5119('0x2a')],'sectionId':_0x3c82f9['id']},{})[_0x5119('0x29')](function(){return _0x5b73bf;});}else{return _0x5b73bf;}})[_0x5119('0x45')](function(_0x112285){logger[_0x5119('0x50')](_0x5119('0x55'),_0x112285);throw _0x112285;});}return _0x5b73bf;});}})[_0x5119('0x29')](respondWithResult(_0x3cb127,0xc9))['catch'](handleError(_0x3cb127,null));};exports[_0x5119('0x24')]=function(_0x28bc9e,_0x16c5ed){if(_0x28bc9e[_0x5119('0x49')]['id']){delete _0x28bc9e[_0x5119('0x49')]['id'];}return db['Dashboard'][_0x5119('0x48')]({'where':{'id':_0x28bc9e[_0x5119('0x46')]['id']}})[_0x5119('0x29')](handleEntityNotFound(_0x16c5ed,null))[_0x5119('0x29')](saveUpdates(_0x28bc9e['body'],null))[_0x5119('0x29')](respondWithResult(_0x16c5ed,null))[_0x5119('0x45')](handleError(_0x16c5ed,null));};exports[_0x5119('0x25')]=function(_0x288d9f,_0x919a0a){return db[_0x5119('0x2e')][_0x5119('0x48')]({'where':{'id':_0x288d9f[_0x5119('0x46')]['id']}})['then'](handleEntityNotFound(_0x919a0a,null))[_0x5119('0x29')](removeEntity(_0x919a0a,null))['catch'](handleError(_0x919a0a,null));};function widgetAttributes(_0x45768f){try{switch(_0x45768f[_0x5119('0x30')]){case _0x5119('0x56'):return[{'name':_0x5119('0x57'),'value':_0x45768f['attrUrl']||(_0x45768f['attrs']&&_0x45768f['attrs'][0x0]?_0x45768f[_0x5119('0x58')][0x0][_0x5119('0x59')]:undefined)||'https://'}];case _0x5119('0x5a'):return[{'name':_0x5119('0x5b'),'value':_0x45768f[_0x5119('0x5b')]||(_0x45768f[_0x5119('0x58')]&&_0x45768f[_0x5119('0x58')][0x0]?_0x45768f['attrs'][0x0][_0x5119('0x59')]:undefined)||''}];case _0x5119('0x5c'):return[{'name':'attrHourFormat','value':_0x45768f[_0x5119('0x5d')]||(_0x45768f[_0x5119('0x58')]&&_0x45768f[_0x5119('0x58')][0x0]?_0x45768f[_0x5119('0x58')][0x0][_0x5119('0x59')]:undefined)||'HH:mm:ss'},{'name':'attrTimezone','value':_0x45768f[_0x5119('0x5e')]||(_0x45768f[_0x5119('0x58')]&&_0x45768f[_0x5119('0x58')][0x1]?_0x45768f['attrs'][0x1][_0x5119('0x59')]:undefined)||'0.00'},{'name':_0x5119('0x5f'),'value':_0x45768f[_0x5119('0x5f')]||(_0x45768f[_0x5119('0x58')]&&_0x45768f['attrs'][0x2]?_0x45768f[_0x5119('0x58')][0x2][_0x5119('0x59')]:undefined)||0xc}];case _0x5119('0x60'):return[{'name':_0x5119('0x61'),'value':_0x45768f['attrMetric']||(_0x45768f[_0x5119('0x58')]&&_0x45768f[_0x5119('0x58')][0x0]?_0x45768f[_0x5119('0x58')][0x0][_0x5119('0x59')]:undefined)||_0x5119('0x62')},{'name':_0x5119('0x63'),'value':_0x45768f[_0x5119('0x63')]||(_0x45768f[_0x5119('0x58')]&&_0x45768f[_0x5119('0x58')][0x1]?_0x45768f[_0x5119('0x58')][0x1]['value']:undefined)||[]},{'name':_0x5119('0x5f'),'value':_0x45768f['attrFontSize']||(_0x45768f[_0x5119('0x58')]&&_0x45768f['attrs'][0x2]?_0x45768f['attrs'][0x2]['value']:undefined)||0x14}];case _0x5119('0x64'):case _0x5119('0x65'):return[{'name':_0x5119('0x66'),'value':_0x45768f[_0x5119('0x66')]||(_0x45768f['attrs']&&_0x45768f[_0x5119('0x58')][0x0]?_0x45768f[_0x5119('0x58')][0x0][_0x5119('0x59')]:undefined)||_0x5119('0x62')},{'name':'attrSerie2','value':_0x45768f['attrSerie2']||(_0x45768f[_0x5119('0x58')]&&_0x45768f[_0x5119('0x58')][0x1]?_0x45768f[_0x5119('0x58')][0x1][_0x5119('0x59')]:undefined)||null},{'name':_0x5119('0x67'),'value':_0x45768f[_0x5119('0x67')]||(_0x45768f[_0x5119('0x58')]&&_0x45768f['attrs'][0x2]?_0x45768f[_0x5119('0x58')][0x2]['value']:undefined)||null},{'name':_0x5119('0x63'),'value':_0x45768f[_0x5119('0x63')]||(_0x45768f[_0x5119('0x58')]&&_0x45768f[_0x5119('0x58')][0x3]?_0x45768f['attrs'][0x3][_0x5119('0x59')]:undefined)||[]}];case _0x5119('0x68'):return[{'name':'attrReport','type':_0x45768f[_0x5119('0x69')]||(_0x45768f[_0x5119('0x58')]&&_0x45768f[_0x5119('0x58')][0x0]?_0x45768f[_0x5119('0x58')][0x0][_0x5119('0x30')]:undefined)||null,'value':_0x45768f[_0x5119('0x6a')]||(_0x45768f['attrs']&&_0x45768f[_0x5119('0x58')][0x0]?_0x45768f[_0x5119('0x58')][0x0][_0x5119('0x59')]:undefined)||null},{'name':_0x5119('0x6b'),'value':_0x45768f[_0x5119('0x6b')]||(_0x45768f[_0x5119('0x58')]&&_0x45768f[_0x5119('0x58')][0x1]?_0x45768f[_0x5119('0x58')][0x1][_0x5119('0x59')]:undefined)||0x0}];default:return[];}}catch(_0x1db77b){logger[_0x5119('0x50')](_0x5119('0x6c'),JSON[_0x5119('0x6d')](_0x1db77b));return[];}}exports['addItem']=function(_0x2d1db4,_0x134964,_0x59f59b){if(_0x2d1db4['body']['id']){delete _0x2d1db4[_0x5119('0x49')]['id'];}return db[_0x5119('0x2e')][_0x5119('0x48')]({'where':{'id':_0x2d1db4[_0x5119('0x46')]['id']}})['then'](handleEntityNotFound(_0x134964,null))[_0x5119('0x29')](function(_0x4269ec){if(_0x4269ec){_0x2d1db4[_0x5119('0x49')][_0x5119('0x6e')]=_0x4269ec['id'];_0x2d1db4[_0x5119('0x49')][_0x5119('0x58')]=widgetAttributes(_0x2d1db4[_0x5119('0x49')]);return db[_0x5119('0x6f')][_0x5119('0x54')](_0x2d1db4[_0x5119('0x49')]);}})[_0x5119('0x29')](respondWithResult(_0x134964,null))[_0x5119('0x45')](handleError(_0x134964,null));};exports[_0x5119('0x70')]=function(_0x1810a1,_0x30ced4,_0x4ca258){var _0x256566={};var _0x118890={};var _0x1ce256;var _0x15b4aa;return db[_0x5119('0x2e')][_0x5119('0x71')]({'where':{'id':_0x1810a1[_0x5119('0x46')]['id']}})[_0x5119('0x29')](handleEntityNotFound(_0x30ced4,null))[_0x5119('0x29')](function(_0xb6b583){if(_0xb6b583){_0x1ce256=_0xb6b583;_0x118890[_0x5119('0x32')]=_[_0x5119('0x47')](db[_0x5119('0x6f')][_0x5119('0x2f')]);_0x118890['query']=_[_0x5119('0x47')](_0x1810a1['query']);_0x118890[_0x5119('0x3c')]=_[_0x5119('0x34')](_0x118890[_0x5119('0x32')],_0x118890[_0x5119('0x33')]);_0x256566[_0x5119('0x35')]=_[_0x5119('0x34')](_0x118890[_0x5119('0x32')],qs['fields'](_0x1810a1['query']['fields']));_0x256566[_0x5119('0x35')]=_0x256566[_0x5119('0x35')][_0x5119('0x37')]?_0x256566[_0x5119('0x35')]:_0x118890[_0x5119('0x32')];_0x256566['order']=qs[_0x5119('0x3b')](_0x1810a1[_0x5119('0x33')]['sort']);_0x256566['where']=qs[_0x5119('0x3c')](_[_0x5119('0x3d')](_0x1810a1[_0x5119('0x33')],_0x118890['filters']));if(_0x1810a1[_0x5119('0x33')][_0x5119('0x3f')]){_0x256566[_0x5119('0x3e')]=_['merge'](_0x256566[_0x5119('0x3e')],{'$or':_['map'](_0x256566[_0x5119('0x35')],function(_0x44b252){var _0x2d2fd9={};_0x2d2fd9[_0x44b252]={'$like':'%'+_0x1810a1[_0x5119('0x33')]['filter']+'%'};return _0x2d2fd9;})});}_0x256566=_[_0x5119('0x40')]({},_0x256566,_0x1810a1[_0x5119('0x41')]);return _0x1ce256['getItems'](_0x256566);}})[_0x5119('0x29')](function(_0x38fbee){if(_0x38fbee){_0x15b4aa=_0x38fbee[_0x5119('0x37')];if(!_0x1810a1[_0x5119('0x33')][_0x5119('0x38')]('nolimit')){_0x256566[_0x5119('0x1e')]=qs['limit'](_0x1810a1[_0x5119('0x33')]['limit']);_0x256566[_0x5119('0x20')]=qs[_0x5119('0x20')](_0x1810a1['query'][_0x5119('0x20')]);}return _0x1ce256['getItems'](_0x256566);}})['then'](function(_0x159365){if(_0x159365){return _0x159365?{'count':_0x15b4aa,'rows':_0x159365}:null;}})[_0x5119('0x29')](respondWithResult(_0x30ced4,null))[_0x5119('0x45')](handleError(_0x30ced4,null));};