5bd9df4d6012e76b1802fb326880657dc8e61df1
[motion2.git] / server / api / team / team.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 _0x79bc=['save','then','destroy','get','Teams','UserProfileResource','error','name','send','Team','rawAttributes','fieldName','type','key','model','keys','filters','intersection','fields','length','attributes','hasOwnProperty','limit','query','order','sort','where','pick','filter','merge','map','VIRTUAL','includeAll','include','rows','catch','show','params','filtears','find','create','body','role','user','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','update','getQueues','Sequelize','ValidationError','Unknown\x20channel','capitalize','channel','Queue','options','toLowerCase','isValidChannel','add','Queues','ids','removeQueues','remove','addAgents','Voice','Chat','Mail','Openchannel','each','User','voicePause','interface','UserVoiceQueueRt','format','SIP/%s','omit','spread','emit','removeAgents','voice','chat','mail','sms','fax','openchannel','whatsapp','isArray','userTeam:remove','getAgents','findOne','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','ejs','squel','crypto','desk.js','to-csv','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/environment','../../mysqldb','redis','defaults','localhost','socket.io-emitter','./team.socket','register','status','end','json','count','offset','set','Content-Range','apply','reject'];(function(_0x303b06,_0x570a99){var _0x3a1ca0=function(_0x10354d){while(--_0x10354d){_0x303b06['push'](_0x303b06['shift']());}};_0x3a1ca0(++_0x570a99);}(_0x79bc,0x1e7));var _0xc79b=function(_0x122ef9,_0x451d2a){_0x122ef9=_0x122ef9-0x0;var _0x42fba0=_0x79bc[_0x122ef9];return _0x42fba0;};'use strict';var pdf=require(_0xc79b('0x0'));var emlformat=require(_0xc79b('0x1'));var rimraf=require(_0xc79b('0x2'));var zipdir=require(_0xc79b('0x3'));var jsonpatch=require(_0xc79b('0x4'));var rp=require(_0xc79b('0x5'));var moment=require(_0xc79b('0x6'));var BPromise=require(_0xc79b('0x7'));var Mustache=require(_0xc79b('0x8'));var util=require(_0xc79b('0x9'));var path=require(_0xc79b('0xa'));var sox=require(_0xc79b('0xb'));var csv=require('to-csv');var ejs=require(_0xc79b('0xc'));var fs=require('fs');var _=require('lodash');var squel=require(_0xc79b('0xd'));var crypto=require(_0xc79b('0xe'));var jsforce=require('jsforce');var deskjs=require(_0xc79b('0xf'));var toCsv=require(_0xc79b('0x10'));var querystring=require(_0xc79b('0x11'));var Papa=require(_0xc79b('0x12'));var Redis=require('ioredis');var authService=require(_0xc79b('0x13'));var qs=require(_0xc79b('0x14'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xc79b('0x15'));var logger=require(_0xc79b('0x16'))(_0xc79b('0x17'));var utils=require('../../config/utils');var config=require(_0xc79b('0x18'));var licenseUtil=require('../../config/license/util');var db=require(_0xc79b('0x19'))['db'];config[_0xc79b('0x1a')]=_[_0xc79b('0x1b')](config[_0xc79b('0x1a')],{'host':_0xc79b('0x1c'),'port':0x18eb});var socket=require(_0xc79b('0x1d'))(new Redis(config['redis']));require(_0xc79b('0x1e'))[_0xc79b('0x1f')](socket);function respondWithStatusCode(_0x175eb4,_0x2f5366){_0x2f5366=_0x2f5366||0xcc;return function(_0x3ea054){if(_0x3ea054){return _0x175eb4['sendStatus'](_0x2f5366);}return _0x175eb4[_0xc79b('0x20')](_0x2f5366)[_0xc79b('0x21')]();};}function respondWithResult(_0x50959e,_0x7ea4be){_0x7ea4be=_0x7ea4be||0xc8;return function(_0x88f646){if(_0x88f646){return _0x50959e['status'](_0x7ea4be)[_0xc79b('0x22')](_0x88f646);}};}function respondWithFilteredResult(_0x2b8839,_0xb53790){return function(_0x5bdc28){if(_0x5bdc28){var _0x773e41=_0x5bdc28[_0xc79b('0x23')],_0x296579=_0xb53790[_0xc79b('0x24')],_0x293147=_0xb53790[_0xc79b('0x24')]+_0xb53790['limit'],_0x25a57c;if(_0x293147>=_0x773e41){_0x293147=_0x773e41;_0x25a57c=0xc8;}else{_0x25a57c=0xce;}_0x2b8839[_0xc79b('0x20')](_0x25a57c);return _0x2b8839[_0xc79b('0x25')](_0xc79b('0x26'),_0x296579+'-'+_0x293147+'/'+_0x773e41)[_0xc79b('0x22')](_0x5bdc28);}return null;};}function patchUpdates(_0x47be6a){return function(_0x3f24e6){try{jsonpatch[_0xc79b('0x27')](_0x3f24e6,_0x47be6a,!![]);}catch(_0x551b23){return BPromise[_0xc79b('0x28')](_0x551b23);}return _0x3f24e6[_0xc79b('0x29')]();};}function saveUpdates(_0x5d5ae8,_0x5c898d){return function(_0x537f7c){if(_0x537f7c){return _0x537f7c['update'](_0x5d5ae8)[_0xc79b('0x2a')](function(_0x316af7){return _0x316af7;});}return null;};}function removeEntity(_0x4e1a9c,_0x367ec4){return function(_0x555053){if(_0x555053){return _0x555053[_0xc79b('0x2b')]()['then'](function(){var _0x2a4225=_0x555053[_0xc79b('0x2c')]({'plain':!![]});var _0x319471=_0xc79b('0x2d');return db[_0xc79b('0x2e')]['destroy']({'where':{'type':_0x319471,'resourceId':_0x2a4225['id']}})[_0xc79b('0x2a')](function(){return _0x555053;});})[_0xc79b('0x2a')](function(){_0x4e1a9c[_0xc79b('0x20')](0xcc)['end']();});}};}function handleEntityNotFound(_0x55a62b,_0x52eef8){return function(_0x141289){if(!_0x141289){_0x55a62b['sendStatus'](0x194);}return _0x141289;};}function handleError(_0x40271e,_0xcd888a){_0xcd888a=_0xcd888a||0x1f4;return function(_0x253b3e){logger[_0xc79b('0x2f')](_0x253b3e['stack']);if(_0x253b3e[_0xc79b('0x30')]){delete _0x253b3e[_0xc79b('0x30')];}_0x40271e['status'](_0xcd888a)[_0xc79b('0x31')](_0x253b3e);};}exports['index']=function(_0x17cc03,_0x2cd730){var _0x40d80f={},_0x4c8db6={},_0x210a4e={'count':0x0,'rows':[]};var _0x5052ba=_['map'](db[_0xc79b('0x32')][_0xc79b('0x33')],function(_0x39271e){return{'name':_0x39271e[_0xc79b('0x34')],'type':_0x39271e[_0xc79b('0x35')][_0xc79b('0x36')]};});_0x4c8db6[_0xc79b('0x37')]=_['map'](_0x5052ba,'name');_0x4c8db6['query']=_[_0xc79b('0x38')](_0x17cc03['query']);_0x4c8db6[_0xc79b('0x39')]=_[_0xc79b('0x3a')](_0x4c8db6[_0xc79b('0x37')],_0x4c8db6['query']);_0x40d80f['attributes']=_[_0xc79b('0x3a')](_0x4c8db6[_0xc79b('0x37')],qs[_0xc79b('0x3b')](_0x17cc03['query']['fields']));_0x40d80f['attributes']=_0x40d80f['attributes'][_0xc79b('0x3c')]?_0x40d80f[_0xc79b('0x3d')]:_0x4c8db6[_0xc79b('0x37')];if(!_0x17cc03['query'][_0xc79b('0x3e')]('nolimit')){_0x40d80f['limit']=qs[_0xc79b('0x3f')](_0x17cc03[_0xc79b('0x40')][_0xc79b('0x3f')]);_0x40d80f['offset']=qs[_0xc79b('0x24')](_0x17cc03[_0xc79b('0x40')][_0xc79b('0x24')]);}_0x40d80f[_0xc79b('0x41')]=qs['sort'](_0x17cc03[_0xc79b('0x40')][_0xc79b('0x42')]);_0x40d80f[_0xc79b('0x43')]=qs[_0xc79b('0x39')](_[_0xc79b('0x44')](_0x17cc03['query'],_0x4c8db6[_0xc79b('0x39')]),_0x5052ba);if(_0x17cc03[_0xc79b('0x40')][_0xc79b('0x45')]){_0x40d80f[_0xc79b('0x43')]=_[_0xc79b('0x46')](_0x40d80f[_0xc79b('0x43')],{'$or':_[_0xc79b('0x47')](_0x5052ba,function(_0x41f4db){if(_0x41f4db[_0xc79b('0x35')]!==_0xc79b('0x48')){var _0x305227={};_0x305227[_0x41f4db[_0xc79b('0x30')]]={'$like':'%'+_0x17cc03[_0xc79b('0x40')][_0xc79b('0x45')]+'%'};return _0x305227;}})});}_0x40d80f=_['merge']({},_0x40d80f,_0x17cc03['options']);var _0x2108a3={'where':_0x40d80f[_0xc79b('0x43')]};return db[_0xc79b('0x32')][_0xc79b('0x23')](_0x2108a3)['then'](function(_0x3c8d69){_0x210a4e[_0xc79b('0x23')]=_0x3c8d69;if(_0x17cc03['query'][_0xc79b('0x49')]){_0x40d80f[_0xc79b('0x4a')]=[{'all':!![]}];}return db[_0xc79b('0x32')]['findAll'](_0x40d80f);})[_0xc79b('0x2a')](function(_0x5b46a4){_0x210a4e[_0xc79b('0x4b')]=_0x5b46a4;return _0x210a4e;})[_0xc79b('0x2a')](respondWithFilteredResult(_0x2cd730,_0x40d80f))[_0xc79b('0x4c')](handleError(_0x2cd730,null));};exports[_0xc79b('0x4d')]=function(_0x4cc04c,_0x57a68c){var _0x484383={'raw':![],'where':{'id':_0x4cc04c[_0xc79b('0x4e')]['id']}},_0x482a4d={};_0x482a4d[_0xc79b('0x37')]=_['keys'](db[_0xc79b('0x32')]['rawAttributes']);_0x482a4d['query']=_[_0xc79b('0x38')](_0x4cc04c['query']);_0x482a4d[_0xc79b('0x4f')]=_[_0xc79b('0x3a')](_0x482a4d['model'],_0x482a4d[_0xc79b('0x40')]);_0x484383['attributes']=_[_0xc79b('0x3a')](_0x482a4d[_0xc79b('0x37')],qs[_0xc79b('0x3b')](_0x4cc04c['query'][_0xc79b('0x3b')]));_0x484383['attributes']=_0x484383['attributes'][_0xc79b('0x3c')]?_0x484383['attributes']:_0x482a4d[_0xc79b('0x37')];if(_0x4cc04c['query'][_0xc79b('0x49')]){_0x484383[_0xc79b('0x4a')]=[{'all':!![]}];}_0x484383=_['merge']({},_0x484383,_0x4cc04c['options']);return db[_0xc79b('0x32')][_0xc79b('0x50')](_0x484383)['then'](handleEntityNotFound(_0x57a68c,null))[_0xc79b('0x2a')](respondWithResult(_0x57a68c,null))[_0xc79b('0x4c')](handleError(_0x57a68c,null));};exports[_0xc79b('0x51')]=function(_0x442da7,_0x37c09a){return db['Team'][_0xc79b('0x51')](_0x442da7[_0xc79b('0x52')],{})['then'](function(_0x3c504e){var _0x2f2804=_0x442da7['user'][_0xc79b('0x2c')]({'plain':!![]});if(!_0x2f2804)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x2f2804[_0xc79b('0x53')]===_0xc79b('0x54')){var _0xef5125=_0x3c504e[_0xc79b('0x2c')]({'plain':!![]});var _0xca6190=_0xc79b('0x2d');return db[_0xc79b('0x55')][_0xc79b('0x50')]({'where':{'name':_0xca6190,'userProfileId':_0x2f2804[_0xc79b('0x56')]},'raw':!![]})[_0xc79b('0x2a')](function(_0x3db431){if(_0x3db431&&_0x3db431[_0xc79b('0x57')]===0x0){return db[_0xc79b('0x2e')]['create']({'name':_0xef5125[_0xc79b('0x30')],'resourceId':_0xef5125['id'],'type':_0x3db431[_0xc79b('0x30')],'sectionId':_0x3db431['id']},{})[_0xc79b('0x2a')](function(){return _0x3c504e;});}else{return _0x3c504e;}})['catch'](function(_0x1f2f96){logger[_0xc79b('0x2f')](_0xc79b('0x58'),_0x1f2f96);throw _0x1f2f96;});}return _0x3c504e;})[_0xc79b('0x2a')](respondWithResult(_0x37c09a,0xc9))[_0xc79b('0x4c')](handleError(_0x37c09a,null));};exports[_0xc79b('0x59')]=function(_0x5610fd,_0x240776){if(_0x5610fd[_0xc79b('0x52')]['id']){delete _0x5610fd['body']['id'];}return db[_0xc79b('0x32')][_0xc79b('0x50')]({'where':{'id':_0x5610fd['params']['id']}})[_0xc79b('0x2a')](handleEntityNotFound(_0x240776,null))['then'](saveUpdates(_0x5610fd[_0xc79b('0x52')],null))[_0xc79b('0x2a')](respondWithResult(_0x240776,null))[_0xc79b('0x4c')](handleError(_0x240776,null));};exports[_0xc79b('0x2b')]=function(_0x17c454,_0x1cdcec){return db[_0xc79b('0x32')][_0xc79b('0x50')]({'where':{'id':_0x17c454['params']['id']}})['then'](handleEntityNotFound(_0x1cdcec,null))['then'](removeEntity(_0x1cdcec,null))['catch'](handleError(_0x1cdcec,null));};exports[_0xc79b('0x5a')]=function(_0x5743ee,_0x75f81d,_0x163af1){return db[_0xc79b('0x32')]['findOne']({'where':{'id':_0x5743ee['params']['id']}})[_0xc79b('0x2a')](handleEntityNotFound(_0x75f81d,null))[_0xc79b('0x2a')](function(_0x2bf907){if(!_0x5743ee[_0xc79b('0x40')]['channel']||!utils['isValidChannel'](_0x5743ee[_0xc79b('0x40')]['channel'])){throw new db[(_0xc79b('0x5b'))][(_0xc79b('0x5c'))](_0xc79b('0x5d'));}var _0x34d9af={};var _0x3e999a={};_0x3e999a['model']=_[_0xc79b('0x38')](db[_[_0xc79b('0x5e')](_0x5743ee[_0xc79b('0x40')][_0xc79b('0x5f')]['toLowerCase']())+_0xc79b('0x60')][_0xc79b('0x33')]);_0x3e999a[_0xc79b('0x40')]=_[_0xc79b('0x38')](_0x5743ee['query']);_0x3e999a[_0xc79b('0x39')]=_[_0xc79b('0x3a')](_0x3e999a[_0xc79b('0x37')],_0x3e999a[_0xc79b('0x40')]);_0x34d9af[_0xc79b('0x3d')]=_[_0xc79b('0x3a')](_0x3e999a[_0xc79b('0x37')],qs[_0xc79b('0x3b')](_0x5743ee[_0xc79b('0x40')][_0xc79b('0x3b')]));_0x34d9af['attributes']=_0x34d9af['attributes'][_0xc79b('0x3c')]?_0x34d9af[_0xc79b('0x3d')]:_0x3e999a[_0xc79b('0x37')];_0x34d9af[_0xc79b('0x3f')]=qs[_0xc79b('0x3f')](_0x5743ee[_0xc79b('0x40')][_0xc79b('0x3f')]);_0x34d9af[_0xc79b('0x24')]=qs[_0xc79b('0x24')](_0x5743ee[_0xc79b('0x40')][_0xc79b('0x24')]);_0x34d9af[_0xc79b('0x41')]=qs[_0xc79b('0x42')](_0x5743ee['query'][_0xc79b('0x42')]);_0x34d9af['where']=qs[_0xc79b('0x39')](_[_0xc79b('0x44')](_0x5743ee[_0xc79b('0x40')],_0x3e999a[_0xc79b('0x39')]));_0x34d9af=_[_0xc79b('0x46')]({},_0x34d9af,_0x5743ee[_0xc79b('0x61')]);return _0x2bf907[_0xc79b('0x2c')+_[_0xc79b('0x5e')](_0x5743ee[_0xc79b('0x40')][_0xc79b('0x5f')][_0xc79b('0x62')]())+'Queues'](_0x34d9af);})[_0xc79b('0x2a')](respondWithResult(_0x75f81d,null))['catch'](handleError(_0x75f81d,null));};exports['addQueues']=function(_0x3111ef,_0xbd4dbd,_0x22e644){return db[_0xc79b('0x32')]['findOne']({'where':{'id':_0x3111ef[_0xc79b('0x4e')]['id']}})[_0xc79b('0x2a')](function(_0x598882){if(_0x598882){if(!_0x3111ef[_0xc79b('0x52')][_0xc79b('0x5f')]||!utils[_0xc79b('0x63')](_0x3111ef['body'][_0xc79b('0x5f')])){throw new db[(_0xc79b('0x5b'))][(_0xc79b('0x5c'))](_0xc79b('0x5d'));}return _0x598882[_0xc79b('0x64')+_[_0xc79b('0x5e')](_0x3111ef[_0xc79b('0x52')]['channel']['toLowerCase']())+_0xc79b('0x65')](_0x3111ef[_0xc79b('0x52')][_0xc79b('0x66')]);}return null;})[_0xc79b('0x2a')](handleEntityNotFound(_0xbd4dbd,null))[_0xc79b('0x2a')](respondWithStatusCode(_0xbd4dbd,null))[_0xc79b('0x4c')](handleError(_0xbd4dbd,null));};exports[_0xc79b('0x67')]=function(_0x1b477a,_0x3df836,_0x392d1b){return db[_0xc79b('0x32')]['findOne']({'where':{'id':_0x1b477a[_0xc79b('0x4e')]['id']}})[_0xc79b('0x2a')](function(_0x14c8fe){if(_0x14c8fe){if(!_0x1b477a['query'][_0xc79b('0x5f')]||!utils[_0xc79b('0x63')](_0x1b477a[_0xc79b('0x40')][_0xc79b('0x5f')])){throw new db[(_0xc79b('0x5b'))][(_0xc79b('0x5c'))](_0xc79b('0x5d'));}return _0x14c8fe[_0xc79b('0x68')+_['capitalize'](_0x1b477a['query']['channel'][_0xc79b('0x62')]())+_0xc79b('0x65')](_0x1b477a[_0xc79b('0x40')][_0xc79b('0x66')]);}return null;})[_0xc79b('0x2a')](handleEntityNotFound(_0x3df836,null))[_0xc79b('0x2a')](respondWithStatusCode(_0x3df836,null))[_0xc79b('0x4c')](handleError(_0x3df836,null));};exports[_0xc79b('0x69')]=function(_0x1bd74d,_0x5c7ed5,_0x3064e9){return db[_0xc79b('0x32')][_0xc79b('0x50')]({'where':{'id':_0x1bd74d[_0xc79b('0x4e')]['id']}})['then'](handleEntityNotFound(_0x5c7ed5,null))[_0xc79b('0x2a')](function(_0xb85e72){if(_0xb85e72){var _0x2d2f87=[_0xc79b('0x6a'),_0xc79b('0x6b'),_0xc79b('0x6c'),'Sms','Fax',_0xc79b('0x6d'),'Whatsapp'];return BPromise[_0xc79b('0x6e')](_0x2d2f87,function(_0x356094){return _0xb85e72['get'+_0x356094+_0xc79b('0x65')]({'attributes':['id',_0xc79b('0x30')]})[_0xc79b('0x2a')](function(_0x20e98f){return BPromise[_0xc79b('0x6e')](_0x20e98f,function(_0x14a690){return _0x14a690[_0xc79b('0x69')](_0x1bd74d['body'][_0xc79b('0x66')])[_0xc79b('0x2a')](function(){if(_0x356094==='Voice'){return db[_0xc79b('0x6f')]['findAll']({'where':{'id':_0x1bd74d['body']['ids']},'attributes':['id',_0xc79b('0x30'),'online',_0xc79b('0x70'),_0xc79b('0x71')],'raw':!![]})[_0xc79b('0x2a')](function(_0x41a505){return BPromise[_0xc79b('0x6e')](_[_0xc79b('0x45')](_0x41a505,{'online':0x1}),function(_0x54c6b8){return db[_0xc79b('0x72')]['upsert']({'membername':_0x54c6b8[_0xc79b('0x30')],'UserId':_0x54c6b8['id'],'queue_name':_0x14a690['name'],'VoiceQueueId':_0x14a690['id'],'interface':_['isNil'](_0x54c6b8[_0xc79b('0x71')])?util[_0xc79b('0x73')](_0xc79b('0x74'),_0x54c6b8[_0xc79b('0x30')]):_0x54c6b8['interface'],'paused':_0x54c6b8[_0xc79b('0x70')]||![],'penalty':0x0});});});}});});})[_0xc79b('0x2a')](function(){return _0xb85e72;});})[_0xc79b('0x2a')](function(){return _0xb85e72;});}})[_0xc79b('0x2a')](function(_0x26dd4c){if(_0x26dd4c){return _0x26dd4c[_0xc79b('0x69')](_0x1bd74d[_0xc79b('0x52')]['ids'],_[_0xc79b('0x75')](_0x1bd74d[_0xc79b('0x52')],['ids','id'])||{})[_0xc79b('0x76')](function(_0x309fcc){for(var _0x4d19f1=0x0;_0x4d19f1<_0x1bd74d['body'][_0xc79b('0x66')][_0xc79b('0x3c')];_0x4d19f1+=0x1){socket[_0xc79b('0x77')]('userTeam:save',{'UserId':_0x1bd74d['body']['ids'][_0x4d19f1],'TeamId':_0x1bd74d[_0xc79b('0x4e')]['id']});}return _0x309fcc;});}})['then'](respondWithResult(_0x5c7ed5,null))[_0xc79b('0x4c')](handleError(_0x5c7ed5,null));};exports[_0xc79b('0x78')]=function(_0x29b071,_0x402a9a,_0x2a1cab){return db['Team']['find']({'where':{'id':_0x29b071[_0xc79b('0x4e')]['id']}})['then'](handleEntityNotFound(_0x402a9a,null))[_0xc79b('0x2a')](function(_0x41f763){if(_0x41f763){return BPromise[_0xc79b('0x6e')]([_0xc79b('0x79'),_0xc79b('0x7a'),_0xc79b('0x7b'),_0xc79b('0x7c'),_0xc79b('0x7d'),_0xc79b('0x7e'),_0xc79b('0x7f')],function(_0x45506d){return _0x41f763[_0xc79b('0x2c')+_['capitalize'](_0x45506d)+'Queues']({'attributes':['id',_0xc79b('0x30')]})[_0xc79b('0x2a')](function(_0x1987a3){return BPromise[_0xc79b('0x6e')](_0x1987a3,function(_0x487cd8){return _0x487cd8[_0xc79b('0x78')](_0x29b071[_0xc79b('0x40')][_0xc79b('0x66')])[_0xc79b('0x2a')](function(){if(_0x45506d==='voice'){return db[_0xc79b('0x72')][_0xc79b('0x2b')]({'where':{'VoiceQueueId':_0x487cd8['id'],'UserId':_0x29b071[_0xc79b('0x40')][_0xc79b('0x66')]}});}});});})[_0xc79b('0x2a')](function(){return _0x41f763;});})[_0xc79b('0x2a')](function(){return _0x41f763;});}})['then'](function(_0x236e9e){if(_0x236e9e){return _0x236e9e[_0xc79b('0x78')](_0x29b071[_0xc79b('0x40')]['ids'])[_0xc79b('0x2a')](function(){if(_[_0xc79b('0x80')](_0x29b071[_0xc79b('0x40')][_0xc79b('0x66')])){for(var _0x55c5c8=0x0;_0x55c5c8<_0x29b071['query'][_0xc79b('0x66')][_0xc79b('0x3c')];_0x55c5c8+=0x1){socket[_0xc79b('0x77')](_0xc79b('0x81'),{'UserId':Number(_0x29b071[_0xc79b('0x40')][_0xc79b('0x66')][_0x55c5c8]),'TeamId':Number(_0x29b071[_0xc79b('0x4e')]['id'])});}}else{socket['emit']('userTeam:remove',{'UserId':Number(_0x29b071[_0xc79b('0x40')][_0xc79b('0x66')]),'TeamId':Number(_0x29b071[_0xc79b('0x4e')]['id'])});}});}})[_0xc79b('0x2a')](respondWithStatusCode(_0x402a9a,null))[_0xc79b('0x4c')](handleError(_0x402a9a,null));};exports[_0xc79b('0x82')]=function(_0x115c42,_0x16be40,_0x5e9560){var _0xb58c2f={};var _0x516934={};var _0x34e4d4;var _0x54cc21;return db['Team'][_0xc79b('0x83')]({'where':{'id':_0x115c42[_0xc79b('0x4e')]['id']}})['then'](handleEntityNotFound(_0x16be40,null))[_0xc79b('0x2a')](function(_0x1c170e){if(_0x1c170e){_0x34e4d4=_0x1c170e;_0x516934[_0xc79b('0x37')]=_[_0xc79b('0x38')](db[_0xc79b('0x6f')][_0xc79b('0x33')]);_0x516934[_0xc79b('0x40')]=_[_0xc79b('0x38')](_0x115c42[_0xc79b('0x40')]);_0x516934[_0xc79b('0x39')]=_['intersection'](_0x516934[_0xc79b('0x37')],_0x516934['query']);_0xb58c2f[_0xc79b('0x3d')]=_['intersection'](_0x516934[_0xc79b('0x37')],qs[_0xc79b('0x3b')](_0x115c42['query'][_0xc79b('0x3b')]));_0xb58c2f[_0xc79b('0x3d')]=_0xb58c2f['attributes'][_0xc79b('0x3c')]?_0xb58c2f['attributes']:_0x516934[_0xc79b('0x37')];_0xb58c2f['order']=qs['sort'](_0x115c42['query'][_0xc79b('0x42')]);_0xb58c2f[_0xc79b('0x43')]=qs['filters'](_[_0xc79b('0x44')](_0x115c42['query'],_0x516934[_0xc79b('0x39')]));if(_0x115c42[_0xc79b('0x40')]['filter']){_0xb58c2f[_0xc79b('0x43')]=_[_0xc79b('0x46')](_0xb58c2f[_0xc79b('0x43')],{'$or':_[_0xc79b('0x47')](_0xb58c2f[_0xc79b('0x3d')],function(_0x2fafb4){var _0x31cec5={};_0x31cec5[_0x2fafb4]={'$like':'%'+_0x115c42['query'][_0xc79b('0x45')]+'%'};return _0x31cec5;})});}_0xb58c2f=_[_0xc79b('0x46')]({},_0xb58c2f,_0x115c42[_0xc79b('0x61')]);return _0x34e4d4[_0xc79b('0x82')](_0xb58c2f);}})[_0xc79b('0x2a')](function(_0x3f988b){if(_0x3f988b){_0x54cc21=_0x3f988b[_0xc79b('0x3c')];if(!_0x115c42[_0xc79b('0x40')][_0xc79b('0x3e')]('nolimit')){_0xb58c2f[_0xc79b('0x3f')]=qs[_0xc79b('0x3f')](_0x115c42[_0xc79b('0x40')][_0xc79b('0x3f')]);_0xb58c2f[_0xc79b('0x24')]=qs[_0xc79b('0x24')](_0x115c42[_0xc79b('0x40')]['offset']);}return _0x34e4d4[_0xc79b('0x82')](_0xb58c2f);}})[_0xc79b('0x2a')](function(_0x2188f9){if(_0x2188f9){return _0x2188f9?{'count':_0x54cc21,'rows':_0x2188f9}:null;}})['then'](respondWithResult(_0x16be40,null))['catch'](handleError(_0x16be40,null));};