b8ce0998dbd58b0a3a0ab1306072aaf8f545978e
[motion2.git] / server / api / trigger / trigger.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 _0x9c50=['reject','update','then','get','UserProfileResource','sendStatus','error','stack','name','map','rawAttributes','fieldName','key','model','keys','filters','intersection','query','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','filter','merge','type','VIRTUAL','includeAll','include','Trigger','findAll','rows','catch','show','params','options','find','create','body','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','user','Triggers','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','destroy','TriggerAllId','Condition','getAllConditions','findOne','pick','getAnyConditions','TriggerId','Action','getActions','zip-dir','request-promise','mustache','util','sox','ejs','lodash','squel','jsforce','desk.js','to-csv','querystring','ioredis','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','end','count','offset','limit','status','set','Content-Range','apply'];(function(_0x3947c9,_0x4d6c97){var _0x2e7871=function(_0x1236cc){while(--_0x1236cc){_0x3947c9['push'](_0x3947c9['shift']());}};_0x2e7871(++_0x4d6c97);}(_0x9c50,0xec));var _0x09c5=function(_0x52770c,_0x3e72e1){_0x52770c=_0x52770c-0x0;var _0x2ba3bd=_0x9c50[_0x52770c];return _0x2ba3bd;};'use strict';var pdf=require('html-pdf');var emlformat=require('eml-format');var rimraf=require('rimraf');var zipdir=require(_0x09c5('0x0'));var jsonpatch=require('fast-json-patch');var rp=require(_0x09c5('0x1'));var moment=require('moment');var BPromise=require('bluebird');var Mustache=require(_0x09c5('0x2'));var util=require(_0x09c5('0x3'));var path=require('path');var sox=require(_0x09c5('0x4'));var csv=require('to-csv');var ejs=require(_0x09c5('0x5'));var fs=require('fs');var _=require(_0x09c5('0x6'));var squel=require(_0x09c5('0x7'));var crypto=require('crypto');var jsforce=require(_0x09c5('0x8'));var deskjs=require(_0x09c5('0x9'));var toCsv=require(_0x09c5('0xa'));var querystring=require(_0x09c5('0xb'));var Papa=require('papaparse');var Redis=require(_0x09c5('0xc'));var authService=require('../../components/auth/service');var qs=require('../../components/parsers/qs');var as=require(_0x09c5('0xd'));var hardwareService=require(_0x09c5('0xe'));var logger=require(_0x09c5('0xf'))(_0x09c5('0x10'));var utils=require('../../config/utils');var config=require(_0x09c5('0x11'));var licenseUtil=require(_0x09c5('0x12'));var db=require(_0x09c5('0x13'))['db'];function respondWithStatusCode(_0x249d1f,_0x25ed17){_0x25ed17=_0x25ed17||0xcc;return function(_0x3e4eba){if(_0x3e4eba){return _0x249d1f['sendStatus'](_0x25ed17);}return _0x249d1f['status'](_0x25ed17)[_0x09c5('0x14')]();};}function respondWithResult(_0x216624,_0x3900cc){_0x3900cc=_0x3900cc||0xc8;return function(_0x380922){if(_0x380922){return _0x216624['status'](_0x3900cc)['json'](_0x380922);}};}function respondWithFilteredResult(_0x46e6e9,_0x4d6342){return function(_0x4dad31){if(_0x4dad31){var _0x5cb726=_0x4dad31[_0x09c5('0x15')],_0x2e2493=_0x4d6342[_0x09c5('0x16')],_0x41591b=_0x4d6342[_0x09c5('0x16')]+_0x4d6342[_0x09c5('0x17')],_0x3d160f;if(_0x41591b>=_0x5cb726){_0x41591b=_0x5cb726;_0x3d160f=0xc8;}else{_0x3d160f=0xce;}_0x46e6e9[_0x09c5('0x18')](_0x3d160f);return _0x46e6e9[_0x09c5('0x19')](_0x09c5('0x1a'),_0x2e2493+'-'+_0x41591b+'/'+_0x5cb726)['json'](_0x4dad31);}return null;};}function patchUpdates(_0x409412){return function(_0x3e6f5f){try{jsonpatch[_0x09c5('0x1b')](_0x3e6f5f,_0x409412,!![]);}catch(_0x2336fb){return BPromise[_0x09c5('0x1c')](_0x2336fb);}return _0x3e6f5f['save']();};}function saveUpdates(_0x4648fc,_0x39fb75){return function(_0x2d008a){if(_0x2d008a){return _0x2d008a[_0x09c5('0x1d')](_0x4648fc)['then'](function(_0x5ca7fe){return _0x5ca7fe;});}return null;};}function removeEntity(_0x37da46,_0x3383bb){return function(_0x32fe62){if(_0x32fe62){return _0x32fe62['destroy']()[_0x09c5('0x1e')](function(){var _0xa687ac=_0x32fe62[_0x09c5('0x1f')]({'plain':!![]});var _0x365e6d='Triggers';return db[_0x09c5('0x20')]['destroy']({'where':{'type':_0x365e6d,'resourceId':_0xa687ac['id']}})[_0x09c5('0x1e')](function(){return _0x32fe62;});})[_0x09c5('0x1e')](function(){_0x37da46[_0x09c5('0x18')](0xcc)[_0x09c5('0x14')]();});}};}function handleEntityNotFound(_0x49db0c,_0x72d9be){return function(_0x36ea67){if(!_0x36ea67){_0x49db0c[_0x09c5('0x21')](0x194);}return _0x36ea67;};}function handleError(_0x4f991b,_0x29ec6e){_0x29ec6e=_0x29ec6e||0x1f4;return function(_0x2d3f1f){logger[_0x09c5('0x22')](_0x2d3f1f[_0x09c5('0x23')]);if(_0x2d3f1f[_0x09c5('0x24')]){delete _0x2d3f1f[_0x09c5('0x24')];}_0x4f991b[_0x09c5('0x18')](_0x29ec6e)['send'](_0x2d3f1f);};}exports['index']=function(_0x1e4d07,_0x51cd04){var _0x258a86={},_0x3b18f1={},_0x4ab72b={'count':0x0,'rows':[]};var _0x5e2a7c=_[_0x09c5('0x25')](db['Trigger'][_0x09c5('0x26')],function(_0x172fc0){return{'name':_0x172fc0[_0x09c5('0x27')],'type':_0x172fc0['type'][_0x09c5('0x28')]};});_0x3b18f1[_0x09c5('0x29')]=_[_0x09c5('0x25')](_0x5e2a7c,'name');_0x3b18f1['query']=_[_0x09c5('0x2a')](_0x1e4d07['query']);_0x3b18f1[_0x09c5('0x2b')]=_[_0x09c5('0x2c')](_0x3b18f1[_0x09c5('0x29')],_0x3b18f1[_0x09c5('0x2d')]);_0x258a86[_0x09c5('0x2e')]=_[_0x09c5('0x2c')](_0x3b18f1['model'],qs['fields'](_0x1e4d07[_0x09c5('0x2d')][_0x09c5('0x2f')]));_0x258a86[_0x09c5('0x2e')]=_0x258a86['attributes'][_0x09c5('0x30')]?_0x258a86[_0x09c5('0x2e')]:_0x3b18f1[_0x09c5('0x29')];if(!_0x1e4d07[_0x09c5('0x2d')][_0x09c5('0x31')](_0x09c5('0x32'))){_0x258a86[_0x09c5('0x17')]=qs[_0x09c5('0x17')](_0x1e4d07[_0x09c5('0x2d')][_0x09c5('0x17')]);_0x258a86[_0x09c5('0x16')]=qs['offset'](_0x1e4d07[_0x09c5('0x2d')][_0x09c5('0x16')]);}_0x258a86[_0x09c5('0x33')]=qs[_0x09c5('0x34')](_0x1e4d07['query'][_0x09c5('0x34')]);_0x258a86[_0x09c5('0x35')]=qs[_0x09c5('0x2b')](_['pick'](_0x1e4d07[_0x09c5('0x2d')],_0x3b18f1[_0x09c5('0x2b')]),_0x5e2a7c);if(_0x1e4d07[_0x09c5('0x2d')][_0x09c5('0x36')]){_0x258a86[_0x09c5('0x35')]=_[_0x09c5('0x37')](_0x258a86[_0x09c5('0x35')],{'$or':_[_0x09c5('0x25')](_0x5e2a7c,function(_0x5d3117){if(_0x5d3117[_0x09c5('0x38')]!==_0x09c5('0x39')){var _0x189713={};_0x189713[_0x5d3117[_0x09c5('0x24')]]={'$like':'%'+_0x1e4d07['query'][_0x09c5('0x36')]+'%'};return _0x189713;}})});}_0x258a86=_['merge']({},_0x258a86,_0x1e4d07['options']);var _0x1835d5={'where':_0x258a86[_0x09c5('0x35')]};return db['Trigger'][_0x09c5('0x15')](_0x1835d5)[_0x09c5('0x1e')](function(_0x38c615){_0x4ab72b['count']=_0x38c615;if(_0x1e4d07[_0x09c5('0x2d')][_0x09c5('0x3a')]){_0x258a86[_0x09c5('0x3b')]=[{'all':!![]}];}return db[_0x09c5('0x3c')][_0x09c5('0x3d')](_0x258a86);})[_0x09c5('0x1e')](function(_0x540396){_0x4ab72b[_0x09c5('0x3e')]=_0x540396;return _0x4ab72b;})['then'](respondWithFilteredResult(_0x51cd04,_0x258a86))[_0x09c5('0x3f')](handleError(_0x51cd04,null));};exports[_0x09c5('0x40')]=function(_0x87c482,_0x3f76d6){var _0x5d120e={'raw':![],'where':{'id':_0x87c482[_0x09c5('0x41')]['id']}},_0x22f0f2={};_0x22f0f2[_0x09c5('0x29')]=_['keys'](db[_0x09c5('0x3c')][_0x09c5('0x26')]);_0x22f0f2['query']=_[_0x09c5('0x2a')](_0x87c482[_0x09c5('0x2d')]);_0x22f0f2[_0x09c5('0x2b')]=_[_0x09c5('0x2c')](_0x22f0f2['model'],_0x22f0f2[_0x09c5('0x2d')]);_0x5d120e['attributes']=_[_0x09c5('0x2c')](_0x22f0f2[_0x09c5('0x29')],qs[_0x09c5('0x2f')](_0x87c482['query'][_0x09c5('0x2f')]));_0x5d120e[_0x09c5('0x2e')]=_0x5d120e[_0x09c5('0x2e')][_0x09c5('0x30')]?_0x5d120e[_0x09c5('0x2e')]:_0x22f0f2['model'];if(_0x87c482[_0x09c5('0x2d')][_0x09c5('0x3a')]){_0x5d120e[_0x09c5('0x3b')]=[{'all':!![]}];}_0x5d120e=_[_0x09c5('0x37')]({},_0x5d120e,_0x87c482[_0x09c5('0x42')]);return db[_0x09c5('0x3c')][_0x09c5('0x43')](_0x5d120e)[_0x09c5('0x1e')](handleEntityNotFound(_0x3f76d6,null))['then'](respondWithResult(_0x3f76d6,null))[_0x09c5('0x3f')](handleError(_0x3f76d6,null));};exports[_0x09c5('0x44')]=function(_0x4b57fc,_0x347d2b){return db[_0x09c5('0x3c')][_0x09c5('0x44')](_0x4b57fc[_0x09c5('0x45')],{})['then'](function(_0x377634){var _0x271ddb=_0x4b57fc['user'][_0x09c5('0x1f')]({'plain':!![]});if(!_0x271ddb)throw new Error(_0x09c5('0x46'));if(_0x271ddb[_0x09c5('0x47')]===_0x09c5('0x48')){var _0x4880ab=_0x377634[_0x09c5('0x1f')]({'plain':!![]});var _0x47a827=_0x09c5('0x49');return db[_0x09c5('0x4a')][_0x09c5('0x43')]({'where':{'name':_0x47a827,'userProfileId':_0x271ddb[_0x09c5('0x4b')]},'raw':!![]})[_0x09c5('0x1e')](function(_0x3a7554){if(_0x3a7554&&_0x3a7554[_0x09c5('0x4c')]===0x0){return db['UserProfileResource'][_0x09c5('0x44')]({'name':_0x4880ab[_0x09c5('0x24')],'resourceId':_0x4880ab['id'],'type':_0x3a7554[_0x09c5('0x24')],'sectionId':_0x3a7554['id']},{})[_0x09c5('0x1e')](function(){return _0x377634;});}else{return _0x377634;}})[_0x09c5('0x3f')](function(_0x49acf6){logger[_0x09c5('0x22')](_0x09c5('0x4d'),_0x49acf6);throw _0x49acf6;});}return _0x377634;})[_0x09c5('0x1e')](respondWithResult(_0x347d2b,0xc9))[_0x09c5('0x3f')](handleError(_0x347d2b,null));};exports['update']=function(_0x12c295,_0x5090bf){if(_0x12c295['body']['id']){delete _0x12c295[_0x09c5('0x45')]['id'];}return db[_0x09c5('0x3c')]['find']({'where':{'id':_0x12c295[_0x09c5('0x41')]['id']}})[_0x09c5('0x1e')](handleEntityNotFound(_0x5090bf,null))[_0x09c5('0x1e')](saveUpdates(_0x12c295['body'],null))['then'](respondWithResult(_0x5090bf,null))[_0x09c5('0x3f')](handleError(_0x5090bf,null));};exports[_0x09c5('0x4e')]=function(_0x25511e,_0x9af18e){return db[_0x09c5('0x3c')][_0x09c5('0x43')]({'where':{'id':_0x25511e[_0x09c5('0x41')]['id']}})[_0x09c5('0x1e')](handleEntityNotFound(_0x9af18e,null))[_0x09c5('0x1e')](removeEntity(_0x9af18e,null))['catch'](handleError(_0x9af18e,null));};exports['addAllCondition']=function(_0x21a68f,_0xbced64,_0x3a7e6b){if(_0x21a68f[_0x09c5('0x45')]['id']){delete _0x21a68f[_0x09c5('0x45')]['id'];}return db[_0x09c5('0x3c')][_0x09c5('0x43')]({'where':{'id':_0x21a68f[_0x09c5('0x41')]['id']}})[_0x09c5('0x1e')](handleEntityNotFound(_0xbced64,null))['then'](function(_0x31f1b9){if(_0x31f1b9){_0x21a68f[_0x09c5('0x45')][_0x09c5('0x4f')]=_0x31f1b9['id'];return db['Condition'][_0x09c5('0x44')](_0x21a68f['body']);}})[_0x09c5('0x1e')](respondWithResult(_0xbced64,null))[_0x09c5('0x3f')](handleError(_0xbced64,null));};exports['addAnyCondition']=function(_0x4a7dc3,_0x509131,_0xf5aa90){if(_0x4a7dc3[_0x09c5('0x45')]['id']){delete _0x4a7dc3['body']['id'];}return db[_0x09c5('0x3c')][_0x09c5('0x43')]({'where':{'id':_0x4a7dc3['params']['id']}})[_0x09c5('0x1e')](handleEntityNotFound(_0x509131,null))['then'](function(_0x469e9b){if(_0x469e9b){_0x4a7dc3[_0x09c5('0x45')]['TriggerAnyId']=_0x469e9b['id'];return db[_0x09c5('0x50')][_0x09c5('0x44')](_0x4a7dc3[_0x09c5('0x45')]);}})[_0x09c5('0x1e')](respondWithResult(_0x509131,null))[_0x09c5('0x3f')](handleError(_0x509131,null));};exports[_0x09c5('0x51')]=function(_0x46beb0,_0x5d248f,_0x1ed374){var _0x23dec1={};var _0x4006aa={};var _0x4926d4;var _0xefb7ff;return db[_0x09c5('0x3c')][_0x09c5('0x52')]({'where':{'id':_0x46beb0['params']['id']}})[_0x09c5('0x1e')](handleEntityNotFound(_0x5d248f,null))[_0x09c5('0x1e')](function(_0x1e85a1){if(_0x1e85a1){_0x4926d4=_0x1e85a1;_0x4006aa[_0x09c5('0x29')]=_[_0x09c5('0x2a')](db['Condition'][_0x09c5('0x26')]);_0x4006aa[_0x09c5('0x2d')]=_[_0x09c5('0x2a')](_0x46beb0[_0x09c5('0x2d')]);_0x4006aa[_0x09c5('0x2b')]=_['intersection'](_0x4006aa[_0x09c5('0x29')],_0x4006aa['query']);_0x23dec1[_0x09c5('0x2e')]=_[_0x09c5('0x2c')](_0x4006aa[_0x09c5('0x29')],qs[_0x09c5('0x2f')](_0x46beb0[_0x09c5('0x2d')][_0x09c5('0x2f')]));_0x23dec1['attributes']=_0x23dec1[_0x09c5('0x2e')][_0x09c5('0x30')]?_0x23dec1[_0x09c5('0x2e')]:_0x4006aa['model'];_0x23dec1['order']=qs[_0x09c5('0x34')](_0x46beb0[_0x09c5('0x2d')]['sort']);_0x23dec1['where']=qs[_0x09c5('0x2b')](_[_0x09c5('0x53')](_0x46beb0[_0x09c5('0x2d')],_0x4006aa[_0x09c5('0x2b')]));if(_0x46beb0['query'][_0x09c5('0x36')]){_0x23dec1['where']=_[_0x09c5('0x37')](_0x23dec1['where'],{'$or':_['map'](_0x23dec1[_0x09c5('0x2e')],function(_0x4751c7){var _0x319d7d={};_0x319d7d[_0x4751c7]={'$like':'%'+_0x46beb0[_0x09c5('0x2d')][_0x09c5('0x36')]+'%'};return _0x319d7d;})});}_0x23dec1=_[_0x09c5('0x37')]({},_0x23dec1,_0x46beb0[_0x09c5('0x42')]);return _0x4926d4[_0x09c5('0x51')](_0x23dec1);}})[_0x09c5('0x1e')](function(_0x36162d){if(_0x36162d){_0xefb7ff=_0x36162d[_0x09c5('0x30')];if(!_0x46beb0['query'][_0x09c5('0x31')]('nolimit')){_0x23dec1[_0x09c5('0x17')]=qs[_0x09c5('0x17')](_0x46beb0[_0x09c5('0x2d')]['limit']);_0x23dec1[_0x09c5('0x16')]=qs[_0x09c5('0x16')](_0x46beb0['query']['offset']);}return _0x4926d4[_0x09c5('0x51')](_0x23dec1);}})[_0x09c5('0x1e')](function(_0x17953a){if(_0x17953a){return _0x17953a?{'count':_0xefb7ff,'rows':_0x17953a}:null;}})[_0x09c5('0x1e')](respondWithResult(_0x5d248f,null))[_0x09c5('0x3f')](handleError(_0x5d248f,null));};exports[_0x09c5('0x54')]=function(_0x5a05fc,_0x28ea39,_0x57c2ff){var _0x4066a5={};var _0x16b549={};var _0x4a1ca0;var _0x5bc973;return db[_0x09c5('0x3c')]['findOne']({'where':{'id':_0x5a05fc[_0x09c5('0x41')]['id']}})['then'](handleEntityNotFound(_0x28ea39,null))[_0x09c5('0x1e')](function(_0x82d6c6){if(_0x82d6c6){_0x4a1ca0=_0x82d6c6;_0x16b549[_0x09c5('0x29')]=_[_0x09c5('0x2a')](db[_0x09c5('0x50')][_0x09c5('0x26')]);_0x16b549[_0x09c5('0x2d')]=_['keys'](_0x5a05fc['query']);_0x16b549['filters']=_[_0x09c5('0x2c')](_0x16b549[_0x09c5('0x29')],_0x16b549['query']);_0x4066a5[_0x09c5('0x2e')]=_[_0x09c5('0x2c')](_0x16b549['model'],qs[_0x09c5('0x2f')](_0x5a05fc[_0x09c5('0x2d')]['fields']));_0x4066a5['attributes']=_0x4066a5[_0x09c5('0x2e')]['length']?_0x4066a5[_0x09c5('0x2e')]:_0x16b549[_0x09c5('0x29')];_0x4066a5[_0x09c5('0x33')]=qs['sort'](_0x5a05fc[_0x09c5('0x2d')][_0x09c5('0x34')]);_0x4066a5[_0x09c5('0x35')]=qs[_0x09c5('0x2b')](_[_0x09c5('0x53')](_0x5a05fc[_0x09c5('0x2d')],_0x16b549['filters']));if(_0x5a05fc['query'][_0x09c5('0x36')]){_0x4066a5[_0x09c5('0x35')]=_[_0x09c5('0x37')](_0x4066a5['where'],{'$or':_['map'](_0x4066a5[_0x09c5('0x2e')],function(_0x36a5f2){var _0x20c026={};_0x20c026[_0x36a5f2]={'$like':'%'+_0x5a05fc['query']['filter']+'%'};return _0x20c026;})});}_0x4066a5=_[_0x09c5('0x37')]({},_0x4066a5,_0x5a05fc['options']);return _0x4a1ca0['getAnyConditions'](_0x4066a5);}})[_0x09c5('0x1e')](function(_0x17c4e5){if(_0x17c4e5){_0x5bc973=_0x17c4e5['length'];if(!_0x5a05fc[_0x09c5('0x2d')][_0x09c5('0x31')](_0x09c5('0x32'))){_0x4066a5['limit']=qs['limit'](_0x5a05fc['query']['limit']);_0x4066a5[_0x09c5('0x16')]=qs[_0x09c5('0x16')](_0x5a05fc[_0x09c5('0x2d')][_0x09c5('0x16')]);}return _0x4a1ca0[_0x09c5('0x54')](_0x4066a5);}})[_0x09c5('0x1e')](function(_0x28993e){if(_0x28993e){return _0x28993e?{'count':_0x5bc973,'rows':_0x28993e}:null;}})[_0x09c5('0x1e')](respondWithResult(_0x28ea39,null))[_0x09c5('0x3f')](handleError(_0x28ea39,null));};exports['addAction']=function(_0x180aeb,_0x38a755,_0x27209a){if(_0x180aeb[_0x09c5('0x45')]['id']){delete _0x180aeb['body']['id'];}return db[_0x09c5('0x3c')]['find']({'where':{'id':_0x180aeb['params']['id']}})[_0x09c5('0x1e')](handleEntityNotFound(_0x38a755,null))[_0x09c5('0x1e')](function(_0x5c99cd){if(_0x5c99cd){_0x180aeb['body'][_0x09c5('0x55')]=_0x5c99cd['id'];return db[_0x09c5('0x56')]['create'](_0x180aeb['body']);}})[_0x09c5('0x1e')](respondWithResult(_0x38a755,null))['catch'](handleError(_0x38a755,null));};exports[_0x09c5('0x57')]=function(_0x533178,_0x1635fd,_0x4cd5eb){var _0x4759f1={};var _0x1dbeaf={};var _0x4cb182;var _0x4c6280;return db[_0x09c5('0x3c')]['findOne']({'where':{'id':_0x533178[_0x09c5('0x41')]['id']}})[_0x09c5('0x1e')](handleEntityNotFound(_0x1635fd,null))[_0x09c5('0x1e')](function(_0x5d050a){if(_0x5d050a){_0x4cb182=_0x5d050a;_0x1dbeaf[_0x09c5('0x29')]=_[_0x09c5('0x2a')](db[_0x09c5('0x56')][_0x09c5('0x26')]);_0x1dbeaf[_0x09c5('0x2d')]=_[_0x09c5('0x2a')](_0x533178['query']);_0x1dbeaf[_0x09c5('0x2b')]=_['intersection'](_0x1dbeaf[_0x09c5('0x29')],_0x1dbeaf['query']);_0x4759f1[_0x09c5('0x2e')]=_['intersection'](_0x1dbeaf[_0x09c5('0x29')],qs[_0x09c5('0x2f')](_0x533178[_0x09c5('0x2d')][_0x09c5('0x2f')]));_0x4759f1[_0x09c5('0x2e')]=_0x4759f1[_0x09c5('0x2e')]['length']?_0x4759f1[_0x09c5('0x2e')]:_0x1dbeaf[_0x09c5('0x29')];_0x4759f1[_0x09c5('0x33')]=qs[_0x09c5('0x34')](_0x533178[_0x09c5('0x2d')][_0x09c5('0x34')]);_0x4759f1[_0x09c5('0x35')]=qs[_0x09c5('0x2b')](_[_0x09c5('0x53')](_0x533178[_0x09c5('0x2d')],_0x1dbeaf['filters']));if(_0x533178[_0x09c5('0x2d')][_0x09c5('0x36')]){_0x4759f1[_0x09c5('0x35')]=_[_0x09c5('0x37')](_0x4759f1[_0x09c5('0x35')],{'$or':_['map'](_0x4759f1[_0x09c5('0x2e')],function(_0x50179e){var _0xe3f55d={};_0xe3f55d[_0x50179e]={'$like':'%'+_0x533178['query'][_0x09c5('0x36')]+'%'};return _0xe3f55d;})});}_0x4759f1=_[_0x09c5('0x37')]({},_0x4759f1,_0x533178[_0x09c5('0x42')]);return _0x4cb182[_0x09c5('0x57')](_0x4759f1);}})[_0x09c5('0x1e')](function(_0x12bc27){if(_0x12bc27){_0x4c6280=_0x12bc27[_0x09c5('0x30')];if(!_0x533178[_0x09c5('0x2d')][_0x09c5('0x31')](_0x09c5('0x32'))){_0x4759f1[_0x09c5('0x17')]=qs[_0x09c5('0x17')](_0x533178['query']['limit']);_0x4759f1[_0x09c5('0x16')]=qs[_0x09c5('0x16')](_0x533178[_0x09c5('0x2d')]['offset']);}return _0x4cb182[_0x09c5('0x57')](_0x4759f1);}})[_0x09c5('0x1e')](function(_0xdd42a7){if(_0xdd42a7){return _0xdd42a7?{'count':_0x4c6280,'rows':_0xdd42a7}:null;}})['then'](respondWithResult(_0x1635fd,null))[_0x09c5('0x3f')](handleError(_0x1635fd,null));};