Built motion from commit ddca4d0d.|2.5.47
[motion2.git] / server / api / mailAccount / mailAccount.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 _0x25d6=['json','limit','undefined','offset','count','set','update','then','get','MailAccounts','UserProfileResource','destroy','end','name','index','MailServerIn','Imap','Pause','mandatoryDispositionPause','map','rawAttributes','fieldName','type','key','model','query','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','VIRTUAL','options','MailAccount','findAll','rows','params','MailServerOut','Smtp','keys','includeAll','find','catch','body','CloudProviderId','modernAuthentication','describe','MailAccountId','create','getDispositions','findOne','Disposition','include','removeDispositions','ids','CannedAnswer','getAnswers','removeAnswers','provider','email','active','description','user','username','password','pass','service','host','port','authentication','Unable\x20to\x20retrieve\x20the\x20current\x20user','UserProfileSection','userProfileId','autoAssociation','getImap','addImap','removeImap','getSmtp','addSmtp','setSmtp','addInteraction','omit','getInteractions','Contact','Owner','internal','Tag','Tags','color','tag','MailInteraction','addApplications','sequelize','transaction','READ_COMMITTED','MailApplication','bulkCreate','findAndCountAll','stack','finally','send','getApplications','getMessages','MailMessage','$gte','format','YYYY-MM-DD\x20HH:mm:ss','true','split','List','CmContact','Contacts','updatedAt','DESC','isNil','from','attachments','join','root','secure','SendMail','List\x20not\x20found','ListId','messageId','attach','out','Interaction','Messages','verifySmtp','CloudProvider','custom','auth','OAuth2','data5','VerifySmtp','Sequelize','You\x20can\x27t\x20remove\x20the\x20mail\x20service\x20account','addAgents','spread','emit','userMailAccount:save','removeAgents','isArray','userMailAccount:remove','getAgents','User','moment','bluebird','juice','ioredis','../../components/parsers/qs','api','../../mysqldb','defaults','redis','localhost','./mailAccount.socket','register','jayson/promise','client','http','request','info','MailAccount,\x20%s,\x20%s','request\x20sent','debug','stringify','error','code','message','result','sendStatus','status'];(function(_0x5f080e,_0x3f4e76){var _0x5cbad2=function(_0x5dd766){while(--_0x5dd766){_0x5f080e['push'](_0x5f080e['shift']());}};_0x5cbad2(++_0x3f4e76);}(_0x25d6,0x14f));var _0x625d=function(_0x3dd15e,_0x1f0015){_0x3dd15e=_0x3dd15e-0x0;var _0x231fd0=_0x25d6[_0x3dd15e];return _0x231fd0;};'use strict';var moment=require(_0x625d('0x0'));var BPromise=require(_0x625d('0x1'));var util=require('util');var path=require('path');var _=require('lodash');var juice=require(_0x625d('0x2'));var Redis=require(_0x625d('0x3'));var qs=require(_0x625d('0x4'));var logger=require('../../config/logger')(_0x625d('0x5'));var config=require('../../config/environment');var db=require(_0x625d('0x6'))['db'];config['redis']=_[_0x625d('0x7')](config[_0x625d('0x8')],{'host':_0x625d('0x9'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config['redis']));require(_0x625d('0xa'))[_0x625d('0xb')](socket);var jayson=require(_0x625d('0xc'));var client=jayson[_0x625d('0xd')][_0x625d('0xe')]({'port':0x232b});function respondWithRpcPromise(_0x526c59,_0x1ef2ff,_0x15b749,_0x570bc3){return new BPromise(function(_0x240e7c,_0xf72f31){var _0x5580a1=_0x570bc3||client;return _0x5580a1[_0x625d('0xf')](_0x526c59,_0x15b749)['then'](function(_0x5bd984){logger[_0x625d('0x10')](_0x625d('0x11'),_0x1ef2ff,_0x625d('0x12'));logger[_0x625d('0x13')]('MailAccount,\x20%s,\x20%s,\x20%s',_0x1ef2ff,'request\x20sent',JSON[_0x625d('0x14')](_0x5bd984));if(_0x5bd984[_0x625d('0x15')]){if(_0x5bd984[_0x625d('0x15')][_0x625d('0x16')]===0x1f4){logger['error'](_0x625d('0x11'),_0x1ef2ff,_0x5bd984[_0x625d('0x15')][_0x625d('0x17')]);return _0xf72f31(_0x5bd984['error'][_0x625d('0x17')]);}logger['error']('MailAccount,\x20%s,\x20%s',_0x1ef2ff,_0x5bd984[_0x625d('0x15')]['message']);return _0x240e7c(_0x5bd984[_0x625d('0x15')][_0x625d('0x17')]);}else{logger[_0x625d('0x10')](_0x625d('0x11'),_0x1ef2ff,_0x625d('0x12'));_0x240e7c(_0x5bd984[_0x625d('0x18')]['message']);}})['catch'](function(_0x575f8e){logger[_0x625d('0x15')](_0x625d('0x11'),_0x1ef2ff,_0x575f8e);_0xf72f31(_0x575f8e);});});}function respondWithStatusCode(_0x5c2969,_0x874b00){_0x874b00=_0x874b00||0xcc;return function(_0x80a7a7){if(_0x80a7a7){return _0x5c2969[_0x625d('0x19')](_0x874b00);}return _0x5c2969[_0x625d('0x1a')](_0x874b00)['end']();};}function respondWithResult(_0x5a87e9,_0xf3a833){_0xf3a833=_0xf3a833||0xc8;return function(_0x1409a0){if(_0x1409a0){return _0x5a87e9['status'](_0xf3a833)[_0x625d('0x1b')](_0x1409a0);}};}function respondWithFilteredResult(_0x280f11,_0x23caf8){return function(_0x100802){if(_0x100802){var _0x59ad37=typeof _0x23caf8['offset']==='undefined'&&typeof _0x23caf8[_0x625d('0x1c')]===_0x625d('0x1d');var _0x398330=_0x100802['count'];var _0x45ba9b=_0x59ad37?0x0:_0x23caf8[_0x625d('0x1e')];var _0xa12136=_0x59ad37?_0x100802[_0x625d('0x1f')]:_0x23caf8[_0x625d('0x1e')]+_0x23caf8['limit'];var _0xfc75e3;if(_0xa12136>=_0x398330){_0xa12136=_0x398330;_0xfc75e3=0xc8;}else{_0xfc75e3=0xce;}_0x280f11['status'](_0xfc75e3);return _0x280f11[_0x625d('0x20')]('Content-Range',_0x45ba9b+'-'+_0xa12136+'/'+_0x398330)[_0x625d('0x1b')](_0x100802);}return null;};}function saveUpdates(_0x5b3309){return function(_0x5049da){if(_0x5049da){return _0x5049da[_0x625d('0x21')](_0x5b3309)[_0x625d('0x22')](function(_0x359f8c){return _0x359f8c;});}return null;};}function removeEntity(_0x2c27ba){return function(_0x4c71ae){if(_0x4c71ae){return _0x4c71ae['destroy']()[_0x625d('0x22')](function(){var _0xa9b198=_0x4c71ae[_0x625d('0x23')]({'plain':!![]});var _0x22cf07=_0x625d('0x24');return db[_0x625d('0x25')][_0x625d('0x26')]({'where':{'type':_0x22cf07,'resourceId':_0xa9b198['id']}})['then'](function(){return _0x4c71ae;});})[_0x625d('0x22')](function(){_0x2c27ba[_0x625d('0x1a')](0xcc)[_0x625d('0x27')]();});}};}function handleEntityNotFound(_0x31f556){return function(_0x1ee81e){if(!_0x1ee81e){_0x31f556[_0x625d('0x19')](0x194);}return _0x1ee81e;};}function handleError(_0x215b4c,_0x213dc8){_0x213dc8=_0x213dc8||0x1f4;return function(_0x59b418){logger[_0x625d('0x15')](_0x59b418['stack']);if(_0x59b418[_0x625d('0x28')]){delete _0x59b418['name'];}_0x215b4c[_0x625d('0x1a')](_0x213dc8)['send'](_0x59b418);};}exports[_0x625d('0x29')]=function(_0x1ecbfb,_0x1c5b90){var _0x311414={'include':[{'model':db[_0x625d('0x2a')],'as':_0x625d('0x2b')},{'model':db['MailServerOut'],'as':'Smtp'},{'model':db[_0x625d('0x2c')],'as':_0x625d('0x2d')}]},_0x2ebaf9={},_0x3f38f7={'count':0x0,'rows':[]};var _0x58be6b=_[_0x625d('0x2e')](db['MailAccount'][_0x625d('0x2f')],function(_0x127d62){return{'name':_0x127d62[_0x625d('0x30')],'type':_0x127d62[_0x625d('0x31')][_0x625d('0x32')]};});_0x2ebaf9[_0x625d('0x33')]=_[_0x625d('0x2e')](_0x58be6b,'name');_0x2ebaf9[_0x625d('0x34')]=_['keys'](_0x1ecbfb[_0x625d('0x34')]);_0x2ebaf9[_0x625d('0x35')]=_[_0x625d('0x36')](_0x2ebaf9['model'],_0x2ebaf9[_0x625d('0x34')]);_0x311414[_0x625d('0x37')]=_['intersection'](_0x2ebaf9[_0x625d('0x33')],qs['fields'](_0x1ecbfb['query'][_0x625d('0x38')]));_0x311414['attributes']=_0x311414[_0x625d('0x37')][_0x625d('0x39')]?_0x311414[_0x625d('0x37')]:_0x2ebaf9[_0x625d('0x33')];if(!_0x1ecbfb[_0x625d('0x34')][_0x625d('0x3a')](_0x625d('0x3b'))){_0x311414[_0x625d('0x1c')]=qs[_0x625d('0x1c')](_0x1ecbfb[_0x625d('0x34')][_0x625d('0x1c')]);_0x311414['offset']=qs[_0x625d('0x1e')](_0x1ecbfb[_0x625d('0x34')][_0x625d('0x1e')]);}_0x311414[_0x625d('0x3c')]=qs[_0x625d('0x3d')](_0x1ecbfb['query'][_0x625d('0x3d')]);_0x311414[_0x625d('0x3e')]=qs[_0x625d('0x35')](_[_0x625d('0x3f')](_0x1ecbfb[_0x625d('0x34')],_0x2ebaf9[_0x625d('0x35')]),_0x58be6b);if(_0x1ecbfb[_0x625d('0x34')][_0x625d('0x40')]){_0x311414[_0x625d('0x3e')]=_[_0x625d('0x41')](_0x311414[_0x625d('0x3e')],{'$or':_[_0x625d('0x2e')](_0x58be6b,function(_0x359587){if(_0x359587['type']!==_0x625d('0x42')){var _0x324d5d={};_0x324d5d[_0x359587[_0x625d('0x28')]]={'$like':'%'+_0x1ecbfb[_0x625d('0x34')][_0x625d('0x40')]+'%'};return _0x324d5d;}})});}_0x311414=_[_0x625d('0x41')]({},_0x311414,_0x1ecbfb[_0x625d('0x43')]);var _0x155243={'where':_0x311414[_0x625d('0x3e')]};return db[_0x625d('0x44')]['count'](_0x155243)[_0x625d('0x22')](function(_0x41562e){_0x3f38f7[_0x625d('0x1f')]=_0x41562e;if(_0x1ecbfb['query']['includeAll']){_0x311414['include']=[{'all':!![]}];}return db['MailAccount'][_0x625d('0x45')](_0x311414);})[_0x625d('0x22')](function(_0x395484){_0x3f38f7[_0x625d('0x46')]=_0x395484;return _0x3f38f7;})[_0x625d('0x22')](respondWithFilteredResult(_0x1c5b90,_0x311414))['catch'](handleError(_0x1c5b90,null));};exports['show']=function(_0xcbe84d,_0x1da821){var _0x3c69dd={'raw':![],'where':{'id':_0xcbe84d[_0x625d('0x47')]['id']},'include':[{'model':db[_0x625d('0x2a')],'as':'Imap'},{'model':db[_0x625d('0x48')],'as':_0x625d('0x49')},{'model':db['Pause'],'as':_0x625d('0x2d')}]},_0x2b2496={};_0x2b2496[_0x625d('0x33')]=_['keys'](db[_0x625d('0x44')][_0x625d('0x2f')]);_0x2b2496[_0x625d('0x34')]=_[_0x625d('0x4a')](_0xcbe84d[_0x625d('0x34')]);_0x2b2496[_0x625d('0x35')]=_[_0x625d('0x36')](_0x2b2496[_0x625d('0x33')],_0x2b2496[_0x625d('0x34')]);_0x3c69dd[_0x625d('0x37')]=_[_0x625d('0x36')](_0x2b2496[_0x625d('0x33')],qs[_0x625d('0x38')](_0xcbe84d[_0x625d('0x34')][_0x625d('0x38')]));_0x3c69dd[_0x625d('0x37')]=_0x3c69dd[_0x625d('0x37')][_0x625d('0x39')]?_0x3c69dd[_0x625d('0x37')]:_0x2b2496['model'];if(_0xcbe84d[_0x625d('0x34')][_0x625d('0x4b')]){_0x3c69dd['include']=[{'all':!![]}];}_0x3c69dd=_['merge']({},_0x3c69dd,_0xcbe84d[_0x625d('0x43')]);return db['MailAccount'][_0x625d('0x4c')](_0x3c69dd)[_0x625d('0x22')](handleEntityNotFound(_0x1da821,null))[_0x625d('0x22')](respondWithResult(_0x1da821,null))[_0x625d('0x4d')](handleError(_0x1da821,null));};exports[_0x625d('0x21')]=function(_0x489399,_0x195399){if(_0x489399['body']['id']){delete _0x489399[_0x625d('0x4e')]['id'];}if(_0x489399[_0x625d('0x4e')]['Imap']){if(!_0x489399[_0x625d('0x4e')]['Imap']['modernAuthentication']){_0x489399[_0x625d('0x4e')][_0x625d('0x2b')][_0x625d('0x4f')]=null;}}if(_0x489399['body']['Smtp']){if(!_0x489399['body'][_0x625d('0x49')][_0x625d('0x50')]){_0x489399[_0x625d('0x4e')]['Smtp'][_0x625d('0x4f')]=null;}}return db[_0x625d('0x44')][_0x625d('0x4c')]({'where':{'id':_0x489399['params']['id']},'include':[{'model':db[_0x625d('0x2a')],'as':_0x625d('0x2b')},{'model':db[_0x625d('0x48')],'as':_0x625d('0x49')},{'model':db[_0x625d('0x2c')],'as':_0x625d('0x2d')}]})[_0x625d('0x22')](handleEntityNotFound(_0x195399,null))[_0x625d('0x22')](saveUpdates(_0x489399[_0x625d('0x4e')],null))[_0x625d('0x22')](function(_0x38a185){if(_0x38a185&&_0x489399[_0x625d('0x4e')][_0x625d('0x2b')]){return db[_0x625d('0x2a')][_0x625d('0x21')](_0x489399[_0x625d('0x4e')][_0x625d('0x2b')],{'where':{'MailAccountId':_0x38a185['id']}})['then'](function(){return _0x38a185;});}return _0x38a185;})['then'](function(_0x25d12b){if(_0x25d12b&&_0x489399[_0x625d('0x4e')]['Smtp']){return db[_0x625d('0x48')][_0x625d('0x21')](_0x489399[_0x625d('0x4e')][_0x625d('0x49')],{'where':{'MailAccountId':_0x25d12b['id']}})[_0x625d('0x22')](function(){return _0x25d12b;});}return _0x25d12b;})['then'](respondWithResult(_0x195399,null))[_0x625d('0x4d')](handleError(_0x195399,null));};exports[_0x625d('0x51')]=function(_0x421566,_0x36421f){return db[_0x625d('0x44')][_0x625d('0x51')]()[_0x625d('0x22')](respondWithResult(_0x36421f,null))[_0x625d('0x4d')](handleError(_0x36421f,null));};exports['addDisposition']=function(_0x5f5de7,_0x51bcb7){if(_0x5f5de7[_0x625d('0x4e')]['id']){delete _0x5f5de7['body']['id'];}return db[_0x625d('0x44')][_0x625d('0x4c')]({'where':{'id':_0x5f5de7['params']['id']}})['then'](handleEntityNotFound(_0x51bcb7,null))['then'](function(_0x37a2f7){if(_0x37a2f7){_0x5f5de7[_0x625d('0x4e')][_0x625d('0x52')]=_0x37a2f7['id'];return db['Disposition'][_0x625d('0x53')](_0x5f5de7[_0x625d('0x4e')]);}})['then'](respondWithResult(_0x51bcb7,null))[_0x625d('0x4d')](handleError(_0x51bcb7,null));};exports[_0x625d('0x54')]=function(_0x339483,_0xa15458){var _0x9d863b={'raw':![],'where':{}};var _0x4562fe={};var _0x53004a={'count':0x0,'rows':[]};return db[_0x625d('0x44')][_0x625d('0x55')]({'where':{'id':_0x339483['params']['id']}})[_0x625d('0x22')](handleEntityNotFound(_0xa15458,null))[_0x625d('0x22')](function(_0x4da080){if(_0x4da080){_0x4562fe[_0x625d('0x33')]=_[_0x625d('0x4a')](db[_0x625d('0x56')][_0x625d('0x2f')]);_0x4562fe[_0x625d('0x34')]=_[_0x625d('0x4a')](_0x339483[_0x625d('0x34')]);_0x4562fe[_0x625d('0x35')]=_[_0x625d('0x36')](_0x4562fe[_0x625d('0x33')],_0x4562fe['query']);_0x9d863b[_0x625d('0x37')]=_['intersection'](_0x4562fe[_0x625d('0x33')],qs['fields'](_0x339483[_0x625d('0x34')][_0x625d('0x38')]));_0x9d863b[_0x625d('0x37')]=_0x9d863b[_0x625d('0x37')]['length']?_0x9d863b[_0x625d('0x37')]:_0x4562fe[_0x625d('0x33')];if(!_0x339483['query'][_0x625d('0x3a')](_0x625d('0x3b'))){_0x9d863b[_0x625d('0x1c')]=qs[_0x625d('0x1c')](_0x339483[_0x625d('0x34')][_0x625d('0x1c')]);_0x9d863b[_0x625d('0x1e')]=qs['offset'](_0x339483[_0x625d('0x34')]['offset']);}_0x9d863b[_0x625d('0x3c')]=qs[_0x625d('0x3d')](_0x339483[_0x625d('0x34')]['sort']);_0x9d863b[_0x625d('0x3e')]=qs[_0x625d('0x35')](_['pick'](_0x339483[_0x625d('0x34')],_0x4562fe[_0x625d('0x35')]));_0x9d863b[_0x625d('0x3e')][_0x625d('0x52')]=_0x4da080['id'];if(_0x339483[_0x625d('0x34')][_0x625d('0x40')]){_0x9d863b[_0x625d('0x3e')]=_[_0x625d('0x41')](_0x9d863b['where'],{'$or':_[_0x625d('0x2e')](_0x9d863b['attributes'],function(_0x44573a){var _0x215b1d={};_0x215b1d[_0x44573a]={'$like':'%'+_0x339483[_0x625d('0x34')]['filter']+'%'};return _0x215b1d;})});}_0x9d863b=_[_0x625d('0x41')]({},_0x9d863b,_0x339483['options']);return db[_0x625d('0x56')]['count']({'where':_0x9d863b['where']})[_0x625d('0x22')](function(_0x31430b){_0x53004a[_0x625d('0x1f')]=_0x31430b;if(_0x339483['query'][_0x625d('0x4b')]){_0x9d863b[_0x625d('0x57')]=[{'all':!![]}];}return db[_0x625d('0x56')]['findAll'](_0x9d863b);})[_0x625d('0x22')](function(_0x330f58){_0x53004a['rows']=_0x330f58;return _0x53004a;});}})['then'](respondWithFilteredResult(_0xa15458,_0x9d863b))[_0x625d('0x4d')](handleError(_0xa15458,null));};exports[_0x625d('0x58')]=function(_0x4d76d8,_0x257a40){return db['MailAccount'][_0x625d('0x4c')]({'where':{'id':_0x4d76d8['params']['id']}})[_0x625d('0x22')](handleEntityNotFound(_0x257a40,null))[_0x625d('0x22')](function(_0x404e09){if(_0x404e09){return _0x404e09['removeDispositions'](_0x4d76d8[_0x625d('0x34')][_0x625d('0x59')]);}})['then'](respondWithStatusCode(_0x257a40,null))['catch'](handleError(_0x257a40,null));};exports['addAnswer']=function(_0x2d39b7,_0x53043c){if(_0x2d39b7['body']['id']){delete _0x2d39b7[_0x625d('0x4e')]['id'];}return db[_0x625d('0x44')][_0x625d('0x4c')]({'where':{'id':_0x2d39b7[_0x625d('0x47')]['id']}})[_0x625d('0x22')](handleEntityNotFound(_0x53043c,null))[_0x625d('0x22')](function(_0x3e2223){if(_0x3e2223){_0x2d39b7[_0x625d('0x4e')]['MailAccountId']=_0x3e2223['id'];return db[_0x625d('0x5a')][_0x625d('0x53')](_0x2d39b7['body']);}})[_0x625d('0x22')](respondWithResult(_0x53043c,null))[_0x625d('0x4d')](handleError(_0x53043c,null));};exports[_0x625d('0x5b')]=function(_0x4cc47c,_0x5143d9){var _0xfcb16={'raw':![],'where':{}};var _0x5de3fc={};var _0x1f73b3={'count':0x0,'rows':[]};return db[_0x625d('0x44')][_0x625d('0x55')]({'where':{'id':_0x4cc47c[_0x625d('0x47')]['id']}})[_0x625d('0x22')](handleEntityNotFound(_0x5143d9,null))[_0x625d('0x22')](function(_0x55f812){if(_0x55f812){_0x5de3fc['model']=_[_0x625d('0x4a')](db['CannedAnswer']['rawAttributes']);_0x5de3fc[_0x625d('0x34')]=_[_0x625d('0x4a')](_0x4cc47c['query']);_0x5de3fc[_0x625d('0x35')]=_['intersection'](_0x5de3fc[_0x625d('0x33')],_0x5de3fc[_0x625d('0x34')]);_0xfcb16[_0x625d('0x37')]=_['intersection'](_0x5de3fc[_0x625d('0x33')],qs['fields'](_0x4cc47c[_0x625d('0x34')]['fields']));_0xfcb16[_0x625d('0x37')]=_0xfcb16[_0x625d('0x37')][_0x625d('0x39')]?_0xfcb16[_0x625d('0x37')]:_0x5de3fc['model'];if(!_0x4cc47c[_0x625d('0x34')]['hasOwnProperty'](_0x625d('0x3b'))){_0xfcb16[_0x625d('0x1c')]=qs[_0x625d('0x1c')](_0x4cc47c[_0x625d('0x34')][_0x625d('0x1c')]);_0xfcb16[_0x625d('0x1e')]=qs[_0x625d('0x1e')](_0x4cc47c[_0x625d('0x34')]['offset']);}_0xfcb16[_0x625d('0x3c')]=qs[_0x625d('0x3d')](_0x4cc47c[_0x625d('0x34')][_0x625d('0x3d')]);_0xfcb16[_0x625d('0x3e')]=qs['filters'](_['pick'](_0x4cc47c[_0x625d('0x34')],_0x5de3fc[_0x625d('0x35')]));_0xfcb16[_0x625d('0x3e')][_0x625d('0x52')]=_0x55f812['id'];if(_0x4cc47c[_0x625d('0x34')]['filter']){_0xfcb16[_0x625d('0x3e')]=_[_0x625d('0x41')](_0xfcb16[_0x625d('0x3e')],{'$or':_['map'](_0xfcb16[_0x625d('0x37')],function(_0x1d2ce3){var _0x5f3e41={};_0x5f3e41[_0x1d2ce3]={'$like':'%'+_0x4cc47c[_0x625d('0x34')]['filter']+'%'};return _0x5f3e41;})});}_0xfcb16=_['merge']({},_0xfcb16,_0x4cc47c[_0x625d('0x43')]);return db[_0x625d('0x5a')]['count']({'where':_0xfcb16['where']})[_0x625d('0x22')](function(_0x2bf0bb){_0x1f73b3['count']=_0x2bf0bb;if(_0x4cc47c['query'][_0x625d('0x4b')]){_0xfcb16[_0x625d('0x57')]=[{'all':!![]}];}return db[_0x625d('0x5a')]['findAll'](_0xfcb16);})[_0x625d('0x22')](function(_0x2d3aac){_0x1f73b3[_0x625d('0x46')]=_0x2d3aac;return _0x1f73b3;});}})[_0x625d('0x22')](respondWithFilteredResult(_0x5143d9,_0xfcb16))['catch'](handleError(_0x5143d9,null));};exports[_0x625d('0x5c')]=function(_0x5474e9,_0x16f297){return db['MailAccount'][_0x625d('0x4c')]({'where':{'id':_0x5474e9[_0x625d('0x47')]['id']}})['then'](handleEntityNotFound(_0x16f297,null))[_0x625d('0x22')](function(_0x515470){if(_0x515470){return _0x515470[_0x625d('0x5c')](_0x5474e9[_0x625d('0x34')][_0x625d('0x59')]);}})[_0x625d('0x22')](respondWithStatusCode(_0x16f297,null))['catch'](handleError(_0x16f297,null));};exports['create']=function(_0x30c23b,_0x1bb105){var _0x153b90={'name':_0x30c23b[_0x625d('0x4e')][_0x625d('0x28')],'key':_0x30c23b['body'][_0x625d('0x32')],'provider':_0x30c23b[_0x625d('0x4e')]['provider']==='custom'?null:_0x30c23b[_0x625d('0x4e')][_0x625d('0x5d')],'email':_0x30c23b[_0x625d('0x4e')][_0x625d('0x5e')],'ListId':_0x30c23b[_0x625d('0x4e')]['ListId'],'active':!_['isNil'](_0x30c23b[_0x625d('0x4e')][_0x625d('0x5f')])?_0x30c23b[_0x625d('0x4e')][_0x625d('0x5f')]:!![],'description':_0x30c23b[_0x625d('0x4e')][_0x625d('0x60')]||null,'Imap':{},'Smtp':{}};if(_0x153b90['provider']){_0x153b90['Imap'][_0x625d('0x61')]=_0x153b90['Smtp'][_0x625d('0x61')]=_0x30c23b['body'][_0x625d('0x62')];_0x153b90[_0x625d('0x2b')][_0x625d('0x63')]=_0x153b90[_0x625d('0x49')]['pass']=_0x30c23b['body'][_0x625d('0x63')];if(_0x30c23b['body'][_0x625d('0x50')]){_0x153b90[_0x625d('0x2b')][_0x625d('0x50')]=_0x153b90[_0x625d('0x49')][_0x625d('0x50')]=!![];_0x153b90[_0x625d('0x2b')][_0x625d('0x4f')]=_0x153b90[_0x625d('0x49')]['CloudProviderId']=_0x30c23b[_0x625d('0x4e')][_0x625d('0x4f')];_0x153b90[_0x625d('0x2b')]['password']=_0x153b90[_0x625d('0x49')][_0x625d('0x64')]=null;}else{_0x153b90[_0x625d('0x2b')]['CloudProviderId']=_0x153b90['Smtp'][_0x625d('0x4f')]=null;}_0x153b90[_0x625d('0x2b')][_0x625d('0x65')]=_0x153b90[_0x625d('0x49')][_0x625d('0x65')]=null;_0x153b90['Imap'][_0x625d('0x66')]=_0x153b90[_0x625d('0x49')][_0x625d('0x66')]=null;_0x153b90['Imap']['port']=_0x153b90[_0x625d('0x49')][_0x625d('0x67')]=null;}else{if(_0x30c23b[_0x625d('0x4e')][_0x625d('0x68')]){_0x153b90['Imap'][_0x625d('0x61')]=_0x153b90[_0x625d('0x49')][_0x625d('0x61')]=_0x30c23b[_0x625d('0x4e')][_0x625d('0x62')];_0x153b90[_0x625d('0x2b')]['password']=_0x153b90[_0x625d('0x49')][_0x625d('0x64')]=_0x30c23b[_0x625d('0x4e')][_0x625d('0x63')];}else{_0x153b90['Imap']['authentication']=_0x153b90[_0x625d('0x49')][_0x625d('0x68')]=![];_0x153b90['Imap']['user']=_0x153b90[_0x625d('0x49')][_0x625d('0x61')]=null;_0x153b90['Imap'][_0x625d('0x63')]=_0x153b90[_0x625d('0x49')][_0x625d('0x64')]=null;}_0x153b90[_0x625d('0x2b')]['host']=_0x30c23b[_0x625d('0x4e')][_0x625d('0x2b')][_0x625d('0x66')];_0x153b90[_0x625d('0x2b')][_0x625d('0x67')]=_0x30c23b[_0x625d('0x4e')][_0x625d('0x2b')][_0x625d('0x67')];_0x153b90['Smtp'][_0x625d('0x66')]=_0x30c23b[_0x625d('0x4e')][_0x625d('0x49')][_0x625d('0x66')];_0x153b90[_0x625d('0x49')][_0x625d('0x67')]=_0x30c23b[_0x625d('0x4e')][_0x625d('0x49')][_0x625d('0x67')];}return db[_0x625d('0x44')][_0x625d('0x53')](_0x153b90,{'include':[{'model':db[_0x625d('0x48')],'as':_0x625d('0x49')},{'model':db[_0x625d('0x2a')],'as':'Imap'}]})[_0x625d('0x22')](function(_0x38420d){var _0x5b9f31=_0x30c23b[_0x625d('0x61')][_0x625d('0x23')]({'plain':!![]});if(!_0x5b9f31)throw new Error(_0x625d('0x69'));if(_0x5b9f31['role']===_0x625d('0x61')){var _0x5e6423=_0x38420d[_0x625d('0x23')]({'plain':!![]});return db[_0x625d('0x6a')]['find']({'where':{'name':_0x625d('0x24'),'userProfileId':_0x5b9f31[_0x625d('0x6b')]},'raw':!![]})[_0x625d('0x22')](function(_0x69a10a){if(_0x69a10a&&_0x69a10a[_0x625d('0x6c')]===0x0){return db[_0x625d('0x25')]['create']({'name':_0x5e6423[_0x625d('0x28')],'resourceId':_0x5e6423['id'],'type':_0x69a10a[_0x625d('0x28')],'sectionId':_0x69a10a['id']},{})[_0x625d('0x22')](function(){return _0x38420d;});}else{return _0x38420d;}})[_0x625d('0x4d')](function(_0x2aaeb9){logger[_0x625d('0x15')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x2aaeb9);throw _0x2aaeb9;});}return _0x38420d;})[_0x625d('0x22')](respondWithResult(_0x1bb105,0xc9))['catch'](handleError(_0x1bb105,null));};exports[_0x625d('0x6d')]=function(_0x2fdff5,_0x23e4a2){return db[_0x625d('0x44')]['findOne']({'where':{'id':_0x2fdff5[_0x625d('0x47')]['id']}})[_0x625d('0x22')](handleEntityNotFound(_0x23e4a2,null))[_0x625d('0x22')](function(_0x4d349f){if(_0x4d349f){return _0x4d349f[_0x625d('0x6d')]();}return null;})['then'](respondWithResult(_0x23e4a2,null))[_0x625d('0x4d')](handleError(_0x23e4a2,null));};exports[_0x625d('0x6e')]=function(_0x50693c,_0x13b685){if(_0x50693c[_0x625d('0x4e')]['id']){delete _0x50693c[_0x625d('0x4e')]['id'];}return db['MailAccount'][_0x625d('0x4c')]({'where':{'id':_0x50693c[_0x625d('0x47')]['id']}})['then'](handleEntityNotFound(_0x13b685,null))[_0x625d('0x22')](function(_0x12f8c8){if(_0x12f8c8){_0x50693c['body'][_0x625d('0x52')]=_0x12f8c8['id'];return db[_0x625d('0x2a')][_0x625d('0x53')](_0x50693c[_0x625d('0x4e')]);}})['then'](respondWithResult(_0x13b685,null))[_0x625d('0x4d')](handleError(_0x13b685,null));};exports[_0x625d('0x6f')]=function(_0x11a8e0,_0x43ec43){return db[_0x625d('0x44')][_0x625d('0x55')]({'where':{'id':_0x11a8e0['params']['id']}})['then'](handleEntityNotFound(_0x43ec43,null))[_0x625d('0x22')](function(_0x910b03){if(_0x910b03){return _0x910b03['setImap'](null);}return null;})[_0x625d('0x22')](respondWithStatusCode(_0x43ec43,null))[_0x625d('0x4d')](handleError(_0x43ec43,null));};exports[_0x625d('0x70')]=function(_0x4e5d25,_0x2d1e75){return db[_0x625d('0x44')][_0x625d('0x55')]({'where':{'id':_0x4e5d25[_0x625d('0x47')]['id']}})[_0x625d('0x22')](handleEntityNotFound(_0x2d1e75,null))[_0x625d('0x22')](function(_0x29e723){if(_0x29e723){return _0x29e723['getSmtp']();}return null;})['then'](respondWithResult(_0x2d1e75,null))[_0x625d('0x4d')](handleError(_0x2d1e75,null));};exports[_0x625d('0x71')]=function(_0x28fd2d,_0x59b66a){if(_0x28fd2d[_0x625d('0x4e')]['id']){delete _0x28fd2d[_0x625d('0x4e')]['id'];}return db['MailAccount'][_0x625d('0x4c')]({'where':{'id':_0x28fd2d['params']['id']}})['then'](handleEntityNotFound(_0x59b66a,null))[_0x625d('0x22')](function(_0x313d2b){if(_0x313d2b){_0x28fd2d['body'][_0x625d('0x52')]=_0x313d2b['id'];return db[_0x625d('0x48')]['create'](_0x28fd2d[_0x625d('0x4e')]);}})['then'](respondWithResult(_0x59b66a,null))['catch'](handleError(_0x59b66a,null));};exports['removeSmtp']=function(_0x523eae,_0x49f0cf){return db[_0x625d('0x44')][_0x625d('0x55')]({'where':{'id':_0x523eae[_0x625d('0x47')]['id']}})['then'](handleEntityNotFound(_0x49f0cf,null))['then'](function(_0x303198){if(_0x303198){return _0x303198[_0x625d('0x72')](null);}return null;})[_0x625d('0x22')](respondWithStatusCode(_0x49f0cf,null))[_0x625d('0x4d')](handleError(_0x49f0cf,null));};exports[_0x625d('0x73')]=function(_0x388ddb,_0x1fc3fc){return db['MailInteraction'][_0x625d('0x4c')]({'where':{'id':_0x388ddb[_0x625d('0x47')]['id']}})[_0x625d('0x22')](handleEntityNotFound(_0x1fc3fc,null))[_0x625d('0x22')](function(_0x3f4e1d){if(_0x3f4e1d){return _0x3f4e1d[_0x625d('0x73')](_0x388ddb[_0x625d('0x4e')][_0x625d('0x59')],_[_0x625d('0x74')](_0x388ddb[_0x625d('0x4e')],['ids','id'])||{});}})[_0x625d('0x22')](respondWithResult(_0x1fc3fc,null))['catch'](handleError(_0x1fc3fc,null));};exports[_0x625d('0x75')]=function(_0xc0a7b1,_0x968ff2){var _0x1a197d={'raw':![],'where':{}};var _0x2ab5f3={};var _0x1057f6={'count':0x0,'rows':[]};return db['MailAccount']['findOne']({'where':{'id':_0xc0a7b1['params']['id']}})[_0x625d('0x22')](handleEntityNotFound(_0x968ff2,null))[_0x625d('0x22')](function(_0x14b58a){if(_0x14b58a){_0x2ab5f3[_0x625d('0x33')]=_[_0x625d('0x4a')](db['MailInteraction']['rawAttributes']);_0x2ab5f3['query']=_[_0x625d('0x4a')](_0xc0a7b1[_0x625d('0x34')]);_0x2ab5f3[_0x625d('0x35')]=_[_0x625d('0x36')](_0x2ab5f3[_0x625d('0x33')],_0x2ab5f3[_0x625d('0x34')]);_0x1a197d[_0x625d('0x37')]=_['intersection'](_0x2ab5f3[_0x625d('0x33')],qs[_0x625d('0x38')](_0xc0a7b1[_0x625d('0x34')]['fields']));_0x1a197d['attributes']=_0x1a197d[_0x625d('0x37')][_0x625d('0x39')]?_0x1a197d[_0x625d('0x37')]:_0x2ab5f3[_0x625d('0x33')];if(!_0xc0a7b1['query'][_0x625d('0x3a')](_0x625d('0x3b'))){_0x1a197d[_0x625d('0x1c')]=qs['limit'](_0xc0a7b1[_0x625d('0x34')][_0x625d('0x1c')]);_0x1a197d[_0x625d('0x1e')]=qs[_0x625d('0x1e')](_0xc0a7b1[_0x625d('0x34')][_0x625d('0x1e')]);}_0x1a197d[_0x625d('0x3c')]=qs[_0x625d('0x3d')](_0xc0a7b1[_0x625d('0x34')][_0x625d('0x3d')]);_0x1a197d[_0x625d('0x3e')]=qs['filters'](_['pick'](_0xc0a7b1['query'],_0x2ab5f3[_0x625d('0x35')]));_0x1a197d['where'][_0x625d('0x52')]=_0x14b58a['id'];if(_0xc0a7b1[_0x625d('0x34')]['filter']){_0x1a197d[_0x625d('0x3e')]=_[_0x625d('0x41')](_0x1a197d[_0x625d('0x3e')],{'$or':_[_0x625d('0x2e')](_0x1a197d[_0x625d('0x37')],function(_0x26791c){var _0x14e198={};_0x14e198[_0x26791c]={'$like':'%'+_0xc0a7b1[_0x625d('0x34')][_0x625d('0x40')]+'%'};return _0x14e198;})});}_0x1a197d=_[_0x625d('0x41')]({},_0x1a197d,_0xc0a7b1[_0x625d('0x43')]);return db['MailInteraction'][_0x625d('0x1f')]({'where':_0x1a197d[_0x625d('0x3e')]})[_0x625d('0x22')](function(_0x14f535){_0x1057f6[_0x625d('0x1f')]=_0x14f535;if(_0xc0a7b1[_0x625d('0x34')]['includeAll']){_0x1a197d[_0x625d('0x57')]=[{'model':db['CmContact'],'as':_0x625d('0x76'),'required':![]},{'model':db['User'],'as':_0x625d('0x77'),'attributes':['name','fullname',_0x625d('0x78')],'required':![]},{'model':db[_0x625d('0x79')],'as':_0x625d('0x7a'),'attributes':['id',_0x625d('0x28'),_0x625d('0x7b')],'where':_0xc0a7b1[_0x625d('0x34')][_0x625d('0x7c')]?{'id':_0xc0a7b1[_0x625d('0x34')][_0x625d('0x7c')]}:undefined,'required':_0xc0a7b1[_0x625d('0x34')][_0x625d('0x7c')]?!![]:![]}];}return db[_0x625d('0x7d')][_0x625d('0x45')](_0x1a197d);})['then'](function(_0x226d8f){_0x1057f6['rows']=_0x226d8f;return _0x1057f6;});}})[_0x625d('0x22')](respondWithFilteredResult(_0x968ff2,_0x1a197d))[_0x625d('0x4d')](handleError(_0x968ff2,null));};exports[_0x625d('0x7e')]=function addApplications(_0x2265d3,_0xcb686f){var _0x6effcc=_0x2265d3[_0x625d('0x47')]['id'];var _0x4172cf=_0x2265d3[_0x625d('0x4e')];var _0x4d7d12=0xc8;var _0x34795a=null;return db[_0x625d('0x7f')][_0x625d('0x80')]({'isolationLevel':db[_0x625d('0x7f')]['Transaction']['ISOLATION_LEVELS'][_0x625d('0x81')]},function(_0x4e9e05){return db[_0x625d('0x44')][_0x625d('0x55')]({'where':{'id':_0x6effcc},'transaction':_0x4e9e05})[_0x625d('0x22')](function(_0x2be0f7){if(_0x2be0f7){return db[_0x625d('0x82')][_0x625d('0x26')]({'where':{'MailAccountId':_0x6effcc},'transaction':_0x4e9e05})[_0x625d('0x22')](function(){var _0x51087c=_[_0x625d('0x2e')](_0x4172cf,function(_0x18afb3){_0x18afb3['MailAccountId']=_0x6effcc;return _0x18afb3;});return db[_0x625d('0x82')][_0x625d('0x83')](_0x51087c,{'transaction':_0x4e9e05});});}else{_0x4d7d12=0x194;_0x34795a=[];}});})[_0x625d('0x22')](function(){if(_0x4d7d12!==0x194){return db['MailApplication'][_0x625d('0x84')]({'where':{'MailAccountId':_0x6effcc},'order':'priority'})[_0x625d('0x22')](function(_0x53371b){_0x34795a=_0x53371b;});}})[_0x625d('0x4d')](function(_0x31efb2){_0x4d7d12=0x1f4;logger['error'](_0x31efb2[_0x625d('0x85')]);if(_0x31efb2[_0x625d('0x28')]){delete _0x31efb2['name'];}_0x34795a=_0x31efb2;})[_0x625d('0x86')](function(){if(_0x34795a===null){_0xcb686f[_0x625d('0x19')](_0x4d7d12);}else{if(_0x4d7d12===0x1f4){_0xcb686f['status'](_0x4d7d12)[_0x625d('0x87')](_0x34795a);}else{_0xcb686f[_0x625d('0x1a')](_0x4d7d12)[_0x625d('0x1b')](_0x34795a);}}});};exports[_0x625d('0x88')]=function(_0x89d7a,_0x22412a){var _0xdc4bd8={};var _0x1088dc={};var _0x4c73c3;var _0x58feab;return db['MailAccount'][_0x625d('0x55')]({'where':{'id':_0x89d7a[_0x625d('0x47')]['id']}})[_0x625d('0x22')](handleEntityNotFound(_0x22412a,null))[_0x625d('0x22')](function(_0x260bfd){if(_0x260bfd){_0x4c73c3=_0x260bfd;_0x1088dc[_0x625d('0x33')]=_[_0x625d('0x4a')](db[_0x625d('0x82')][_0x625d('0x2f')]);_0x1088dc['query']=_[_0x625d('0x4a')](_0x89d7a[_0x625d('0x34')]);_0x1088dc[_0x625d('0x35')]=_['intersection'](_0x1088dc[_0x625d('0x33')],_0x1088dc[_0x625d('0x34')]);_0xdc4bd8[_0x625d('0x37')]=_[_0x625d('0x36')](_0x1088dc[_0x625d('0x33')],qs['fields'](_0x89d7a[_0x625d('0x34')][_0x625d('0x38')]));_0xdc4bd8[_0x625d('0x37')]=_0xdc4bd8[_0x625d('0x37')]['length']?_0xdc4bd8[_0x625d('0x37')]:_0x1088dc['model'];_0xdc4bd8[_0x625d('0x3c')]=qs['sort'](_0x89d7a[_0x625d('0x34')][_0x625d('0x3d')]);_0xdc4bd8['where']=qs[_0x625d('0x35')](_[_0x625d('0x3f')](_0x89d7a['query'],_0x1088dc['filters']));if(_0x89d7a[_0x625d('0x34')][_0x625d('0x40')]){_0xdc4bd8[_0x625d('0x3e')]=_[_0x625d('0x41')](_0xdc4bd8[_0x625d('0x3e')],{'$or':_[_0x625d('0x2e')](_0xdc4bd8[_0x625d('0x37')],function(_0x17df33){var _0x39b98c={};_0x39b98c[_0x17df33]={'$like':'%'+_0x89d7a[_0x625d('0x34')][_0x625d('0x40')]+'%'};return _0x39b98c;})});}_0xdc4bd8=_[_0x625d('0x41')]({},_0xdc4bd8,_0x89d7a['options']);return _0x4c73c3[_0x625d('0x88')](_0xdc4bd8);}})[_0x625d('0x22')](function(_0x2051d5){if(_0x2051d5){_0x58feab=_0x2051d5[_0x625d('0x39')];if(!_0x89d7a[_0x625d('0x34')][_0x625d('0x3a')](_0x625d('0x3b'))){_0xdc4bd8[_0x625d('0x1c')]=qs[_0x625d('0x1c')](_0x89d7a[_0x625d('0x34')][_0x625d('0x1c')]);_0xdc4bd8['offset']=qs[_0x625d('0x1e')](_0x89d7a[_0x625d('0x34')]['offset']);}return _0x4c73c3[_0x625d('0x88')](_0xdc4bd8);}})[_0x625d('0x22')](function(_0x32841d){if(_0x32841d){return _0x32841d?{'count':_0x58feab,'rows':_0x32841d}:null;}})[_0x625d('0x22')](respondWithResult(_0x22412a,null))[_0x625d('0x4d')](handleError(_0x22412a,null));};exports[_0x625d('0x89')]=function(_0x144c99,_0x478b92){var _0x2a9aad={'raw':!![],'where':{}};var _0xacdd15={};var _0x4fbaab={'count':0x0,'rows':[]};return db[_0x625d('0x44')][_0x625d('0x55')]({'where':{'id':_0x144c99[_0x625d('0x47')]['id']}})[_0x625d('0x22')](handleEntityNotFound(_0x478b92,null))[_0x625d('0x22')](function(_0x4bd2ca){if(_0x4bd2ca){_0xacdd15[_0x625d('0x33')]=_['keys'](db[_0x625d('0x8a')][_0x625d('0x2f')]);_0xacdd15[_0x625d('0x34')]=_[_0x625d('0x4a')](_0x144c99[_0x625d('0x34')]);_0xacdd15['filters']=_[_0x625d('0x36')](_0xacdd15[_0x625d('0x33')],_0xacdd15[_0x625d('0x34')]);_0x2a9aad[_0x625d('0x37')]=_[_0x625d('0x36')](_0xacdd15['model'],qs['fields'](_0x144c99[_0x625d('0x34')]['fields']));_0x2a9aad['attributes']=_0x2a9aad[_0x625d('0x37')]['length']?_0x2a9aad[_0x625d('0x37')]:_0xacdd15['model'];if(!_0x144c99['query']['hasOwnProperty'](_0x625d('0x3b'))){_0x2a9aad[_0x625d('0x1c')]=qs['limit'](_0x144c99[_0x625d('0x34')]['limit']);_0x2a9aad[_0x625d('0x1e')]=qs[_0x625d('0x1e')](_0x144c99['query'][_0x625d('0x1e')]);}_0x2a9aad[_0x625d('0x3c')]=qs[_0x625d('0x3d')](_0x144c99[_0x625d('0x34')][_0x625d('0x3d')]);_0x2a9aad[_0x625d('0x3e')]=qs[_0x625d('0x35')](_[_0x625d('0x3f')](_0x144c99[_0x625d('0x34')],_0xacdd15[_0x625d('0x35')]));_0x2a9aad['where'][_0x625d('0x52')]=_0x4bd2ca['id'];if(_0x144c99[_0x625d('0x34')][_0x625d('0x40')]){_0x2a9aad[_0x625d('0x3e')]=_['merge'](_0x2a9aad[_0x625d('0x3e')],{'$or':_['map'](_0x2a9aad['attributes'],function(_0x35a97a){var _0x590c12={};_0x590c12[_0x35a97a]={'$like':'%'+_0x144c99[_0x625d('0x34')]['filter']+'%'};return _0x590c12;})});}if(_0x144c99[_0x625d('0x34')][_0x625d('0x8b')]){var _0x2e7f99=_0x144c99['query'][_0x625d('0x8b')]['split'](',');var _0x2071f9={};_0x2071f9[_0x2e7f99[0x0]]={'$gte':moment(_0x2e7f99[0x1])[_0x625d('0x8c')](_0x625d('0x8d'))};_0x2a9aad[_0x625d('0x3e')]=_[_0x625d('0x41')](_0x2a9aad[_0x625d('0x3e')],_0x2071f9);}_0x2a9aad=_[_0x625d('0x41')]({},_0x2a9aad,_0x144c99[_0x625d('0x43')]);return db[_0x625d('0x8a')][_0x625d('0x1f')]({'where':_0x2a9aad[_0x625d('0x3e')]})[_0x625d('0x22')](function(_0x49280b){_0x4fbaab['count']=_0x49280b;if(_0x144c99[_0x625d('0x34')]['includeAll']){_0x2a9aad['include']=[{'all':!![]}];}return db[_0x625d('0x8a')][_0x625d('0x45')](_0x2a9aad);})['then'](function(_0x137697){if(_0x144c99['query']['inlineCss']===_0x625d('0x8e')){for(var _0x47fd37=0x0;_0x47fd37<_0x137697[_0x625d('0x39')];_0x47fd37++){_0x137697[_0x47fd37][_0x625d('0x4e')]=juice(_0x137697[_0x47fd37][_0x625d('0x4e')]);}}_0x4fbaab['rows']=_0x137697;return _0x4fbaab;});}})[_0x625d('0x22')](respondWithFilteredResult(_0x478b92,_0x2a9aad))[_0x625d('0x4d')](handleError(_0x478b92,null));};exports[_0x625d('0x87')]=function(_0x1119bf,_0x25bdd0){var _0x29460b,_0x345280={},_0x5ad470;if(_0x1119bf[_0x625d('0x4e')]['to']){_0x5ad470=_0x1119bf[_0x625d('0x4e')]['to'][_0x625d('0x8f')](',')[0x0];}return db[_0x625d('0x44')]['find']({'where':{'id':_0x1119bf[_0x625d('0x47')]['id']},'include':[{'model':db['CmList'],'as':_0x625d('0x90'),'include':[{'model':db[_0x625d('0x91')],'as':_0x625d('0x92'),'where':{'email':_0x5ad470},'limit':0x1,'order':[[_0x625d('0x93'),_0x625d('0x94')]]}]},{'model':db[_0x625d('0x48')],'as':_0x625d('0x49'),'raw':!![]}]})[_0x625d('0x22')](handleEntityNotFound(_0x25bdd0,null))[_0x625d('0x22')](function(_0x1651c8){if(_0x1651c8){_0x29460b=_0x1651c8;if(_0x1651c8[_0x625d('0x49')]){if(_[_0x625d('0x95')](_0x1119bf[_0x625d('0x4e')][_0x625d('0x96')])){_0x1119bf[_0x625d('0x4e')][_0x625d('0x96')]=util[_0x625d('0x8c')]('%s\x20<%s>',_0x1651c8[_0x625d('0x28')],_0x1651c8[_0x625d('0x5e')]||_0x1651c8[_0x625d('0x49')]['user']);}if(_0x1119bf[_0x625d('0x4e')]['attachments']&&_0x1119bf[_0x625d('0x4e')]['attachments'][_0x625d('0x39')]){for(var _0x155c76=0x0;_0x155c76<_0x1119bf[_0x625d('0x4e')]['attachments'][_0x625d('0x39')];_0x155c76+=0x1){_0x1119bf[_0x625d('0x4e')]['attachments'][_0x155c76]={'filename':_0x1119bf[_0x625d('0x4e')][_0x625d('0x97')][_0x155c76][_0x625d('0x28')],'path':path[_0x625d('0x98')](config[_0x625d('0x99')],'server/files/attachments',_0x1119bf[_0x625d('0x4e')][_0x625d('0x97')][_0x155c76]['basename'])};}}var _0x1c04f9={'tls':{'rejectUnauthorized':![]}};if(_['isNil'](_0x1651c8[_0x625d('0x49')][_0x625d('0x65')])){if(_0x1651c8[_0x625d('0x49')][_0x625d('0x68')]){_0x1c04f9['auth']={'user':_0x1651c8[_0x625d('0x49')][_0x625d('0x61')],'pass':_0x1651c8[_0x625d('0x49')][_0x625d('0x64')]};}_0x1c04f9['host']=_0x1651c8['Smtp'][_0x625d('0x66')];_0x1c04f9[_0x625d('0x67')]=_0x1651c8[_0x625d('0x49')][_0x625d('0x67')];_0x1c04f9[_0x625d('0x9a')]=_0x1651c8[_0x625d('0x49')][_0x625d('0x9a')];}else{_0x1c04f9[_0x625d('0x65')]=_0x1651c8[_0x625d('0x49')][_0x625d('0x65')];_0x1c04f9['auth']={'user':_0x1651c8[_0x625d('0x49')][_0x625d('0x61')],'pass':_0x1651c8[_0x625d('0x49')][_0x625d('0x64')]};}return respondWithRpcPromise(_0x625d('0x9b'),'sendMail',{'account':_0x1c04f9,'message':_0x1119bf[_0x625d('0x4e')]});}else{throw new Error(_0x625d('0x9c'));}}})[_0x625d('0x22')](function(_0x4db047){if(_0x4db047){_0x345280=_0x4db047;if(_0x29460b[_0x625d('0x90')]){if(_0x29460b[_0x625d('0x90')]['Contacts']['length']){return _0x29460b[_0x625d('0x90')][_0x625d('0x92')][0x0];}else{return db[_0x625d('0x91')][_0x625d('0x53')](_[_0x625d('0x7')](_0x1119bf['body'],{'firstName':_0x1119bf[_0x625d('0x4e')]['to'],'email':_0x1119bf[_0x625d('0x4e')]['to'],'phone':_0x1119bf['body']['to'],'ListId':_0x29460b[_0x625d('0x9d')]}));}}else{throw new Error(_0x625d('0x9c'));}}})[_0x625d('0x22')](function(_0x5950a8){if(_0x5950a8){var _0x5a4691={'UserId':_0x1119bf[_0x625d('0x61')]['id'],'ContactId':_0x5950a8['id'],'MailAccountId':_0x29460b['id'],'inReplyTo':_0x345280[_0x625d('0x9e')],'to':_0x1119bf[_0x625d('0x4e')][_0x625d('0x96')],'cc':_0x1119bf[_0x625d('0x4e')]['cc'],'subject':_0x1119bf[_0x625d('0x4e')]['subject'],'attach':_0x1119bf['body'][_0x625d('0x9f')],'firstMsgDirection':_0x625d('0xa0'),'lastMsgAt':moment()[_0x625d('0x8c')](_0x625d('0x8d')),'lastMsgDirection':_0x625d('0xa0'),'Messages':[_[_0x625d('0x41')](_0x1119bf[_0x625d('0x4e')],{'messageId':_0x345280['messageId'],'sentAt':moment()[_0x625d('0x8c')](_0x625d('0x8d')),'read':!![],'MailAccountId':_0x29460b['id'],'UserId':_0x1119bf[_0x625d('0x61')]['id'],'ContactId':_0x5950a8['id']})]};if(_0x1119bf['body'][_0x625d('0xa1')]){_0x5a4691=_[_0x625d('0x41')](_0x5a4691,_0x1119bf[_0x625d('0x4e')]['Interaction']);}return db[_0x625d('0x7d')][_0x625d('0x53')](_0x5a4691,{'include':[{'model':db[_0x625d('0x8a')],'as':_0x625d('0xa2')}]});}})['then'](respondWithResult(_0x25bdd0,null))[_0x625d('0x4d')](handleError(_0x25bdd0,null));};exports[_0x625d('0xa3')]=function(_0x25348e,_0x221ca2){return db[_0x625d('0x44')]['find']({'where':{'id':_0x25348e[_0x625d('0x47')]['id']},'include':[{'model':db['MailServerOut'],'as':'Smtp','raw':!![],'include':[{'model':db['CloudProvider'],'as':_0x625d('0xa4'),'raw':!![]}]}]})[_0x625d('0x22')](handleEntityNotFound(_0x221ca2,null))[_0x625d('0x22')](function(_0xd8e37b){if(!_0xd8e37b['Smtp'])return;var _0x1b1c37={'id':_0xd8e37b['id'],'tls':{'rejectUnauthorized':![]}};if(_0xd8e37b[_0x625d('0x5d')]!==_0x625d('0xa5')){_0x1b1c37[_0x625d('0x65')]=_0xd8e37b[_0x625d('0x5d')];}else{_0x1b1c37[_0x625d('0x66')]=_0xd8e37b['Smtp'][_0x625d('0x66')];_0x1b1c37[_0x625d('0x67')]=_0xd8e37b['Smtp'][_0x625d('0x67')];_0x1b1c37[_0x625d('0x9a')]=_0xd8e37b[_0x625d('0x49')][_0x625d('0x9a')];}if(_0xd8e37b[_0x625d('0x49')][_0x625d('0x68')]){if(_0xd8e37b[_0x625d('0x49')]['modernAuthentication']){_0x1b1c37[_0x625d('0xa6')]={'type':_0x625d('0xa7'),'user':_0xd8e37b['Smtp'][_0x625d('0x61')],'accessToken':_0xd8e37b['Smtp'][_0x625d('0xa4')][_0x625d('0xa8')]};}else{_0x1b1c37[_0x625d('0xa6')]={'user':_0xd8e37b[_0x625d('0x49')][_0x625d('0x61')],'pass':_0xd8e37b['Smtp'][_0x625d('0x64')]};}}return respondWithRpcPromise(_0x625d('0xa9'),_0x625d('0xa3'),{'account':_0x1b1c37});})[_0x625d('0x22')](respondWithResult(_0x221ca2,null))['catch'](handleError(_0x221ca2,null));};exports[_0x625d('0x26')]=function(_0x56aca4,_0x2b2479){return db[_0x625d('0x44')][_0x625d('0x4c')]({'where':{'id':_0x56aca4[_0x625d('0x47')]['id']}})[_0x625d('0x22')](handleEntityNotFound(_0x2b2479,null))['then'](function(_0x486e73){if(_0x486e73&&_0x486e73[_0x625d('0x65')]){throw new db[(_0x625d('0xaa'))]['ValidationError'](_0x625d('0xab'));}return _0x486e73;})[_0x625d('0x22')](removeEntity(_0x2b2479,null))[_0x625d('0x4d')](handleError(_0x2b2479,null));};exports[_0x625d('0xac')]=function(_0x359830,_0x408a06){return db[_0x625d('0x44')][_0x625d('0x4c')]({'where':{'id':_0x359830[_0x625d('0x47')]['id']}})[_0x625d('0x22')](handleEntityNotFound(_0x408a06,null))[_0x625d('0x22')](function(_0x3e881f){if(_0x3e881f){return _0x3e881f[_0x625d('0xac')](_0x359830['body'][_0x625d('0x59')],_[_0x625d('0x74')](_0x359830['body'],[_0x625d('0x59'),'id'])||{})[_0x625d('0xad')](function(_0x56e3b9){for(var _0x4b0924=0x0;_0x4b0924<_0x359830[_0x625d('0x4e')][_0x625d('0x59')]['length'];_0x4b0924+=0x1){socket[_0x625d('0xae')](_0x625d('0xaf'),{'UserId':Number(_0x359830[_0x625d('0x4e')]['ids'][_0x4b0924]),'MailAccountId':Number(_0x359830[_0x625d('0x47')]['id'])});}return _0x56e3b9;});}})[_0x625d('0x22')](respondWithResult(_0x408a06,null))[_0x625d('0x4d')](handleError(_0x408a06,null));};exports[_0x625d('0xb0')]=function(_0x10d705,_0x4996b4){return db[_0x625d('0x44')][_0x625d('0x4c')]({'where':{'id':_0x10d705[_0x625d('0x47')]['id']}})[_0x625d('0x22')](handleEntityNotFound(_0x4996b4,null))[_0x625d('0x22')](function(_0x497336){if(_0x497336){return _0x497336['removeAgents'](_0x10d705[_0x625d('0x34')][_0x625d('0x59')])[_0x625d('0x22')](function(){if(_[_0x625d('0xb1')](_0x10d705[_0x625d('0x34')][_0x625d('0x59')])){for(var _0x2c8664=0x0;_0x2c8664<_0x10d705[_0x625d('0x34')][_0x625d('0x59')][_0x625d('0x39')];_0x2c8664+=0x1){socket[_0x625d('0xae')](_0x625d('0xb2'),{'UserId':Number(_0x10d705['query']['ids'][_0x2c8664]),'MailAccountId':Number(_0x10d705[_0x625d('0x47')]['id'])});}}else{socket[_0x625d('0xae')](_0x625d('0xb2'),{'UserId':Number(_0x10d705['query'][_0x625d('0x59')]),'MailAccountId':Number(_0x10d705[_0x625d('0x47')]['id'])});}});}})[_0x625d('0x22')](respondWithStatusCode(_0x4996b4,null))[_0x625d('0x4d')](handleError(_0x4996b4,null));};exports[_0x625d('0xb3')]=function(_0x3b89d1,_0x5a1f17){var _0xc99ea4={};var _0x4a218e={};var _0x120314;var _0x1df142;return db[_0x625d('0x44')][_0x625d('0x55')]({'where':{'id':_0x3b89d1[_0x625d('0x47')]['id']}})[_0x625d('0x22')](handleEntityNotFound(_0x5a1f17,null))[_0x625d('0x22')](function(_0x5252d2){if(_0x5252d2){_0x120314=_0x5252d2;_0x4a218e[_0x625d('0x33')]=_[_0x625d('0x4a')](db[_0x625d('0xb4')][_0x625d('0x2f')]);_0x4a218e[_0x625d('0x34')]=_[_0x625d('0x4a')](_0x3b89d1[_0x625d('0x34')]);_0x4a218e[_0x625d('0x35')]=_[_0x625d('0x36')](_0x4a218e[_0x625d('0x33')],_0x4a218e[_0x625d('0x34')]);_0xc99ea4[_0x625d('0x37')]=_['intersection'](_0x4a218e[_0x625d('0x33')],qs['fields'](_0x3b89d1[_0x625d('0x34')]['fields']));_0xc99ea4['attributes']=_0xc99ea4[_0x625d('0x37')][_0x625d('0x39')]?_0xc99ea4[_0x625d('0x37')]:_0x4a218e['model'];_0xc99ea4[_0x625d('0x3c')]=qs[_0x625d('0x3d')](_0x3b89d1[_0x625d('0x34')]['sort']);_0xc99ea4['where']=qs['filters'](_[_0x625d('0x3f')](_0x3b89d1[_0x625d('0x34')],_0x4a218e[_0x625d('0x35')]));if(_0x3b89d1['query'][_0x625d('0x40')]){_0xc99ea4[_0x625d('0x3e')]=_[_0x625d('0x41')](_0xc99ea4[_0x625d('0x3e')],{'$or':_[_0x625d('0x2e')](_0xc99ea4[_0x625d('0x37')],function(_0xa8ca0c){var _0x4000b5={};_0x4000b5[_0xa8ca0c]={'$like':'%'+_0x3b89d1['query'][_0x625d('0x40')]+'%'};return _0x4000b5;})});}_0xc99ea4=_[_0x625d('0x41')]({},_0xc99ea4,_0x3b89d1[_0x625d('0x43')]);return _0x120314[_0x625d('0xb3')](_0xc99ea4);}})[_0x625d('0x22')](function(_0x148e54){if(_0x148e54){_0x1df142=_0x148e54['length'];if(!_0x3b89d1[_0x625d('0x34')][_0x625d('0x3a')](_0x625d('0x3b'))){_0xc99ea4[_0x625d('0x1c')]=qs['limit'](_0x3b89d1['query'][_0x625d('0x1c')]);_0xc99ea4[_0x625d('0x1e')]=qs[_0x625d('0x1e')](_0x3b89d1[_0x625d('0x34')][_0x625d('0x1e')]);}return _0x120314[_0x625d('0xb3')](_0xc99ea4);}})[_0x625d('0x22')](function(_0x29f223){if(_0x29f223){return _0x29f223?{'count':_0x1df142,'rows':_0x29f223}:null;}})[_0x625d('0x22')](respondWithResult(_0x5a1f17,null))[_0x625d('0x4d')](handleError(_0x5a1f17,null));};