217e34985a0a4236bea341f3aa02e897da2b73b8
[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 _0x91af=['merge','type','count','includeAll','include','rows','catch','show','params','keys','options','find','describe','create','transaction','VoiceExtension','VoiceExtensionId','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','user','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','from-sip','exten','system','Voice\x20Prefix\x20Extension','priority','appdata','NoOp','Voice\x20Prefix','VoicePrefixId','push','Set','callerIdAll','No\x20callerid\x20available','context','${EXTEN:','charAt','body','findById','omit','ids','spread','emit','removeAgents','isArray','userVoicePrefix:remove','findOne','getAgents','rimraf','zip-dir','moment','bluebird','mustache','util','path','sox','ejs','fs-extra','crypto','jsforce','desk.js','to-csv','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/utils','../../config/license/util','../../mysqldb','redis','defaults','localhost','socket.io-emitter','register','sendStatus','status','end','json','offset','limit','set','apply','reject','save','update','then','destroy','get','VoicePrefixes','UserProfileResource','error','name','index','map','VoicePrefix','rawAttributes','key','model','query','filters','intersection','attributes','fields','length','hasOwnProperty','order','sort','where','filter'];(function(_0x21141c,_0x1bf3b9){var _0x592432=function(_0x1b76d0){while(--_0x1b76d0){_0x21141c['push'](_0x21141c['shift']());}};_0x592432(++_0x1bf3b9);}(_0x91af,0x114));var _0xf91a=function(_0x1c4c4a,_0x1a5a19){_0x1c4c4a=_0x1c4c4a-0x0;var _0x46093f=_0x91af[_0x1c4c4a];return _0x46093f;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0xf91a('0x0'));var zipdir=require(_0xf91a('0x1'));var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require(_0xf91a('0x2'));var BPromise=require(_0xf91a('0x3'));var Mustache=require(_0xf91a('0x4'));var util=require(_0xf91a('0x5'));var path=require(_0xf91a('0x6'));var sox=require(_0xf91a('0x7'));var csv=require('to-csv');var ejs=require(_0xf91a('0x8'));var fs=require('fs');var fs_extra=require(_0xf91a('0x9'));var _=require('lodash');var squel=require('squel');var crypto=require(_0xf91a('0xa'));var jsforce=require(_0xf91a('0xb'));var deskjs=require(_0xf91a('0xc'));var toCsv=require(_0xf91a('0xd'));var querystring=require(_0xf91a('0xe'));var Papa=require(_0xf91a('0xf'));var Redis=require(_0xf91a('0x10'));var authService=require(_0xf91a('0x11'));var qs=require(_0xf91a('0x12'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xf91a('0x13'));var logger=require('../../config/logger')('api');var utils=require(_0xf91a('0x14'));var config=require('../../config/environment');var licenseUtil=require(_0xf91a('0x15'));var db=require(_0xf91a('0x16'))['db'];config[_0xf91a('0x17')]=_[_0xf91a('0x18')](config[_0xf91a('0x17')],{'host':_0xf91a('0x19'),'port':0x18eb});var socket=require(_0xf91a('0x1a'))(new Redis(config[_0xf91a('0x17')]));require('./voicePrefix.socket')[_0xf91a('0x1b')](socket);function respondWithStatusCode(_0x128bae,_0x4dc704){_0x4dc704=_0x4dc704||0xcc;return function(_0x45681b){if(_0x45681b){return _0x128bae[_0xf91a('0x1c')](_0x4dc704);}return _0x128bae[_0xf91a('0x1d')](_0x4dc704)[_0xf91a('0x1e')]();};}function respondWithResult(_0x3654e6,_0x47ad06){_0x47ad06=_0x47ad06||0xc8;return function(_0x2b4f99){if(_0x2b4f99){return _0x3654e6[_0xf91a('0x1d')](_0x47ad06)[_0xf91a('0x1f')](_0x2b4f99);}};}function respondWithFilteredResult(_0x250966,_0x2017da){return function(_0x4a7020){if(_0x4a7020){var _0x5ab79b=_0x4a7020['count'],_0x3e07ab=_0x2017da[_0xf91a('0x20')],_0x15997c=_0x2017da[_0xf91a('0x20')]+_0x2017da[_0xf91a('0x21')],_0x4b841c;if(_0x15997c>=_0x5ab79b){_0x15997c=_0x5ab79b;_0x4b841c=0xc8;}else{_0x4b841c=0xce;}_0x250966[_0xf91a('0x1d')](_0x4b841c);return _0x250966[_0xf91a('0x22')]('Content-Range',_0x3e07ab+'-'+_0x15997c+'/'+_0x5ab79b)[_0xf91a('0x1f')](_0x4a7020);}return null;};}function patchUpdates(_0x31e735){return function(_0x597bc7){try{jsonpatch[_0xf91a('0x23')](_0x597bc7,_0x31e735,!![]);}catch(_0x516fe3){return BPromise[_0xf91a('0x24')](_0x516fe3);}return _0x597bc7[_0xf91a('0x25')]();};}function saveUpdates(_0x1bf0e3,_0x2577cb){return function(_0x1d2346){if(_0x1d2346){return _0x1d2346[_0xf91a('0x26')](_0x1bf0e3)[_0xf91a('0x27')](function(_0x5ce8a8){return _0x5ce8a8;});}return null;};}function removeEntity(_0x402a73,_0x32e26d){return function(_0x9b6710){if(_0x9b6710){return _0x9b6710[_0xf91a('0x28')]()[_0xf91a('0x27')](function(){var _0x3eca0d=_0x9b6710[_0xf91a('0x29')]({'plain':!![]});var _0x196586=_0xf91a('0x2a');return db[_0xf91a('0x2b')][_0xf91a('0x28')]({'where':{'type':_0x196586,'resourceId':_0x3eca0d['id']}})['then'](function(){return _0x9b6710;});})[_0xf91a('0x27')](function(){_0x402a73[_0xf91a('0x1d')](0xcc)[_0xf91a('0x1e')]();});}};}function handleEntityNotFound(_0x5b99d4,_0xc740ab){return function(_0x59c1e0){if(!_0x59c1e0){_0x5b99d4[_0xf91a('0x1c')](0x194);}return _0x59c1e0;};}function handleError(_0x5d972c,_0x1fcf00){_0x1fcf00=_0x1fcf00||0x1f4;return function(_0x9944dd){logger[_0xf91a('0x2c')](_0x9944dd['stack']);if(_0x9944dd[_0xf91a('0x2d')]){delete _0x9944dd[_0xf91a('0x2d')];}_0x5d972c[_0xf91a('0x1d')](_0x1fcf00)['send'](_0x9944dd);};}exports[_0xf91a('0x2e')]=function(_0x197aa0,_0x2589b5){var _0x5e87ee={},_0x1f9abe={},_0x4a0c0c={'count':0x0,'rows':[]};var _0x5e438f=_[_0xf91a('0x2f')](db[_0xf91a('0x30')][_0xf91a('0x31')],function(_0x570c75){return{'name':_0x570c75['fieldName'],'type':_0x570c75['type'][_0xf91a('0x32')]};});_0x1f9abe[_0xf91a('0x33')]=_['map'](_0x5e438f,_0xf91a('0x2d'));_0x1f9abe[_0xf91a('0x34')]=_['keys'](_0x197aa0[_0xf91a('0x34')]);_0x1f9abe[_0xf91a('0x35')]=_[_0xf91a('0x36')](_0x1f9abe[_0xf91a('0x33')],_0x1f9abe[_0xf91a('0x34')]);_0x5e87ee[_0xf91a('0x37')]=_['intersection'](_0x1f9abe[_0xf91a('0x33')],qs['fields'](_0x197aa0[_0xf91a('0x34')][_0xf91a('0x38')]));_0x5e87ee[_0xf91a('0x37')]=_0x5e87ee[_0xf91a('0x37')][_0xf91a('0x39')]?_0x5e87ee[_0xf91a('0x37')]:_0x1f9abe['model'];if(!_0x197aa0[_0xf91a('0x34')][_0xf91a('0x3a')]('nolimit')){_0x5e87ee[_0xf91a('0x21')]=qs[_0xf91a('0x21')](_0x197aa0[_0xf91a('0x34')]['limit']);_0x5e87ee['offset']=qs[_0xf91a('0x20')](_0x197aa0[_0xf91a('0x34')]['offset']);}_0x5e87ee[_0xf91a('0x3b')]=qs['sort'](_0x197aa0[_0xf91a('0x34')][_0xf91a('0x3c')]);_0x5e87ee[_0xf91a('0x3d')]=qs['filters'](_['pick'](_0x197aa0[_0xf91a('0x34')],_0x1f9abe['filters']),_0x5e438f);if(_0x197aa0['query'][_0xf91a('0x3e')]){_0x5e87ee[_0xf91a('0x3d')]=_[_0xf91a('0x3f')](_0x5e87ee[_0xf91a('0x3d')],{'$or':_[_0xf91a('0x2f')](_0x5e438f,function(_0x4b196e){if(_0x4b196e[_0xf91a('0x40')]!=='VIRTUAL'){var _0xbc00c6={};_0xbc00c6[_0x4b196e[_0xf91a('0x2d')]]={'$like':'%'+_0x197aa0['query']['filter']+'%'};return _0xbc00c6;}})});}_0x5e87ee=_[_0xf91a('0x3f')]({},_0x5e87ee,_0x197aa0['options']);var _0x5e84b5={'where':_0x5e87ee[_0xf91a('0x3d')]};return db[_0xf91a('0x30')][_0xf91a('0x41')](_0x5e84b5)['then'](function(_0x4ca8eb){_0x4a0c0c[_0xf91a('0x41')]=_0x4ca8eb;if(_0x197aa0['query'][_0xf91a('0x42')]){_0x5e87ee[_0xf91a('0x43')]=[{'all':!![]}];}return db[_0xf91a('0x30')]['findAll'](_0x5e87ee);})['then'](function(_0x26d3ad){_0x4a0c0c[_0xf91a('0x44')]=_0x26d3ad;return _0x4a0c0c;})[_0xf91a('0x27')](respondWithFilteredResult(_0x2589b5,_0x5e87ee))[_0xf91a('0x45')](handleError(_0x2589b5,null));};exports[_0xf91a('0x46')]=function(_0x238310,_0x3bae3){var _0x2a4afa={'raw':![],'where':{'id':_0x238310[_0xf91a('0x47')]['id']}},_0x20dd8f={};_0x20dd8f[_0xf91a('0x33')]=_[_0xf91a('0x48')](db['VoicePrefix'][_0xf91a('0x31')]);_0x20dd8f[_0xf91a('0x34')]=_[_0xf91a('0x48')](_0x238310[_0xf91a('0x34')]);_0x20dd8f[_0xf91a('0x35')]=_[_0xf91a('0x36')](_0x20dd8f['model'],_0x20dd8f[_0xf91a('0x34')]);_0x2a4afa[_0xf91a('0x37')]=_['intersection'](_0x20dd8f['model'],qs[_0xf91a('0x38')](_0x238310[_0xf91a('0x34')]['fields']));_0x2a4afa['attributes']=_0x2a4afa[_0xf91a('0x37')][_0xf91a('0x39')]?_0x2a4afa[_0xf91a('0x37')]:_0x20dd8f[_0xf91a('0x33')];if(_0x238310[_0xf91a('0x34')][_0xf91a('0x42')]){_0x2a4afa[_0xf91a('0x43')]=[{'all':!![]}];}_0x2a4afa=_['merge']({},_0x2a4afa,_0x238310[_0xf91a('0x49')]);return db['VoicePrefix'][_0xf91a('0x4a')](_0x2a4afa)[_0xf91a('0x27')](handleEntityNotFound(_0x3bae3,null))[_0xf91a('0x27')](respondWithResult(_0x3bae3,null))['catch'](handleError(_0x3bae3,null));};exports[_0xf91a('0x28')]=function(_0x4df2b7,_0x3d915e){return db[_0xf91a('0x30')][_0xf91a('0x4a')]({'where':{'id':_0x4df2b7[_0xf91a('0x47')]['id']}})[_0xf91a('0x27')](handleEntityNotFound(_0x3d915e,null))[_0xf91a('0x27')](removeEntity(_0x3d915e,null))[_0xf91a('0x45')](handleError(_0x3d915e,null));};exports[_0xf91a('0x4b')]=function(_0x1754bf,_0x35bae4){return db[_0xf91a('0x30')][_0xf91a('0x4b')]()[_0xf91a('0x27')](respondWithResult(_0x35bae4,null))[_0xf91a('0x45')](handleError(_0x35bae4,null));};exports[_0xf91a('0x4c')]=function(_0x53c42d,_0x257a71){var _0x71783f;return db['sequelize'][_0xf91a('0x4d')](function(_0x31e2bc){return db['VoicePrefix'][_0xf91a('0x4c')](_0x53c42d['body'],{'transaction':_0x31e2bc})['then'](function(_0x3a6cf9){_0x71783f=_0x3a6cf9[_0xf91a('0x29')]({'plain':!![]});return db[_0xf91a('0x4e')]['find']({'where':{'id':_0x71783f[_0xf91a('0x4f')]},'raw':!![]})['then'](function(_0xaeaaa8){return createVoicePrefixExtensions(_0x71783f,_0xaeaaa8,_0x31e2bc);});});})[_0xf91a('0x27')](function(){var _0x5765ed=_0x53c42d['user'][_0xf91a('0x29')]({'plain':!![]});if(!_0x5765ed)throw new Error(_0xf91a('0x50'));if(_0x5765ed[_0xf91a('0x51')]===_0xf91a('0x52')){var _0x1d7a5d=_0x71783f;return db['UserProfileSection'][_0xf91a('0x4a')]({'where':{'name':_0xf91a('0x2a'),'userProfileId':_0x5765ed[_0xf91a('0x53')]},'raw':!![]})[_0xf91a('0x27')](function(_0x4f562a){if(_0x4f562a&&_0x4f562a[_0xf91a('0x54')]===0x0){return db[_0xf91a('0x2b')][_0xf91a('0x4c')]({'name':_0x1d7a5d[_0xf91a('0x2d')],'resourceId':_0x1d7a5d['id'],'type':_0x4f562a[_0xf91a('0x2d')],'sectionId':_0x4f562a['id']},{})['then'](function(){return _0x71783f;});}else{return _0x71783f;}})[_0xf91a('0x45')](function(_0x3c0c50){logger['error'](_0xf91a('0x55'),_0x3c0c50);throw _0x3c0c50;});}return _0x71783f;})[_0xf91a('0x27')](respondWithResult(_0x257a71,null))[_0xf91a('0x45')](handleError(_0x257a71,null));};function Extension(_0x4e17a6,_0x54b189,_0x293500,_0x59cc1d){this['context']=_0xf91a('0x56');this[_0xf91a('0x57')]=_0x4e17a6;this['app']=_0x293500;this[_0xf91a('0x40')]=_0xf91a('0x58');this['description']=_0xf91a('0x59');this[_0xf91a('0x5a')]=_0x54b189;this[_0xf91a('0x5b')]=_0x59cc1d;}function createVoicePrefixExtensions(_0x557491,_0x4d883f,_0x33da22){return new BPromise(function(_0x5eb8c0,_0x1c6a17){var _0x14ec00=new Extension(formatPrefixName(_0x557491['prefix']),0x1,_0xf91a('0x5c'),_0xf91a('0x5d'));_0x14ec00[_0xf91a('0x5e')]=_0x557491['id'];return db[_0xf91a('0x4e')][_0xf91a('0x4c')](_0x14ec00,{'transaction':_0x33da22})['then'](function(_0x38a833){var _0x2c670e=_0x38a833[_0xf91a('0x29')]({'plain':!![]});var _0x790dde=_[_0xf91a('0x2f')](addVoicePrefixExtensions(_0x557491,_0x4d883f),function(_0x50a381){_0x50a381['VoiceExtensionId']=_0x2c670e['id'];_0x50a381['VoicePrefixId']=_0x557491['id'];return _0x50a381;});return db['VoiceExtension']['bulkCreate'](_0x790dde,{'transaction':_0x33da22})[_0xf91a('0x27')](function(_0x56b739){if(!_0x56b739){return _0x1c6a17('Extensions\x20creation\x20failed');}else{return _0x5eb8c0(_0x56b739);}})[_0xf91a('0x45')](function(_0x105220){return _0x1c6a17(_0x105220);});});;});};function addVoicePrefixExtensions(_0x526b63,_0x1863e9){var _0x484f7d=[];var _0x583755=formatPrefixName(_0x526b63['prefix']);_0x484f7d[_0xf91a('0x5f')](new Extension(_0x583755,0x2,_0xf91a('0x60'),'CDR(prefix)='+_0x526b63[_0xf91a('0x2d')]));if(_0x526b63[_0xf91a('0x61')]){_0x484f7d['push'](new Extension(_0x583755,0x3,_0xf91a('0x60'),'PREFIX-CALLERIDALL='+_0x526b63[_0xf91a('0x61')]));}else{_0x484f7d[_0xf91a('0x5f')](new Extension(_0x583755,0x3,'NoOp',_0xf91a('0x62')));}_0x484f7d[_0xf91a('0x5f')](new Extension(_0x583755,0x4,'goto',_0x1863e9[_0xf91a('0x63')]+','+_0xf91a('0x64')+(0x8+_0x526b63[_0xf91a('0x2d')][_0xf91a('0x39')])+'}'+','+0x1));return _0x484f7d;}function formatPrefixName(_0xcc6d98){var _0x3f0065='_';for(var _0x24dbee=0x0;_0x24dbee<_0xcc6d98[_0xf91a('0x39')];_0x24dbee++){if(_0xcc6d98[_0xf91a('0x65')](_0x24dbee)=='-'){_0x3f0065+=_0xcc6d98[_0xf91a('0x65')](_0x24dbee);}else{_0x3f0065+='['+_0xcc6d98[_0xf91a('0x65')](_0x24dbee)+']';}}_0x3f0065+='.';return _0x3f0065;}exports['update']=function(_0x4cd614,_0x26aa63,_0x1ee285){var _0x818cad=_0x4cd614[_0xf91a('0x66')];_0x818cad['prefix']='system-'+_0x818cad[_0xf91a('0x2d')]+'-';return db['sequelize']['transaction'](function(_0x57fed9){return db[_0xf91a('0x30')]['update'](_0x818cad,{'where':{'id':_0x818cad['id']},'transaction':_0x57fed9})['then'](function(){return db[_0xf91a('0x4e')][_0xf91a('0x28')]({'where':{'VoicePrefixId':_0x818cad['id']},'transaction':_0x57fed9})[_0xf91a('0x27')](function(){return db[_0xf91a('0x4e')][_0xf91a('0x4a')]({'where':{'id':_0x818cad[_0xf91a('0x4f')]},'raw':!![]})[_0xf91a('0x27')](function(_0x31cfc8){return createVoicePrefixExtensions(_0x818cad,_0x31cfc8,_0x57fed9);});});});})['then'](function(){return db['VoicePrefix'][_0xf91a('0x67')](_0x818cad['id']);})[_0xf91a('0x27')](respondWithResult(_0x26aa63,null))[_0xf91a('0x45')](handleError(_0x26aa63,null));};exports['addAgents']=function(_0x5ecff7,_0x29c688,_0x5a4b78){return db[_0xf91a('0x30')][_0xf91a('0x4a')]({'where':{'id':_0x5ecff7['params']['id']}})['then'](handleEntityNotFound(_0x29c688,null))['then'](function(_0x4467b7){if(_0x4467b7){return _0x4467b7['addAgents'](_0x5ecff7[_0xf91a('0x66')]['ids'],_[_0xf91a('0x68')](_0x5ecff7[_0xf91a('0x66')],[_0xf91a('0x69'),'id'])||{})[_0xf91a('0x6a')](function(_0x587ae0){for(var _0x511e29=0x0;_0x511e29<_0x5ecff7[_0xf91a('0x66')][_0xf91a('0x69')][_0xf91a('0x39')];_0x511e29+=0x1){socket[_0xf91a('0x6b')]('userVoicePrefix:save',{'UserId':_0x5ecff7[_0xf91a('0x66')][_0xf91a('0x69')][_0x511e29],'VoicePrefixId':_0x5ecff7[_0xf91a('0x47')]['id']});}return _0x587ae0;});}})['then'](respondWithResult(_0x29c688,null))[_0xf91a('0x45')](handleError(_0x29c688,null));};exports[_0xf91a('0x6c')]=function(_0x1aabdc,_0x252705,_0x5a4f2f){return db['VoicePrefix'][_0xf91a('0x4a')]({'where':{'id':_0x1aabdc['params']['id']}})[_0xf91a('0x27')](handleEntityNotFound(_0x252705,null))[_0xf91a('0x27')](function(_0x2861d2){if(_0x2861d2){return _0x2861d2[_0xf91a('0x6c')](_0x1aabdc['query'][_0xf91a('0x69')])[_0xf91a('0x27')](function(){if(_[_0xf91a('0x6d')](_0x1aabdc[_0xf91a('0x34')][_0xf91a('0x69')])){for(var _0x307719=0x0;_0x307719<_0x1aabdc[_0xf91a('0x34')][_0xf91a('0x69')]['length'];_0x307719+=0x1){socket[_0xf91a('0x6b')](_0xf91a('0x6e'),{'UserId':Number(_0x1aabdc[_0xf91a('0x34')][_0xf91a('0x69')][_0x307719]),'VoicePrefixId':Number(_0x1aabdc['params']['id'])});}}else{socket[_0xf91a('0x6b')](_0xf91a('0x6e'),{'UserId':Number(_0x1aabdc['query']['ids']),'VoicePrefixId':Number(_0x1aabdc[_0xf91a('0x47')]['id'])});}});}})[_0xf91a('0x27')](respondWithStatusCode(_0x252705,null))['catch'](handleError(_0x252705,null));};exports['getAgents']=function(_0x56af6c,_0x5bac77,_0x46c63d){var _0x2584f9={};var _0xacf635={};var _0x18bf06;var _0x4898d0;return db['VoicePrefix'][_0xf91a('0x6f')]({'where':{'id':_0x56af6c['params']['id']}})[_0xf91a('0x27')](handleEntityNotFound(_0x5bac77,null))[_0xf91a('0x27')](function(_0x136ab3){if(_0x136ab3){_0x18bf06=_0x136ab3;_0xacf635['model']=_[_0xf91a('0x48')](db['User']['rawAttributes']);_0xacf635[_0xf91a('0x34')]=_[_0xf91a('0x48')](_0x56af6c[_0xf91a('0x34')]);_0xacf635[_0xf91a('0x35')]=_[_0xf91a('0x36')](_0xacf635[_0xf91a('0x33')],_0xacf635[_0xf91a('0x34')]);_0x2584f9['attributes']=_[_0xf91a('0x36')](_0xacf635[_0xf91a('0x33')],qs['fields'](_0x56af6c[_0xf91a('0x34')][_0xf91a('0x38')]));_0x2584f9[_0xf91a('0x37')]=_0x2584f9[_0xf91a('0x37')][_0xf91a('0x39')]?_0x2584f9['attributes']:_0xacf635[_0xf91a('0x33')];_0x2584f9[_0xf91a('0x3b')]=qs[_0xf91a('0x3c')](_0x56af6c[_0xf91a('0x34')][_0xf91a('0x3c')]);_0x2584f9[_0xf91a('0x3d')]=qs['filters'](_['pick'](_0x56af6c[_0xf91a('0x34')],_0xacf635['filters']));if(_0x56af6c[_0xf91a('0x34')][_0xf91a('0x3e')]){_0x2584f9[_0xf91a('0x3d')]=_[_0xf91a('0x3f')](_0x2584f9[_0xf91a('0x3d')],{'$or':_[_0xf91a('0x2f')](_0x2584f9['attributes'],function(_0x13fd1f){var _0x403826={};_0x403826[_0x13fd1f]={'$like':'%'+_0x56af6c['query'][_0xf91a('0x3e')]+'%'};return _0x403826;})});}_0x2584f9=_[_0xf91a('0x3f')]({},_0x2584f9,_0x56af6c[_0xf91a('0x49')]);return _0x18bf06[_0xf91a('0x70')](_0x2584f9);}})['then'](function(_0x41bc49){if(_0x41bc49){_0x4898d0=_0x41bc49[_0xf91a('0x39')];if(!_0x56af6c['query'][_0xf91a('0x3a')]('nolimit')){_0x2584f9[_0xf91a('0x21')]=qs[_0xf91a('0x21')](_0x56af6c['query'][_0xf91a('0x21')]);_0x2584f9[_0xf91a('0x20')]=qs['offset'](_0x56af6c['query'][_0xf91a('0x20')]);}return _0x18bf06['getAgents'](_0x2584f9);}})[_0xf91a('0x27')](function(_0x4ce04c){if(_0x4ce04c){return _0x4ce04c?{'count':_0x4898d0,'rows':_0x4ce04c}:null;}})[_0xf91a('0x27')](respondWithResult(_0x5bac77,null))[_0xf91a('0x45')](handleError(_0x5bac77,null));};