Built motion from commit 67e5df37.|2.0.66
[motion2.git] / server / api / mailQueue / mailQueue.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 _0x9957=['merge','filter','map','options','includeAll','findAll','rows','catch','create','body','find','params','describe','getMembers','findOne','get','UserMailQueue','nolimit','MailQueueId','User','findAndCountAll','UserId','agent','mailPause','updatedAt','format','%s/%s','SIP','getTeams','Team','ids','Agents','addAgents','penalty','addTeams','removeTeams','spread','userMailQueue:save','removeAgents','isArray','emit','userMailQueue:remove','pick','getAgents','fast-json-patch','request-promise','moment','bluebird','util','path','sox','to-csv','lodash','squel','crypto','jsforce','desk.js','papaparse','../../components/parsers/qs','api','../../config/utils','../../config/environment','../../mysqldb','socket.io-emitter','localhost','./mailQueue.socket','sendStatus','status','end','count','offset','limit','set','Content-Range','json','apply','save','update','destroy','then','error','stack','name','send','index','keys','MailQueue','rawAttributes','query','dateStart','filters','intersection','model','attributes','fields','length','hasOwnProperty','order','sort','where','dateEnd','add','day'];(function(_0xfc3198,_0x1c1137){var _0xeeb310=function(_0x4e974c){while(--_0x4e974c){_0xfc3198['push'](_0xfc3198['shift']());}};_0xeeb310(++_0x1c1137);}(_0x9957,0x93));var _0x7995=function(_0x19e35c,_0x29cd1e){_0x19e35c=_0x19e35c-0x0;var _0x3e1fe8=_0x9957[_0x19e35c];return _0x3e1fe8;};'use strict';var jsonpatch=require(_0x7995('0x0'));var rp=require(_0x7995('0x1'));var moment=require(_0x7995('0x2'));var BPromise=require(_0x7995('0x3'));var Mustache=require('mustache');var util=require(_0x7995('0x4'));var path=require(_0x7995('0x5'));var sox=require(_0x7995('0x6'));var csv=require(_0x7995('0x7'));var ejs=require('ejs');var fs=require('fs');var _=require(_0x7995('0x8'));var squel=require(_0x7995('0x9'));var crypto=require(_0x7995('0xa'));var jsforce=require(_0x7995('0xb'));var deskjs=require(_0x7995('0xc'));var toCsv=require(_0x7995('0x7'));var querystring=require('querystring');var Papa=require(_0x7995('0xd'));var qs=require(_0x7995('0xe'));var logger=require('../../config/logger')(_0x7995('0xf'));var utils=require(_0x7995('0x10'));var config=require(_0x7995('0x11'));var db=require(_0x7995('0x12'))['db'];var socket=require(_0x7995('0x13'))({'host':_0x7995('0x14'),'port':0x18eb});require(_0x7995('0x15'))['register'](socket);function respondWithStatusCode(_0x245143,_0x41c652){_0x41c652=_0x41c652||0xcc;return function(_0x581f22){if(_0x581f22){return _0x245143[_0x7995('0x16')](_0x41c652);}return _0x245143[_0x7995('0x17')](_0x41c652)[_0x7995('0x18')]();};}function respondWithResult(_0x385f00,_0x281576){_0x281576=_0x281576||0xc8;return function(_0x23999f){if(_0x23999f){return _0x385f00[_0x7995('0x17')](_0x281576)['json'](_0x23999f);}};}function respondWithFilteredResult(_0x58f5ad,_0x2b4e94){return function(_0x2233dd){if(_0x2233dd){var _0x24b5bb=_0x2233dd[_0x7995('0x19')],_0x321ae8=_0x2b4e94[_0x7995('0x1a')],_0x3f1d3e=_0x2b4e94['offset']+_0x2b4e94[_0x7995('0x1b')],_0x1a5310;if(_0x3f1d3e>=_0x24b5bb){_0x3f1d3e=_0x24b5bb;_0x1a5310=0xc8;}else{_0x1a5310=0xce;}_0x58f5ad['status'](_0x1a5310);return _0x58f5ad[_0x7995('0x1c')](_0x7995('0x1d'),_0x321ae8+'-'+_0x3f1d3e+'/'+_0x24b5bb)[_0x7995('0x1e')](_0x2233dd);}return null;};}function patchUpdates(_0x291317){return function(_0x1e1415){try{jsonpatch[_0x7995('0x1f')](_0x1e1415,_0x291317,!![]);}catch(_0x4faa60){return BPromise['reject'](_0x4faa60);}return _0x1e1415[_0x7995('0x20')]();};}function saveUpdates(_0x5e6f90,_0x555f74){return function(_0x3ec178){if(_0x3ec178){return _0x3ec178[_0x7995('0x21')](_0x5e6f90)['then'](function(_0x3a9b54){return _0x3a9b54;});}return null;};}function removeEntity(_0x51f276,_0x4b1a8e){return function(_0x3e4c54){if(_0x3e4c54){return _0x3e4c54[_0x7995('0x22')]()[_0x7995('0x23')](function(){_0x51f276[_0x7995('0x17')](0xcc)[_0x7995('0x18')]();});}};}function handleEntityNotFound(_0x1c278a,_0x5d40ae){return function(_0x32a09a){if(!_0x32a09a){_0x1c278a[_0x7995('0x16')](0x194);}return _0x32a09a;};}function handleError(_0x204507,_0x285437){_0x285437=_0x285437||0x1f4;return function(_0x563799){logger[_0x7995('0x24')](_0x563799[_0x7995('0x25')]);if(_0x563799[_0x7995('0x26')]){delete _0x563799['name'];}_0x204507[_0x7995('0x17')](_0x285437)[_0x7995('0x27')](_0x563799);};}exports[_0x7995('0x28')]=function(_0x268ce7,_0x3a3fcf){var _0x2a307e={},_0x56691a={},_0x47625f={'count':0x0,'rows':[]};_0x56691a['model']=_[_0x7995('0x29')](db[_0x7995('0x2a')][_0x7995('0x2b')]);var _0x132a42={'dateStart':_0x268ce7[_0x7995('0x2c')]['dateStart'],'dateEnd':_0x268ce7[_0x7995('0x2c')]['dateEnd']};delete _0x268ce7[_0x7995('0x2c')][_0x7995('0x2d')];delete _0x268ce7[_0x7995('0x2c')]['dateEnd'];_0x56691a['query']=_['keys'](_0x268ce7[_0x7995('0x2c')]);_0x56691a[_0x7995('0x2e')]=_[_0x7995('0x2f')](_0x56691a[_0x7995('0x30')],_0x56691a[_0x7995('0x2c')]);_0x2a307e[_0x7995('0x31')]=_['intersection'](_0x56691a['model'],qs[_0x7995('0x32')](_0x268ce7['query'][_0x7995('0x32')]));_0x2a307e[_0x7995('0x31')]=_0x2a307e[_0x7995('0x31')][_0x7995('0x33')]?_0x2a307e[_0x7995('0x31')]:_0x56691a['model'];if(!_0x268ce7[_0x7995('0x2c')][_0x7995('0x34')]('nolimit')){_0x2a307e['limit']=qs['limit'](_0x268ce7[_0x7995('0x2c')][_0x7995('0x1b')]);_0x2a307e['offset']=qs[_0x7995('0x1a')](_0x268ce7['query'][_0x7995('0x1a')]);}_0x2a307e[_0x7995('0x35')]=qs[_0x7995('0x36')](_0x268ce7['query']['sort']);_0x2a307e[_0x7995('0x37')]=qs['filters'](_['pick'](_0x268ce7[_0x7995('0x2c')],_0x56691a[_0x7995('0x2e')]));if(_0x132a42['dateStart']){if(_0x132a42[_0x7995('0x38')]){_0x132a42[_0x7995('0x38')]=moment(_0x132a42[_0x7995('0x38')])[_0x7995('0x39')](0x1,_0x7995('0x3a'));}else{_0x132a42['dateEnd']=moment(_0x132a42[_0x7995('0x2d')])[_0x7995('0x39')](0x1,_0x7995('0x3a'));}_[_0x7995('0x3b')](_0x2a307e['where'],{'createdAt':{'$gte':_0x132a42[_0x7995('0x2d')],'$lte':_0x132a42[_0x7995('0x38')]}});}if(_0x268ce7[_0x7995('0x2c')][_0x7995('0x3c')]){_0x2a307e[_0x7995('0x37')]=_[_0x7995('0x3b')](_0x2a307e['where'],{'$or':_[_0x7995('0x3d')](_0x2a307e[_0x7995('0x31')],function(_0x8a1be0){var _0x2ea47f={};_0x2ea47f[_0x8a1be0]={'$like':'%'+_0x268ce7[_0x7995('0x2c')][_0x7995('0x3c')]+'%'};return _0x2ea47f;})});}_0x2a307e=_[_0x7995('0x3b')]({},_0x2a307e,_0x268ce7[_0x7995('0x3e')]);var _0x1234e1={'where':_0x2a307e[_0x7995('0x37')]};return db[_0x7995('0x2a')][_0x7995('0x19')](_0x1234e1)[_0x7995('0x23')](function(_0x53cda2){_0x47625f['count']=_0x53cda2;if(_0x268ce7[_0x7995('0x2c')][_0x7995('0x3f')]){_0x2a307e['include']=[{'all':!![]}];}return db['MailQueue'][_0x7995('0x40')](_0x2a307e);})['then'](function(_0x504a33){_0x47625f[_0x7995('0x41')]=_0x504a33;return _0x47625f;})[_0x7995('0x23')](respondWithFilteredResult(_0x3a3fcf,_0x2a307e))[_0x7995('0x42')](handleError(_0x3a3fcf,null));};exports['show']=function(_0x46ac4f,_0x5e85b9){var _0x3993b5={'raw':!![],'where':{'id':_0x46ac4f['params']['id']}},_0x5a8881={};_0x5a8881[_0x7995('0x30')]=_[_0x7995('0x29')](db[_0x7995('0x2a')][_0x7995('0x2b')]);_0x5a8881['query']=_[_0x7995('0x29')](_0x46ac4f[_0x7995('0x2c')]);_0x5a8881[_0x7995('0x2e')]=_[_0x7995('0x2f')](_0x5a8881['model'],_0x5a8881['query']);_0x3993b5[_0x7995('0x31')]=_['intersection'](_0x5a8881[_0x7995('0x30')],qs['fields'](_0x46ac4f[_0x7995('0x2c')]['fields']));_0x3993b5[_0x7995('0x31')]=_0x3993b5[_0x7995('0x31')]['length']?_0x3993b5[_0x7995('0x31')]:_0x5a8881[_0x7995('0x30')];if(_0x46ac4f[_0x7995('0x2c')][_0x7995('0x3f')]){_0x3993b5['include']=[{'all':!![]}];}_0x3993b5=_[_0x7995('0x3b')]({},_0x3993b5,_0x46ac4f[_0x7995('0x3e')]);return db[_0x7995('0x2a')]['find'](_0x3993b5)[_0x7995('0x23')](handleEntityNotFound(_0x5e85b9,null))[_0x7995('0x23')](respondWithResult(_0x5e85b9,null))[_0x7995('0x42')](handleError(_0x5e85b9,null));};exports[_0x7995('0x43')]=function(_0x255313,_0x51934b){return db[_0x7995('0x2a')][_0x7995('0x43')](_0x255313['body'],{})[_0x7995('0x23')](respondWithResult(_0x51934b,0xc9))['catch'](handleError(_0x51934b,null));};exports[_0x7995('0x21')]=function(_0x187735,_0x1afab4){if(_0x187735[_0x7995('0x44')]['id']){delete _0x187735[_0x7995('0x44')]['id'];}return db[_0x7995('0x2a')][_0x7995('0x45')]({'where':{'id':_0x187735['params']['id']}})[_0x7995('0x23')](handleEntityNotFound(_0x1afab4,null))[_0x7995('0x23')](saveUpdates(_0x187735[_0x7995('0x44')],null))['then'](respondWithResult(_0x1afab4,null))[_0x7995('0x42')](handleError(_0x1afab4,null));};exports[_0x7995('0x22')]=function(_0x12d4b8,_0x47d1d8){return db['MailQueue']['find']({'where':{'id':_0x12d4b8[_0x7995('0x46')]['id']}})[_0x7995('0x23')](handleEntityNotFound(_0x47d1d8,null))['then'](removeEntity(_0x47d1d8,null))[_0x7995('0x42')](handleError(_0x47d1d8,null));};exports[_0x7995('0x47')]=function(_0x31f27c,_0x1a9bd7){return db[_0x7995('0x2a')]['describe']()[_0x7995('0x23')](respondWithResult(_0x1a9bd7,null))['catch'](handleError(_0x1a9bd7,null));};exports[_0x7995('0x48')]=function(_0x33c801,_0x206d2a,_0x50c7b5){var _0x5e1f34={'raw':!![],'where':{}},_0x54e2b1={},_0x563f8e;return db[_0x7995('0x2a')][_0x7995('0x49')]({'where':{'id':_0x33c801[_0x7995('0x46')]['id']}})[_0x7995('0x23')](handleEntityNotFound(_0x206d2a,null))[_0x7995('0x23')](function(_0x357e60){if(_0x357e60){_0x563f8e=_0x357e60[_0x7995('0x4a')]({'plain':!![]});_0x54e2b1[_0x7995('0x30')]=_[_0x7995('0x29')](db[_0x7995('0x4b')][_0x7995('0x2b')]);_0x54e2b1[_0x7995('0x2c')]=_[_0x7995('0x29')](_0x33c801[_0x7995('0x2c')]);_0x54e2b1[_0x7995('0x2e')]=_[_0x7995('0x2f')](_0x54e2b1[_0x7995('0x30')],_0x54e2b1[_0x7995('0x2c')]);_0x5e1f34[_0x7995('0x31')]=_['intersection'](_0x54e2b1[_0x7995('0x30')],qs[_0x7995('0x32')](_0x33c801[_0x7995('0x2c')][_0x7995('0x32')]));_0x5e1f34['attributes']=_0x5e1f34['attributes'][_0x7995('0x33')]?_0x5e1f34[_0x7995('0x31')]:_0x54e2b1[_0x7995('0x30')];if(!_0x33c801[_0x7995('0x2c')]['hasOwnProperty'](_0x7995('0x4c'))){_0x5e1f34[_0x7995('0x1b')]=qs[_0x7995('0x1b')](_0x33c801[_0x7995('0x2c')]['limit']);_0x5e1f34['offset']=qs[_0x7995('0x1a')](_0x33c801[_0x7995('0x2c')][_0x7995('0x1a')]);}_0x5e1f34[_0x7995('0x35')]=qs[_0x7995('0x36')](_0x33c801[_0x7995('0x2c')][_0x7995('0x36')]);_0x5e1f34[_0x7995('0x37')]=qs[_0x7995('0x2e')](_['pick'](_0x33c801[_0x7995('0x2c')],_0x54e2b1[_0x7995('0x2e')]));_0x5e1f34[_0x7995('0x37')][_0x7995('0x4d')]=_0x357e60['id'];if(_0x33c801['query']['filter']){_0x5e1f34[_0x7995('0x37')]=_[_0x7995('0x3b')](_0x5e1f34['where'],{'$or':_[_0x7995('0x3d')](_0x5e1f34[_0x7995('0x31')],function(_0x2e3421){var _0x57727e={};_0x57727e[_0x2e3421]={'$like':'%'+_0x33c801[_0x7995('0x2c')]['filter']+'%'};return _0x57727e;})});}_0x5e1f34=_[_0x7995('0x3b')]({},_0x5e1f34,_0x33c801['options']);return db[_0x7995('0x4b')][_0x7995('0x40')](_0x5e1f34);}})[_0x7995('0x23')](function(_0x25b534){if(_0x25b534){return db[_0x7995('0x4e')][_0x7995('0x4f')]({'where':{'id':_[_0x7995('0x3d')](_0x25b534,_0x7995('0x50')),'role':_0x7995('0x51')},'attributes':['id',_0x7995('0x26'),_0x7995('0x52'),_0x7995('0x53'),'createdAt']});}})[_0x7995('0x23')](function(_0x23bbc1){if(_0x23bbc1){return{'count':_0x23bbc1[_0x7995('0x19')],'rows':_[_0x7995('0x3d')](_0x23bbc1[_0x7995('0x41')],function(_0x54a2e0){return{'membername':_0x54a2e0['name'],'UserId':_0x54a2e0['id'],'queue_name':_0x563f8e[_0x7995('0x26')],'MailQueueId':_0x563f8e['id'],'interface':util[_0x7995('0x54')](_0x7995('0x55'),_0x7995('0x56'),_0x54a2e0['name']),'penalty':0x0,'paused':_0x54a2e0[_0x7995('0x52')],'createdAt':_0x54a2e0['createdAt'],'updatedAt':_0x54a2e0['updatedAt']};})};}else{return{'count':0x0,'rows':[]};}})[_0x7995('0x23')](respondWithFilteredResult(_0x206d2a,_0x5e1f34))[_0x7995('0x42')](handleError(_0x206d2a,null));};exports[_0x7995('0x57')]=function(_0x44bf2b,_0x290eae,_0x25d9a4){var _0x32a52f={};var _0x13dc73={};var _0x3fde86;var _0x2466df;return db['MailQueue'][_0x7995('0x49')]({'where':{'id':_0x44bf2b[_0x7995('0x46')]['id']}})[_0x7995('0x23')](handleEntityNotFound(_0x290eae,null))['then'](function(_0x1fe1cb){if(_0x1fe1cb){_0x3fde86=_0x1fe1cb;_0x13dc73[_0x7995('0x30')]=_[_0x7995('0x29')](db[_0x7995('0x58')][_0x7995('0x2b')]);_0x13dc73[_0x7995('0x2c')]=_[_0x7995('0x29')](_0x44bf2b[_0x7995('0x2c')]);_0x13dc73[_0x7995('0x2e')]=_[_0x7995('0x2f')](_0x13dc73[_0x7995('0x30')],_0x13dc73['query']);_0x32a52f['attributes']=_[_0x7995('0x2f')](_0x13dc73[_0x7995('0x30')],qs[_0x7995('0x32')](_0x44bf2b[_0x7995('0x2c')]['fields']));_0x32a52f[_0x7995('0x31')]=_0x32a52f[_0x7995('0x31')]['length']?_0x32a52f['attributes']:_0x13dc73[_0x7995('0x30')];_0x32a52f[_0x7995('0x35')]=qs['sort'](_0x44bf2b[_0x7995('0x2c')]['sort']);_0x32a52f[_0x7995('0x37')]=qs[_0x7995('0x2e')](_['pick'](_0x44bf2b['query'],_0x13dc73[_0x7995('0x2e')]));if(_0x44bf2b['query'][_0x7995('0x3c')]){_0x32a52f[_0x7995('0x37')]=_[_0x7995('0x3b')](_0x32a52f[_0x7995('0x37')],{'$or':_[_0x7995('0x3d')](_0x32a52f[_0x7995('0x31')],function(_0x8af865){var _0x14cb17={};_0x14cb17[_0x8af865]={'$like':'%'+_0x44bf2b[_0x7995('0x2c')][_0x7995('0x3c')]+'%'};return _0x14cb17;})});}_0x32a52f=_[_0x7995('0x3b')]({},_0x32a52f,_0x44bf2b[_0x7995('0x3e')]);return _0x3fde86[_0x7995('0x57')](_0x32a52f);}})[_0x7995('0x23')](function(_0x36e3a7){if(_0x36e3a7){_0x2466df=_0x36e3a7[_0x7995('0x33')];if(!_0x44bf2b[_0x7995('0x2c')][_0x7995('0x34')](_0x7995('0x4c'))){_0x32a52f[_0x7995('0x1b')]=qs[_0x7995('0x1b')](_0x44bf2b[_0x7995('0x2c')][_0x7995('0x1b')]);_0x32a52f[_0x7995('0x1a')]=qs[_0x7995('0x1a')](_0x44bf2b[_0x7995('0x2c')][_0x7995('0x1a')]);}return _0x3fde86[_0x7995('0x57')](_0x32a52f);}})['then'](function(_0x3fdb4b){if(_0x3fdb4b){return _0x3fdb4b?{'count':_0x2466df,'rows':_0x3fdb4b}:null;}})[_0x7995('0x23')](respondWithResult(_0x290eae,null))['catch'](handleError(_0x290eae,null));};exports['addTeams']=function(_0x15e8d1,_0x3fe8fc,_0x2d45d5){var _0x38acda=[];var _0xe1ce4;return db[_0x7995('0x58')]['findAll']({'where':{'id':_0x15e8d1[_0x7995('0x44')][_0x7995('0x59')]},'attributes':['id'],'include':[{'model':db[_0x7995('0x4e')],'as':_0x7995('0x5a'),'attributes':['id'],'raw':!![]}]})[_0x7995('0x23')](function(_0x3f0bff){if(_0x3f0bff){for(var _0x151d99=0x0;_0x151d99<_0x3f0bff[_0x7995('0x33')];_0x151d99+=0x1){for(var _0x560095=0x0;_0x560095<_0x3f0bff[_0x151d99][_0x7995('0x5a')][_0x7995('0x33')];_0x560095+=0x1){_0x38acda=_['union'](_0x38acda,[_0x3f0bff[_0x151d99]['Agents'][_0x560095]['id']]);}}return _0x38acda;}})[_0x7995('0x23')](function(_0xf8c2ed){if(_0xf8c2ed){return db[_0x7995('0x2a')][_0x7995('0x45')]({'where':{'id':_0x15e8d1[_0x7995('0x46')]['id']}});}})['then'](function(_0x35f6cb){if(_0x35f6cb){_0xe1ce4=_0x35f6cb;return _0xe1ce4[_0x7995('0x5b')](_0x38acda,{'penalty':_0x15e8d1['body'][_0x7995('0x5c')]});}})[_0x7995('0x23')](function(_0x489bac){if(_0x489bac){return _0xe1ce4[_0x7995('0x5d')](_0x15e8d1['body'][_0x7995('0x59')]);}})[_0x7995('0x23')](handleEntityNotFound(_0x3fe8fc,null))[_0x7995('0x23')](respondWithStatusCode(_0x3fe8fc,null))[_0x7995('0x42')](handleError(_0x3fe8fc,null));};exports[_0x7995('0x5e')]=function(_0x5d16da,_0x1f0506,_0x345080){var _0x38b37f=[];var _0x5bc4fa;return db[_0x7995('0x58')][_0x7995('0x40')]({'where':{'id':_0x5d16da[_0x7995('0x2c')][_0x7995('0x59')]},'attributes':['id'],'include':[{'model':db['User'],'as':_0x7995('0x5a'),'attributes':['id'],'raw':!![]}]})[_0x7995('0x23')](function(_0x3a5f5e){if(_0x3a5f5e){for(var _0x4aafa3=0x0;_0x4aafa3<_0x3a5f5e['length'];_0x4aafa3+=0x1){for(var _0x3fc10=0x0;_0x3fc10<_0x3a5f5e[_0x4aafa3][_0x7995('0x5a')]['length'];_0x3fc10+=0x1){_0x38b37f=_['union'](_0x38b37f,[_0x3a5f5e[_0x4aafa3][_0x7995('0x5a')][_0x3fc10]['id']]);}}return _0x38b37f;}})[_0x7995('0x23')](function(_0xcdbd2a){if(_0xcdbd2a){return db[_0x7995('0x2a')][_0x7995('0x45')]({'where':{'id':_0x5d16da['params']['id']}});}})['then'](function(_0x393cb7){if(_0x393cb7){_0x5bc4fa=_0x393cb7;return _0x5bc4fa['removeAgents'](_0x38b37f);}})['then'](function(_0x208998){if(_0x5bc4fa){return _0x5bc4fa[_0x7995('0x5e')](_0x5d16da[_0x7995('0x2c')]['ids']);}})[_0x7995('0x23')](handleEntityNotFound(_0x1f0506,null))[_0x7995('0x23')](respondWithStatusCode(_0x1f0506,null))[_0x7995('0x42')](handleError(_0x1f0506,null));};exports[_0x7995('0x5b')]=function(_0x267a7f,_0x5799d1,_0x279037){return db[_0x7995('0x2a')][_0x7995('0x45')]({'where':{'id':_0x267a7f[_0x7995('0x46')]['id']}})['then'](handleEntityNotFound(_0x5799d1,null))[_0x7995('0x23')](function(_0x38064a){if(_0x38064a){return _0x38064a['addAgents'](_0x267a7f[_0x7995('0x44')][_0x7995('0x59')],_['omit'](_0x267a7f[_0x7995('0x44')],['ids','id'])||{})[_0x7995('0x5f')](function(_0x51e7d7){for(var _0x21f496=0x0;_0x21f496<_0x267a7f['body'][_0x7995('0x59')][_0x7995('0x33')];_0x21f496+=0x1){socket['emit'](_0x7995('0x60'),{'UserId':_0x267a7f['body']['ids'][_0x21f496],'MailQueueId':_0x267a7f[_0x7995('0x46')]['id']});}return _0x51e7d7;});}})[_0x7995('0x23')](respondWithResult(_0x5799d1,null))[_0x7995('0x42')](handleError(_0x5799d1,null));};exports[_0x7995('0x61')]=function(_0x4ea264,_0x1ea76d,_0x35044a){var _0x4bd29f;return db['MailQueue'][_0x7995('0x45')]({'where':{'id':_0x4ea264['params']['id']}})[_0x7995('0x23')](handleEntityNotFound(_0x1ea76d,null))[_0x7995('0x23')](function(_0xfb4479){if(_0xfb4479){return _0xfb4479['removeAgents'](_0x4ea264['query'][_0x7995('0x59')])['then'](function(_0x12e9d9){if(_[_0x7995('0x62')](_0x4ea264[_0x7995('0x2c')][_0x7995('0x59')])){for(var _0x4ff5e7=0x0;_0x4ff5e7<_0x4ea264['query']['ids'][_0x7995('0x33')];_0x4ff5e7+=0x1){socket[_0x7995('0x63')](_0x7995('0x64'),{'UserId':_0x4ea264[_0x7995('0x2c')][_0x7995('0x59')][_0x4ff5e7],'MailQueueId':_0x4ea264[_0x7995('0x46')]['id']});}}else{socket['emit']('userMailQueue:remove',{'UserId':_0x4ea264[_0x7995('0x2c')]['ids'],'MailQueueId':_0x4ea264['params']['id']});}});}})[_0x7995('0x23')](respondWithStatusCode(_0x1ea76d,null))['catch'](handleError(_0x1ea76d,null));};exports['getAgents']=function(_0x35c3f3,_0x3541d7,_0x3873f3){var _0x5cef2e={};var _0x21b2db={};var _0xf604d9;var _0x1c4d23;return db[_0x7995('0x2a')][_0x7995('0x49')]({'where':{'id':_0x35c3f3[_0x7995('0x46')]['id']}})[_0x7995('0x23')](handleEntityNotFound(_0x3541d7,null))[_0x7995('0x23')](function(_0x19d746){if(_0x19d746){_0xf604d9=_0x19d746;_0x21b2db['model']=_[_0x7995('0x29')](db[_0x7995('0x4e')][_0x7995('0x2b')]);_0x21b2db[_0x7995('0x2c')]=_[_0x7995('0x29')](_0x35c3f3['query']);_0x21b2db[_0x7995('0x2e')]=_[_0x7995('0x2f')](_0x21b2db[_0x7995('0x30')],_0x21b2db['query']);_0x5cef2e['attributes']=_['intersection'](_0x21b2db[_0x7995('0x30')],qs[_0x7995('0x32')](_0x35c3f3[_0x7995('0x2c')][_0x7995('0x32')]));_0x5cef2e[_0x7995('0x31')]=_0x5cef2e[_0x7995('0x31')]['length']?_0x5cef2e[_0x7995('0x31')]:_0x21b2db['model'];_0x5cef2e[_0x7995('0x35')]=qs[_0x7995('0x36')](_0x35c3f3[_0x7995('0x2c')][_0x7995('0x36')]);_0x5cef2e[_0x7995('0x37')]=qs[_0x7995('0x2e')](_[_0x7995('0x65')](_0x35c3f3[_0x7995('0x2c')],_0x21b2db[_0x7995('0x2e')]));if(_0x35c3f3[_0x7995('0x2c')][_0x7995('0x3c')]){_0x5cef2e['where']=_[_0x7995('0x3b')](_0x5cef2e['where'],{'$or':_[_0x7995('0x3d')](_0x5cef2e[_0x7995('0x31')],function(_0x592ae3){var _0x493e74={};_0x493e74[_0x592ae3]={'$like':'%'+_0x35c3f3[_0x7995('0x2c')][_0x7995('0x3c')]+'%'};return _0x493e74;})});}_0x5cef2e=_[_0x7995('0x3b')]({},_0x5cef2e,_0x35c3f3[_0x7995('0x3e')]);return _0xf604d9[_0x7995('0x66')](_0x5cef2e);}})[_0x7995('0x23')](function(_0x281477){if(_0x281477){_0x1c4d23=_0x281477[_0x7995('0x33')];if(!_0x35c3f3[_0x7995('0x2c')][_0x7995('0x34')](_0x7995('0x4c'))){_0x5cef2e[_0x7995('0x1b')]=qs['limit'](_0x35c3f3['query'][_0x7995('0x1b')]);_0x5cef2e[_0x7995('0x1a')]=qs[_0x7995('0x1a')](_0x35c3f3[_0x7995('0x2c')][_0x7995('0x1a')]);}return _0xf604d9['getAgents'](_0x5cef2e);}})[_0x7995('0x23')](function(_0x459777){if(_0x459777){return _0x459777?{'count':_0x1c4d23,'rows':_0x459777}:null;}})['then'](respondWithResult(_0x3541d7,null))[_0x7995('0x42')](handleError(_0x3541d7,null));};