d05c9b5ad95a3ba06991fe18a417cd2f35501198
[motion2.git] / server / api / voicePrefix / voicePrefix.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 _0xf493=['removeAgents','userVoicePrefix:remove','getAgents','findOne','User','pick','html-pdf','eml-format','zip-dir','fast-json-patch','bluebird','mustache','util','sox','to-csv','ejs','lodash','crypto','jsforce','desk.js','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','redis','defaults','localhost','socket.io-emitter','./voicePrefix.socket','register','status','end','json','count','offset','limit','Content-Range','reject','save','then','destroy','get','UserProfileResource','sendStatus','stack','name','send','index','map','VoicePrefix','rawAttributes','type','key','keys','query','filters','intersection','model','attributes','fields','hasOwnProperty','nolimit','order','sort','filter','where','VIRTUAL','merge','includeAll','include','findAll','rows','catch','show','params','length','options','find','describe','create','transaction','VoiceExtension','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','VoicePrefixes','autoAssociation','error','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','context','from-sip','exten','system','description','priority','appdata','prefix','NoOp','Voice\x20Prefix','VoicePrefixId','VoiceExtensionId','Extensions\x20creation\x20failed','push','Set','CDR(prefix)=','callerIdAll','No\x20callerid\x20available','goto','charAt','update','body','system-','addAgents','ids','spread','emit'];(function(_0x529266,_0x539d07){var _0x23fec2=function(_0x2996ad){while(--_0x2996ad){_0x529266['push'](_0x529266['shift']());}};_0x23fec2(++_0x539d07);}(_0xf493,0x1ea));var _0x3f49=function(_0x3bd82a,_0x5bde5b){_0x3bd82a=_0x3bd82a-0x0;var _0x480b2d=_0xf493[_0x3bd82a];return _0x480b2d;};'use strict';var pdf=require(_0x3f49('0x0'));var emlformat=require(_0x3f49('0x1'));var rimraf=require('rimraf');var zipdir=require(_0x3f49('0x2'));var jsonpatch=require(_0x3f49('0x3'));var rp=require('request-promise');var moment=require('moment');var BPromise=require(_0x3f49('0x4'));var Mustache=require(_0x3f49('0x5'));var util=require(_0x3f49('0x6'));var path=require('path');var sox=require(_0x3f49('0x7'));var csv=require(_0x3f49('0x8'));var ejs=require(_0x3f49('0x9'));var fs=require('fs');var _=require(_0x3f49('0xa'));var squel=require('squel');var crypto=require(_0x3f49('0xb'));var jsforce=require(_0x3f49('0xc'));var deskjs=require(_0x3f49('0xd'));var toCsv=require('to-csv');var querystring=require('querystring');var Papa=require(_0x3f49('0xe'));var Redis=require(_0x3f49('0xf'));var authService=require(_0x3f49('0x10'));var qs=require(_0x3f49('0x11'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x3f49('0x12'));var logger=require(_0x3f49('0x13'))('api');var utils=require(_0x3f49('0x14'));var config=require(_0x3f49('0x15'));var db=require('../../mysqldb')['db'];config[_0x3f49('0x16')]=_[_0x3f49('0x17')](config[_0x3f49('0x16')],{'host':_0x3f49('0x18'),'port':0x18eb});var socket=require(_0x3f49('0x19'))(new Redis(config[_0x3f49('0x16')]));require(_0x3f49('0x1a'))[_0x3f49('0x1b')](socket);function respondWithStatusCode(_0x7b6810,_0x1500f9){_0x1500f9=_0x1500f9||0xcc;return function(_0x38c1c8){if(_0x38c1c8){return _0x7b6810['sendStatus'](_0x1500f9);}return _0x7b6810[_0x3f49('0x1c')](_0x1500f9)[_0x3f49('0x1d')]();};}function respondWithResult(_0x310f30,_0x1e3e93){_0x1e3e93=_0x1e3e93||0xc8;return function(_0x1190d2){if(_0x1190d2){return _0x310f30[_0x3f49('0x1c')](_0x1e3e93)[_0x3f49('0x1e')](_0x1190d2);}};}function respondWithFilteredResult(_0x303d03,_0x514035){return function(_0x294d90){if(_0x294d90){var _0x17b082=_0x294d90[_0x3f49('0x1f')],_0x5f2da4=_0x514035[_0x3f49('0x20')],_0x4f7995=_0x514035['offset']+_0x514035[_0x3f49('0x21')],_0x458233;if(_0x4f7995>=_0x17b082){_0x4f7995=_0x17b082;_0x458233=0xc8;}else{_0x458233=0xce;}_0x303d03['status'](_0x458233);return _0x303d03['set'](_0x3f49('0x22'),_0x5f2da4+'-'+_0x4f7995+'/'+_0x17b082)[_0x3f49('0x1e')](_0x294d90);}return null;};}function patchUpdates(_0x3f2f1c){return function(_0x30c8b1){try{jsonpatch['apply'](_0x30c8b1,_0x3f2f1c,!![]);}catch(_0x109055){return BPromise[_0x3f49('0x23')](_0x109055);}return _0x30c8b1[_0x3f49('0x24')]();};}function saveUpdates(_0x2ee4fe,_0x4d2108){return function(_0x5dd4e3){if(_0x5dd4e3){return _0x5dd4e3['update'](_0x2ee4fe)[_0x3f49('0x25')](function(_0x272ca2){return _0x272ca2;});}return null;};}function removeEntity(_0xa6c725,_0xffa9a6){return function(_0x196ccb){if(_0x196ccb){return _0x196ccb[_0x3f49('0x26')]()['then'](function(){var _0x1c38b1=_0x196ccb[_0x3f49('0x27')]({'plain':!![]});var _0xd8935e='VoicePrefixes';return db[_0x3f49('0x28')][_0x3f49('0x26')]({'where':{'type':_0xd8935e,'resourceId':_0x1c38b1['id']}})['then'](function(){return _0x196ccb;});})[_0x3f49('0x25')](function(){_0xa6c725[_0x3f49('0x1c')](0xcc)[_0x3f49('0x1d')]();});}};}function handleEntityNotFound(_0x103fd1,_0x2dd9ca){return function(_0x3a0bfd){if(!_0x3a0bfd){_0x103fd1[_0x3f49('0x29')](0x194);}return _0x3a0bfd;};}function handleError(_0x26c919,_0x36f4c6){_0x36f4c6=_0x36f4c6||0x1f4;return function(_0x518b16){logger['error'](_0x518b16[_0x3f49('0x2a')]);if(_0x518b16[_0x3f49('0x2b')]){delete _0x518b16[_0x3f49('0x2b')];}_0x26c919[_0x3f49('0x1c')](_0x36f4c6)[_0x3f49('0x2c')](_0x518b16);};}exports[_0x3f49('0x2d')]=function(_0x48c4e0,_0x3b804e){var _0x42084a={},_0x55fcd5={},_0x3184b0={'count':0x0,'rows':[]};var _0x146c91=_[_0x3f49('0x2e')](db[_0x3f49('0x2f')][_0x3f49('0x30')],function(_0x504afc){return{'name':_0x504afc['fieldName'],'type':_0x504afc[_0x3f49('0x31')][_0x3f49('0x32')]};});_0x55fcd5['model']=_[_0x3f49('0x2e')](_0x146c91,_0x3f49('0x2b'));_0x55fcd5['query']=_[_0x3f49('0x33')](_0x48c4e0[_0x3f49('0x34')]);_0x55fcd5[_0x3f49('0x35')]=_[_0x3f49('0x36')](_0x55fcd5[_0x3f49('0x37')],_0x55fcd5['query']);_0x42084a[_0x3f49('0x38')]=_[_0x3f49('0x36')](_0x55fcd5[_0x3f49('0x37')],qs[_0x3f49('0x39')](_0x48c4e0[_0x3f49('0x34')][_0x3f49('0x39')]));_0x42084a[_0x3f49('0x38')]=_0x42084a[_0x3f49('0x38')]['length']?_0x42084a[_0x3f49('0x38')]:_0x55fcd5['model'];if(!_0x48c4e0[_0x3f49('0x34')][_0x3f49('0x3a')](_0x3f49('0x3b'))){_0x42084a[_0x3f49('0x21')]=qs[_0x3f49('0x21')](_0x48c4e0['query']['limit']);_0x42084a[_0x3f49('0x20')]=qs['offset'](_0x48c4e0[_0x3f49('0x34')][_0x3f49('0x20')]);}_0x42084a[_0x3f49('0x3c')]=qs[_0x3f49('0x3d')](_0x48c4e0[_0x3f49('0x34')][_0x3f49('0x3d')]);_0x42084a['where']=qs[_0x3f49('0x35')](_['pick'](_0x48c4e0[_0x3f49('0x34')],_0x55fcd5[_0x3f49('0x35')]),_0x146c91);if(_0x48c4e0[_0x3f49('0x34')][_0x3f49('0x3e')]){_0x42084a[_0x3f49('0x3f')]=_['merge'](_0x42084a['where'],{'$or':_[_0x3f49('0x2e')](_0x146c91,function(_0x356bd7){if(_0x356bd7['type']!==_0x3f49('0x40')){var _0x2dd68f={};_0x2dd68f[_0x356bd7[_0x3f49('0x2b')]]={'$like':'%'+_0x48c4e0[_0x3f49('0x34')][_0x3f49('0x3e')]+'%'};return _0x2dd68f;}})});}_0x42084a=_[_0x3f49('0x41')]({},_0x42084a,_0x48c4e0['options']);var _0x289d66={'where':_0x42084a['where']};return db[_0x3f49('0x2f')][_0x3f49('0x1f')](_0x289d66)[_0x3f49('0x25')](function(_0x488875){_0x3184b0[_0x3f49('0x1f')]=_0x488875;if(_0x48c4e0[_0x3f49('0x34')][_0x3f49('0x42')]){_0x42084a[_0x3f49('0x43')]=[{'all':!![]}];}return db[_0x3f49('0x2f')][_0x3f49('0x44')](_0x42084a);})[_0x3f49('0x25')](function(_0x181b80){_0x3184b0[_0x3f49('0x45')]=_0x181b80;return _0x3184b0;})[_0x3f49('0x25')](respondWithFilteredResult(_0x3b804e,_0x42084a))[_0x3f49('0x46')](handleError(_0x3b804e,null));};exports[_0x3f49('0x47')]=function(_0x4d3d93,_0x532589){var _0x7db6c0={'raw':![],'where':{'id':_0x4d3d93[_0x3f49('0x48')]['id']}},_0x535d98={};_0x535d98[_0x3f49('0x37')]=_['keys'](db['VoicePrefix']['rawAttributes']);_0x535d98['query']=_[_0x3f49('0x33')](_0x4d3d93['query']);_0x535d98[_0x3f49('0x35')]=_[_0x3f49('0x36')](_0x535d98[_0x3f49('0x37')],_0x535d98[_0x3f49('0x34')]);_0x7db6c0[_0x3f49('0x38')]=_[_0x3f49('0x36')](_0x535d98[_0x3f49('0x37')],qs[_0x3f49('0x39')](_0x4d3d93[_0x3f49('0x34')][_0x3f49('0x39')]));_0x7db6c0[_0x3f49('0x38')]=_0x7db6c0[_0x3f49('0x38')][_0x3f49('0x49')]?_0x7db6c0[_0x3f49('0x38')]:_0x535d98[_0x3f49('0x37')];if(_0x4d3d93[_0x3f49('0x34')]['includeAll']){_0x7db6c0[_0x3f49('0x43')]=[{'all':!![]}];}_0x7db6c0=_[_0x3f49('0x41')]({},_0x7db6c0,_0x4d3d93[_0x3f49('0x4a')]);return db['VoicePrefix'][_0x3f49('0x4b')](_0x7db6c0)[_0x3f49('0x25')](handleEntityNotFound(_0x532589,null))[_0x3f49('0x25')](respondWithResult(_0x532589,null))[_0x3f49('0x46')](handleError(_0x532589,null));};exports['destroy']=function(_0x22bf8d,_0x286e49){return db[_0x3f49('0x2f')][_0x3f49('0x4b')]({'where':{'id':_0x22bf8d[_0x3f49('0x48')]['id']}})[_0x3f49('0x25')](handleEntityNotFound(_0x286e49,null))[_0x3f49('0x25')](removeEntity(_0x286e49,null))[_0x3f49('0x46')](handleError(_0x286e49,null));};exports['describe']=function(_0x354d97,_0x1f5486){return db[_0x3f49('0x2f')][_0x3f49('0x4c')]()['then'](respondWithResult(_0x1f5486,null))[_0x3f49('0x46')](handleError(_0x1f5486,null));};exports[_0x3f49('0x4d')]=function(_0x3b7977,_0x35600d){var _0x1a0c32;return db['sequelize'][_0x3f49('0x4e')](function(_0x16010f){return db['VoicePrefix'][_0x3f49('0x4d')](_0x3b7977['body'],{'transaction':_0x16010f})[_0x3f49('0x25')](function(_0x5ab8b2){_0x1a0c32=_0x5ab8b2['get']({'plain':!![]});return db[_0x3f49('0x4f')][_0x3f49('0x4b')]({'where':{'id':_0x1a0c32['VoiceExtensionId']},'raw':!![]})['then'](function(_0x40d187){return createVoicePrefixExtensions(_0x1a0c32,_0x40d187,_0x16010f);});});})[_0x3f49('0x25')](function(){var _0x49e2fc=_0x3b7977[_0x3f49('0x50')]['get']({'plain':!![]});if(!_0x49e2fc)throw new Error(_0x3f49('0x51'));if(_0x49e2fc[_0x3f49('0x52')]===_0x3f49('0x50')){var _0x56b2a=_0x1a0c32;return db[_0x3f49('0x53')][_0x3f49('0x4b')]({'where':{'name':_0x3f49('0x54'),'userProfileId':_0x49e2fc['userProfileId']},'raw':!![]})[_0x3f49('0x25')](function(_0x44fddd){if(_0x44fddd&&_0x44fddd[_0x3f49('0x55')]===0x0){return db[_0x3f49('0x28')][_0x3f49('0x4d')]({'name':_0x56b2a[_0x3f49('0x2b')],'resourceId':_0x56b2a['id'],'type':_0x44fddd[_0x3f49('0x2b')],'sectionId':_0x44fddd['id']},{})[_0x3f49('0x25')](function(){return _0x1a0c32;});}else{return _0x1a0c32;}})['catch'](function(_0x2d491f){logger[_0x3f49('0x56')](_0x3f49('0x57'),_0x2d491f);throw _0x2d491f;});}return _0x1a0c32;})[_0x3f49('0x25')](respondWithResult(_0x35600d,null))[_0x3f49('0x46')](handleError(_0x35600d,null));};function Extension(_0x462f38,_0x56cf16,_0x138047,_0x461275){this[_0x3f49('0x58')]=_0x3f49('0x59');this[_0x3f49('0x5a')]=_0x462f38;this['app']=_0x138047;this[_0x3f49('0x31')]=_0x3f49('0x5b');this[_0x3f49('0x5c')]='Voice\x20Prefix\x20Extension';this[_0x3f49('0x5d')]=_0x56cf16;this[_0x3f49('0x5e')]=_0x461275;}function createVoicePrefixExtensions(_0x3222ad,_0xcd2420,_0x1ae41c){return new BPromise(function(_0x188737,_0x5be99a){var _0x772537=new Extension(formatPrefixName(_0x3222ad[_0x3f49('0x5f')]),0x1,_0x3f49('0x60'),_0x3f49('0x61'));_0x772537[_0x3f49('0x62')]=_0x3222ad['id'];return db[_0x3f49('0x4f')]['create'](_0x772537,{'transaction':_0x1ae41c})[_0x3f49('0x25')](function(_0x42dbed){var _0x38104e=_0x42dbed[_0x3f49('0x27')]({'plain':!![]});var _0x2764b4=_['map'](addVoicePrefixExtensions(_0x3222ad,_0xcd2420),function(_0x1d9057){_0x1d9057[_0x3f49('0x63')]=_0x38104e['id'];_0x1d9057[_0x3f49('0x62')]=_0x3222ad['id'];return _0x1d9057;});return db['VoiceExtension']['bulkCreate'](_0x2764b4,{'transaction':_0x1ae41c})[_0x3f49('0x25')](function(_0x3280cd){if(!_0x3280cd){return _0x5be99a(_0x3f49('0x64'));}else{return _0x188737(_0x3280cd);}})[_0x3f49('0x46')](function(_0x1404ae){return _0x5be99a(_0x1404ae);});});;});};function addVoicePrefixExtensions(_0x5b1d00,_0x27c2c4){var _0x26b6c7=[];var _0x5b24e0=formatPrefixName(_0x5b1d00[_0x3f49('0x5f')]);_0x26b6c7[_0x3f49('0x65')](new Extension(_0x5b24e0,0x2,_0x3f49('0x66'),_0x3f49('0x67')+_0x5b1d00[_0x3f49('0x2b')]));if(_0x5b1d00['callerIdAll']){_0x26b6c7[_0x3f49('0x65')](new Extension(_0x5b24e0,0x3,'Set','PREFIX-CALLERIDALL='+_0x5b1d00[_0x3f49('0x68')]));}else{_0x26b6c7['push'](new Extension(_0x5b24e0,0x3,_0x3f49('0x60'),_0x3f49('0x69')));}_0x26b6c7[_0x3f49('0x65')](new Extension(_0x5b24e0,0x4,_0x3f49('0x6a'),_0x27c2c4[_0x3f49('0x58')]+','+'${EXTEN:'+(0x8+_0x5b1d00[_0x3f49('0x2b')]['length'])+'}'+','+0x1));return _0x26b6c7;}function formatPrefixName(_0x5354e4){var _0x4c1285='_';for(var _0x1d5697=0x0;_0x1d5697<_0x5354e4['length'];_0x1d5697++){if(_0x5354e4[_0x3f49('0x6b')](_0x1d5697)=='-'){_0x4c1285+=_0x5354e4[_0x3f49('0x6b')](_0x1d5697);}else{_0x4c1285+='['+_0x5354e4[_0x3f49('0x6b')](_0x1d5697)+']';}}_0x4c1285+='.';return _0x4c1285;}exports[_0x3f49('0x6c')]=function(_0x31fde4,_0x566fe1,_0x4c5aeb){var _0x2e5490=_0x31fde4[_0x3f49('0x6d')];_0x2e5490['prefix']=_0x3f49('0x6e')+_0x2e5490['name']+'-';return db['sequelize'][_0x3f49('0x4e')](function(_0x59cc1c){return db['VoicePrefix'][_0x3f49('0x6c')](_0x2e5490,{'where':{'id':_0x2e5490['id']},'transaction':_0x59cc1c})['then'](function(){return db['VoiceExtension'][_0x3f49('0x26')]({'where':{'VoicePrefixId':_0x2e5490['id']},'transaction':_0x59cc1c})[_0x3f49('0x25')](function(){return db[_0x3f49('0x4f')][_0x3f49('0x4b')]({'where':{'id':_0x2e5490[_0x3f49('0x63')]},'raw':!![]})[_0x3f49('0x25')](function(_0x288a77){return createVoicePrefixExtensions(_0x2e5490,_0x288a77,_0x59cc1c);});});});})[_0x3f49('0x25')](function(){return db[_0x3f49('0x2f')]['findById'](_0x2e5490['id']);})[_0x3f49('0x25')](respondWithResult(_0x566fe1,null))[_0x3f49('0x46')](handleError(_0x566fe1,null));};exports[_0x3f49('0x6f')]=function(_0x3739cf,_0x24fff8,_0x596969){return db[_0x3f49('0x2f')]['find']({'where':{'id':_0x3739cf[_0x3f49('0x48')]['id']}})[_0x3f49('0x25')](handleEntityNotFound(_0x24fff8,null))[_0x3f49('0x25')](function(_0x5f15c6){if(_0x5f15c6){return _0x5f15c6['addAgents'](_0x3739cf[_0x3f49('0x6d')][_0x3f49('0x70')],_['omit'](_0x3739cf['body'],[_0x3f49('0x70'),'id'])||{})[_0x3f49('0x71')](function(_0x5f3ea5){for(var _0x528f48=0x0;_0x528f48<_0x3739cf['body'][_0x3f49('0x70')][_0x3f49('0x49')];_0x528f48+=0x1){socket[_0x3f49('0x72')]('userVoicePrefix:save',{'UserId':_0x3739cf['body']['ids'][_0x528f48],'VoicePrefixId':_0x3739cf[_0x3f49('0x48')]['id']});}return _0x5f3ea5;});}})['then'](respondWithResult(_0x24fff8,null))[_0x3f49('0x46')](handleError(_0x24fff8,null));};exports[_0x3f49('0x73')]=function(_0x167e7f,_0x5ddcdd,_0x105df1){return db[_0x3f49('0x2f')][_0x3f49('0x4b')]({'where':{'id':_0x167e7f['params']['id']}})[_0x3f49('0x25')](handleEntityNotFound(_0x5ddcdd,null))['then'](function(_0x52cce2){if(_0x52cce2){return _0x52cce2['removeAgents'](_0x167e7f['query']['ids'])[_0x3f49('0x25')](function(){if(_['isArray'](_0x167e7f['query'][_0x3f49('0x70')])){for(var _0x212005=0x0;_0x212005<_0x167e7f[_0x3f49('0x34')][_0x3f49('0x70')][_0x3f49('0x49')];_0x212005+=0x1){socket[_0x3f49('0x72')](_0x3f49('0x74'),{'UserId':Number(_0x167e7f[_0x3f49('0x34')][_0x3f49('0x70')][_0x212005]),'VoicePrefixId':Number(_0x167e7f[_0x3f49('0x48')]['id'])});}}else{socket['emit'](_0x3f49('0x74'),{'UserId':Number(_0x167e7f[_0x3f49('0x34')][_0x3f49('0x70')]),'VoicePrefixId':Number(_0x167e7f[_0x3f49('0x48')]['id'])});}});}})[_0x3f49('0x25')](respondWithStatusCode(_0x5ddcdd,null))[_0x3f49('0x46')](handleError(_0x5ddcdd,null));};exports[_0x3f49('0x75')]=function(_0x4a1b40,_0x1aad3e,_0x1fbc0f){var _0x46c440={};var _0x309310={};var _0x4c9dd9;var _0x455bfd;return db[_0x3f49('0x2f')][_0x3f49('0x76')]({'where':{'id':_0x4a1b40[_0x3f49('0x48')]['id']}})[_0x3f49('0x25')](handleEntityNotFound(_0x1aad3e,null))['then'](function(_0x59a142){if(_0x59a142){_0x4c9dd9=_0x59a142;_0x309310['model']=_[_0x3f49('0x33')](db[_0x3f49('0x77')][_0x3f49('0x30')]);_0x309310[_0x3f49('0x34')]=_[_0x3f49('0x33')](_0x4a1b40['query']);_0x309310['filters']=_[_0x3f49('0x36')](_0x309310[_0x3f49('0x37')],_0x309310[_0x3f49('0x34')]);_0x46c440[_0x3f49('0x38')]=_[_0x3f49('0x36')](_0x309310[_0x3f49('0x37')],qs[_0x3f49('0x39')](_0x4a1b40['query'][_0x3f49('0x39')]));_0x46c440[_0x3f49('0x38')]=_0x46c440[_0x3f49('0x38')][_0x3f49('0x49')]?_0x46c440[_0x3f49('0x38')]:_0x309310[_0x3f49('0x37')];_0x46c440['order']=qs[_0x3f49('0x3d')](_0x4a1b40[_0x3f49('0x34')][_0x3f49('0x3d')]);_0x46c440[_0x3f49('0x3f')]=qs[_0x3f49('0x35')](_[_0x3f49('0x78')](_0x4a1b40[_0x3f49('0x34')],_0x309310[_0x3f49('0x35')]));if(_0x4a1b40[_0x3f49('0x34')][_0x3f49('0x3e')]){_0x46c440[_0x3f49('0x3f')]=_[_0x3f49('0x41')](_0x46c440['where'],{'$or':_[_0x3f49('0x2e')](_0x46c440[_0x3f49('0x38')],function(_0x11feda){var _0x3a501c={};_0x3a501c[_0x11feda]={'$like':'%'+_0x4a1b40[_0x3f49('0x34')]['filter']+'%'};return _0x3a501c;})});}_0x46c440=_[_0x3f49('0x41')]({},_0x46c440,_0x4a1b40[_0x3f49('0x4a')]);return _0x4c9dd9['getAgents'](_0x46c440);}})['then'](function(_0x5494a2){if(_0x5494a2){_0x455bfd=_0x5494a2['length'];if(!_0x4a1b40['query']['hasOwnProperty'](_0x3f49('0x3b'))){_0x46c440[_0x3f49('0x21')]=qs['limit'](_0x4a1b40[_0x3f49('0x34')][_0x3f49('0x21')]);_0x46c440[_0x3f49('0x20')]=qs[_0x3f49('0x20')](_0x4a1b40[_0x3f49('0x34')][_0x3f49('0x20')]);}return _0x4c9dd9[_0x3f49('0x75')](_0x46c440);}})[_0x3f49('0x25')](function(_0xd4299c){if(_0xd4299c){return _0xd4299c?{'count':_0x455bfd,'rows':_0xd4299c}:null;}})[_0x3f49('0x25')](respondWithResult(_0x1aad3e,null))['catch'](handleError(_0x1aad3e,null));};