ed204e3b45cde4804b4f98717d8b7eefbd656922
[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 _0x6528=['fieldName','type','key','model','name','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','offset','order','sort','where','pick','filter','merge','options','includeAll','include','catch','show','params','MailServerIn','find','body','describe','addDisposition','MailAccountId','Disposition','create','findOne','nolimit','removeDispositions','getAnswers','rows','removeAnswers','ids','email','ListId','isNil','cservice','user','cuser','password','pass','authentication','host','port','service','Unable\x20to\x20retrieve\x20the\x20current\x20user','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','getImap','addImap','removeImap','setImap','getSmtp','addSmtp','setSmtp','addInteraction','MailInteraction','omit','CmContact','Contact','internal','Tag','Tags','color','tag','findAll','addApplications','sequelize','bulkCreate','MailApplication','findAndCountAll','getApplications','MailMessage','$gte','split','format','YYYY-MM-DD\x20HH:mm:ss','inlineCss','CmList','List','Contacts','DESC','from','%s\x20<%s>','attachments','join','root','server/files/attachments','basename','auth','secure','SendMail','sendMail','List\x20not\x20found','subject','attach','out','messageId','Interaction','Messages','verifySmtp','VerifySmtp','Sequelize','ValidationError','You\x20can\x27t\x20remove\x20the\x20mail\x20service\x20account','addAgents','spread','emit','userMailAccount:save','removeAgents','isArray','userMailAccount:remove','User','html-pdf','eml-format','request-promise','moment','util','path','to-csv','ejs','lodash','crypto','jsforce','desk.js','querystring','papaparse','html-to-text','juice','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/environment','redis','defaults','localhost','socket.io-emitter','./mailAccount.socket','register','jayson/promise','client','http','request','then','request\x20sent','debug','MailAccount,\x20%s,\x20%s,\x20%s','stringify','error','code','message','MailAccount,\x20%s,\x20%s','info','result','status','end','count','limit','Content-Range','json','apply','save','update','get','MailAccounts','UserProfileResource','destroy','sendStatus','stack','send','index','Imap','MailServerOut','Smtp','Pause','mandatoryDispositionPause','map','MailAccount','rawAttributes'];(function(_0x1ffb15,_0x1f1efc){var _0x1969a5=function(_0x54fc7e){while(--_0x54fc7e){_0x1ffb15['push'](_0x1ffb15['shift']());}};_0x1969a5(++_0x1f1efc);}(_0x6528,0x7b));var _0x8652=function(_0x102b97,_0x59a7e9){_0x102b97=_0x102b97-0x0;var _0x32d9af=_0x6528[_0x102b97];return _0x32d9af;};'use strict';var pdf=require(_0x8652('0x0'));var emlformat=require(_0x8652('0x1'));var rimraf=require('rimraf');var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require(_0x8652('0x2'));var moment=require(_0x8652('0x3'));var BPromise=require('bluebird');var Mustache=require('mustache');var util=require(_0x8652('0x4'));var path=require(_0x8652('0x5'));var sox=require('sox');var csv=require(_0x8652('0x6'));var ejs=require(_0x8652('0x7'));var fs=require('fs');var _=require(_0x8652('0x8'));var squel=require('squel');var crypto=require(_0x8652('0x9'));var jsforce=require(_0x8652('0xa'));var deskjs=require(_0x8652('0xb'));var toCsv=require('to-csv');var querystring=require(_0x8652('0xc'));var Papa=require(_0x8652('0xd'));var htmlToText=require(_0x8652('0xe'));var juice=require(_0x8652('0xf'));var Redis=require('ioredis');var authService=require(_0x8652('0x10'));var qs=require(_0x8652('0x11'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x8652('0x12'));var logger=require(_0x8652('0x13'))(_0x8652('0x14'));var utils=require('../../config/utils');var config=require(_0x8652('0x15'));var licenseUtil=require('../../config/license/util');var db=require('../../mysqldb')['db'];config[_0x8652('0x16')]=_[_0x8652('0x17')](config[_0x8652('0x16')],{'host':_0x8652('0x18'),'port':0x18eb});var socket=require(_0x8652('0x19'))(new Redis(config[_0x8652('0x16')]));require(_0x8652('0x1a'))[_0x8652('0x1b')](socket);var jayson=require(_0x8652('0x1c'));var client=jayson[_0x8652('0x1d')][_0x8652('0x1e')]({'port':0x232b});function respondWithRpcPromise(_0x1f8c94,_0x4d6b9a,_0x2b3a7b,_0x46b22d){return new BPromise(function(_0x34350e,_0x477c2e){var _0x313e2e=_0x46b22d||client;return _0x313e2e[_0x8652('0x1f')](_0x1f8c94,_0x2b3a7b)[_0x8652('0x20')](function(_0x48f64b){logger['info']('MailAccount,\x20%s,\x20%s',_0x4d6b9a,_0x8652('0x21'));logger[_0x8652('0x22')](_0x8652('0x23'),_0x4d6b9a,'request\x20sent',JSON[_0x8652('0x24')](_0x48f64b));if(_0x48f64b[_0x8652('0x25')]){if(_0x48f64b[_0x8652('0x25')][_0x8652('0x26')]===0x1f4){logger[_0x8652('0x25')]('MailAccount,\x20%s,\x20%s',_0x4d6b9a,_0x48f64b['error'][_0x8652('0x27')]);return _0x477c2e(_0x48f64b[_0x8652('0x25')][_0x8652('0x27')]);}logger['error'](_0x8652('0x28'),_0x4d6b9a,_0x48f64b[_0x8652('0x25')][_0x8652('0x27')]);return _0x34350e(_0x48f64b[_0x8652('0x25')][_0x8652('0x27')]);}else{logger[_0x8652('0x29')]('MailAccount,\x20%s,\x20%s',_0x4d6b9a,_0x8652('0x21'));_0x34350e(_0x48f64b[_0x8652('0x2a')][_0x8652('0x27')]);}})['catch'](function(_0x1bf268){logger[_0x8652('0x25')](_0x8652('0x28'),_0x4d6b9a,_0x1bf268);_0x477c2e(_0x1bf268);});});}function respondWithStatusCode(_0x830765,_0x38ce45){_0x38ce45=_0x38ce45||0xcc;return function(_0x5baaf4){if(_0x5baaf4){return _0x830765['sendStatus'](_0x38ce45);}return _0x830765[_0x8652('0x2b')](_0x38ce45)[_0x8652('0x2c')]();};}function respondWithResult(_0x1fdf2b,_0x3bc7fd){_0x3bc7fd=_0x3bc7fd||0xc8;return function(_0x2b6118){if(_0x2b6118){return _0x1fdf2b[_0x8652('0x2b')](_0x3bc7fd)['json'](_0x2b6118);}};}function respondWithFilteredResult(_0x44b2d3,_0x5dbbc2){return function(_0x1e2514){if(_0x1e2514){var _0x3c3c96=_0x1e2514[_0x8652('0x2d')],_0x20b68d=_0x5dbbc2['offset'],_0xbbaed6=_0x5dbbc2['offset']+_0x5dbbc2[_0x8652('0x2e')],_0x5bd044;if(_0xbbaed6>=_0x3c3c96){_0xbbaed6=_0x3c3c96;_0x5bd044=0xc8;}else{_0x5bd044=0xce;}_0x44b2d3[_0x8652('0x2b')](_0x5bd044);return _0x44b2d3['set'](_0x8652('0x2f'),_0x20b68d+'-'+_0xbbaed6+'/'+_0x3c3c96)[_0x8652('0x30')](_0x1e2514);}return null;};}function patchUpdates(_0x207be6){return function(_0xd2d9b4){try{jsonpatch[_0x8652('0x31')](_0xd2d9b4,_0x207be6,!![]);}catch(_0x172564){return BPromise['reject'](_0x172564);}return _0xd2d9b4[_0x8652('0x32')]();};}function saveUpdates(_0x5abda7,_0x58e2c2){return function(_0x23c0ff){if(_0x23c0ff){return _0x23c0ff[_0x8652('0x33')](_0x5abda7)['then'](function(_0x11b69a){return _0x11b69a;});}return null;};}function removeEntity(_0x17702b,_0x180e37){return function(_0x185a93){if(_0x185a93){return _0x185a93['destroy']()[_0x8652('0x20')](function(){var _0x12b4b9=_0x185a93[_0x8652('0x34')]({'plain':!![]});var _0x30093d=_0x8652('0x35');return db[_0x8652('0x36')][_0x8652('0x37')]({'where':{'type':_0x30093d,'resourceId':_0x12b4b9['id']}})[_0x8652('0x20')](function(){return _0x185a93;});})[_0x8652('0x20')](function(){_0x17702b[_0x8652('0x2b')](0xcc)[_0x8652('0x2c')]();});}};}function handleEntityNotFound(_0x384d0c,_0x802ede){return function(_0x97c389){if(!_0x97c389){_0x384d0c[_0x8652('0x38')](0x194);}return _0x97c389;};}function handleError(_0x3d4463,_0x35baf1){_0x35baf1=_0x35baf1||0x1f4;return function(_0x47c95d){logger['error'](_0x47c95d[_0x8652('0x39')]);if(_0x47c95d['name']){delete _0x47c95d['name'];}_0x3d4463[_0x8652('0x2b')](_0x35baf1)[_0x8652('0x3a')](_0x47c95d);};}exports[_0x8652('0x3b')]=function(_0x45ce21,_0x4b6eeb){var _0x38d939={'include':[{'model':db['MailServerIn'],'as':_0x8652('0x3c')},{'model':db[_0x8652('0x3d')],'as':_0x8652('0x3e')},{'model':db[_0x8652('0x3f')],'as':_0x8652('0x40')}]},_0x1f3c1a={},_0x7d6c2a={'count':0x0,'rows':[]};var _0x3abe16=_[_0x8652('0x41')](db[_0x8652('0x42')][_0x8652('0x43')],function(_0x5a3b22){return{'name':_0x5a3b22[_0x8652('0x44')],'type':_0x5a3b22[_0x8652('0x45')][_0x8652('0x46')]};});_0x1f3c1a[_0x8652('0x47')]=_['map'](_0x3abe16,_0x8652('0x48'));_0x1f3c1a[_0x8652('0x49')]=_[_0x8652('0x4a')](_0x45ce21[_0x8652('0x49')]);_0x1f3c1a[_0x8652('0x4b')]=_[_0x8652('0x4c')](_0x1f3c1a['model'],_0x1f3c1a['query']);_0x38d939[_0x8652('0x4d')]=_[_0x8652('0x4c')](_0x1f3c1a[_0x8652('0x47')],qs[_0x8652('0x4e')](_0x45ce21[_0x8652('0x49')]['fields']));_0x38d939['attributes']=_0x38d939[_0x8652('0x4d')][_0x8652('0x4f')]?_0x38d939['attributes']:_0x1f3c1a[_0x8652('0x47')];if(!_0x45ce21['query'][_0x8652('0x50')]('nolimit')){_0x38d939[_0x8652('0x2e')]=qs[_0x8652('0x2e')](_0x45ce21[_0x8652('0x49')][_0x8652('0x2e')]);_0x38d939[_0x8652('0x51')]=qs['offset'](_0x45ce21[_0x8652('0x49')][_0x8652('0x51')]);}_0x38d939[_0x8652('0x52')]=qs['sort'](_0x45ce21['query'][_0x8652('0x53')]);_0x38d939[_0x8652('0x54')]=qs[_0x8652('0x4b')](_[_0x8652('0x55')](_0x45ce21[_0x8652('0x49')],_0x1f3c1a[_0x8652('0x4b')]),_0x3abe16);if(_0x45ce21[_0x8652('0x49')][_0x8652('0x56')]){_0x38d939[_0x8652('0x54')]=_[_0x8652('0x57')](_0x38d939[_0x8652('0x54')],{'$or':_[_0x8652('0x41')](_0x3abe16,function(_0x46c7fd){if(_0x46c7fd[_0x8652('0x45')]!=='VIRTUAL'){var _0x39a1cb={};_0x39a1cb[_0x46c7fd['name']]={'$like':'%'+_0x45ce21[_0x8652('0x49')]['filter']+'%'};return _0x39a1cb;}})});}_0x38d939=_[_0x8652('0x57')]({},_0x38d939,_0x45ce21[_0x8652('0x58')]);var _0x39c853={'where':_0x38d939[_0x8652('0x54')]};return db['MailAccount'][_0x8652('0x2d')](_0x39c853)[_0x8652('0x20')](function(_0x3052ad){_0x7d6c2a['count']=_0x3052ad;if(_0x45ce21[_0x8652('0x49')][_0x8652('0x59')]){_0x38d939[_0x8652('0x5a')]=[{'all':!![]}];}return db['MailAccount']['findAll'](_0x38d939);})['then'](function(_0x1e69e2){_0x7d6c2a['rows']=_0x1e69e2;return _0x7d6c2a;})['then'](respondWithFilteredResult(_0x4b6eeb,_0x38d939))[_0x8652('0x5b')](handleError(_0x4b6eeb,null));};exports[_0x8652('0x5c')]=function(_0x5af98b,_0x3c12b4){var _0x5446ee={'raw':![],'where':{'id':_0x5af98b[_0x8652('0x5d')]['id']},'include':[{'model':db[_0x8652('0x5e')],'as':_0x8652('0x3c')},{'model':db[_0x8652('0x3d')],'as':'Smtp'},{'model':db['Pause'],'as':'mandatoryDispositionPause'}]},_0x57164b={};_0x57164b['model']=_[_0x8652('0x4a')](db[_0x8652('0x42')]['rawAttributes']);_0x57164b[_0x8652('0x49')]=_[_0x8652('0x4a')](_0x5af98b[_0x8652('0x49')]);_0x57164b['filters']=_[_0x8652('0x4c')](_0x57164b[_0x8652('0x47')],_0x57164b[_0x8652('0x49')]);_0x5446ee['attributes']=_[_0x8652('0x4c')](_0x57164b[_0x8652('0x47')],qs[_0x8652('0x4e')](_0x5af98b[_0x8652('0x49')][_0x8652('0x4e')]));_0x5446ee[_0x8652('0x4d')]=_0x5446ee[_0x8652('0x4d')][_0x8652('0x4f')]?_0x5446ee[_0x8652('0x4d')]:_0x57164b[_0x8652('0x47')];if(_0x5af98b['query'][_0x8652('0x59')]){_0x5446ee[_0x8652('0x5a')]=[{'all':!![]}];}_0x5446ee=_[_0x8652('0x57')]({},_0x5446ee,_0x5af98b[_0x8652('0x58')]);return db[_0x8652('0x42')][_0x8652('0x5f')](_0x5446ee)['then'](handleEntityNotFound(_0x3c12b4,null))[_0x8652('0x20')](respondWithResult(_0x3c12b4,null))[_0x8652('0x5b')](handleError(_0x3c12b4,null));};exports[_0x8652('0x33')]=function(_0x5478f5,_0x321cec){if(_0x5478f5[_0x8652('0x60')]['id']){delete _0x5478f5['body']['id'];}return db['MailAccount']['find']({'where':{'id':_0x5478f5['params']['id']},'include':[{'model':db[_0x8652('0x5e')],'as':_0x8652('0x3c')},{'model':db['MailServerOut'],'as':'Smtp'},{'model':db[_0x8652('0x3f')],'as':_0x8652('0x40')}]})[_0x8652('0x20')](handleEntityNotFound(_0x321cec,null))['then'](saveUpdates(_0x5478f5['body'],null))['then'](function(_0x56f17d){if(_0x56f17d&&_0x5478f5[_0x8652('0x60')][_0x8652('0x3c')]){return db[_0x8652('0x5e')][_0x8652('0x33')](_0x5478f5[_0x8652('0x60')][_0x8652('0x3c')],{'where':{'MailAccountId':_0x56f17d['id']}})[_0x8652('0x20')](function(){return _0x56f17d;});}return _0x56f17d;})[_0x8652('0x20')](function(_0x51d8c6){if(_0x51d8c6&&_0x5478f5[_0x8652('0x60')]['Smtp']){return db[_0x8652('0x3d')]['update'](_0x5478f5[_0x8652('0x60')][_0x8652('0x3e')],{'where':{'MailAccountId':_0x51d8c6['id']}})[_0x8652('0x20')](function(){return _0x51d8c6;});}return _0x51d8c6;})[_0x8652('0x20')](respondWithResult(_0x321cec,null))[_0x8652('0x5b')](handleError(_0x321cec,null));};exports[_0x8652('0x61')]=function(_0x29a7e2,_0xb95dfd){return db[_0x8652('0x42')]['describe']()[_0x8652('0x20')](respondWithResult(_0xb95dfd,null))[_0x8652('0x5b')](handleError(_0xb95dfd,null));};exports[_0x8652('0x62')]=function(_0x7ec2b0,_0x11b568,_0x32f1d5){if(_0x7ec2b0[_0x8652('0x60')]['id']){delete _0x7ec2b0[_0x8652('0x60')]['id'];}return db[_0x8652('0x42')]['find']({'where':{'id':_0x7ec2b0[_0x8652('0x5d')]['id']}})[_0x8652('0x20')](handleEntityNotFound(_0x11b568,null))['then'](function(_0x4b8a4b){if(_0x4b8a4b){_0x7ec2b0[_0x8652('0x60')][_0x8652('0x63')]=_0x4b8a4b['id'];return db[_0x8652('0x64')][_0x8652('0x65')](_0x7ec2b0[_0x8652('0x60')]);}})[_0x8652('0x20')](respondWithResult(_0x11b568,null))[_0x8652('0x5b')](handleError(_0x11b568,null));};exports['getDispositions']=function(_0x2219bc,_0xbd04c4,_0x1a9413){var _0x2d338a={'raw':![],'where':{}};var _0x1e680b={};var _0x5d6c1a={'count':0x0,'rows':[]};return db[_0x8652('0x42')][_0x8652('0x66')]({'where':{'id':_0x2219bc[_0x8652('0x5d')]['id']}})[_0x8652('0x20')](handleEntityNotFound(_0xbd04c4,null))[_0x8652('0x20')](function(_0x54f193){if(_0x54f193){_0x1e680b[_0x8652('0x47')]=_[_0x8652('0x4a')](db[_0x8652('0x64')][_0x8652('0x43')]);_0x1e680b[_0x8652('0x49')]=_[_0x8652('0x4a')](_0x2219bc['query']);_0x1e680b[_0x8652('0x4b')]=_[_0x8652('0x4c')](_0x1e680b[_0x8652('0x47')],_0x1e680b[_0x8652('0x49')]);_0x2d338a[_0x8652('0x4d')]=_[_0x8652('0x4c')](_0x1e680b[_0x8652('0x47')],qs['fields'](_0x2219bc[_0x8652('0x49')][_0x8652('0x4e')]));_0x2d338a[_0x8652('0x4d')]=_0x2d338a[_0x8652('0x4d')][_0x8652('0x4f')]?_0x2d338a[_0x8652('0x4d')]:_0x1e680b['model'];if(!_0x2219bc[_0x8652('0x49')][_0x8652('0x50')](_0x8652('0x67'))){_0x2d338a[_0x8652('0x2e')]=qs['limit'](_0x2219bc[_0x8652('0x49')][_0x8652('0x2e')]);_0x2d338a['offset']=qs[_0x8652('0x51')](_0x2219bc['query'][_0x8652('0x51')]);}_0x2d338a[_0x8652('0x52')]=qs[_0x8652('0x53')](_0x2219bc[_0x8652('0x49')]['sort']);_0x2d338a['where']=qs[_0x8652('0x4b')](_[_0x8652('0x55')](_0x2219bc[_0x8652('0x49')],_0x1e680b[_0x8652('0x4b')]));_0x2d338a[_0x8652('0x54')][_0x8652('0x63')]=_0x54f193['id'];if(_0x2219bc['query'][_0x8652('0x56')]){_0x2d338a[_0x8652('0x54')]=_['merge'](_0x2d338a[_0x8652('0x54')],{'$or':_[_0x8652('0x41')](_0x2d338a[_0x8652('0x4d')],function(_0x4da81d){var _0x262a7d={};_0x262a7d[_0x4da81d]={'$like':'%'+_0x2219bc[_0x8652('0x49')][_0x8652('0x56')]+'%'};return _0x262a7d;})});}_0x2d338a=_[_0x8652('0x57')]({},_0x2d338a,_0x2219bc[_0x8652('0x58')]);return db[_0x8652('0x64')]['count']({'where':_0x2d338a[_0x8652('0x54')]})[_0x8652('0x20')](function(_0x31aabe){_0x5d6c1a['count']=_0x31aabe;if(_0x2219bc[_0x8652('0x49')][_0x8652('0x59')]){_0x2d338a['include']=[{'all':!![]}];}return db[_0x8652('0x64')]['findAll'](_0x2d338a);})[_0x8652('0x20')](function(_0x25a26f){_0x5d6c1a['rows']=_0x25a26f;return _0x5d6c1a;});}})['then'](respondWithFilteredResult(_0xbd04c4,_0x2d338a))['catch'](handleError(_0xbd04c4,null));};exports[_0x8652('0x68')]=function(_0xb2da87,_0x58ffb5,_0x156b64){return db[_0x8652('0x42')]['find']({'where':{'id':_0xb2da87[_0x8652('0x5d')]['id']}})[_0x8652('0x20')](handleEntityNotFound(_0x58ffb5,null))[_0x8652('0x20')](function(_0x310718){if(_0x310718){return _0x310718[_0x8652('0x68')](_0xb2da87['query']['ids']);}})[_0x8652('0x20')](respondWithStatusCode(_0x58ffb5,null))[_0x8652('0x5b')](handleError(_0x58ffb5,null));};exports['addAnswer']=function(_0x24f50c,_0x5a21c6,_0x4db47d){if(_0x24f50c[_0x8652('0x60')]['id']){delete _0x24f50c[_0x8652('0x60')]['id'];}return db[_0x8652('0x42')][_0x8652('0x5f')]({'where':{'id':_0x24f50c[_0x8652('0x5d')]['id']}})['then'](handleEntityNotFound(_0x5a21c6,null))['then'](function(_0xdde567){if(_0xdde567){_0x24f50c[_0x8652('0x60')][_0x8652('0x63')]=_0xdde567['id'];return db['CannedAnswer']['create'](_0x24f50c[_0x8652('0x60')]);}})[_0x8652('0x20')](respondWithResult(_0x5a21c6,null))['catch'](handleError(_0x5a21c6,null));};exports[_0x8652('0x69')]=function(_0x23862b,_0x137664,_0x3cab1b){var _0x5b5a52={'raw':![],'where':{}};var _0x276558={};var _0x485c56={'count':0x0,'rows':[]};return db[_0x8652('0x42')][_0x8652('0x66')]({'where':{'id':_0x23862b[_0x8652('0x5d')]['id']}})[_0x8652('0x20')](handleEntityNotFound(_0x137664,null))[_0x8652('0x20')](function(_0x517887){if(_0x517887){_0x276558[_0x8652('0x47')]=_[_0x8652('0x4a')](db['CannedAnswer']['rawAttributes']);_0x276558[_0x8652('0x49')]=_['keys'](_0x23862b['query']);_0x276558['filters']=_['intersection'](_0x276558['model'],_0x276558['query']);_0x5b5a52['attributes']=_[_0x8652('0x4c')](_0x276558[_0x8652('0x47')],qs[_0x8652('0x4e')](_0x23862b['query'][_0x8652('0x4e')]));_0x5b5a52[_0x8652('0x4d')]=_0x5b5a52[_0x8652('0x4d')][_0x8652('0x4f')]?_0x5b5a52[_0x8652('0x4d')]:_0x276558['model'];if(!_0x23862b[_0x8652('0x49')][_0x8652('0x50')](_0x8652('0x67'))){_0x5b5a52['limit']=qs['limit'](_0x23862b[_0x8652('0x49')][_0x8652('0x2e')]);_0x5b5a52[_0x8652('0x51')]=qs[_0x8652('0x51')](_0x23862b['query'][_0x8652('0x51')]);}_0x5b5a52['order']=qs[_0x8652('0x53')](_0x23862b[_0x8652('0x49')][_0x8652('0x53')]);_0x5b5a52['where']=qs[_0x8652('0x4b')](_[_0x8652('0x55')](_0x23862b[_0x8652('0x49')],_0x276558[_0x8652('0x4b')]));_0x5b5a52[_0x8652('0x54')]['MailAccountId']=_0x517887['id'];if(_0x23862b['query']['filter']){_0x5b5a52[_0x8652('0x54')]=_[_0x8652('0x57')](_0x5b5a52[_0x8652('0x54')],{'$or':_[_0x8652('0x41')](_0x5b5a52['attributes'],function(_0x4c208b){var _0x527c1d={};_0x527c1d[_0x4c208b]={'$like':'%'+_0x23862b[_0x8652('0x49')]['filter']+'%'};return _0x527c1d;})});}_0x5b5a52=_['merge']({},_0x5b5a52,_0x23862b[_0x8652('0x58')]);return db['CannedAnswer']['count']({'where':_0x5b5a52['where']})[_0x8652('0x20')](function(_0x5dea98){_0x485c56['count']=_0x5dea98;if(_0x23862b[_0x8652('0x49')][_0x8652('0x59')]){_0x5b5a52[_0x8652('0x5a')]=[{'all':!![]}];}return db['CannedAnswer']['findAll'](_0x5b5a52);})[_0x8652('0x20')](function(_0x3c1d02){_0x485c56[_0x8652('0x6a')]=_0x3c1d02;return _0x485c56;});}})['then'](respondWithFilteredResult(_0x137664,_0x5b5a52))[_0x8652('0x5b')](handleError(_0x137664,null));};exports[_0x8652('0x6b')]=function(_0x2fd437,_0x361c51,_0x553920){return db[_0x8652('0x42')]['find']({'where':{'id':_0x2fd437[_0x8652('0x5d')]['id']}})[_0x8652('0x20')](handleEntityNotFound(_0x361c51,null))[_0x8652('0x20')](function(_0x5c11a5){if(_0x5c11a5){return _0x5c11a5[_0x8652('0x6b')](_0x2fd437[_0x8652('0x49')][_0x8652('0x6c')]);}})[_0x8652('0x20')](respondWithStatusCode(_0x361c51,null))[_0x8652('0x5b')](handleError(_0x361c51,null));};exports[_0x8652('0x65')]=function(_0x5754d6,_0x48cbc3){var _0xa54505={'name':_0x5754d6[_0x8652('0x60')][_0x8652('0x48')],'key':_0x5754d6[_0x8652('0x60')][_0x8652('0x46')],'email':_0x5754d6[_0x8652('0x60')][_0x8652('0x6d')],'ListId':_0x5754d6[_0x8652('0x60')][_0x8652('0x6e')],'active':!_['isNil'](_0x5754d6[_0x8652('0x60')]['active'])?_0x5754d6[_0x8652('0x60')]['active']:!![],'description':_0x5754d6[_0x8652('0x60')]['description']||null,'Imap':{},'Smtp':{}};if(_[_0x8652('0x6f')](_0x5754d6[_0x8652('0x60')][_0x8652('0x70')])){if(_0x5754d6[_0x8652('0x60')]['cauthentication']){_0xa54505[_0x8652('0x3c')][_0x8652('0x71')]=_0xa54505[_0x8652('0x3e')][_0x8652('0x71')]=_0x5754d6[_0x8652('0x60')][_0x8652('0x72')];_0xa54505[_0x8652('0x3c')][_0x8652('0x73')]=_0xa54505[_0x8652('0x3e')][_0x8652('0x74')]=_0x5754d6['body']['cpassword'];}else{_0xa54505['Imap'][_0x8652('0x75')]=_0xa54505['Smtp'][_0x8652('0x75')]=![];}_0xa54505['Imap'][_0x8652('0x76')]=_0x5754d6[_0x8652('0x60')][_0x8652('0x3c')][_0x8652('0x76')];_0xa54505['Imap'][_0x8652('0x77')]=_0x5754d6[_0x8652('0x60')][_0x8652('0x3c')]['port'];_0xa54505[_0x8652('0x3e')][_0x8652('0x76')]=_0x5754d6['body'][_0x8652('0x3e')][_0x8652('0x76')];_0xa54505[_0x8652('0x3e')]['port']=_0x5754d6[_0x8652('0x60')]['Smtp'][_0x8652('0x77')];}else{_0xa54505['Imap'][_0x8652('0x78')]=_0xa54505[_0x8652('0x3e')][_0x8652('0x78')]=_0x5754d6[_0x8652('0x60')][_0x8652('0x70')];_0xa54505[_0x8652('0x3c')][_0x8652('0x71')]=_0xa54505[_0x8652('0x3e')][_0x8652('0x71')]=_0x5754d6[_0x8652('0x60')]['cuser'];_0xa54505[_0x8652('0x3c')]['password']=_0xa54505[_0x8652('0x3e')][_0x8652('0x74')]=_0x5754d6[_0x8652('0x60')]['cpassword'];}return db[_0x8652('0x42')]['create'](_0xa54505,{'include':[{'model':db[_0x8652('0x3d')],'as':'Smtp'},{'model':db[_0x8652('0x5e')],'as':_0x8652('0x3c')}]})[_0x8652('0x20')](function(_0x53f552){var _0xe26838=_0x5754d6[_0x8652('0x71')][_0x8652('0x34')]({'plain':!![]});if(!_0xe26838)throw new Error(_0x8652('0x79'));if(_0xe26838['role']===_0x8652('0x71')){var _0x2c6aae=_0x53f552[_0x8652('0x34')]({'plain':!![]});return db[_0x8652('0x7a')][_0x8652('0x5f')]({'where':{'name':_0x8652('0x35'),'userProfileId':_0xe26838[_0x8652('0x7b')]},'raw':!![]})[_0x8652('0x20')](function(_0x4ba9c9){if(_0x4ba9c9&&_0x4ba9c9[_0x8652('0x7c')]===0x0){return db[_0x8652('0x36')][_0x8652('0x65')]({'name':_0x2c6aae[_0x8652('0x48')],'resourceId':_0x2c6aae['id'],'type':_0x4ba9c9['name'],'sectionId':_0x4ba9c9['id']},{})[_0x8652('0x20')](function(){return _0x53f552;});}else{return _0x53f552;}})['catch'](function(_0x1c0f31){logger[_0x8652('0x25')](_0x8652('0x7d'),_0x1c0f31);throw _0x1c0f31;});}return _0x53f552;})['then'](respondWithResult(_0x48cbc3,0xc9))['catch'](handleError(_0x48cbc3,null));};exports[_0x8652('0x7e')]=function(_0x4e7953,_0x2b5287,_0x4a3304){return db[_0x8652('0x42')][_0x8652('0x66')]({'where':{'id':_0x4e7953[_0x8652('0x5d')]['id']}})[_0x8652('0x20')](handleEntityNotFound(_0x2b5287,null))['then'](function(_0x327560){if(_0x327560){return _0x327560[_0x8652('0x7e')]();}return null;})['then'](respondWithResult(_0x2b5287,null))['catch'](handleError(_0x2b5287,null));};exports[_0x8652('0x7f')]=function(_0x567df6,_0x2fbf32,_0x382860){if(_0x567df6['body']['id']){delete _0x567df6[_0x8652('0x60')]['id'];}return db[_0x8652('0x42')][_0x8652('0x5f')]({'where':{'id':_0x567df6[_0x8652('0x5d')]['id']}})[_0x8652('0x20')](handleEntityNotFound(_0x2fbf32,null))['then'](function(_0x2538d2){if(_0x2538d2){_0x567df6[_0x8652('0x60')][_0x8652('0x63')]=_0x2538d2['id'];return db[_0x8652('0x5e')]['create'](_0x567df6[_0x8652('0x60')]);}})[_0x8652('0x20')](respondWithResult(_0x2fbf32,null))[_0x8652('0x5b')](handleError(_0x2fbf32,null));};exports[_0x8652('0x80')]=function(_0x351cc5,_0x587c2e,_0x10b281){return db[_0x8652('0x42')][_0x8652('0x66')]({'where':{'id':_0x351cc5[_0x8652('0x5d')]['id']}})[_0x8652('0x20')](handleEntityNotFound(_0x587c2e,null))['then'](function(_0x7950aa){if(_0x7950aa){return _0x7950aa[_0x8652('0x81')](null);}return null;})[_0x8652('0x20')](respondWithStatusCode(_0x587c2e,null))[_0x8652('0x5b')](handleError(_0x587c2e,null));};exports[_0x8652('0x82')]=function(_0x21c5b4,_0x2be8fb,_0xfaf3d2){return db[_0x8652('0x42')]['findOne']({'where':{'id':_0x21c5b4[_0x8652('0x5d')]['id']}})[_0x8652('0x20')](handleEntityNotFound(_0x2be8fb,null))[_0x8652('0x20')](function(_0x3dd6e2){if(_0x3dd6e2){return _0x3dd6e2[_0x8652('0x82')]();}return null;})['then'](respondWithResult(_0x2be8fb,null))[_0x8652('0x5b')](handleError(_0x2be8fb,null));};exports[_0x8652('0x83')]=function(_0x3a3376,_0x4eaaad,_0x363d68){if(_0x3a3376[_0x8652('0x60')]['id']){delete _0x3a3376[_0x8652('0x60')]['id'];}return db[_0x8652('0x42')][_0x8652('0x5f')]({'where':{'id':_0x3a3376[_0x8652('0x5d')]['id']}})['then'](handleEntityNotFound(_0x4eaaad,null))[_0x8652('0x20')](function(_0x2692d5){if(_0x2692d5){_0x3a3376[_0x8652('0x60')][_0x8652('0x63')]=_0x2692d5['id'];return db[_0x8652('0x3d')][_0x8652('0x65')](_0x3a3376[_0x8652('0x60')]);}})[_0x8652('0x20')](respondWithResult(_0x4eaaad,null))[_0x8652('0x5b')](handleError(_0x4eaaad,null));};exports['removeSmtp']=function(_0x2cbf13,_0x3db728,_0x38c288){return db[_0x8652('0x42')][_0x8652('0x66')]({'where':{'id':_0x2cbf13[_0x8652('0x5d')]['id']}})['then'](handleEntityNotFound(_0x3db728,null))[_0x8652('0x20')](function(_0x4a6cad){if(_0x4a6cad){return _0x4a6cad[_0x8652('0x84')](null);}return null;})[_0x8652('0x20')](respondWithStatusCode(_0x3db728,null))[_0x8652('0x5b')](handleError(_0x3db728,null));};exports[_0x8652('0x85')]=function(_0xa7afe9,_0x34fa96,_0x5b80d7){return db[_0x8652('0x86')]['find']({'where':{'id':_0xa7afe9[_0x8652('0x5d')]['id']}})[_0x8652('0x20')](handleEntityNotFound(_0x34fa96,null))[_0x8652('0x20')](function(_0xe35ab8){if(_0xe35ab8){return _0xe35ab8[_0x8652('0x85')](_0xa7afe9[_0x8652('0x60')][_0x8652('0x6c')],_[_0x8652('0x87')](_0xa7afe9['body'],[_0x8652('0x6c'),'id'])||{});}})[_0x8652('0x20')](respondWithResult(_0x34fa96,null))[_0x8652('0x5b')](handleError(_0x34fa96,null));};exports['getInteractions']=function(_0x37994e,_0xa86c79,_0x344ed0){var _0x3c95f1={'raw':![],'where':{}};var _0x59ff66={};var _0x271d05={'count':0x0,'rows':[]};return db[_0x8652('0x42')]['findOne']({'where':{'id':_0x37994e[_0x8652('0x5d')]['id']}})[_0x8652('0x20')](handleEntityNotFound(_0xa86c79,null))[_0x8652('0x20')](function(_0x14bb94){if(_0x14bb94){_0x59ff66[_0x8652('0x47')]=_[_0x8652('0x4a')](db[_0x8652('0x86')][_0x8652('0x43')]);_0x59ff66[_0x8652('0x49')]=_[_0x8652('0x4a')](_0x37994e[_0x8652('0x49')]);_0x59ff66['filters']=_[_0x8652('0x4c')](_0x59ff66[_0x8652('0x47')],_0x59ff66[_0x8652('0x49')]);_0x3c95f1[_0x8652('0x4d')]=_[_0x8652('0x4c')](_0x59ff66[_0x8652('0x47')],qs[_0x8652('0x4e')](_0x37994e[_0x8652('0x49')][_0x8652('0x4e')]));_0x3c95f1[_0x8652('0x4d')]=_0x3c95f1[_0x8652('0x4d')][_0x8652('0x4f')]?_0x3c95f1[_0x8652('0x4d')]:_0x59ff66[_0x8652('0x47')];if(!_0x37994e['query']['hasOwnProperty'](_0x8652('0x67'))){_0x3c95f1[_0x8652('0x2e')]=qs[_0x8652('0x2e')](_0x37994e[_0x8652('0x49')]['limit']);_0x3c95f1[_0x8652('0x51')]=qs[_0x8652('0x51')](_0x37994e[_0x8652('0x49')][_0x8652('0x51')]);}_0x3c95f1[_0x8652('0x52')]=qs[_0x8652('0x53')](_0x37994e[_0x8652('0x49')][_0x8652('0x53')]);_0x3c95f1[_0x8652('0x54')]=qs[_0x8652('0x4b')](_['pick'](_0x37994e[_0x8652('0x49')],_0x59ff66[_0x8652('0x4b')]));_0x3c95f1[_0x8652('0x54')][_0x8652('0x63')]=_0x14bb94['id'];if(_0x37994e['query'][_0x8652('0x56')]){_0x3c95f1[_0x8652('0x54')]=_['merge'](_0x3c95f1[_0x8652('0x54')],{'$or':_['map'](_0x3c95f1['attributes'],function(_0x3cefa6){var _0x2c3d97={};_0x2c3d97[_0x3cefa6]={'$like':'%'+_0x37994e[_0x8652('0x49')][_0x8652('0x56')]+'%'};return _0x2c3d97;})});}_0x3c95f1=_[_0x8652('0x57')]({},_0x3c95f1,_0x37994e[_0x8652('0x58')]);return db[_0x8652('0x86')][_0x8652('0x2d')]({'where':_0x3c95f1[_0x8652('0x54')]})[_0x8652('0x20')](function(_0x2a6809){_0x271d05[_0x8652('0x2d')]=_0x2a6809;if(_0x37994e['query'][_0x8652('0x59')]){_0x3c95f1[_0x8652('0x5a')]=[{'model':db[_0x8652('0x88')],'as':_0x8652('0x89'),'required':![]},{'model':db['User'],'as':'Owner','attributes':[_0x8652('0x48'),'fullname',_0x8652('0x8a')],'required':![]},{'model':db[_0x8652('0x8b')],'as':_0x8652('0x8c'),'attributes':['id',_0x8652('0x48'),_0x8652('0x8d')],'where':_0x37994e['query'][_0x8652('0x8e')]?{'id':_0x37994e[_0x8652('0x49')][_0x8652('0x8e')]}:undefined,'required':_0x37994e[_0x8652('0x49')][_0x8652('0x8e')]?!![]:![]}];}return db[_0x8652('0x86')][_0x8652('0x8f')](_0x3c95f1);})['then'](function(_0x359302){_0x271d05['rows']=_0x359302;return _0x271d05;});}})[_0x8652('0x20')](respondWithFilteredResult(_0xa86c79,_0x3c95f1))[_0x8652('0x5b')](handleError(_0xa86c79,null));};exports[_0x8652('0x90')]=function(_0x3cc66c,_0x201d52,_0x42fb05){return db[_0x8652('0x42')][_0x8652('0x66')]({'where':{'id':_0x3cc66c[_0x8652('0x5d')]['id']}})[_0x8652('0x20')](handleEntityNotFound(_0x201d52,null))['then'](function(_0x56db61){if(_0x56db61){return db[_0x8652('0x91')]['transaction'](function(_0x19e1da){return db['MailApplication'][_0x8652('0x37')]({'where':{'MailAccountId':_0x3cc66c[_0x8652('0x5d')]['id']},'transaction':_0x19e1da})[_0x8652('0x20')](function(_0x34b34b){var _0x478213=_[_0x8652('0x41')](_0x3cc66c[_0x8652('0x60')],function(_0x48c73e){_0x48c73e[_0x8652('0x63')]=_0x3cc66c[_0x8652('0x5d')]['id'];return _0x48c73e;});return db['MailApplication'][_0x8652('0x92')](_0x478213,{'transaction':_0x19e1da});});})[_0x8652('0x20')](function(){return db[_0x8652('0x93')][_0x8652('0x94')]({'where':{'MailAccountId':_0x3cc66c[_0x8652('0x5d')]['id']},'order':'priority'});});}})[_0x8652('0x20')](respondWithResult(_0x201d52,null))[_0x8652('0x5b')](handleError(_0x201d52,null));};exports[_0x8652('0x95')]=function(_0x54e6b0,_0x2f6923,_0x783084){var _0x31a967={};var _0x2fef46={};var _0x1520ef;var _0x562157;return db[_0x8652('0x42')]['findOne']({'where':{'id':_0x54e6b0[_0x8652('0x5d')]['id']}})[_0x8652('0x20')](handleEntityNotFound(_0x2f6923,null))[_0x8652('0x20')](function(_0x1cf16b){if(_0x1cf16b){_0x1520ef=_0x1cf16b;_0x2fef46[_0x8652('0x47')]=_['keys'](db[_0x8652('0x93')][_0x8652('0x43')]);_0x2fef46[_0x8652('0x49')]=_[_0x8652('0x4a')](_0x54e6b0[_0x8652('0x49')]);_0x2fef46['filters']=_['intersection'](_0x2fef46['model'],_0x2fef46[_0x8652('0x49')]);_0x31a967[_0x8652('0x4d')]=_[_0x8652('0x4c')](_0x2fef46[_0x8652('0x47')],qs[_0x8652('0x4e')](_0x54e6b0[_0x8652('0x49')]['fields']));_0x31a967[_0x8652('0x4d')]=_0x31a967[_0x8652('0x4d')]['length']?_0x31a967[_0x8652('0x4d')]:_0x2fef46[_0x8652('0x47')];_0x31a967[_0x8652('0x52')]=qs[_0x8652('0x53')](_0x54e6b0[_0x8652('0x49')]['sort']);_0x31a967[_0x8652('0x54')]=qs[_0x8652('0x4b')](_['pick'](_0x54e6b0[_0x8652('0x49')],_0x2fef46['filters']));if(_0x54e6b0[_0x8652('0x49')][_0x8652('0x56')]){_0x31a967[_0x8652('0x54')]=_[_0x8652('0x57')](_0x31a967['where'],{'$or':_[_0x8652('0x41')](_0x31a967['attributes'],function(_0x45909d){var _0x59f31d={};_0x59f31d[_0x45909d]={'$like':'%'+_0x54e6b0['query']['filter']+'%'};return _0x59f31d;})});}_0x31a967=_[_0x8652('0x57')]({},_0x31a967,_0x54e6b0[_0x8652('0x58')]);return _0x1520ef[_0x8652('0x95')](_0x31a967);}})[_0x8652('0x20')](function(_0x1a81a2){if(_0x1a81a2){_0x562157=_0x1a81a2[_0x8652('0x4f')];if(!_0x54e6b0[_0x8652('0x49')][_0x8652('0x50')](_0x8652('0x67'))){_0x31a967['limit']=qs[_0x8652('0x2e')](_0x54e6b0[_0x8652('0x49')][_0x8652('0x2e')]);_0x31a967[_0x8652('0x51')]=qs[_0x8652('0x51')](_0x54e6b0['query']['offset']);}return _0x1520ef['getApplications'](_0x31a967);}})[_0x8652('0x20')](function(_0x10f9af){if(_0x10f9af){return _0x10f9af?{'count':_0x562157,'rows':_0x10f9af}:null;}})[_0x8652('0x20')](respondWithResult(_0x2f6923,null))[_0x8652('0x5b')](handleError(_0x2f6923,null));};exports['getMessages']=function(_0x453832,_0x547ae7,_0x4c4153){var _0x4fefc3={'raw':!![],'where':{}};var _0x108d48={};var _0x5166b2={'count':0x0,'rows':[]};return db[_0x8652('0x42')]['findOne']({'where':{'id':_0x453832[_0x8652('0x5d')]['id']}})[_0x8652('0x20')](handleEntityNotFound(_0x547ae7,null))[_0x8652('0x20')](function(_0x4cdf27){if(_0x4cdf27){_0x108d48[_0x8652('0x47')]=_[_0x8652('0x4a')](db[_0x8652('0x96')][_0x8652('0x43')]);_0x108d48['query']=_['keys'](_0x453832['query']);_0x108d48[_0x8652('0x4b')]=_[_0x8652('0x4c')](_0x108d48[_0x8652('0x47')],_0x108d48[_0x8652('0x49')]);_0x4fefc3[_0x8652('0x4d')]=_['intersection'](_0x108d48['model'],qs[_0x8652('0x4e')](_0x453832[_0x8652('0x49')][_0x8652('0x4e')]));_0x4fefc3[_0x8652('0x4d')]=_0x4fefc3[_0x8652('0x4d')][_0x8652('0x4f')]?_0x4fefc3[_0x8652('0x4d')]:_0x108d48['model'];if(!_0x453832[_0x8652('0x49')]['hasOwnProperty'](_0x8652('0x67'))){_0x4fefc3[_0x8652('0x2e')]=qs['limit'](_0x453832[_0x8652('0x49')][_0x8652('0x2e')]);_0x4fefc3['offset']=qs['offset'](_0x453832[_0x8652('0x49')][_0x8652('0x51')]);}_0x4fefc3[_0x8652('0x52')]=qs[_0x8652('0x53')](_0x453832[_0x8652('0x49')]['sort']);_0x4fefc3['where']=qs[_0x8652('0x4b')](_[_0x8652('0x55')](_0x453832['query'],_0x108d48[_0x8652('0x4b')]));_0x4fefc3[_0x8652('0x54')][_0x8652('0x63')]=_0x4cdf27['id'];if(_0x453832[_0x8652('0x49')][_0x8652('0x56')]){_0x4fefc3[_0x8652('0x54')]=_[_0x8652('0x57')](_0x4fefc3[_0x8652('0x54')],{'$or':_[_0x8652('0x41')](_0x4fefc3['attributes'],function(_0x332df8){var _0x5d44f0={};_0x5d44f0[_0x332df8]={'$like':'%'+_0x453832[_0x8652('0x49')][_0x8652('0x56')]+'%'};return _0x5d44f0;})});}if(_0x453832[_0x8652('0x49')]['$gte']){var _0x3371f4=_0x453832[_0x8652('0x49')][_0x8652('0x97')][_0x8652('0x98')](',');var _0x2d1826={};_0x2d1826[_0x3371f4[0x0]]={'$gte':moment(_0x3371f4[0x1])[_0x8652('0x99')](_0x8652('0x9a'))};_0x4fefc3[_0x8652('0x54')]=_[_0x8652('0x57')](_0x4fefc3['where'],_0x2d1826);}_0x4fefc3=_[_0x8652('0x57')]({},_0x4fefc3,_0x453832[_0x8652('0x58')]);return db[_0x8652('0x96')][_0x8652('0x2d')]({'where':_0x4fefc3[_0x8652('0x54')]})[_0x8652('0x20')](function(_0x49129b){_0x5166b2[_0x8652('0x2d')]=_0x49129b;if(_0x453832[_0x8652('0x49')][_0x8652('0x59')]){_0x4fefc3[_0x8652('0x5a')]=[{'all':!![]}];}return db['MailMessage'][_0x8652('0x8f')](_0x4fefc3);})[_0x8652('0x20')](function(_0x5ec626){if(_0x453832['query'][_0x8652('0x9b')]==='true'){for(var _0x2f4bf6=0x0;_0x2f4bf6<_0x5ec626[_0x8652('0x4f')];_0x2f4bf6++){_0x5ec626[_0x2f4bf6]['body']=juice(_0x5ec626[_0x2f4bf6][_0x8652('0x60')]);}}_0x5166b2[_0x8652('0x6a')]=_0x5ec626;return _0x5166b2;});}})[_0x8652('0x20')](respondWithFilteredResult(_0x547ae7,_0x4fefc3))['catch'](handleError(_0x547ae7,null));};exports[_0x8652('0x3a')]=function(_0x5d3f44,_0x29f6de,_0x556fe6){var _0x484a,_0x5a50d6={},_0x1abe2b;if(_0x5d3f44[_0x8652('0x60')]['to']){_0x1abe2b=_0x5d3f44[_0x8652('0x60')]['to'][_0x8652('0x98')](',')[0x0];}return db[_0x8652('0x42')][_0x8652('0x5f')]({'where':{'id':_0x5d3f44[_0x8652('0x5d')]['id']},'include':[{'model':db[_0x8652('0x9c')],'as':_0x8652('0x9d'),'include':[{'model':db[_0x8652('0x88')],'as':_0x8652('0x9e'),'where':{'email':_0x1abe2b},'limit':0x1,'order':[['updatedAt',_0x8652('0x9f')]]}]},{'model':db[_0x8652('0x3d')],'as':'Smtp','raw':!![]}]})[_0x8652('0x20')](handleEntityNotFound(_0x29f6de,null))[_0x8652('0x20')](function(_0x3241cb){if(_0x3241cb){_0x484a=_0x3241cb;if(_0x3241cb[_0x8652('0x3e')]){if(_[_0x8652('0x6f')](_0x5d3f44['body'][_0x8652('0xa0')])){_0x5d3f44['body'][_0x8652('0xa0')]=util[_0x8652('0x99')](_0x8652('0xa1'),_0x3241cb[_0x8652('0x48')],_0x3241cb[_0x8652('0x6d')]||_0x3241cb[_0x8652('0x3e')][_0x8652('0x71')]);}if(_0x5d3f44[_0x8652('0x60')][_0x8652('0xa2')]&&_0x5d3f44[_0x8652('0x60')]['attachments']['length']){for(var _0x12bee7=0x0;_0x12bee7<_0x5d3f44['body']['attachments'][_0x8652('0x4f')];_0x12bee7+=0x1){_0x5d3f44[_0x8652('0x60')][_0x8652('0xa2')][_0x12bee7]={'filename':_0x5d3f44[_0x8652('0x60')][_0x8652('0xa2')][_0x12bee7][_0x8652('0x48')],'path':path[_0x8652('0xa3')](config[_0x8652('0xa4')],_0x8652('0xa5'),_0x5d3f44[_0x8652('0x60')][_0x8652('0xa2')][_0x12bee7][_0x8652('0xa6')])};}}var _0x204905={'tls':{'rejectUnauthorized':![]}};if(_[_0x8652('0x6f')](_0x3241cb[_0x8652('0x3e')][_0x8652('0x78')])){if(_0x3241cb[_0x8652('0x3e')][_0x8652('0x75')]){_0x204905[_0x8652('0xa7')]={'user':_0x3241cb[_0x8652('0x3e')][_0x8652('0x71')],'pass':_0x3241cb['Smtp']['pass']};}_0x204905[_0x8652('0x76')]=_0x3241cb[_0x8652('0x3e')][_0x8652('0x76')];_0x204905['port']=_0x3241cb[_0x8652('0x3e')][_0x8652('0x77')];_0x204905[_0x8652('0xa8')]=_0x3241cb[_0x8652('0x3e')][_0x8652('0xa8')];}else{_0x204905[_0x8652('0x78')]=_0x3241cb[_0x8652('0x3e')][_0x8652('0x78')];_0x204905[_0x8652('0xa7')]={'user':_0x3241cb['Smtp'][_0x8652('0x71')],'pass':_0x3241cb['Smtp'][_0x8652('0x74')]};}return respondWithRpcPromise(_0x8652('0xa9'),_0x8652('0xaa'),{'account':_0x204905,'message':_0x5d3f44[_0x8652('0x60')]});}else{throw new Error(_0x8652('0xab'));}}})[_0x8652('0x20')](function(_0x57fcef){if(_0x57fcef){_0x5a50d6=_0x57fcef;if(_0x484a[_0x8652('0x9d')]){if(_0x484a[_0x8652('0x9d')][_0x8652('0x9e')]['length']){return _0x484a[_0x8652('0x9d')][_0x8652('0x9e')][0x0];}else{return db['CmContact']['create'](_[_0x8652('0x17')](_0x5d3f44[_0x8652('0x60')],{'firstName':_0x5d3f44['body']['to'],'email':_0x5d3f44[_0x8652('0x60')]['to'],'phone':_0x5d3f44[_0x8652('0x60')]['to'],'ListId':_0x484a[_0x8652('0x6e')]}));}}else{throw new Error('List\x20not\x20found');}}})['then'](function(_0x4d306c){if(_0x4d306c){var _0x575f0d={'UserId':_0x5d3f44[_0x8652('0x71')]['id'],'ContactId':_0x4d306c['id'],'MailAccountId':_0x484a['id'],'inReplyTo':_0x5a50d6['messageId'],'to':_0x5d3f44[_0x8652('0x60')][_0x8652('0xa0')],'cc':_0x5d3f44['body']['cc'],'subject':_0x5d3f44[_0x8652('0x60')][_0x8652('0xac')],'attach':_0x5d3f44[_0x8652('0x60')][_0x8652('0xad')],'firstMsgDirection':'out','lastMsgAt':moment()[_0x8652('0x99')]('YYYY-MM-DD\x20HH:mm:ss'),'lastMsgDirection':_0x8652('0xae'),'lastMsgBody':_0x5d3f44[_0x8652('0x60')]['body'],'Messages':[_[_0x8652('0x57')](_0x5d3f44[_0x8652('0x60')],{'messageId':_0x5a50d6[_0x8652('0xaf')],'sentAt':moment()[_0x8652('0x99')](_0x8652('0x9a')),'read':!![],'MailAccountId':_0x484a['id'],'UserId':_0x5d3f44['user']['id'],'ContactId':_0x4d306c['id']})]};if(_0x5d3f44['body'][_0x8652('0xb0')]){_0x575f0d=_['merge'](_0x575f0d,_0x5d3f44[_0x8652('0x60')][_0x8652('0xb0')]);}return db[_0x8652('0x86')][_0x8652('0x65')](_0x575f0d,{'include':[{'model':db[_0x8652('0x96')],'as':_0x8652('0xb1')}]});}})['then'](respondWithResult(_0x29f6de,null))['catch'](handleError(_0x29f6de,null));};exports[_0x8652('0xb2')]=function(_0x53fd25,_0xa3e91c,_0x4fa989){return db[_0x8652('0x42')][_0x8652('0x5f')]({'where':{'id':_0x53fd25[_0x8652('0x5d')]['id']},'include':[{'model':db[_0x8652('0x3d')],'as':'Smtp','raw':!![]}]})[_0x8652('0x20')](handleEntityNotFound(_0xa3e91c,null))[_0x8652('0x20')](function(_0x47c8e2){if(_0x47c8e2&&_0x47c8e2[_0x8652('0x3e')]){var _0x3ae751={'id':_0x47c8e2['id'],'tls':{'rejectUnauthorized':![]}};if(_0x47c8e2[_0x8652('0x3e')]['service']){_0x3ae751[_0x8652('0x78')]=_0x47c8e2[_0x8652('0x3e')][_0x8652('0x78')];}else{_0x3ae751[_0x8652('0x76')]=_0x47c8e2[_0x8652('0x3e')][_0x8652('0x76')];_0x3ae751[_0x8652('0x77')]=_0x47c8e2[_0x8652('0x3e')][_0x8652('0x77')];_0x3ae751['secure']=_0x47c8e2['Smtp'][_0x8652('0xa8')];}if(_0x47c8e2['Smtp'][_0x8652('0x75')]){_0x3ae751[_0x8652('0xa7')]={'user':_0x47c8e2[_0x8652('0x3e')][_0x8652('0x71')],'pass':_0x47c8e2[_0x8652('0x3e')]['pass']};}return respondWithRpcPromise(_0x8652('0xb3'),_0x8652('0xb2'),{'account':_0x3ae751});}})[_0x8652('0x20')](respondWithResult(_0xa3e91c,null))[_0x8652('0x5b')](handleError(_0xa3e91c,null));};exports['destroy']=function(_0x33afb3,_0x194cfb){return db[_0x8652('0x42')][_0x8652('0x5f')]({'where':{'id':_0x33afb3[_0x8652('0x5d')]['id']}})[_0x8652('0x20')](handleEntityNotFound(_0x194cfb,null))[_0x8652('0x20')](function(_0x1fb470){if(_0x1fb470&&_0x1fb470[_0x8652('0x78')]){throw new db[(_0x8652('0xb4'))][(_0x8652('0xb5'))](_0x8652('0xb6'));}return _0x1fb470;})[_0x8652('0x20')](removeEntity(_0x194cfb,null))[_0x8652('0x5b')](handleError(_0x194cfb,null));};exports[_0x8652('0xb7')]=function(_0x569d88,_0x581545,_0x5890c5){return db[_0x8652('0x42')]['find']({'where':{'id':_0x569d88[_0x8652('0x5d')]['id']}})[_0x8652('0x20')](handleEntityNotFound(_0x581545,null))[_0x8652('0x20')](function(_0x41abdd){if(_0x41abdd){return _0x41abdd[_0x8652('0xb7')](_0x569d88['body'][_0x8652('0x6c')],_[_0x8652('0x87')](_0x569d88[_0x8652('0x60')],[_0x8652('0x6c'),'id'])||{})[_0x8652('0xb8')](function(_0x51c63d){for(var _0x58119f=0x0;_0x58119f<_0x569d88[_0x8652('0x60')][_0x8652('0x6c')][_0x8652('0x4f')];_0x58119f+=0x1){socket[_0x8652('0xb9')](_0x8652('0xba'),{'UserId':_0x569d88[_0x8652('0x60')][_0x8652('0x6c')][_0x58119f],'MailAccountId':_0x569d88['params']['id']});}return _0x51c63d;});}})[_0x8652('0x20')](respondWithResult(_0x581545,null))['catch'](handleError(_0x581545,null));};exports[_0x8652('0xbb')]=function(_0x1d9da3,_0x147aed,_0x106687){return db['MailAccount'][_0x8652('0x5f')]({'where':{'id':_0x1d9da3[_0x8652('0x5d')]['id']}})['then'](handleEntityNotFound(_0x147aed,null))['then'](function(_0x371b9f){if(_0x371b9f){return _0x371b9f[_0x8652('0xbb')](_0x1d9da3['query'][_0x8652('0x6c')])['then'](function(){if(_[_0x8652('0xbc')](_0x1d9da3[_0x8652('0x49')][_0x8652('0x6c')])){for(var _0x1ea2e4=0x0;_0x1ea2e4<_0x1d9da3[_0x8652('0x49')][_0x8652('0x6c')][_0x8652('0x4f')];_0x1ea2e4+=0x1){socket[_0x8652('0xb9')](_0x8652('0xbd'),{'UserId':Number(_0x1d9da3[_0x8652('0x49')]['ids'][_0x1ea2e4]),'MailAccountId':Number(_0x1d9da3[_0x8652('0x5d')]['id'])});}}else{socket['emit'](_0x8652('0xbd'),{'UserId':Number(_0x1d9da3[_0x8652('0x49')][_0x8652('0x6c')]),'MailAccountId':Number(_0x1d9da3[_0x8652('0x5d')]['id'])});}});}})['then'](respondWithStatusCode(_0x147aed,null))[_0x8652('0x5b')](handleError(_0x147aed,null));};exports['getAgents']=function(_0x44ec67,_0x2c529d,_0x262223){var _0x19eca1={};var _0x457ef3={};var _0x592d05;var _0x3b0d69;return db[_0x8652('0x42')][_0x8652('0x66')]({'where':{'id':_0x44ec67['params']['id']}})[_0x8652('0x20')](handleEntityNotFound(_0x2c529d,null))[_0x8652('0x20')](function(_0x2d8fc3){if(_0x2d8fc3){_0x592d05=_0x2d8fc3;_0x457ef3[_0x8652('0x47')]=_[_0x8652('0x4a')](db[_0x8652('0xbe')][_0x8652('0x43')]);_0x457ef3[_0x8652('0x49')]=_[_0x8652('0x4a')](_0x44ec67[_0x8652('0x49')]);_0x457ef3['filters']=_[_0x8652('0x4c')](_0x457ef3['model'],_0x457ef3['query']);_0x19eca1[_0x8652('0x4d')]=_['intersection'](_0x457ef3[_0x8652('0x47')],qs['fields'](_0x44ec67['query'][_0x8652('0x4e')]));_0x19eca1['attributes']=_0x19eca1['attributes'][_0x8652('0x4f')]?_0x19eca1['attributes']:_0x457ef3[_0x8652('0x47')];_0x19eca1[_0x8652('0x52')]=qs['sort'](_0x44ec67['query']['sort']);_0x19eca1[_0x8652('0x54')]=qs[_0x8652('0x4b')](_[_0x8652('0x55')](_0x44ec67['query'],_0x457ef3[_0x8652('0x4b')]));if(_0x44ec67[_0x8652('0x49')][_0x8652('0x56')]){_0x19eca1[_0x8652('0x54')]=_['merge'](_0x19eca1['where'],{'$or':_['map'](_0x19eca1[_0x8652('0x4d')],function(_0x11e987){var _0x1f4dca={};_0x1f4dca[_0x11e987]={'$like':'%'+_0x44ec67[_0x8652('0x49')]['filter']+'%'};return _0x1f4dca;})});}_0x19eca1=_[_0x8652('0x57')]({},_0x19eca1,_0x44ec67[_0x8652('0x58')]);return _0x592d05['getAgents'](_0x19eca1);}})[_0x8652('0x20')](function(_0x3109cf){if(_0x3109cf){_0x3b0d69=_0x3109cf[_0x8652('0x4f')];if(!_0x44ec67['query'][_0x8652('0x50')]('nolimit')){_0x19eca1[_0x8652('0x2e')]=qs['limit'](_0x44ec67[_0x8652('0x49')][_0x8652('0x2e')]);_0x19eca1[_0x8652('0x51')]=qs[_0x8652('0x51')](_0x44ec67[_0x8652('0x49')]['offset']);}return _0x592d05['getAgents'](_0x19eca1);}})[_0x8652('0x20')](function(_0x97f33e){if(_0x97f33e){return _0x97f33e?{'count':_0x3b0d69,'rows':_0x97f33e}:null;}})['then'](respondWithResult(_0x2c529d,null))[_0x8652('0x5b')](handleError(_0x2c529d,null));};