Built motion from commit ab870f9e.|2.5.44
[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 _0x1fd8=['Sequelize','ValidationError','You\x20can\x27t\x20remove\x20the\x20mail\x20service\x20account','addAgents','spread','emit','removeAgents','userMailAccount:remove','getAgents','moment','util','path','lodash','juice','ioredis','../../components/parsers/qs','../../config/logger','api','../../config/environment','../../mysqldb','defaults','socket.io-emitter','redis','register','jayson/promise','http','request','MailAccount,\x20%s,\x20%s','request\x20sent','debug','stringify','error','code','message','result','catch','sendStatus','status','end','json','undefined','limit','count','offset','set','Content-Range','then','get','UserProfileResource','stack','name','send','index','MailServerIn','Imap','MailServerOut','Smtp','mandatoryDispositionPause','map','MailAccount','rawAttributes','fieldName','type','key','model','query','keys','filters','intersection','fields','attributes','length','hasOwnProperty','nolimit','order','sort','where','filter','VIRTUAL','merge','options','include','findAll','rows','show','find','body','modernAuthentication','CloudProviderId','Pause','update','describe','params','Disposition','create','findOne','pick','MailAccountId','includeAll','removeDispositions','ids','addAnswer','CannedAnswer','getAnswers','removeAnswers','provider','custom','email','ListId','isNil','active','description','user','username','pass','password','service','port','authentication','host','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','getImap','addImap','removeImap','setImap','getSmtp','addSmtp','removeSmtp','setSmtp','addInteraction','MailInteraction','omit','getInteractions','CmContact','Contact','User','Owner','Tags','color','sequelize','transaction','Transaction','ISOLATION_LEVELS','MailApplication','bulkCreate','findAndCountAll','priority','finally','getApplications','getMessages','MailMessage','$gte','split','format','YYYY-MM-DD\x20HH:mm:ss','inlineCss','CmList','List','Contacts','updatedAt','DESC','from','%s\x20<%s>','attachments','root','server/files/attachments','basename','auth','secure','sendMail','List\x20not\x20found','messageId','out','Interaction','Messages','verifySmtp','CloudProvider','OAuth2','data5','destroy'];(function(_0x2ad4e0,_0x52fd3c){var _0x1c5eff=function(_0x42ecc2){while(--_0x42ecc2){_0x2ad4e0['push'](_0x2ad4e0['shift']());}};_0x1c5eff(++_0x52fd3c);}(_0x1fd8,0x179));var _0x81fd=function(_0x41196a,_0x390a35){_0x41196a=_0x41196a-0x0;var _0x2ffd61=_0x1fd8[_0x41196a];return _0x2ffd61;};'use strict';var moment=require(_0x81fd('0x0'));var BPromise=require('bluebird');var util=require(_0x81fd('0x1'));var path=require(_0x81fd('0x2'));var _=require(_0x81fd('0x3'));var juice=require(_0x81fd('0x4'));var Redis=require(_0x81fd('0x5'));var qs=require(_0x81fd('0x6'));var logger=require(_0x81fd('0x7'))(_0x81fd('0x8'));var config=require(_0x81fd('0x9'));var db=require(_0x81fd('0xa'))['db'];config['redis']=_[_0x81fd('0xb')](config['redis'],{'host':'localhost','port':0x18eb});var socket=require(_0x81fd('0xc'))(new Redis(config[_0x81fd('0xd')]));require('./mailAccount.socket')[_0x81fd('0xe')](socket);var jayson=require(_0x81fd('0xf'));var client=jayson['client'][_0x81fd('0x10')]({'port':0x232b});function respondWithRpcPromise(_0x2889c3,_0x1cefe9,_0x7bc07b,_0x30a922){return new BPromise(function(_0xce781d,_0x55ee54){var _0x339cfe=_0x30a922||client;return _0x339cfe[_0x81fd('0x11')](_0x2889c3,_0x7bc07b)['then'](function(_0x2d9ba5){logger['info'](_0x81fd('0x12'),_0x1cefe9,_0x81fd('0x13'));logger[_0x81fd('0x14')]('MailAccount,\x20%s,\x20%s,\x20%s',_0x1cefe9,_0x81fd('0x13'),JSON[_0x81fd('0x15')](_0x2d9ba5));if(_0x2d9ba5['error']){if(_0x2d9ba5[_0x81fd('0x16')][_0x81fd('0x17')]===0x1f4){logger[_0x81fd('0x16')]('MailAccount,\x20%s,\x20%s',_0x1cefe9,_0x2d9ba5['error']['message']);return _0x55ee54(_0x2d9ba5[_0x81fd('0x16')][_0x81fd('0x18')]);}logger[_0x81fd('0x16')](_0x81fd('0x12'),_0x1cefe9,_0x2d9ba5[_0x81fd('0x16')][_0x81fd('0x18')]);return _0xce781d(_0x2d9ba5[_0x81fd('0x16')]['message']);}else{logger['info'](_0x81fd('0x12'),_0x1cefe9,_0x81fd('0x13'));_0xce781d(_0x2d9ba5[_0x81fd('0x19')][_0x81fd('0x18')]);}})[_0x81fd('0x1a')](function(_0x17e627){logger['error'](_0x81fd('0x12'),_0x1cefe9,_0x17e627);_0x55ee54(_0x17e627);});});}function respondWithStatusCode(_0x195626,_0x5c2208){_0x5c2208=_0x5c2208||0xcc;return function(_0x37622c){if(_0x37622c){return _0x195626[_0x81fd('0x1b')](_0x5c2208);}return _0x195626[_0x81fd('0x1c')](_0x5c2208)[_0x81fd('0x1d')]();};}function respondWithResult(_0xc7d6dd,_0x207b73){_0x207b73=_0x207b73||0xc8;return function(_0x299d74){if(_0x299d74){return _0xc7d6dd[_0x81fd('0x1c')](_0x207b73)[_0x81fd('0x1e')](_0x299d74);}};}function respondWithFilteredResult(_0x3856c9,_0x28abf7){return function(_0x4a1387){if(_0x4a1387){var _0x385eaf=typeof _0x28abf7['offset']===_0x81fd('0x1f')&&typeof _0x28abf7[_0x81fd('0x20')]===_0x81fd('0x1f');var _0x15d540=_0x4a1387[_0x81fd('0x21')];var _0x347082=_0x385eaf?0x0:_0x28abf7[_0x81fd('0x22')];var _0x45dc04=_0x385eaf?_0x4a1387[_0x81fd('0x21')]:_0x28abf7[_0x81fd('0x22')]+_0x28abf7[_0x81fd('0x20')];var _0x4240ce;if(_0x45dc04>=_0x15d540){_0x45dc04=_0x15d540;_0x4240ce=0xc8;}else{_0x4240ce=0xce;}_0x3856c9[_0x81fd('0x1c')](_0x4240ce);return _0x3856c9[_0x81fd('0x23')](_0x81fd('0x24'),_0x347082+'-'+_0x45dc04+'/'+_0x15d540)[_0x81fd('0x1e')](_0x4a1387);}return null;};}function saveUpdates(_0x51a766){return function(_0x1f140b){if(_0x1f140b){return _0x1f140b['update'](_0x51a766)[_0x81fd('0x25')](function(_0x2f82fe){return _0x2f82fe;});}return null;};}function removeEntity(_0x4f4b3b){return function(_0x234706){if(_0x234706){return _0x234706['destroy']()[_0x81fd('0x25')](function(){var _0x339d7c=_0x234706[_0x81fd('0x26')]({'plain':!![]});var _0xfd8fda='MailAccounts';return db[_0x81fd('0x27')]['destroy']({'where':{'type':_0xfd8fda,'resourceId':_0x339d7c['id']}})[_0x81fd('0x25')](function(){return _0x234706;});})[_0x81fd('0x25')](function(){_0x4f4b3b['status'](0xcc)[_0x81fd('0x1d')]();});}};}function handleEntityNotFound(_0x545b0c){return function(_0x14bf18){if(!_0x14bf18){_0x545b0c[_0x81fd('0x1b')](0x194);}return _0x14bf18;};}function handleError(_0x417cf7,_0x473cb7){_0x473cb7=_0x473cb7||0x1f4;return function(_0x2f1920){logger[_0x81fd('0x16')](_0x2f1920[_0x81fd('0x28')]);if(_0x2f1920[_0x81fd('0x29')]){delete _0x2f1920[_0x81fd('0x29')];}_0x417cf7[_0x81fd('0x1c')](_0x473cb7)[_0x81fd('0x2a')](_0x2f1920);};}exports[_0x81fd('0x2b')]=function(_0x3ce9b4,_0x1ad227){var _0x1e7e60={'include':[{'model':db[_0x81fd('0x2c')],'as':_0x81fd('0x2d')},{'model':db[_0x81fd('0x2e')],'as':_0x81fd('0x2f')},{'model':db['Pause'],'as':_0x81fd('0x30')}]},_0x1a05b9={},_0x4f1311={'count':0x0,'rows':[]};var _0x346761=_[_0x81fd('0x31')](db[_0x81fd('0x32')][_0x81fd('0x33')],function(_0x4281c6){return{'name':_0x4281c6[_0x81fd('0x34')],'type':_0x4281c6[_0x81fd('0x35')][_0x81fd('0x36')]};});_0x1a05b9[_0x81fd('0x37')]=_[_0x81fd('0x31')](_0x346761,_0x81fd('0x29'));_0x1a05b9[_0x81fd('0x38')]=_[_0x81fd('0x39')](_0x3ce9b4['query']);_0x1a05b9[_0x81fd('0x3a')]=_[_0x81fd('0x3b')](_0x1a05b9[_0x81fd('0x37')],_0x1a05b9[_0x81fd('0x38')]);_0x1e7e60['attributes']=_[_0x81fd('0x3b')](_0x1a05b9[_0x81fd('0x37')],qs[_0x81fd('0x3c')](_0x3ce9b4[_0x81fd('0x38')][_0x81fd('0x3c')]));_0x1e7e60['attributes']=_0x1e7e60[_0x81fd('0x3d')][_0x81fd('0x3e')]?_0x1e7e60[_0x81fd('0x3d')]:_0x1a05b9['model'];if(!_0x3ce9b4[_0x81fd('0x38')][_0x81fd('0x3f')](_0x81fd('0x40'))){_0x1e7e60['limit']=qs[_0x81fd('0x20')](_0x3ce9b4['query'][_0x81fd('0x20')]);_0x1e7e60['offset']=qs[_0x81fd('0x22')](_0x3ce9b4[_0x81fd('0x38')][_0x81fd('0x22')]);}_0x1e7e60[_0x81fd('0x41')]=qs['sort'](_0x3ce9b4[_0x81fd('0x38')][_0x81fd('0x42')]);_0x1e7e60[_0x81fd('0x43')]=qs[_0x81fd('0x3a')](_['pick'](_0x3ce9b4[_0x81fd('0x38')],_0x1a05b9['filters']),_0x346761);if(_0x3ce9b4[_0x81fd('0x38')][_0x81fd('0x44')]){_0x1e7e60[_0x81fd('0x43')]=_['merge'](_0x1e7e60[_0x81fd('0x43')],{'$or':_[_0x81fd('0x31')](_0x346761,function(_0x2e5a89){if(_0x2e5a89['type']!==_0x81fd('0x45')){var _0x636f08={};_0x636f08[_0x2e5a89['name']]={'$like':'%'+_0x3ce9b4['query'][_0x81fd('0x44')]+'%'};return _0x636f08;}})});}_0x1e7e60=_[_0x81fd('0x46')]({},_0x1e7e60,_0x3ce9b4[_0x81fd('0x47')]);var _0x2c06b6={'where':_0x1e7e60[_0x81fd('0x43')]};return db[_0x81fd('0x32')][_0x81fd('0x21')](_0x2c06b6)[_0x81fd('0x25')](function(_0x214db4){_0x4f1311[_0x81fd('0x21')]=_0x214db4;if(_0x3ce9b4[_0x81fd('0x38')]['includeAll']){_0x1e7e60[_0x81fd('0x48')]=[{'all':!![]}];}return db['MailAccount'][_0x81fd('0x49')](_0x1e7e60);})['then'](function(_0x2d9479){_0x4f1311[_0x81fd('0x4a')]=_0x2d9479;return _0x4f1311;})[_0x81fd('0x25')](respondWithFilteredResult(_0x1ad227,_0x1e7e60))['catch'](handleError(_0x1ad227,null));};exports[_0x81fd('0x4b')]=function(_0xf1694a,_0x16f3e1){var _0x1905fe={'raw':![],'where':{'id':_0xf1694a['params']['id']},'include':[{'model':db[_0x81fd('0x2c')],'as':_0x81fd('0x2d')},{'model':db[_0x81fd('0x2e')],'as':_0x81fd('0x2f')},{'model':db['Pause'],'as':'mandatoryDispositionPause'}]},_0x3ba943={};_0x3ba943[_0x81fd('0x37')]=_['keys'](db[_0x81fd('0x32')][_0x81fd('0x33')]);_0x3ba943[_0x81fd('0x38')]=_['keys'](_0xf1694a[_0x81fd('0x38')]);_0x3ba943[_0x81fd('0x3a')]=_[_0x81fd('0x3b')](_0x3ba943['model'],_0x3ba943[_0x81fd('0x38')]);_0x1905fe[_0x81fd('0x3d')]=_[_0x81fd('0x3b')](_0x3ba943[_0x81fd('0x37')],qs[_0x81fd('0x3c')](_0xf1694a[_0x81fd('0x38')][_0x81fd('0x3c')]));_0x1905fe['attributes']=_0x1905fe[_0x81fd('0x3d')]['length']?_0x1905fe[_0x81fd('0x3d')]:_0x3ba943['model'];if(_0xf1694a['query']['includeAll']){_0x1905fe[_0x81fd('0x48')]=[{'all':!![]}];}_0x1905fe=_['merge']({},_0x1905fe,_0xf1694a[_0x81fd('0x47')]);return db[_0x81fd('0x32')][_0x81fd('0x4c')](_0x1905fe)[_0x81fd('0x25')](handleEntityNotFound(_0x16f3e1,null))[_0x81fd('0x25')](respondWithResult(_0x16f3e1,null))[_0x81fd('0x1a')](handleError(_0x16f3e1,null));};exports['update']=function(_0x31b130,_0x49a1f3){if(_0x31b130[_0x81fd('0x4d')]['id']){delete _0x31b130[_0x81fd('0x4d')]['id'];}if(_0x31b130[_0x81fd('0x4d')][_0x81fd('0x2d')]){if(!_0x31b130[_0x81fd('0x4d')][_0x81fd('0x2d')][_0x81fd('0x4e')]){_0x31b130[_0x81fd('0x4d')][_0x81fd('0x2d')][_0x81fd('0x4f')]=null;}}if(_0x31b130['body']['Smtp']){if(!_0x31b130[_0x81fd('0x4d')][_0x81fd('0x2f')][_0x81fd('0x4e')]){_0x31b130[_0x81fd('0x4d')][_0x81fd('0x2f')][_0x81fd('0x4f')]=null;}}return db[_0x81fd('0x32')][_0x81fd('0x4c')]({'where':{'id':_0x31b130['params']['id']},'include':[{'model':db[_0x81fd('0x2c')],'as':_0x81fd('0x2d')},{'model':db[_0x81fd('0x2e')],'as':'Smtp'},{'model':db[_0x81fd('0x50')],'as':_0x81fd('0x30')}]})['then'](handleEntityNotFound(_0x49a1f3,null))[_0x81fd('0x25')](saveUpdates(_0x31b130[_0x81fd('0x4d')],null))[_0x81fd('0x25')](function(_0x40e836){if(_0x40e836&&_0x31b130[_0x81fd('0x4d')][_0x81fd('0x2d')]){return db[_0x81fd('0x2c')][_0x81fd('0x51')](_0x31b130[_0x81fd('0x4d')][_0x81fd('0x2d')],{'where':{'MailAccountId':_0x40e836['id']}})[_0x81fd('0x25')](function(){return _0x40e836;});}return _0x40e836;})[_0x81fd('0x25')](function(_0x439a8e){if(_0x439a8e&&_0x31b130[_0x81fd('0x4d')][_0x81fd('0x2f')]){return db['MailServerOut'][_0x81fd('0x51')](_0x31b130[_0x81fd('0x4d')][_0x81fd('0x2f')],{'where':{'MailAccountId':_0x439a8e['id']}})['then'](function(){return _0x439a8e;});}return _0x439a8e;})[_0x81fd('0x25')](respondWithResult(_0x49a1f3,null))[_0x81fd('0x1a')](handleError(_0x49a1f3,null));};exports['describe']=function(_0x38c5b0,_0x309a61){return db[_0x81fd('0x32')][_0x81fd('0x52')]()[_0x81fd('0x25')](respondWithResult(_0x309a61,null))[_0x81fd('0x1a')](handleError(_0x309a61,null));};exports['addDisposition']=function(_0x41f816,_0x1fd101){if(_0x41f816['body']['id']){delete _0x41f816[_0x81fd('0x4d')]['id'];}return db[_0x81fd('0x32')][_0x81fd('0x4c')]({'where':{'id':_0x41f816[_0x81fd('0x53')]['id']}})['then'](handleEntityNotFound(_0x1fd101,null))['then'](function(_0x430292){if(_0x430292){_0x41f816[_0x81fd('0x4d')]['MailAccountId']=_0x430292['id'];return db[_0x81fd('0x54')][_0x81fd('0x55')](_0x41f816[_0x81fd('0x4d')]);}})[_0x81fd('0x25')](respondWithResult(_0x1fd101,null))['catch'](handleError(_0x1fd101,null));};exports['getDispositions']=function(_0x1a8139,_0x34a8e1){var _0x493b73={'raw':![],'where':{}};var _0x82e73c={};var _0x11b10d={'count':0x0,'rows':[]};return db[_0x81fd('0x32')][_0x81fd('0x56')]({'where':{'id':_0x1a8139['params']['id']}})[_0x81fd('0x25')](handleEntityNotFound(_0x34a8e1,null))['then'](function(_0x51c486){if(_0x51c486){_0x82e73c[_0x81fd('0x37')]=_[_0x81fd('0x39')](db[_0x81fd('0x54')][_0x81fd('0x33')]);_0x82e73c[_0x81fd('0x38')]=_[_0x81fd('0x39')](_0x1a8139[_0x81fd('0x38')]);_0x82e73c[_0x81fd('0x3a')]=_[_0x81fd('0x3b')](_0x82e73c[_0x81fd('0x37')],_0x82e73c[_0x81fd('0x38')]);_0x493b73[_0x81fd('0x3d')]=_[_0x81fd('0x3b')](_0x82e73c[_0x81fd('0x37')],qs[_0x81fd('0x3c')](_0x1a8139['query'][_0x81fd('0x3c')]));_0x493b73[_0x81fd('0x3d')]=_0x493b73[_0x81fd('0x3d')][_0x81fd('0x3e')]?_0x493b73[_0x81fd('0x3d')]:_0x82e73c[_0x81fd('0x37')];if(!_0x1a8139['query']['hasOwnProperty'](_0x81fd('0x40'))){_0x493b73[_0x81fd('0x20')]=qs['limit'](_0x1a8139[_0x81fd('0x38')][_0x81fd('0x20')]);_0x493b73['offset']=qs['offset'](_0x1a8139['query'][_0x81fd('0x22')]);}_0x493b73[_0x81fd('0x41')]=qs['sort'](_0x1a8139[_0x81fd('0x38')][_0x81fd('0x42')]);_0x493b73[_0x81fd('0x43')]=qs[_0x81fd('0x3a')](_[_0x81fd('0x57')](_0x1a8139[_0x81fd('0x38')],_0x82e73c[_0x81fd('0x3a')]));_0x493b73[_0x81fd('0x43')][_0x81fd('0x58')]=_0x51c486['id'];if(_0x1a8139['query'][_0x81fd('0x44')]){_0x493b73['where']=_[_0x81fd('0x46')](_0x493b73['where'],{'$or':_['map'](_0x493b73[_0x81fd('0x3d')],function(_0x4e8e2d){var _0x30adc8={};_0x30adc8[_0x4e8e2d]={'$like':'%'+_0x1a8139[_0x81fd('0x38')][_0x81fd('0x44')]+'%'};return _0x30adc8;})});}_0x493b73=_[_0x81fd('0x46')]({},_0x493b73,_0x1a8139['options']);return db[_0x81fd('0x54')][_0x81fd('0x21')]({'where':_0x493b73[_0x81fd('0x43')]})['then'](function(_0x5d3351){_0x11b10d[_0x81fd('0x21')]=_0x5d3351;if(_0x1a8139[_0x81fd('0x38')][_0x81fd('0x59')]){_0x493b73['include']=[{'all':!![]}];}return db[_0x81fd('0x54')][_0x81fd('0x49')](_0x493b73);})[_0x81fd('0x25')](function(_0x1b18df){_0x11b10d[_0x81fd('0x4a')]=_0x1b18df;return _0x11b10d;});}})[_0x81fd('0x25')](respondWithFilteredResult(_0x34a8e1,_0x493b73))[_0x81fd('0x1a')](handleError(_0x34a8e1,null));};exports[_0x81fd('0x5a')]=function(_0x506404,_0x1a39ec){return db[_0x81fd('0x32')]['find']({'where':{'id':_0x506404[_0x81fd('0x53')]['id']}})[_0x81fd('0x25')](handleEntityNotFound(_0x1a39ec,null))[_0x81fd('0x25')](function(_0x2ddd65){if(_0x2ddd65){return _0x2ddd65['removeDispositions'](_0x506404[_0x81fd('0x38')][_0x81fd('0x5b')]);}})['then'](respondWithStatusCode(_0x1a39ec,null))[_0x81fd('0x1a')](handleError(_0x1a39ec,null));};exports[_0x81fd('0x5c')]=function(_0x2b6ce5,_0x107c7c){if(_0x2b6ce5[_0x81fd('0x4d')]['id']){delete _0x2b6ce5['body']['id'];}return db[_0x81fd('0x32')][_0x81fd('0x4c')]({'where':{'id':_0x2b6ce5[_0x81fd('0x53')]['id']}})[_0x81fd('0x25')](handleEntityNotFound(_0x107c7c,null))[_0x81fd('0x25')](function(_0x6d7a6b){if(_0x6d7a6b){_0x2b6ce5[_0x81fd('0x4d')][_0x81fd('0x58')]=_0x6d7a6b['id'];return db[_0x81fd('0x5d')][_0x81fd('0x55')](_0x2b6ce5['body']);}})[_0x81fd('0x25')](respondWithResult(_0x107c7c,null))[_0x81fd('0x1a')](handleError(_0x107c7c,null));};exports[_0x81fd('0x5e')]=function(_0x56c07e,_0x4c8ef5){var _0x23ff26={'raw':![],'where':{}};var _0x507878={};var _0x5151e9={'count':0x0,'rows':[]};return db['MailAccount']['findOne']({'where':{'id':_0x56c07e['params']['id']}})[_0x81fd('0x25')](handleEntityNotFound(_0x4c8ef5,null))['then'](function(_0x593a3f){if(_0x593a3f){_0x507878[_0x81fd('0x37')]=_[_0x81fd('0x39')](db[_0x81fd('0x5d')][_0x81fd('0x33')]);_0x507878[_0x81fd('0x38')]=_[_0x81fd('0x39')](_0x56c07e[_0x81fd('0x38')]);_0x507878[_0x81fd('0x3a')]=_[_0x81fd('0x3b')](_0x507878[_0x81fd('0x37')],_0x507878[_0x81fd('0x38')]);_0x23ff26[_0x81fd('0x3d')]=_['intersection'](_0x507878['model'],qs[_0x81fd('0x3c')](_0x56c07e[_0x81fd('0x38')]['fields']));_0x23ff26[_0x81fd('0x3d')]=_0x23ff26[_0x81fd('0x3d')][_0x81fd('0x3e')]?_0x23ff26['attributes']:_0x507878[_0x81fd('0x37')];if(!_0x56c07e[_0x81fd('0x38')]['hasOwnProperty'](_0x81fd('0x40'))){_0x23ff26[_0x81fd('0x20')]=qs[_0x81fd('0x20')](_0x56c07e[_0x81fd('0x38')][_0x81fd('0x20')]);_0x23ff26[_0x81fd('0x22')]=qs['offset'](_0x56c07e[_0x81fd('0x38')]['offset']);}_0x23ff26[_0x81fd('0x41')]=qs[_0x81fd('0x42')](_0x56c07e[_0x81fd('0x38')]['sort']);_0x23ff26[_0x81fd('0x43')]=qs[_0x81fd('0x3a')](_[_0x81fd('0x57')](_0x56c07e[_0x81fd('0x38')],_0x507878[_0x81fd('0x3a')]));_0x23ff26[_0x81fd('0x43')][_0x81fd('0x58')]=_0x593a3f['id'];if(_0x56c07e[_0x81fd('0x38')][_0x81fd('0x44')]){_0x23ff26['where']=_['merge'](_0x23ff26['where'],{'$or':_[_0x81fd('0x31')](_0x23ff26[_0x81fd('0x3d')],function(_0x24c579){var _0x37239f={};_0x37239f[_0x24c579]={'$like':'%'+_0x56c07e[_0x81fd('0x38')][_0x81fd('0x44')]+'%'};return _0x37239f;})});}_0x23ff26=_[_0x81fd('0x46')]({},_0x23ff26,_0x56c07e['options']);return db[_0x81fd('0x5d')]['count']({'where':_0x23ff26[_0x81fd('0x43')]})[_0x81fd('0x25')](function(_0xaacd1a){_0x5151e9[_0x81fd('0x21')]=_0xaacd1a;if(_0x56c07e['query']['includeAll']){_0x23ff26[_0x81fd('0x48')]=[{'all':!![]}];}return db[_0x81fd('0x5d')][_0x81fd('0x49')](_0x23ff26);})[_0x81fd('0x25')](function(_0x257e1a){_0x5151e9[_0x81fd('0x4a')]=_0x257e1a;return _0x5151e9;});}})['then'](respondWithFilteredResult(_0x4c8ef5,_0x23ff26))[_0x81fd('0x1a')](handleError(_0x4c8ef5,null));};exports[_0x81fd('0x5f')]=function(_0xb52c61,_0x5353f9){return db[_0x81fd('0x32')][_0x81fd('0x4c')]({'where':{'id':_0xb52c61[_0x81fd('0x53')]['id']}})[_0x81fd('0x25')](handleEntityNotFound(_0x5353f9,null))[_0x81fd('0x25')](function(_0xf63ae){if(_0xf63ae){return _0xf63ae[_0x81fd('0x5f')](_0xb52c61['query'][_0x81fd('0x5b')]);}})[_0x81fd('0x25')](respondWithStatusCode(_0x5353f9,null))['catch'](handleError(_0x5353f9,null));};exports[_0x81fd('0x55')]=function(_0x300d9e,_0x19f664){var _0x4b3c07={'name':_0x300d9e[_0x81fd('0x4d')][_0x81fd('0x29')],'key':_0x300d9e[_0x81fd('0x4d')]['key'],'provider':_0x300d9e['body'][_0x81fd('0x60')]===_0x81fd('0x61')?null:_0x300d9e[_0x81fd('0x4d')]['provider'],'email':_0x300d9e['body'][_0x81fd('0x62')],'ListId':_0x300d9e[_0x81fd('0x4d')][_0x81fd('0x63')],'active':!_[_0x81fd('0x64')](_0x300d9e[_0x81fd('0x4d')][_0x81fd('0x65')])?_0x300d9e['body'][_0x81fd('0x65')]:!![],'description':_0x300d9e['body'][_0x81fd('0x66')]||null,'Imap':{},'Smtp':{}};if(_0x4b3c07['provider']){_0x4b3c07[_0x81fd('0x2d')][_0x81fd('0x67')]=_0x4b3c07[_0x81fd('0x2f')][_0x81fd('0x67')]=_0x300d9e[_0x81fd('0x4d')][_0x81fd('0x68')];_0x4b3c07['Imap']['password']=_0x4b3c07[_0x81fd('0x2f')][_0x81fd('0x69')]=_0x300d9e['body'][_0x81fd('0x6a')];if(_0x300d9e[_0x81fd('0x4d')]['modernAuthentication']){_0x4b3c07[_0x81fd('0x2d')][_0x81fd('0x4e')]=_0x4b3c07[_0x81fd('0x2f')][_0x81fd('0x4e')]=!![];_0x4b3c07[_0x81fd('0x2d')]['CloudProviderId']=_0x4b3c07[_0x81fd('0x2f')][_0x81fd('0x4f')]=_0x300d9e[_0x81fd('0x4d')][_0x81fd('0x4f')];_0x4b3c07[_0x81fd('0x2d')][_0x81fd('0x6a')]=_0x4b3c07[_0x81fd('0x2f')][_0x81fd('0x69')]=null;}else{_0x4b3c07[_0x81fd('0x2d')][_0x81fd('0x4f')]=_0x4b3c07[_0x81fd('0x2f')][_0x81fd('0x4f')]=null;}_0x4b3c07[_0x81fd('0x2d')][_0x81fd('0x6b')]=_0x4b3c07[_0x81fd('0x2f')][_0x81fd('0x6b')]=null;_0x4b3c07[_0x81fd('0x2d')]['host']=_0x4b3c07[_0x81fd('0x2f')]['host']=null;_0x4b3c07[_0x81fd('0x2d')][_0x81fd('0x6c')]=_0x4b3c07[_0x81fd('0x2f')][_0x81fd('0x6c')]=null;}else{if(_0x300d9e[_0x81fd('0x4d')][_0x81fd('0x6d')]){_0x4b3c07['Imap'][_0x81fd('0x67')]=_0x4b3c07[_0x81fd('0x2f')][_0x81fd('0x67')]=_0x300d9e['body'][_0x81fd('0x68')];_0x4b3c07[_0x81fd('0x2d')][_0x81fd('0x6a')]=_0x4b3c07[_0x81fd('0x2f')][_0x81fd('0x69')]=_0x300d9e['body']['password'];}else{_0x4b3c07[_0x81fd('0x2d')][_0x81fd('0x6d')]=_0x4b3c07[_0x81fd('0x2f')]['authentication']=![];_0x4b3c07[_0x81fd('0x2d')][_0x81fd('0x67')]=_0x4b3c07[_0x81fd('0x2f')][_0x81fd('0x67')]=null;_0x4b3c07[_0x81fd('0x2d')][_0x81fd('0x6a')]=_0x4b3c07[_0x81fd('0x2f')][_0x81fd('0x69')]=null;}_0x4b3c07['Imap'][_0x81fd('0x6e')]=_0x300d9e[_0x81fd('0x4d')][_0x81fd('0x2d')][_0x81fd('0x6e')];_0x4b3c07[_0x81fd('0x2d')]['port']=_0x300d9e[_0x81fd('0x4d')][_0x81fd('0x2d')]['port'];_0x4b3c07['Smtp']['host']=_0x300d9e['body'][_0x81fd('0x2f')][_0x81fd('0x6e')];_0x4b3c07['Smtp'][_0x81fd('0x6c')]=_0x300d9e[_0x81fd('0x4d')][_0x81fd('0x2f')][_0x81fd('0x6c')];}return db['MailAccount']['create'](_0x4b3c07,{'include':[{'model':db[_0x81fd('0x2e')],'as':_0x81fd('0x2f')},{'model':db['MailServerIn'],'as':_0x81fd('0x2d')}]})[_0x81fd('0x25')](function(_0x1b6c2d){var _0x3d543f=_0x300d9e[_0x81fd('0x67')][_0x81fd('0x26')]({'plain':!![]});if(!_0x3d543f)throw new Error(_0x81fd('0x6f'));if(_0x3d543f[_0x81fd('0x70')]===_0x81fd('0x67')){var _0x31f580=_0x1b6c2d[_0x81fd('0x26')]({'plain':!![]});return db[_0x81fd('0x71')][_0x81fd('0x4c')]({'where':{'name':'MailAccounts','userProfileId':_0x3d543f['userProfileId']},'raw':!![]})['then'](function(_0xd18ce7){if(_0xd18ce7&&_0xd18ce7[_0x81fd('0x72')]===0x0){return db[_0x81fd('0x27')][_0x81fd('0x55')]({'name':_0x31f580['name'],'resourceId':_0x31f580['id'],'type':_0xd18ce7[_0x81fd('0x29')],'sectionId':_0xd18ce7['id']},{})[_0x81fd('0x25')](function(){return _0x1b6c2d;});}else{return _0x1b6c2d;}})['catch'](function(_0xb5f91b){logger[_0x81fd('0x16')](_0x81fd('0x73'),_0xb5f91b);throw _0xb5f91b;});}return _0x1b6c2d;})['then'](respondWithResult(_0x19f664,0xc9))[_0x81fd('0x1a')](handleError(_0x19f664,null));};exports[_0x81fd('0x74')]=function(_0x47d5ea,_0x11ba39){return db[_0x81fd('0x32')][_0x81fd('0x56')]({'where':{'id':_0x47d5ea[_0x81fd('0x53')]['id']}})[_0x81fd('0x25')](handleEntityNotFound(_0x11ba39,null))[_0x81fd('0x25')](function(_0x414269){if(_0x414269){return _0x414269[_0x81fd('0x74')]();}return null;})[_0x81fd('0x25')](respondWithResult(_0x11ba39,null))[_0x81fd('0x1a')](handleError(_0x11ba39,null));};exports[_0x81fd('0x75')]=function(_0x6c495e,_0xfa55f5){if(_0x6c495e['body']['id']){delete _0x6c495e[_0x81fd('0x4d')]['id'];}return db[_0x81fd('0x32')][_0x81fd('0x4c')]({'where':{'id':_0x6c495e[_0x81fd('0x53')]['id']}})[_0x81fd('0x25')](handleEntityNotFound(_0xfa55f5,null))[_0x81fd('0x25')](function(_0x30f1ab){if(_0x30f1ab){_0x6c495e[_0x81fd('0x4d')][_0x81fd('0x58')]=_0x30f1ab['id'];return db[_0x81fd('0x2c')]['create'](_0x6c495e[_0x81fd('0x4d')]);}})[_0x81fd('0x25')](respondWithResult(_0xfa55f5,null))['catch'](handleError(_0xfa55f5,null));};exports[_0x81fd('0x76')]=function(_0x195c49,_0x5a7cad){return db[_0x81fd('0x32')][_0x81fd('0x56')]({'where':{'id':_0x195c49[_0x81fd('0x53')]['id']}})[_0x81fd('0x25')](handleEntityNotFound(_0x5a7cad,null))[_0x81fd('0x25')](function(_0xcc5443){if(_0xcc5443){return _0xcc5443[_0x81fd('0x77')](null);}return null;})[_0x81fd('0x25')](respondWithStatusCode(_0x5a7cad,null))[_0x81fd('0x1a')](handleError(_0x5a7cad,null));};exports[_0x81fd('0x78')]=function(_0x18ff26,_0x1eea4c){return db[_0x81fd('0x32')][_0x81fd('0x56')]({'where':{'id':_0x18ff26[_0x81fd('0x53')]['id']}})[_0x81fd('0x25')](handleEntityNotFound(_0x1eea4c,null))[_0x81fd('0x25')](function(_0x557344){if(_0x557344){return _0x557344[_0x81fd('0x78')]();}return null;})[_0x81fd('0x25')](respondWithResult(_0x1eea4c,null))['catch'](handleError(_0x1eea4c,null));};exports[_0x81fd('0x79')]=function(_0x1b8ac4,_0x51e834){if(_0x1b8ac4[_0x81fd('0x4d')]['id']){delete _0x1b8ac4['body']['id'];}return db['MailAccount']['find']({'where':{'id':_0x1b8ac4['params']['id']}})[_0x81fd('0x25')](handleEntityNotFound(_0x51e834,null))['then'](function(_0x4d502f){if(_0x4d502f){_0x1b8ac4['body'][_0x81fd('0x58')]=_0x4d502f['id'];return db[_0x81fd('0x2e')][_0x81fd('0x55')](_0x1b8ac4[_0x81fd('0x4d')]);}})['then'](respondWithResult(_0x51e834,null))[_0x81fd('0x1a')](handleError(_0x51e834,null));};exports[_0x81fd('0x7a')]=function(_0x14a4e5,_0x5dec22){return db[_0x81fd('0x32')]['findOne']({'where':{'id':_0x14a4e5[_0x81fd('0x53')]['id']}})[_0x81fd('0x25')](handleEntityNotFound(_0x5dec22,null))['then'](function(_0x27dc7d){if(_0x27dc7d){return _0x27dc7d[_0x81fd('0x7b')](null);}return null;})[_0x81fd('0x25')](respondWithStatusCode(_0x5dec22,null))['catch'](handleError(_0x5dec22,null));};exports[_0x81fd('0x7c')]=function(_0x2d9180,_0x5f3ef1){return db[_0x81fd('0x7d')][_0x81fd('0x4c')]({'where':{'id':_0x2d9180[_0x81fd('0x53')]['id']}})['then'](handleEntityNotFound(_0x5f3ef1,null))['then'](function(_0x1a8d76){if(_0x1a8d76){return _0x1a8d76[_0x81fd('0x7c')](_0x2d9180[_0x81fd('0x4d')][_0x81fd('0x5b')],_[_0x81fd('0x7e')](_0x2d9180['body'],[_0x81fd('0x5b'),'id'])||{});}})[_0x81fd('0x25')](respondWithResult(_0x5f3ef1,null))[_0x81fd('0x1a')](handleError(_0x5f3ef1,null));};exports[_0x81fd('0x7f')]=function(_0x18df7e,_0x4712cb){var _0x37397c={'raw':![],'where':{}};var _0x8b371c={};var _0x3258c3={'count':0x0,'rows':[]};return db[_0x81fd('0x32')][_0x81fd('0x56')]({'where':{'id':_0x18df7e[_0x81fd('0x53')]['id']}})['then'](handleEntityNotFound(_0x4712cb,null))[_0x81fd('0x25')](function(_0x570a56){if(_0x570a56){_0x8b371c[_0x81fd('0x37')]=_['keys'](db['MailInteraction']['rawAttributes']);_0x8b371c[_0x81fd('0x38')]=_['keys'](_0x18df7e[_0x81fd('0x38')]);_0x8b371c[_0x81fd('0x3a')]=_['intersection'](_0x8b371c[_0x81fd('0x37')],_0x8b371c[_0x81fd('0x38')]);_0x37397c['attributes']=_[_0x81fd('0x3b')](_0x8b371c[_0x81fd('0x37')],qs['fields'](_0x18df7e[_0x81fd('0x38')][_0x81fd('0x3c')]));_0x37397c[_0x81fd('0x3d')]=_0x37397c[_0x81fd('0x3d')][_0x81fd('0x3e')]?_0x37397c[_0x81fd('0x3d')]:_0x8b371c['model'];if(!_0x18df7e[_0x81fd('0x38')][_0x81fd('0x3f')](_0x81fd('0x40'))){_0x37397c[_0x81fd('0x20')]=qs[_0x81fd('0x20')](_0x18df7e['query'][_0x81fd('0x20')]);_0x37397c[_0x81fd('0x22')]=qs['offset'](_0x18df7e['query'][_0x81fd('0x22')]);}_0x37397c['order']=qs['sort'](_0x18df7e[_0x81fd('0x38')]['sort']);_0x37397c[_0x81fd('0x43')]=qs[_0x81fd('0x3a')](_[_0x81fd('0x57')](_0x18df7e['query'],_0x8b371c[_0x81fd('0x3a')]));_0x37397c['where'][_0x81fd('0x58')]=_0x570a56['id'];if(_0x18df7e['query']['filter']){_0x37397c[_0x81fd('0x43')]=_[_0x81fd('0x46')](_0x37397c[_0x81fd('0x43')],{'$or':_['map'](_0x37397c[_0x81fd('0x3d')],function(_0x139f2c){var _0x221071={};_0x221071[_0x139f2c]={'$like':'%'+_0x18df7e['query'][_0x81fd('0x44')]+'%'};return _0x221071;})});}_0x37397c=_[_0x81fd('0x46')]({},_0x37397c,_0x18df7e[_0x81fd('0x47')]);return db[_0x81fd('0x7d')]['count']({'where':_0x37397c[_0x81fd('0x43')]})[_0x81fd('0x25')](function(_0xb24b52){_0x3258c3[_0x81fd('0x21')]=_0xb24b52;if(_0x18df7e[_0x81fd('0x38')][_0x81fd('0x59')]){_0x37397c[_0x81fd('0x48')]=[{'model':db[_0x81fd('0x80')],'as':_0x81fd('0x81'),'required':![]},{'model':db[_0x81fd('0x82')],'as':_0x81fd('0x83'),'attributes':[_0x81fd('0x29'),'fullname','internal'],'required':![]},{'model':db['Tag'],'as':_0x81fd('0x84'),'attributes':['id','name',_0x81fd('0x85')],'where':_0x18df7e[_0x81fd('0x38')]['tag']?{'id':_0x18df7e[_0x81fd('0x38')]['tag']}:undefined,'required':_0x18df7e['query']['tag']?!![]:![]}];}return db[_0x81fd('0x7d')]['findAll'](_0x37397c);})[_0x81fd('0x25')](function(_0x5e8249){_0x3258c3['rows']=_0x5e8249;return _0x3258c3;});}})[_0x81fd('0x25')](respondWithFilteredResult(_0x4712cb,_0x37397c))[_0x81fd('0x1a')](handleError(_0x4712cb,null));};exports['addApplications']=function addApplications(_0x27ebf6,_0x5eaca2){var _0x10d51a=_0x27ebf6[_0x81fd('0x53')]['id'];var _0x395a2a=_0x27ebf6['body'];var _0xa9f9ae=0xc8;var _0x50b168=null;return db[_0x81fd('0x86')][_0x81fd('0x87')]({'isolationLevel':db[_0x81fd('0x86')][_0x81fd('0x88')][_0x81fd('0x89')]['READ_COMMITTED']},function(_0x4b06a3){return db[_0x81fd('0x32')][_0x81fd('0x56')]({'where':{'id':_0x10d51a},'transaction':_0x4b06a3})[_0x81fd('0x25')](function(_0x1e80cb){if(_0x1e80cb){return db[_0x81fd('0x8a')]['destroy']({'where':{'MailAccountId':_0x10d51a},'transaction':_0x4b06a3})[_0x81fd('0x25')](function(){var _0x16cf86=_[_0x81fd('0x31')](_0x395a2a,function(_0x6bafb7){_0x6bafb7[_0x81fd('0x58')]=_0x10d51a;return _0x6bafb7;});return db['MailApplication'][_0x81fd('0x8b')](_0x16cf86,{'transaction':_0x4b06a3});});}else{_0xa9f9ae=0x194;_0x50b168=[];}});})[_0x81fd('0x25')](function(){if(_0xa9f9ae!==0x194){return db[_0x81fd('0x8a')][_0x81fd('0x8c')]({'where':{'MailAccountId':_0x10d51a},'order':_0x81fd('0x8d')})[_0x81fd('0x25')](function(_0x2ba526){_0x50b168=_0x2ba526;});}})[_0x81fd('0x1a')](function(_0x2cf986){_0xa9f9ae=0x1f4;logger['error'](_0x2cf986[_0x81fd('0x28')]);if(_0x2cf986['name']){delete _0x2cf986['name'];}_0x50b168=_0x2cf986;})[_0x81fd('0x8e')](function(){if(_0x50b168===null){_0x5eaca2[_0x81fd('0x1b')](_0xa9f9ae);}else{if(_0xa9f9ae===0x1f4){_0x5eaca2[_0x81fd('0x1c')](_0xa9f9ae)[_0x81fd('0x2a')](_0x50b168);}else{_0x5eaca2[_0x81fd('0x1c')](_0xa9f9ae)[_0x81fd('0x1e')](_0x50b168);}}});};exports[_0x81fd('0x8f')]=function(_0x47dc94,_0x3db208){var _0x466505={};var _0x38d82e={};var _0x380aaa;var _0x93b1b9;return db[_0x81fd('0x32')]['findOne']({'where':{'id':_0x47dc94[_0x81fd('0x53')]['id']}})[_0x81fd('0x25')](handleEntityNotFound(_0x3db208,null))['then'](function(_0x201905){if(_0x201905){_0x380aaa=_0x201905;_0x38d82e['model']=_['keys'](db[_0x81fd('0x8a')][_0x81fd('0x33')]);_0x38d82e[_0x81fd('0x38')]=_[_0x81fd('0x39')](_0x47dc94[_0x81fd('0x38')]);_0x38d82e['filters']=_['intersection'](_0x38d82e[_0x81fd('0x37')],_0x38d82e[_0x81fd('0x38')]);_0x466505[_0x81fd('0x3d')]=_[_0x81fd('0x3b')](_0x38d82e[_0x81fd('0x37')],qs[_0x81fd('0x3c')](_0x47dc94['query']['fields']));_0x466505[_0x81fd('0x3d')]=_0x466505['attributes'][_0x81fd('0x3e')]?_0x466505[_0x81fd('0x3d')]:_0x38d82e[_0x81fd('0x37')];_0x466505['order']=qs[_0x81fd('0x42')](_0x47dc94[_0x81fd('0x38')][_0x81fd('0x42')]);_0x466505[_0x81fd('0x43')]=qs['filters'](_[_0x81fd('0x57')](_0x47dc94[_0x81fd('0x38')],_0x38d82e[_0x81fd('0x3a')]));if(_0x47dc94[_0x81fd('0x38')][_0x81fd('0x44')]){_0x466505[_0x81fd('0x43')]=_['merge'](_0x466505['where'],{'$or':_['map'](_0x466505[_0x81fd('0x3d')],function(_0x5388e9){var _0x2fc329={};_0x2fc329[_0x5388e9]={'$like':'%'+_0x47dc94['query'][_0x81fd('0x44')]+'%'};return _0x2fc329;})});}_0x466505=_[_0x81fd('0x46')]({},_0x466505,_0x47dc94[_0x81fd('0x47')]);return _0x380aaa[_0x81fd('0x8f')](_0x466505);}})[_0x81fd('0x25')](function(_0x4deb80){if(_0x4deb80){_0x93b1b9=_0x4deb80[_0x81fd('0x3e')];if(!_0x47dc94['query'][_0x81fd('0x3f')](_0x81fd('0x40'))){_0x466505[_0x81fd('0x20')]=qs['limit'](_0x47dc94[_0x81fd('0x38')][_0x81fd('0x20')]);_0x466505['offset']=qs[_0x81fd('0x22')](_0x47dc94[_0x81fd('0x38')][_0x81fd('0x22')]);}return _0x380aaa[_0x81fd('0x8f')](_0x466505);}})[_0x81fd('0x25')](function(_0xa29ebf){if(_0xa29ebf){return _0xa29ebf?{'count':_0x93b1b9,'rows':_0xa29ebf}:null;}})[_0x81fd('0x25')](respondWithResult(_0x3db208,null))[_0x81fd('0x1a')](handleError(_0x3db208,null));};exports[_0x81fd('0x90')]=function(_0xe890c4,_0x1d3191){var _0x1cf888={'raw':!![],'where':{}};var _0x3060fa={};var _0x35d14f={'count':0x0,'rows':[]};return db[_0x81fd('0x32')][_0x81fd('0x56')]({'where':{'id':_0xe890c4[_0x81fd('0x53')]['id']}})[_0x81fd('0x25')](handleEntityNotFound(_0x1d3191,null))[_0x81fd('0x25')](function(_0x350266){if(_0x350266){_0x3060fa[_0x81fd('0x37')]=_[_0x81fd('0x39')](db[_0x81fd('0x91')][_0x81fd('0x33')]);_0x3060fa[_0x81fd('0x38')]=_[_0x81fd('0x39')](_0xe890c4[_0x81fd('0x38')]);_0x3060fa[_0x81fd('0x3a')]=_[_0x81fd('0x3b')](_0x3060fa[_0x81fd('0x37')],_0x3060fa[_0x81fd('0x38')]);_0x1cf888[_0x81fd('0x3d')]=_[_0x81fd('0x3b')](_0x3060fa[_0x81fd('0x37')],qs[_0x81fd('0x3c')](_0xe890c4[_0x81fd('0x38')][_0x81fd('0x3c')]));_0x1cf888[_0x81fd('0x3d')]=_0x1cf888[_0x81fd('0x3d')][_0x81fd('0x3e')]?_0x1cf888[_0x81fd('0x3d')]:_0x3060fa[_0x81fd('0x37')];if(!_0xe890c4[_0x81fd('0x38')][_0x81fd('0x3f')](_0x81fd('0x40'))){_0x1cf888['limit']=qs['limit'](_0xe890c4[_0x81fd('0x38')][_0x81fd('0x20')]);_0x1cf888[_0x81fd('0x22')]=qs[_0x81fd('0x22')](_0xe890c4['query'][_0x81fd('0x22')]);}_0x1cf888[_0x81fd('0x41')]=qs[_0x81fd('0x42')](_0xe890c4[_0x81fd('0x38')][_0x81fd('0x42')]);_0x1cf888[_0x81fd('0x43')]=qs['filters'](_[_0x81fd('0x57')](_0xe890c4[_0x81fd('0x38')],_0x3060fa['filters']));_0x1cf888[_0x81fd('0x43')]['MailAccountId']=_0x350266['id'];if(_0xe890c4[_0x81fd('0x38')][_0x81fd('0x44')]){_0x1cf888[_0x81fd('0x43')]=_['merge'](_0x1cf888[_0x81fd('0x43')],{'$or':_[_0x81fd('0x31')](_0x1cf888[_0x81fd('0x3d')],function(_0x3c7f16){var _0x58e9a2={};_0x58e9a2[_0x3c7f16]={'$like':'%'+_0xe890c4[_0x81fd('0x38')][_0x81fd('0x44')]+'%'};return _0x58e9a2;})});}if(_0xe890c4[_0x81fd('0x38')]['$gte']){var _0x423c73=_0xe890c4[_0x81fd('0x38')][_0x81fd('0x92')][_0x81fd('0x93')](',');var _0x42d8bf={};_0x42d8bf[_0x423c73[0x0]]={'$gte':moment(_0x423c73[0x1])[_0x81fd('0x94')](_0x81fd('0x95'))};_0x1cf888[_0x81fd('0x43')]=_['merge'](_0x1cf888[_0x81fd('0x43')],_0x42d8bf);}_0x1cf888=_[_0x81fd('0x46')]({},_0x1cf888,_0xe890c4[_0x81fd('0x47')]);return db['MailMessage'][_0x81fd('0x21')]({'where':_0x1cf888[_0x81fd('0x43')]})['then'](function(_0x382c9e){_0x35d14f['count']=_0x382c9e;if(_0xe890c4[_0x81fd('0x38')]['includeAll']){_0x1cf888[_0x81fd('0x48')]=[{'all':!![]}];}return db[_0x81fd('0x91')]['findAll'](_0x1cf888);})[_0x81fd('0x25')](function(_0x1c80d0){if(_0xe890c4[_0x81fd('0x38')][_0x81fd('0x96')]==='true'){for(var _0xc6078c=0x0;_0xc6078c<_0x1c80d0[_0x81fd('0x3e')];_0xc6078c++){_0x1c80d0[_0xc6078c][_0x81fd('0x4d')]=juice(_0x1c80d0[_0xc6078c]['body']);}}_0x35d14f['rows']=_0x1c80d0;return _0x35d14f;});}})[_0x81fd('0x25')](respondWithFilteredResult(_0x1d3191,_0x1cf888))[_0x81fd('0x1a')](handleError(_0x1d3191,null));};exports[_0x81fd('0x2a')]=function(_0x42a9ee,_0x258ab7){var _0x41fac9,_0x1dc18e={},_0x24a302;if(_0x42a9ee['body']['to']){_0x24a302=_0x42a9ee[_0x81fd('0x4d')]['to']['split'](',')[0x0];}return db['MailAccount'][_0x81fd('0x4c')]({'where':{'id':_0x42a9ee[_0x81fd('0x53')]['id']},'include':[{'model':db[_0x81fd('0x97')],'as':_0x81fd('0x98'),'include':[{'model':db[_0x81fd('0x80')],'as':_0x81fd('0x99'),'where':{'email':_0x24a302},'limit':0x1,'order':[[_0x81fd('0x9a'),_0x81fd('0x9b')]]}]},{'model':db[_0x81fd('0x2e')],'as':_0x81fd('0x2f'),'raw':!![]}]})['then'](handleEntityNotFound(_0x258ab7,null))[_0x81fd('0x25')](function(_0x6539ce){if(_0x6539ce){_0x41fac9=_0x6539ce;if(_0x6539ce[_0x81fd('0x2f')]){if(_[_0x81fd('0x64')](_0x42a9ee[_0x81fd('0x4d')][_0x81fd('0x9c')])){_0x42a9ee['body'][_0x81fd('0x9c')]=util['format'](_0x81fd('0x9d'),_0x6539ce['name'],_0x6539ce[_0x81fd('0x62')]||_0x6539ce[_0x81fd('0x2f')]['user']);}if(_0x42a9ee[_0x81fd('0x4d')][_0x81fd('0x9e')]&&_0x42a9ee[_0x81fd('0x4d')][_0x81fd('0x9e')][_0x81fd('0x3e')]){for(var _0x437b5=0x0;_0x437b5<_0x42a9ee['body'][_0x81fd('0x9e')][_0x81fd('0x3e')];_0x437b5+=0x1){_0x42a9ee[_0x81fd('0x4d')][_0x81fd('0x9e')][_0x437b5]={'filename':_0x42a9ee[_0x81fd('0x4d')]['attachments'][_0x437b5][_0x81fd('0x29')],'path':path['join'](config[_0x81fd('0x9f')],_0x81fd('0xa0'),_0x42a9ee['body']['attachments'][_0x437b5][_0x81fd('0xa1')])};}}var _0x46ae5f={'tls':{'rejectUnauthorized':![]}};if(_[_0x81fd('0x64')](_0x6539ce[_0x81fd('0x2f')]['service'])){if(_0x6539ce[_0x81fd('0x2f')][_0x81fd('0x6d')]){_0x46ae5f[_0x81fd('0xa2')]={'user':_0x6539ce[_0x81fd('0x2f')][_0x81fd('0x67')],'pass':_0x6539ce[_0x81fd('0x2f')][_0x81fd('0x69')]};}_0x46ae5f[_0x81fd('0x6e')]=_0x6539ce[_0x81fd('0x2f')][_0x81fd('0x6e')];_0x46ae5f[_0x81fd('0x6c')]=_0x6539ce[_0x81fd('0x2f')][_0x81fd('0x6c')];_0x46ae5f[_0x81fd('0xa3')]=_0x6539ce[_0x81fd('0x2f')][_0x81fd('0xa3')];}else{_0x46ae5f[_0x81fd('0x6b')]=_0x6539ce['Smtp']['service'];_0x46ae5f[_0x81fd('0xa2')]={'user':_0x6539ce[_0x81fd('0x2f')]['user'],'pass':_0x6539ce['Smtp']['pass']};}return respondWithRpcPromise('SendMail',_0x81fd('0xa4'),{'account':_0x46ae5f,'message':_0x42a9ee['body']});}else{throw new Error(_0x81fd('0xa5'));}}})[_0x81fd('0x25')](function(_0x5a779d){if(_0x5a779d){_0x1dc18e=_0x5a779d;if(_0x41fac9[_0x81fd('0x98')]){if(_0x41fac9[_0x81fd('0x98')][_0x81fd('0x99')][_0x81fd('0x3e')]){return _0x41fac9['List'][_0x81fd('0x99')][0x0];}else{return db[_0x81fd('0x80')][_0x81fd('0x55')](_[_0x81fd('0xb')](_0x42a9ee[_0x81fd('0x4d')],{'firstName':_0x42a9ee[_0x81fd('0x4d')]['to'],'email':_0x42a9ee[_0x81fd('0x4d')]['to'],'phone':_0x42a9ee[_0x81fd('0x4d')]['to'],'ListId':_0x41fac9[_0x81fd('0x63')]}));}}else{throw new Error(_0x81fd('0xa5'));}}})[_0x81fd('0x25')](function(_0x5e8b95){if(_0x5e8b95){var _0x9e2770={'UserId':_0x42a9ee[_0x81fd('0x67')]['id'],'ContactId':_0x5e8b95['id'],'MailAccountId':_0x41fac9['id'],'inReplyTo':_0x1dc18e[_0x81fd('0xa6')],'to':_0x42a9ee[_0x81fd('0x4d')][_0x81fd('0x9c')],'cc':_0x42a9ee[_0x81fd('0x4d')]['cc'],'subject':_0x42a9ee[_0x81fd('0x4d')]['subject'],'attach':_0x42a9ee['body']['attach'],'firstMsgDirection':_0x81fd('0xa7'),'lastMsgAt':moment()['format'](_0x81fd('0x95')),'lastMsgDirection':_0x81fd('0xa7'),'Messages':[_[_0x81fd('0x46')](_0x42a9ee['body'],{'messageId':_0x1dc18e[_0x81fd('0xa6')],'sentAt':moment()['format'](_0x81fd('0x95')),'read':!![],'MailAccountId':_0x41fac9['id'],'UserId':_0x42a9ee['user']['id'],'ContactId':_0x5e8b95['id']})]};if(_0x42a9ee[_0x81fd('0x4d')][_0x81fd('0xa8')]){_0x9e2770=_[_0x81fd('0x46')](_0x9e2770,_0x42a9ee[_0x81fd('0x4d')][_0x81fd('0xa8')]);}return db[_0x81fd('0x7d')][_0x81fd('0x55')](_0x9e2770,{'include':[{'model':db[_0x81fd('0x91')],'as':_0x81fd('0xa9')}]});}})['then'](respondWithResult(_0x258ab7,null))[_0x81fd('0x1a')](handleError(_0x258ab7,null));};exports[_0x81fd('0xaa')]=function(_0xce2ae6,_0x5cf14e){return db[_0x81fd('0x32')][_0x81fd('0x4c')]({'where':{'id':_0xce2ae6[_0x81fd('0x53')]['id']},'include':[{'model':db[_0x81fd('0x2e')],'as':'Smtp','raw':!![],'include':[{'model':db[_0x81fd('0xab')],'as':_0x81fd('0xab'),'raw':!![]}]}]})[_0x81fd('0x25')](handleEntityNotFound(_0x5cf14e,null))[_0x81fd('0x25')](function(_0x5e8dbc){if(!_0x5e8dbc[_0x81fd('0x2f')])return;var _0x28ea22={'id':_0x5e8dbc['id'],'tls':{'rejectUnauthorized':![]}};if(_0x5e8dbc[_0x81fd('0x60')]!==_0x81fd('0x61')){_0x28ea22[_0x81fd('0x6b')]=_0x5e8dbc[_0x81fd('0x60')];}else{_0x28ea22[_0x81fd('0x6e')]=_0x5e8dbc[_0x81fd('0x2f')][_0x81fd('0x6e')];_0x28ea22[_0x81fd('0x6c')]=_0x5e8dbc[_0x81fd('0x2f')][_0x81fd('0x6c')];_0x28ea22[_0x81fd('0xa3')]=_0x5e8dbc['Smtp'][_0x81fd('0xa3')];}if(_0x5e8dbc[_0x81fd('0x2f')]['authentication']){if(_0x5e8dbc[_0x81fd('0x2f')][_0x81fd('0x4e')]){_0x28ea22[_0x81fd('0xa2')]={'type':_0x81fd('0xac'),'user':_0x5e8dbc[_0x81fd('0x2f')][_0x81fd('0x67')],'accessToken':_0x5e8dbc[_0x81fd('0x2f')][_0x81fd('0xab')][_0x81fd('0xad')]};}else{_0x28ea22[_0x81fd('0xa2')]={'user':_0x5e8dbc['Smtp']['user'],'pass':_0x5e8dbc[_0x81fd('0x2f')][_0x81fd('0x69')]};}}return respondWithRpcPromise('VerifySmtp',_0x81fd('0xaa'),{'account':_0x28ea22});})[_0x81fd('0x25')](respondWithResult(_0x5cf14e,null))[_0x81fd('0x1a')](handleError(_0x5cf14e,null));};exports[_0x81fd('0xae')]=function(_0x1e6553,_0x3e13d5){return db[_0x81fd('0x32')][_0x81fd('0x4c')]({'where':{'id':_0x1e6553['params']['id']}})[_0x81fd('0x25')](handleEntityNotFound(_0x3e13d5,null))[_0x81fd('0x25')](function(_0x247fb3){if(_0x247fb3&&_0x247fb3[_0x81fd('0x6b')]){throw new db[(_0x81fd('0xaf'))][(_0x81fd('0xb0'))](_0x81fd('0xb1'));}return _0x247fb3;})[_0x81fd('0x25')](removeEntity(_0x3e13d5,null))['catch'](handleError(_0x3e13d5,null));};exports[_0x81fd('0xb2')]=function(_0x3351d5,_0x1c1da0){return db[_0x81fd('0x32')][_0x81fd('0x4c')]({'where':{'id':_0x3351d5[_0x81fd('0x53')]['id']}})[_0x81fd('0x25')](handleEntityNotFound(_0x1c1da0,null))[_0x81fd('0x25')](function(_0x20841b){if(_0x20841b){return _0x20841b[_0x81fd('0xb2')](_0x3351d5[_0x81fd('0x4d')][_0x81fd('0x5b')],_['omit'](_0x3351d5[_0x81fd('0x4d')],['ids','id'])||{})[_0x81fd('0xb3')](function(_0x8861e1){for(var _0x55a388=0x0;_0x55a388<_0x3351d5[_0x81fd('0x4d')][_0x81fd('0x5b')][_0x81fd('0x3e')];_0x55a388+=0x1){socket[_0x81fd('0xb4')]('userMailAccount:save',{'UserId':Number(_0x3351d5[_0x81fd('0x4d')][_0x81fd('0x5b')][_0x55a388]),'MailAccountId':Number(_0x3351d5['params']['id'])});}return _0x8861e1;});}})['then'](respondWithResult(_0x1c1da0,null))[_0x81fd('0x1a')](handleError(_0x1c1da0,null));};exports['removeAgents']=function(_0xbee374,_0xbd1d63){return db['MailAccount'][_0x81fd('0x4c')]({'where':{'id':_0xbee374[_0x81fd('0x53')]['id']}})[_0x81fd('0x25')](handleEntityNotFound(_0xbd1d63,null))['then'](function(_0x3b6e92){if(_0x3b6e92){return _0x3b6e92[_0x81fd('0xb5')](_0xbee374['query'][_0x81fd('0x5b')])[_0x81fd('0x25')](function(){if(_['isArray'](_0xbee374[_0x81fd('0x38')][_0x81fd('0x5b')])){for(var _0x330405=0x0;_0x330405<_0xbee374[_0x81fd('0x38')]['ids'][_0x81fd('0x3e')];_0x330405+=0x1){socket['emit'](_0x81fd('0xb6'),{'UserId':Number(_0xbee374[_0x81fd('0x38')]['ids'][_0x330405]),'MailAccountId':Number(_0xbee374[_0x81fd('0x53')]['id'])});}}else{socket[_0x81fd('0xb4')](_0x81fd('0xb6'),{'UserId':Number(_0xbee374[_0x81fd('0x38')]['ids']),'MailAccountId':Number(_0xbee374['params']['id'])});}});}})[_0x81fd('0x25')](respondWithStatusCode(_0xbd1d63,null))[_0x81fd('0x1a')](handleError(_0xbd1d63,null));};exports[_0x81fd('0xb7')]=function(_0x488833,_0xea412c){var _0x21e64a={};var _0x204951={};var _0x25ca52;var _0x1480f9;return db['MailAccount'][_0x81fd('0x56')]({'where':{'id':_0x488833[_0x81fd('0x53')]['id']}})[_0x81fd('0x25')](handleEntityNotFound(_0xea412c,null))[_0x81fd('0x25')](function(_0x496a2c){if(_0x496a2c){_0x25ca52=_0x496a2c;_0x204951[_0x81fd('0x37')]=_[_0x81fd('0x39')](db[_0x81fd('0x82')][_0x81fd('0x33')]);_0x204951[_0x81fd('0x38')]=_[_0x81fd('0x39')](_0x488833[_0x81fd('0x38')]);_0x204951[_0x81fd('0x3a')]=_[_0x81fd('0x3b')](_0x204951[_0x81fd('0x37')],_0x204951['query']);_0x21e64a['attributes']=_['intersection'](_0x204951[_0x81fd('0x37')],qs['fields'](_0x488833[_0x81fd('0x38')]['fields']));_0x21e64a[_0x81fd('0x3d')]=_0x21e64a[_0x81fd('0x3d')][_0x81fd('0x3e')]?_0x21e64a[_0x81fd('0x3d')]:_0x204951[_0x81fd('0x37')];_0x21e64a[_0x81fd('0x41')]=qs[_0x81fd('0x42')](_0x488833[_0x81fd('0x38')][_0x81fd('0x42')]);_0x21e64a[_0x81fd('0x43')]=qs[_0x81fd('0x3a')](_[_0x81fd('0x57')](_0x488833['query'],_0x204951[_0x81fd('0x3a')]));if(_0x488833[_0x81fd('0x38')]['filter']){_0x21e64a[_0x81fd('0x43')]=_['merge'](_0x21e64a[_0x81fd('0x43')],{'$or':_[_0x81fd('0x31')](_0x21e64a[_0x81fd('0x3d')],function(_0x5f23e8){var _0x5cfc11={};_0x5cfc11[_0x5f23e8]={'$like':'%'+_0x488833[_0x81fd('0x38')][_0x81fd('0x44')]+'%'};return _0x5cfc11;})});}_0x21e64a=_[_0x81fd('0x46')]({},_0x21e64a,_0x488833[_0x81fd('0x47')]);return _0x25ca52[_0x81fd('0xb7')](_0x21e64a);}})['then'](function(_0x1e1330){if(_0x1e1330){_0x1480f9=_0x1e1330['length'];if(!_0x488833['query'][_0x81fd('0x3f')](_0x81fd('0x40'))){_0x21e64a[_0x81fd('0x20')]=qs[_0x81fd('0x20')](_0x488833[_0x81fd('0x38')][_0x81fd('0x20')]);_0x21e64a[_0x81fd('0x22')]=qs['offset'](_0x488833['query'][_0x81fd('0x22')]);}return _0x25ca52[_0x81fd('0xb7')](_0x21e64a);}})[_0x81fd('0x25')](function(_0xe09ced){if(_0xe09ced){return _0xe09ced?{'count':_0x1480f9,'rows':_0xe09ced}:null;}})['then'](respondWithResult(_0xea412c,null))[_0x81fd('0x1a')](handleError(_0xea412c,null));};