Built motion from commit e6806ed6.|2.6.0
[motion2.git] / server / api / faxQueue / faxQueue.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 _0x2ee7=['pick','merge','type','VIRTUAL','FaxQueue','includeAll','include','findAll','catch','show','options','find','create','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','userProfileId','params','describe','getMembers','hasOwnProperty','order','FaxQueueId','filter','UserFaxQueue','findAndCountAll','faxPause','updatedAt','createdAt','%s/%s','SIP','getTeams','Team','addTeams','ids','Agents','online','voicePause','interface','flatMap','transaction','each','forEach','emit','userFaxQueue:save','removeTeams','User','select','from','team_has_fax_queues','join','ut.TeamId\x20=\x20tq.TeamId','FaxQueueId\x20=\x20?','clone','sequelize','toString','SELECT','every','TeamId','includes','compact','isEmpty','removeAgents','userFaxQueue:remove','addAgents','getAgents','findOne','rimraf','fast-json-patch','moment','bluebird','mustache','path','sox','to-csv','ejs','fs-extra','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','api','../../config/utils','../../mysqldb','defaults','socket.io-emitter','redis','register','sendStatus','end','offset','undefined','limit','count','status','set','Content-Range','json','apply','update','then','destroy','get','FaxQueues','error','name','index','map','rawAttributes','fieldName','key','model','query','keys','filters','intersection','attributes','fields','length','nolimit','sort','where'];(function(_0x102e37,_0x14a181){var _0x35a07c=function(_0x16577f){while(--_0x16577f){_0x102e37['push'](_0x102e37['shift']());}};_0x35a07c(++_0x14a181);}(_0x2ee7,0x1c6));var _0x72ee=function(_0x3ebd40,_0x322f2c){_0x3ebd40=_0x3ebd40-0x0;var _0x154a65=_0x2ee7[_0x3ebd40];return _0x154a65;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x72ee('0x0'));var zipdir=require('zip-dir');var jsonpatch=require(_0x72ee('0x1'));var rp=require('request-promise');var moment=require(_0x72ee('0x2'));var BPromise=require(_0x72ee('0x3'));var Mustache=require(_0x72ee('0x4'));var util=require('util');var path=require(_0x72ee('0x5'));var sox=require(_0x72ee('0x6'));var csv=require(_0x72ee('0x7'));var ejs=require(_0x72ee('0x8'));var fs=require('fs');var fs_extra=require(_0x72ee('0x9'));var _=require(_0x72ee('0xa'));var squel=require(_0x72ee('0xb'));var crypto=require(_0x72ee('0xc'));var jsforce=require(_0x72ee('0xd'));var deskjs=require(_0x72ee('0xe'));var toCsv=require('to-csv');var querystring=require(_0x72ee('0xf'));var Papa=require(_0x72ee('0x10'));var Redis=require(_0x72ee('0x11'));var authService=require(_0x72ee('0x12'));var qs=require(_0x72ee('0x13'));var as=require(_0x72ee('0x14'));var hardwareService=require('../../config/license/hardware');var logger=require('../../config/logger')(_0x72ee('0x15'));var utils=require(_0x72ee('0x16'));var config=require('../../config/environment');var licenseUtil=require('../../config/license/util');var db=require(_0x72ee('0x17'))['db'];config['redis']=_[_0x72ee('0x18')](config['redis'],{'host':'localhost','port':0x18eb});var socket=require(_0x72ee('0x19'))(new Redis(config[_0x72ee('0x1a')]));require('./faxQueue.socket')[_0x72ee('0x1b')](socket);function respondWithStatusCode(_0x4ca778,_0x598e1c){_0x598e1c=_0x598e1c||0xcc;return function(_0x3f2d58){if(_0x3f2d58){return _0x4ca778[_0x72ee('0x1c')](_0x598e1c);}return _0x4ca778['status'](_0x598e1c)[_0x72ee('0x1d')]();};}function respondWithResult(_0x240be0,_0xfd581){_0xfd581=_0xfd581||0xc8;return function(_0x42f1b5){if(_0x42f1b5){return _0x240be0['status'](_0xfd581)['json'](_0x42f1b5);}};}function respondWithFilteredResult(_0x3ab186,_0x4b34c5){return function(_0x2343d1){if(_0x2343d1){var _0x4378de=typeof _0x4b34c5[_0x72ee('0x1e')]===_0x72ee('0x1f')&&typeof _0x4b34c5[_0x72ee('0x20')]===_0x72ee('0x1f');var _0x3197db=_0x2343d1[_0x72ee('0x21')];var _0xb1ae9d=_0x4378de?0x0:_0x4b34c5['offset'];var _0x47f8ed=_0x4378de?_0x2343d1[_0x72ee('0x21')]:_0x4b34c5[_0x72ee('0x1e')]+_0x4b34c5[_0x72ee('0x20')];var _0x480127;if(_0x47f8ed>=_0x3197db){_0x47f8ed=_0x3197db;_0x480127=0xc8;}else{_0x480127=0xce;}_0x3ab186[_0x72ee('0x22')](_0x480127);return _0x3ab186[_0x72ee('0x23')](_0x72ee('0x24'),_0xb1ae9d+'-'+_0x47f8ed+'/'+_0x3197db)[_0x72ee('0x25')](_0x2343d1);}return null;};}function patchUpdates(_0x17e440){return function(_0x1ac8f7){try{jsonpatch[_0x72ee('0x26')](_0x1ac8f7,_0x17e440,!![]);}catch(_0xdb9b1d){return BPromise['reject'](_0xdb9b1d);}return _0x1ac8f7['save']();};}function saveUpdates(_0x5afa37,_0x24bc9f){return function(_0x36d597){if(_0x36d597){return _0x36d597[_0x72ee('0x27')](_0x5afa37)[_0x72ee('0x28')](function(_0x1cfdae){return _0x1cfdae;});}return null;};}function removeEntity(_0x5a0a83,_0x3996e7){return function(_0x2c664d){if(_0x2c664d){return _0x2c664d[_0x72ee('0x29')]()[_0x72ee('0x28')](function(){var _0x38fa12=_0x2c664d[_0x72ee('0x2a')]({'plain':!![]});var _0x177fc3=_0x72ee('0x2b');return db['UserProfileResource'][_0x72ee('0x29')]({'where':{'type':_0x177fc3,'resourceId':_0x38fa12['id']}})[_0x72ee('0x28')](function(){return _0x2c664d;});})[_0x72ee('0x28')](function(){_0x5a0a83[_0x72ee('0x22')](0xcc)[_0x72ee('0x1d')]();});}};}function handleEntityNotFound(_0x5549de,_0x2f8703){return function(_0xe3622){if(!_0xe3622){_0x5549de[_0x72ee('0x1c')](0x194);}return _0xe3622;};}function handleError(_0xe771,_0x5f0bfc){_0x5f0bfc=_0x5f0bfc||0x1f4;return function(_0x30cb59){logger[_0x72ee('0x2c')](_0x30cb59['stack']);if(_0x30cb59[_0x72ee('0x2d')]){delete _0x30cb59[_0x72ee('0x2d')];}_0xe771[_0x72ee('0x22')](_0x5f0bfc)['send'](_0x30cb59);};}exports[_0x72ee('0x2e')]=function(_0x227b62,_0x7c0e9){var _0x368bdf={},_0x51cf40={},_0x230d5e={'count':0x0,'rows':[]};var _0x35b4c3=_[_0x72ee('0x2f')](db['FaxQueue'][_0x72ee('0x30')],function(_0x135c27){return{'name':_0x135c27[_0x72ee('0x31')],'type':_0x135c27['type'][_0x72ee('0x32')]};});_0x51cf40[_0x72ee('0x33')]=_[_0x72ee('0x2f')](_0x35b4c3,_0x72ee('0x2d'));_0x51cf40[_0x72ee('0x34')]=_[_0x72ee('0x35')](_0x227b62[_0x72ee('0x34')]);_0x51cf40[_0x72ee('0x36')]=_[_0x72ee('0x37')](_0x51cf40['model'],_0x51cf40[_0x72ee('0x34')]);_0x368bdf[_0x72ee('0x38')]=_['intersection'](_0x51cf40[_0x72ee('0x33')],qs[_0x72ee('0x39')](_0x227b62['query']['fields']));_0x368bdf['attributes']=_0x368bdf[_0x72ee('0x38')][_0x72ee('0x3a')]?_0x368bdf[_0x72ee('0x38')]:_0x51cf40[_0x72ee('0x33')];if(!_0x227b62[_0x72ee('0x34')]['hasOwnProperty'](_0x72ee('0x3b'))){_0x368bdf[_0x72ee('0x20')]=qs['limit'](_0x227b62[_0x72ee('0x34')][_0x72ee('0x20')]);_0x368bdf[_0x72ee('0x1e')]=qs[_0x72ee('0x1e')](_0x227b62['query'][_0x72ee('0x1e')]);}_0x368bdf['order']=qs[_0x72ee('0x3c')](_0x227b62[_0x72ee('0x34')]['sort']);_0x368bdf[_0x72ee('0x3d')]=qs['filters'](_[_0x72ee('0x3e')](_0x227b62[_0x72ee('0x34')],_0x51cf40[_0x72ee('0x36')]),_0x35b4c3);if(_0x227b62[_0x72ee('0x34')]['filter']){_0x368bdf[_0x72ee('0x3d')]=_[_0x72ee('0x3f')](_0x368bdf[_0x72ee('0x3d')],{'$or':_['map'](_0x35b4c3,function(_0x35098e){if(_0x35098e[_0x72ee('0x40')]!==_0x72ee('0x41')){var _0x260995={};_0x260995[_0x35098e[_0x72ee('0x2d')]]={'$like':'%'+_0x227b62[_0x72ee('0x34')]['filter']+'%'};return _0x260995;}})});}_0x368bdf=_[_0x72ee('0x3f')]({},_0x368bdf,_0x227b62['options']);var _0x5273fd={'where':_0x368bdf[_0x72ee('0x3d')]};return db[_0x72ee('0x42')]['count'](_0x5273fd)['then'](function(_0xe76546){_0x230d5e['count']=_0xe76546;if(_0x227b62['query'][_0x72ee('0x43')]){_0x368bdf[_0x72ee('0x44')]=[{'all':!![]}];}return db[_0x72ee('0x42')][_0x72ee('0x45')](_0x368bdf);})['then'](function(_0x503150){_0x230d5e['rows']=_0x503150;return _0x230d5e;})[_0x72ee('0x28')](respondWithFilteredResult(_0x7c0e9,_0x368bdf))[_0x72ee('0x46')](handleError(_0x7c0e9,null));};exports[_0x72ee('0x47')]=function(_0x1fda41,_0x11b927){var _0x369f72={'raw':!![],'where':{'id':_0x1fda41['params']['id']}},_0x4697b0={};_0x4697b0[_0x72ee('0x33')]=_[_0x72ee('0x35')](db['FaxQueue'][_0x72ee('0x30')]);_0x4697b0['query']=_[_0x72ee('0x35')](_0x1fda41['query']);_0x4697b0[_0x72ee('0x36')]=_[_0x72ee('0x37')](_0x4697b0[_0x72ee('0x33')],_0x4697b0[_0x72ee('0x34')]);_0x369f72[_0x72ee('0x38')]=_['intersection'](_0x4697b0[_0x72ee('0x33')],qs[_0x72ee('0x39')](_0x1fda41[_0x72ee('0x34')][_0x72ee('0x39')]));_0x369f72[_0x72ee('0x38')]=_0x369f72[_0x72ee('0x38')][_0x72ee('0x3a')]?_0x369f72[_0x72ee('0x38')]:_0x4697b0[_0x72ee('0x33')];if(_0x1fda41[_0x72ee('0x34')][_0x72ee('0x43')]){_0x369f72[_0x72ee('0x44')]=[{'all':!![]}];}_0x369f72=_[_0x72ee('0x3f')]({},_0x369f72,_0x1fda41[_0x72ee('0x48')]);return db[_0x72ee('0x42')][_0x72ee('0x49')](_0x369f72)[_0x72ee('0x28')](handleEntityNotFound(_0x11b927,null))[_0x72ee('0x28')](respondWithResult(_0x11b927,null))[_0x72ee('0x46')](handleError(_0x11b927,null));};exports[_0x72ee('0x4a')]=function(_0x15b381,_0x199794){return db[_0x72ee('0x42')][_0x72ee('0x4a')](_0x15b381[_0x72ee('0x4b')],{})[_0x72ee('0x28')](function(_0x477969){var _0x166b74=_0x15b381[_0x72ee('0x4c')][_0x72ee('0x2a')]({'plain':!![]});if(!_0x166b74)throw new Error(_0x72ee('0x4d'));if(_0x166b74['role']===_0x72ee('0x4c')){var _0x4dca6a=_0x477969[_0x72ee('0x2a')]({'plain':!![]});var _0x4764e5=_0x72ee('0x2b');return db['UserProfileSection'][_0x72ee('0x49')]({'where':{'name':_0x4764e5,'userProfileId':_0x166b74[_0x72ee('0x4e')]},'raw':!![]})['then'](function(_0x142255){if(_0x142255&&_0x142255['autoAssociation']===0x0){return db['UserProfileResource'][_0x72ee('0x4a')]({'name':_0x4dca6a['name'],'resourceId':_0x4dca6a['id'],'type':_0x142255[_0x72ee('0x2d')],'sectionId':_0x142255['id']},{})[_0x72ee('0x28')](function(){return _0x477969;});}else{return _0x477969;}})[_0x72ee('0x46')](function(_0x557496){logger[_0x72ee('0x2c')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x557496);throw _0x557496;});}return _0x477969;})['then'](respondWithResult(_0x199794,0xc9))[_0x72ee('0x46')](handleError(_0x199794,null));};exports[_0x72ee('0x27')]=function(_0x572cea,_0x470942){if(_0x572cea[_0x72ee('0x4b')]['id']){delete _0x572cea['body']['id'];}return db['FaxQueue'][_0x72ee('0x49')]({'where':{'id':_0x572cea[_0x72ee('0x4f')]['id']}})[_0x72ee('0x28')](handleEntityNotFound(_0x470942,null))[_0x72ee('0x28')](saveUpdates(_0x572cea['body'],null))[_0x72ee('0x28')](respondWithResult(_0x470942,null))[_0x72ee('0x46')](handleError(_0x470942,null));};exports[_0x72ee('0x29')]=function(_0x44c9d8,_0x354b98){return db['FaxQueue'][_0x72ee('0x49')]({'where':{'id':_0x44c9d8[_0x72ee('0x4f')]['id']}})[_0x72ee('0x28')](handleEntityNotFound(_0x354b98,null))[_0x72ee('0x28')](removeEntity(_0x354b98,null))[_0x72ee('0x46')](handleError(_0x354b98,null));};exports[_0x72ee('0x50')]=function(_0x1e717e,_0x5f4db6){return db[_0x72ee('0x42')]['describe']()[_0x72ee('0x28')](respondWithResult(_0x5f4db6,null))['catch'](handleError(_0x5f4db6,null));};exports[_0x72ee('0x51')]=function(_0x331d2a,_0x4c42ba,_0x2e310b){var _0x22b42a={'raw':!![],'where':{}},_0x2e0ea2={},_0x566e75;return db[_0x72ee('0x42')]['findOne']({'where':{'id':_0x331d2a[_0x72ee('0x4f')]['id']}})['then'](handleEntityNotFound(_0x4c42ba,null))[_0x72ee('0x28')](function(_0x44e3bf){if(_0x44e3bf){_0x566e75=_0x44e3bf[_0x72ee('0x2a')]({'plain':!![]});_0x2e0ea2['model']=_['keys'](db['UserFaxQueue']['rawAttributes']);_0x2e0ea2[_0x72ee('0x34')]=_[_0x72ee('0x35')](_0x331d2a[_0x72ee('0x34')]);_0x2e0ea2[_0x72ee('0x36')]=_[_0x72ee('0x37')](_0x2e0ea2[_0x72ee('0x33')],_0x2e0ea2['query']);_0x22b42a['attributes']=_[_0x72ee('0x37')](_0x2e0ea2['model'],qs['fields'](_0x331d2a[_0x72ee('0x34')][_0x72ee('0x39')]));_0x22b42a[_0x72ee('0x38')]=_0x22b42a[_0x72ee('0x38')][_0x72ee('0x3a')]?_0x22b42a['attributes']:_0x2e0ea2[_0x72ee('0x33')];if(!_0x331d2a[_0x72ee('0x34')][_0x72ee('0x52')](_0x72ee('0x3b'))){_0x22b42a[_0x72ee('0x20')]=qs[_0x72ee('0x20')](_0x331d2a[_0x72ee('0x34')][_0x72ee('0x20')]);_0x22b42a[_0x72ee('0x1e')]=qs[_0x72ee('0x1e')](_0x331d2a[_0x72ee('0x34')][_0x72ee('0x1e')]);}_0x22b42a[_0x72ee('0x53')]=qs['sort'](_0x331d2a['query']['sort']);_0x22b42a['where']=qs[_0x72ee('0x36')](_[_0x72ee('0x3e')](_0x331d2a['query'],_0x2e0ea2[_0x72ee('0x36')]));_0x22b42a[_0x72ee('0x3d')][_0x72ee('0x54')]=_0x44e3bf['id'];if(_0x331d2a[_0x72ee('0x34')][_0x72ee('0x55')]){_0x22b42a[_0x72ee('0x3d')]=_[_0x72ee('0x3f')](_0x22b42a[_0x72ee('0x3d')],{'$or':_[_0x72ee('0x2f')](_0x22b42a[_0x72ee('0x38')],function(_0x5b859a){var _0x3fecbf={};_0x3fecbf[_0x5b859a]={'$like':'%'+_0x331d2a[_0x72ee('0x34')][_0x72ee('0x55')]+'%'};return _0x3fecbf;})});}_0x22b42a=_[_0x72ee('0x3f')]({},_0x22b42a,_0x331d2a[_0x72ee('0x48')]);return db[_0x72ee('0x56')][_0x72ee('0x45')](_0x22b42a);}})[_0x72ee('0x28')](function(_0x11cd26){if(_0x11cd26){return db['User'][_0x72ee('0x57')]({'where':{'id':_[_0x72ee('0x2f')](_0x11cd26,'UserId'),'role':'agent'},'attributes':['id',_0x72ee('0x2d'),_0x72ee('0x58'),_0x72ee('0x59'),_0x72ee('0x5a')]});}})['then'](function(_0x18717f){if(_0x18717f){return{'count':_0x18717f[_0x72ee('0x21')],'rows':_[_0x72ee('0x2f')](_0x18717f['rows'],function(_0x452bde){return{'membername':_0x452bde[_0x72ee('0x2d')],'UserId':_0x452bde['id'],'queue_name':_0x566e75[_0x72ee('0x2d')],'FaxQueueId':_0x566e75['id'],'interface':util['format'](_0x72ee('0x5b'),_0x72ee('0x5c'),_0x452bde[_0x72ee('0x2d')]),'penalty':0x0,'paused':_0x452bde[_0x72ee('0x58')],'createdAt':_0x452bde[_0x72ee('0x5a')],'updatedAt':_0x452bde[_0x72ee('0x59')]};})};}else{return{'count':0x0,'rows':[]};}})['then'](respondWithFilteredResult(_0x4c42ba,_0x22b42a))[_0x72ee('0x46')](handleError(_0x4c42ba,null));};exports[_0x72ee('0x5d')]=function(_0x1f0f66,_0x433a14,_0x5a6fc4){var _0x250eb8={};var _0x508914={};var _0x42ff77;var _0x219307;return db['FaxQueue']['findOne']({'where':{'id':_0x1f0f66[_0x72ee('0x4f')]['id']}})[_0x72ee('0x28')](handleEntityNotFound(_0x433a14,null))['then'](function(_0x4dab81){if(_0x4dab81){_0x42ff77=_0x4dab81;_0x508914[_0x72ee('0x33')]=_[_0x72ee('0x35')](db[_0x72ee('0x5e')][_0x72ee('0x30')]);_0x508914[_0x72ee('0x34')]=_[_0x72ee('0x35')](_0x1f0f66['query']);_0x508914[_0x72ee('0x36')]=_['intersection'](_0x508914[_0x72ee('0x33')],_0x508914[_0x72ee('0x34')]);_0x250eb8[_0x72ee('0x38')]=_[_0x72ee('0x37')](_0x508914[_0x72ee('0x33')],qs[_0x72ee('0x39')](_0x1f0f66[_0x72ee('0x34')][_0x72ee('0x39')]));_0x250eb8[_0x72ee('0x38')]=_0x250eb8['attributes']['length']?_0x250eb8[_0x72ee('0x38')]:_0x508914[_0x72ee('0x33')];_0x250eb8[_0x72ee('0x53')]=qs['sort'](_0x1f0f66[_0x72ee('0x34')][_0x72ee('0x3c')]);_0x250eb8[_0x72ee('0x3d')]=qs[_0x72ee('0x36')](_[_0x72ee('0x3e')](_0x1f0f66['query'],_0x508914[_0x72ee('0x36')]));if(_0x1f0f66[_0x72ee('0x34')]['filter']){_0x250eb8['where']=_[_0x72ee('0x3f')](_0x250eb8[_0x72ee('0x3d')],{'$or':_['map'](_0x250eb8[_0x72ee('0x38')],function(_0x4fbe32){var _0x3d4ad6={};_0x3d4ad6[_0x4fbe32]={'$like':'%'+_0x1f0f66['query'][_0x72ee('0x55')]+'%'};return _0x3d4ad6;})});}_0x250eb8=_[_0x72ee('0x3f')]({},_0x250eb8,_0x1f0f66[_0x72ee('0x48')]);return _0x42ff77[_0x72ee('0x5d')](_0x250eb8);}})['then'](function(_0x27fea2){if(_0x27fea2){_0x219307=_0x27fea2[_0x72ee('0x3a')];if(!_0x1f0f66[_0x72ee('0x34')][_0x72ee('0x52')](_0x72ee('0x3b'))){_0x250eb8[_0x72ee('0x20')]=qs[_0x72ee('0x20')](_0x1f0f66[_0x72ee('0x34')][_0x72ee('0x20')]);_0x250eb8[_0x72ee('0x1e')]=qs[_0x72ee('0x1e')](_0x1f0f66[_0x72ee('0x34')][_0x72ee('0x1e')]);}return _0x42ff77[_0x72ee('0x5d')](_0x250eb8);}})[_0x72ee('0x28')](function(_0x3fe04f){if(_0x3fe04f){return _0x3fe04f?{'count':_0x219307,'rows':_0x3fe04f}:null;}})[_0x72ee('0x28')](respondWithResult(_0x433a14,null))[_0x72ee('0x46')](handleError(_0x433a14,null));};exports[_0x72ee('0x5f')]=function(_0x3cb65a,_0x337577,_0x92de4b){var _0x49d895=_0x3cb65a[_0x72ee('0x4b')][_0x72ee('0x60')];return db[_0x72ee('0x5e')]['findAll']({'where':{'id':_0x49d895},'attributes':['id'],'include':[{'model':db['User'],'as':_0x72ee('0x61'),'attributes':['id','name',_0x72ee('0x62'),_0x72ee('0x63'),_0x72ee('0x64')],'raw':!![]}]})['then'](function(_0x33a7b4){if(_0x33a7b4){var _0x480c56=_[_0x72ee('0x65')](_0x33a7b4,function(_0x18a216){var _0x17f7d8=_0x18a216[_0x72ee('0x2a')]({'plain':!![]});return _0x17f7d8[_0x72ee('0x61')];});return db[_0x72ee('0x42')]['find']({'where':{'id':_0x3cb65a[_0x72ee('0x4f')]['id']}})['then'](function(_0x38889a){return db['sequelize'][_0x72ee('0x66')](function(_0x39b402){return _0x38889a[_0x72ee('0x5f')](_0x49d895,{'transaction':_0x39b402})['then'](function(){return BPromise[_0x72ee('0x67')](_0x480c56,function(_0x5f4231){return db[_0x72ee('0x56')]['findOrCreate']({'where':{'UserId':_0x5f4231['id'],'FaxQueueId':_0x3cb65a[_0x72ee('0x4f')]['id']},'transaction':_0x39b402});});})[_0x72ee('0x28')](function(){_0x480c56[_0x72ee('0x68')](function(_0x1c772d){socket[_0x72ee('0x69')](_0x72ee('0x6a'),{'UserId':_0x1c772d['id'],'FaxQueueId':_0x38889a['id']});});});});});}})['then'](respondWithStatusCode(_0x337577,null))['catch'](handleError(_0x337577,null));};exports[_0x72ee('0x6b')]=function(_0x5d945f,_0x29cbc4,_0x3f8292){return db[_0x72ee('0x5e')][_0x72ee('0x45')]({'where':{'id':_0x5d945f[_0x72ee('0x34')][_0x72ee('0x60')]},'attributes':['id'],'include':[{'model':db[_0x72ee('0x6c')],'as':_0x72ee('0x61'),'attributes':['id'],'raw':!![]}]})[_0x72ee('0x28')](handleEntityNotFound(_0x29cbc4,null))['then'](function(_0x1e6131){var _0x2cefd1=_[_0x72ee('0x2f')](_0x1e6131,'id');var _0x31e6e5=[];var _0x35c5f6=[];var _0x5f0b8e=squel[_0x72ee('0x6d')]();_0x5f0b8e['field']('tq.TeamId')[_0x72ee('0x6e')](_0x72ee('0x6f'),'tq')[_0x72ee('0x70')]('user_has_teams','ut',_0x72ee('0x71'))[_0x72ee('0x3d')](_0x72ee('0x72'),_0x5d945f[_0x72ee('0x4f')]['id']);for(var _0x558a66=0x0;_0x558a66<_0x1e6131[_0x72ee('0x3a')];_0x558a66+=0x1){let _0x31e177=_0x1e6131[_0x558a66];for(var _0x1bd552=0x0;_0x1bd552<_0x31e177[_0x72ee('0x61')][_0x72ee('0x3a')];_0x1bd552+=0x1){let _0x3f1a6b=_0x31e177[_0x72ee('0x61')][_0x1bd552];var _0x2e2526=_0x5f0b8e[_0x72ee('0x73')]();_0x2e2526[_0x72ee('0x3d')]('ut.UserId\x20=\x20?',_0x3f1a6b['id']);_0x35c5f6['push'](db[_0x72ee('0x74')][_0x72ee('0x34')](_0x2e2526[_0x72ee('0x75')](),{'type':db[_0x72ee('0x74')]['QueryTypes'][_0x72ee('0x76')]})[_0x72ee('0x28')](function(_0x46ac54){if(_0x46ac54[_0x72ee('0x3a')]===0x1){return _0x3f1a6b['id'];}else{var _0x421c3e=_[_0x72ee('0x77')](_[_0x72ee('0x2f')](_0x46ac54,_0x72ee('0x78')),function(_0x16419c){return _[_0x72ee('0x79')](_0x2cefd1,_0x16419c);});if(_0x421c3e){return _0x3f1a6b['id'];}}}));}}return BPromise['all'](_0x35c5f6)[_0x72ee('0x28')](function(_0x4a0dc8){_0x31e6e5=_(_0x31e6e5)['union'](_0x4a0dc8)[_0x72ee('0x7a')]()['value']();return db['FaxQueue']['find']({'where':{'id':_0x5d945f['params']['id']}})['then'](function(_0x37cfce){return db[_0x72ee('0x74')][_0x72ee('0x66')](function(_0x4cc799){return _0x37cfce[_0x72ee('0x6b')](_0x5d945f['query'][_0x72ee('0x60')],{'transaction':_0x4cc799})[_0x72ee('0x28')](function(){if(!_[_0x72ee('0x7b')](_0x31e6e5)){return _0x37cfce[_0x72ee('0x7c')](_0x31e6e5,{'transaction':_0x4cc799});}})[_0x72ee('0x28')](function(){_0x31e6e5[_0x72ee('0x68')](function(_0x1f5bb7){socket[_0x72ee('0x69')](_0x72ee('0x7d'),{'UserId':_0x1f5bb7,'FaxQueueId':_0x37cfce['id']});});});});});});})[_0x72ee('0x28')](respondWithStatusCode(_0x29cbc4,null))[_0x72ee('0x46')](handleError(_0x29cbc4,null));};exports[_0x72ee('0x7e')]=function(_0x46d91c,_0x44abcb,_0x2a3d25){return db[_0x72ee('0x42')]['find']({'where':{'id':_0x46d91c['params']['id']}})[_0x72ee('0x28')](handleEntityNotFound(_0x44abcb,null))[_0x72ee('0x28')](function(_0x1d76d7){if(_0x1d76d7){return _0x1d76d7[_0x72ee('0x7e')](_0x46d91c[_0x72ee('0x4b')][_0x72ee('0x60')],_['omit'](_0x46d91c[_0x72ee('0x4b')],[_0x72ee('0x60'),'id'])||{})['spread'](function(_0x294dee){for(var _0xd5e943=0x0;_0xd5e943<_0x46d91c[_0x72ee('0x4b')]['ids'][_0x72ee('0x3a')];_0xd5e943+=0x1){socket[_0x72ee('0x69')](_0x72ee('0x6a'),{'UserId':Number(_0x46d91c[_0x72ee('0x4b')][_0x72ee('0x60')][_0xd5e943]),'FaxQueueId':Number(_0x46d91c[_0x72ee('0x4f')]['id'])});}return _0x294dee;});}})[_0x72ee('0x28')](respondWithResult(_0x44abcb,null))[_0x72ee('0x46')](handleError(_0x44abcb,null));};exports[_0x72ee('0x7c')]=function(_0x337ffd,_0x40cfac,_0x5af232){return db[_0x72ee('0x42')][_0x72ee('0x49')]({'where':{'id':_0x337ffd[_0x72ee('0x4f')]['id']}})[_0x72ee('0x28')](handleEntityNotFound(_0x40cfac,null))[_0x72ee('0x28')](function(_0x2a5f52){if(_0x2a5f52){return _0x2a5f52[_0x72ee('0x7c')](_0x337ffd['query'][_0x72ee('0x60')])[_0x72ee('0x28')](function(){if(_['isArray'](_0x337ffd['query']['ids'])){for(var _0x3eb5a0=0x0;_0x3eb5a0<_0x337ffd[_0x72ee('0x34')][_0x72ee('0x60')][_0x72ee('0x3a')];_0x3eb5a0+=0x1){socket[_0x72ee('0x69')](_0x72ee('0x7d'),{'UserId':Number(_0x337ffd[_0x72ee('0x34')]['ids'][_0x3eb5a0]),'FaxQueueId':Number(_0x337ffd[_0x72ee('0x4f')]['id'])});}}else{socket[_0x72ee('0x69')](_0x72ee('0x7d'),{'UserId':Number(_0x337ffd[_0x72ee('0x34')]['ids']),'FaxQueueId':Number(_0x337ffd['params']['id'])});}});}})[_0x72ee('0x28')](respondWithStatusCode(_0x40cfac,null))[_0x72ee('0x46')](handleError(_0x40cfac,null));};exports[_0x72ee('0x7f')]=function(_0x2bc501,_0x18e1ba,_0x367f5d){var _0xb1433b={};var _0x2e19c1={};var _0x2a3d5f;var _0x19fa9c;return db[_0x72ee('0x42')][_0x72ee('0x80')]({'where':{'id':_0x2bc501['params']['id']}})[_0x72ee('0x28')](handleEntityNotFound(_0x18e1ba,null))['then'](function(_0xcb245d){if(_0xcb245d){_0x2a3d5f=_0xcb245d;_0x2e19c1['model']=_['keys'](db['User'][_0x72ee('0x30')]);_0x2e19c1[_0x72ee('0x34')]=_[_0x72ee('0x35')](_0x2bc501['query']);_0x2e19c1['filters']=_[_0x72ee('0x37')](_0x2e19c1[_0x72ee('0x33')],_0x2e19c1[_0x72ee('0x34')]);_0xb1433b[_0x72ee('0x38')]=_[_0x72ee('0x37')](_0x2e19c1[_0x72ee('0x33')],qs[_0x72ee('0x39')](_0x2bc501[_0x72ee('0x34')][_0x72ee('0x39')]));_0xb1433b['attributes']=_0xb1433b[_0x72ee('0x38')][_0x72ee('0x3a')]?_0xb1433b[_0x72ee('0x38')]:_0x2e19c1[_0x72ee('0x33')];_0xb1433b[_0x72ee('0x53')]=qs['sort'](_0x2bc501[_0x72ee('0x34')][_0x72ee('0x3c')]);_0xb1433b[_0x72ee('0x3d')]=qs[_0x72ee('0x36')](_[_0x72ee('0x3e')](_0x2bc501['query'],_0x2e19c1[_0x72ee('0x36')]));if(_0x2bc501[_0x72ee('0x34')][_0x72ee('0x55')]){_0xb1433b[_0x72ee('0x3d')]=_['merge'](_0xb1433b[_0x72ee('0x3d')],{'$or':_['map'](_0xb1433b[_0x72ee('0x38')],function(_0x2f10ab){var _0x1f21cf={};_0x1f21cf[_0x2f10ab]={'$like':'%'+_0x2bc501[_0x72ee('0x34')][_0x72ee('0x55')]+'%'};return _0x1f21cf;})});}_0xb1433b=_[_0x72ee('0x3f')]({},_0xb1433b,_0x2bc501[_0x72ee('0x48')]);return _0x2a3d5f['getAgents'](_0xb1433b);}})[_0x72ee('0x28')](function(_0x301643){if(_0x301643){_0x19fa9c=_0x301643[_0x72ee('0x3a')];if(!_0x2bc501[_0x72ee('0x34')][_0x72ee('0x52')]('nolimit')){_0xb1433b[_0x72ee('0x20')]=qs[_0x72ee('0x20')](_0x2bc501['query'][_0x72ee('0x20')]);_0xb1433b[_0x72ee('0x1e')]=qs[_0x72ee('0x1e')](_0x2bc501['query']['offset']);}return _0x2a3d5f['getAgents'](_0xb1433b);}})[_0x72ee('0x28')](function(_0xba942a){if(_0xba942a){return _0xba942a?{'count':_0x19fa9c,'rows':_0xba942a}:null;}})[_0x72ee('0x28')](respondWithResult(_0x18e1ba,null))['catch'](handleError(_0x18e1ba,null));};