Built motion from commit (unavailable).|2.5.13
[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 _0xb89a=['query','filters','attributes','intersection','fields','length','nolimit','limit','offset','order','sort','where','pick','filter','merge','count','includeAll','findAll','rows','catch','params','keys','include','options','create','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','find','userProfileId','autoAssociation','UserProfileResource','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','clone','rawAttributes','omit','updatedAt','iframe','attrUrl','attrs','custom','attrPath','value','clock','attrHourFormat','HH:mm:ss','attrTimezone','attrFontSize','counter','attrMetric','attrVoiceQueues','multibar-chart','pie-chart','attrSerie1','total','attrSerie2','web-report','attrReport','reportType','attrRefresh','widgetAttributes:\x20%s','stringify','addItem','getItems','DashboardItem','hasOwnProperty','rimraf','request-promise','mustache','util','path','ejs','lodash','squel','crypto','desk.js','querystring','papaparse','../../components/auth/service','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','redis','defaults','localhost','socket.io-emitter','register','sendStatus','status','json','set','Content-Range','apply','save','update','then','destroy','get','CustomDashboards','end','error','stack','name','send','index','map','Dashboard','fieldName','type','key','model'];(function(_0x126558,_0x143c9a){var _0x1f6d14=function(_0x2b0eea){while(--_0x2b0eea){_0x126558['push'](_0x126558['shift']());}};_0x1f6d14(++_0x143c9a);}(_0xb89a,0x128));var _0xab89=function(_0x3b3dcb,_0x5c873f){_0x3b3dcb=_0x3b3dcb-0x0;var _0x4054b4=_0xb89a[_0x3b3dcb];return _0x4054b4;};'use strict';var pdf=require('html-pdf');var emlformat=require('eml-format');var rimraf=require(_0xab89('0x0'));var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require(_0xab89('0x1'));var moment=require('moment');var BPromise=require('bluebird');var Mustache=require(_0xab89('0x2'));var util=require(_0xab89('0x3'));var path=require(_0xab89('0x4'));var sox=require('sox');var csv=require('to-csv');var ejs=require(_0xab89('0x5'));var fs=require('fs');var _=require(_0xab89('0x6'));var squel=require(_0xab89('0x7'));var crypto=require(_0xab89('0x8'));var jsforce=require('jsforce');var deskjs=require(_0xab89('0x9'));var toCsv=require('to-csv');var querystring=require(_0xab89('0xa'));var Papa=require(_0xab89('0xb'));var Redis=require('ioredis');var authService=require(_0xab89('0xc'));var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xab89('0xd'));var logger=require(_0xab89('0xe'))('api');var utils=require(_0xab89('0xf'));var config=require(_0xab89('0x10'));var licenseUtil=require('../../config/license/util');var db=require('../../mysqldb')['db'];config[_0xab89('0x11')]=_[_0xab89('0x12')](config[_0xab89('0x11')],{'host':_0xab89('0x13'),'port':0x18eb});var socket=require(_0xab89('0x14'))(new Redis(config[_0xab89('0x11')]));require('./dashboard.socket')[_0xab89('0x15')](socket);function respondWithStatusCode(_0x16d590,_0xca20f3){_0xca20f3=_0xca20f3||0xcc;return function(_0x1033f4){if(_0x1033f4){return _0x16d590[_0xab89('0x16')](_0xca20f3);}return _0x16d590[_0xab89('0x17')](_0xca20f3)['end']();};}function respondWithResult(_0x35aba9,_0x405017){_0x405017=_0x405017||0xc8;return function(_0x35452d){if(_0x35452d){return _0x35aba9['status'](_0x405017)[_0xab89('0x18')](_0x35452d);}};}function respondWithFilteredResult(_0xd50d32,_0x9438a7){return function(_0x6dd085){if(_0x6dd085){var _0x1b2459=_0x6dd085['count'],_0x4981fc=_0x9438a7['offset'],_0x424bee=_0x9438a7['offset']+_0x9438a7['limit'],_0x2bf4cb;if(_0x424bee>=_0x1b2459){_0x424bee=_0x1b2459;_0x2bf4cb=0xc8;}else{_0x2bf4cb=0xce;}_0xd50d32[_0xab89('0x17')](_0x2bf4cb);return _0xd50d32[_0xab89('0x19')](_0xab89('0x1a'),_0x4981fc+'-'+_0x424bee+'/'+_0x1b2459)[_0xab89('0x18')](_0x6dd085);}return null;};}function patchUpdates(_0x423f2e){return function(_0x39cc1b){try{jsonpatch[_0xab89('0x1b')](_0x39cc1b,_0x423f2e,!![]);}catch(_0x8c1f40){return BPromise['reject'](_0x8c1f40);}return _0x39cc1b[_0xab89('0x1c')]();};}function saveUpdates(_0x39441f,_0x40975b){return function(_0x33304e){if(_0x33304e){return _0x33304e[_0xab89('0x1d')](_0x39441f)[_0xab89('0x1e')](function(_0x374961){return _0x374961;});}return null;};}function removeEntity(_0x3867a9,_0x467380){return function(_0x542cb8){if(_0x542cb8){return _0x542cb8[_0xab89('0x1f')]()[_0xab89('0x1e')](function(){var _0x2451a7=_0x542cb8[_0xab89('0x20')]({'plain':!![]});var _0x10cbc9=_0xab89('0x21');return db['UserProfileResource'][_0xab89('0x1f')]({'where':{'type':_0x10cbc9,'resourceId':_0x2451a7['id']}})[_0xab89('0x1e')](function(){return _0x542cb8;});})['then'](function(){_0x3867a9['status'](0xcc)[_0xab89('0x22')]();});}};}function handleEntityNotFound(_0x37e9f1,_0x9369){return function(_0x271613){if(!_0x271613){_0x37e9f1['sendStatus'](0x194);}return _0x271613;};}function handleError(_0x208e43,_0x36e996){_0x36e996=_0x36e996||0x1f4;return function(_0x84c593){logger[_0xab89('0x23')](_0x84c593[_0xab89('0x24')]);if(_0x84c593[_0xab89('0x25')]){delete _0x84c593[_0xab89('0x25')];}_0x208e43[_0xab89('0x17')](_0x36e996)[_0xab89('0x26')](_0x84c593);};}exports[_0xab89('0x27')]=function(_0x57c04a,_0x33dc3e){var _0x35a5f9={},_0x86f586={},_0x260ee2={'count':0x0,'rows':[]};var _0x3bdff5=_[_0xab89('0x28')](db[_0xab89('0x29')]['rawAttributes'],function(_0x322114){return{'name':_0x322114[_0xab89('0x2a')],'type':_0x322114[_0xab89('0x2b')][_0xab89('0x2c')]};});_0x86f586[_0xab89('0x2d')]=_[_0xab89('0x28')](_0x3bdff5,_0xab89('0x25'));_0x86f586[_0xab89('0x2e')]=_['keys'](_0x57c04a[_0xab89('0x2e')]);_0x86f586[_0xab89('0x2f')]=_['intersection'](_0x86f586[_0xab89('0x2d')],_0x86f586[_0xab89('0x2e')]);_0x35a5f9[_0xab89('0x30')]=_[_0xab89('0x31')](_0x86f586['model'],qs[_0xab89('0x32')](_0x57c04a[_0xab89('0x2e')][_0xab89('0x32')]));_0x35a5f9[_0xab89('0x30')]=_0x35a5f9[_0xab89('0x30')][_0xab89('0x33')]?_0x35a5f9[_0xab89('0x30')]:_0x86f586['model'];if(!_0x57c04a[_0xab89('0x2e')]['hasOwnProperty'](_0xab89('0x34'))){_0x35a5f9['limit']=qs[_0xab89('0x35')](_0x57c04a[_0xab89('0x2e')][_0xab89('0x35')]);_0x35a5f9[_0xab89('0x36')]=qs[_0xab89('0x36')](_0x57c04a[_0xab89('0x2e')]['offset']);}_0x35a5f9[_0xab89('0x37')]=qs[_0xab89('0x38')](_0x57c04a[_0xab89('0x2e')][_0xab89('0x38')]);_0x35a5f9[_0xab89('0x39')]=qs[_0xab89('0x2f')](_[_0xab89('0x3a')](_0x57c04a[_0xab89('0x2e')],_0x86f586['filters']),_0x3bdff5);if(_0x57c04a['query'][_0xab89('0x3b')]){_0x35a5f9[_0xab89('0x39')]=_[_0xab89('0x3c')](_0x35a5f9['where'],{'$or':_[_0xab89('0x28')](_0x3bdff5,function(_0x4b65bc){if(_0x4b65bc[_0xab89('0x2b')]!=='VIRTUAL'){var _0x58c801={};_0x58c801[_0x4b65bc[_0xab89('0x25')]]={'$like':'%'+_0x57c04a[_0xab89('0x2e')][_0xab89('0x3b')]+'%'};return _0x58c801;}})});}_0x35a5f9=_[_0xab89('0x3c')]({},_0x35a5f9,_0x57c04a['options']);var _0x5dad67={'where':_0x35a5f9[_0xab89('0x39')]};return db[_0xab89('0x29')][_0xab89('0x3d')](_0x5dad67)['then'](function(_0x1c5290){_0x260ee2[_0xab89('0x3d')]=_0x1c5290;if(_0x57c04a[_0xab89('0x2e')][_0xab89('0x3e')]){_0x35a5f9['include']=[{'all':!![]}];}return db[_0xab89('0x29')][_0xab89('0x3f')](_0x35a5f9);})['then'](function(_0x321570){_0x260ee2[_0xab89('0x40')]=_0x321570;return _0x260ee2;})[_0xab89('0x1e')](respondWithFilteredResult(_0x33dc3e,_0x35a5f9))[_0xab89('0x41')](handleError(_0x33dc3e,null));};exports['show']=function(_0xf3b501,_0x54b751){var _0x3a8a50={'raw':![],'where':{'id':_0xf3b501[_0xab89('0x42')]['id']}},_0x587a26={};_0x587a26[_0xab89('0x2d')]=_[_0xab89('0x43')](db[_0xab89('0x29')]['rawAttributes']);_0x587a26[_0xab89('0x2e')]=_[_0xab89('0x43')](_0xf3b501['query']);_0x587a26['filters']=_[_0xab89('0x31')](_0x587a26['model'],_0x587a26[_0xab89('0x2e')]);_0x3a8a50[_0xab89('0x30')]=_[_0xab89('0x31')](_0x587a26[_0xab89('0x2d')],qs[_0xab89('0x32')](_0xf3b501[_0xab89('0x2e')]['fields']));_0x3a8a50[_0xab89('0x30')]=_0x3a8a50[_0xab89('0x30')][_0xab89('0x33')]?_0x3a8a50[_0xab89('0x30')]:_0x587a26[_0xab89('0x2d')];if(_0xf3b501[_0xab89('0x2e')][_0xab89('0x3e')]){_0x3a8a50[_0xab89('0x44')]=[{'all':!![]}];}_0x3a8a50=_[_0xab89('0x3c')]({},_0x3a8a50,_0xf3b501[_0xab89('0x45')]);return db[_0xab89('0x29')]['find'](_0x3a8a50)[_0xab89('0x1e')](handleEntityNotFound(_0x54b751,null))[_0xab89('0x1e')](respondWithResult(_0x54b751,null))[_0xab89('0x41')](handleError(_0x54b751,null));};exports[_0xab89('0x46')]=function(_0x54c62e,_0x2f3bcd){return db[_0xab89('0x29')][_0xab89('0x46')](_0x54c62e[_0xab89('0x47')],{})[_0xab89('0x1e')](function(_0x45a139){var _0x12ebc6=_0x54c62e[_0xab89('0x48')]['get']({'plain':!![]});if(!_0x12ebc6)throw new Error(_0xab89('0x49'));if(_0x12ebc6[_0xab89('0x4a')]==='user'){var _0x2420c9=_0x45a139['get']({'plain':!![]});var _0x1e8b94='CustomDashboards';return db[_0xab89('0x4b')][_0xab89('0x4c')]({'where':{'name':_0x1e8b94,'userProfileId':_0x12ebc6[_0xab89('0x4d')]},'raw':!![]})['then'](function(_0x40b8dc){if(_0x40b8dc&&_0x40b8dc[_0xab89('0x4e')]===0x0){return db[_0xab89('0x4f')][_0xab89('0x46')]({'name':_0x2420c9[_0xab89('0x25')],'resourceId':_0x2420c9['id'],'type':_0x40b8dc['name'],'sectionId':_0x40b8dc['id']},{})[_0xab89('0x1e')](function(){return _0x45a139;});}else{return _0x45a139;}})['catch'](function(_0x2443ed){logger[_0xab89('0x23')](_0xab89('0x50'),_0x2443ed);throw _0x2443ed;});}return _0x45a139;})[_0xab89('0x1e')](respondWithResult(_0x2f3bcd,0xc9))[_0xab89('0x41')](handleError(_0x2f3bcd,null));};exports[_0xab89('0x51')]=function(_0x5477e3,_0x5d79fe){var _0x1f2dbb={'where':{'id':_0x5477e3[_0xab89('0x42')]['id']}},_0x39baca={};_0x39baca[_0xab89('0x2d')]=_[_0xab89('0x43')](db[_0xab89('0x29')][_0xab89('0x52')]);_0x1f2dbb[_0xab89('0x30')]=_[_0xab89('0x31')](_0x39baca['model'],qs[_0xab89('0x32')](_0x5477e3['query'][_0xab89('0x32')]));_0x1f2dbb[_0xab89('0x30')]=_0x1f2dbb[_0xab89('0x30')]['length']?_0x1f2dbb[_0xab89('0x30')]:_0x39baca[_0xab89('0x2d')];if(_0x5477e3[_0xab89('0x2e')]['includeAll']){_0x1f2dbb[_0xab89('0x44')]=[{'all':!![]}];}_0x1f2dbb=_[_0xab89('0x3c')]({},_0x1f2dbb,_0x5477e3[_0xab89('0x45')]);return db['Dashboard'][_0xab89('0x4c')](_0x1f2dbb)['then'](handleEntityNotFound(_0x5d79fe,null))[_0xab89('0x1e')](function(_0x2c029d){if(_0x2c029d){var _0x4318b6=_0x2c029d[_0xab89('0x20')]({'plain':!![]});_0x4318b6=qs[_0xab89('0x53')](_0x4318b6,['id','createdAt',_0xab89('0x54')]);_0x5477e3['body']=_[_0xab89('0x53')](_0x5477e3[_0xab89('0x47')],['id','createdAt',_0xab89('0x54')]);return db[_0xab89('0x29')][_0xab89('0x46')](_['merge'](_0x4318b6,_0x5477e3[_0xab89('0x47')]),{'include':_0x5477e3[_0xab89('0x2e')][_0xab89('0x3e')]?[{'all':!![]}]:undefined})['then'](function(_0x39fdf8){var _0x5816cb=_0x5477e3[_0xab89('0x48')][_0xab89('0x20')]({'plain':!![]});if(!_0x5816cb)throw new Error(_0xab89('0x49'));if(_0x5816cb['role']==='user'){var _0x224869=_0x39fdf8['get']({'plain':!![]});var _0x147dbc='CustomDashboards';return db['UserProfileSection'][_0xab89('0x4c')]({'where':{'name':_0x147dbc,'userProfileId':_0x5816cb[_0xab89('0x4d')]},'raw':!![]})['then'](function(_0x34c4b0){if(_0x34c4b0&&_0x34c4b0[_0xab89('0x4e')]===0x0){return db['UserProfileResource']['create']({'name':_0x224869[_0xab89('0x25')],'resourceId':_0x224869['id'],'type':_0x34c4b0[_0xab89('0x25')],'sectionId':_0x34c4b0['id']},{})[_0xab89('0x1e')](function(){return _0x39fdf8;});}else{return _0x39fdf8;}})[_0xab89('0x41')](function(_0x130636){logger[_0xab89('0x23')](_0xab89('0x50'),_0x130636);throw _0x130636;});}return _0x39fdf8;});}})[_0xab89('0x1e')](respondWithResult(_0x5d79fe,0xc9))[_0xab89('0x41')](handleError(_0x5d79fe,null));};exports[_0xab89('0x1d')]=function(_0x11e9c9,_0x1f6271){if(_0x11e9c9[_0xab89('0x47')]['id']){delete _0x11e9c9[_0xab89('0x47')]['id'];}return db[_0xab89('0x29')][_0xab89('0x4c')]({'where':{'id':_0x11e9c9[_0xab89('0x42')]['id']}})[_0xab89('0x1e')](handleEntityNotFound(_0x1f6271,null))['then'](saveUpdates(_0x11e9c9[_0xab89('0x47')],null))[_0xab89('0x1e')](respondWithResult(_0x1f6271,null))[_0xab89('0x41')](handleError(_0x1f6271,null));};exports[_0xab89('0x1f')]=function(_0x2ac2a4,_0x283961){return db['Dashboard'][_0xab89('0x4c')]({'where':{'id':_0x2ac2a4[_0xab89('0x42')]['id']}})['then'](handleEntityNotFound(_0x283961,null))['then'](removeEntity(_0x283961,null))[_0xab89('0x41')](handleError(_0x283961,null));};function widgetAttributes(_0x205937){try{switch(_0x205937['type']){case _0xab89('0x55'):return[{'name':'attrUrl','value':_0x205937[_0xab89('0x56')]||(_0x205937[_0xab89('0x57')]&&_0x205937[_0xab89('0x57')][0x0]?_0x205937['attrs'][0x0]['value']:undefined)||'https://'}];case _0xab89('0x58'):return[{'name':_0xab89('0x59'),'value':_0x205937['attrPath']||(_0x205937[_0xab89('0x57')]&&_0x205937[_0xab89('0x57')][0x0]?_0x205937[_0xab89('0x57')][0x0][_0xab89('0x5a')]:undefined)||''}];case _0xab89('0x5b'):return[{'name':_0xab89('0x5c'),'value':_0x205937[_0xab89('0x5c')]||(_0x205937[_0xab89('0x57')]&&_0x205937[_0xab89('0x57')][0x0]?_0x205937[_0xab89('0x57')][0x0][_0xab89('0x5a')]:undefined)||_0xab89('0x5d')},{'name':_0xab89('0x5e'),'value':_0x205937[_0xab89('0x5e')]||(_0x205937[_0xab89('0x57')]&&_0x205937[_0xab89('0x57')][0x1]?_0x205937[_0xab89('0x57')][0x1][_0xab89('0x5a')]:undefined)||'0.00'},{'name':_0xab89('0x5f'),'value':_0x205937[_0xab89('0x5f')]||(_0x205937['attrs']&&_0x205937['attrs'][0x2]?_0x205937[_0xab89('0x57')][0x2][_0xab89('0x5a')]:undefined)||0xc}];case _0xab89('0x60'):return[{'name':_0xab89('0x61'),'value':_0x205937['attrMetric']||(_0x205937['attrs']&&_0x205937[_0xab89('0x57')][0x0]?_0x205937[_0xab89('0x57')][0x0][_0xab89('0x5a')]:undefined)||'total'},{'name':_0xab89('0x62'),'value':_0x205937['attrVoiceQueues']||(_0x205937[_0xab89('0x57')]&&_0x205937[_0xab89('0x57')][0x1]?_0x205937[_0xab89('0x57')][0x1][_0xab89('0x5a')]:undefined)||[]},{'name':_0xab89('0x5f'),'value':_0x205937[_0xab89('0x5f')]||(_0x205937[_0xab89('0x57')]&&_0x205937[_0xab89('0x57')][0x2]?_0x205937[_0xab89('0x57')][0x2][_0xab89('0x5a')]:undefined)||0x14}];case _0xab89('0x63'):case _0xab89('0x64'):return[{'name':_0xab89('0x65'),'value':_0x205937[_0xab89('0x65')]||(_0x205937[_0xab89('0x57')]&&_0x205937[_0xab89('0x57')][0x0]?_0x205937[_0xab89('0x57')][0x0]['value']:undefined)||_0xab89('0x66')},{'name':_0xab89('0x67'),'value':_0x205937['attrSerie2']||(_0x205937['attrs']&&_0x205937['attrs'][0x1]?_0x205937['attrs'][0x1][_0xab89('0x5a')]:undefined)||null},{'name':'attrSerie3','value':_0x205937['attrSerie3']||(_0x205937[_0xab89('0x57')]&&_0x205937['attrs'][0x2]?_0x205937['attrs'][0x2][_0xab89('0x5a')]:undefined)||null},{'name':_0xab89('0x62'),'value':_0x205937[_0xab89('0x62')]||(_0x205937[_0xab89('0x57')]&&_0x205937[_0xab89('0x57')][0x3]?_0x205937[_0xab89('0x57')][0x3][_0xab89('0x5a')]:undefined)||[]}];case _0xab89('0x68'):return[{'name':_0xab89('0x69'),'type':_0x205937[_0xab89('0x6a')]||(_0x205937[_0xab89('0x57')]&&_0x205937[_0xab89('0x57')][0x0]?_0x205937[_0xab89('0x57')][0x0][_0xab89('0x2b')]:undefined)||null,'value':_0x205937[_0xab89('0x69')]||(_0x205937[_0xab89('0x57')]&&_0x205937['attrs'][0x0]?_0x205937[_0xab89('0x57')][0x0][_0xab89('0x5a')]:undefined)||null},{'name':_0xab89('0x6b'),'value':_0x205937[_0xab89('0x6b')]||(_0x205937[_0xab89('0x57')]&&_0x205937[_0xab89('0x57')][0x1]?_0x205937[_0xab89('0x57')][0x1][_0xab89('0x5a')]:undefined)||0x0}];default:return[];}}catch(_0x170a6b){logger['error'](_0xab89('0x6c'),JSON[_0xab89('0x6d')](_0x170a6b));return[];}}exports[_0xab89('0x6e')]=function(_0xde132f,_0x4ce907,_0x5404ea){if(_0xde132f[_0xab89('0x47')]['id']){delete _0xde132f['body']['id'];}return db[_0xab89('0x29')][_0xab89('0x4c')]({'where':{'id':_0xde132f['params']['id']}})['then'](handleEntityNotFound(_0x4ce907,null))[_0xab89('0x1e')](function(_0x4adc84){if(_0x4adc84){_0xde132f['body']['DashboardId']=_0x4adc84['id'];_0xde132f[_0xab89('0x47')][_0xab89('0x57')]=widgetAttributes(_0xde132f['body']);return db['DashboardItem'][_0xab89('0x46')](_0xde132f[_0xab89('0x47')]);}})[_0xab89('0x1e')](respondWithResult(_0x4ce907,null))[_0xab89('0x41')](handleError(_0x4ce907,null));};exports[_0xab89('0x6f')]=function(_0x247dda,_0x4a4bb6,_0x5f3da6){var _0x9a3b4f={};var _0x2540d3={};var _0x20785d;var _0x4a6804;return db['Dashboard']['findOne']({'where':{'id':_0x247dda[_0xab89('0x42')]['id']}})[_0xab89('0x1e')](handleEntityNotFound(_0x4a4bb6,null))[_0xab89('0x1e')](function(_0x1a586e){if(_0x1a586e){_0x20785d=_0x1a586e;_0x2540d3[_0xab89('0x2d')]=_[_0xab89('0x43')](db[_0xab89('0x70')][_0xab89('0x52')]);_0x2540d3[_0xab89('0x2e')]=_[_0xab89('0x43')](_0x247dda[_0xab89('0x2e')]);_0x2540d3[_0xab89('0x2f')]=_['intersection'](_0x2540d3[_0xab89('0x2d')],_0x2540d3[_0xab89('0x2e')]);_0x9a3b4f[_0xab89('0x30')]=_[_0xab89('0x31')](_0x2540d3[_0xab89('0x2d')],qs[_0xab89('0x32')](_0x247dda[_0xab89('0x2e')][_0xab89('0x32')]));_0x9a3b4f[_0xab89('0x30')]=_0x9a3b4f['attributes']['length']?_0x9a3b4f[_0xab89('0x30')]:_0x2540d3[_0xab89('0x2d')];_0x9a3b4f[_0xab89('0x37')]=qs['sort'](_0x247dda[_0xab89('0x2e')][_0xab89('0x38')]);_0x9a3b4f[_0xab89('0x39')]=qs[_0xab89('0x2f')](_[_0xab89('0x3a')](_0x247dda[_0xab89('0x2e')],_0x2540d3[_0xab89('0x2f')]));if(_0x247dda[_0xab89('0x2e')][_0xab89('0x3b')]){_0x9a3b4f['where']=_[_0xab89('0x3c')](_0x9a3b4f['where'],{'$or':_[_0xab89('0x28')](_0x9a3b4f[_0xab89('0x30')],function(_0x5e5d9e){var _0x4f0b31={};_0x4f0b31[_0x5e5d9e]={'$like':'%'+_0x247dda[_0xab89('0x2e')][_0xab89('0x3b')]+'%'};return _0x4f0b31;})});}_0x9a3b4f=_['merge']({},_0x9a3b4f,_0x247dda['options']);return _0x20785d['getItems'](_0x9a3b4f);}})['then'](function(_0x4eda6e){if(_0x4eda6e){_0x4a6804=_0x4eda6e[_0xab89('0x33')];if(!_0x247dda[_0xab89('0x2e')][_0xab89('0x71')](_0xab89('0x34'))){_0x9a3b4f[_0xab89('0x35')]=qs[_0xab89('0x35')](_0x247dda[_0xab89('0x2e')]['limit']);_0x9a3b4f[_0xab89('0x36')]=qs[_0xab89('0x36')](_0x247dda[_0xab89('0x2e')]['offset']);}return _0x20785d[_0xab89('0x6f')](_0x9a3b4f);}})[_0xab89('0x1e')](function(_0x806870){if(_0x806870){return _0x806870?{'count':_0x4a6804,'rows':_0x806870}:null;}})[_0xab89('0x1e')](respondWithResult(_0x4a4bb6,null))['catch'](handleError(_0x4a4bb6,null));};