a9a174c5292f5f58e8f8dad3fd3f468f0d0fe271
[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 _0x9a86=['request-promise','moment','bluebird','mustache','util','path','sox','to-csv','ejs','fs-extra','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../config/logger','api','../../config/utils','../../config/environment','redis','localhost','socket.io-emitter','./voicePrefix.socket','sendStatus','end','status','json','offset','limit','undefined','count','set','Content-Range','apply','update','then','destroy','get','VoicePrefixes','UserProfileResource','stack','name','send','index','VoicePrefix','rawAttributes','type','model','map','query','filters','intersection','fields','attributes','hasOwnProperty','nolimit','order','sort','pick','filter','merge','VIRTUAL','where','include','findAll','rows','params','keys','length','includeAll','options','find','catch','describe','create','sequelize','transaction','body','VoiceExtension','VoiceExtensionId','user','role','UserProfileSection','autoAssociation','error','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','context','from-sip','exten','app','description','Voice\x20Prefix\x20Extension','priority','appdata','prefix','NoOp','Voice\x20Prefix','VoicePrefixId','Extensions\x20creation\x20failed','Set','callerIdAll','push','PREFIX-CALLERIDALL=','No\x20callerid\x20available','goto','${EXTEN:','charAt','system-','findById','addAgents','ids','removeAgents','isArray','emit','userVoicePrefix:remove','User','getAgents','eml-format','rimraf','fast-json-patch'];(function(_0x4edf8e,_0x3ff59f){var _0x1c42f2=function(_0x12d7a7){while(--_0x12d7a7){_0x4edf8e['push'](_0x4edf8e['shift']());}};_0x1c42f2(++_0x3ff59f);}(_0x9a86,0x1ed));var _0x69a8=function(_0x1ae5ab,_0xc5d441){_0x1ae5ab=_0x1ae5ab-0x0;var _0x1ce001=_0x9a86[_0x1ae5ab];return _0x1ce001;};'use strict';var emlformat=require(_0x69a8('0x0'));var rimraf=require(_0x69a8('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0x69a8('0x2'));var rp=require(_0x69a8('0x3'));var moment=require(_0x69a8('0x4'));var BPromise=require(_0x69a8('0x5'));var Mustache=require(_0x69a8('0x6'));var util=require(_0x69a8('0x7'));var path=require(_0x69a8('0x8'));var sox=require(_0x69a8('0x9'));var csv=require(_0x69a8('0xa'));var ejs=require(_0x69a8('0xb'));var fs=require('fs');var fs_extra=require(_0x69a8('0xc'));var _=require(_0x69a8('0xd'));var squel=require(_0x69a8('0xe'));var crypto=require(_0x69a8('0xf'));var jsforce=require(_0x69a8('0x10'));var deskjs=require(_0x69a8('0x11'));var toCsv=require('to-csv');var querystring=require(_0x69a8('0x12'));var Papa=require(_0x69a8('0x13'));var Redis=require('ioredis');var authService=require(_0x69a8('0x14'));var qs=require(_0x69a8('0x15'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require(_0x69a8('0x16'))(_0x69a8('0x17'));var utils=require(_0x69a8('0x18'));var config=require(_0x69a8('0x19'));var licenseUtil=require('../../config/license/util');var db=require('../../mysqldb')['db'];config[_0x69a8('0x1a')]=_['defaults'](config[_0x69a8('0x1a')],{'host':_0x69a8('0x1b'),'port':0x18eb});var socket=require(_0x69a8('0x1c'))(new Redis(config[_0x69a8('0x1a')]));require(_0x69a8('0x1d'))['register'](socket);function respondWithStatusCode(_0x463937,_0x4fb021){_0x4fb021=_0x4fb021||0xcc;return function(_0x381a2a){if(_0x381a2a){return _0x463937[_0x69a8('0x1e')](_0x4fb021);}return _0x463937['status'](_0x4fb021)[_0x69a8('0x1f')]();};}function respondWithResult(_0x264347,_0x275a8f){_0x275a8f=_0x275a8f||0xc8;return function(_0x35906f){if(_0x35906f){return _0x264347[_0x69a8('0x20')](_0x275a8f)[_0x69a8('0x21')](_0x35906f);}};}function respondWithFilteredResult(_0x1c15a3,_0x39a7e3){return function(_0x3c6252){if(_0x3c6252){var _0x488163=typeof _0x39a7e3[_0x69a8('0x22')]==='undefined'&&typeof _0x39a7e3[_0x69a8('0x23')]===_0x69a8('0x24');var _0x237232=_0x3c6252['count'];var _0x15c709=_0x488163?0x0:_0x39a7e3['offset'];var _0x31be94=_0x488163?_0x3c6252[_0x69a8('0x25')]:_0x39a7e3[_0x69a8('0x22')]+_0x39a7e3[_0x69a8('0x23')];var _0x23df9e;if(_0x31be94>=_0x237232){_0x31be94=_0x237232;_0x23df9e=0xc8;}else{_0x23df9e=0xce;}_0x1c15a3[_0x69a8('0x20')](_0x23df9e);return _0x1c15a3[_0x69a8('0x26')](_0x69a8('0x27'),_0x15c709+'-'+_0x31be94+'/'+_0x237232)[_0x69a8('0x21')](_0x3c6252);}return null;};}function patchUpdates(_0x451f44){return function(_0x8f590b){try{jsonpatch[_0x69a8('0x28')](_0x8f590b,_0x451f44,!![]);}catch(_0x33e39c){return BPromise['reject'](_0x33e39c);}return _0x8f590b['save']();};}function saveUpdates(_0x2381bf,_0x55e45a){return function(_0xca3c4b){if(_0xca3c4b){return _0xca3c4b[_0x69a8('0x29')](_0x2381bf)[_0x69a8('0x2a')](function(_0x45a7c6){return _0x45a7c6;});}return null;};}function removeEntity(_0x352087,_0x1f1baa){return function(_0x21412d){if(_0x21412d){return _0x21412d[_0x69a8('0x2b')]()[_0x69a8('0x2a')](function(){var _0x1c9588=_0x21412d[_0x69a8('0x2c')]({'plain':!![]});var _0x21e789=_0x69a8('0x2d');return db[_0x69a8('0x2e')][_0x69a8('0x2b')]({'where':{'type':_0x21e789,'resourceId':_0x1c9588['id']}})[_0x69a8('0x2a')](function(){return _0x21412d;});})[_0x69a8('0x2a')](function(){_0x352087[_0x69a8('0x20')](0xcc)[_0x69a8('0x1f')]();});}};}function handleEntityNotFound(_0x18f29d,_0x2f8126){return function(_0x5a6673){if(!_0x5a6673){_0x18f29d[_0x69a8('0x1e')](0x194);}return _0x5a6673;};}function handleError(_0x18da90,_0x4f0293){_0x4f0293=_0x4f0293||0x1f4;return function(_0x2e7355){logger['error'](_0x2e7355[_0x69a8('0x2f')]);if(_0x2e7355[_0x69a8('0x30')]){delete _0x2e7355['name'];}_0x18da90['status'](_0x4f0293)[_0x69a8('0x31')](_0x2e7355);};}exports[_0x69a8('0x32')]=function(_0x4a57b1,_0x337a76){var _0x4fd0ee={},_0x3fc8a9={},_0x19a271={'count':0x0,'rows':[]};var _0x5b1cbc=_['map'](db[_0x69a8('0x33')][_0x69a8('0x34')],function(_0x1561e3){return{'name':_0x1561e3['fieldName'],'type':_0x1561e3[_0x69a8('0x35')]['key']};});_0x3fc8a9[_0x69a8('0x36')]=_[_0x69a8('0x37')](_0x5b1cbc,_0x69a8('0x30'));_0x3fc8a9[_0x69a8('0x38')]=_['keys'](_0x4a57b1[_0x69a8('0x38')]);_0x3fc8a9[_0x69a8('0x39')]=_[_0x69a8('0x3a')](_0x3fc8a9[_0x69a8('0x36')],_0x3fc8a9[_0x69a8('0x38')]);_0x4fd0ee['attributes']=_['intersection'](_0x3fc8a9[_0x69a8('0x36')],qs['fields'](_0x4a57b1['query'][_0x69a8('0x3b')]));_0x4fd0ee['attributes']=_0x4fd0ee[_0x69a8('0x3c')]['length']?_0x4fd0ee[_0x69a8('0x3c')]:_0x3fc8a9[_0x69a8('0x36')];if(!_0x4a57b1[_0x69a8('0x38')][_0x69a8('0x3d')](_0x69a8('0x3e'))){_0x4fd0ee[_0x69a8('0x23')]=qs['limit'](_0x4a57b1[_0x69a8('0x38')][_0x69a8('0x23')]);_0x4fd0ee[_0x69a8('0x22')]=qs[_0x69a8('0x22')](_0x4a57b1[_0x69a8('0x38')][_0x69a8('0x22')]);}_0x4fd0ee[_0x69a8('0x3f')]=qs[_0x69a8('0x40')](_0x4a57b1[_0x69a8('0x38')][_0x69a8('0x40')]);_0x4fd0ee['where']=qs[_0x69a8('0x39')](_[_0x69a8('0x41')](_0x4a57b1[_0x69a8('0x38')],_0x3fc8a9[_0x69a8('0x39')]),_0x5b1cbc);if(_0x4a57b1['query'][_0x69a8('0x42')]){_0x4fd0ee['where']=_[_0x69a8('0x43')](_0x4fd0ee['where'],{'$or':_[_0x69a8('0x37')](_0x5b1cbc,function(_0x464215){if(_0x464215[_0x69a8('0x35')]!==_0x69a8('0x44')){var _0x1c8881={};_0x1c8881[_0x464215[_0x69a8('0x30')]]={'$like':'%'+_0x4a57b1[_0x69a8('0x38')][_0x69a8('0x42')]+'%'};return _0x1c8881;}})});}_0x4fd0ee=_['merge']({},_0x4fd0ee,_0x4a57b1['options']);var _0x279dac={'where':_0x4fd0ee[_0x69a8('0x45')]};return db[_0x69a8('0x33')]['count'](_0x279dac)[_0x69a8('0x2a')](function(_0x3e0da3){_0x19a271['count']=_0x3e0da3;if(_0x4a57b1[_0x69a8('0x38')]['includeAll']){_0x4fd0ee[_0x69a8('0x46')]=[{'all':!![]}];}return db[_0x69a8('0x33')][_0x69a8('0x47')](_0x4fd0ee);})[_0x69a8('0x2a')](function(_0xd06eb){_0x19a271[_0x69a8('0x48')]=_0xd06eb;return _0x19a271;})['then'](respondWithFilteredResult(_0x337a76,_0x4fd0ee))['catch'](handleError(_0x337a76,null));};exports['show']=function(_0x518c9b,_0x16eba3){var _0x1b9b71={'raw':![],'where':{'id':_0x518c9b[_0x69a8('0x49')]['id']}},_0x403c40={};_0x403c40['model']=_[_0x69a8('0x4a')](db['VoicePrefix'][_0x69a8('0x34')]);_0x403c40[_0x69a8('0x38')]=_[_0x69a8('0x4a')](_0x518c9b[_0x69a8('0x38')]);_0x403c40[_0x69a8('0x39')]=_[_0x69a8('0x3a')](_0x403c40[_0x69a8('0x36')],_0x403c40[_0x69a8('0x38')]);_0x1b9b71[_0x69a8('0x3c')]=_[_0x69a8('0x3a')](_0x403c40[_0x69a8('0x36')],qs['fields'](_0x518c9b[_0x69a8('0x38')][_0x69a8('0x3b')]));_0x1b9b71[_0x69a8('0x3c')]=_0x1b9b71['attributes'][_0x69a8('0x4b')]?_0x1b9b71[_0x69a8('0x3c')]:_0x403c40['model'];if(_0x518c9b[_0x69a8('0x38')][_0x69a8('0x4c')]){_0x1b9b71[_0x69a8('0x46')]=[{'all':!![]}];}_0x1b9b71=_['merge']({},_0x1b9b71,_0x518c9b[_0x69a8('0x4d')]);return db[_0x69a8('0x33')][_0x69a8('0x4e')](_0x1b9b71)[_0x69a8('0x2a')](handleEntityNotFound(_0x16eba3,null))['then'](respondWithResult(_0x16eba3,null))['catch'](handleError(_0x16eba3,null));};exports[_0x69a8('0x2b')]=function(_0x54bc76,_0x250c29){return db['VoicePrefix']['find']({'where':{'id':_0x54bc76[_0x69a8('0x49')]['id']}})[_0x69a8('0x2a')](handleEntityNotFound(_0x250c29,null))[_0x69a8('0x2a')](removeEntity(_0x250c29,null))[_0x69a8('0x4f')](handleError(_0x250c29,null));};exports['describe']=function(_0xfed272,_0x368740){return db[_0x69a8('0x33')][_0x69a8('0x50')]()[_0x69a8('0x2a')](respondWithResult(_0x368740,null))['catch'](handleError(_0x368740,null));};exports[_0x69a8('0x51')]=function(_0x419822,_0x813e19){var _0x5aed1a;return db[_0x69a8('0x52')][_0x69a8('0x53')](function(_0x22a284){return db['VoicePrefix'][_0x69a8('0x51')](_0x419822[_0x69a8('0x54')],{'transaction':_0x22a284})[_0x69a8('0x2a')](function(_0xbd1d4b){_0x5aed1a=_0xbd1d4b['get']({'plain':!![]});return db[_0x69a8('0x55')][_0x69a8('0x4e')]({'where':{'id':_0x5aed1a[_0x69a8('0x56')]},'raw':!![]})[_0x69a8('0x2a')](function(_0x183d98){return createVoicePrefixExtensions(_0x5aed1a,_0x183d98,_0x22a284);});});})[_0x69a8('0x2a')](function(){var _0x44e4a9=_0x419822[_0x69a8('0x57')]['get']({'plain':!![]});if(!_0x44e4a9)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x44e4a9[_0x69a8('0x58')]===_0x69a8('0x57')){var _0x2fa1ee=_0x5aed1a;return db[_0x69a8('0x59')][_0x69a8('0x4e')]({'where':{'name':'VoicePrefixes','userProfileId':_0x44e4a9['userProfileId']},'raw':!![]})['then'](function(_0xce9ef0){if(_0xce9ef0&&_0xce9ef0[_0x69a8('0x5a')]===0x0){return db[_0x69a8('0x2e')][_0x69a8('0x51')]({'name':_0x2fa1ee[_0x69a8('0x30')],'resourceId':_0x2fa1ee['id'],'type':_0xce9ef0['name'],'sectionId':_0xce9ef0['id']},{})['then'](function(){return _0x5aed1a;});}else{return _0x5aed1a;}})[_0x69a8('0x4f')](function(_0x286eea){logger[_0x69a8('0x5b')](_0x69a8('0x5c'),_0x286eea);throw _0x286eea;});}return _0x5aed1a;})['then'](respondWithResult(_0x813e19,null))[_0x69a8('0x4f')](handleError(_0x813e19,null));};function Extension(_0x9c7438,_0x387703,_0x58477d,_0xd6763f){this[_0x69a8('0x5d')]=_0x69a8('0x5e');this[_0x69a8('0x5f')]=_0x9c7438;this[_0x69a8('0x60')]=_0x58477d;this[_0x69a8('0x35')]='system';this[_0x69a8('0x61')]=_0x69a8('0x62');this[_0x69a8('0x63')]=_0x387703;this[_0x69a8('0x64')]=_0xd6763f;}function createVoicePrefixExtensions(_0xcd7f1b,_0x161444,_0x1ca147){return new BPromise(function(_0x347106,_0x40580f){var _0x3c26af=new Extension(formatPrefixName(_0xcd7f1b[_0x69a8('0x65')]),0x1,_0x69a8('0x66'),_0x69a8('0x67'));_0x3c26af[_0x69a8('0x68')]=_0xcd7f1b['id'];return db[_0x69a8('0x55')][_0x69a8('0x51')](_0x3c26af,{'transaction':_0x1ca147})['then'](function(_0x4669e2){var _0x5787ea=_0x4669e2[_0x69a8('0x2c')]({'plain':!![]});var _0x3a0e9d=_[_0x69a8('0x37')](addVoicePrefixExtensions(_0xcd7f1b,_0x161444),function(_0x2ca479){_0x2ca479[_0x69a8('0x56')]=_0x5787ea['id'];_0x2ca479[_0x69a8('0x68')]=_0xcd7f1b['id'];return _0x2ca479;});return db['VoiceExtension']['bulkCreate'](_0x3a0e9d,{'transaction':_0x1ca147})['then'](function(_0x3cc494){if(!_0x3cc494){return _0x40580f(_0x69a8('0x69'));}else{return _0x347106(_0x3cc494);}})[_0x69a8('0x4f')](function(_0x732fd9){return _0x40580f(_0x732fd9);});});;});};function addVoicePrefixExtensions(_0x494ad6,_0x459433){var _0x35038d=[];var _0x2c210c=formatPrefixName(_0x494ad6['prefix']);_0x35038d['push'](new Extension(_0x2c210c,0x2,_0x69a8('0x6a'),'CDR(prefix)='+_0x494ad6['name']));if(_0x494ad6[_0x69a8('0x6b')]){_0x35038d[_0x69a8('0x6c')](new Extension(_0x2c210c,0x3,_0x69a8('0x6a'),_0x69a8('0x6d')+_0x494ad6[_0x69a8('0x6b')]));}else{_0x35038d['push'](new Extension(_0x2c210c,0x3,_0x69a8('0x66'),_0x69a8('0x6e')));}_0x35038d[_0x69a8('0x6c')](new Extension(_0x2c210c,0x4,_0x69a8('0x6f'),_0x459433['context']+','+_0x69a8('0x70')+(0x8+_0x494ad6[_0x69a8('0x30')]['length'])+'}'+','+0x1));return _0x35038d;}function formatPrefixName(_0x367ea1){var _0x4ca648='_';for(var _0x201bc6=0x0;_0x201bc6<_0x367ea1[_0x69a8('0x4b')];_0x201bc6++){if(_0x367ea1[_0x69a8('0x71')](_0x201bc6)=='-'){_0x4ca648+=_0x367ea1['charAt'](_0x201bc6);}else{_0x4ca648+='['+_0x367ea1[_0x69a8('0x71')](_0x201bc6)+']';}}_0x4ca648+='.';return _0x4ca648;}exports[_0x69a8('0x29')]=function(_0x44b7f3,_0x3db30e,_0x1fa5ce){var _0x4c0f64=_0x44b7f3[_0x69a8('0x54')];_0x4c0f64['prefix']=_0x69a8('0x72')+_0x4c0f64[_0x69a8('0x30')]+'-';return db['sequelize'][_0x69a8('0x53')](function(_0x237dab){return db['VoicePrefix'][_0x69a8('0x29')](_0x4c0f64,{'where':{'id':_0x4c0f64['id']},'transaction':_0x237dab})[_0x69a8('0x2a')](function(){return db[_0x69a8('0x55')][_0x69a8('0x2b')]({'where':{'VoicePrefixId':_0x4c0f64['id']},'transaction':_0x237dab})[_0x69a8('0x2a')](function(){return db['VoiceExtension'][_0x69a8('0x4e')]({'where':{'id':_0x4c0f64[_0x69a8('0x56')]},'raw':!![]})['then'](function(_0x8f3dfd){return createVoicePrefixExtensions(_0x4c0f64,_0x8f3dfd,_0x237dab);});});});})[_0x69a8('0x2a')](function(){return db[_0x69a8('0x33')][_0x69a8('0x73')](_0x4c0f64['id']);})['then'](respondWithResult(_0x3db30e,null))['catch'](handleError(_0x3db30e,null));};exports[_0x69a8('0x74')]=function(_0x2c8b1a,_0x562240,_0x4beceb){return db[_0x69a8('0x33')][_0x69a8('0x4e')]({'where':{'id':_0x2c8b1a['params']['id']}})['then'](handleEntityNotFound(_0x562240,null))[_0x69a8('0x2a')](function(_0x228757){if(_0x228757){return _0x228757[_0x69a8('0x74')](_0x2c8b1a[_0x69a8('0x54')][_0x69a8('0x75')],_['omit'](_0x2c8b1a[_0x69a8('0x54')],[_0x69a8('0x75'),'id'])||{})['spread'](function(_0xf31ca8){for(var _0x41d0c4=0x0;_0x41d0c4<_0x2c8b1a[_0x69a8('0x54')]['ids'][_0x69a8('0x4b')];_0x41d0c4+=0x1){socket['emit']('userVoicePrefix:save',{'UserId':Number(_0x2c8b1a[_0x69a8('0x54')][_0x69a8('0x75')][_0x41d0c4]),'VoicePrefixId':Number(_0x2c8b1a[_0x69a8('0x49')]['id'])});}return _0xf31ca8;});}})[_0x69a8('0x2a')](respondWithResult(_0x562240,null))[_0x69a8('0x4f')](handleError(_0x562240,null));};exports[_0x69a8('0x76')]=function(_0x185e11,_0x461ae8,_0x28f254){return db[_0x69a8('0x33')]['find']({'where':{'id':_0x185e11[_0x69a8('0x49')]['id']}})['then'](handleEntityNotFound(_0x461ae8,null))[_0x69a8('0x2a')](function(_0x40199f){if(_0x40199f){return _0x40199f[_0x69a8('0x76')](_0x185e11[_0x69a8('0x38')]['ids'])[_0x69a8('0x2a')](function(){if(_[_0x69a8('0x77')](_0x185e11[_0x69a8('0x38')][_0x69a8('0x75')])){for(var _0x1fdffe=0x0;_0x1fdffe<_0x185e11[_0x69a8('0x38')][_0x69a8('0x75')][_0x69a8('0x4b')];_0x1fdffe+=0x1){socket[_0x69a8('0x78')](_0x69a8('0x79'),{'UserId':Number(_0x185e11[_0x69a8('0x38')][_0x69a8('0x75')][_0x1fdffe]),'VoicePrefixId':Number(_0x185e11[_0x69a8('0x49')]['id'])});}}else{socket[_0x69a8('0x78')]('userVoicePrefix:remove',{'UserId':Number(_0x185e11[_0x69a8('0x38')][_0x69a8('0x75')]),'VoicePrefixId':Number(_0x185e11['params']['id'])});}});}})['then'](respondWithStatusCode(_0x461ae8,null))[_0x69a8('0x4f')](handleError(_0x461ae8,null));};exports['getAgents']=function(_0x470e4a,_0x259445,_0x31d9fa){var _0x4e7c66={};var _0x167106={};var _0x188e95;var _0x2115e6;return db[_0x69a8('0x33')]['findOne']({'where':{'id':_0x470e4a['params']['id']}})[_0x69a8('0x2a')](handleEntityNotFound(_0x259445,null))['then'](function(_0x936ff6){if(_0x936ff6){_0x188e95=_0x936ff6;_0x167106[_0x69a8('0x36')]=_['keys'](db[_0x69a8('0x7a')][_0x69a8('0x34')]);_0x167106[_0x69a8('0x38')]=_[_0x69a8('0x4a')](_0x470e4a[_0x69a8('0x38')]);_0x167106['filters']=_[_0x69a8('0x3a')](_0x167106[_0x69a8('0x36')],_0x167106[_0x69a8('0x38')]);_0x4e7c66['attributes']=_[_0x69a8('0x3a')](_0x167106[_0x69a8('0x36')],qs[_0x69a8('0x3b')](_0x470e4a[_0x69a8('0x38')][_0x69a8('0x3b')]));_0x4e7c66[_0x69a8('0x3c')]=_0x4e7c66['attributes'][_0x69a8('0x4b')]?_0x4e7c66[_0x69a8('0x3c')]:_0x167106[_0x69a8('0x36')];_0x4e7c66[_0x69a8('0x3f')]=qs['sort'](_0x470e4a['query'][_0x69a8('0x40')]);_0x4e7c66[_0x69a8('0x45')]=qs[_0x69a8('0x39')](_[_0x69a8('0x41')](_0x470e4a[_0x69a8('0x38')],_0x167106['filters']));if(_0x470e4a[_0x69a8('0x38')][_0x69a8('0x42')]){_0x4e7c66[_0x69a8('0x45')]=_[_0x69a8('0x43')](_0x4e7c66[_0x69a8('0x45')],{'$or':_['map'](_0x4e7c66[_0x69a8('0x3c')],function(_0x258d51){var _0x3c09c6={};_0x3c09c6[_0x258d51]={'$like':'%'+_0x470e4a[_0x69a8('0x38')]['filter']+'%'};return _0x3c09c6;})});}_0x4e7c66=_['merge']({},_0x4e7c66,_0x470e4a[_0x69a8('0x4d')]);return _0x188e95[_0x69a8('0x7b')](_0x4e7c66);}})['then'](function(_0x255af1){if(_0x255af1){_0x2115e6=_0x255af1['length'];if(!_0x470e4a[_0x69a8('0x38')][_0x69a8('0x3d')]('nolimit')){_0x4e7c66['limit']=qs[_0x69a8('0x23')](_0x470e4a[_0x69a8('0x38')][_0x69a8('0x23')]);_0x4e7c66[_0x69a8('0x22')]=qs[_0x69a8('0x22')](_0x470e4a[_0x69a8('0x38')][_0x69a8('0x22')]);}return _0x188e95[_0x69a8('0x7b')](_0x4e7c66);}})[_0x69a8('0x2a')](function(_0xfc314b){if(_0xfc314b){return _0xfc314b?{'count':_0x2115e6,'rows':_0xfc314b}:null;}})[_0x69a8('0x2a')](respondWithResult(_0x259445,null))[_0x69a8('0x4f')](handleError(_0x259445,null));};