29ac01ffee0cae65cb6111a58d164b5540b88002
[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 _0xc06b=['NoOp','VoicePrefixId','VoiceExtension','bulkCreate','Extensions\x20creation\x20failed','push','callerIdAll','PREFIX-CALLERIDALL=','No\x20callerid\x20available','goto','charAt','system-','addAgents','body','ids','omit','spread','emit','userVoicePrefix:save','removeAgents','isArray','userVoicePrefix:remove','getAgents','User','order','zip-dir','request-promise','moment','bluebird','mustache','util','sox','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','redis','defaults','socket.io-emitter','./voicePrefix.socket','register','sendStatus','end','status','json','offset','limit','set','Content-Range','apply','update','then','get','VoicePrefixes','UserProfileResource','destroy','error','stack','name','send','map','VoicePrefix','fieldName','type','key','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','sort','pick','filter','where','merge','VIRTUAL','count','includeAll','include','rows','show','params','options','find','catch','describe','sequelize','transaction','create','VoiceExtensionId','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','userProfileId','autoAssociation','context','from-sip','exten','app','system','description','Voice\x20Prefix\x20Extension','priority','appdata','prefix'];(function(_0x1fa380,_0xd0917f){var _0x219838=function(_0x4e7e4e){while(--_0x4e7e4e){_0x1fa380['push'](_0x1fa380['shift']());}};_0x219838(++_0xd0917f);}(_0xc06b,0x18d));var _0xbc06=function(_0x3ccea2,_0x624323){_0x3ccea2=_0x3ccea2-0x0;var _0xeb988=_0xc06b[_0x3ccea2];return _0xeb988;};'use strict';var pdf=require('html-pdf');var emlformat=require('eml-format');var rimraf=require('rimraf');var zipdir=require(_0xbc06('0x0'));var jsonpatch=require('fast-json-patch');var rp=require(_0xbc06('0x1'));var moment=require(_0xbc06('0x2'));var BPromise=require(_0xbc06('0x3'));var Mustache=require(_0xbc06('0x4'));var util=require(_0xbc06('0x5'));var path=require('path');var sox=require(_0xbc06('0x6'));var csv=require(_0xbc06('0x7'));var ejs=require(_0xbc06('0x8'));var fs=require('fs');var _=require(_0xbc06('0x9'));var squel=require(_0xbc06('0xa'));var crypto=require(_0xbc06('0xb'));var jsforce=require(_0xbc06('0xc'));var deskjs=require(_0xbc06('0xd'));var toCsv=require(_0xbc06('0x7'));var querystring=require(_0xbc06('0xe'));var Papa=require(_0xbc06('0xf'));var Redis=require(_0xbc06('0x10'));var authService=require(_0xbc06('0x11'));var qs=require(_0xbc06('0x12'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require(_0xbc06('0x13'))(_0xbc06('0x14'));var utils=require(_0xbc06('0x15'));var config=require(_0xbc06('0x16'));var db=require(_0xbc06('0x17'))['db'];config[_0xbc06('0x18')]=_[_0xbc06('0x19')](config[_0xbc06('0x18')],{'host':'localhost','port':0x18eb});var socket=require(_0xbc06('0x1a'))(new Redis(config[_0xbc06('0x18')]));require(_0xbc06('0x1b'))[_0xbc06('0x1c')](socket);function respondWithStatusCode(_0x2a5748,_0x4fdf0e){_0x4fdf0e=_0x4fdf0e||0xcc;return function(_0x27a0b9){if(_0x27a0b9){return _0x2a5748[_0xbc06('0x1d')](_0x4fdf0e);}return _0x2a5748['status'](_0x4fdf0e)[_0xbc06('0x1e')]();};}function respondWithResult(_0x10451c,_0x30feef){_0x30feef=_0x30feef||0xc8;return function(_0x2c6840){if(_0x2c6840){return _0x10451c[_0xbc06('0x1f')](_0x30feef)[_0xbc06('0x20')](_0x2c6840);}};}function respondWithFilteredResult(_0x34a8a6,_0x20e46c){return function(_0x3933e7){if(_0x3933e7){var _0x4f7cc4=_0x3933e7['count'],_0x2c8d1e=_0x20e46c['offset'],_0x578367=_0x20e46c[_0xbc06('0x21')]+_0x20e46c[_0xbc06('0x22')],_0x3bf645;if(_0x578367>=_0x4f7cc4){_0x578367=_0x4f7cc4;_0x3bf645=0xc8;}else{_0x3bf645=0xce;}_0x34a8a6['status'](_0x3bf645);return _0x34a8a6[_0xbc06('0x23')](_0xbc06('0x24'),_0x2c8d1e+'-'+_0x578367+'/'+_0x4f7cc4)[_0xbc06('0x20')](_0x3933e7);}return null;};}function patchUpdates(_0x4d79f7){return function(_0xfe7fe8){try{jsonpatch[_0xbc06('0x25')](_0xfe7fe8,_0x4d79f7,!![]);}catch(_0x5da25a){return BPromise['reject'](_0x5da25a);}return _0xfe7fe8['save']();};}function saveUpdates(_0x3a9ead,_0x300f6e){return function(_0x97ce96){if(_0x97ce96){return _0x97ce96[_0xbc06('0x26')](_0x3a9ead)[_0xbc06('0x27')](function(_0x24e4e1){return _0x24e4e1;});}return null;};}function removeEntity(_0x574eeb,_0x14495){return function(_0xfd6dd1){if(_0xfd6dd1){return _0xfd6dd1['destroy']()[_0xbc06('0x27')](function(){var _0x274d5f=_0xfd6dd1[_0xbc06('0x28')]({'plain':!![]});var _0x3b167b=_0xbc06('0x29');return db[_0xbc06('0x2a')][_0xbc06('0x2b')]({'where':{'type':_0x3b167b,'resourceId':_0x274d5f['id']}})[_0xbc06('0x27')](function(){return _0xfd6dd1;});})[_0xbc06('0x27')](function(){_0x574eeb[_0xbc06('0x1f')](0xcc)[_0xbc06('0x1e')]();});}};}function handleEntityNotFound(_0xe4a62a,_0x6fa194){return function(_0x2780b4){if(!_0x2780b4){_0xe4a62a['sendStatus'](0x194);}return _0x2780b4;};}function handleError(_0x72f390,_0x363b8d){_0x363b8d=_0x363b8d||0x1f4;return function(_0x203f2f){logger[_0xbc06('0x2c')](_0x203f2f[_0xbc06('0x2d')]);if(_0x203f2f[_0xbc06('0x2e')]){delete _0x203f2f[_0xbc06('0x2e')];}_0x72f390[_0xbc06('0x1f')](_0x363b8d)[_0xbc06('0x2f')](_0x203f2f);};}exports['index']=function(_0x996a5c,_0x3b2c36){var _0x22a742={},_0x17b6e1={},_0x2bea15={'count':0x0,'rows':[]};var _0x1ee57e=_[_0xbc06('0x30')](db[_0xbc06('0x31')]['rawAttributes'],function(_0x4654d1){return{'name':_0x4654d1[_0xbc06('0x32')],'type':_0x4654d1[_0xbc06('0x33')][_0xbc06('0x34')]};});_0x17b6e1[_0xbc06('0x35')]=_[_0xbc06('0x30')](_0x1ee57e,_0xbc06('0x2e'));_0x17b6e1[_0xbc06('0x36')]=_[_0xbc06('0x37')](_0x996a5c[_0xbc06('0x36')]);_0x17b6e1[_0xbc06('0x38')]=_[_0xbc06('0x39')](_0x17b6e1[_0xbc06('0x35')],_0x17b6e1[_0xbc06('0x36')]);_0x22a742[_0xbc06('0x3a')]=_[_0xbc06('0x39')](_0x17b6e1['model'],qs[_0xbc06('0x3b')](_0x996a5c['query']['fields']));_0x22a742[_0xbc06('0x3a')]=_0x22a742['attributes'][_0xbc06('0x3c')]?_0x22a742[_0xbc06('0x3a')]:_0x17b6e1[_0xbc06('0x35')];if(!_0x996a5c[_0xbc06('0x36')][_0xbc06('0x3d')](_0xbc06('0x3e'))){_0x22a742[_0xbc06('0x22')]=qs[_0xbc06('0x22')](_0x996a5c[_0xbc06('0x36')][_0xbc06('0x22')]);_0x22a742[_0xbc06('0x21')]=qs['offset'](_0x996a5c['query'][_0xbc06('0x21')]);}_0x22a742['order']=qs[_0xbc06('0x3f')](_0x996a5c[_0xbc06('0x36')][_0xbc06('0x3f')]);_0x22a742['where']=qs['filters'](_[_0xbc06('0x40')](_0x996a5c[_0xbc06('0x36')],_0x17b6e1[_0xbc06('0x38')]),_0x1ee57e);if(_0x996a5c[_0xbc06('0x36')][_0xbc06('0x41')]){_0x22a742[_0xbc06('0x42')]=_[_0xbc06('0x43')](_0x22a742[_0xbc06('0x42')],{'$or':_[_0xbc06('0x30')](_0x1ee57e,function(_0x277bf5){if(_0x277bf5[_0xbc06('0x33')]!==_0xbc06('0x44')){var _0x5e45d3={};_0x5e45d3[_0x277bf5[_0xbc06('0x2e')]]={'$like':'%'+_0x996a5c[_0xbc06('0x36')][_0xbc06('0x41')]+'%'};return _0x5e45d3;}})});}_0x22a742=_[_0xbc06('0x43')]({},_0x22a742,_0x996a5c['options']);var _0x3f7c6a={'where':_0x22a742[_0xbc06('0x42')]};return db[_0xbc06('0x31')][_0xbc06('0x45')](_0x3f7c6a)[_0xbc06('0x27')](function(_0x25a9c0){_0x2bea15[_0xbc06('0x45')]=_0x25a9c0;if(_0x996a5c[_0xbc06('0x36')][_0xbc06('0x46')]){_0x22a742[_0xbc06('0x47')]=[{'all':!![]}];}return db[_0xbc06('0x31')]['findAll'](_0x22a742);})['then'](function(_0x51fc68){_0x2bea15[_0xbc06('0x48')]=_0x51fc68;return _0x2bea15;})[_0xbc06('0x27')](respondWithFilteredResult(_0x3b2c36,_0x22a742))['catch'](handleError(_0x3b2c36,null));};exports[_0xbc06('0x49')]=function(_0x59eac8,_0x1e39e8){var _0x90cd09={'raw':![],'where':{'id':_0x59eac8[_0xbc06('0x4a')]['id']}},_0x38151c={};_0x38151c[_0xbc06('0x35')]=_[_0xbc06('0x37')](db[_0xbc06('0x31')]['rawAttributes']);_0x38151c[_0xbc06('0x36')]=_[_0xbc06('0x37')](_0x59eac8[_0xbc06('0x36')]);_0x38151c[_0xbc06('0x38')]=_['intersection'](_0x38151c['model'],_0x38151c[_0xbc06('0x36')]);_0x90cd09[_0xbc06('0x3a')]=_['intersection'](_0x38151c[_0xbc06('0x35')],qs[_0xbc06('0x3b')](_0x59eac8['query'][_0xbc06('0x3b')]));_0x90cd09[_0xbc06('0x3a')]=_0x90cd09['attributes'][_0xbc06('0x3c')]?_0x90cd09['attributes']:_0x38151c['model'];if(_0x59eac8[_0xbc06('0x36')]['includeAll']){_0x90cd09['include']=[{'all':!![]}];}_0x90cd09=_['merge']({},_0x90cd09,_0x59eac8[_0xbc06('0x4b')]);return db[_0xbc06('0x31')][_0xbc06('0x4c')](_0x90cd09)[_0xbc06('0x27')](handleEntityNotFound(_0x1e39e8,null))[_0xbc06('0x27')](respondWithResult(_0x1e39e8,null))[_0xbc06('0x4d')](handleError(_0x1e39e8,null));};exports[_0xbc06('0x2b')]=function(_0x690e56,_0x120586){return db[_0xbc06('0x31')][_0xbc06('0x4c')]({'where':{'id':_0x690e56[_0xbc06('0x4a')]['id']}})[_0xbc06('0x27')](handleEntityNotFound(_0x120586,null))['then'](removeEntity(_0x120586,null))[_0xbc06('0x4d')](handleError(_0x120586,null));};exports[_0xbc06('0x4e')]=function(_0x26761a,_0x273431){return db[_0xbc06('0x31')]['describe']()[_0xbc06('0x27')](respondWithResult(_0x273431,null))[_0xbc06('0x4d')](handleError(_0x273431,null));};exports['create']=function(_0xcd6c30,_0x1cd55a){var _0x25c6c3;return db[_0xbc06('0x4f')][_0xbc06('0x50')](function(_0x3ca252){return db['VoicePrefix'][_0xbc06('0x51')](_0xcd6c30['body'],{'transaction':_0x3ca252})['then'](function(_0x30635e){_0x25c6c3=_0x30635e[_0xbc06('0x28')]({'plain':!![]});return db['VoiceExtension'][_0xbc06('0x4c')]({'where':{'id':_0x25c6c3[_0xbc06('0x52')]},'raw':!![]})['then'](function(_0xb05c9a){return createVoicePrefixExtensions(_0x25c6c3,_0xb05c9a,_0x3ca252);});});})['then'](function(){var _0xc8ba6f=_0xcd6c30[_0xbc06('0x53')][_0xbc06('0x28')]({'plain':!![]});if(!_0xc8ba6f)throw new Error(_0xbc06('0x54'));if(_0xc8ba6f[_0xbc06('0x55')]===_0xbc06('0x53')){var _0x502d12=_0x25c6c3;return db[_0xbc06('0x56')][_0xbc06('0x4c')]({'where':{'name':_0xbc06('0x29'),'userProfileId':_0xc8ba6f[_0xbc06('0x57')]},'raw':!![]})[_0xbc06('0x27')](function(_0x42c96d){if(_0x42c96d&&_0x42c96d[_0xbc06('0x58')]===0x0){return db['UserProfileResource']['create']({'name':_0x502d12[_0xbc06('0x2e')],'resourceId':_0x502d12['id'],'type':_0x42c96d['name'],'sectionId':_0x42c96d['id']},{})[_0xbc06('0x27')](function(){return _0x25c6c3;});}else{return _0x25c6c3;}})[_0xbc06('0x4d')](function(_0x5ce1d4){logger['error']('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x5ce1d4);throw _0x5ce1d4;});}return _0x25c6c3;})[_0xbc06('0x27')](respondWithResult(_0x1cd55a,null))[_0xbc06('0x4d')](handleError(_0x1cd55a,null));};function Extension(_0x2360e4,_0x27b91c,_0x438d05,_0x3c440a){this[_0xbc06('0x59')]=_0xbc06('0x5a');this[_0xbc06('0x5b')]=_0x2360e4;this[_0xbc06('0x5c')]=_0x438d05;this[_0xbc06('0x33')]=_0xbc06('0x5d');this[_0xbc06('0x5e')]=_0xbc06('0x5f');this[_0xbc06('0x60')]=_0x27b91c;this[_0xbc06('0x61')]=_0x3c440a;}function createVoicePrefixExtensions(_0x344ff7,_0x26f8c5,_0x2e378e){return new BPromise(function(_0x30280d,_0x29239b){var _0x3f4e6d=new Extension(formatPrefixName(_0x344ff7[_0xbc06('0x62')]),0x1,_0xbc06('0x63'),'Voice\x20Prefix');_0x3f4e6d[_0xbc06('0x64')]=_0x344ff7['id'];return db[_0xbc06('0x65')]['create'](_0x3f4e6d,{'transaction':_0x2e378e})[_0xbc06('0x27')](function(_0x5a42d8){var _0x235479=_0x5a42d8[_0xbc06('0x28')]({'plain':!![]});var _0x38c620=_['map'](addVoicePrefixExtensions(_0x344ff7,_0x26f8c5),function(_0x5ae753){_0x5ae753[_0xbc06('0x52')]=_0x235479['id'];_0x5ae753[_0xbc06('0x64')]=_0x344ff7['id'];return _0x5ae753;});return db[_0xbc06('0x65')][_0xbc06('0x66')](_0x38c620,{'transaction':_0x2e378e})[_0xbc06('0x27')](function(_0x242966){if(!_0x242966){return _0x29239b(_0xbc06('0x67'));}else{return _0x30280d(_0x242966);}})[_0xbc06('0x4d')](function(_0x30325c){return _0x29239b(_0x30325c);});});;});};function addVoicePrefixExtensions(_0x949f06,_0x5cd9d4){var _0x5cab8c=[];var _0x555977=formatPrefixName(_0x949f06[_0xbc06('0x62')]);_0x5cab8c[_0xbc06('0x68')](new Extension(_0x555977,0x2,'Set','CDR(prefix)='+_0x949f06[_0xbc06('0x2e')]));if(_0x949f06[_0xbc06('0x69')]){_0x5cab8c[_0xbc06('0x68')](new Extension(_0x555977,0x3,'Set',_0xbc06('0x6a')+_0x949f06['callerIdAll']));}else{_0x5cab8c[_0xbc06('0x68')](new Extension(_0x555977,0x3,_0xbc06('0x63'),_0xbc06('0x6b')));}_0x5cab8c[_0xbc06('0x68')](new Extension(_0x555977,0x4,_0xbc06('0x6c'),_0x5cd9d4[_0xbc06('0x59')]+','+'${EXTEN:'+(0x8+_0x949f06[_0xbc06('0x2e')][_0xbc06('0x3c')])+'}'+','+0x1));return _0x5cab8c;}function formatPrefixName(_0x387848){var _0xec34f3='_';for(var _0x5175e0=0x0;_0x5175e0<_0x387848[_0xbc06('0x3c')];_0x5175e0++){if(_0x387848[_0xbc06('0x6d')](_0x5175e0)=='-'){_0xec34f3+=_0x387848[_0xbc06('0x6d')](_0x5175e0);}else{_0xec34f3+='['+_0x387848[_0xbc06('0x6d')](_0x5175e0)+']';}}_0xec34f3+='.';return _0xec34f3;}exports[_0xbc06('0x26')]=function(_0xf447f3,_0x124a88,_0xb2bc0a){var _0x2c99e1=_0xf447f3['body'];_0x2c99e1[_0xbc06('0x62')]=_0xbc06('0x6e')+_0x2c99e1[_0xbc06('0x2e')]+'-';return db[_0xbc06('0x4f')]['transaction'](function(_0x556a6c){return db[_0xbc06('0x31')][_0xbc06('0x26')](_0x2c99e1,{'where':{'id':_0x2c99e1['id']},'transaction':_0x556a6c})[_0xbc06('0x27')](function(){return db[_0xbc06('0x65')][_0xbc06('0x2b')]({'where':{'VoicePrefixId':_0x2c99e1['id']},'transaction':_0x556a6c})['then'](function(){return db['VoiceExtension'][_0xbc06('0x4c')]({'where':{'id':_0x2c99e1[_0xbc06('0x52')]},'raw':!![]})['then'](function(_0x19bd0e){return createVoicePrefixExtensions(_0x2c99e1,_0x19bd0e,_0x556a6c);});});});})['then'](function(){return db[_0xbc06('0x31')]['findById'](_0x2c99e1['id']);})[_0xbc06('0x27')](respondWithResult(_0x124a88,null))[_0xbc06('0x4d')](handleError(_0x124a88,null));};exports[_0xbc06('0x6f')]=function(_0x2df05a,_0x424191,_0x164f12){return db['VoicePrefix']['find']({'where':{'id':_0x2df05a[_0xbc06('0x4a')]['id']}})['then'](handleEntityNotFound(_0x424191,null))[_0xbc06('0x27')](function(_0x5b8b1d){if(_0x5b8b1d){return _0x5b8b1d['addAgents'](_0x2df05a[_0xbc06('0x70')][_0xbc06('0x71')],_[_0xbc06('0x72')](_0x2df05a[_0xbc06('0x70')],['ids','id'])||{})[_0xbc06('0x73')](function(_0x1976fb){for(var _0x5f3204=0x0;_0x5f3204<_0x2df05a[_0xbc06('0x70')][_0xbc06('0x71')][_0xbc06('0x3c')];_0x5f3204+=0x1){socket[_0xbc06('0x74')](_0xbc06('0x75'),{'UserId':_0x2df05a[_0xbc06('0x70')]['ids'][_0x5f3204],'VoicePrefixId':_0x2df05a[_0xbc06('0x4a')]['id']});}return _0x1976fb;});}})[_0xbc06('0x27')](respondWithResult(_0x424191,null))[_0xbc06('0x4d')](handleError(_0x424191,null));};exports[_0xbc06('0x76')]=function(_0x434dad,_0x3e9199,_0xce4f7f){return db[_0xbc06('0x31')][_0xbc06('0x4c')]({'where':{'id':_0x434dad[_0xbc06('0x4a')]['id']}})[_0xbc06('0x27')](handleEntityNotFound(_0x3e9199,null))['then'](function(_0x365665){if(_0x365665){return _0x365665[_0xbc06('0x76')](_0x434dad[_0xbc06('0x36')]['ids'])['then'](function(){if(_[_0xbc06('0x77')](_0x434dad[_0xbc06('0x36')][_0xbc06('0x71')])){for(var _0x375227=0x0;_0x375227<_0x434dad['query']['ids'][_0xbc06('0x3c')];_0x375227+=0x1){socket[_0xbc06('0x74')](_0xbc06('0x78'),{'UserId':Number(_0x434dad['query']['ids'][_0x375227]),'VoicePrefixId':Number(_0x434dad[_0xbc06('0x4a')]['id'])});}}else{socket[_0xbc06('0x74')](_0xbc06('0x78'),{'UserId':Number(_0x434dad['query'][_0xbc06('0x71')]),'VoicePrefixId':Number(_0x434dad[_0xbc06('0x4a')]['id'])});}});}})[_0xbc06('0x27')](respondWithStatusCode(_0x3e9199,null))[_0xbc06('0x4d')](handleError(_0x3e9199,null));};exports[_0xbc06('0x79')]=function(_0x10c1a7,_0x401115,_0x530480){var _0x3bb083={};var _0x5deef4={};var _0x4ac7a3;var _0xb30295;return db[_0xbc06('0x31')]['findOne']({'where':{'id':_0x10c1a7[_0xbc06('0x4a')]['id']}})[_0xbc06('0x27')](handleEntityNotFound(_0x401115,null))['then'](function(_0x4cf496){if(_0x4cf496){_0x4ac7a3=_0x4cf496;_0x5deef4['model']=_[_0xbc06('0x37')](db[_0xbc06('0x7a')]['rawAttributes']);_0x5deef4[_0xbc06('0x36')]=_[_0xbc06('0x37')](_0x10c1a7[_0xbc06('0x36')]);_0x5deef4[_0xbc06('0x38')]=_[_0xbc06('0x39')](_0x5deef4[_0xbc06('0x35')],_0x5deef4[_0xbc06('0x36')]);_0x3bb083[_0xbc06('0x3a')]=_['intersection'](_0x5deef4[_0xbc06('0x35')],qs[_0xbc06('0x3b')](_0x10c1a7['query'][_0xbc06('0x3b')]));_0x3bb083[_0xbc06('0x3a')]=_0x3bb083[_0xbc06('0x3a')][_0xbc06('0x3c')]?_0x3bb083[_0xbc06('0x3a')]:_0x5deef4['model'];_0x3bb083[_0xbc06('0x7b')]=qs[_0xbc06('0x3f')](_0x10c1a7[_0xbc06('0x36')][_0xbc06('0x3f')]);_0x3bb083[_0xbc06('0x42')]=qs['filters'](_[_0xbc06('0x40')](_0x10c1a7[_0xbc06('0x36')],_0x5deef4['filters']));if(_0x10c1a7[_0xbc06('0x36')][_0xbc06('0x41')]){_0x3bb083[_0xbc06('0x42')]=_[_0xbc06('0x43')](_0x3bb083[_0xbc06('0x42')],{'$or':_[_0xbc06('0x30')](_0x3bb083[_0xbc06('0x3a')],function(_0x50cd18){var _0x5d846d={};_0x5d846d[_0x50cd18]={'$like':'%'+_0x10c1a7['query'][_0xbc06('0x41')]+'%'};return _0x5d846d;})});}_0x3bb083=_[_0xbc06('0x43')]({},_0x3bb083,_0x10c1a7[_0xbc06('0x4b')]);return _0x4ac7a3[_0xbc06('0x79')](_0x3bb083);}})[_0xbc06('0x27')](function(_0x4b783e){if(_0x4b783e){_0xb30295=_0x4b783e[_0xbc06('0x3c')];if(!_0x10c1a7[_0xbc06('0x36')][_0xbc06('0x3d')]('nolimit')){_0x3bb083[_0xbc06('0x22')]=qs[_0xbc06('0x22')](_0x10c1a7['query'][_0xbc06('0x22')]);_0x3bb083['offset']=qs[_0xbc06('0x21')](_0x10c1a7[_0xbc06('0x36')]['offset']);}return _0x4ac7a3[_0xbc06('0x79')](_0x3bb083);}})[_0xbc06('0x27')](function(_0x51a36f){if(_0x51a36f){return _0x51a36f?{'count':_0xb30295,'rows':_0x51a36f}:null;}})[_0xbc06('0x27')](respondWithResult(_0x401115,null))[_0xbc06('0x4d')](handleError(_0x401115,null));};