Built motion from commit (unavailable).|2.5.13
[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 _0xf01f=['stringify','error','code','message','MailAccount,\x20%s,\x20%s','catch','status','end','json','set','Content-Range','apply','reject','then','MailAccounts','UserProfileResource','sendStatus','name','send','index','MailServerIn','Imap','Pause','mandatoryDispositionPause','map','MailAccount','rawAttributes','type','key','model','query','filters','attributes','fields','length','nolimit','limit','offset','sort','where','pick','filter','VIRTUAL','merge','count','includeAll','include','findAll','rows','show','params','MailServerOut','Smtp','keys','intersection','find','update','body','describe','addDisposition','MailAccountId','Disposition','create','getDispositions','findOne','order','options','removeDispositions','ids','addAnswer','CannedAnswer','hasOwnProperty','removeAnswers','email','isNil','active','description','cservice','cauthentication','user','cuser','pass','cpassword','host','port','service','get','role','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','getImap','addImap','removeImap','setImap','getSmtp','addSmtp','removeSmtp','setSmtp','addInteraction','MailInteraction','omit','getInteractions','Contact','User','fullname','Tags','color','tag','addApplications','transaction','destroy','priority','getApplications','getMessages','$gte','split','format','MailMessage','CmList','List','CmContact','Contacts','updatedAt','DESC','%s\x20<%s>','attachments','join','root','server/files/attachments','basename','authentication','auth','secure','SendMail','List\x20not\x20found','messageId','from','subject','attach','out','YYYY-MM-DD\x20HH:mm:ss','Interaction','Messages','verifySmtp','VerifySmtp','Sequelize','spread','emit','userMailAccount:save','removeAgents','isArray','userMailAccount:remove','getAgents','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','mustache','util','sox','to-csv','ejs','crypto','jsforce','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','localhost','socket.io-emitter','redis','./mailAccount.socket','register','jayson/promise','client','http','request','request\x20sent','debug'];(function(_0x1ac8cd,_0x173f97){var _0x489191=function(_0x47903e){while(--_0x47903e){_0x1ac8cd['push'](_0x1ac8cd['shift']());}};_0x489191(++_0x173f97);}(_0xf01f,0x159));var _0xff01=function(_0x2682c6,_0x6c30a5){_0x2682c6=_0x2682c6-0x0;var _0x3ecca8=_0xf01f[_0x2682c6];return _0x3ecca8;};'use strict';var pdf=require(_0xff01('0x0'));var emlformat=require(_0xff01('0x1'));var rimraf=require(_0xff01('0x2'));var zipdir=require(_0xff01('0x3'));var jsonpatch=require(_0xff01('0x4'));var rp=require(_0xff01('0x5'));var moment=require(_0xff01('0x6'));var BPromise=require('bluebird');var Mustache=require(_0xff01('0x7'));var util=require(_0xff01('0x8'));var path=require('path');var sox=require(_0xff01('0x9'));var csv=require(_0xff01('0xa'));var ejs=require(_0xff01('0xb'));var fs=require('fs');var _=require('lodash');var squel=require('squel');var crypto=require(_0xff01('0xc'));var jsforce=require(_0xff01('0xd'));var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require('querystring');var Papa=require(_0xff01('0xe'));var Redis=require('ioredis');var authService=require(_0xff01('0xf'));var qs=require(_0xff01('0x10'));var as=require(_0xff01('0x11'));var hardwareService=require(_0xff01('0x12'));var logger=require(_0xff01('0x13'))('api');var utils=require(_0xff01('0x14'));var config=require(_0xff01('0x15'));var licenseUtil=require(_0xff01('0x16'));var db=require(_0xff01('0x17'))['db'];config['redis']=_['defaults'](config['redis'],{'host':_0xff01('0x18'),'port':0x18eb});var socket=require(_0xff01('0x19'))(new Redis(config[_0xff01('0x1a')]));require(_0xff01('0x1b'))[_0xff01('0x1c')](socket);var jayson=require(_0xff01('0x1d'));var client=jayson[_0xff01('0x1e')][_0xff01('0x1f')]({'port':0x232b});function respondWithRpcPromise(_0x171bb3,_0x5a742d,_0x336a71,_0x3a97ad){return new BPromise(function(_0xf04fb7,_0x1d55f5){var _0x5df64c=_0x3a97ad||client;return _0x5df64c[_0xff01('0x20')](_0x171bb3,_0x336a71)['then'](function(_0x57a384){logger['info']('MailAccount,\x20%s,\x20%s',_0x5a742d,_0xff01('0x21'));logger[_0xff01('0x22')]('MailAccount,\x20%s,\x20%s,\x20%s',_0x5a742d,_0xff01('0x21'),JSON[_0xff01('0x23')](_0x57a384));if(_0x57a384[_0xff01('0x24')]){if(_0x57a384[_0xff01('0x24')][_0xff01('0x25')]===0x1f4){logger[_0xff01('0x24')]('MailAccount,\x20%s,\x20%s',_0x5a742d,_0x57a384[_0xff01('0x24')][_0xff01('0x26')]);return _0x1d55f5(_0x57a384[_0xff01('0x24')][_0xff01('0x26')]);}logger[_0xff01('0x24')](_0xff01('0x27'),_0x5a742d,_0x57a384[_0xff01('0x24')][_0xff01('0x26')]);return _0xf04fb7(_0x57a384[_0xff01('0x24')]['message']);}else{logger['info'](_0xff01('0x27'),_0x5a742d,_0xff01('0x21'));_0xf04fb7(_0x57a384['result'][_0xff01('0x26')]);}})[_0xff01('0x28')](function(_0x48f8b2){logger[_0xff01('0x24')](_0xff01('0x27'),_0x5a742d,_0x48f8b2);_0x1d55f5(_0x48f8b2);});});}function respondWithStatusCode(_0x2309b0,_0x21841b){_0x21841b=_0x21841b||0xcc;return function(_0xa57a7d){if(_0xa57a7d){return _0x2309b0['sendStatus'](_0x21841b);}return _0x2309b0[_0xff01('0x29')](_0x21841b)[_0xff01('0x2a')]();};}function respondWithResult(_0xa115cc,_0x203bb3){_0x203bb3=_0x203bb3||0xc8;return function(_0x43be3c){if(_0x43be3c){return _0xa115cc[_0xff01('0x29')](_0x203bb3)[_0xff01('0x2b')](_0x43be3c);}};}function respondWithFilteredResult(_0x26d787,_0x5a2733){return function(_0x2fae51){if(_0x2fae51){var _0xe463e5=_0x2fae51['count'],_0x107dd7=_0x5a2733['offset'],_0x32fd90=_0x5a2733['offset']+_0x5a2733['limit'],_0x148b43;if(_0x32fd90>=_0xe463e5){_0x32fd90=_0xe463e5;_0x148b43=0xc8;}else{_0x148b43=0xce;}_0x26d787['status'](_0x148b43);return _0x26d787[_0xff01('0x2c')](_0xff01('0x2d'),_0x107dd7+'-'+_0x32fd90+'/'+_0xe463e5)['json'](_0x2fae51);}return null;};}function patchUpdates(_0x11514d){return function(_0x227df6){try{jsonpatch[_0xff01('0x2e')](_0x227df6,_0x11514d,!![]);}catch(_0x38869e){return BPromise[_0xff01('0x2f')](_0x38869e);}return _0x227df6['save']();};}function saveUpdates(_0xdc2b54,_0xc35094){return function(_0x37e287){if(_0x37e287){return _0x37e287['update'](_0xdc2b54)[_0xff01('0x30')](function(_0x1b2414){return _0x1b2414;});}return null;};}function removeEntity(_0x1ba492,_0x33c3da){return function(_0x2c8e6b){if(_0x2c8e6b){return _0x2c8e6b['destroy']()[_0xff01('0x30')](function(){var _0xd04929=_0x2c8e6b['get']({'plain':!![]});var _0x2d1c3f=_0xff01('0x31');return db[_0xff01('0x32')]['destroy']({'where':{'type':_0x2d1c3f,'resourceId':_0xd04929['id']}})['then'](function(){return _0x2c8e6b;});})[_0xff01('0x30')](function(){_0x1ba492[_0xff01('0x29')](0xcc)[_0xff01('0x2a')]();});}};}function handleEntityNotFound(_0x53bf7c,_0x173c47){return function(_0x55d9c2){if(!_0x55d9c2){_0x53bf7c[_0xff01('0x33')](0x194);}return _0x55d9c2;};}function handleError(_0x1cc405,_0x1c8cb9){_0x1c8cb9=_0x1c8cb9||0x1f4;return function(_0x3581be){logger[_0xff01('0x24')](_0x3581be['stack']);if(_0x3581be[_0xff01('0x34')]){delete _0x3581be[_0xff01('0x34')];}_0x1cc405['status'](_0x1c8cb9)[_0xff01('0x35')](_0x3581be);};}exports[_0xff01('0x36')]=function(_0xf98920,_0x21ad7d){var _0x89b3cb={'include':[{'model':db[_0xff01('0x37')],'as':_0xff01('0x38')},{'model':db['MailServerOut'],'as':'Smtp'},{'model':db[_0xff01('0x39')],'as':_0xff01('0x3a')}]},_0x275dbe={},_0x4d540d={'count':0x0,'rows':[]};var _0x55dcd9=_[_0xff01('0x3b')](db[_0xff01('0x3c')][_0xff01('0x3d')],function(_0x437e53){return{'name':_0x437e53['fieldName'],'type':_0x437e53[_0xff01('0x3e')][_0xff01('0x3f')]};});_0x275dbe[_0xff01('0x40')]=_[_0xff01('0x3b')](_0x55dcd9,'name');_0x275dbe['query']=_['keys'](_0xf98920[_0xff01('0x41')]);_0x275dbe[_0xff01('0x42')]=_['intersection'](_0x275dbe[_0xff01('0x40')],_0x275dbe[_0xff01('0x41')]);_0x89b3cb[_0xff01('0x43')]=_['intersection'](_0x275dbe[_0xff01('0x40')],qs[_0xff01('0x44')](_0xf98920[_0xff01('0x41')][_0xff01('0x44')]));_0x89b3cb['attributes']=_0x89b3cb[_0xff01('0x43')][_0xff01('0x45')]?_0x89b3cb['attributes']:_0x275dbe[_0xff01('0x40')];if(!_0xf98920[_0xff01('0x41')]['hasOwnProperty'](_0xff01('0x46'))){_0x89b3cb['limit']=qs[_0xff01('0x47')](_0xf98920['query'][_0xff01('0x47')]);_0x89b3cb[_0xff01('0x48')]=qs[_0xff01('0x48')](_0xf98920['query'][_0xff01('0x48')]);}_0x89b3cb['order']=qs[_0xff01('0x49')](_0xf98920[_0xff01('0x41')][_0xff01('0x49')]);_0x89b3cb[_0xff01('0x4a')]=qs['filters'](_[_0xff01('0x4b')](_0xf98920['query'],_0x275dbe[_0xff01('0x42')]),_0x55dcd9);if(_0xf98920[_0xff01('0x41')][_0xff01('0x4c')]){_0x89b3cb[_0xff01('0x4a')]=_['merge'](_0x89b3cb[_0xff01('0x4a')],{'$or':_[_0xff01('0x3b')](_0x55dcd9,function(_0x1753c2){if(_0x1753c2[_0xff01('0x3e')]!==_0xff01('0x4d')){var _0x9c16de={};_0x9c16de[_0x1753c2[_0xff01('0x34')]]={'$like':'%'+_0xf98920[_0xff01('0x41')][_0xff01('0x4c')]+'%'};return _0x9c16de;}})});}_0x89b3cb=_[_0xff01('0x4e')]({},_0x89b3cb,_0xf98920['options']);var _0xd220ee={'where':_0x89b3cb[_0xff01('0x4a')]};return db['MailAccount'][_0xff01('0x4f')](_0xd220ee)[_0xff01('0x30')](function(_0x2c9f2d){_0x4d540d[_0xff01('0x4f')]=_0x2c9f2d;if(_0xf98920[_0xff01('0x41')][_0xff01('0x50')]){_0x89b3cb[_0xff01('0x51')]=[{'all':!![]}];}return db[_0xff01('0x3c')][_0xff01('0x52')](_0x89b3cb);})[_0xff01('0x30')](function(_0x5c2c2d){_0x4d540d[_0xff01('0x53')]=_0x5c2c2d;return _0x4d540d;})['then'](respondWithFilteredResult(_0x21ad7d,_0x89b3cb))[_0xff01('0x28')](handleError(_0x21ad7d,null));};exports[_0xff01('0x54')]=function(_0x4cb175,_0x26fe8d){var _0x4452a6={'raw':![],'where':{'id':_0x4cb175[_0xff01('0x55')]['id']},'include':[{'model':db['MailServerIn'],'as':_0xff01('0x38')},{'model':db[_0xff01('0x56')],'as':_0xff01('0x57')},{'model':db[_0xff01('0x39')],'as':_0xff01('0x3a')}]},_0x358efe={};_0x358efe[_0xff01('0x40')]=_[_0xff01('0x58')](db[_0xff01('0x3c')][_0xff01('0x3d')]);_0x358efe['query']=_['keys'](_0x4cb175[_0xff01('0x41')]);_0x358efe['filters']=_[_0xff01('0x59')](_0x358efe[_0xff01('0x40')],_0x358efe[_0xff01('0x41')]);_0x4452a6[_0xff01('0x43')]=_['intersection'](_0x358efe[_0xff01('0x40')],qs['fields'](_0x4cb175[_0xff01('0x41')][_0xff01('0x44')]));_0x4452a6['attributes']=_0x4452a6['attributes'][_0xff01('0x45')]?_0x4452a6['attributes']:_0x358efe[_0xff01('0x40')];if(_0x4cb175[_0xff01('0x41')][_0xff01('0x50')]){_0x4452a6['include']=[{'all':!![]}];}_0x4452a6=_[_0xff01('0x4e')]({},_0x4452a6,_0x4cb175['options']);return db[_0xff01('0x3c')][_0xff01('0x5a')](_0x4452a6)[_0xff01('0x30')](handleEntityNotFound(_0x26fe8d,null))[_0xff01('0x30')](respondWithResult(_0x26fe8d,null))[_0xff01('0x28')](handleError(_0x26fe8d,null));};exports[_0xff01('0x5b')]=function(_0x16480b,_0x4066c3){if(_0x16480b['body']['id']){delete _0x16480b[_0xff01('0x5c')]['id'];}return db[_0xff01('0x3c')][_0xff01('0x5a')]({'where':{'id':_0x16480b[_0xff01('0x55')]['id']},'include':[{'model':db['MailServerIn'],'as':_0xff01('0x38')},{'model':db[_0xff01('0x56')],'as':'Smtp'},{'model':db['Pause'],'as':_0xff01('0x3a')}]})['then'](handleEntityNotFound(_0x4066c3,null))[_0xff01('0x30')](saveUpdates(_0x16480b[_0xff01('0x5c')],null))[_0xff01('0x30')](function(_0x378d66){if(_0x378d66&&_0x16480b[_0xff01('0x5c')][_0xff01('0x38')]){return db[_0xff01('0x37')][_0xff01('0x5b')](_0x16480b['body'][_0xff01('0x38')],{'where':{'MailAccountId':_0x378d66['id']}})['then'](function(){return _0x378d66;});}return _0x378d66;})['then'](function(_0x9b68f5){if(_0x9b68f5&&_0x16480b[_0xff01('0x5c')][_0xff01('0x57')]){return db[_0xff01('0x56')][_0xff01('0x5b')](_0x16480b['body'][_0xff01('0x57')],{'where':{'MailAccountId':_0x9b68f5['id']}})[_0xff01('0x30')](function(){return _0x9b68f5;});}return _0x9b68f5;})[_0xff01('0x30')](respondWithResult(_0x4066c3,null))[_0xff01('0x28')](handleError(_0x4066c3,null));};exports['describe']=function(_0x15a942,_0x16ab74){return db[_0xff01('0x3c')][_0xff01('0x5d')]()[_0xff01('0x30')](respondWithResult(_0x16ab74,null))['catch'](handleError(_0x16ab74,null));};exports[_0xff01('0x5e')]=function(_0x55f6bf,_0x489711,_0x2c9727){if(_0x55f6bf[_0xff01('0x5c')]['id']){delete _0x55f6bf[_0xff01('0x5c')]['id'];}return db[_0xff01('0x3c')][_0xff01('0x5a')]({'where':{'id':_0x55f6bf[_0xff01('0x55')]['id']}})[_0xff01('0x30')](handleEntityNotFound(_0x489711,null))[_0xff01('0x30')](function(_0x11a164){if(_0x11a164){_0x55f6bf[_0xff01('0x5c')][_0xff01('0x5f')]=_0x11a164['id'];return db[_0xff01('0x60')][_0xff01('0x61')](_0x55f6bf[_0xff01('0x5c')]);}})[_0xff01('0x30')](respondWithResult(_0x489711,null))[_0xff01('0x28')](handleError(_0x489711,null));};exports[_0xff01('0x62')]=function(_0x3e6c06,_0x588264,_0x585f5b){var _0x46e497={'raw':![],'where':{}};var _0x4c7d2f={};var _0x542d5c={'count':0x0,'rows':[]};return db[_0xff01('0x3c')][_0xff01('0x63')]({'where':{'id':_0x3e6c06[_0xff01('0x55')]['id']}})['then'](handleEntityNotFound(_0x588264,null))['then'](function(_0x335085){if(_0x335085){_0x4c7d2f[_0xff01('0x40')]=_[_0xff01('0x58')](db[_0xff01('0x60')][_0xff01('0x3d')]);_0x4c7d2f['query']=_[_0xff01('0x58')](_0x3e6c06[_0xff01('0x41')]);_0x4c7d2f[_0xff01('0x42')]=_['intersection'](_0x4c7d2f['model'],_0x4c7d2f[_0xff01('0x41')]);_0x46e497[_0xff01('0x43')]=_[_0xff01('0x59')](_0x4c7d2f[_0xff01('0x40')],qs[_0xff01('0x44')](_0x3e6c06['query'][_0xff01('0x44')]));_0x46e497[_0xff01('0x43')]=_0x46e497[_0xff01('0x43')][_0xff01('0x45')]?_0x46e497[_0xff01('0x43')]:_0x4c7d2f[_0xff01('0x40')];if(!_0x3e6c06[_0xff01('0x41')]['hasOwnProperty']('nolimit')){_0x46e497[_0xff01('0x47')]=qs[_0xff01('0x47')](_0x3e6c06[_0xff01('0x41')][_0xff01('0x47')]);_0x46e497[_0xff01('0x48')]=qs[_0xff01('0x48')](_0x3e6c06['query'][_0xff01('0x48')]);}_0x46e497[_0xff01('0x64')]=qs[_0xff01('0x49')](_0x3e6c06[_0xff01('0x41')][_0xff01('0x49')]);_0x46e497[_0xff01('0x4a')]=qs[_0xff01('0x42')](_[_0xff01('0x4b')](_0x3e6c06[_0xff01('0x41')],_0x4c7d2f[_0xff01('0x42')]));_0x46e497['where'][_0xff01('0x5f')]=_0x335085['id'];if(_0x3e6c06['query'][_0xff01('0x4c')]){_0x46e497['where']=_[_0xff01('0x4e')](_0x46e497[_0xff01('0x4a')],{'$or':_[_0xff01('0x3b')](_0x46e497[_0xff01('0x43')],function(_0x57f7a1){var _0x2fc8c3={};_0x2fc8c3[_0x57f7a1]={'$like':'%'+_0x3e6c06[_0xff01('0x41')][_0xff01('0x4c')]+'%'};return _0x2fc8c3;})});}_0x46e497=_[_0xff01('0x4e')]({},_0x46e497,_0x3e6c06[_0xff01('0x65')]);return db[_0xff01('0x60')][_0xff01('0x4f')]({'where':_0x46e497[_0xff01('0x4a')]})[_0xff01('0x30')](function(_0x2a85f0){_0x542d5c[_0xff01('0x4f')]=_0x2a85f0;if(_0x3e6c06[_0xff01('0x41')][_0xff01('0x50')]){_0x46e497[_0xff01('0x51')]=[{'all':!![]}];}return db[_0xff01('0x60')]['findAll'](_0x46e497);})[_0xff01('0x30')](function(_0x17c8eb){_0x542d5c[_0xff01('0x53')]=_0x17c8eb;return _0x542d5c;});}})['then'](respondWithFilteredResult(_0x588264,_0x46e497))[_0xff01('0x28')](handleError(_0x588264,null));};exports[_0xff01('0x66')]=function(_0x2d506f,_0x3bf445,_0x9a5feb){return db[_0xff01('0x3c')]['find']({'where':{'id':_0x2d506f[_0xff01('0x55')]['id']}})[_0xff01('0x30')](handleEntityNotFound(_0x3bf445,null))[_0xff01('0x30')](function(_0x4fa572){if(_0x4fa572){return _0x4fa572[_0xff01('0x66')](_0x2d506f['query'][_0xff01('0x67')]);}})[_0xff01('0x30')](respondWithStatusCode(_0x3bf445,null))['catch'](handleError(_0x3bf445,null));};exports[_0xff01('0x68')]=function(_0x578946,_0x308bcf,_0x2cbfa6){if(_0x578946[_0xff01('0x5c')]['id']){delete _0x578946['body']['id'];}return db['MailAccount']['find']({'where':{'id':_0x578946[_0xff01('0x55')]['id']}})['then'](handleEntityNotFound(_0x308bcf,null))[_0xff01('0x30')](function(_0x5bfd81){if(_0x5bfd81){_0x578946[_0xff01('0x5c')]['MailAccountId']=_0x5bfd81['id'];return db['CannedAnswer']['create'](_0x578946['body']);}})[_0xff01('0x30')](respondWithResult(_0x308bcf,null))[_0xff01('0x28')](handleError(_0x308bcf,null));};exports['getAnswers']=function(_0x7ab8a4,_0x16226e,_0x22fbc2){var _0x2d8a3f={'raw':![],'where':{}};var _0x4b415b={};var _0x2e39cf={'count':0x0,'rows':[]};return db[_0xff01('0x3c')][_0xff01('0x63')]({'where':{'id':_0x7ab8a4['params']['id']}})[_0xff01('0x30')](handleEntityNotFound(_0x16226e,null))[_0xff01('0x30')](function(_0x5a4fcf){if(_0x5a4fcf){_0x4b415b[_0xff01('0x40')]=_[_0xff01('0x58')](db[_0xff01('0x69')][_0xff01('0x3d')]);_0x4b415b['query']=_[_0xff01('0x58')](_0x7ab8a4[_0xff01('0x41')]);_0x4b415b['filters']=_['intersection'](_0x4b415b[_0xff01('0x40')],_0x4b415b[_0xff01('0x41')]);_0x2d8a3f[_0xff01('0x43')]=_[_0xff01('0x59')](_0x4b415b['model'],qs[_0xff01('0x44')](_0x7ab8a4[_0xff01('0x41')][_0xff01('0x44')]));_0x2d8a3f[_0xff01('0x43')]=_0x2d8a3f[_0xff01('0x43')][_0xff01('0x45')]?_0x2d8a3f['attributes']:_0x4b415b[_0xff01('0x40')];if(!_0x7ab8a4['query'][_0xff01('0x6a')](_0xff01('0x46'))){_0x2d8a3f[_0xff01('0x47')]=qs[_0xff01('0x47')](_0x7ab8a4[_0xff01('0x41')]['limit']);_0x2d8a3f[_0xff01('0x48')]=qs[_0xff01('0x48')](_0x7ab8a4[_0xff01('0x41')][_0xff01('0x48')]);}_0x2d8a3f[_0xff01('0x64')]=qs['sort'](_0x7ab8a4[_0xff01('0x41')][_0xff01('0x49')]);_0x2d8a3f[_0xff01('0x4a')]=qs['filters'](_[_0xff01('0x4b')](_0x7ab8a4['query'],_0x4b415b[_0xff01('0x42')]));_0x2d8a3f[_0xff01('0x4a')][_0xff01('0x5f')]=_0x5a4fcf['id'];if(_0x7ab8a4['query'][_0xff01('0x4c')]){_0x2d8a3f['where']=_[_0xff01('0x4e')](_0x2d8a3f[_0xff01('0x4a')],{'$or':_[_0xff01('0x3b')](_0x2d8a3f['attributes'],function(_0x468834){var _0x3591ad={};_0x3591ad[_0x468834]={'$like':'%'+_0x7ab8a4[_0xff01('0x41')][_0xff01('0x4c')]+'%'};return _0x3591ad;})});}_0x2d8a3f=_[_0xff01('0x4e')]({},_0x2d8a3f,_0x7ab8a4['options']);return db[_0xff01('0x69')][_0xff01('0x4f')]({'where':_0x2d8a3f[_0xff01('0x4a')]})[_0xff01('0x30')](function(_0x982ac1){_0x2e39cf[_0xff01('0x4f')]=_0x982ac1;if(_0x7ab8a4[_0xff01('0x41')][_0xff01('0x50')]){_0x2d8a3f[_0xff01('0x51')]=[{'all':!![]}];}return db[_0xff01('0x69')][_0xff01('0x52')](_0x2d8a3f);})['then'](function(_0x4e9354){_0x2e39cf['rows']=_0x4e9354;return _0x2e39cf;});}})[_0xff01('0x30')](respondWithFilteredResult(_0x16226e,_0x2d8a3f))['catch'](handleError(_0x16226e,null));};exports[_0xff01('0x6b')]=function(_0x50d985,_0x1fd5e3,_0xd11c41){return db[_0xff01('0x3c')][_0xff01('0x5a')]({'where':{'id':_0x50d985[_0xff01('0x55')]['id']}})['then'](handleEntityNotFound(_0x1fd5e3,null))[_0xff01('0x30')](function(_0x22b67b){if(_0x22b67b){return _0x22b67b['removeAnswers'](_0x50d985['query'][_0xff01('0x67')]);}})[_0xff01('0x30')](respondWithStatusCode(_0x1fd5e3,null))['catch'](handleError(_0x1fd5e3,null));};exports[_0xff01('0x61')]=function(_0x1d4ad0,_0x38350c){var _0x44fcfd={'name':_0x1d4ad0[_0xff01('0x5c')][_0xff01('0x34')],'key':_0x1d4ad0[_0xff01('0x5c')][_0xff01('0x3f')],'email':_0x1d4ad0[_0xff01('0x5c')][_0xff01('0x6c')],'ListId':_0x1d4ad0['body']['ListId'],'active':!_[_0xff01('0x6d')](_0x1d4ad0[_0xff01('0x5c')][_0xff01('0x6e')])?_0x1d4ad0['body'][_0xff01('0x6e')]:!![],'description':_0x1d4ad0['body'][_0xff01('0x6f')]||null,'Imap':{},'Smtp':{}};if(_[_0xff01('0x6d')](_0x1d4ad0[_0xff01('0x5c')][_0xff01('0x70')])){if(_0x1d4ad0[_0xff01('0x5c')][_0xff01('0x71')]){_0x44fcfd[_0xff01('0x38')][_0xff01('0x72')]=_0x44fcfd[_0xff01('0x57')][_0xff01('0x72')]=_0x1d4ad0[_0xff01('0x5c')][_0xff01('0x73')];_0x44fcfd[_0xff01('0x38')]['password']=_0x44fcfd[_0xff01('0x57')][_0xff01('0x74')]=_0x1d4ad0['body'][_0xff01('0x75')];}else{_0x44fcfd[_0xff01('0x38')]['authentication']=_0x44fcfd[_0xff01('0x57')]['authentication']=![];}_0x44fcfd['Imap'][_0xff01('0x76')]=_0x1d4ad0['body'][_0xff01('0x38')][_0xff01('0x76')];_0x44fcfd[_0xff01('0x38')][_0xff01('0x77')]=_0x1d4ad0[_0xff01('0x5c')]['Imap'][_0xff01('0x77')];_0x44fcfd[_0xff01('0x57')][_0xff01('0x76')]=_0x1d4ad0['body'][_0xff01('0x57')][_0xff01('0x76')];_0x44fcfd[_0xff01('0x57')][_0xff01('0x77')]=_0x1d4ad0[_0xff01('0x5c')][_0xff01('0x57')]['port'];}else{_0x44fcfd['Imap']['service']=_0x44fcfd[_0xff01('0x57')][_0xff01('0x78')]=_0x1d4ad0[_0xff01('0x5c')][_0xff01('0x70')];_0x44fcfd[_0xff01('0x38')]['user']=_0x44fcfd[_0xff01('0x57')][_0xff01('0x72')]=_0x1d4ad0[_0xff01('0x5c')][_0xff01('0x73')];_0x44fcfd[_0xff01('0x38')]['password']=_0x44fcfd[_0xff01('0x57')][_0xff01('0x74')]=_0x1d4ad0['body'][_0xff01('0x75')];}return db['MailAccount']['create'](_0x44fcfd,{'include':[{'model':db[_0xff01('0x56')],'as':'Smtp'},{'model':db[_0xff01('0x37')],'as':_0xff01('0x38')}]})[_0xff01('0x30')](function(_0xe2d1a7){var _0x2b2527=_0x1d4ad0[_0xff01('0x72')][_0xff01('0x79')]({'plain':!![]});if(!_0x2b2527)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x2b2527[_0xff01('0x7a')]==='user'){var _0x43dd8=_0xe2d1a7[_0xff01('0x79')]({'plain':!![]});return db[_0xff01('0x7b')][_0xff01('0x5a')]({'where':{'name':_0xff01('0x31'),'userProfileId':_0x2b2527[_0xff01('0x7c')]},'raw':!![]})[_0xff01('0x30')](function(_0x587505){if(_0x587505&&_0x587505[_0xff01('0x7d')]===0x0){return db['UserProfileResource'][_0xff01('0x61')]({'name':_0x43dd8[_0xff01('0x34')],'resourceId':_0x43dd8['id'],'type':_0x587505['name'],'sectionId':_0x587505['id']},{})['then'](function(){return _0xe2d1a7;});}else{return _0xe2d1a7;}})['catch'](function(_0x2f37e8){logger[_0xff01('0x24')](_0xff01('0x7e'),_0x2f37e8);throw _0x2f37e8;});}return _0xe2d1a7;})[_0xff01('0x30')](respondWithResult(_0x38350c,0xc9))['catch'](handleError(_0x38350c,null));};exports[_0xff01('0x7f')]=function(_0x5e92cf,_0x47997d,_0x5d3a69){return db[_0xff01('0x3c')][_0xff01('0x63')]({'where':{'id':_0x5e92cf['params']['id']}})[_0xff01('0x30')](handleEntityNotFound(_0x47997d,null))[_0xff01('0x30')](function(_0x3b23a5){if(_0x3b23a5){return _0x3b23a5[_0xff01('0x7f')]();}return null;})[_0xff01('0x30')](respondWithResult(_0x47997d,null))[_0xff01('0x28')](handleError(_0x47997d,null));};exports[_0xff01('0x80')]=function(_0x379805,_0x5dfed1,_0x4eced6){if(_0x379805[_0xff01('0x5c')]['id']){delete _0x379805['body']['id'];}return db[_0xff01('0x3c')][_0xff01('0x5a')]({'where':{'id':_0x379805[_0xff01('0x55')]['id']}})[_0xff01('0x30')](handleEntityNotFound(_0x5dfed1,null))[_0xff01('0x30')](function(_0x2e6269){if(_0x2e6269){_0x379805['body']['MailAccountId']=_0x2e6269['id'];return db[_0xff01('0x37')][_0xff01('0x61')](_0x379805[_0xff01('0x5c')]);}})['then'](respondWithResult(_0x5dfed1,null))['catch'](handleError(_0x5dfed1,null));};exports[_0xff01('0x81')]=function(_0x8ad664,_0x41c816,_0x39c26b){return db[_0xff01('0x3c')]['findOne']({'where':{'id':_0x8ad664['params']['id']}})[_0xff01('0x30')](handleEntityNotFound(_0x41c816,null))[_0xff01('0x30')](function(_0x235808){if(_0x235808){return _0x235808[_0xff01('0x82')](null);}return null;})[_0xff01('0x30')](respondWithStatusCode(_0x41c816,null))[_0xff01('0x28')](handleError(_0x41c816,null));};exports['getSmtp']=function(_0x4efbb3,_0x1cdb43,_0x3f3122){return db[_0xff01('0x3c')]['findOne']({'where':{'id':_0x4efbb3[_0xff01('0x55')]['id']}})[_0xff01('0x30')](handleEntityNotFound(_0x1cdb43,null))['then'](function(_0xd823f5){if(_0xd823f5){return _0xd823f5[_0xff01('0x83')]();}return null;})['then'](respondWithResult(_0x1cdb43,null))['catch'](handleError(_0x1cdb43,null));};exports[_0xff01('0x84')]=function(_0x554623,_0x3fee93,_0x56a4e3){if(_0x554623[_0xff01('0x5c')]['id']){delete _0x554623['body']['id'];}return db[_0xff01('0x3c')][_0xff01('0x5a')]({'where':{'id':_0x554623['params']['id']}})[_0xff01('0x30')](handleEntityNotFound(_0x3fee93,null))[_0xff01('0x30')](function(_0x5710f0){if(_0x5710f0){_0x554623[_0xff01('0x5c')][_0xff01('0x5f')]=_0x5710f0['id'];return db[_0xff01('0x56')][_0xff01('0x61')](_0x554623[_0xff01('0x5c')]);}})[_0xff01('0x30')](respondWithResult(_0x3fee93,null))[_0xff01('0x28')](handleError(_0x3fee93,null));};exports[_0xff01('0x85')]=function(_0x516af3,_0x47df24,_0x272117){return db['MailAccount']['findOne']({'where':{'id':_0x516af3[_0xff01('0x55')]['id']}})[_0xff01('0x30')](handleEntityNotFound(_0x47df24,null))['then'](function(_0x50f5fb){if(_0x50f5fb){return _0x50f5fb[_0xff01('0x86')](null);}return null;})[_0xff01('0x30')](respondWithStatusCode(_0x47df24,null))[_0xff01('0x28')](handleError(_0x47df24,null));};exports[_0xff01('0x87')]=function(_0x520931,_0x376e98,_0x2c1b9e){return db[_0xff01('0x88')][_0xff01('0x5a')]({'where':{'id':_0x520931['params']['id']}})[_0xff01('0x30')](handleEntityNotFound(_0x376e98,null))[_0xff01('0x30')](function(_0x59485d){if(_0x59485d){return _0x59485d[_0xff01('0x87')](_0x520931[_0xff01('0x5c')][_0xff01('0x67')],_[_0xff01('0x89')](_0x520931[_0xff01('0x5c')],[_0xff01('0x67'),'id'])||{});}})[_0xff01('0x30')](respondWithResult(_0x376e98,null))[_0xff01('0x28')](handleError(_0x376e98,null));};exports[_0xff01('0x8a')]=function(_0x22598f,_0x4a057f,_0x25bb01){var _0x15c032={'raw':![],'where':{}};var _0x12386a={};var _0x21cfdd={'count':0x0,'rows':[]};return db['MailAccount'][_0xff01('0x63')]({'where':{'id':_0x22598f['params']['id']}})[_0xff01('0x30')](handleEntityNotFound(_0x4a057f,null))[_0xff01('0x30')](function(_0x3c2838){if(_0x3c2838){_0x12386a['model']=_[_0xff01('0x58')](db[_0xff01('0x88')]['rawAttributes']);_0x12386a[_0xff01('0x41')]=_[_0xff01('0x58')](_0x22598f['query']);_0x12386a[_0xff01('0x42')]=_[_0xff01('0x59')](_0x12386a['model'],_0x12386a[_0xff01('0x41')]);_0x15c032['attributes']=_[_0xff01('0x59')](_0x12386a[_0xff01('0x40')],qs[_0xff01('0x44')](_0x22598f[_0xff01('0x41')][_0xff01('0x44')]));_0x15c032[_0xff01('0x43')]=_0x15c032[_0xff01('0x43')]['length']?_0x15c032['attributes']:_0x12386a[_0xff01('0x40')];if(!_0x22598f['query'][_0xff01('0x6a')]('nolimit')){_0x15c032['limit']=qs[_0xff01('0x47')](_0x22598f[_0xff01('0x41')]['limit']);_0x15c032[_0xff01('0x48')]=qs[_0xff01('0x48')](_0x22598f[_0xff01('0x41')]['offset']);}_0x15c032['order']=qs[_0xff01('0x49')](_0x22598f[_0xff01('0x41')][_0xff01('0x49')]);_0x15c032[_0xff01('0x4a')]=qs[_0xff01('0x42')](_[_0xff01('0x4b')](_0x22598f[_0xff01('0x41')],_0x12386a[_0xff01('0x42')]));_0x15c032['where'][_0xff01('0x5f')]=_0x3c2838['id'];if(_0x22598f['query'][_0xff01('0x4c')]){_0x15c032[_0xff01('0x4a')]=_[_0xff01('0x4e')](_0x15c032[_0xff01('0x4a')],{'$or':_[_0xff01('0x3b')](_0x15c032[_0xff01('0x43')],function(_0x568813){var _0x4ed37b={};_0x4ed37b[_0x568813]={'$like':'%'+_0x22598f[_0xff01('0x41')]['filter']+'%'};return _0x4ed37b;})});}_0x15c032=_[_0xff01('0x4e')]({},_0x15c032,_0x22598f[_0xff01('0x65')]);return db[_0xff01('0x88')]['count']({'where':_0x15c032[_0xff01('0x4a')]})[_0xff01('0x30')](function(_0x4ac0c7){_0x21cfdd[_0xff01('0x4f')]=_0x4ac0c7;if(_0x22598f[_0xff01('0x41')][_0xff01('0x50')]){_0x15c032[_0xff01('0x51')]=[{'model':db['CmContact'],'as':_0xff01('0x8b'),'required':![]},{'model':db[_0xff01('0x8c')],'as':'Owner','attributes':[_0xff01('0x34'),_0xff01('0x8d'),'internal'],'required':![]},{'model':db['Tag'],'as':_0xff01('0x8e'),'attributes':['id',_0xff01('0x34'),_0xff01('0x8f')],'where':_0x22598f[_0xff01('0x41')][_0xff01('0x90')]?{'id':_0x22598f[_0xff01('0x41')][_0xff01('0x90')]}:undefined,'required':_0x22598f[_0xff01('0x41')]['tag']?!![]:![]}];}return db['MailInteraction'][_0xff01('0x52')](_0x15c032);})[_0xff01('0x30')](function(_0x1f1469){_0x21cfdd[_0xff01('0x53')]=_0x1f1469;return _0x21cfdd;});}})['then'](respondWithFilteredResult(_0x4a057f,_0x15c032))[_0xff01('0x28')](handleError(_0x4a057f,null));};exports[_0xff01('0x91')]=function(_0x18ae36,_0x5e6b1e,_0x1c620e){return db['MailAccount'][_0xff01('0x63')]({'where':{'id':_0x18ae36[_0xff01('0x55')]['id']}})[_0xff01('0x30')](handleEntityNotFound(_0x5e6b1e,null))[_0xff01('0x30')](function(_0x45d7b5){if(_0x45d7b5){return db['sequelize'][_0xff01('0x92')](function(_0x4fc6fc){return db['MailApplication'][_0xff01('0x93')]({'where':{'MailAccountId':_0x18ae36['params']['id']},'transaction':_0x4fc6fc})[_0xff01('0x30')](function(_0x1703f3){var _0x297f98=_[_0xff01('0x3b')](_0x18ae36[_0xff01('0x5c')],function(_0x50d029){_0x50d029['MailAccountId']=_0x18ae36[_0xff01('0x55')]['id'];return _0x50d029;});return db['MailApplication']['bulkCreate'](_0x297f98,{'transaction':_0x4fc6fc});});})[_0xff01('0x30')](function(){return db['MailApplication']['findAndCountAll']({'where':{'MailAccountId':_0x18ae36['params']['id']},'order':_0xff01('0x94')});});}})['then'](respondWithResult(_0x5e6b1e,null))[_0xff01('0x28')](handleError(_0x5e6b1e,null));};exports[_0xff01('0x95')]=function(_0x2b0c42,_0x389cf8,_0x26c92f){var _0x3e8d9d={};var _0x26e282={};var _0x184c87;var _0x2950f3;return db['MailAccount']['findOne']({'where':{'id':_0x2b0c42[_0xff01('0x55')]['id']}})[_0xff01('0x30')](handleEntityNotFound(_0x389cf8,null))[_0xff01('0x30')](function(_0xc0cb0d){if(_0xc0cb0d){_0x184c87=_0xc0cb0d;_0x26e282[_0xff01('0x40')]=_[_0xff01('0x58')](db['MailApplication'][_0xff01('0x3d')]);_0x26e282['query']=_[_0xff01('0x58')](_0x2b0c42[_0xff01('0x41')]);_0x26e282[_0xff01('0x42')]=_['intersection'](_0x26e282[_0xff01('0x40')],_0x26e282[_0xff01('0x41')]);_0x3e8d9d[_0xff01('0x43')]=_[_0xff01('0x59')](_0x26e282[_0xff01('0x40')],qs[_0xff01('0x44')](_0x2b0c42[_0xff01('0x41')][_0xff01('0x44')]));_0x3e8d9d[_0xff01('0x43')]=_0x3e8d9d['attributes'][_0xff01('0x45')]?_0x3e8d9d['attributes']:_0x26e282[_0xff01('0x40')];_0x3e8d9d[_0xff01('0x64')]=qs[_0xff01('0x49')](_0x2b0c42[_0xff01('0x41')]['sort']);_0x3e8d9d[_0xff01('0x4a')]=qs[_0xff01('0x42')](_[_0xff01('0x4b')](_0x2b0c42['query'],_0x26e282[_0xff01('0x42')]));if(_0x2b0c42[_0xff01('0x41')]['filter']){_0x3e8d9d[_0xff01('0x4a')]=_['merge'](_0x3e8d9d['where'],{'$or':_[_0xff01('0x3b')](_0x3e8d9d[_0xff01('0x43')],function(_0x672e56){var _0x4f847e={};_0x4f847e[_0x672e56]={'$like':'%'+_0x2b0c42[_0xff01('0x41')][_0xff01('0x4c')]+'%'};return _0x4f847e;})});}_0x3e8d9d=_[_0xff01('0x4e')]({},_0x3e8d9d,_0x2b0c42[_0xff01('0x65')]);return _0x184c87[_0xff01('0x95')](_0x3e8d9d);}})[_0xff01('0x30')](function(_0x3627cc){if(_0x3627cc){_0x2950f3=_0x3627cc['length'];if(!_0x2b0c42[_0xff01('0x41')]['hasOwnProperty'](_0xff01('0x46'))){_0x3e8d9d[_0xff01('0x47')]=qs['limit'](_0x2b0c42['query']['limit']);_0x3e8d9d[_0xff01('0x48')]=qs[_0xff01('0x48')](_0x2b0c42['query'][_0xff01('0x48')]);}return _0x184c87[_0xff01('0x95')](_0x3e8d9d);}})[_0xff01('0x30')](function(_0x1bd4bc){if(_0x1bd4bc){return _0x1bd4bc?{'count':_0x2950f3,'rows':_0x1bd4bc}:null;}})[_0xff01('0x30')](respondWithResult(_0x389cf8,null))[_0xff01('0x28')](handleError(_0x389cf8,null));};exports[_0xff01('0x96')]=function(_0x66f0c3,_0x5a418e,_0x2ed4f7){var _0x343f36={'raw':!![],'where':{}};var _0x40a9fa={};var _0x481c62={'count':0x0,'rows':[]};return db['MailAccount'][_0xff01('0x63')]({'where':{'id':_0x66f0c3['params']['id']}})['then'](handleEntityNotFound(_0x5a418e,null))[_0xff01('0x30')](function(_0x46d9b3){if(_0x46d9b3){_0x40a9fa[_0xff01('0x40')]=_[_0xff01('0x58')](db['MailMessage'][_0xff01('0x3d')]);_0x40a9fa[_0xff01('0x41')]=_[_0xff01('0x58')](_0x66f0c3[_0xff01('0x41')]);_0x40a9fa[_0xff01('0x42')]=_[_0xff01('0x59')](_0x40a9fa['model'],_0x40a9fa[_0xff01('0x41')]);_0x343f36[_0xff01('0x43')]=_['intersection'](_0x40a9fa['model'],qs[_0xff01('0x44')](_0x66f0c3[_0xff01('0x41')]['fields']));_0x343f36['attributes']=_0x343f36[_0xff01('0x43')]['length']?_0x343f36[_0xff01('0x43')]:_0x40a9fa[_0xff01('0x40')];if(!_0x66f0c3['query']['hasOwnProperty'](_0xff01('0x46'))){_0x343f36[_0xff01('0x47')]=qs[_0xff01('0x47')](_0x66f0c3[_0xff01('0x41')][_0xff01('0x47')]);_0x343f36[_0xff01('0x48')]=qs['offset'](_0x66f0c3[_0xff01('0x41')][_0xff01('0x48')]);}_0x343f36['order']=qs[_0xff01('0x49')](_0x66f0c3[_0xff01('0x41')][_0xff01('0x49')]);_0x343f36[_0xff01('0x4a')]=qs['filters'](_['pick'](_0x66f0c3[_0xff01('0x41')],_0x40a9fa[_0xff01('0x42')]));_0x343f36['where']['MailAccountId']=_0x46d9b3['id'];if(_0x66f0c3['query']['filter']){_0x343f36['where']=_[_0xff01('0x4e')](_0x343f36[_0xff01('0x4a')],{'$or':_[_0xff01('0x3b')](_0x343f36[_0xff01('0x43')],function(_0x130e09){var _0x5dfb07={};_0x5dfb07[_0x130e09]={'$like':'%'+_0x66f0c3['query'][_0xff01('0x4c')]+'%'};return _0x5dfb07;})});}if(_0x66f0c3[_0xff01('0x41')][_0xff01('0x97')]){var _0x3edcb3=_0x66f0c3[_0xff01('0x41')][_0xff01('0x97')][_0xff01('0x98')](',');var _0x32db8d={};_0x32db8d[_0x3edcb3[0x0]]={'$gte':moment(_0x3edcb3[0x1])[_0xff01('0x99')]('YYYY-MM-DD\x20HH:mm:ss')};_0x343f36[_0xff01('0x4a')]=_['merge'](_0x343f36[_0xff01('0x4a')],_0x32db8d);}_0x343f36=_['merge']({},_0x343f36,_0x66f0c3[_0xff01('0x65')]);return db[_0xff01('0x9a')][_0xff01('0x4f')]({'where':_0x343f36['where']})[_0xff01('0x30')](function(_0x5b5a78){_0x481c62[_0xff01('0x4f')]=_0x5b5a78;if(_0x66f0c3[_0xff01('0x41')]['includeAll']){_0x343f36[_0xff01('0x51')]=[{'all':!![]}];}return db[_0xff01('0x9a')]['findAll'](_0x343f36);})['then'](function(_0xf58624){_0x481c62[_0xff01('0x53')]=_0xf58624;return _0x481c62;});}})[_0xff01('0x30')](respondWithFilteredResult(_0x5a418e,_0x343f36))[_0xff01('0x28')](handleError(_0x5a418e,null));};exports[_0xff01('0x35')]=function(_0x28a16a,_0x3e4920,_0x2fff43){var _0x5093e2,_0x4a4926={},_0x5da462;if(_0x28a16a[_0xff01('0x5c')]['to']){_0x5da462=_0x28a16a[_0xff01('0x5c')]['to'][_0xff01('0x98')](',')[0x0];}return db[_0xff01('0x3c')]['find']({'where':{'id':_0x28a16a[_0xff01('0x55')]['id']},'include':[{'model':db[_0xff01('0x9b')],'as':_0xff01('0x9c'),'include':[{'model':db[_0xff01('0x9d')],'as':_0xff01('0x9e'),'where':{'email':_0x5da462},'limit':0x1,'order':[[_0xff01('0x9f'),_0xff01('0xa0')]]}]},{'model':db['MailServerOut'],'as':_0xff01('0x57'),'raw':!![]}]})[_0xff01('0x30')](handleEntityNotFound(_0x3e4920,null))[_0xff01('0x30')](function(_0x3e8142){if(_0x3e8142){_0x5093e2=_0x3e8142;if(_0x3e8142[_0xff01('0x57')]){if(_[_0xff01('0x6d')](_0x28a16a['body']['from'])){_0x28a16a['body']['from']=util[_0xff01('0x99')](_0xff01('0xa1'),_0x3e8142[_0xff01('0x34')],_0x3e8142[_0xff01('0x6c')]||_0x3e8142[_0xff01('0x57')][_0xff01('0x72')]);}if(_0x28a16a['body'][_0xff01('0xa2')]&&_0x28a16a[_0xff01('0x5c')][_0xff01('0xa2')][_0xff01('0x45')]){for(var _0x2d3034=0x0;_0x2d3034<_0x28a16a[_0xff01('0x5c')][_0xff01('0xa2')][_0xff01('0x45')];_0x2d3034+=0x1){_0x28a16a['body'][_0xff01('0xa2')][_0x2d3034]={'filename':_0x28a16a[_0xff01('0x5c')][_0xff01('0xa2')][_0x2d3034]['name'],'path':path[_0xff01('0xa3')](config[_0xff01('0xa4')],_0xff01('0xa5'),_0x28a16a['body'][_0xff01('0xa2')][_0x2d3034][_0xff01('0xa6')])};}}var _0x7bbca1={'tls':{'rejectUnauthorized':![]}};if(_[_0xff01('0x6d')](_0x3e8142['Smtp'][_0xff01('0x78')])){if(_0x3e8142['Smtp'][_0xff01('0xa7')]){_0x7bbca1[_0xff01('0xa8')]={'user':_0x3e8142[_0xff01('0x57')]['user'],'pass':_0x3e8142[_0xff01('0x57')][_0xff01('0x74')]};}_0x7bbca1[_0xff01('0x76')]=_0x3e8142['Smtp'][_0xff01('0x76')];_0x7bbca1['port']=_0x3e8142[_0xff01('0x57')][_0xff01('0x77')];_0x7bbca1[_0xff01('0xa9')]=_0x3e8142[_0xff01('0x57')][_0xff01('0xa9')];}else{_0x7bbca1[_0xff01('0x78')]=_0x3e8142[_0xff01('0x57')]['service'];_0x7bbca1[_0xff01('0xa8')]={'user':_0x3e8142['Smtp'][_0xff01('0x72')],'pass':_0x3e8142[_0xff01('0x57')][_0xff01('0x74')]};}return respondWithRpcPromise(_0xff01('0xaa'),'sendMail',{'account':_0x7bbca1,'message':_0x28a16a['body']});}else{throw new Error('List\x20not\x20found');}}})[_0xff01('0x30')](function(_0x292c9f){if(_0x292c9f){_0x4a4926=_0x292c9f;if(_0x5093e2['List']){if(_0x5093e2['List'][_0xff01('0x9e')][_0xff01('0x45')]){return _0x5093e2[_0xff01('0x9c')]['Contacts'][0x0];}else{return db[_0xff01('0x9d')][_0xff01('0x61')](_['defaults'](_0x28a16a[_0xff01('0x5c')],{'firstName':_0x28a16a[_0xff01('0x5c')]['to'],'email':_0x28a16a[_0xff01('0x5c')]['to'],'phone':_0x28a16a[_0xff01('0x5c')]['to'],'ListId':_0x5093e2['ListId']}));}}else{throw new Error(_0xff01('0xab'));}}})[_0xff01('0x30')](function(_0x1ec27e){if(_0x1ec27e){var _0x1292a0={'UserId':_0x28a16a[_0xff01('0x72')]['id'],'ContactId':_0x1ec27e['id'],'MailAccountId':_0x5093e2['id'],'inReplyTo':_0x4a4926[_0xff01('0xac')],'to':_0x28a16a[_0xff01('0x5c')][_0xff01('0xad')],'cc':_0x28a16a[_0xff01('0x5c')]['cc'],'subject':_0x28a16a[_0xff01('0x5c')][_0xff01('0xae')],'attach':_0x28a16a[_0xff01('0x5c')][_0xff01('0xaf')],'firstMsgDirection':_0xff01('0xb0'),'lastMsgAt':moment()[_0xff01('0x99')]('YYYY-MM-DD\x20HH:mm:ss'),'lastMsgDirection':_0xff01('0xb0'),'lastMsgBody':_0x28a16a[_0xff01('0x5c')][_0xff01('0x5c')],'Messages':[_['merge'](_0x28a16a[_0xff01('0x5c')],{'messageId':_0x4a4926[_0xff01('0xac')],'sentAt':moment()[_0xff01('0x99')](_0xff01('0xb1')),'read':!![],'MailAccountId':_0x5093e2['id'],'UserId':_0x28a16a[_0xff01('0x72')]['id'],'ContactId':_0x1ec27e['id']})]};if(_0x28a16a[_0xff01('0x5c')][_0xff01('0xb2')]){_0x1292a0=_[_0xff01('0x4e')](_0x1292a0,_0x28a16a[_0xff01('0x5c')][_0xff01('0xb2')]);}return db['MailInteraction']['create'](_0x1292a0,{'include':[{'model':db['MailMessage'],'as':_0xff01('0xb3')}]});}})[_0xff01('0x30')](respondWithResult(_0x3e4920,null))[_0xff01('0x28')](handleError(_0x3e4920,null));};exports[_0xff01('0xb4')]=function(_0x305c39,_0xce9700,_0x5c5dee){return db[_0xff01('0x3c')][_0xff01('0x5a')]({'where':{'id':_0x305c39['params']['id']},'include':[{'model':db[_0xff01('0x56')],'as':_0xff01('0x57'),'raw':!![]}]})[_0xff01('0x30')](handleEntityNotFound(_0xce9700,null))[_0xff01('0x30')](function(_0x2dc23a){if(_0x2dc23a&&_0x2dc23a[_0xff01('0x57')]){var _0x408c13={'id':_0x2dc23a['id'],'tls':{'rejectUnauthorized':![]}};if(_0x2dc23a[_0xff01('0x57')][_0xff01('0x78')]){_0x408c13[_0xff01('0x78')]=_0x2dc23a[_0xff01('0x57')][_0xff01('0x78')];}else{_0x408c13['host']=_0x2dc23a[_0xff01('0x57')][_0xff01('0x76')];_0x408c13[_0xff01('0x77')]=_0x2dc23a['Smtp'][_0xff01('0x77')];_0x408c13[_0xff01('0xa9')]=_0x2dc23a[_0xff01('0x57')][_0xff01('0xa9')];}if(_0x2dc23a[_0xff01('0x57')][_0xff01('0xa7')]){_0x408c13[_0xff01('0xa8')]={'user':_0x2dc23a[_0xff01('0x57')][_0xff01('0x72')],'pass':_0x2dc23a[_0xff01('0x57')][_0xff01('0x74')]};}return respondWithRpcPromise(_0xff01('0xb5'),_0xff01('0xb4'),{'account':_0x408c13});}})[_0xff01('0x30')](respondWithResult(_0xce9700,null))[_0xff01('0x28')](handleError(_0xce9700,null));};exports['destroy']=function(_0x437a67,_0x42450c){return db[_0xff01('0x3c')]['find']({'where':{'id':_0x437a67[_0xff01('0x55')]['id']}})[_0xff01('0x30')](handleEntityNotFound(_0x42450c,null))[_0xff01('0x30')](function(_0x3c3b47){if(_0x3c3b47&&_0x3c3b47[_0xff01('0x78')]){throw new db[(_0xff01('0xb6'))]['ValidationError']('You\x20can\x27t\x20remove\x20the\x20mail\x20service\x20account');}return _0x3c3b47;})[_0xff01('0x30')](removeEntity(_0x42450c,null))[_0xff01('0x28')](handleError(_0x42450c,null));};exports['addAgents']=function(_0x4c67ac,_0x1ce851,_0x10b572){return db[_0xff01('0x3c')][_0xff01('0x5a')]({'where':{'id':_0x4c67ac[_0xff01('0x55')]['id']}})[_0xff01('0x30')](handleEntityNotFound(_0x1ce851,null))[_0xff01('0x30')](function(_0x3a20ca){if(_0x3a20ca){return _0x3a20ca['addAgents'](_0x4c67ac[_0xff01('0x5c')][_0xff01('0x67')],_[_0xff01('0x89')](_0x4c67ac[_0xff01('0x5c')],['ids','id'])||{})[_0xff01('0xb7')](function(_0x3ab1af){for(var _0x5818cc=0x0;_0x5818cc<_0x4c67ac[_0xff01('0x5c')][_0xff01('0x67')][_0xff01('0x45')];_0x5818cc+=0x1){socket[_0xff01('0xb8')](_0xff01('0xb9'),{'UserId':_0x4c67ac[_0xff01('0x5c')][_0xff01('0x67')][_0x5818cc],'MailAccountId':_0x4c67ac['params']['id']});}return _0x3ab1af;});}})[_0xff01('0x30')](respondWithResult(_0x1ce851,null))[_0xff01('0x28')](handleError(_0x1ce851,null));};exports[_0xff01('0xba')]=function(_0x5a2609,_0x110716,_0x2ef78e){return db[_0xff01('0x3c')][_0xff01('0x5a')]({'where':{'id':_0x5a2609['params']['id']}})['then'](handleEntityNotFound(_0x110716,null))[_0xff01('0x30')](function(_0xef7c3f){if(_0xef7c3f){return _0xef7c3f[_0xff01('0xba')](_0x5a2609[_0xff01('0x41')][_0xff01('0x67')])[_0xff01('0x30')](function(){if(_[_0xff01('0xbb')](_0x5a2609[_0xff01('0x41')][_0xff01('0x67')])){for(var _0x26e04b=0x0;_0x26e04b<_0x5a2609['query'][_0xff01('0x67')][_0xff01('0x45')];_0x26e04b+=0x1){socket[_0xff01('0xb8')](_0xff01('0xbc'),{'UserId':Number(_0x5a2609[_0xff01('0x41')][_0xff01('0x67')][_0x26e04b]),'MailAccountId':Number(_0x5a2609[_0xff01('0x55')]['id'])});}}else{socket[_0xff01('0xb8')](_0xff01('0xbc'),{'UserId':Number(_0x5a2609['query'][_0xff01('0x67')]),'MailAccountId':Number(_0x5a2609[_0xff01('0x55')]['id'])});}});}})[_0xff01('0x30')](respondWithStatusCode(_0x110716,null))['catch'](handleError(_0x110716,null));};exports[_0xff01('0xbd')]=function(_0x246aad,_0x32450d,_0x3a16bc){var _0x11bcfd={};var _0x2f2e79={};var _0x4bd77f;var _0x5bf00e;return db[_0xff01('0x3c')][_0xff01('0x63')]({'where':{'id':_0x246aad[_0xff01('0x55')]['id']}})[_0xff01('0x30')](handleEntityNotFound(_0x32450d,null))['then'](function(_0x3ca2e5){if(_0x3ca2e5){_0x4bd77f=_0x3ca2e5;_0x2f2e79[_0xff01('0x40')]=_['keys'](db[_0xff01('0x8c')][_0xff01('0x3d')]);_0x2f2e79[_0xff01('0x41')]=_[_0xff01('0x58')](_0x246aad['query']);_0x2f2e79[_0xff01('0x42')]=_[_0xff01('0x59')](_0x2f2e79[_0xff01('0x40')],_0x2f2e79[_0xff01('0x41')]);_0x11bcfd[_0xff01('0x43')]=_['intersection'](_0x2f2e79[_0xff01('0x40')],qs[_0xff01('0x44')](_0x246aad['query'][_0xff01('0x44')]));_0x11bcfd[_0xff01('0x43')]=_0x11bcfd[_0xff01('0x43')][_0xff01('0x45')]?_0x11bcfd[_0xff01('0x43')]:_0x2f2e79[_0xff01('0x40')];_0x11bcfd[_0xff01('0x64')]=qs[_0xff01('0x49')](_0x246aad[_0xff01('0x41')][_0xff01('0x49')]);_0x11bcfd[_0xff01('0x4a')]=qs[_0xff01('0x42')](_[_0xff01('0x4b')](_0x246aad[_0xff01('0x41')],_0x2f2e79[_0xff01('0x42')]));if(_0x246aad[_0xff01('0x41')]['filter']){_0x11bcfd[_0xff01('0x4a')]=_['merge'](_0x11bcfd[_0xff01('0x4a')],{'$or':_[_0xff01('0x3b')](_0x11bcfd[_0xff01('0x43')],function(_0x538564){var _0x4cdbef={};_0x4cdbef[_0x538564]={'$like':'%'+_0x246aad[_0xff01('0x41')][_0xff01('0x4c')]+'%'};return _0x4cdbef;})});}_0x11bcfd=_[_0xff01('0x4e')]({},_0x11bcfd,_0x246aad['options']);return _0x4bd77f[_0xff01('0xbd')](_0x11bcfd);}})[_0xff01('0x30')](function(_0x41a6a3){if(_0x41a6a3){_0x5bf00e=_0x41a6a3['length'];if(!_0x246aad[_0xff01('0x41')][_0xff01('0x6a')](_0xff01('0x46'))){_0x11bcfd['limit']=qs[_0xff01('0x47')](_0x246aad[_0xff01('0x41')]['limit']);_0x11bcfd[_0xff01('0x48')]=qs[_0xff01('0x48')](_0x246aad[_0xff01('0x41')][_0xff01('0x48')]);}return _0x4bd77f[_0xff01('0xbd')](_0x11bcfd);}})[_0xff01('0x30')](function(_0x2c790b){if(_0x2c790b){return _0x2c790b?{'count':_0x5bf00e,'rows':_0x2c790b}:null;}})[_0xff01('0x30')](respondWithResult(_0x32450d,null))[_0xff01('0x28')](handleError(_0x32450d,null));};