Built motion from commit efa66e19.|2.6.22
[motion2.git] / server / api / cmHopper / cmHopper.controller.js
index 258f616..f984608 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x99c9=['queue','ivr','firstName','lastName','isNil','calleridname','finally','CmHopperFinal','CmHopperAdditionalPhone','getPreview','getVoiceQueues','outbound','dialOrderByScheduledAt','dialPreviewAutoRecallMe','sequelize','transaction','value','direction','prev','isEmpty','hopperIds','priority','scheduledAt','ASC','DESC','literal','COALESCE(CmHopper.UserId,\x200)\x20ASC','findOne','scheduledat','LOCK','UPDATE','CmContact','Contact','CmCompany','Company','CmList','dialActive','recallme','Queue','getOpenContacts','preview','sendStatus','getTimezones','timezones','push','utcOffset','moment','lodash','../../components/parsers/qs','../../config/logger','api','../../config/environment','../../mysqldb','status','json','offset','undefined','limit','count','set','Content-Range','update','then','error','stack','name','send','index','map','CmHopper','fieldName','type','key','model','query','keys','filters','intersection','concat','$and','$gt','$gte','$lt','$lte','$ne','$eq','$between','$notBetween','$in','$like','$notLike','$notILike','$contains','$contained','$any','attributes','fields','length','hasOwnProperty','nolimit','sort','where','filter','merge','VIRTUAL','options','include','findAll','rows','show','params','includeAll','find','catch','create','body','describe','destroy','VoiceQueueId','CampaignId','VoiceQueue','Campaign','omit','dataValues','createdAt','state','statedesc','deleted','membername','user','UserId','deletedat','format','YYYY-MM-DD\x20HH:mm:ss','phone'];(function(_0x4d965d,_0x31e502){var _0x4443b0=function(_0x5db4c0){while(--_0x5db4c0){_0x4d965d['push'](_0x4d965d['shift']());}};_0x4443b0(++_0x31e502);}(_0x99c9,0x13c));var _0x999c=function(_0x599f41,_0x4db732){_0x599f41=_0x599f41-0x0;var _0x2e4d58=_0x99c9[_0x599f41];return _0x2e4d58;};'use strict';var moment=require(_0x999c('0x0'));var _=require(_0x999c('0x1'));var qs=require(_0x999c('0x2'));var logger=require(_0x999c('0x3'))(_0x999c('0x4'));var shared=require(_0x999c('0x5'));var db=require(_0x999c('0x6'))['db'];function respondWithResult(_0x52dc75,_0x2a4e06){_0x2a4e06=_0x2a4e06||0xc8;return function(_0x140cd5){if(_0x140cd5){return _0x52dc75[_0x999c('0x7')](_0x2a4e06)[_0x999c('0x8')](_0x140cd5);}};}function respondWithFilteredResult(_0x2bdd73,_0x14df32){return function(_0x34f100){if(_0x34f100){var _0x651b7e=typeof _0x14df32[_0x999c('0x9')]===_0x999c('0xa')&&typeof _0x14df32[_0x999c('0xb')]===_0x999c('0xa');var _0x32984f=_0x34f100[_0x999c('0xc')];var _0x4dd585=_0x651b7e?0x0:_0x14df32[_0x999c('0x9')];var _0x2bf133=_0x651b7e?_0x34f100['count']:_0x14df32[_0x999c('0x9')]+_0x14df32[_0x999c('0xb')];var _0x97d9fd;if(_0x2bf133>=_0x32984f){_0x2bf133=_0x32984f;_0x97d9fd=0xc8;}else{_0x97d9fd=0xce;}_0x2bdd73[_0x999c('0x7')](_0x97d9fd);return _0x2bdd73[_0x999c('0xd')](_0x999c('0xe'),_0x4dd585+'-'+_0x2bf133+'/'+_0x32984f)[_0x999c('0x8')](_0x34f100);}return null;};}function saveUpdates(_0x3d7c6d,_0x2e5f7e){return function(_0x44a5bc){if(_0x44a5bc){return _0x44a5bc[_0x999c('0xf')](_0x3d7c6d)[_0x999c('0x10')](function(_0x4c3209){return _0x4c3209;});}return null;};}function handleEntityNotFound(_0x15f812,_0xd14862){return function(_0x4f2916){if(!_0x4f2916){_0x15f812['sendStatus'](0x194);}return _0x4f2916;};}function handleError(_0x5f5a20,_0x161434){_0x161434=_0x161434||0x1f4;return function(_0xb3e981){logger[_0x999c('0x11')](_0xb3e981[_0x999c('0x12')]);if(_0xb3e981[_0x999c('0x13')]){delete _0xb3e981['name'];}_0x5f5a20[_0x999c('0x7')](_0x161434)[_0x999c('0x14')](_0xb3e981);};}exports[_0x999c('0x15')]=function(_0xc05363,_0x110486){var _0x500048={},_0x1b327f={},_0x3fb85e={'count':0x0,'rows':[]};var _0x3a8a99=_[_0x999c('0x16')](db[_0x999c('0x17')]['rawAttributes'],function(_0x3630b8){return{'name':_0x3630b8[_0x999c('0x18')],'type':_0x3630b8[_0x999c('0x19')][_0x999c('0x1a')]};});_0x1b327f[_0x999c('0x1b')]=_[_0x999c('0x16')](_0x3a8a99,'name');_0x1b327f[_0x999c('0x1c')]=_[_0x999c('0x1d')](_0xc05363[_0x999c('0x1c')]);_0x1b327f[_0x999c('0x1e')]=_[_0x999c('0x1f')](_0x1b327f[_0x999c('0x1b')],_0x1b327f[_0x999c('0x1c')]);_0x1b327f[_0x999c('0x1e')]=_[_0x999c('0x20')](_0x1b327f[_0x999c('0x1e')],[_0x999c('0x21'),'$or',_0x999c('0x22'),_0x999c('0x23'),_0x999c('0x24'),_0x999c('0x25'),_0x999c('0x26'),_0x999c('0x27'),'$not',_0x999c('0x28'),_0x999c('0x29'),_0x999c('0x2a'),'$notIn',_0x999c('0x2b'),_0x999c('0x2c'),'$iLike',_0x999c('0x2d'),'$like','$overlap',_0x999c('0x2e'),_0x999c('0x2f'),_0x999c('0x30')]);_0x500048[_0x999c('0x31')]=_[_0x999c('0x1f')](_0x1b327f[_0x999c('0x1b')],qs[_0x999c('0x32')](_0xc05363[_0x999c('0x1c')][_0x999c('0x32')]));_0x500048[_0x999c('0x31')]=_0x500048['attributes'][_0x999c('0x33')]?_0x500048[_0x999c('0x31')]:_0x1b327f[_0x999c('0x1b')];if(!_0xc05363[_0x999c('0x1c')][_0x999c('0x34')](_0x999c('0x35'))){_0x500048[_0x999c('0xb')]=qs[_0x999c('0xb')](_0xc05363['query']['limit']);_0x500048[_0x999c('0x9')]=qs[_0x999c('0x9')](_0xc05363[_0x999c('0x1c')][_0x999c('0x9')]);}_0x500048['order']=qs[_0x999c('0x36')](_0xc05363[_0x999c('0x1c')][_0x999c('0x36')]);_0x500048[_0x999c('0x37')]=qs['filters'](_['pick'](_0xc05363[_0x999c('0x1c')],_0x1b327f[_0x999c('0x1e')]),_0x3a8a99);if(_0xc05363[_0x999c('0x1c')][_0x999c('0x38')]){_0x500048[_0x999c('0x37')]=_[_0x999c('0x39')](_0x500048[_0x999c('0x37')],{'$or':_['map'](_0x3a8a99,function(_0x5ad13e){if(_0x5ad13e['type']!==_0x999c('0x3a')){var _0x574eae={};_0x574eae[_0x5ad13e['name']]={'$like':'%'+_0xc05363['query']['filter']+'%'};return _0x574eae;}})});}_0x500048=_[_0x999c('0x39')]({},_0x500048,_0xc05363[_0x999c('0x3b')]);var _0x15dc10={'where':_0x500048[_0x999c('0x37')]};return db['CmHopper'][_0x999c('0xc')](_0x15dc10)[_0x999c('0x10')](function(_0x513aa4){_0x3fb85e['count']=_0x513aa4;if(_0xc05363[_0x999c('0x1c')]['includeAll']){_0x500048[_0x999c('0x3c')]=[{'all':!![]}];}return db['CmHopper'][_0x999c('0x3d')](_0x500048);})[_0x999c('0x10')](function(_0x1763f0){_0x3fb85e[_0x999c('0x3e')]=_0x1763f0;return _0x3fb85e;})['then'](respondWithFilteredResult(_0x110486,_0x500048))['catch'](handleError(_0x110486,null));};exports[_0x999c('0x3f')]=function(_0x391c2e,_0x37c40d){var _0xf26ba3={'raw':!![],'where':{'id':_0x391c2e[_0x999c('0x40')]['id']}},_0x5e21b6={};_0x5e21b6[_0x999c('0x1b')]=_[_0x999c('0x1d')](db[_0x999c('0x17')]['rawAttributes']);_0x5e21b6[_0x999c('0x1c')]=_['keys'](_0x391c2e[_0x999c('0x1c')]);_0x5e21b6[_0x999c('0x1e')]=_['intersection'](_0x5e21b6[_0x999c('0x1b')],_0x5e21b6[_0x999c('0x1c')]);_0xf26ba3[_0x999c('0x31')]=_[_0x999c('0x1f')](_0x5e21b6[_0x999c('0x1b')],qs[_0x999c('0x32')](_0x391c2e[_0x999c('0x1c')][_0x999c('0x32')]));_0xf26ba3['attributes']=_0xf26ba3['attributes']['length']?_0xf26ba3['attributes']:_0x5e21b6[_0x999c('0x1b')];if(_0x391c2e[_0x999c('0x1c')][_0x999c('0x41')]){_0xf26ba3[_0x999c('0x3c')]=[{'all':!![]}];}_0xf26ba3=_[_0x999c('0x39')]({},_0xf26ba3,_0x391c2e['options']);return db[_0x999c('0x17')][_0x999c('0x42')](_0xf26ba3)[_0x999c('0x10')](handleEntityNotFound(_0x37c40d,null))[_0x999c('0x10')](respondWithResult(_0x37c40d,null))[_0x999c('0x43')](handleError(_0x37c40d,null));};exports['create']=function(_0x40fca1,_0x2e8dd6){return db[_0x999c('0x17')][_0x999c('0x44')](_0x40fca1[_0x999c('0x45')],{})[_0x999c('0x10')](respondWithResult(_0x2e8dd6,0xc9))[_0x999c('0x43')](handleError(_0x2e8dd6,null));};exports[_0x999c('0xf')]=function(_0x41d2b2,_0x4e82a9){if(_0x41d2b2['body']['id']){delete _0x41d2b2[_0x999c('0x45')]['id'];}return db[_0x999c('0x17')][_0x999c('0x42')]({'where':{'id':_0x41d2b2[_0x999c('0x40')]['id']}})[_0x999c('0x10')](handleEntityNotFound(_0x4e82a9,null))[_0x999c('0x10')](saveUpdates(_0x41d2b2[_0x999c('0x45')],null))[_0x999c('0x10')](respondWithResult(_0x4e82a9,null))[_0x999c('0x43')](handleError(_0x4e82a9,null));};exports[_0x999c('0x46')]=function(_0x3457d6,_0x4ca662){return db[_0x999c('0x17')][_0x999c('0x46')]()[_0x999c('0x10')](respondWithResult(_0x4ca662,null))[_0x999c('0x43')](handleError(_0x4ca662,null));};exports[_0x999c('0x47')]=function(_0x386be6,_0x11f3bf){var _0x396e2c;var _0x55eb16=_0x386be6[_0x999c('0x40')]['id'];return db[_0x999c('0x17')][_0x999c('0x42')]({'where':{'id':_0x386be6[_0x999c('0x40')]['id']}})[_0x999c('0x10')](handleEntityNotFound(_0x11f3bf,null))[_0x999c('0x10')](function(_0x12eb3d){if(_0x12eb3d){return _0x12eb3d['destroy']()['then'](function(_0x1139f6){return _0x1139f6;});}})[_0x999c('0x10')](function(_0x37fb36){_0x396e2c=_0x37fb36;if(_0x37fb36){if(_0x37fb36[_0x999c('0x48')]||_0x37fb36[_0x999c('0x49')]){return db[_0x37fb36['VoiceQueueId']?_0x999c('0x4a'):_0x999c('0x4b')][_0x999c('0x42')]({'where':{'id':_0x37fb36[_0x999c('0x48')]?_0x37fb36['VoiceQueueId']:_0x37fb36[_0x999c('0x49')]},'attributes':['id','name'],'raw':!![]});}}})[_0x999c('0x10')](function(_0x1129e9){var _0x243913={};if(_0x1129e9){_[_0x999c('0x39')](_0x243913,_[_0x999c('0x4c')](_0x396e2c[_0x999c('0x4d')],[_0x999c('0x4e'),'updatedAt','id']));_0x243913[_0x999c('0x4f')]=0x15;_0x243913[_0x999c('0x50')]=_0x999c('0x51');_0x243913['campaign']=_0x1129e9[_0x999c('0x13')];_0x243913[_0x999c('0x52')]=_0x386be6[_0x999c('0x53')]['name'];_0x243913[_0x999c('0x54')]=_0x386be6['user']['id'];_0x243913[_0x999c('0x51')]=!![];_0x243913[_0x999c('0x55')]=moment()[_0x999c('0x56')](_0x999c('0x57'));_0x243913['calleridnum']=_0x396e2c[_0x999c('0x58')];_0x243913['campaigntype']=_0x396e2c['VoiceQueueId']?_0x999c('0x59'):_0x999c('0x5a');return db['CmContact'][_0x999c('0x42')]({'where':{'id':_0x243913['ContactId']},'attributes':[_0x999c('0x5b'),_0x999c('0x5c')]})['then'](function(_0x9ca1c1){if(!_[_0x999c('0x5d')](_0x11f3bf)&&!_[_0x999c('0x5d')](_0x9ca1c1[_0x999c('0x5b')])){_0x243913[_0x999c('0x5e')]=_0x9ca1c1[_0x999c('0x5b')];if(!_[_0x999c('0x5d')](_0x9ca1c1[_0x999c('0x5c')])){_0x243913[_0x999c('0x5e')]+='\x20'+_0x9ca1c1['lastName'];}}})[_0x999c('0x5f')](function(){return db[_0x999c('0x60')][_0x999c('0x44')](_0x243913);});}})[_0x999c('0x10')](function(_0x171e60){return db[_0x999c('0x61')]['destroy']({'where':{'CmHopperId':_0x55eb16}});})['then'](function(){return _0x11f3bf['status'](0xcc)['end']();})[_0x999c('0x43')](handleError(_0x11f3bf,null));};exports[_0x999c('0x62')]=function(_0x36fd71,_0x4d4236){var _0x3569e8=[];return db['CmContact'][_0x999c('0x46')]()['then'](function(_0x27c404){_0x3569e8=_[_0x999c('0x1d')](_0x27c404);return _0x36fd71[_0x999c('0x53')][_0x999c('0x63')]({'where':{'type':_0x999c('0x64'),'dialActive':!![],'dialMethod':'preview'},'attributes':['id',_0x999c('0x65'),_0x999c('0x66')],'raw':!![]});})[_0x999c('0x10')](function(_0x27f9af){if(_0x27f9af&&_0x27f9af[_0x999c('0x33')]){return db[_0x999c('0x67')][_0x999c('0x68')](function(_0x4d4c33){var _0x30f93c={'active':![],'recallme':![],'scheduledAt':{'$lte':moment()[_0x999c('0x56')](_0x999c('0x57'))},'VoiceQueueId':{'$in':_[_0x999c('0x16')](_0x27f9af,'id')},'$or':[{'UserId':null},{'UserId':_0x36fd71[_0x999c('0x53')]['id']}]};var _0xc6c0c3={'active':![],'recallme':!![],'VoiceQueueId':{'$in':_(_0x27f9af)[_0x999c('0x38')](['dialPreviewAutoRecallMe',0x0])[_0x999c('0x16')]('id')[_0x999c('0x69')]()},'$or':[{'UserId':null},{'UserId':_0x36fd71['user']['id']}]};var _0x569ec9={'$or':[_0x30f93c,_0xc6c0c3]};var _0x25966e=[];if(_0x36fd71[_0x999c('0x45')][_0x999c('0x6a')]&&_0x36fd71['body'][_0x999c('0x6a')]===_0x999c('0x6b')){if(!_[_0x999c('0x6c')](_0x36fd71[_0x999c('0x45')][_0x999c('0x6d')])){_0x569ec9['id']={'$in':_0x36fd71[_0x999c('0x45')]['hopperIds']};}_0x25966e=[[_0x999c('0x6e'),'ASC'],[_0x999c('0x6f'),_0x27f9af[0x0][_0x999c('0x65')]===_0x999c('0x70')?_0x999c('0x71'):_0x999c('0x70')],db[_0x999c('0x67')][_0x999c('0x72')](_0x999c('0x73')),['id',_0x999c('0x71')]];}else{if(!_[_0x999c('0x6c')](_0x36fd71[_0x999c('0x45')][_0x999c('0x6d')])){_0x569ec9['id']={'$notIn':_0x36fd71[_0x999c('0x45')]['hopperIds']};}_0x25966e=[[_0x999c('0x6e'),_0x999c('0x71')],['scheduledAt',_0x27f9af[0x0][_0x999c('0x65')]],db[_0x999c('0x67')][_0x999c('0x72')]('COALESCE(CmHopper.UserId,\x200)\x20DESC'),['id',_0x999c('0x70')]];}return db[_0x999c('0x17')][_0x999c('0x74')]({'attributes':['id',_0x999c('0x75'),_0x999c('0x58'),'recallme'],'where':_0x569ec9,'order':_0x25966e,'transaction':_0x4d4c33,'lock':_0x4d4c33[_0x999c('0x76')][_0x999c('0x77')],'include':[{'model':db[_0x999c('0x78')],'as':_0x999c('0x79'),'attributes':_0x3569e8,'include':[{'model':db[_0x999c('0x7a')],'as':_0x999c('0x7b'),'attributes':['id',_0x999c('0x13')]}]},{'model':db[_0x999c('0x7c')],'as':'List','attributes':['id',_0x999c('0x13')]},{'model':db[_0x999c('0x4a')],'as':'Queue','attributes':['id','name',_0x999c('0x7d')]}]})[_0x999c('0x10')](function(_0x19a8e9){if(_0x19a8e9){return _0x19a8e9[_0x999c('0xf')]({'UserId':_0x36fd71['user']['id']},{'transaction':_0x4d4c33});}});});}})[_0x999c('0x10')](handleEntityNotFound(_0x4d4236,null))[_0x999c('0x10')](respondWithResult(_0x4d4236,null))[_0x999c('0x43')](handleError(_0x4d4236,null));};exports['getPreviewRecall']=function(_0x42261c,_0x4f6544,_0x2c1b7d){var _0x90eb9a=[];var _0x5d3c9f=_0x42261c[_0x999c('0x40')]['id'];var _0x587177=_0x42261c[_0x999c('0x53')]['id'];return db[_0x999c('0x78')][_0x999c('0x46')]()[_0x999c('0x10')](function(_0x1d27fe){_0x90eb9a=_[_0x999c('0x1d')](_0x1d27fe);return db[_0x999c('0x67')][_0x999c('0x68')](function(_0x22f536){const _0x1fa726={'id':_0x5d3c9f};return db[_0x999c('0x17')]['findOne']({'attributes':['id',_0x999c('0x75'),_0x999c('0x7e')],'where':_0x1fa726,'transaction':_0x22f536,'lock':_0x22f536[_0x999c('0x76')][_0x999c('0x77')],'include':[{'model':db[_0x999c('0x78')],'as':_0x999c('0x79'),'attributes':_0x90eb9a,'include':[{'model':db['CmCompany'],'as':'Company','attributes':['id',_0x999c('0x13')]}]},{'model':db[_0x999c('0x7c')],'as':'List','attributes':['id',_0x999c('0x13')]},{'model':db[_0x999c('0x4a')],'as':_0x999c('0x7f'),'attributes':['id','name',_0x999c('0x7d')]}]})['then'](function(_0xb2bd6){if(_0xb2bd6){return _0xb2bd6[_0x999c('0xf')]({'UserId':_0x587177},{'transaction':_0x22f536});}});});})[_0x999c('0x10')](handleEntityNotFound(_0x4f6544,null))[_0x999c('0x10')](respondWithResult(_0x4f6544,null))[_0x999c('0x43')](handleError(_0x4f6544,null));};exports[_0x999c('0x80')]=function(_0x1e8931,_0x417e2f){return _0x1e8931['user']['getVoiceQueues']({'where':{'type':'outbound','dialActive':!![],'dialMethod':_0x999c('0x81')},'attributes':['id'],'raw':!![]})[_0x999c('0x10')](function(_0x179493){if(_0x179493&&_0x179493[_0x999c('0x33')]){return db[_0x999c('0x17')][_0x999c('0xc')]({'where':{'active':![],'recallme':![],'scheduledAt':{'$lte':moment()[_0x999c('0x56')]('YYYY-MM-DD\x20HH:mm:ss')},'VoiceQueueId':{'$in':_[_0x999c('0x16')](_0x179493,'id')},'$or':[{'UserId':null},{'UserId':_0x1e8931[_0x999c('0x53')]['id']}]}});}return 0x0;})[_0x999c('0x10')](function(_0x103f75){if(!_[_0x999c('0x5d')](_0x103f75)&&_['isNumber'](_0x103f75)){return _0x417e2f[_0x999c('0x7')](0xc8)['json']({'contacts':_0x103f75});}else{logger[_0x999c('0x11')]('CmHopper,\x20%s,\x20%s,\x20%s','getOpenContacts',0x194,'entity\x20not\x20found');_0x417e2f[_0x999c('0x82')](0x194);}})['catch'](handleError(_0x417e2f,null));};exports[_0x999c('0x83')]=function(_0x38df92,_0xebac9f){var _0x57c1c6=shared[_0x999c('0x84')];var _0x3e2275=[];_[_0x999c('0x16')](_0x57c1c6,function(_0x2c7c28){_0x3e2275[_0x999c('0x85')]({'id':_0x2c7c28[_0x999c('0x13')],'name':_0x2c7c28[_0x999c('0x13')],'utcOffset':_0x2c7c28[_0x999c('0x86')]});});return _0xebac9f[_0x999c('0x7')](0xc8)[_0x999c('0x8')]({'tz':_0x3e2275});};exports['getTimezone']=function(_0x20888e,_0x353d2b){var _0x59d43e=shared[_0x999c('0x84')];var _0x4ddc1c={};if(!_[_0x999c('0x5d')](_0x59d43e[_0x20888e['body']['id']]))_0x4ddc1c=_0x59d43e[_0x20888e[_0x999c('0x45')]['id']];return _0x353d2b['status'](0xc8)[_0x999c('0x8')](_0x4ddc1c);};
\ No newline at end of file
+var _0x2caf=['$lte','$ne','$eq','$not','$between','$notBetween','$in','$notIn','$notLike','$iLike','$notILike','$like','$overlap','$contains','$contained','$any','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','VIRTUAL','merge','options','then','includeAll','include','findAll','catch','show','params','find','create','body','describe','destroy','CampaignId','VoiceQueueId','Campaign','omit','dataValues','createdAt','updatedAt','state','membername','user','deleted','deletedat','format','YYYY-MM-DD\x20HH:mm:ss','calleridnum','phone','queue','ivr','ContactId','lastName','isNil','firstName','calleridname','finally','CmHopperFinal','CmHopperAdditionalPhone','getPreview','CmContact','getVoiceQueues','preview','dialOrderByScheduledAt','dialPreviewAutoRecallMe','sequelize','transaction','value','direction','isEmpty','hopperIds','priority','ASC','scheduledAt','DESC','COALESCE(CmHopper.UserId,\x200)\x20ASC','findOne','scheduledat','LOCK','UPDATE','Contact','CmCompany','CmList','List','VoiceQueue','Queue','dialActive','update','getPreviewRecall','Company','getOpenContacts','outbound','isNumber','entity\x20not\x20found','timezones','push','utcOffset','getTimezone','../../config/logger','../../config/environment','../../mysqldb','status','json','limit','undefined','count','offset','Content-Range','sendStatus','error','name','index','map','CmHopper','rawAttributes','fieldName','type','key','query','keys','filters','intersection','model','concat','$and','$or','$gt'];(function(_0x93b675,_0x9f4d81){var _0x53d795=function(_0x2e1337){while(--_0x2e1337){_0x93b675['push'](_0x93b675['shift']());}};_0x53d795(++_0x9f4d81);}(_0x2caf,0x6a));var _0xf2ca=function(_0x22d53f,_0x15720d){_0x22d53f=_0x22d53f-0x0;var _0x3fa7a0=_0x2caf[_0x22d53f];return _0x3fa7a0;};'use strict';var moment=require('moment');var _=require('lodash');var qs=require('../../components/parsers/qs');var logger=require(_0xf2ca('0x0'))('api');var shared=require(_0xf2ca('0x1'));var db=require(_0xf2ca('0x2'))['db'];function respondWithResult(_0x43b96c,_0x375e8b){_0x375e8b=_0x375e8b||0xc8;return function(_0x137501){if(_0x137501){return _0x43b96c[_0xf2ca('0x3')](_0x375e8b)[_0xf2ca('0x4')](_0x137501);}};}function respondWithFilteredResult(_0x51372a,_0x8ce770){return function(_0x4292b4){if(_0x4292b4){var _0x16cabd=typeof _0x8ce770['offset']==='undefined'&&typeof _0x8ce770[_0xf2ca('0x5')]===_0xf2ca('0x6');var _0x1177f0=_0x4292b4[_0xf2ca('0x7')];var _0x1c1afd=_0x16cabd?0x0:_0x8ce770['offset'];var _0x1ecd50=_0x16cabd?_0x4292b4[_0xf2ca('0x7')]:_0x8ce770[_0xf2ca('0x8')]+_0x8ce770[_0xf2ca('0x5')];var _0x1ff621;if(_0x1ecd50>=_0x1177f0){_0x1ecd50=_0x1177f0;_0x1ff621=0xc8;}else{_0x1ff621=0xce;}_0x51372a[_0xf2ca('0x3')](_0x1ff621);return _0x51372a['set'](_0xf2ca('0x9'),_0x1c1afd+'-'+_0x1ecd50+'/'+_0x1177f0)[_0xf2ca('0x4')](_0x4292b4);}return null;};}function saveUpdates(_0x54a3cb,_0x88529f){return function(_0x383112){if(_0x383112){return _0x383112['update'](_0x54a3cb)['then'](function(_0xa4e5b1){return _0xa4e5b1;});}return null;};}function handleEntityNotFound(_0x52a278,_0x284484){return function(_0x3123fe){if(!_0x3123fe){_0x52a278[_0xf2ca('0xa')](0x194);}return _0x3123fe;};}function handleError(_0x1e9227,_0x410997){_0x410997=_0x410997||0x1f4;return function(_0x2057a2){logger[_0xf2ca('0xb')](_0x2057a2['stack']);if(_0x2057a2[_0xf2ca('0xc')]){delete _0x2057a2['name'];}_0x1e9227[_0xf2ca('0x3')](_0x410997)['send'](_0x2057a2);};}exports[_0xf2ca('0xd')]=function(_0x6a2b25,_0x59ea3c){var _0x3c0055={},_0x160230={},_0x1b3a36={'count':0x0,'rows':[]};var _0x310504=_[_0xf2ca('0xe')](db[_0xf2ca('0xf')][_0xf2ca('0x10')],function(_0x1548a4){return{'name':_0x1548a4[_0xf2ca('0x11')],'type':_0x1548a4[_0xf2ca('0x12')][_0xf2ca('0x13')]};});_0x160230['model']=_[_0xf2ca('0xe')](_0x310504,_0xf2ca('0xc'));_0x160230[_0xf2ca('0x14')]=_[_0xf2ca('0x15')](_0x6a2b25[_0xf2ca('0x14')]);_0x160230[_0xf2ca('0x16')]=_[_0xf2ca('0x17')](_0x160230[_0xf2ca('0x18')],_0x160230['query']);_0x160230[_0xf2ca('0x16')]=_[_0xf2ca('0x19')](_0x160230['filters'],[_0xf2ca('0x1a'),_0xf2ca('0x1b'),_0xf2ca('0x1c'),'$gte','$lt',_0xf2ca('0x1d'),_0xf2ca('0x1e'),_0xf2ca('0x1f'),_0xf2ca('0x20'),_0xf2ca('0x21'),_0xf2ca('0x22'),_0xf2ca('0x23'),_0xf2ca('0x24'),'$like',_0xf2ca('0x25'),_0xf2ca('0x26'),_0xf2ca('0x27'),_0xf2ca('0x28'),_0xf2ca('0x29'),_0xf2ca('0x2a'),_0xf2ca('0x2b'),_0xf2ca('0x2c')]);_0x3c0055[_0xf2ca('0x2d')]=_[_0xf2ca('0x17')](_0x160230[_0xf2ca('0x18')],qs[_0xf2ca('0x2e')](_0x6a2b25[_0xf2ca('0x14')][_0xf2ca('0x2e')]));_0x3c0055[_0xf2ca('0x2d')]=_0x3c0055[_0xf2ca('0x2d')][_0xf2ca('0x2f')]?_0x3c0055[_0xf2ca('0x2d')]:_0x160230[_0xf2ca('0x18')];if(!_0x6a2b25['query'][_0xf2ca('0x30')](_0xf2ca('0x31'))){_0x3c0055[_0xf2ca('0x5')]=qs[_0xf2ca('0x5')](_0x6a2b25[_0xf2ca('0x14')][_0xf2ca('0x5')]);_0x3c0055[_0xf2ca('0x8')]=qs[_0xf2ca('0x8')](_0x6a2b25[_0xf2ca('0x14')]['offset']);}_0x3c0055[_0xf2ca('0x32')]=qs[_0xf2ca('0x33')](_0x6a2b25[_0xf2ca('0x14')]['sort']);_0x3c0055[_0xf2ca('0x34')]=qs['filters'](_[_0xf2ca('0x35')](_0x6a2b25[_0xf2ca('0x14')],_0x160230[_0xf2ca('0x16')]),_0x310504);if(_0x6a2b25[_0xf2ca('0x14')][_0xf2ca('0x36')]){_0x3c0055['where']=_['merge'](_0x3c0055[_0xf2ca('0x34')],{'$or':_['map'](_0x310504,function(_0x3caa5d){if(_0x3caa5d[_0xf2ca('0x12')]!==_0xf2ca('0x37')){var _0x3152eb={};_0x3152eb[_0x3caa5d[_0xf2ca('0xc')]]={'$like':'%'+_0x6a2b25[_0xf2ca('0x14')][_0xf2ca('0x36')]+'%'};return _0x3152eb;}})});}_0x3c0055=_[_0xf2ca('0x38')]({},_0x3c0055,_0x6a2b25[_0xf2ca('0x39')]);var _0x1ad216={'where':_0x3c0055[_0xf2ca('0x34')]};return db[_0xf2ca('0xf')][_0xf2ca('0x7')](_0x1ad216)[_0xf2ca('0x3a')](function(_0x211f00){_0x1b3a36[_0xf2ca('0x7')]=_0x211f00;if(_0x6a2b25['query'][_0xf2ca('0x3b')]){_0x3c0055[_0xf2ca('0x3c')]=[{'all':!![]}];}return db[_0xf2ca('0xf')][_0xf2ca('0x3d')](_0x3c0055);})['then'](function(_0x46643e){_0x1b3a36['rows']=_0x46643e;return _0x1b3a36;})[_0xf2ca('0x3a')](respondWithFilteredResult(_0x59ea3c,_0x3c0055))[_0xf2ca('0x3e')](handleError(_0x59ea3c,null));};exports[_0xf2ca('0x3f')]=function(_0x2c196d,_0x385904){var _0x4fbaec={'raw':!![],'where':{'id':_0x2c196d[_0xf2ca('0x40')]['id']}},_0x37e50e={};_0x37e50e['model']=_[_0xf2ca('0x15')](db[_0xf2ca('0xf')][_0xf2ca('0x10')]);_0x37e50e['query']=_[_0xf2ca('0x15')](_0x2c196d['query']);_0x37e50e[_0xf2ca('0x16')]=_[_0xf2ca('0x17')](_0x37e50e[_0xf2ca('0x18')],_0x37e50e[_0xf2ca('0x14')]);_0x4fbaec[_0xf2ca('0x2d')]=_[_0xf2ca('0x17')](_0x37e50e[_0xf2ca('0x18')],qs[_0xf2ca('0x2e')](_0x2c196d[_0xf2ca('0x14')][_0xf2ca('0x2e')]));_0x4fbaec[_0xf2ca('0x2d')]=_0x4fbaec[_0xf2ca('0x2d')][_0xf2ca('0x2f')]?_0x4fbaec[_0xf2ca('0x2d')]:_0x37e50e[_0xf2ca('0x18')];if(_0x2c196d['query'][_0xf2ca('0x3b')]){_0x4fbaec[_0xf2ca('0x3c')]=[{'all':!![]}];}_0x4fbaec=_[_0xf2ca('0x38')]({},_0x4fbaec,_0x2c196d[_0xf2ca('0x39')]);return db[_0xf2ca('0xf')][_0xf2ca('0x41')](_0x4fbaec)[_0xf2ca('0x3a')](handleEntityNotFound(_0x385904,null))[_0xf2ca('0x3a')](respondWithResult(_0x385904,null))[_0xf2ca('0x3e')](handleError(_0x385904,null));};exports[_0xf2ca('0x42')]=function(_0x20f215,_0x142789){return db[_0xf2ca('0xf')]['create'](_0x20f215['body'],{})[_0xf2ca('0x3a')](respondWithResult(_0x142789,0xc9))[_0xf2ca('0x3e')](handleError(_0x142789,null));};exports['update']=function(_0x102c3c,_0x4c5125){if(_0x102c3c[_0xf2ca('0x43')]['id']){delete _0x102c3c[_0xf2ca('0x43')]['id'];}return db[_0xf2ca('0xf')]['find']({'where':{'id':_0x102c3c[_0xf2ca('0x40')]['id']}})[_0xf2ca('0x3a')](handleEntityNotFound(_0x4c5125,null))['then'](saveUpdates(_0x102c3c[_0xf2ca('0x43')],null))[_0xf2ca('0x3a')](respondWithResult(_0x4c5125,null))[_0xf2ca('0x3e')](handleError(_0x4c5125,null));};exports[_0xf2ca('0x44')]=function(_0x4a6439,_0x3d67fe){return db[_0xf2ca('0xf')][_0xf2ca('0x44')]()['then'](respondWithResult(_0x3d67fe,null))['catch'](handleError(_0x3d67fe,null));};exports[_0xf2ca('0x45')]=function(_0x2f7596,_0x1a65c6){var _0x718ee1;var _0x3f31de=_0x2f7596[_0xf2ca('0x40')]['id'];return db['CmHopper']['find']({'where':{'id':_0x2f7596[_0xf2ca('0x40')]['id']}})[_0xf2ca('0x3a')](handleEntityNotFound(_0x1a65c6,null))['then'](function(_0x2f8ba0){if(_0x2f8ba0){return _0x2f8ba0['destroy']()[_0xf2ca('0x3a')](function(_0x59bbb8){return _0x59bbb8;});}})[_0xf2ca('0x3a')](function(_0x5f3fc7){_0x718ee1=_0x5f3fc7;if(_0x5f3fc7){if(_0x5f3fc7['VoiceQueueId']||_0x5f3fc7[_0xf2ca('0x46')]){return db[_0x5f3fc7[_0xf2ca('0x47')]?'VoiceQueue':_0xf2ca('0x48')][_0xf2ca('0x41')]({'where':{'id':_0x5f3fc7[_0xf2ca('0x47')]?_0x5f3fc7[_0xf2ca('0x47')]:_0x5f3fc7[_0xf2ca('0x46')]},'attributes':['id',_0xf2ca('0xc')],'raw':!![]});}}})['then'](function(_0x223cb1){var _0x3ac6ec={};if(_0x223cb1){_['merge'](_0x3ac6ec,_[_0xf2ca('0x49')](_0x718ee1[_0xf2ca('0x4a')],[_0xf2ca('0x4b'),_0xf2ca('0x4c'),'id']));_0x3ac6ec[_0xf2ca('0x4d')]=0x15;_0x3ac6ec['statedesc']='deleted';_0x3ac6ec['campaign']=_0x223cb1[_0xf2ca('0xc')];_0x3ac6ec[_0xf2ca('0x4e')]=_0x2f7596[_0xf2ca('0x4f')][_0xf2ca('0xc')];_0x3ac6ec['UserId']=_0x2f7596[_0xf2ca('0x4f')]['id'];_0x3ac6ec[_0xf2ca('0x50')]=!![];_0x3ac6ec[_0xf2ca('0x51')]=moment()[_0xf2ca('0x52')](_0xf2ca('0x53'));_0x3ac6ec[_0xf2ca('0x54')]=_0x718ee1[_0xf2ca('0x55')];_0x3ac6ec['campaigntype']=_0x718ee1[_0xf2ca('0x47')]?_0xf2ca('0x56'):_0xf2ca('0x57');return db['CmContact'][_0xf2ca('0x41')]({'where':{'id':_0x3ac6ec[_0xf2ca('0x58')]},'attributes':['firstName',_0xf2ca('0x59')]})[_0xf2ca('0x3a')](function(_0x381448){if(!_['isNil'](_0x1a65c6)&&!_[_0xf2ca('0x5a')](_0x381448[_0xf2ca('0x5b')])){_0x3ac6ec[_0xf2ca('0x5c')]=_0x381448[_0xf2ca('0x5b')];if(!_['isNil'](_0x381448['lastName'])){_0x3ac6ec[_0xf2ca('0x5c')]+='\x20'+_0x381448[_0xf2ca('0x59')];}}})[_0xf2ca('0x5d')](function(){return db[_0xf2ca('0x5e')]['create'](_0x3ac6ec);});}})[_0xf2ca('0x3a')](function(_0x4e1f9d){return db[_0xf2ca('0x5f')][_0xf2ca('0x45')]({'where':{'CmHopperId':_0x3f31de}});})[_0xf2ca('0x3a')](function(){return _0x1a65c6[_0xf2ca('0x3')](0xcc)['end']();})[_0xf2ca('0x3e')](handleError(_0x1a65c6,null));};exports[_0xf2ca('0x60')]=function(_0x2a7a70,_0x359eef){var _0x40364c=[];return db[_0xf2ca('0x61')]['describe']()[_0xf2ca('0x3a')](function(_0x588363){_0x40364c=_[_0xf2ca('0x15')](_0x588363);return _0x2a7a70[_0xf2ca('0x4f')][_0xf2ca('0x62')]({'where':{'type':'outbound','dialActive':!![],'dialMethod':_0xf2ca('0x63')},'attributes':['id',_0xf2ca('0x64'),_0xf2ca('0x65')],'raw':!![]});})['then'](function(_0x19c73b){if(_0x19c73b&&_0x19c73b[_0xf2ca('0x2f')]){return db[_0xf2ca('0x66')][_0xf2ca('0x67')](function(_0x315420){var _0x219854={'active':![],'recallme':![],'scheduledAt':{'$lte':moment()[_0xf2ca('0x52')]('YYYY-MM-DD\x20HH:mm:ss')},'VoiceQueueId':{'$in':_['map'](_0x19c73b,'id')},'$or':[{'UserId':null},{'UserId':_0x2a7a70['user']['id']}]};var _0x470603={'active':![],'recallme':!![],'VoiceQueueId':{'$in':_(_0x19c73b)[_0xf2ca('0x36')]([_0xf2ca('0x65'),0x0])[_0xf2ca('0xe')]('id')[_0xf2ca('0x68')]()},'$or':[{'UserId':null},{'UserId':_0x2a7a70['user']['id']}]};var _0x4c6f28={'$or':[_0x219854,_0x470603]};var _0xbd933=[];if(_0x2a7a70['body'][_0xf2ca('0x69')]&&_0x2a7a70['body']['direction']==='prev'){if(!_[_0xf2ca('0x6a')](_0x2a7a70[_0xf2ca('0x43')][_0xf2ca('0x6b')])){_0x4c6f28['id']={'$in':_0x2a7a70[_0xf2ca('0x43')][_0xf2ca('0x6b')]};}_0xbd933=[[_0xf2ca('0x6c'),_0xf2ca('0x6d')],[_0xf2ca('0x6e'),_0x19c73b[0x0]['dialOrderByScheduledAt']===_0xf2ca('0x6d')?_0xf2ca('0x6f'):_0xf2ca('0x6d')],db[_0xf2ca('0x66')]['literal'](_0xf2ca('0x70')),['id',_0xf2ca('0x6f')]];}else{if(!_['isEmpty'](_0x2a7a70[_0xf2ca('0x43')]['hopperIds'])){_0x4c6f28['id']={'$notIn':_0x2a7a70[_0xf2ca('0x43')]['hopperIds']};}_0xbd933=[[_0xf2ca('0x6c'),_0xf2ca('0x6f')],[_0xf2ca('0x6e'),_0x19c73b[0x0]['dialOrderByScheduledAt']],db[_0xf2ca('0x66')]['literal']('COALESCE(CmHopper.UserId,\x200)\x20DESC'),['id','ASC']];}return db[_0xf2ca('0xf')][_0xf2ca('0x71')]({'attributes':['id',_0xf2ca('0x72'),_0xf2ca('0x55'),'recallme'],'where':_0x4c6f28,'order':_0xbd933,'transaction':_0x315420,'lock':_0x315420[_0xf2ca('0x73')][_0xf2ca('0x74')],'include':[{'model':db['CmContact'],'as':_0xf2ca('0x75'),'attributes':_0x40364c,'include':[{'model':db[_0xf2ca('0x76')],'as':'Company','attributes':['id',_0xf2ca('0xc')]}]},{'model':db[_0xf2ca('0x77')],'as':_0xf2ca('0x78'),'attributes':['id',_0xf2ca('0xc')]},{'model':db[_0xf2ca('0x79')],'as':_0xf2ca('0x7a'),'attributes':['id','name',_0xf2ca('0x7b')]}]})[_0xf2ca('0x3a')](function(_0x3c9e50){if(_0x3c9e50){return _0x3c9e50[_0xf2ca('0x7c')]({'UserId':_0x2a7a70[_0xf2ca('0x4f')]['id']},{'transaction':_0x315420});}});});}})[_0xf2ca('0x3a')](handleEntityNotFound(_0x359eef,null))[_0xf2ca('0x3a')](respondWithResult(_0x359eef,null))['catch'](handleError(_0x359eef,null));};exports[_0xf2ca('0x7d')]=function(_0x877d77,_0x1d7e23,_0x424dad){var _0x5bea6e=[];var _0x581886=_0x877d77[_0xf2ca('0x40')]['id'];var _0x53f005=_0x877d77['user']['id'];return db[_0xf2ca('0x61')][_0xf2ca('0x44')]()[_0xf2ca('0x3a')](function(_0x482877){_0x5bea6e=_[_0xf2ca('0x15')](_0x482877);return db[_0xf2ca('0x66')][_0xf2ca('0x67')](function(_0x294d6f){const _0xdbcb3={'id':_0x581886};return db['CmHopper'][_0xf2ca('0x71')]({'attributes':['id',_0xf2ca('0x72'),'recallme'],'where':_0xdbcb3,'transaction':_0x294d6f,'lock':_0x294d6f[_0xf2ca('0x73')][_0xf2ca('0x74')],'include':[{'model':db[_0xf2ca('0x61')],'as':_0xf2ca('0x75'),'attributes':_0x5bea6e,'include':[{'model':db[_0xf2ca('0x76')],'as':_0xf2ca('0x7e'),'attributes':['id',_0xf2ca('0xc')]}]},{'model':db[_0xf2ca('0x77')],'as':_0xf2ca('0x78'),'attributes':['id','name']},{'model':db[_0xf2ca('0x79')],'as':_0xf2ca('0x7a'),'attributes':['id',_0xf2ca('0xc'),_0xf2ca('0x7b')]}]})[_0xf2ca('0x3a')](function(_0x2f7b82){if(_0x2f7b82){return _0x2f7b82['update']({'UserId':_0x53f005},{'transaction':_0x294d6f});}});});})['then'](handleEntityNotFound(_0x1d7e23,null))[_0xf2ca('0x3a')](respondWithResult(_0x1d7e23,null))[_0xf2ca('0x3e')](handleError(_0x1d7e23,null));};exports[_0xf2ca('0x7f')]=function(_0xda8883,_0x1d11f8){return _0xda8883[_0xf2ca('0x4f')][_0xf2ca('0x62')]({'where':{'type':_0xf2ca('0x80'),'dialActive':!![],'dialMethod':'preview'},'attributes':['id'],'raw':!![]})[_0xf2ca('0x3a')](function(_0x1b16b1){if(_0x1b16b1&&_0x1b16b1[_0xf2ca('0x2f')]){return db['CmHopper'][_0xf2ca('0x7')]({'where':{'active':![],'recallme':![],'scheduledAt':{'$lte':moment()[_0xf2ca('0x52')](_0xf2ca('0x53'))},'VoiceQueueId':{'$in':_[_0xf2ca('0xe')](_0x1b16b1,'id')},'$or':[{'UserId':null},{'UserId':_0xda8883['user']['id']}]}});}return 0x0;})[_0xf2ca('0x3a')](function(_0x271ec6){if(!_[_0xf2ca('0x5a')](_0x271ec6)&&_[_0xf2ca('0x81')](_0x271ec6)){return _0x1d11f8[_0xf2ca('0x3')](0xc8)['json']({'contacts':_0x271ec6});}else{logger[_0xf2ca('0xb')]('CmHopper,\x20%s,\x20%s,\x20%s',_0xf2ca('0x7f'),0x194,_0xf2ca('0x82'));_0x1d11f8[_0xf2ca('0xa')](0x194);}})[_0xf2ca('0x3e')](handleError(_0x1d11f8,null));};exports['getTimezones']=function(_0x532684,_0x1bb147){var _0x1d3e6f=shared[_0xf2ca('0x83')];var _0x28ee05=[];_[_0xf2ca('0xe')](_0x1d3e6f,function(_0x2dc994){_0x28ee05[_0xf2ca('0x84')]({'id':_0x2dc994[_0xf2ca('0xc')],'name':_0x2dc994['name'],'utcOffset':_0x2dc994[_0xf2ca('0x85')]});});return _0x1bb147[_0xf2ca('0x3')](0xc8)[_0xf2ca('0x4')]({'tz':_0x28ee05});};exports[_0xf2ca('0x86')]=function(_0x59d3d4,_0x494761){var _0x23f9cf=shared['timezones'];var _0x3412fc={};if(!_[_0xf2ca('0x5a')](_0x23f9cf[_0x59d3d4[_0xf2ca('0x43')]['id']]))_0x3412fc=_0x23f9cf[_0x59d3d4[_0xf2ca('0x43')]['id']];return _0x494761['status'](0xc8)[_0xf2ca('0x4')](_0x3412fc);};
\ No newline at end of file