97d714c7e38bf489a6386fa0bc500165d9500c37
[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 _0x4ded=['description','Voice\x20Prefix\x20Extension','priority','prefix','NoOp','Voice\x20Prefix','push','Set','CDR(prefix)=','callerIdAll','PREFIX-CALLERIDALL=','No\x20callerid\x20available','goto','findById','addAgents','ids','omit','spread','userVoicePrefix:save','removeAgents','isArray','emit','userVoicePrefix:remove','getAgents','findOne','User','sort','hasOwnProperty','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','ejs','lodash','squel','crypto','jsforce','desk.js','querystring','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/utils','../../config/license/util','../../mysqldb','redis','defaults','localhost','socket.io-emitter','./voicePrefix.socket','register','sendStatus','status','end','json','count','offset','set','Content-Range','apply','reject','save','update','then','destroy','get','VoicePrefixes','UserProfileResource','error','stack','name','send','map','VoicePrefix','fieldName','key','model','query','keys','filters','intersection','fields','attributes','nolimit','limit','order','where','pick','merge','type','VIRTUAL','filter','options','include','findAll','rows','show','params','rawAttributes','length','includeAll','catch','find','describe','create','sequelize','body','VoiceExtension','VoiceExtensionId','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','autoAssociation','context','from-sip','exten','app','system'];(function(_0x233597,_0x233553){var _0x342b61=function(_0x4485ac){while(--_0x4485ac){_0x233597['push'](_0x233597['shift']());}};_0x342b61(++_0x233553);}(_0x4ded,0x116));var _0xd4de=function(_0x12406a,_0x289e6c){_0x12406a=_0x12406a-0x0;var _0x585b76=_0x4ded[_0x12406a];return _0x585b76;};'use strict';var pdf=require(_0xd4de('0x0'));var emlformat=require(_0xd4de('0x1'));var rimraf=require(_0xd4de('0x2'));var zipdir=require(_0xd4de('0x3'));var jsonpatch=require(_0xd4de('0x4'));var rp=require(_0xd4de('0x5'));var moment=require(_0xd4de('0x6'));var BPromise=require(_0xd4de('0x7'));var Mustache=require(_0xd4de('0x8'));var util=require(_0xd4de('0x9'));var path=require(_0xd4de('0xa'));var sox=require(_0xd4de('0xb'));var csv=require('to-csv');var ejs=require(_0xd4de('0xc'));var fs=require('fs');var _=require(_0xd4de('0xd'));var squel=require(_0xd4de('0xe'));var crypto=require(_0xd4de('0xf'));var jsforce=require(_0xd4de('0x10'));var deskjs=require(_0xd4de('0x11'));var toCsv=require('to-csv');var querystring=require(_0xd4de('0x12'));var Papa=require('papaparse');var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require(_0xd4de('0x13'));var as=require(_0xd4de('0x14'));var hardwareService=require('../../config/license/hardware');var logger=require('../../config/logger')('api');var utils=require(_0xd4de('0x15'));var config=require('../../config/environment');var licenseUtil=require(_0xd4de('0x16'));var db=require(_0xd4de('0x17'))['db'];config[_0xd4de('0x18')]=_[_0xd4de('0x19')](config[_0xd4de('0x18')],{'host':_0xd4de('0x1a'),'port':0x18eb});var socket=require(_0xd4de('0x1b'))(new Redis(config[_0xd4de('0x18')]));require(_0xd4de('0x1c'))[_0xd4de('0x1d')](socket);function respondWithStatusCode(_0x691ba9,_0xd0d906){_0xd0d906=_0xd0d906||0xcc;return function(_0x164ca0){if(_0x164ca0){return _0x691ba9[_0xd4de('0x1e')](_0xd0d906);}return _0x691ba9[_0xd4de('0x1f')](_0xd0d906)[_0xd4de('0x20')]();};}function respondWithResult(_0x325fba,_0x4b0a95){_0x4b0a95=_0x4b0a95||0xc8;return function(_0x5d0aeb){if(_0x5d0aeb){return _0x325fba[_0xd4de('0x1f')](_0x4b0a95)[_0xd4de('0x21')](_0x5d0aeb);}};}function respondWithFilteredResult(_0x17b377,_0x428aa2){return function(_0x5b1d1c){if(_0x5b1d1c){var _0x4d0df6=_0x5b1d1c[_0xd4de('0x22')],_0x1e91d5=_0x428aa2['offset'],_0x54b757=_0x428aa2[_0xd4de('0x23')]+_0x428aa2['limit'],_0xeaaefa;if(_0x54b757>=_0x4d0df6){_0x54b757=_0x4d0df6;_0xeaaefa=0xc8;}else{_0xeaaefa=0xce;}_0x17b377[_0xd4de('0x1f')](_0xeaaefa);return _0x17b377[_0xd4de('0x24')](_0xd4de('0x25'),_0x1e91d5+'-'+_0x54b757+'/'+_0x4d0df6)[_0xd4de('0x21')](_0x5b1d1c);}return null;};}function patchUpdates(_0x5368f5){return function(_0x318658){try{jsonpatch[_0xd4de('0x26')](_0x318658,_0x5368f5,!![]);}catch(_0x360e3d){return BPromise[_0xd4de('0x27')](_0x360e3d);}return _0x318658[_0xd4de('0x28')]();};}function saveUpdates(_0x2d092a,_0x1561fd){return function(_0x23754d){if(_0x23754d){return _0x23754d[_0xd4de('0x29')](_0x2d092a)[_0xd4de('0x2a')](function(_0x534b37){return _0x534b37;});}return null;};}function removeEntity(_0xad333f,_0x88a0b9){return function(_0x221f26){if(_0x221f26){return _0x221f26[_0xd4de('0x2b')]()[_0xd4de('0x2a')](function(){var _0x984904=_0x221f26[_0xd4de('0x2c')]({'plain':!![]});var _0x36308c=_0xd4de('0x2d');return db[_0xd4de('0x2e')][_0xd4de('0x2b')]({'where':{'type':_0x36308c,'resourceId':_0x984904['id']}})[_0xd4de('0x2a')](function(){return _0x221f26;});})['then'](function(){_0xad333f[_0xd4de('0x1f')](0xcc)[_0xd4de('0x20')]();});}};}function handleEntityNotFound(_0x5005b0,_0x1d7d37){return function(_0x59b3c5){if(!_0x59b3c5){_0x5005b0[_0xd4de('0x1e')](0x194);}return _0x59b3c5;};}function handleError(_0x32e407,_0x15d2b7){_0x15d2b7=_0x15d2b7||0x1f4;return function(_0x4fa53a){logger[_0xd4de('0x2f')](_0x4fa53a[_0xd4de('0x30')]);if(_0x4fa53a[_0xd4de('0x31')]){delete _0x4fa53a['name'];}_0x32e407[_0xd4de('0x1f')](_0x15d2b7)[_0xd4de('0x32')](_0x4fa53a);};}exports['index']=function(_0x5103b5,_0x5706fe){var _0x3f6491={},_0x496795={},_0x1dc67b={'count':0x0,'rows':[]};var _0x1429ba=_[_0xd4de('0x33')](db[_0xd4de('0x34')]['rawAttributes'],function(_0x3fe6c8){return{'name':_0x3fe6c8[_0xd4de('0x35')],'type':_0x3fe6c8['type'][_0xd4de('0x36')]};});_0x496795[_0xd4de('0x37')]=_['map'](_0x1429ba,'name');_0x496795[_0xd4de('0x38')]=_[_0xd4de('0x39')](_0x5103b5[_0xd4de('0x38')]);_0x496795[_0xd4de('0x3a')]=_['intersection'](_0x496795[_0xd4de('0x37')],_0x496795[_0xd4de('0x38')]);_0x3f6491['attributes']=_[_0xd4de('0x3b')](_0x496795[_0xd4de('0x37')],qs[_0xd4de('0x3c')](_0x5103b5[_0xd4de('0x38')][_0xd4de('0x3c')]));_0x3f6491[_0xd4de('0x3d')]=_0x3f6491['attributes']['length']?_0x3f6491[_0xd4de('0x3d')]:_0x496795[_0xd4de('0x37')];if(!_0x5103b5[_0xd4de('0x38')]['hasOwnProperty'](_0xd4de('0x3e'))){_0x3f6491[_0xd4de('0x3f')]=qs['limit'](_0x5103b5[_0xd4de('0x38')][_0xd4de('0x3f')]);_0x3f6491[_0xd4de('0x23')]=qs[_0xd4de('0x23')](_0x5103b5['query']['offset']);}_0x3f6491[_0xd4de('0x40')]=qs['sort'](_0x5103b5[_0xd4de('0x38')]['sort']);_0x3f6491[_0xd4de('0x41')]=qs[_0xd4de('0x3a')](_[_0xd4de('0x42')](_0x5103b5[_0xd4de('0x38')],_0x496795['filters']),_0x1429ba);if(_0x5103b5[_0xd4de('0x38')]['filter']){_0x3f6491[_0xd4de('0x41')]=_[_0xd4de('0x43')](_0x3f6491[_0xd4de('0x41')],{'$or':_[_0xd4de('0x33')](_0x1429ba,function(_0x349c5f){if(_0x349c5f[_0xd4de('0x44')]!==_0xd4de('0x45')){var _0x4ba399={};_0x4ba399[_0x349c5f[_0xd4de('0x31')]]={'$like':'%'+_0x5103b5[_0xd4de('0x38')][_0xd4de('0x46')]+'%'};return _0x4ba399;}})});}_0x3f6491=_[_0xd4de('0x43')]({},_0x3f6491,_0x5103b5[_0xd4de('0x47')]);var _0x567294={'where':_0x3f6491[_0xd4de('0x41')]};return db[_0xd4de('0x34')][_0xd4de('0x22')](_0x567294)['then'](function(_0x3eaa14){_0x1dc67b[_0xd4de('0x22')]=_0x3eaa14;if(_0x5103b5[_0xd4de('0x38')]['includeAll']){_0x3f6491[_0xd4de('0x48')]=[{'all':!![]}];}return db[_0xd4de('0x34')][_0xd4de('0x49')](_0x3f6491);})[_0xd4de('0x2a')](function(_0x3267bd){_0x1dc67b[_0xd4de('0x4a')]=_0x3267bd;return _0x1dc67b;})[_0xd4de('0x2a')](respondWithFilteredResult(_0x5706fe,_0x3f6491))['catch'](handleError(_0x5706fe,null));};exports[_0xd4de('0x4b')]=function(_0x164bde,_0x58082a){var _0x4d251e={'raw':![],'where':{'id':_0x164bde[_0xd4de('0x4c')]['id']}},_0x307edd={};_0x307edd[_0xd4de('0x37')]=_['keys'](db['VoicePrefix'][_0xd4de('0x4d')]);_0x307edd[_0xd4de('0x38')]=_['keys'](_0x164bde[_0xd4de('0x38')]);_0x307edd[_0xd4de('0x3a')]=_[_0xd4de('0x3b')](_0x307edd[_0xd4de('0x37')],_0x307edd['query']);_0x4d251e[_0xd4de('0x3d')]=_[_0xd4de('0x3b')](_0x307edd[_0xd4de('0x37')],qs[_0xd4de('0x3c')](_0x164bde[_0xd4de('0x38')][_0xd4de('0x3c')]));_0x4d251e['attributes']=_0x4d251e[_0xd4de('0x3d')][_0xd4de('0x4e')]?_0x4d251e[_0xd4de('0x3d')]:_0x307edd[_0xd4de('0x37')];if(_0x164bde[_0xd4de('0x38')][_0xd4de('0x4f')]){_0x4d251e[_0xd4de('0x48')]=[{'all':!![]}];}_0x4d251e=_[_0xd4de('0x43')]({},_0x4d251e,_0x164bde[_0xd4de('0x47')]);return db[_0xd4de('0x34')]['find'](_0x4d251e)[_0xd4de('0x2a')](handleEntityNotFound(_0x58082a,null))[_0xd4de('0x2a')](respondWithResult(_0x58082a,null))[_0xd4de('0x50')](handleError(_0x58082a,null));};exports['destroy']=function(_0x13a900,_0x199204){return db[_0xd4de('0x34')][_0xd4de('0x51')]({'where':{'id':_0x13a900[_0xd4de('0x4c')]['id']}})[_0xd4de('0x2a')](handleEntityNotFound(_0x199204,null))[_0xd4de('0x2a')](removeEntity(_0x199204,null))[_0xd4de('0x50')](handleError(_0x199204,null));};exports[_0xd4de('0x52')]=function(_0x138b04,_0x55f5bc){return db[_0xd4de('0x34')][_0xd4de('0x52')]()[_0xd4de('0x2a')](respondWithResult(_0x55f5bc,null))[_0xd4de('0x50')](handleError(_0x55f5bc,null));};exports[_0xd4de('0x53')]=function(_0x584548,_0x5a4602){var _0x2b88bb;return db[_0xd4de('0x54')]['transaction'](function(_0x48cb7d){return db[_0xd4de('0x34')][_0xd4de('0x53')](_0x584548[_0xd4de('0x55')],{'transaction':_0x48cb7d})[_0xd4de('0x2a')](function(_0x34d772){_0x2b88bb=_0x34d772[_0xd4de('0x2c')]({'plain':!![]});return db[_0xd4de('0x56')][_0xd4de('0x51')]({'where':{'id':_0x2b88bb[_0xd4de('0x57')]},'raw':!![]})[_0xd4de('0x2a')](function(_0x3be8c2){return createVoicePrefixExtensions(_0x2b88bb,_0x3be8c2,_0x48cb7d);});});})[_0xd4de('0x2a')](function(){var _0x56c13e=_0x584548[_0xd4de('0x58')][_0xd4de('0x2c')]({'plain':!![]});if(!_0x56c13e)throw new Error(_0xd4de('0x59'));if(_0x56c13e[_0xd4de('0x5a')]===_0xd4de('0x58')){var _0x176025=_0x2b88bb;return db['UserProfileSection'][_0xd4de('0x51')]({'where':{'name':'VoicePrefixes','userProfileId':_0x56c13e['userProfileId']},'raw':!![]})[_0xd4de('0x2a')](function(_0xd79781){if(_0xd79781&&_0xd79781[_0xd4de('0x5b')]===0x0){return db[_0xd4de('0x2e')]['create']({'name':_0x176025[_0xd4de('0x31')],'resourceId':_0x176025['id'],'type':_0xd79781[_0xd4de('0x31')],'sectionId':_0xd79781['id']},{})[_0xd4de('0x2a')](function(){return _0x2b88bb;});}else{return _0x2b88bb;}})[_0xd4de('0x50')](function(_0x23e438){logger['error']('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x23e438);throw _0x23e438;});}return _0x2b88bb;})['then'](respondWithResult(_0x5a4602,null))[_0xd4de('0x50')](handleError(_0x5a4602,null));};function Extension(_0x1c8ec2,_0x33933f,_0x3c5f7a,_0x5be7d2){this[_0xd4de('0x5c')]=_0xd4de('0x5d');this[_0xd4de('0x5e')]=_0x1c8ec2;this[_0xd4de('0x5f')]=_0x3c5f7a;this['type']=_0xd4de('0x60');this[_0xd4de('0x61')]=_0xd4de('0x62');this[_0xd4de('0x63')]=_0x33933f;this['appdata']=_0x5be7d2;}function createVoicePrefixExtensions(_0x4fd7c2,_0x5aeab7,_0x42e40b){return new BPromise(function(_0x3f69af,_0x3dcb59){var _0x4b7b84=new Extension(formatPrefixName(_0x4fd7c2[_0xd4de('0x64')]),0x1,_0xd4de('0x65'),_0xd4de('0x66'));_0x4b7b84['VoicePrefixId']=_0x4fd7c2['id'];return db[_0xd4de('0x56')]['create'](_0x4b7b84,{'transaction':_0x42e40b})[_0xd4de('0x2a')](function(_0x9b4fc){var _0x3e15ce=_0x9b4fc[_0xd4de('0x2c')]({'plain':!![]});var _0x9b082d=_[_0xd4de('0x33')](addVoicePrefixExtensions(_0x4fd7c2,_0x5aeab7),function(_0x1bd30f){_0x1bd30f[_0xd4de('0x57')]=_0x3e15ce['id'];_0x1bd30f['VoicePrefixId']=_0x4fd7c2['id'];return _0x1bd30f;});return db[_0xd4de('0x56')]['bulkCreate'](_0x9b082d,{'transaction':_0x42e40b})[_0xd4de('0x2a')](function(_0x3d0294){if(!_0x3d0294){return _0x3dcb59('Extensions\x20creation\x20failed');}else{return _0x3f69af(_0x3d0294);}})[_0xd4de('0x50')](function(_0xb366b0){return _0x3dcb59(_0xb366b0);});});;});};function addVoicePrefixExtensions(_0x21f7f7,_0x4652b9){var _0x26a803=[];var _0x2cd98f=formatPrefixName(_0x21f7f7[_0xd4de('0x64')]);_0x26a803[_0xd4de('0x67')](new Extension(_0x2cd98f,0x2,_0xd4de('0x68'),_0xd4de('0x69')+_0x21f7f7[_0xd4de('0x31')]));if(_0x21f7f7[_0xd4de('0x6a')]){_0x26a803[_0xd4de('0x67')](new Extension(_0x2cd98f,0x3,'Set',_0xd4de('0x6b')+_0x21f7f7[_0xd4de('0x6a')]));}else{_0x26a803[_0xd4de('0x67')](new Extension(_0x2cd98f,0x3,_0xd4de('0x65'),_0xd4de('0x6c')));}_0x26a803[_0xd4de('0x67')](new Extension(_0x2cd98f,0x4,_0xd4de('0x6d'),_0x4652b9[_0xd4de('0x5c')]+','+'${EXTEN:'+(0x8+_0x21f7f7[_0xd4de('0x31')]['length'])+'}'+','+0x1));return _0x26a803;}function formatPrefixName(_0x59b936){var _0x5ad8a2='_';for(var _0x384f8d=0x0;_0x384f8d<_0x59b936[_0xd4de('0x4e')];_0x384f8d++){if(_0x59b936['charAt'](_0x384f8d)=='-'){_0x5ad8a2+=_0x59b936['charAt'](_0x384f8d);}else{_0x5ad8a2+='['+_0x59b936['charAt'](_0x384f8d)+']';}}_0x5ad8a2+='.';return _0x5ad8a2;}exports['update']=function(_0x4666b1,_0x502b2e,_0xa0ff83){var _0x5ddba5=_0x4666b1[_0xd4de('0x55')];_0x5ddba5[_0xd4de('0x64')]='system-'+_0x5ddba5['name']+'-';return db['sequelize']['transaction'](function(_0x3b3a1d){return db[_0xd4de('0x34')][_0xd4de('0x29')](_0x5ddba5,{'where':{'id':_0x5ddba5['id']},'transaction':_0x3b3a1d})[_0xd4de('0x2a')](function(){return db[_0xd4de('0x56')][_0xd4de('0x2b')]({'where':{'VoicePrefixId':_0x5ddba5['id']},'transaction':_0x3b3a1d})['then'](function(){return db['VoiceExtension']['find']({'where':{'id':_0x5ddba5[_0xd4de('0x57')]},'raw':!![]})[_0xd4de('0x2a')](function(_0x4c2343){return createVoicePrefixExtensions(_0x5ddba5,_0x4c2343,_0x3b3a1d);});});});})[_0xd4de('0x2a')](function(){return db['VoicePrefix'][_0xd4de('0x6e')](_0x5ddba5['id']);})['then'](respondWithResult(_0x502b2e,null))[_0xd4de('0x50')](handleError(_0x502b2e,null));};exports[_0xd4de('0x6f')]=function(_0x573cb3,_0x2d1b39,_0x5a4882){return db[_0xd4de('0x34')][_0xd4de('0x51')]({'where':{'id':_0x573cb3[_0xd4de('0x4c')]['id']}})[_0xd4de('0x2a')](handleEntityNotFound(_0x2d1b39,null))['then'](function(_0x247647){if(_0x247647){return _0x247647[_0xd4de('0x6f')](_0x573cb3[_0xd4de('0x55')][_0xd4de('0x70')],_[_0xd4de('0x71')](_0x573cb3[_0xd4de('0x55')],[_0xd4de('0x70'),'id'])||{})[_0xd4de('0x72')](function(_0x907138){for(var _0x227c9a=0x0;_0x227c9a<_0x573cb3[_0xd4de('0x55')][_0xd4de('0x70')][_0xd4de('0x4e')];_0x227c9a+=0x1){socket['emit'](_0xd4de('0x73'),{'UserId':_0x573cb3['body']['ids'][_0x227c9a],'VoicePrefixId':_0x573cb3[_0xd4de('0x4c')]['id']});}return _0x907138;});}})[_0xd4de('0x2a')](respondWithResult(_0x2d1b39,null))['catch'](handleError(_0x2d1b39,null));};exports[_0xd4de('0x74')]=function(_0x249012,_0x3457bb,_0x286126){return db['VoicePrefix'][_0xd4de('0x51')]({'where':{'id':_0x249012[_0xd4de('0x4c')]['id']}})[_0xd4de('0x2a')](handleEntityNotFound(_0x3457bb,null))[_0xd4de('0x2a')](function(_0x3b8879){if(_0x3b8879){return _0x3b8879['removeAgents'](_0x249012['query']['ids'])['then'](function(){if(_[_0xd4de('0x75')](_0x249012['query'][_0xd4de('0x70')])){for(var _0x51d520=0x0;_0x51d520<_0x249012[_0xd4de('0x38')][_0xd4de('0x70')][_0xd4de('0x4e')];_0x51d520+=0x1){socket[_0xd4de('0x76')](_0xd4de('0x77'),{'UserId':Number(_0x249012[_0xd4de('0x38')][_0xd4de('0x70')][_0x51d520]),'VoicePrefixId':Number(_0x249012[_0xd4de('0x4c')]['id'])});}}else{socket['emit'](_0xd4de('0x77'),{'UserId':Number(_0x249012[_0xd4de('0x38')][_0xd4de('0x70')]),'VoicePrefixId':Number(_0x249012[_0xd4de('0x4c')]['id'])});}});}})['then'](respondWithStatusCode(_0x3457bb,null))[_0xd4de('0x50')](handleError(_0x3457bb,null));};exports[_0xd4de('0x78')]=function(_0x4a5593,_0x291a44,_0x229bb9){var _0x38d5bc={};var _0x2b7a9f={};var _0x1a0ac5;var _0x2ff9f5;return db[_0xd4de('0x34')][_0xd4de('0x79')]({'where':{'id':_0x4a5593[_0xd4de('0x4c')]['id']}})[_0xd4de('0x2a')](handleEntityNotFound(_0x291a44,null))[_0xd4de('0x2a')](function(_0x57d117){if(_0x57d117){_0x1a0ac5=_0x57d117;_0x2b7a9f[_0xd4de('0x37')]=_['keys'](db[_0xd4de('0x7a')][_0xd4de('0x4d')]);_0x2b7a9f[_0xd4de('0x38')]=_['keys'](_0x4a5593[_0xd4de('0x38')]);_0x2b7a9f[_0xd4de('0x3a')]=_['intersection'](_0x2b7a9f[_0xd4de('0x37')],_0x2b7a9f[_0xd4de('0x38')]);_0x38d5bc[_0xd4de('0x3d')]=_[_0xd4de('0x3b')](_0x2b7a9f[_0xd4de('0x37')],qs[_0xd4de('0x3c')](_0x4a5593['query'][_0xd4de('0x3c')]));_0x38d5bc[_0xd4de('0x3d')]=_0x38d5bc['attributes'][_0xd4de('0x4e')]?_0x38d5bc[_0xd4de('0x3d')]:_0x2b7a9f[_0xd4de('0x37')];_0x38d5bc[_0xd4de('0x40')]=qs['sort'](_0x4a5593['query'][_0xd4de('0x7b')]);_0x38d5bc[_0xd4de('0x41')]=qs[_0xd4de('0x3a')](_[_0xd4de('0x42')](_0x4a5593['query'],_0x2b7a9f[_0xd4de('0x3a')]));if(_0x4a5593[_0xd4de('0x38')][_0xd4de('0x46')]){_0x38d5bc[_0xd4de('0x41')]=_['merge'](_0x38d5bc['where'],{'$or':_[_0xd4de('0x33')](_0x38d5bc['attributes'],function(_0x1ac87e){var _0x3f19d9={};_0x3f19d9[_0x1ac87e]={'$like':'%'+_0x4a5593[_0xd4de('0x38')][_0xd4de('0x46')]+'%'};return _0x3f19d9;})});}_0x38d5bc=_['merge']({},_0x38d5bc,_0x4a5593['options']);return _0x1a0ac5[_0xd4de('0x78')](_0x38d5bc);}})[_0xd4de('0x2a')](function(_0x5d860d){if(_0x5d860d){_0x2ff9f5=_0x5d860d['length'];if(!_0x4a5593[_0xd4de('0x38')][_0xd4de('0x7c')](_0xd4de('0x3e'))){_0x38d5bc['limit']=qs[_0xd4de('0x3f')](_0x4a5593[_0xd4de('0x38')]['limit']);_0x38d5bc[_0xd4de('0x23')]=qs['offset'](_0x4a5593[_0xd4de('0x38')][_0xd4de('0x23')]);}return _0x1a0ac5['getAgents'](_0x38d5bc);}})[_0xd4de('0x2a')](function(_0x31ec86){if(_0x31ec86){return _0x31ec86?{'count':_0x2ff9f5,'rows':_0x31ec86}:null;}})[_0xd4de('0x2a')](respondWithResult(_0x291a44,null))[_0xd4de('0x50')](handleError(_0x291a44,null));};