Built motion from commit d5e4af8c.|2.6.23
[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 _0xc957=['pick','hasOwnProperty','addTeams','ids','Agents','online','flatMap','sequelize','transaction','each','emit','userMailQueue:save','select','field','tq.TeamId','team_has_mail_queues','join','user_has_teams','ut.TeamId\x20=\x20tq.TeamId','clone','ut.UserId\x20=\x20?','toString','SELECT','TeamId','includes','union','compact','value','removeTeams','isEmpty','forEach','userMailQueue:remove','addAgents','omit','spread','removeAgents','getAgents','bluebird','lodash','ioredis','../../components/parsers/qs','../../config/logger','redis','localhost','socket.io-emitter','register','status','end','json','undefined','limit','count','offset','set','Content-Range','update','then','get','MailQueues','UserProfileResource','destroy','sendStatus','error','stack','name','send','map','MailQueue','rawAttributes','fieldName','type','key','where','include','query','rows','catch','show','params','model','keys','filters','intersection','attributes','length','includeAll','merge','options','find','create','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','describe','getMembers','UserMailQueue','fields','nolimit','order','sort','filter','findAll','User','findAndCountAll','agent','mailPause','createdAt','%s/%s','SIP','getTeams','findOne','Team'];(function(_0x79f5a7,_0x570dfb){var _0x43fb06=function(_0x14d156){while(--_0x14d156){_0x79f5a7['push'](_0x79f5a7['shift']());}};_0x43fb06(++_0x570dfb);}(_0xc957,0x98));var _0x7c95=function(_0x47b58b,_0x41a189){_0x47b58b=_0x47b58b-0x0;var _0x46bebe=_0xc957[_0x47b58b];return _0x46bebe;};'use strict';var BPromise=require(_0x7c95('0x0'));var util=require('util');var _=require(_0x7c95('0x1'));var squel=require('squel');var Redis=require(_0x7c95('0x2'));var qs=require(_0x7c95('0x3'));var logger=require(_0x7c95('0x4'))('api');var config=require('../../config/environment');var db=require('../../mysqldb')['db'];config[_0x7c95('0x5')]=_['defaults'](config['redis'],{'host':_0x7c95('0x6'),'port':0x18eb});var socket=require(_0x7c95('0x7'))(new Redis(config[_0x7c95('0x5')]));require('./mailQueue.socket')[_0x7c95('0x8')](socket);function respondWithStatusCode(_0x1e42eb,_0x473328){_0x473328=_0x473328||0xcc;return function(_0x3af5a5){if(_0x3af5a5){return _0x1e42eb['sendStatus'](_0x473328);}return _0x1e42eb[_0x7c95('0x9')](_0x473328)[_0x7c95('0xa')]();};}function respondWithResult(_0x55e164,_0xb26954){_0xb26954=_0xb26954||0xc8;return function(_0x147e32){if(_0x147e32){return _0x55e164[_0x7c95('0x9')](_0xb26954)[_0x7c95('0xb')](_0x147e32);}};}function respondWithFilteredResult(_0x567b1e,_0x281ff8){return function(_0x1341f8){if(_0x1341f8){var _0x8f5e92=typeof _0x281ff8['offset']===_0x7c95('0xc')&&typeof _0x281ff8[_0x7c95('0xd')]===_0x7c95('0xc');var _0x125561=_0x1341f8[_0x7c95('0xe')];var _0x5c3859=_0x8f5e92?0x0:_0x281ff8[_0x7c95('0xf')];var _0x330f14=_0x8f5e92?_0x1341f8[_0x7c95('0xe')]:_0x281ff8[_0x7c95('0xf')]+_0x281ff8[_0x7c95('0xd')];var _0x1dbfa0;if(_0x330f14>=_0x125561){_0x330f14=_0x125561;_0x1dbfa0=0xc8;}else{_0x1dbfa0=0xce;}_0x567b1e['status'](_0x1dbfa0);return _0x567b1e[_0x7c95('0x10')](_0x7c95('0x11'),_0x5c3859+'-'+_0x330f14+'/'+_0x125561)[_0x7c95('0xb')](_0x1341f8);}return null;};}function saveUpdates(_0x466ea8){return function(_0xde0fb3){if(_0xde0fb3){return _0xde0fb3[_0x7c95('0x12')](_0x466ea8)['then'](function(_0x2909b6){return _0x2909b6;});}return null;};}function removeEntity(_0x24cb18){return function(_0x376942){if(_0x376942){return _0x376942['destroy']()[_0x7c95('0x13')](function(){var _0x26ff06=_0x376942[_0x7c95('0x14')]({'plain':!![]});var _0xcd621d=_0x7c95('0x15');return db[_0x7c95('0x16')][_0x7c95('0x17')]({'where':{'type':_0xcd621d,'resourceId':_0x26ff06['id']}})[_0x7c95('0x13')](function(){return _0x376942;});})[_0x7c95('0x13')](function(){_0x24cb18[_0x7c95('0x9')](0xcc)[_0x7c95('0xa')]();});}};}function handleEntityNotFound(_0x3f9c4b){return function(_0x5e928e){if(!_0x5e928e){_0x3f9c4b[_0x7c95('0x18')](0x194);}return _0x5e928e;};}function handleError(_0x3eae9f,_0x40c60a){_0x40c60a=_0x40c60a||0x1f4;return function(_0x2e23b8){logger[_0x7c95('0x19')](_0x2e23b8[_0x7c95('0x1a')]);if(_0x2e23b8['name']){delete _0x2e23b8[_0x7c95('0x1b')];}_0x3eae9f[_0x7c95('0x9')](_0x40c60a)[_0x7c95('0x1c')](_0x2e23b8);};}exports['index']=function(_0xf2bfb7,_0x471dba){var _0x2bfd58={};var _0x5307c9={'count':0x0,'rows':[]};var _0x177545=_[_0x7c95('0x1d')](db[_0x7c95('0x1e')][_0x7c95('0x1f')],function(_0x4e7a2){return{'name':_0x4e7a2[_0x7c95('0x20')],'type':_0x4e7a2[_0x7c95('0x21')][_0x7c95('0x22')]};});_0x2bfd58=qs['getOptions'](_0x177545,_0xf2bfb7);var _0x4e7f7d={'where':_0x2bfd58[_0x7c95('0x23')]};return db[_0x7c95('0x1e')][_0x7c95('0xe')](_0x4e7f7d)[_0x7c95('0x13')](function(_0x1a8008){_0x5307c9[_0x7c95('0xe')]=_0x1a8008;_0x2bfd58[_0x7c95('0x24')]=qs[_0x7c95('0x24')](_0xf2bfb7[_0x7c95('0x25')]);return db[_0x7c95('0x1e')]['findAll'](_0x2bfd58);})[_0x7c95('0x13')](function(_0x1519f6){_0x5307c9[_0x7c95('0x26')]=_0x1519f6;return _0x5307c9;})[_0x7c95('0x13')](respondWithFilteredResult(_0x471dba,_0x2bfd58))[_0x7c95('0x27')](handleError(_0x471dba,null));};exports[_0x7c95('0x28')]=function(_0x407875,_0x203b7c){var _0x324c3d={'raw':!![],'where':{'id':_0x407875[_0x7c95('0x29')]['id']}},_0x8e26d2={};_0x8e26d2[_0x7c95('0x2a')]=_[_0x7c95('0x2b')](db[_0x7c95('0x1e')]['rawAttributes']);_0x8e26d2['query']=_[_0x7c95('0x2b')](_0x407875['query']);_0x8e26d2[_0x7c95('0x2c')]=_[_0x7c95('0x2d')](_0x8e26d2['model'],_0x8e26d2[_0x7c95('0x25')]);_0x324c3d[_0x7c95('0x2e')]=_['intersection'](_0x8e26d2[_0x7c95('0x2a')],qs['fields'](_0x407875[_0x7c95('0x25')]['fields']));_0x324c3d['attributes']=_0x324c3d[_0x7c95('0x2e')][_0x7c95('0x2f')]?_0x324c3d['attributes']:_0x8e26d2[_0x7c95('0x2a')];if(_0x407875['query'][_0x7c95('0x30')]){_0x324c3d[_0x7c95('0x24')]=[{'all':!![]}];}_0x324c3d=_[_0x7c95('0x31')]({},_0x324c3d,_0x407875[_0x7c95('0x32')]);return db[_0x7c95('0x1e')][_0x7c95('0x33')](_0x324c3d)['then'](handleEntityNotFound(_0x203b7c,null))[_0x7c95('0x13')](respondWithResult(_0x203b7c,null))['catch'](handleError(_0x203b7c,null));};exports[_0x7c95('0x34')]=function(_0x48ca51,_0x180959){return db[_0x7c95('0x1e')]['create'](_0x48ca51[_0x7c95('0x35')],{})['then'](function(_0x5b1876){var _0x9a273a=_0x48ca51[_0x7c95('0x36')]['get']({'plain':!![]});if(!_0x9a273a)throw new Error(_0x7c95('0x37'));if(_0x9a273a[_0x7c95('0x38')]===_0x7c95('0x36')){var _0x5baaba=_0x5b1876[_0x7c95('0x14')]({'plain':!![]});var _0x29af22=_0x7c95('0x15');return db['UserProfileSection'][_0x7c95('0x33')]({'where':{'name':_0x29af22,'userProfileId':_0x9a273a['userProfileId']},'raw':!![]})['then'](function(_0x39252a){if(_0x39252a&&_0x39252a[_0x7c95('0x39')]===0x0){return db[_0x7c95('0x16')][_0x7c95('0x34')]({'name':_0x5baaba[_0x7c95('0x1b')],'resourceId':_0x5baaba['id'],'type':_0x39252a[_0x7c95('0x1b')],'sectionId':_0x39252a['id']},{})['then'](function(){return _0x5b1876;});}else{return _0x5b1876;}})[_0x7c95('0x27')](function(_0x589d58){logger[_0x7c95('0x19')](_0x7c95('0x3a'),_0x589d58);throw _0x589d58;});}return _0x5b1876;})[_0x7c95('0x13')](respondWithResult(_0x180959,0xc9))[_0x7c95('0x27')](handleError(_0x180959,null));};exports['update']=function(_0x432781,_0x42bc0b){if(_0x432781[_0x7c95('0x35')]['id']){delete _0x432781[_0x7c95('0x35')]['id'];}return db[_0x7c95('0x1e')]['find']({'where':{'id':_0x432781[_0x7c95('0x29')]['id']}})[_0x7c95('0x13')](handleEntityNotFound(_0x42bc0b,null))[_0x7c95('0x13')](saveUpdates(_0x432781[_0x7c95('0x35')],null))[_0x7c95('0x13')](respondWithResult(_0x42bc0b,null))['catch'](handleError(_0x42bc0b,null));};exports[_0x7c95('0x17')]=function(_0x37833c,_0x234dd0){return db[_0x7c95('0x1e')][_0x7c95('0x33')]({'where':{'id':_0x37833c[_0x7c95('0x29')]['id']}})[_0x7c95('0x13')](handleEntityNotFound(_0x234dd0,null))['then'](removeEntity(_0x234dd0,null))[_0x7c95('0x27')](handleError(_0x234dd0,null));};exports['describe']=function(_0x59d74e,_0x194392){return db[_0x7c95('0x1e')][_0x7c95('0x3b')]()[_0x7c95('0x13')](respondWithResult(_0x194392,null))[_0x7c95('0x27')](handleError(_0x194392,null));};exports[_0x7c95('0x3c')]=function(_0x328936,_0x34451a){var _0x1f028b={'raw':!![],'where':{}},_0x2260f5={},_0xbd0015;return db[_0x7c95('0x1e')]['findOne']({'where':{'id':_0x328936['params']['id']}})['then'](handleEntityNotFound(_0x34451a,null))[_0x7c95('0x13')](function(_0x2ff330){if(_0x2ff330){_0xbd0015=_0x2ff330['get']({'plain':!![]});_0x2260f5[_0x7c95('0x2a')]=_[_0x7c95('0x2b')](db[_0x7c95('0x3d')]['rawAttributes']);_0x2260f5['query']=_[_0x7c95('0x2b')](_0x328936['query']);_0x2260f5[_0x7c95('0x2c')]=_[_0x7c95('0x2d')](_0x2260f5[_0x7c95('0x2a')],_0x2260f5[_0x7c95('0x25')]);_0x1f028b['attributes']=_[_0x7c95('0x2d')](_0x2260f5[_0x7c95('0x2a')],qs['fields'](_0x328936[_0x7c95('0x25')][_0x7c95('0x3e')]));_0x1f028b[_0x7c95('0x2e')]=_0x1f028b[_0x7c95('0x2e')][_0x7c95('0x2f')]?_0x1f028b[_0x7c95('0x2e')]:_0x2260f5[_0x7c95('0x2a')];if(!_0x328936['query']['hasOwnProperty'](_0x7c95('0x3f'))){_0x1f028b[_0x7c95('0xd')]=qs[_0x7c95('0xd')](_0x328936[_0x7c95('0x25')][_0x7c95('0xd')]);_0x1f028b[_0x7c95('0xf')]=qs[_0x7c95('0xf')](_0x328936[_0x7c95('0x25')]['offset']);}_0x1f028b[_0x7c95('0x40')]=qs[_0x7c95('0x41')](_0x328936[_0x7c95('0x25')][_0x7c95('0x41')]);_0x1f028b['where']=qs[_0x7c95('0x2c')](_['pick'](_0x328936[_0x7c95('0x25')],_0x2260f5[_0x7c95('0x2c')]));_0x1f028b[_0x7c95('0x23')]['MailQueueId']=_0x2ff330['id'];if(_0x328936[_0x7c95('0x25')][_0x7c95('0x42')]){_0x1f028b[_0x7c95('0x23')]=_[_0x7c95('0x31')](_0x1f028b[_0x7c95('0x23')],{'$or':_['map'](_0x1f028b['attributes'],function(_0xa9d05e){var _0x45f1ff={};_0x45f1ff[_0xa9d05e]={'$like':'%'+_0x328936[_0x7c95('0x25')][_0x7c95('0x42')]+'%'};return _0x45f1ff;})});}_0x1f028b=_['merge']({},_0x1f028b,_0x328936[_0x7c95('0x32')]);return db[_0x7c95('0x3d')][_0x7c95('0x43')](_0x1f028b);}})[_0x7c95('0x13')](function(_0x1d272d){if(_0x1d272d){return db[_0x7c95('0x44')][_0x7c95('0x45')]({'where':{'id':_[_0x7c95('0x1d')](_0x1d272d,'UserId'),'role':_0x7c95('0x46')},'attributes':['id','name',_0x7c95('0x47'),'updatedAt',_0x7c95('0x48')]});}})[_0x7c95('0x13')](function(_0x19c173){if(_0x19c173){return{'count':_0x19c173[_0x7c95('0xe')],'rows':_[_0x7c95('0x1d')](_0x19c173[_0x7c95('0x26')],function(_0x4d50e0){return{'membername':_0x4d50e0[_0x7c95('0x1b')],'UserId':_0x4d50e0['id'],'queue_name':_0xbd0015[_0x7c95('0x1b')],'MailQueueId':_0xbd0015['id'],'interface':util['format'](_0x7c95('0x49'),_0x7c95('0x4a'),_0x4d50e0[_0x7c95('0x1b')]),'penalty':0x0,'paused':_0x4d50e0[_0x7c95('0x47')],'createdAt':_0x4d50e0[_0x7c95('0x48')],'updatedAt':_0x4d50e0['updatedAt']};})};}else{return{'count':0x0,'rows':[]};}})[_0x7c95('0x13')](respondWithFilteredResult(_0x34451a,_0x1f028b))[_0x7c95('0x27')](handleError(_0x34451a,null));};exports[_0x7c95('0x4b')]=function(_0x5b0e1e,_0x521e39){var _0x193c5f={};var _0x968c9f={};var _0x168a06;var _0x26a849;return db[_0x7c95('0x1e')][_0x7c95('0x4c')]({'where':{'id':_0x5b0e1e[_0x7c95('0x29')]['id']}})[_0x7c95('0x13')](handleEntityNotFound(_0x521e39,null))[_0x7c95('0x13')](function(_0x301502){if(_0x301502){_0x168a06=_0x301502;_0x968c9f['model']=_['keys'](db[_0x7c95('0x4d')][_0x7c95('0x1f')]);_0x968c9f[_0x7c95('0x25')]=_[_0x7c95('0x2b')](_0x5b0e1e[_0x7c95('0x25')]);_0x968c9f['filters']=_[_0x7c95('0x2d')](_0x968c9f[_0x7c95('0x2a')],_0x968c9f[_0x7c95('0x25')]);_0x193c5f[_0x7c95('0x2e')]=_[_0x7c95('0x2d')](_0x968c9f['model'],qs[_0x7c95('0x3e')](_0x5b0e1e[_0x7c95('0x25')][_0x7c95('0x3e')]));_0x193c5f[_0x7c95('0x2e')]=_0x193c5f[_0x7c95('0x2e')]['length']?_0x193c5f[_0x7c95('0x2e')]:_0x968c9f[_0x7c95('0x2a')];_0x193c5f['order']=qs[_0x7c95('0x41')](_0x5b0e1e[_0x7c95('0x25')][_0x7c95('0x41')]);_0x193c5f[_0x7c95('0x23')]=qs[_0x7c95('0x2c')](_[_0x7c95('0x4e')](_0x5b0e1e['query'],_0x968c9f[_0x7c95('0x2c')]));if(_0x5b0e1e[_0x7c95('0x25')][_0x7c95('0x42')]){_0x193c5f[_0x7c95('0x23')]=_[_0x7c95('0x31')](_0x193c5f[_0x7c95('0x23')],{'$or':_['map'](_0x193c5f[_0x7c95('0x2e')],function(_0x2f7c5d){var _0x2185b2={};_0x2185b2[_0x2f7c5d]={'$like':'%'+_0x5b0e1e['query'][_0x7c95('0x42')]+'%'};return _0x2185b2;})});}_0x193c5f=_[_0x7c95('0x31')]({},_0x193c5f,_0x5b0e1e[_0x7c95('0x32')]);return _0x168a06[_0x7c95('0x4b')](_0x193c5f);}})[_0x7c95('0x13')](function(_0x502d26){if(_0x502d26){_0x26a849=_0x502d26[_0x7c95('0x2f')];if(!_0x5b0e1e['query'][_0x7c95('0x4f')](_0x7c95('0x3f'))){_0x193c5f['limit']=qs[_0x7c95('0xd')](_0x5b0e1e[_0x7c95('0x25')][_0x7c95('0xd')]);_0x193c5f[_0x7c95('0xf')]=qs[_0x7c95('0xf')](_0x5b0e1e[_0x7c95('0x25')][_0x7c95('0xf')]);}return _0x168a06[_0x7c95('0x4b')](_0x193c5f);}})['then'](function(_0x599b55){if(_0x599b55){return _0x599b55?{'count':_0x26a849,'rows':_0x599b55}:null;}})[_0x7c95('0x13')](respondWithResult(_0x521e39,null))['catch'](handleError(_0x521e39,null));};exports[_0x7c95('0x50')]=function(_0x348e11,_0x365caf){var _0x31138c=_0x348e11['body'][_0x7c95('0x51')];return db[_0x7c95('0x4d')][_0x7c95('0x43')]({'where':{'id':_0x31138c},'attributes':['id'],'include':[{'model':db[_0x7c95('0x44')],'as':_0x7c95('0x52'),'attributes':['id',_0x7c95('0x1b'),_0x7c95('0x53'),'voicePause','interface'],'raw':!![]}]})['then'](function(_0x2f1cb7){if(_0x2f1cb7){var _0x576299=_[_0x7c95('0x54')](_0x2f1cb7,function(_0x3945f6){var _0x5a4ed5=_0x3945f6[_0x7c95('0x14')]({'plain':!![]});return _0x5a4ed5[_0x7c95('0x52')];});return db['MailQueue'][_0x7c95('0x33')]({'where':{'id':_0x348e11[_0x7c95('0x29')]['id']}})['then'](function(_0x332e67){return db[_0x7c95('0x55')][_0x7c95('0x56')](function(_0x483905){return _0x332e67['addTeams'](_0x31138c,{'transaction':_0x483905})[_0x7c95('0x13')](function(){return BPromise[_0x7c95('0x57')](_0x576299,function(_0x4c5ab2){return db[_0x7c95('0x3d')]['findOrCreate']({'where':{'UserId':_0x4c5ab2['id'],'MailQueueId':_0x348e11[_0x7c95('0x29')]['id']},'transaction':_0x483905});});})['then'](function(){_0x576299['forEach'](function(_0xc4acc2){socket[_0x7c95('0x58')](_0x7c95('0x59'),{'UserId':_0xc4acc2['id'],'MailQueueId':_0x332e67['id']});});});});});}})[_0x7c95('0x13')](respondWithStatusCode(_0x365caf,null))[_0x7c95('0x27')](handleError(_0x365caf,null));};exports['removeTeams']=function(_0x396f53,_0x3c0a21){return db[_0x7c95('0x4d')]['findAll']({'where':{'id':_0x396f53[_0x7c95('0x25')][_0x7c95('0x51')]},'attributes':['id'],'include':[{'model':db[_0x7c95('0x44')],'as':_0x7c95('0x52'),'attributes':['id'],'raw':!![]}]})[_0x7c95('0x13')](handleEntityNotFound(_0x3c0a21,null))[_0x7c95('0x13')](function(_0x2615f8){var _0x3143d6=_[_0x7c95('0x1d')](_0x2615f8,'id');var _0x312a52=[];var _0x4f38c8=[];var _0x437cad=squel[_0x7c95('0x5a')]();_0x437cad[_0x7c95('0x5b')](_0x7c95('0x5c'))['from'](_0x7c95('0x5d'),'tq')[_0x7c95('0x5e')](_0x7c95('0x5f'),'ut',_0x7c95('0x60'))['where']('MailQueueId\x20=\x20?',_0x396f53['params']['id']);for(var _0x1e9a72=0x0;_0x1e9a72<_0x2615f8[_0x7c95('0x2f')];_0x1e9a72+=0x1){let _0x35939b=_0x2615f8[_0x1e9a72];for(var _0x281ed6=0x0;_0x281ed6<_0x35939b[_0x7c95('0x52')][_0x7c95('0x2f')];_0x281ed6+=0x1){let _0x42958c=_0x35939b['Agents'][_0x281ed6];var _0x5712ad=_0x437cad[_0x7c95('0x61')]();_0x5712ad[_0x7c95('0x23')](_0x7c95('0x62'),_0x42958c['id']);_0x4f38c8['push'](db[_0x7c95('0x55')][_0x7c95('0x25')](_0x5712ad[_0x7c95('0x63')](),{'type':db[_0x7c95('0x55')]['QueryTypes'][_0x7c95('0x64')]})[_0x7c95('0x13')](function(_0x27cf4b){if(_0x27cf4b[_0x7c95('0x2f')]===0x1){return _0x42958c['id'];}else{var _0x13edac=_['every'](_[_0x7c95('0x1d')](_0x27cf4b,_0x7c95('0x65')),function(_0x30a1c5){return _[_0x7c95('0x66')](_0x3143d6,_0x30a1c5);});if(_0x13edac){return _0x42958c['id'];}}}));}}return BPromise['all'](_0x4f38c8)[_0x7c95('0x13')](function(_0x1509d8){_0x312a52=_(_0x312a52)[_0x7c95('0x67')](_0x1509d8)[_0x7c95('0x68')]()[_0x7c95('0x69')]();return db[_0x7c95('0x1e')][_0x7c95('0x33')]({'where':{'id':_0x396f53[_0x7c95('0x29')]['id']}})[_0x7c95('0x13')](function(_0xe583d9){return db[_0x7c95('0x55')][_0x7c95('0x56')](function(_0x2d9e8e){return _0xe583d9[_0x7c95('0x6a')](_0x396f53[_0x7c95('0x25')][_0x7c95('0x51')],{'transaction':_0x2d9e8e})[_0x7c95('0x13')](function(){if(!_[_0x7c95('0x6b')](_0x312a52)){return _0xe583d9['removeAgents'](_0x312a52,{'transaction':_0x2d9e8e});}})[_0x7c95('0x13')](function(){_0x312a52[_0x7c95('0x6c')](function(_0x505271){socket[_0x7c95('0x58')](_0x7c95('0x6d'),{'UserId':_0x505271,'MailQueueId':_0xe583d9['id']});});});});});});})[_0x7c95('0x13')](respondWithStatusCode(_0x3c0a21,null))[_0x7c95('0x27')](handleError(_0x3c0a21,null));};exports[_0x7c95('0x6e')]=function(_0x7a4a6b,_0x4643e5){return db['MailQueue'][_0x7c95('0x33')]({'where':{'id':_0x7a4a6b[_0x7c95('0x29')]['id']}})['then'](handleEntityNotFound(_0x4643e5,null))[_0x7c95('0x13')](function(_0x57f513){if(_0x57f513){return _0x57f513[_0x7c95('0x6e')](_0x7a4a6b[_0x7c95('0x35')][_0x7c95('0x51')],_[_0x7c95('0x6f')](_0x7a4a6b[_0x7c95('0x35')],[_0x7c95('0x51'),'id'])||{})[_0x7c95('0x70')](function(_0x52af04){for(var _0x2ea4ec=0x0;_0x2ea4ec<_0x7a4a6b[_0x7c95('0x35')][_0x7c95('0x51')]['length'];_0x2ea4ec+=0x1){socket[_0x7c95('0x58')](_0x7c95('0x59'),{'UserId':Number(_0x7a4a6b[_0x7c95('0x35')][_0x7c95('0x51')][_0x2ea4ec]),'MailQueueId':Number(_0x7a4a6b[_0x7c95('0x29')]['id'])});}return _0x52af04;});}})[_0x7c95('0x13')](respondWithResult(_0x4643e5,null))[_0x7c95('0x27')](handleError(_0x4643e5,null));};exports['removeAgents']=function(_0x25e631,_0x3e0639){return db[_0x7c95('0x1e')][_0x7c95('0x33')]({'where':{'id':_0x25e631[_0x7c95('0x29')]['id']}})[_0x7c95('0x13')](handleEntityNotFound(_0x3e0639,null))[_0x7c95('0x13')](function(_0x5efed3){if(_0x5efed3){return _0x5efed3[_0x7c95('0x71')](_0x25e631[_0x7c95('0x25')][_0x7c95('0x51')])[_0x7c95('0x13')](function(){if(_['isArray'](_0x25e631[_0x7c95('0x25')][_0x7c95('0x51')])){for(var _0x55e041=0x0;_0x55e041<_0x25e631[_0x7c95('0x25')][_0x7c95('0x51')][_0x7c95('0x2f')];_0x55e041+=0x1){socket[_0x7c95('0x58')]('userMailQueue:remove',{'UserId':Number(_0x25e631['query'][_0x7c95('0x51')][_0x55e041]),'MailQueueId':Number(_0x25e631[_0x7c95('0x29')]['id'])});}}else{socket[_0x7c95('0x58')](_0x7c95('0x6d'),{'UserId':Number(_0x25e631['query'][_0x7c95('0x51')]),'MailQueueId':Number(_0x25e631[_0x7c95('0x29')]['id'])});}});}})['then'](respondWithStatusCode(_0x3e0639,null))['catch'](handleError(_0x3e0639,null));};exports[_0x7c95('0x72')]=function(_0x582708,_0x13c892){var _0x89d0e7={};var _0x23e286={};var _0x418956;var _0xe3336c;return db['MailQueue'][_0x7c95('0x4c')]({'where':{'id':_0x582708['params']['id']}})[_0x7c95('0x13')](handleEntityNotFound(_0x13c892,null))[_0x7c95('0x13')](function(_0x586406){if(_0x586406){_0x418956=_0x586406;_0x23e286['model']=_[_0x7c95('0x2b')](db[_0x7c95('0x44')][_0x7c95('0x1f')]);_0x23e286[_0x7c95('0x25')]=_[_0x7c95('0x2b')](_0x582708[_0x7c95('0x25')]);_0x23e286[_0x7c95('0x2c')]=_[_0x7c95('0x2d')](_0x23e286[_0x7c95('0x2a')],_0x23e286[_0x7c95('0x25')]);_0x89d0e7[_0x7c95('0x2e')]=_[_0x7c95('0x2d')](_0x23e286[_0x7c95('0x2a')],qs[_0x7c95('0x3e')](_0x582708[_0x7c95('0x25')][_0x7c95('0x3e')]));_0x89d0e7[_0x7c95('0x2e')]=_0x89d0e7[_0x7c95('0x2e')]['length']?_0x89d0e7['attributes']:_0x23e286[_0x7c95('0x2a')];_0x89d0e7[_0x7c95('0x40')]=qs[_0x7c95('0x41')](_0x582708[_0x7c95('0x25')][_0x7c95('0x41')]);_0x89d0e7[_0x7c95('0x23')]=qs[_0x7c95('0x2c')](_[_0x7c95('0x4e')](_0x582708[_0x7c95('0x25')],_0x23e286[_0x7c95('0x2c')]));if(_0x582708[_0x7c95('0x25')]['filter']){_0x89d0e7[_0x7c95('0x23')]=_[_0x7c95('0x31')](_0x89d0e7[_0x7c95('0x23')],{'$or':_[_0x7c95('0x1d')](_0x89d0e7[_0x7c95('0x2e')],function(_0x234afa){var _0x2a33a9={};_0x2a33a9[_0x234afa]={'$like':'%'+_0x582708[_0x7c95('0x25')][_0x7c95('0x42')]+'%'};return _0x2a33a9;})});}_0x89d0e7=_[_0x7c95('0x31')]({},_0x89d0e7,_0x582708['options']);return _0x418956[_0x7c95('0x72')](_0x89d0e7);}})['then'](function(_0x10f833){if(_0x10f833){_0xe3336c=_0x10f833['length'];if(!_0x582708[_0x7c95('0x25')][_0x7c95('0x4f')]('nolimit')){_0x89d0e7[_0x7c95('0xd')]=qs['limit'](_0x582708[_0x7c95('0x25')][_0x7c95('0xd')]);_0x89d0e7[_0x7c95('0xf')]=qs[_0x7c95('0xf')](_0x582708[_0x7c95('0x25')][_0x7c95('0xf')]);}return _0x418956[_0x7c95('0x72')](_0x89d0e7);}})[_0x7c95('0x13')](function(_0x131e37){if(_0x131e37){return _0x131e37?{'count':_0xe3336c,'rows':_0x131e37}:null;}})[_0x7c95('0x13')](respondWithResult(_0x13c892,null))[_0x7c95('0x27')](handleError(_0x13c892,null));};