Built motion from commit (unavailable).|2.4.8
[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 _0x8ef6=['Content-Range','apply','reject','save','then','destroy','get','UserProfileResource','error','stack','name','index','MailQueue','keys','query','filters','intersection','model','attributes','fields','length','hasOwnProperty','nolimit','order','sort','pick','filter','where','map','type','key','VIRTUAL','field','merge','options','count','include','findAll','rows','catch','show','params','find','create','body','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','MailQueues','UserProfileSection','userProfileId','update','describe','findOne','UserMailQueue','findAndCountAll','UserId','agent','mailPause','createdAt','%s/%s','updatedAt','getTeams','Team','rawAttributes','addTeams','teams','User','Agents','voicePause','interface','flatMap','transaction','findOrCreate','forEach','emit','removeTeams','ids','tq.TeamId','from','team_has_mail_queues','MailQueueId\x20=\x20?','clone','ut.UserId\x20=\x20?','push','sequelize','toString','SELECT','every','TeamId','includes','all','union','compact','value','isEmpty','removeAgents','omit','spread','userMailQueue:save','isArray','userMailQueue:remove','getAgents','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','mustache','util','path','sox','lodash','squel','crypto','desk.js','to-csv','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','redis','defaults','localhost','socket.io-emitter','register','sendStatus','status','end','json','offset','limit','set'];(function(_0x4ff09b,_0x53f67d){var _0x3f5c2e=function(_0x124592){while(--_0x124592){_0x4ff09b['push'](_0x4ff09b['shift']());}};_0x3f5c2e(++_0x53f67d);}(_0x8ef6,0xf2));var _0x68ef=function(_0x13a78e,_0x3be4cc){_0x13a78e=_0x13a78e-0x0;var _0x5952f3=_0x8ef6[_0x13a78e];return _0x5952f3;};'use strict';var pdf=require(_0x68ef('0x0'));var emlformat=require(_0x68ef('0x1'));var rimraf=require(_0x68ef('0x2'));var zipdir=require(_0x68ef('0x3'));var jsonpatch=require(_0x68ef('0x4'));var rp=require(_0x68ef('0x5'));var moment=require(_0x68ef('0x6'));var BPromise=require('bluebird');var Mustache=require(_0x68ef('0x7'));var util=require(_0x68ef('0x8'));var path=require(_0x68ef('0x9'));var sox=require(_0x68ef('0xa'));var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var _=require(_0x68ef('0xb'));var squel=require(_0x68ef('0xc'));var crypto=require(_0x68ef('0xd'));var jsforce=require('jsforce');var deskjs=require(_0x68ef('0xe'));var toCsv=require(_0x68ef('0xf'));var querystring=require(_0x68ef('0x10'));var Papa=require(_0x68ef('0x11'));var Redis=require(_0x68ef('0x12'));var authService=require(_0x68ef('0x13'));var qs=require(_0x68ef('0x14'));var hardwareService=require(_0x68ef('0x15'));var logger=require(_0x68ef('0x16'))(_0x68ef('0x17'));var utils=require(_0x68ef('0x18'));var config=require(_0x68ef('0x19'));var db=require('../../mysqldb')['db'];config[_0x68ef('0x1a')]=_[_0x68ef('0x1b')](config[_0x68ef('0x1a')],{'host':_0x68ef('0x1c'),'port':0x18eb});var socket=require(_0x68ef('0x1d'))(new Redis(config[_0x68ef('0x1a')]));require('./mailQueue.socket')[_0x68ef('0x1e')](socket);function respondWithStatusCode(_0xc50cce,_0x2657c5){_0x2657c5=_0x2657c5||0xcc;return function(_0x47fbb5){if(_0x47fbb5){return _0xc50cce[_0x68ef('0x1f')](_0x2657c5);}return _0xc50cce[_0x68ef('0x20')](_0x2657c5)[_0x68ef('0x21')]();};}function respondWithResult(_0x5005ba,_0x35493d){_0x35493d=_0x35493d||0xc8;return function(_0x37c4cc){if(_0x37c4cc){return _0x5005ba[_0x68ef('0x20')](_0x35493d)[_0x68ef('0x22')](_0x37c4cc);}};}function respondWithFilteredResult(_0x5c4456,_0x2ada1c){return function(_0x54139e){if(_0x54139e){var _0x5cbb78=_0x54139e['count'],_0x2633c1=_0x2ada1c[_0x68ef('0x23')],_0x404870=_0x2ada1c[_0x68ef('0x23')]+_0x2ada1c[_0x68ef('0x24')],_0x4ade0d;if(_0x404870>=_0x5cbb78){_0x404870=_0x5cbb78;_0x4ade0d=0xc8;}else{_0x4ade0d=0xce;}_0x5c4456['status'](_0x4ade0d);return _0x5c4456[_0x68ef('0x25')](_0x68ef('0x26'),_0x2633c1+'-'+_0x404870+'/'+_0x5cbb78)[_0x68ef('0x22')](_0x54139e);}return null;};}function patchUpdates(_0x5b246b){return function(_0x3c46d4){try{jsonpatch[_0x68ef('0x27')](_0x3c46d4,_0x5b246b,!![]);}catch(_0x5af19f){return BPromise[_0x68ef('0x28')](_0x5af19f);}return _0x3c46d4[_0x68ef('0x29')]();};}function saveUpdates(_0x19aa3d,_0x5ddec7){return function(_0x59723c){if(_0x59723c){return _0x59723c['update'](_0x19aa3d)[_0x68ef('0x2a')](function(_0x2023f2){return _0x2023f2;});}return null;};}function removeEntity(_0x312cc9,_0x2e6e39){return function(_0x438b4c){if(_0x438b4c){return _0x438b4c[_0x68ef('0x2b')]()[_0x68ef('0x2a')](function(){var _0x49374f=_0x438b4c[_0x68ef('0x2c')]({'plain':!![]});var _0x13280b='MailQueues';return db[_0x68ef('0x2d')]['destroy']({'where':{'type':_0x13280b,'resourceId':_0x49374f['id']}})['then'](function(){return _0x438b4c;});})['then'](function(){_0x312cc9[_0x68ef('0x20')](0xcc)[_0x68ef('0x21')]();});}};}function handleEntityNotFound(_0x123041,_0x29518e){return function(_0x52e67e){if(!_0x52e67e){_0x123041['sendStatus'](0x194);}return _0x52e67e;};}function handleError(_0x1cbe4f,_0x28907a){_0x28907a=_0x28907a||0x1f4;return function(_0x7bf96){logger[_0x68ef('0x2e')](_0x7bf96[_0x68ef('0x2f')]);if(_0x7bf96[_0x68ef('0x30')]){delete _0x7bf96[_0x68ef('0x30')];}_0x1cbe4f[_0x68ef('0x20')](_0x28907a)['send'](_0x7bf96);};}exports[_0x68ef('0x31')]=function(_0x4314bd,_0x132d9e){var _0x4c25aa={},_0x370a8f={},_0x523120={'count':0x0,'rows':[]};var _0x133788=db[_0x68ef('0x32')]['rawAttributes'];_0x370a8f['model']=_[_0x68ef('0x33')](_0x133788);_0x370a8f[_0x68ef('0x34')]=_['keys'](_0x4314bd[_0x68ef('0x34')]);_0x370a8f[_0x68ef('0x35')]=_[_0x68ef('0x36')](_0x370a8f[_0x68ef('0x37')],_0x370a8f['query']);_0x4c25aa[_0x68ef('0x38')]=_[_0x68ef('0x36')](_0x370a8f['model'],qs[_0x68ef('0x39')](_0x4314bd['query'][_0x68ef('0x39')]));_0x4c25aa[_0x68ef('0x38')]=_0x4c25aa['attributes'][_0x68ef('0x3a')]?_0x4c25aa['attributes']:_0x370a8f[_0x68ef('0x37')];if(!_0x4314bd['query'][_0x68ef('0x3b')](_0x68ef('0x3c'))){_0x4c25aa[_0x68ef('0x24')]=qs['limit'](_0x4314bd[_0x68ef('0x34')]['limit']);_0x4c25aa[_0x68ef('0x23')]=qs['offset'](_0x4314bd[_0x68ef('0x34')][_0x68ef('0x23')]);}_0x4c25aa[_0x68ef('0x3d')]=qs[_0x68ef('0x3e')](_0x4314bd[_0x68ef('0x34')][_0x68ef('0x3e')]);_0x4c25aa['where']=qs[_0x68ef('0x35')](_[_0x68ef('0x3f')](_0x4314bd[_0x68ef('0x34')],_0x370a8f['filters']));if(_0x4314bd[_0x68ef('0x34')][_0x68ef('0x40')]){_0x4c25aa[_0x68ef('0x41')]=_['merge'](_0x4c25aa['where'],{'$or':_[_0x68ef('0x42')](_0x133788,function(_0xec7de3){if(_0xec7de3[_0x68ef('0x43')][_0x68ef('0x44')]!==_0x68ef('0x45')){var _0x129c82={};_0x129c82[_0xec7de3[_0x68ef('0x46')]]={'$like':'%'+_0x4314bd['query'][_0x68ef('0x40')]+'%'};return _0x129c82;}})});}_0x4c25aa=_[_0x68ef('0x47')]({},_0x4c25aa,_0x4314bd[_0x68ef('0x48')]);var _0x2158f={'where':_0x4c25aa['where']};return db[_0x68ef('0x32')][_0x68ef('0x49')](_0x2158f)[_0x68ef('0x2a')](function(_0x410c10){_0x523120[_0x68ef('0x49')]=_0x410c10;if(_0x4314bd[_0x68ef('0x34')]['includeAll']){_0x4c25aa[_0x68ef('0x4a')]=[{'all':!![]}];}return db[_0x68ef('0x32')][_0x68ef('0x4b')](_0x4c25aa);})[_0x68ef('0x2a')](function(_0x449f3c){_0x523120[_0x68ef('0x4c')]=_0x449f3c;return _0x523120;})[_0x68ef('0x2a')](respondWithFilteredResult(_0x132d9e,_0x4c25aa))[_0x68ef('0x4d')](handleError(_0x132d9e,null));};exports[_0x68ef('0x4e')]=function(_0x531096,_0xad1a28){var _0x19d7a1={'raw':!![],'where':{'id':_0x531096[_0x68ef('0x4f')]['id']}},_0x3609c8={};_0x3609c8[_0x68ef('0x37')]=_[_0x68ef('0x33')](db[_0x68ef('0x32')]['rawAttributes']);_0x3609c8[_0x68ef('0x34')]=_['keys'](_0x531096[_0x68ef('0x34')]);_0x3609c8[_0x68ef('0x35')]=_[_0x68ef('0x36')](_0x3609c8[_0x68ef('0x37')],_0x3609c8['query']);_0x19d7a1[_0x68ef('0x38')]=_['intersection'](_0x3609c8[_0x68ef('0x37')],qs['fields'](_0x531096[_0x68ef('0x34')][_0x68ef('0x39')]));_0x19d7a1[_0x68ef('0x38')]=_0x19d7a1['attributes']['length']?_0x19d7a1[_0x68ef('0x38')]:_0x3609c8[_0x68ef('0x37')];if(_0x531096['query']['includeAll']){_0x19d7a1['include']=[{'all':!![]}];}_0x19d7a1=_[_0x68ef('0x47')]({},_0x19d7a1,_0x531096[_0x68ef('0x48')]);return db[_0x68ef('0x32')][_0x68ef('0x50')](_0x19d7a1)[_0x68ef('0x2a')](handleEntityNotFound(_0xad1a28,null))['then'](respondWithResult(_0xad1a28,null))['catch'](handleError(_0xad1a28,null));};exports[_0x68ef('0x51')]=function(_0x21f064,_0x2102cc){return db[_0x68ef('0x32')]['create'](_0x21f064[_0x68ef('0x52')],{})[_0x68ef('0x2a')](function(_0x1c9b6f){var _0x14142a=_0x21f064['user']['get']({'plain':!![]});if(!_0x14142a)throw new Error(_0x68ef('0x53'));if(_0x14142a[_0x68ef('0x54')]==='user'){var _0xfc7a74=_0x1c9b6f[_0x68ef('0x2c')]({'plain':!![]});var _0x3a82a0=_0x68ef('0x55');return db[_0x68ef('0x56')]['find']({'where':{'name':_0x3a82a0,'userProfileId':_0x14142a[_0x68ef('0x57')]},'raw':!![]})[_0x68ef('0x2a')](function(_0x340bfb){if(_0x340bfb&&_0x340bfb['autoAssociation']===0x0){return db[_0x68ef('0x2d')][_0x68ef('0x51')]({'name':_0xfc7a74[_0x68ef('0x30')],'resourceId':_0xfc7a74['id'],'type':_0x340bfb['name'],'sectionId':_0x340bfb['id']},{})[_0x68ef('0x2a')](function(){return _0x1c9b6f;});}else{return _0x1c9b6f;}})['catch'](function(_0x574573){logger[_0x68ef('0x2e')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x574573);throw _0x574573;});}return _0x1c9b6f;})[_0x68ef('0x2a')](respondWithResult(_0x2102cc,0xc9))[_0x68ef('0x4d')](handleError(_0x2102cc,null));};exports[_0x68ef('0x58')]=function(_0x1e651f,_0x2a0be0){if(_0x1e651f[_0x68ef('0x52')]['id']){delete _0x1e651f[_0x68ef('0x52')]['id'];}return db[_0x68ef('0x32')][_0x68ef('0x50')]({'where':{'id':_0x1e651f[_0x68ef('0x4f')]['id']}})['then'](handleEntityNotFound(_0x2a0be0,null))['then'](saveUpdates(_0x1e651f[_0x68ef('0x52')],null))[_0x68ef('0x2a')](respondWithResult(_0x2a0be0,null))[_0x68ef('0x4d')](handleError(_0x2a0be0,null));};exports[_0x68ef('0x2b')]=function(_0x82df12,_0x1d11d7){return db[_0x68ef('0x32')][_0x68ef('0x50')]({'where':{'id':_0x82df12[_0x68ef('0x4f')]['id']}})['then'](handleEntityNotFound(_0x1d11d7,null))['then'](removeEntity(_0x1d11d7,null))[_0x68ef('0x4d')](handleError(_0x1d11d7,null));};exports['describe']=function(_0x459b21,_0x4a5d39){return db[_0x68ef('0x32')][_0x68ef('0x59')]()['then'](respondWithResult(_0x4a5d39,null))[_0x68ef('0x4d')](handleError(_0x4a5d39,null));};exports['getMembers']=function(_0x407c6d,_0x15c1ee,_0x3319ea){var _0x304434={'raw':!![],'where':{}},_0x1bc83b={},_0x3d81c8;return db['MailQueue'][_0x68ef('0x5a')]({'where':{'id':_0x407c6d[_0x68ef('0x4f')]['id']}})[_0x68ef('0x2a')](handleEntityNotFound(_0x15c1ee,null))[_0x68ef('0x2a')](function(_0x4107d3){if(_0x4107d3){_0x3d81c8=_0x4107d3[_0x68ef('0x2c')]({'plain':!![]});_0x1bc83b['model']=_[_0x68ef('0x33')](db[_0x68ef('0x5b')]['rawAttributes']);_0x1bc83b[_0x68ef('0x34')]=_[_0x68ef('0x33')](_0x407c6d[_0x68ef('0x34')]);_0x1bc83b['filters']=_[_0x68ef('0x36')](_0x1bc83b['model'],_0x1bc83b['query']);_0x304434[_0x68ef('0x38')]=_['intersection'](_0x1bc83b[_0x68ef('0x37')],qs['fields'](_0x407c6d[_0x68ef('0x34')][_0x68ef('0x39')]));_0x304434[_0x68ef('0x38')]=_0x304434[_0x68ef('0x38')][_0x68ef('0x3a')]?_0x304434[_0x68ef('0x38')]:_0x1bc83b['model'];if(!_0x407c6d[_0x68ef('0x34')]['hasOwnProperty'](_0x68ef('0x3c'))){_0x304434['limit']=qs[_0x68ef('0x24')](_0x407c6d[_0x68ef('0x34')][_0x68ef('0x24')]);_0x304434[_0x68ef('0x23')]=qs[_0x68ef('0x23')](_0x407c6d[_0x68ef('0x34')][_0x68ef('0x23')]);}_0x304434['order']=qs[_0x68ef('0x3e')](_0x407c6d[_0x68ef('0x34')][_0x68ef('0x3e')]);_0x304434[_0x68ef('0x41')]=qs[_0x68ef('0x35')](_['pick'](_0x407c6d[_0x68ef('0x34')],_0x1bc83b['filters']));_0x304434[_0x68ef('0x41')]['MailQueueId']=_0x4107d3['id'];if(_0x407c6d['query'][_0x68ef('0x40')]){_0x304434[_0x68ef('0x41')]=_[_0x68ef('0x47')](_0x304434[_0x68ef('0x41')],{'$or':_['map'](_0x304434[_0x68ef('0x38')],function(_0x570e0c){var _0x2460d8={};_0x2460d8[_0x570e0c]={'$like':'%'+_0x407c6d[_0x68ef('0x34')][_0x68ef('0x40')]+'%'};return _0x2460d8;})});}_0x304434=_['merge']({},_0x304434,_0x407c6d['options']);return db[_0x68ef('0x5b')][_0x68ef('0x4b')](_0x304434);}})[_0x68ef('0x2a')](function(_0x454c6f){if(_0x454c6f){return db['User'][_0x68ef('0x5c')]({'where':{'id':_[_0x68ef('0x42')](_0x454c6f,_0x68ef('0x5d')),'role':_0x68ef('0x5e')},'attributes':['id','name',_0x68ef('0x5f'),'updatedAt',_0x68ef('0x60')]});}})[_0x68ef('0x2a')](function(_0x90e1a6){if(_0x90e1a6){return{'count':_0x90e1a6[_0x68ef('0x49')],'rows':_[_0x68ef('0x42')](_0x90e1a6['rows'],function(_0x24285){return{'membername':_0x24285[_0x68ef('0x30')],'UserId':_0x24285['id'],'queue_name':_0x3d81c8[_0x68ef('0x30')],'MailQueueId':_0x3d81c8['id'],'interface':util['format'](_0x68ef('0x61'),'SIP',_0x24285[_0x68ef('0x30')]),'penalty':0x0,'paused':_0x24285['mailPause'],'createdAt':_0x24285['createdAt'],'updatedAt':_0x24285[_0x68ef('0x62')]};})};}else{return{'count':0x0,'rows':[]};}})[_0x68ef('0x2a')](respondWithFilteredResult(_0x15c1ee,_0x304434))[_0x68ef('0x4d')](handleError(_0x15c1ee,null));};exports[_0x68ef('0x63')]=function(_0x501004,_0x44f4d0,_0x387c1b){var _0x5e2bd1={};var _0x511178={};var _0x3e14a4;var _0x2db826;return db[_0x68ef('0x32')][_0x68ef('0x5a')]({'where':{'id':_0x501004[_0x68ef('0x4f')]['id']}})[_0x68ef('0x2a')](handleEntityNotFound(_0x44f4d0,null))[_0x68ef('0x2a')](function(_0xfe72dc){if(_0xfe72dc){_0x3e14a4=_0xfe72dc;_0x511178[_0x68ef('0x37')]=_[_0x68ef('0x33')](db[_0x68ef('0x64')][_0x68ef('0x65')]);_0x511178['query']=_[_0x68ef('0x33')](_0x501004[_0x68ef('0x34')]);_0x511178['filters']=_['intersection'](_0x511178[_0x68ef('0x37')],_0x511178['query']);_0x5e2bd1[_0x68ef('0x38')]=_[_0x68ef('0x36')](_0x511178['model'],qs['fields'](_0x501004[_0x68ef('0x34')]['fields']));_0x5e2bd1[_0x68ef('0x38')]=_0x5e2bd1['attributes'][_0x68ef('0x3a')]?_0x5e2bd1['attributes']:_0x511178[_0x68ef('0x37')];_0x5e2bd1[_0x68ef('0x3d')]=qs['sort'](_0x501004[_0x68ef('0x34')][_0x68ef('0x3e')]);_0x5e2bd1[_0x68ef('0x41')]=qs[_0x68ef('0x35')](_['pick'](_0x501004[_0x68ef('0x34')],_0x511178[_0x68ef('0x35')]));if(_0x501004['query'][_0x68ef('0x40')]){_0x5e2bd1[_0x68ef('0x41')]=_[_0x68ef('0x47')](_0x5e2bd1['where'],{'$or':_[_0x68ef('0x42')](_0x5e2bd1['attributes'],function(_0xe6bf05){var _0x36c109={};_0x36c109[_0xe6bf05]={'$like':'%'+_0x501004['query']['filter']+'%'};return _0x36c109;})});}_0x5e2bd1=_['merge']({},_0x5e2bd1,_0x501004['options']);return _0x3e14a4[_0x68ef('0x63')](_0x5e2bd1);}})[_0x68ef('0x2a')](function(_0x1217f9){if(_0x1217f9){_0x2db826=_0x1217f9[_0x68ef('0x3a')];if(!_0x501004[_0x68ef('0x34')][_0x68ef('0x3b')](_0x68ef('0x3c'))){_0x5e2bd1[_0x68ef('0x24')]=qs[_0x68ef('0x24')](_0x501004[_0x68ef('0x34')][_0x68ef('0x24')]);_0x5e2bd1[_0x68ef('0x23')]=qs[_0x68ef('0x23')](_0x501004['query'][_0x68ef('0x23')]);}return _0x3e14a4['getTeams'](_0x5e2bd1);}})[_0x68ef('0x2a')](function(_0x5b39a8){if(_0x5b39a8){return _0x5b39a8?{'count':_0x2db826,'rows':_0x5b39a8}:null;}})['then'](respondWithResult(_0x44f4d0,null))[_0x68ef('0x4d')](handleError(_0x44f4d0,null));};exports[_0x68ef('0x66')]=function(_0x2c72f2,_0x2a0247,_0x518c9a){var _0x4aad7e=_0x2c72f2[_0x68ef('0x52')][_0x68ef('0x67')];return db[_0x68ef('0x64')]['findAll']({'where':{'id':_[_0x68ef('0x42')](_0x4aad7e,'id')},'attributes':['id'],'include':[{'model':db[_0x68ef('0x68')],'as':_0x68ef('0x69'),'attributes':['id',_0x68ef('0x30'),'online',_0x68ef('0x6a'),_0x68ef('0x6b')],'raw':!![]}]})[_0x68ef('0x2a')](function(_0x59d7d){if(_0x59d7d){var _0xc4e328=_[_0x68ef('0x6c')](_0x59d7d,function(_0x489ca6){var _0x2a72e8=_0x489ca6['get']({'plain':!![]});return _0x2a72e8[_0x68ef('0x69')];});return db[_0x68ef('0x32')][_0x68ef('0x50')]({'where':{'id':_0x2c72f2[_0x68ef('0x4f')]['id']}})['then'](function(_0x286ac0){return db['sequelize'][_0x68ef('0x6d')](function(_0x328abd){return _0x286ac0['addTeams'](_['map'](_0x4aad7e,'id'),{'transaction':_0x328abd})[_0x68ef('0x2a')](function(){return BPromise['each'](_0xc4e328,function(_0x46c4ba){return db['UserMailQueue'][_0x68ef('0x6e')]({'where':{'UserId':_0x46c4ba['id'],'MailQueueId':_0x2c72f2[_0x68ef('0x4f')]['id']},'transaction':_0x328abd});});})[_0x68ef('0x2a')](function(){_0xc4e328[_0x68ef('0x6f')](function(_0x30eb96){socket[_0x68ef('0x70')]('userMailQueue:save',{'UserId':_0x30eb96['id'],'MailQueueId':_0x286ac0['id']});});});});});}})[_0x68ef('0x2a')](respondWithStatusCode(_0x2a0247,null))[_0x68ef('0x4d')](handleError(_0x2a0247,null));};exports[_0x68ef('0x71')]=function(_0x380437,_0x2b97f4,_0x1866be){return db[_0x68ef('0x64')]['findAll']({'where':{'id':_0x380437[_0x68ef('0x34')][_0x68ef('0x72')]},'attributes':['id'],'include':[{'model':db[_0x68ef('0x68')],'as':_0x68ef('0x69'),'attributes':['id'],'raw':!![]}]})[_0x68ef('0x2a')](handleEntityNotFound(_0x2b97f4,null))[_0x68ef('0x2a')](function(_0x3e0d3d){var _0x4478de=_[_0x68ef('0x42')](_0x3e0d3d,'id');var _0x580fe0=[];var _0x25d530=[];var _0x530ae0=squel['select']();_0x530ae0['field'](_0x68ef('0x73'))[_0x68ef('0x74')](_0x68ef('0x75'),'tq')['join']('user_has_teams','ut','ut.TeamId\x20=\x20tq.TeamId')[_0x68ef('0x41')](_0x68ef('0x76'),_0x380437[_0x68ef('0x4f')]['id']);for(var _0x40996e=0x0;_0x40996e<_0x3e0d3d[_0x68ef('0x3a')];_0x40996e+=0x1){let _0x6c9e56=_0x3e0d3d[_0x40996e];for(var _0x5546a2=0x0;_0x5546a2<_0x6c9e56[_0x68ef('0x69')][_0x68ef('0x3a')];_0x5546a2+=0x1){let _0x1bdacc=_0x6c9e56[_0x68ef('0x69')][_0x5546a2];var _0x598c45=_0x530ae0[_0x68ef('0x77')]();_0x598c45[_0x68ef('0x41')](_0x68ef('0x78'),_0x1bdacc['id']);_0x25d530[_0x68ef('0x79')](db[_0x68ef('0x7a')][_0x68ef('0x34')](_0x598c45[_0x68ef('0x7b')](),{'type':db[_0x68ef('0x7a')]['QueryTypes'][_0x68ef('0x7c')]})[_0x68ef('0x2a')](function(_0x4d54df){if(_0x4d54df[_0x68ef('0x3a')]===0x1){return _0x1bdacc['id'];}else{var _0x29864a=_[_0x68ef('0x7d')](_[_0x68ef('0x42')](_0x4d54df,_0x68ef('0x7e')),function(_0x23cae4){return _[_0x68ef('0x7f')](_0x4478de,_0x23cae4);});if(_0x29864a){return _0x1bdacc['id'];}}}));}}return BPromise[_0x68ef('0x80')](_0x25d530)[_0x68ef('0x2a')](function(_0x159169){_0x580fe0=_(_0x580fe0)[_0x68ef('0x81')](_0x159169)[_0x68ef('0x82')]()[_0x68ef('0x83')]();return db[_0x68ef('0x32')][_0x68ef('0x50')]({'where':{'id':_0x380437[_0x68ef('0x4f')]['id']}})[_0x68ef('0x2a')](function(_0x24af15){return db['sequelize'][_0x68ef('0x6d')](function(_0x2e815a){return _0x24af15[_0x68ef('0x71')](_0x380437[_0x68ef('0x34')][_0x68ef('0x72')],{'transaction':_0x2e815a})['then'](function(){if(!_[_0x68ef('0x84')](_0x580fe0)){return _0x24af15[_0x68ef('0x85')](_0x580fe0,{'transaction':_0x2e815a});}})['then'](function(){_0x580fe0[_0x68ef('0x6f')](function(_0x4d7cf7){socket['emit']('userMailQueue:remove',{'UserId':_0x4d7cf7,'MailQueueId':_0x24af15['id']});});});});});});})['then'](respondWithStatusCode(_0x2b97f4,null))[_0x68ef('0x4d')](handleError(_0x2b97f4,null));};exports['addAgents']=function(_0x264299,_0x4ce4c5,_0x56ecd2){return db['MailQueue'][_0x68ef('0x50')]({'where':{'id':_0x264299[_0x68ef('0x4f')]['id']}})[_0x68ef('0x2a')](handleEntityNotFound(_0x4ce4c5,null))[_0x68ef('0x2a')](function(_0x41e8e7){if(_0x41e8e7){return _0x41e8e7['addAgents'](_0x264299[_0x68ef('0x52')][_0x68ef('0x72')],_[_0x68ef('0x86')](_0x264299[_0x68ef('0x52')],['ids','id'])||{})[_0x68ef('0x87')](function(_0x59e398){for(var _0x56cada=0x0;_0x56cada<_0x264299['body'][_0x68ef('0x72')][_0x68ef('0x3a')];_0x56cada+=0x1){socket[_0x68ef('0x70')](_0x68ef('0x88'),{'UserId':_0x264299[_0x68ef('0x52')][_0x68ef('0x72')][_0x56cada],'MailQueueId':_0x264299[_0x68ef('0x4f')]['id']});}return _0x59e398;});}})[_0x68ef('0x2a')](respondWithResult(_0x4ce4c5,null))[_0x68ef('0x4d')](handleError(_0x4ce4c5,null));};exports[_0x68ef('0x85')]=function(_0x3e8773,_0x2ab485,_0x4c1811){return db['MailQueue']['find']({'where':{'id':_0x3e8773[_0x68ef('0x4f')]['id']}})[_0x68ef('0x2a')](handleEntityNotFound(_0x2ab485,null))[_0x68ef('0x2a')](function(_0x5cbcaa){if(_0x5cbcaa){return _0x5cbcaa[_0x68ef('0x85')](_0x3e8773['query'][_0x68ef('0x72')])[_0x68ef('0x2a')](function(){if(_[_0x68ef('0x89')](_0x3e8773['query'][_0x68ef('0x72')])){for(var _0x1730d4=0x0;_0x1730d4<_0x3e8773['query'][_0x68ef('0x72')][_0x68ef('0x3a')];_0x1730d4+=0x1){socket[_0x68ef('0x70')](_0x68ef('0x8a'),{'UserId':Number(_0x3e8773[_0x68ef('0x34')][_0x68ef('0x72')][_0x1730d4]),'MailQueueId':Number(_0x3e8773[_0x68ef('0x4f')]['id'])});}}else{socket['emit'](_0x68ef('0x8a'),{'UserId':Number(_0x3e8773[_0x68ef('0x34')][_0x68ef('0x72')]),'MailQueueId':Number(_0x3e8773[_0x68ef('0x4f')]['id'])});}});}})[_0x68ef('0x2a')](respondWithStatusCode(_0x2ab485,null))[_0x68ef('0x4d')](handleError(_0x2ab485,null));};exports[_0x68ef('0x8b')]=function(_0x1b8250,_0x1dd96a,_0x1c9f6f){var _0x563f2e={};var _0x5b56d5={};var _0x916a2e;var _0x4dcf9e;return db[_0x68ef('0x32')][_0x68ef('0x5a')]({'where':{'id':_0x1b8250[_0x68ef('0x4f')]['id']}})[_0x68ef('0x2a')](handleEntityNotFound(_0x1dd96a,null))[_0x68ef('0x2a')](function(_0x489c26){if(_0x489c26){_0x916a2e=_0x489c26;_0x5b56d5[_0x68ef('0x37')]=_[_0x68ef('0x33')](db[_0x68ef('0x68')][_0x68ef('0x65')]);_0x5b56d5['query']=_['keys'](_0x1b8250[_0x68ef('0x34')]);_0x5b56d5[_0x68ef('0x35')]=_[_0x68ef('0x36')](_0x5b56d5[_0x68ef('0x37')],_0x5b56d5[_0x68ef('0x34')]);_0x563f2e[_0x68ef('0x38')]=_[_0x68ef('0x36')](_0x5b56d5[_0x68ef('0x37')],qs[_0x68ef('0x39')](_0x1b8250[_0x68ef('0x34')][_0x68ef('0x39')]));_0x563f2e['attributes']=_0x563f2e[_0x68ef('0x38')][_0x68ef('0x3a')]?_0x563f2e[_0x68ef('0x38')]:_0x5b56d5[_0x68ef('0x37')];_0x563f2e[_0x68ef('0x3d')]=qs[_0x68ef('0x3e')](_0x1b8250[_0x68ef('0x34')][_0x68ef('0x3e')]);_0x563f2e[_0x68ef('0x41')]=qs[_0x68ef('0x35')](_['pick'](_0x1b8250['query'],_0x5b56d5[_0x68ef('0x35')]));if(_0x1b8250[_0x68ef('0x34')][_0x68ef('0x40')]){_0x563f2e[_0x68ef('0x41')]=_[_0x68ef('0x47')](_0x563f2e[_0x68ef('0x41')],{'$or':_[_0x68ef('0x42')](_0x563f2e['attributes'],function(_0x264652){var _0xe629d1={};_0xe629d1[_0x264652]={'$like':'%'+_0x1b8250[_0x68ef('0x34')][_0x68ef('0x40')]+'%'};return _0xe629d1;})});}_0x563f2e=_['merge']({},_0x563f2e,_0x1b8250[_0x68ef('0x48')]);return _0x916a2e['getAgents'](_0x563f2e);}})[_0x68ef('0x2a')](function(_0x322733){if(_0x322733){_0x4dcf9e=_0x322733[_0x68ef('0x3a')];if(!_0x1b8250['query']['hasOwnProperty'](_0x68ef('0x3c'))){_0x563f2e['limit']=qs[_0x68ef('0x24')](_0x1b8250['query'][_0x68ef('0x24')]);_0x563f2e[_0x68ef('0x23')]=qs['offset'](_0x1b8250['query'][_0x68ef('0x23')]);}return _0x916a2e[_0x68ef('0x8b')](_0x563f2e);}})['then'](function(_0xf9f2c4){if(_0xf9f2c4){return _0xf9f2c4?{'count':_0x4dcf9e,'rows':_0xf9f2c4}:null;}})[_0x68ef('0x2a')](respondWithResult(_0x1dd96a,null))[_0x68ef('0x4d')](handleError(_0x1dd96a,null));};