1e9c70b8475c025df2b9893730acc4a1d1bc4f90
[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 _0x1526=['status','json','count','offset','set','save','then','destroy','get','CustomDashboards','UserProfileResource','error','stack','name','send','index','map','Dashboard','rawAttributes','fieldName','type','key','model','query','keys','attributes','intersection','fields','length','hasOwnProperty','limit','order','sort','where','filters','pick','filter','merge','options','includeAll','catch','params','include','find','create','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','clone','omit','createdAt','updatedAt','body','role','UserProfileSection','update','attrUrl','attrs','value','attrPath','clock','attrHourFormat','HH:mm:ss','attrTimezone','0.00','attrFontSize','attrMetric','total','attrVoiceQueues','multibar-chart','pie-chart','attrSerie1','attrSerie2','attrSerie3','web-report','attrReport','attrRefresh','widgetAttributes:\x20%s','stringify','DashboardId','DashboardItem','findOne','getItems','nolimit','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','util','path','ejs','lodash','squel','crypto','jsforce','desk.js','to-csv','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','redis','defaults','localhost','socket.io-emitter','./dashboard.socket','register','sendStatus'];(function(_0x1313a9,_0x5d2dbc){var _0x1415e2=function(_0x29b979){while(--_0x29b979){_0x1313a9['push'](_0x1313a9['shift']());}};_0x1415e2(++_0x5d2dbc);}(_0x1526,0x1be));var _0x6152=function(_0x350eb8,_0x5a6bfd){_0x350eb8=_0x350eb8-0x0;var _0x31dd11=_0x1526[_0x350eb8];return _0x31dd11;};'use strict';var pdf=require(_0x6152('0x0'));var emlformat=require(_0x6152('0x1'));var rimraf=require(_0x6152('0x2'));var zipdir=require(_0x6152('0x3'));var jsonpatch=require(_0x6152('0x4'));var rp=require(_0x6152('0x5'));var moment=require(_0x6152('0x6'));var BPromise=require(_0x6152('0x7'));var Mustache=require('mustache');var util=require(_0x6152('0x8'));var path=require(_0x6152('0x9'));var sox=require('sox');var csv=require('to-csv');var ejs=require(_0x6152('0xa'));var fs=require('fs');var _=require(_0x6152('0xb'));var squel=require(_0x6152('0xc'));var crypto=require(_0x6152('0xd'));var jsforce=require(_0x6152('0xe'));var deskjs=require(_0x6152('0xf'));var toCsv=require(_0x6152('0x10'));var querystring=require('querystring');var Papa=require('papaparse');var Redis=require(_0x6152('0x11'));var authService=require(_0x6152('0x12'));var qs=require('../../components/parsers/qs');var as=require(_0x6152('0x13'));var hardwareService=require(_0x6152('0x14'));var logger=require(_0x6152('0x15'))(_0x6152('0x16'));var utils=require(_0x6152('0x17'));var config=require(_0x6152('0x18'));var licenseUtil=require(_0x6152('0x19'));var db=require(_0x6152('0x1a'))['db'];config[_0x6152('0x1b')]=_[_0x6152('0x1c')](config[_0x6152('0x1b')],{'host':_0x6152('0x1d'),'port':0x18eb});var socket=require(_0x6152('0x1e'))(new Redis(config[_0x6152('0x1b')]));require(_0x6152('0x1f'))[_0x6152('0x20')](socket);function respondWithStatusCode(_0x520382,_0x4342bc){_0x4342bc=_0x4342bc||0xcc;return function(_0x3d2270){if(_0x3d2270){return _0x520382[_0x6152('0x21')](_0x4342bc);}return _0x520382[_0x6152('0x22')](_0x4342bc)['end']();};}function respondWithResult(_0x59b9a8,_0x1974fb){_0x1974fb=_0x1974fb||0xc8;return function(_0x33e755){if(_0x33e755){return _0x59b9a8[_0x6152('0x22')](_0x1974fb)[_0x6152('0x23')](_0x33e755);}};}function respondWithFilteredResult(_0x3b7808,_0x550bc1){return function(_0x46e36b){if(_0x46e36b){var _0x4fc6d6=_0x46e36b[_0x6152('0x24')],_0x29d96b=_0x550bc1[_0x6152('0x25')],_0xcd0ea0=_0x550bc1[_0x6152('0x25')]+_0x550bc1['limit'],_0x485a98;if(_0xcd0ea0>=_0x4fc6d6){_0xcd0ea0=_0x4fc6d6;_0x485a98=0xc8;}else{_0x485a98=0xce;}_0x3b7808['status'](_0x485a98);return _0x3b7808[_0x6152('0x26')]('Content-Range',_0x29d96b+'-'+_0xcd0ea0+'/'+_0x4fc6d6)[_0x6152('0x23')](_0x46e36b);}return null;};}function patchUpdates(_0x4347ca){return function(_0x371237){try{jsonpatch['apply'](_0x371237,_0x4347ca,!![]);}catch(_0x1a6a9a){return BPromise['reject'](_0x1a6a9a);}return _0x371237[_0x6152('0x27')]();};}function saveUpdates(_0x5811cb,_0x1f6674){return function(_0x28f205){if(_0x28f205){return _0x28f205['update'](_0x5811cb)[_0x6152('0x28')](function(_0x4fcfc4){return _0x4fcfc4;});}return null;};}function removeEntity(_0x432263,_0x1ab5dc){return function(_0x525019){if(_0x525019){return _0x525019[_0x6152('0x29')]()[_0x6152('0x28')](function(){var _0x294113=_0x525019[_0x6152('0x2a')]({'plain':!![]});var _0x2a29cf=_0x6152('0x2b');return db[_0x6152('0x2c')][_0x6152('0x29')]({'where':{'type':_0x2a29cf,'resourceId':_0x294113['id']}})['then'](function(){return _0x525019;});})[_0x6152('0x28')](function(){_0x432263['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0x52b201,_0x421d9b){return function(_0x43075d){if(!_0x43075d){_0x52b201[_0x6152('0x21')](0x194);}return _0x43075d;};}function handleError(_0x401dc3,_0xdf3d41){_0xdf3d41=_0xdf3d41||0x1f4;return function(_0x4b3167){logger[_0x6152('0x2d')](_0x4b3167[_0x6152('0x2e')]);if(_0x4b3167['name']){delete _0x4b3167[_0x6152('0x2f')];}_0x401dc3[_0x6152('0x22')](_0xdf3d41)[_0x6152('0x30')](_0x4b3167);};}exports[_0x6152('0x31')]=function(_0x1cab4b,_0x394806){var _0x9376e2={},_0x570212={},_0x5ddcfd={'count':0x0,'rows':[]};var _0x1d2efd=_[_0x6152('0x32')](db[_0x6152('0x33')][_0x6152('0x34')],function(_0x31f8e6){return{'name':_0x31f8e6[_0x6152('0x35')],'type':_0x31f8e6[_0x6152('0x36')][_0x6152('0x37')]};});_0x570212[_0x6152('0x38')]=_[_0x6152('0x32')](_0x1d2efd,'name');_0x570212[_0x6152('0x39')]=_[_0x6152('0x3a')](_0x1cab4b[_0x6152('0x39')]);_0x570212['filters']=_['intersection'](_0x570212['model'],_0x570212[_0x6152('0x39')]);_0x9376e2[_0x6152('0x3b')]=_[_0x6152('0x3c')](_0x570212[_0x6152('0x38')],qs[_0x6152('0x3d')](_0x1cab4b[_0x6152('0x39')][_0x6152('0x3d')]));_0x9376e2[_0x6152('0x3b')]=_0x9376e2[_0x6152('0x3b')][_0x6152('0x3e')]?_0x9376e2[_0x6152('0x3b')]:_0x570212[_0x6152('0x38')];if(!_0x1cab4b['query'][_0x6152('0x3f')]('nolimit')){_0x9376e2['limit']=qs['limit'](_0x1cab4b[_0x6152('0x39')][_0x6152('0x40')]);_0x9376e2[_0x6152('0x25')]=qs[_0x6152('0x25')](_0x1cab4b[_0x6152('0x39')][_0x6152('0x25')]);}_0x9376e2[_0x6152('0x41')]=qs['sort'](_0x1cab4b[_0x6152('0x39')][_0x6152('0x42')]);_0x9376e2[_0x6152('0x43')]=qs[_0x6152('0x44')](_[_0x6152('0x45')](_0x1cab4b[_0x6152('0x39')],_0x570212[_0x6152('0x44')]),_0x1d2efd);if(_0x1cab4b['query'][_0x6152('0x46')]){_0x9376e2['where']=_[_0x6152('0x47')](_0x9376e2['where'],{'$or':_[_0x6152('0x32')](_0x1d2efd,function(_0x526d5f){if(_0x526d5f[_0x6152('0x36')]!=='VIRTUAL'){var _0x20b6e7={};_0x20b6e7[_0x526d5f['name']]={'$like':'%'+_0x1cab4b[_0x6152('0x39')]['filter']+'%'};return _0x20b6e7;}})});}_0x9376e2=_[_0x6152('0x47')]({},_0x9376e2,_0x1cab4b[_0x6152('0x48')]);var _0x3cb1d1={'where':_0x9376e2[_0x6152('0x43')]};return db['Dashboard']['count'](_0x3cb1d1)['then'](function(_0x167ed6){_0x5ddcfd['count']=_0x167ed6;if(_0x1cab4b[_0x6152('0x39')][_0x6152('0x49')]){_0x9376e2['include']=[{'all':!![]}];}return db[_0x6152('0x33')]['findAll'](_0x9376e2);})[_0x6152('0x28')](function(_0x491ab0){_0x5ddcfd['rows']=_0x491ab0;return _0x5ddcfd;})['then'](respondWithFilteredResult(_0x394806,_0x9376e2))[_0x6152('0x4a')](handleError(_0x394806,null));};exports['show']=function(_0x10ccef,_0x38244d){var _0x45e95d={'raw':![],'where':{'id':_0x10ccef[_0x6152('0x4b')]['id']}},_0x2ce081={};_0x2ce081[_0x6152('0x38')]=_[_0x6152('0x3a')](db['Dashboard'][_0x6152('0x34')]);_0x2ce081[_0x6152('0x39')]=_[_0x6152('0x3a')](_0x10ccef[_0x6152('0x39')]);_0x2ce081[_0x6152('0x44')]=_['intersection'](_0x2ce081[_0x6152('0x38')],_0x2ce081[_0x6152('0x39')]);_0x45e95d[_0x6152('0x3b')]=_[_0x6152('0x3c')](_0x2ce081[_0x6152('0x38')],qs[_0x6152('0x3d')](_0x10ccef[_0x6152('0x39')]['fields']));_0x45e95d[_0x6152('0x3b')]=_0x45e95d[_0x6152('0x3b')][_0x6152('0x3e')]?_0x45e95d['attributes']:_0x2ce081['model'];if(_0x10ccef[_0x6152('0x39')]['includeAll']){_0x45e95d[_0x6152('0x4c')]=[{'all':!![]}];}_0x45e95d=_[_0x6152('0x47')]({},_0x45e95d,_0x10ccef[_0x6152('0x48')]);return db['Dashboard'][_0x6152('0x4d')](_0x45e95d)[_0x6152('0x28')](handleEntityNotFound(_0x38244d,null))[_0x6152('0x28')](respondWithResult(_0x38244d,null))['catch'](handleError(_0x38244d,null));};exports[_0x6152('0x4e')]=function(_0xc27cf3,_0xccc723){return db[_0x6152('0x33')][_0x6152('0x4e')](_0xc27cf3['body'],{})['then'](function(_0x404ab6){var _0xf27342=_0xc27cf3[_0x6152('0x4f')]['get']({'plain':!![]});if(!_0xf27342)throw new Error(_0x6152('0x50'));if(_0xf27342['role']===_0x6152('0x4f')){var _0x5c7596=_0x404ab6[_0x6152('0x2a')]({'plain':!![]});var _0x24b386=_0x6152('0x2b');return db['UserProfileSection'][_0x6152('0x4d')]({'where':{'name':_0x24b386,'userProfileId':_0xf27342[_0x6152('0x51')]},'raw':!![]})[_0x6152('0x28')](function(_0x4ab172){if(_0x4ab172&&_0x4ab172[_0x6152('0x52')]===0x0){return db['UserProfileResource']['create']({'name':_0x5c7596[_0x6152('0x2f')],'resourceId':_0x5c7596['id'],'type':_0x4ab172[_0x6152('0x2f')],'sectionId':_0x4ab172['id']},{})[_0x6152('0x28')](function(){return _0x404ab6;});}else{return _0x404ab6;}})[_0x6152('0x4a')](function(_0x5c16d7){logger[_0x6152('0x2d')](_0x6152('0x53'),_0x5c16d7);throw _0x5c16d7;});}return _0x404ab6;})[_0x6152('0x28')](respondWithResult(_0xccc723,0xc9))[_0x6152('0x4a')](handleError(_0xccc723,null));};exports[_0x6152('0x54')]=function(_0x180456,_0x1d75bb){var _0x900663={'where':{'id':_0x180456[_0x6152('0x4b')]['id']}},_0xc5b85a={};_0xc5b85a[_0x6152('0x38')]=_[_0x6152('0x3a')](db[_0x6152('0x33')]['rawAttributes']);_0x900663['attributes']=_[_0x6152('0x3c')](_0xc5b85a[_0x6152('0x38')],qs[_0x6152('0x3d')](_0x180456[_0x6152('0x39')][_0x6152('0x3d')]));_0x900663[_0x6152('0x3b')]=_0x900663[_0x6152('0x3b')][_0x6152('0x3e')]?_0x900663[_0x6152('0x3b')]:_0xc5b85a[_0x6152('0x38')];if(_0x180456[_0x6152('0x39')]['includeAll']){_0x900663[_0x6152('0x4c')]=[{'all':!![]}];}_0x900663=_['merge']({},_0x900663,_0x180456['options']);return db[_0x6152('0x33')][_0x6152('0x4d')](_0x900663)[_0x6152('0x28')](handleEntityNotFound(_0x1d75bb,null))[_0x6152('0x28')](function(_0x327493){if(_0x327493){var _0x42f8fb=_0x327493[_0x6152('0x2a')]({'plain':!![]});_0x42f8fb=qs[_0x6152('0x55')](_0x42f8fb,['id',_0x6152('0x56'),_0x6152('0x57')]);_0x180456['body']=_['omit'](_0x180456[_0x6152('0x58')],['id','createdAt','updatedAt']);return db[_0x6152('0x33')][_0x6152('0x4e')](_[_0x6152('0x47')](_0x42f8fb,_0x180456[_0x6152('0x58')]),{'include':_0x180456['query'][_0x6152('0x49')]?[{'all':!![]}]:undefined})['then'](function(_0x378988){var _0x34ef6d=_0x180456['user'][_0x6152('0x2a')]({'plain':!![]});if(!_0x34ef6d)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x34ef6d[_0x6152('0x59')]===_0x6152('0x4f')){var _0x238dd8=_0x378988['get']({'plain':!![]});var _0x13ed9e='CustomDashboards';return db[_0x6152('0x5a')]['find']({'where':{'name':_0x13ed9e,'userProfileId':_0x34ef6d[_0x6152('0x51')]},'raw':!![]})[_0x6152('0x28')](function(_0x21b91d){if(_0x21b91d&&_0x21b91d[_0x6152('0x52')]===0x0){return db[_0x6152('0x2c')][_0x6152('0x4e')]({'name':_0x238dd8['name'],'resourceId':_0x238dd8['id'],'type':_0x21b91d[_0x6152('0x2f')],'sectionId':_0x21b91d['id']},{})[_0x6152('0x28')](function(){return _0x378988;});}else{return _0x378988;}})[_0x6152('0x4a')](function(_0x298261){logger[_0x6152('0x2d')](_0x6152('0x53'),_0x298261);throw _0x298261;});}return _0x378988;});}})[_0x6152('0x28')](respondWithResult(_0x1d75bb,0xc9))[_0x6152('0x4a')](handleError(_0x1d75bb,null));};exports[_0x6152('0x5b')]=function(_0x560052,_0xdd3aed){if(_0x560052['body']['id']){delete _0x560052[_0x6152('0x58')]['id'];}return db['Dashboard'][_0x6152('0x4d')]({'where':{'id':_0x560052[_0x6152('0x4b')]['id']}})['then'](handleEntityNotFound(_0xdd3aed,null))[_0x6152('0x28')](saveUpdates(_0x560052[_0x6152('0x58')],null))[_0x6152('0x28')](respondWithResult(_0xdd3aed,null))[_0x6152('0x4a')](handleError(_0xdd3aed,null));};exports[_0x6152('0x29')]=function(_0x574fb2,_0x9f6542){return db[_0x6152('0x33')]['find']({'where':{'id':_0x574fb2[_0x6152('0x4b')]['id']}})[_0x6152('0x28')](handleEntityNotFound(_0x9f6542,null))[_0x6152('0x28')](removeEntity(_0x9f6542,null))[_0x6152('0x4a')](handleError(_0x9f6542,null));};function widgetAttributes(_0x2a8f64){try{switch(_0x2a8f64[_0x6152('0x36')]){case'iframe':return[{'name':_0x6152('0x5c'),'value':_0x2a8f64[_0x6152('0x5c')]||(_0x2a8f64[_0x6152('0x5d')]&&_0x2a8f64['attrs'][0x0]?_0x2a8f64[_0x6152('0x5d')][0x0][_0x6152('0x5e')]:undefined)||'https://'}];case'custom':return[{'name':_0x6152('0x5f'),'value':_0x2a8f64[_0x6152('0x5f')]||(_0x2a8f64['attrs']&&_0x2a8f64[_0x6152('0x5d')][0x0]?_0x2a8f64['attrs'][0x0][_0x6152('0x5e')]:undefined)||''}];case _0x6152('0x60'):return[{'name':_0x6152('0x61'),'value':_0x2a8f64[_0x6152('0x61')]||(_0x2a8f64[_0x6152('0x5d')]&&_0x2a8f64[_0x6152('0x5d')][0x0]?_0x2a8f64[_0x6152('0x5d')][0x0][_0x6152('0x5e')]:undefined)||_0x6152('0x62')},{'name':_0x6152('0x63'),'value':_0x2a8f64['attrTimezone']||(_0x2a8f64[_0x6152('0x5d')]&&_0x2a8f64[_0x6152('0x5d')][0x1]?_0x2a8f64['attrs'][0x1][_0x6152('0x5e')]:undefined)||_0x6152('0x64')},{'name':_0x6152('0x65'),'value':_0x2a8f64[_0x6152('0x65')]||(_0x2a8f64['attrs']&&_0x2a8f64[_0x6152('0x5d')][0x2]?_0x2a8f64[_0x6152('0x5d')][0x2][_0x6152('0x5e')]:undefined)||0xc}];case'counter':return[{'name':_0x6152('0x66'),'value':_0x2a8f64[_0x6152('0x66')]||(_0x2a8f64[_0x6152('0x5d')]&&_0x2a8f64[_0x6152('0x5d')][0x0]?_0x2a8f64[_0x6152('0x5d')][0x0][_0x6152('0x5e')]:undefined)||_0x6152('0x67')},{'name':_0x6152('0x68'),'value':_0x2a8f64[_0x6152('0x68')]||(_0x2a8f64[_0x6152('0x5d')]&&_0x2a8f64['attrs'][0x1]?_0x2a8f64[_0x6152('0x5d')][0x1][_0x6152('0x5e')]:undefined)||[]},{'name':_0x6152('0x65'),'value':_0x2a8f64[_0x6152('0x65')]||(_0x2a8f64[_0x6152('0x5d')]&&_0x2a8f64[_0x6152('0x5d')][0x2]?_0x2a8f64[_0x6152('0x5d')][0x2][_0x6152('0x5e')]:undefined)||0x14}];case _0x6152('0x69'):case _0x6152('0x6a'):return[{'name':_0x6152('0x6b'),'value':_0x2a8f64[_0x6152('0x6b')]||(_0x2a8f64['attrs']&&_0x2a8f64[_0x6152('0x5d')][0x0]?_0x2a8f64[_0x6152('0x5d')][0x0][_0x6152('0x5e')]:undefined)||_0x6152('0x67')},{'name':_0x6152('0x6c'),'value':_0x2a8f64[_0x6152('0x6c')]||(_0x2a8f64['attrs']&&_0x2a8f64[_0x6152('0x5d')][0x1]?_0x2a8f64['attrs'][0x1][_0x6152('0x5e')]:undefined)||null},{'name':_0x6152('0x6d'),'value':_0x2a8f64[_0x6152('0x6d')]||(_0x2a8f64[_0x6152('0x5d')]&&_0x2a8f64[_0x6152('0x5d')][0x2]?_0x2a8f64[_0x6152('0x5d')][0x2][_0x6152('0x5e')]:undefined)||null},{'name':_0x6152('0x68'),'value':_0x2a8f64[_0x6152('0x68')]||(_0x2a8f64[_0x6152('0x5d')]&&_0x2a8f64['attrs'][0x3]?_0x2a8f64[_0x6152('0x5d')][0x3][_0x6152('0x5e')]:undefined)||[]}];case _0x6152('0x6e'):return[{'name':_0x6152('0x6f'),'type':_0x2a8f64['reportType']||(_0x2a8f64[_0x6152('0x5d')]&&_0x2a8f64[_0x6152('0x5d')][0x0]?_0x2a8f64[_0x6152('0x5d')][0x0][_0x6152('0x36')]:undefined)||null,'value':_0x2a8f64[_0x6152('0x6f')]||(_0x2a8f64['attrs']&&_0x2a8f64['attrs'][0x0]?_0x2a8f64[_0x6152('0x5d')][0x0]['value']:undefined)||null},{'name':_0x6152('0x70'),'value':_0x2a8f64[_0x6152('0x70')]||(_0x2a8f64[_0x6152('0x5d')]&&_0x2a8f64[_0x6152('0x5d')][0x1]?_0x2a8f64[_0x6152('0x5d')][0x1]['value']:undefined)||0x0}];default:return[];}}catch(_0x58b5d5){logger[_0x6152('0x2d')](_0x6152('0x71'),JSON[_0x6152('0x72')](_0x58b5d5));return[];}}exports['addItem']=function(_0x5bf4a0,_0xf1ede3,_0x4da4a9){if(_0x5bf4a0[_0x6152('0x58')]['id']){delete _0x5bf4a0[_0x6152('0x58')]['id'];}return db[_0x6152('0x33')][_0x6152('0x4d')]({'where':{'id':_0x5bf4a0[_0x6152('0x4b')]['id']}})[_0x6152('0x28')](handleEntityNotFound(_0xf1ede3,null))[_0x6152('0x28')](function(_0x789d7){if(_0x789d7){_0x5bf4a0[_0x6152('0x58')][_0x6152('0x73')]=_0x789d7['id'];_0x5bf4a0['body']['attrs']=widgetAttributes(_0x5bf4a0[_0x6152('0x58')]);return db[_0x6152('0x74')]['create'](_0x5bf4a0['body']);}})['then'](respondWithResult(_0xf1ede3,null))['catch'](handleError(_0xf1ede3,null));};exports['getItems']=function(_0xf5510,_0x23f38d,_0x1cbc24){var _0x548558={};var _0x47e56b={};var _0x4c4c32;var _0x224fd6;return db[_0x6152('0x33')][_0x6152('0x75')]({'where':{'id':_0xf5510[_0x6152('0x4b')]['id']}})[_0x6152('0x28')](handleEntityNotFound(_0x23f38d,null))[_0x6152('0x28')](function(_0x51393f){if(_0x51393f){_0x4c4c32=_0x51393f;_0x47e56b[_0x6152('0x38')]=_[_0x6152('0x3a')](db[_0x6152('0x74')][_0x6152('0x34')]);_0x47e56b[_0x6152('0x39')]=_[_0x6152('0x3a')](_0xf5510[_0x6152('0x39')]);_0x47e56b['filters']=_[_0x6152('0x3c')](_0x47e56b[_0x6152('0x38')],_0x47e56b[_0x6152('0x39')]);_0x548558[_0x6152('0x3b')]=_[_0x6152('0x3c')](_0x47e56b['model'],qs[_0x6152('0x3d')](_0xf5510['query']['fields']));_0x548558[_0x6152('0x3b')]=_0x548558[_0x6152('0x3b')][_0x6152('0x3e')]?_0x548558[_0x6152('0x3b')]:_0x47e56b['model'];_0x548558[_0x6152('0x41')]=qs[_0x6152('0x42')](_0xf5510[_0x6152('0x39')][_0x6152('0x42')]);_0x548558[_0x6152('0x43')]=qs[_0x6152('0x44')](_[_0x6152('0x45')](_0xf5510['query'],_0x47e56b[_0x6152('0x44')]));if(_0xf5510[_0x6152('0x39')][_0x6152('0x46')]){_0x548558[_0x6152('0x43')]=_[_0x6152('0x47')](_0x548558['where'],{'$or':_[_0x6152('0x32')](_0x548558[_0x6152('0x3b')],function(_0x33c1b8){var _0x46a240={};_0x46a240[_0x33c1b8]={'$like':'%'+_0xf5510[_0x6152('0x39')][_0x6152('0x46')]+'%'};return _0x46a240;})});}_0x548558=_[_0x6152('0x47')]({},_0x548558,_0xf5510['options']);return _0x4c4c32[_0x6152('0x76')](_0x548558);}})[_0x6152('0x28')](function(_0x4034d9){if(_0x4034d9){_0x224fd6=_0x4034d9['length'];if(!_0xf5510[_0x6152('0x39')]['hasOwnProperty'](_0x6152('0x77'))){_0x548558[_0x6152('0x40')]=qs[_0x6152('0x40')](_0xf5510[_0x6152('0x39')][_0x6152('0x40')]);_0x548558[_0x6152('0x25')]=qs[_0x6152('0x25')](_0xf5510['query']['offset']);}return _0x4c4c32[_0x6152('0x76')](_0x548558);}})[_0x6152('0x28')](function(_0x25cc87){if(_0x25cc87){return _0x25cc87?{'count':_0x224fd6,'rows':_0x25cc87}:null;}})[_0x6152('0x28')](respondWithResult(_0x23f38d,null))['catch'](handleError(_0x23f38d,null));};