Built motion from commit (unavailable).|2.5.0
[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 _0x7af9=['interface','UserVoiceQueueRt','upsert','format','SIP/%s','spread','removeAgents','voice','chat','mail','sms','fax','openchannel','isArray','userTeam:remove','emit','getAgents','order','html-pdf','rimraf','zip-dir','request-promise','moment','bluebird','mustache','util','ejs','lodash','squel','crypto','desk.js','to-csv','querystring','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','redis','defaults','socket.io-emitter','register','sendStatus','status','end','offset','set','Content-Range','apply','reject','save','update','then','destroy','get','Teams','UserProfileResource','error','stack','name','send','index','map','Team','rawAttributes','fieldName','type','key','model','query','keys','filters','intersection','fields','attributes','length','hasOwnProperty','nolimit','limit','sort','where','pick','filter','merge','options','count','includeAll','include','findAll','rows','catch','show','params','find','create','role','user','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','body','getQueues','findOne','channel','isValidChannel','Sequelize','ValidationError','capitalize','toLowerCase','Queue','Queues','addQueues','Unknown\x20channel','add','ids','removeQueues','remove','addAgents','Chat','Mail','Openchannel','each','Voice','User','online','voicePause'];(function(_0x3be8e8,_0x246a8f){var _0x5f7c64=function(_0x14b674){while(--_0x14b674){_0x3be8e8['push'](_0x3be8e8['shift']());}};_0x5f7c64(++_0x246a8f);}(_0x7af9,0x95));var _0x97af=function(_0x4ea6c1,_0x4f1761){_0x4ea6c1=_0x4ea6c1-0x0;var _0x4e3082=_0x7af9[_0x4ea6c1];return _0x4e3082;};'use strict';var pdf=require(_0x97af('0x0'));var emlformat=require('eml-format');var rimraf=require(_0x97af('0x1'));var zipdir=require(_0x97af('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0x97af('0x3'));var moment=require(_0x97af('0x4'));var BPromise=require(_0x97af('0x5'));var Mustache=require(_0x97af('0x6'));var util=require(_0x97af('0x7'));var path=require('path');var sox=require('sox');var csv=require('to-csv');var ejs=require(_0x97af('0x8'));var fs=require('fs');var _=require(_0x97af('0x9'));var squel=require(_0x97af('0xa'));var crypto=require(_0x97af('0xb'));var jsforce=require('jsforce');var deskjs=require(_0x97af('0xc'));var toCsv=require(_0x97af('0xd'));var querystring=require(_0x97af('0xe'));var Papa=require('papaparse');var Redis=require(_0x97af('0xf'));var authService=require('../../components/auth/service');var qs=require(_0x97af('0x10'));var as=require(_0x97af('0x11'));var hardwareService=require(_0x97af('0x12'));var logger=require(_0x97af('0x13'))(_0x97af('0x14'));var utils=require(_0x97af('0x15'));var config=require(_0x97af('0x16'));var db=require(_0x97af('0x17'))['db'];config[_0x97af('0x18')]=_[_0x97af('0x19')](config[_0x97af('0x18')],{'host':'localhost','port':0x18eb});var socket=require(_0x97af('0x1a'))(new Redis(config['redis']));require('./team.socket')[_0x97af('0x1b')](socket);function respondWithStatusCode(_0x1264c8,_0x458751){_0x458751=_0x458751||0xcc;return function(_0xbf7de1){if(_0xbf7de1){return _0x1264c8[_0x97af('0x1c')](_0x458751);}return _0x1264c8[_0x97af('0x1d')](_0x458751)[_0x97af('0x1e')]();};}function respondWithResult(_0x4bd6dd,_0x281f8a){_0x281f8a=_0x281f8a||0xc8;return function(_0x4e679e){if(_0x4e679e){return _0x4bd6dd[_0x97af('0x1d')](_0x281f8a)['json'](_0x4e679e);}};}function respondWithFilteredResult(_0x41cabb,_0x47c57b){return function(_0x1aa3f9){if(_0x1aa3f9){var _0x2ae4ce=_0x1aa3f9['count'],_0x3815da=_0x47c57b[_0x97af('0x1f')],_0x1481d4=_0x47c57b[_0x97af('0x1f')]+_0x47c57b['limit'],_0xc5c15f;if(_0x1481d4>=_0x2ae4ce){_0x1481d4=_0x2ae4ce;_0xc5c15f=0xc8;}else{_0xc5c15f=0xce;}_0x41cabb['status'](_0xc5c15f);return _0x41cabb[_0x97af('0x20')](_0x97af('0x21'),_0x3815da+'-'+_0x1481d4+'/'+_0x2ae4ce)['json'](_0x1aa3f9);}return null;};}function patchUpdates(_0x275675){return function(_0x5a4c34){try{jsonpatch[_0x97af('0x22')](_0x5a4c34,_0x275675,!![]);}catch(_0x5af909){return BPromise[_0x97af('0x23')](_0x5af909);}return _0x5a4c34[_0x97af('0x24')]();};}function saveUpdates(_0x36c378,_0x53323a){return function(_0x1a0cde){if(_0x1a0cde){return _0x1a0cde[_0x97af('0x25')](_0x36c378)[_0x97af('0x26')](function(_0x4c916c){return _0x4c916c;});}return null;};}function removeEntity(_0x1a08b0,_0x2a7740){return function(_0x275e8c){if(_0x275e8c){return _0x275e8c[_0x97af('0x27')]()['then'](function(){var _0x6d6296=_0x275e8c[_0x97af('0x28')]({'plain':!![]});var _0x545b3d=_0x97af('0x29');return db[_0x97af('0x2a')][_0x97af('0x27')]({'where':{'type':_0x545b3d,'resourceId':_0x6d6296['id']}})['then'](function(){return _0x275e8c;});})[_0x97af('0x26')](function(){_0x1a08b0[_0x97af('0x1d')](0xcc)[_0x97af('0x1e')]();});}};}function handleEntityNotFound(_0x444926,_0x465708){return function(_0x4ced71){if(!_0x4ced71){_0x444926[_0x97af('0x1c')](0x194);}return _0x4ced71;};}function handleError(_0x46f503,_0x51b9e7){_0x51b9e7=_0x51b9e7||0x1f4;return function(_0x258193){logger[_0x97af('0x2b')](_0x258193[_0x97af('0x2c')]);if(_0x258193[_0x97af('0x2d')]){delete _0x258193[_0x97af('0x2d')];}_0x46f503[_0x97af('0x1d')](_0x51b9e7)[_0x97af('0x2e')](_0x258193);};}exports[_0x97af('0x2f')]=function(_0x63fe87,_0x431f41){var _0x4e4127={},_0x32b3c0={},_0x564e58={'count':0x0,'rows':[]};var _0x7c4f87=_[_0x97af('0x30')](db[_0x97af('0x31')][_0x97af('0x32')],function(_0x13a509){return{'name':_0x13a509[_0x97af('0x33')],'type':_0x13a509[_0x97af('0x34')][_0x97af('0x35')]};});_0x32b3c0[_0x97af('0x36')]=_[_0x97af('0x30')](_0x7c4f87,'name');_0x32b3c0[_0x97af('0x37')]=_[_0x97af('0x38')](_0x63fe87['query']);_0x32b3c0[_0x97af('0x39')]=_['intersection'](_0x32b3c0[_0x97af('0x36')],_0x32b3c0['query']);_0x4e4127['attributes']=_[_0x97af('0x3a')](_0x32b3c0[_0x97af('0x36')],qs[_0x97af('0x3b')](_0x63fe87['query'][_0x97af('0x3b')]));_0x4e4127[_0x97af('0x3c')]=_0x4e4127[_0x97af('0x3c')][_0x97af('0x3d')]?_0x4e4127[_0x97af('0x3c')]:_0x32b3c0['model'];if(!_0x63fe87[_0x97af('0x37')][_0x97af('0x3e')](_0x97af('0x3f'))){_0x4e4127[_0x97af('0x40')]=qs['limit'](_0x63fe87['query']['limit']);_0x4e4127[_0x97af('0x1f')]=qs[_0x97af('0x1f')](_0x63fe87[_0x97af('0x37')][_0x97af('0x1f')]);}_0x4e4127['order']=qs['sort'](_0x63fe87['query'][_0x97af('0x41')]);_0x4e4127[_0x97af('0x42')]=qs[_0x97af('0x39')](_[_0x97af('0x43')](_0x63fe87[_0x97af('0x37')],_0x32b3c0[_0x97af('0x39')]));if(_0x63fe87['query'][_0x97af('0x44')]){_0x4e4127['where']=_['merge'](_0x4e4127[_0x97af('0x42')],{'$or':_[_0x97af('0x30')](_0x7c4f87,function(_0x31796d){if(_0x31796d[_0x97af('0x34')]!=='VIRTUAL'){var _0x21eff0={};_0x21eff0[_0x31796d[_0x97af('0x2d')]]={'$like':'%'+_0x63fe87[_0x97af('0x37')][_0x97af('0x44')]+'%'};return _0x21eff0;}})});}_0x4e4127=_[_0x97af('0x45')]({},_0x4e4127,_0x63fe87[_0x97af('0x46')]);var _0x261dbe={'where':_0x4e4127[_0x97af('0x42')]};return db['Team'][_0x97af('0x47')](_0x261dbe)[_0x97af('0x26')](function(_0x567f7a){_0x564e58['count']=_0x567f7a;if(_0x63fe87[_0x97af('0x37')][_0x97af('0x48')]){_0x4e4127[_0x97af('0x49')]=[{'all':!![]}];}return db[_0x97af('0x31')][_0x97af('0x4a')](_0x4e4127);})[_0x97af('0x26')](function(_0x22e224){_0x564e58[_0x97af('0x4b')]=_0x22e224;return _0x564e58;})[_0x97af('0x26')](respondWithFilteredResult(_0x431f41,_0x4e4127))[_0x97af('0x4c')](handleError(_0x431f41,null));};exports[_0x97af('0x4d')]=function(_0x26d05c,_0x126c5b){var _0x6ff6b={'raw':![],'where':{'id':_0x26d05c[_0x97af('0x4e')]['id']}},_0x16c8b4={};_0x16c8b4[_0x97af('0x36')]=_[_0x97af('0x38')](db[_0x97af('0x31')][_0x97af('0x32')]);_0x16c8b4['query']=_[_0x97af('0x38')](_0x26d05c[_0x97af('0x37')]);_0x16c8b4[_0x97af('0x39')]=_[_0x97af('0x3a')](_0x16c8b4[_0x97af('0x36')],_0x16c8b4[_0x97af('0x37')]);_0x6ff6b[_0x97af('0x3c')]=_[_0x97af('0x3a')](_0x16c8b4[_0x97af('0x36')],qs[_0x97af('0x3b')](_0x26d05c[_0x97af('0x37')][_0x97af('0x3b')]));_0x6ff6b[_0x97af('0x3c')]=_0x6ff6b[_0x97af('0x3c')][_0x97af('0x3d')]?_0x6ff6b[_0x97af('0x3c')]:_0x16c8b4[_0x97af('0x36')];if(_0x26d05c[_0x97af('0x37')][_0x97af('0x48')]){_0x6ff6b['include']=[{'all':!![]}];}_0x6ff6b=_[_0x97af('0x45')]({},_0x6ff6b,_0x26d05c[_0x97af('0x46')]);return db['Team'][_0x97af('0x4f')](_0x6ff6b)[_0x97af('0x26')](handleEntityNotFound(_0x126c5b,null))['then'](respondWithResult(_0x126c5b,null))[_0x97af('0x4c')](handleError(_0x126c5b,null));};exports[_0x97af('0x50')]=function(_0x5bbbe3,_0x7f53e){return db[_0x97af('0x31')]['create'](_0x5bbbe3['body'],{})[_0x97af('0x26')](function(_0x4a8257){var _0x33c052=_0x5bbbe3['user']['get']({'plain':!![]});if(!_0x33c052)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x33c052[_0x97af('0x51')]===_0x97af('0x52')){var _0x5077c8=_0x4a8257['get']({'plain':!![]});var _0x1f65c8='Teams';return db[_0x97af('0x53')]['find']({'where':{'name':_0x1f65c8,'userProfileId':_0x33c052[_0x97af('0x54')]},'raw':!![]})[_0x97af('0x26')](function(_0x465f66){if(_0x465f66&&_0x465f66[_0x97af('0x55')]===0x0){return db[_0x97af('0x2a')][_0x97af('0x50')]({'name':_0x5077c8['name'],'resourceId':_0x5077c8['id'],'type':_0x465f66[_0x97af('0x2d')],'sectionId':_0x465f66['id']},{})[_0x97af('0x26')](function(){return _0x4a8257;});}else{return _0x4a8257;}})[_0x97af('0x4c')](function(_0x575d32){logger['error'](_0x97af('0x56'),_0x575d32);throw _0x575d32;});}return _0x4a8257;})['then'](respondWithResult(_0x7f53e,0xc9))[_0x97af('0x4c')](handleError(_0x7f53e,null));};exports[_0x97af('0x25')]=function(_0x1f7531,_0x5457cc){if(_0x1f7531[_0x97af('0x57')]['id']){delete _0x1f7531[_0x97af('0x57')]['id'];}return db[_0x97af('0x31')][_0x97af('0x4f')]({'where':{'id':_0x1f7531['params']['id']}})['then'](handleEntityNotFound(_0x5457cc,null))['then'](saveUpdates(_0x1f7531[_0x97af('0x57')],null))[_0x97af('0x26')](respondWithResult(_0x5457cc,null))['catch'](handleError(_0x5457cc,null));};exports[_0x97af('0x27')]=function(_0x469b62,_0x2bb21f){return db[_0x97af('0x31')][_0x97af('0x4f')]({'where':{'id':_0x469b62['params']['id']}})['then'](handleEntityNotFound(_0x2bb21f,null))[_0x97af('0x26')](removeEntity(_0x2bb21f,null))[_0x97af('0x4c')](handleError(_0x2bb21f,null));};exports[_0x97af('0x58')]=function(_0x27a8d7,_0xe35f28,_0x1aad11){return db[_0x97af('0x31')][_0x97af('0x59')]({'where':{'id':_0x27a8d7[_0x97af('0x4e')]['id']}})[_0x97af('0x26')](handleEntityNotFound(_0xe35f28,null))[_0x97af('0x26')](function(_0x1b13c8){if(!_0x27a8d7[_0x97af('0x37')][_0x97af('0x5a')]||!utils[_0x97af('0x5b')](_0x27a8d7[_0x97af('0x37')][_0x97af('0x5a')])){throw new db[(_0x97af('0x5c'))][(_0x97af('0x5d'))]('Unknown\x20channel');}var _0x3d06f2={};var _0x50e5c8={};_0x50e5c8[_0x97af('0x36')]=_[_0x97af('0x38')](db[_[_0x97af('0x5e')](_0x27a8d7['query']['channel'][_0x97af('0x5f')]())+_0x97af('0x60')][_0x97af('0x32')]);_0x50e5c8['query']=_[_0x97af('0x38')](_0x27a8d7[_0x97af('0x37')]);_0x50e5c8['filters']=_[_0x97af('0x3a')](_0x50e5c8['model'],_0x50e5c8[_0x97af('0x37')]);_0x3d06f2[_0x97af('0x3c')]=_[_0x97af('0x3a')](_0x50e5c8[_0x97af('0x36')],qs[_0x97af('0x3b')](_0x27a8d7['query'][_0x97af('0x3b')]));_0x3d06f2[_0x97af('0x3c')]=_0x3d06f2[_0x97af('0x3c')]['length']?_0x3d06f2['attributes']:_0x50e5c8[_0x97af('0x36')];_0x3d06f2['limit']=qs['limit'](_0x27a8d7['query']['limit']);_0x3d06f2[_0x97af('0x1f')]=qs['offset'](_0x27a8d7['query'][_0x97af('0x1f')]);_0x3d06f2['order']=qs[_0x97af('0x41')](_0x27a8d7[_0x97af('0x37')][_0x97af('0x41')]);_0x3d06f2[_0x97af('0x42')]=qs[_0x97af('0x39')](_[_0x97af('0x43')](_0x27a8d7[_0x97af('0x37')],_0x50e5c8[_0x97af('0x39')]));_0x3d06f2=_[_0x97af('0x45')]({},_0x3d06f2,_0x27a8d7[_0x97af('0x46')]);return _0x1b13c8[_0x97af('0x28')+_[_0x97af('0x5e')](_0x27a8d7[_0x97af('0x37')][_0x97af('0x5a')][_0x97af('0x5f')]())+_0x97af('0x61')](_0x3d06f2);})[_0x97af('0x26')](respondWithResult(_0xe35f28,null))[_0x97af('0x4c')](handleError(_0xe35f28,null));};exports[_0x97af('0x62')]=function(_0x3c4264,_0x2dccfc,_0x3b6462){return db['Team'][_0x97af('0x59')]({'where':{'id':_0x3c4264[_0x97af('0x4e')]['id']}})[_0x97af('0x26')](function(_0x5db619){if(_0x5db619){if(!_0x3c4264[_0x97af('0x57')][_0x97af('0x5a')]||!utils['isValidChannel'](_0x3c4264[_0x97af('0x57')][_0x97af('0x5a')])){throw new db[(_0x97af('0x5c'))][(_0x97af('0x5d'))](_0x97af('0x63'));}return _0x5db619[_0x97af('0x64')+_['capitalize'](_0x3c4264[_0x97af('0x57')][_0x97af('0x5a')][_0x97af('0x5f')]())+_0x97af('0x61')](_0x3c4264[_0x97af('0x57')][_0x97af('0x65')]);}return null;})[_0x97af('0x26')](handleEntityNotFound(_0x2dccfc,null))['then'](respondWithStatusCode(_0x2dccfc,null))[_0x97af('0x4c')](handleError(_0x2dccfc,null));};exports[_0x97af('0x66')]=function(_0x3fbef6,_0x483c2b,_0x23def9){return db[_0x97af('0x31')][_0x97af('0x59')]({'where':{'id':_0x3fbef6['params']['id']}})[_0x97af('0x26')](function(_0x5eeaa1){if(_0x5eeaa1){if(!_0x3fbef6[_0x97af('0x37')]['channel']||!utils[_0x97af('0x5b')](_0x3fbef6[_0x97af('0x37')][_0x97af('0x5a')])){throw new db[(_0x97af('0x5c'))][(_0x97af('0x5d'))](_0x97af('0x63'));}return _0x5eeaa1[_0x97af('0x67')+_[_0x97af('0x5e')](_0x3fbef6[_0x97af('0x37')][_0x97af('0x5a')][_0x97af('0x5f')]())+'Queues'](_0x3fbef6[_0x97af('0x37')][_0x97af('0x65')]);}return null;})['then'](handleEntityNotFound(_0x483c2b,null))[_0x97af('0x26')](respondWithStatusCode(_0x483c2b,null))[_0x97af('0x4c')](handleError(_0x483c2b,null));};exports[_0x97af('0x68')]=function(_0x91189b,_0xdc1c8d,_0x31ff14){return db[_0x97af('0x31')][_0x97af('0x4f')]({'where':{'id':_0x91189b[_0x97af('0x4e')]['id']}})[_0x97af('0x26')](handleEntityNotFound(_0xdc1c8d,null))['then'](function(_0x2f1719){if(_0x2f1719){var _0x54569a=['Voice',_0x97af('0x69'),_0x97af('0x6a'),'Sms','Fax',_0x97af('0x6b')];return BPromise[_0x97af('0x6c')](_0x54569a,function(_0x20e800){return _0x2f1719['get'+_0x20e800+_0x97af('0x61')]({'attributes':['id',_0x97af('0x2d')]})[_0x97af('0x26')](function(_0x5c38cf){return BPromise[_0x97af('0x6c')](_0x5c38cf,function(_0x9f5e75){return _0x9f5e75['addAgents'](_0x91189b['body'][_0x97af('0x65')])[_0x97af('0x26')](function(){if(_0x20e800===_0x97af('0x6d')){return db[_0x97af('0x6e')]['findAll']({'where':{'id':_0x91189b[_0x97af('0x57')][_0x97af('0x65')]},'attributes':['id','name',_0x97af('0x6f'),_0x97af('0x70'),_0x97af('0x71')],'raw':!![]})[_0x97af('0x26')](function(_0x2eab04){return BPromise[_0x97af('0x6c')](_[_0x97af('0x44')](_0x2eab04,{'online':0x1}),function(_0x31b54b){return db[_0x97af('0x72')][_0x97af('0x73')]({'membername':_0x31b54b[_0x97af('0x2d')],'UserId':_0x31b54b['id'],'queue_name':_0x9f5e75[_0x97af('0x2d')],'VoiceQueueId':_0x9f5e75['id'],'interface':_['isNil'](_0x31b54b[_0x97af('0x71')])?util[_0x97af('0x74')](_0x97af('0x75'),_0x31b54b[_0x97af('0x2d')]):_0x31b54b['interface'],'paused':_0x31b54b['voicePause']||![],'penalty':0x0});});});}});});})[_0x97af('0x26')](function(){return _0x2f1719;});})[_0x97af('0x26')](function(){return _0x2f1719;});}})[_0x97af('0x26')](function(_0x396e40){if(_0x396e40){return _0x396e40[_0x97af('0x68')](_0x91189b[_0x97af('0x57')][_0x97af('0x65')],_['omit'](_0x91189b[_0x97af('0x57')],[_0x97af('0x65'),'id'])||{})[_0x97af('0x76')](function(_0x3193be){for(var _0x89b4d9=0x0;_0x89b4d9<_0x91189b[_0x97af('0x57')][_0x97af('0x65')]['length'];_0x89b4d9+=0x1){socket['emit']('userTeam:save',{'UserId':_0x91189b[_0x97af('0x57')]['ids'][_0x89b4d9],'TeamId':_0x91189b[_0x97af('0x4e')]['id']});}return _0x3193be;});}})[_0x97af('0x26')](respondWithResult(_0xdc1c8d,null))[_0x97af('0x4c')](handleError(_0xdc1c8d,null));};exports[_0x97af('0x77')]=function(_0xed118b,_0x50b6a6,_0x57912c){return db[_0x97af('0x31')][_0x97af('0x4f')]({'where':{'id':_0xed118b['params']['id']}})['then'](handleEntityNotFound(_0x50b6a6,null))[_0x97af('0x26')](function(_0x1fd2a7){if(_0x1fd2a7){return BPromise['each']([_0x97af('0x78'),_0x97af('0x79'),_0x97af('0x7a'),_0x97af('0x7b'),_0x97af('0x7c'),_0x97af('0x7d')],function(_0x512442){return _0x1fd2a7[_0x97af('0x28')+_[_0x97af('0x5e')](_0x512442)+_0x97af('0x61')]({'attributes':['id',_0x97af('0x2d')]})[_0x97af('0x26')](function(_0x21bf65){return BPromise[_0x97af('0x6c')](_0x21bf65,function(_0x2cbb97){return _0x2cbb97[_0x97af('0x77')](_0xed118b[_0x97af('0x37')][_0x97af('0x65')])[_0x97af('0x26')](function(){if(_0x512442===_0x97af('0x78')){return db[_0x97af('0x72')][_0x97af('0x27')]({'where':{'VoiceQueueId':_0x2cbb97['id'],'UserId':_0xed118b[_0x97af('0x37')][_0x97af('0x65')]}});}});});})['then'](function(){return _0x1fd2a7;});})[_0x97af('0x26')](function(){return _0x1fd2a7;});}})[_0x97af('0x26')](function(_0x5c4d25){if(_0x5c4d25){return _0x5c4d25[_0x97af('0x77')](_0xed118b[_0x97af('0x37')][_0x97af('0x65')])[_0x97af('0x26')](function(){if(_[_0x97af('0x7e')](_0xed118b[_0x97af('0x37')][_0x97af('0x65')])){for(var _0x5109a8=0x0;_0x5109a8<_0xed118b[_0x97af('0x37')]['ids'][_0x97af('0x3d')];_0x5109a8+=0x1){socket['emit'](_0x97af('0x7f'),{'UserId':Number(_0xed118b[_0x97af('0x37')][_0x97af('0x65')][_0x5109a8]),'TeamId':Number(_0xed118b['params']['id'])});}}else{socket[_0x97af('0x80')]('userTeam:remove',{'UserId':Number(_0xed118b['query']['ids']),'TeamId':Number(_0xed118b['params']['id'])});}});}})[_0x97af('0x26')](respondWithStatusCode(_0x50b6a6,null))[_0x97af('0x4c')](handleError(_0x50b6a6,null));};exports[_0x97af('0x81')]=function(_0x6a4b59,_0x3598fc,_0x450b3c){var _0x2bf9a7={};var _0x2ea829={};var _0x2e540f;var _0x2d7b32;return db[_0x97af('0x31')]['findOne']({'where':{'id':_0x6a4b59[_0x97af('0x4e')]['id']}})[_0x97af('0x26')](handleEntityNotFound(_0x3598fc,null))[_0x97af('0x26')](function(_0x4b90ff){if(_0x4b90ff){_0x2e540f=_0x4b90ff;_0x2ea829[_0x97af('0x36')]=_['keys'](db[_0x97af('0x6e')][_0x97af('0x32')]);_0x2ea829[_0x97af('0x37')]=_[_0x97af('0x38')](_0x6a4b59['query']);_0x2ea829[_0x97af('0x39')]=_[_0x97af('0x3a')](_0x2ea829['model'],_0x2ea829[_0x97af('0x37')]);_0x2bf9a7[_0x97af('0x3c')]=_[_0x97af('0x3a')](_0x2ea829[_0x97af('0x36')],qs['fields'](_0x6a4b59[_0x97af('0x37')][_0x97af('0x3b')]));_0x2bf9a7['attributes']=_0x2bf9a7[_0x97af('0x3c')][_0x97af('0x3d')]?_0x2bf9a7[_0x97af('0x3c')]:_0x2ea829[_0x97af('0x36')];_0x2bf9a7[_0x97af('0x82')]=qs[_0x97af('0x41')](_0x6a4b59['query'][_0x97af('0x41')]);_0x2bf9a7[_0x97af('0x42')]=qs[_0x97af('0x39')](_[_0x97af('0x43')](_0x6a4b59[_0x97af('0x37')],_0x2ea829[_0x97af('0x39')]));if(_0x6a4b59['query'][_0x97af('0x44')]){_0x2bf9a7[_0x97af('0x42')]=_[_0x97af('0x45')](_0x2bf9a7['where'],{'$or':_['map'](_0x2bf9a7[_0x97af('0x3c')],function(_0x477989){var _0x5c154c={};_0x5c154c[_0x477989]={'$like':'%'+_0x6a4b59[_0x97af('0x37')][_0x97af('0x44')]+'%'};return _0x5c154c;})});}_0x2bf9a7=_[_0x97af('0x45')]({},_0x2bf9a7,_0x6a4b59[_0x97af('0x46')]);return _0x2e540f[_0x97af('0x81')](_0x2bf9a7);}})[_0x97af('0x26')](function(_0x5c140b){if(_0x5c140b){_0x2d7b32=_0x5c140b[_0x97af('0x3d')];if(!_0x6a4b59['query'][_0x97af('0x3e')](_0x97af('0x3f'))){_0x2bf9a7[_0x97af('0x40')]=qs['limit'](_0x6a4b59['query'][_0x97af('0x40')]);_0x2bf9a7[_0x97af('0x1f')]=qs[_0x97af('0x1f')](_0x6a4b59[_0x97af('0x37')][_0x97af('0x1f')]);}return _0x2e540f[_0x97af('0x81')](_0x2bf9a7);}})[_0x97af('0x26')](function(_0x3a33eb){if(_0x3a33eb){return _0x3a33eb?{'count':_0x2d7b32,'rows':_0x3a33eb}:null;}})['then'](respondWithResult(_0x3598fc,null))['catch'](handleError(_0x3598fc,null));};