ae945fbbc8958cb594470f109f5cbae250f639ce
[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 _0x4ab4=['includeAll','findAll','catch','show','params','Imap','keys','include','find','body','describe','MailAccountId','Disposition','create','getDispositions','findOne','nolimit','rows','removeDispositions','ids','addAnswer','getAnswers','CannedAnswer','removeAnswers','email','ListId','isNil','active','description','cservice','cauthentication','user','password','pass','cpassword','authentication','host','port','service','cuser','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','MailAccounts','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','getImap','addImap','setImap','getSmtp','addSmtp','setSmtp','addInteraction','MailInteraction','getInteractions','CmContact','Contact','User','Owner','fullname','Tag','Tags','tag','addApplications','sequelize','transaction','READ_COMMITTED','MailApplication','findAndCountAll','getApplications','hasOwnProperty','$gte','split','format','MailMessage','inlineCss','true','CmList','Contacts','updatedAt','DESC','from','attachments','root','basename','auth','secure','sendMail','List\x20not\x20found','List','messageId','subject','attach','out','YYYY-MM-DD\x20HH:mm:ss','Interaction','verifySmtp','VerifySmtp','Sequelize','You\x20can\x27t\x20remove\x20the\x20mail\x20service\x20account','addAgents','omit','spread','emit','userMailAccount:save','removeAgents','isArray','getAgents','zip-dir','fast-json-patch','request-promise','moment','bluebird','util','path','sox','to-csv','ejs','fs-extra','jsforce','desk.js','papaparse','html-to-text','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/license/util','redis','defaults','localhost','socket.io-emitter','register','jayson/promise','client','http','request','then','info','request\x20sent','debug','MailAccount,\x20%s,\x20%s,\x20%s','stringify','error','code','MailAccount,\x20%s,\x20%s','message','result','sendStatus','status','end','json','offset','undefined','count','limit','set','Content-Range','apply','save','update','destroy','get','UserProfileResource','stack','send','index','MailServerIn','MailServerOut','Smtp','Pause','mandatoryDispositionPause','map','MailAccount','rawAttributes','type','key','name','query','filters','intersection','model','attributes','fields','length','order','sort','where','pick','filter','merge','VIRTUAL','options'];(function(_0x40c901,_0x2242f2){var _0x29cf1a=function(_0x2d405e){while(--_0x2d405e){_0x40c901['push'](_0x40c901['shift']());}};_0x29cf1a(++_0x2242f2);}(_0x4ab4,0x1f2));var _0x44ab=function(_0x2fb008,_0x23048e){_0x2fb008=_0x2fb008-0x0;var _0x561658=_0x4ab4[_0x2fb008];return _0x561658;};'use strict';var emlformat=require('eml-format');var rimraf=require('rimraf');var zipdir=require(_0x44ab('0x0'));var jsonpatch=require(_0x44ab('0x1'));var rp=require(_0x44ab('0x2'));var moment=require(_0x44ab('0x3'));var BPromise=require(_0x44ab('0x4'));var Mustache=require('mustache');var util=require(_0x44ab('0x5'));var path=require(_0x44ab('0x6'));var sox=require(_0x44ab('0x7'));var csv=require(_0x44ab('0x8'));var ejs=require(_0x44ab('0x9'));var fs=require('fs');var fs_extra=require(_0x44ab('0xa'));var _=require('lodash');var squel=require('squel');var crypto=require('crypto');var jsforce=require(_0x44ab('0xb'));var deskjs=require(_0x44ab('0xc'));var toCsv=require(_0x44ab('0x8'));var querystring=require('querystring');var Papa=require(_0x44ab('0xd'));var htmlToText=require(_0x44ab('0xe'));var juice=require('juice');var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require(_0x44ab('0xf'));var as=require(_0x44ab('0x10'));var hardwareService=require(_0x44ab('0x11'));var logger=require(_0x44ab('0x12'))(_0x44ab('0x13'));var utils=require(_0x44ab('0x14'));var config=require('../../config/environment');var licenseUtil=require(_0x44ab('0x15'));var db=require('../../mysqldb')['db'];config[_0x44ab('0x16')]=_[_0x44ab('0x17')](config[_0x44ab('0x16')],{'host':_0x44ab('0x18'),'port':0x18eb});var socket=require(_0x44ab('0x19'))(new Redis(config['redis']));require('./mailAccount.socket')[_0x44ab('0x1a')](socket);var jayson=require(_0x44ab('0x1b'));var client=jayson[_0x44ab('0x1c')][_0x44ab('0x1d')]({'port':0x232b});function respondWithRpcPromise(_0x2eff4e,_0x292df6,_0x1db24f,_0x33acc1){return new BPromise(function(_0x1cffc5,_0x11714){var _0x4e3389=_0x33acc1||client;return _0x4e3389[_0x44ab('0x1e')](_0x2eff4e,_0x1db24f)[_0x44ab('0x1f')](function(_0x5c49b0){logger[_0x44ab('0x20')]('MailAccount,\x20%s,\x20%s',_0x292df6,_0x44ab('0x21'));logger[_0x44ab('0x22')](_0x44ab('0x23'),_0x292df6,_0x44ab('0x21'),JSON[_0x44ab('0x24')](_0x5c49b0));if(_0x5c49b0['error']){if(_0x5c49b0[_0x44ab('0x25')][_0x44ab('0x26')]===0x1f4){logger[_0x44ab('0x25')](_0x44ab('0x27'),_0x292df6,_0x5c49b0[_0x44ab('0x25')][_0x44ab('0x28')]);return _0x11714(_0x5c49b0[_0x44ab('0x25')][_0x44ab('0x28')]);}logger[_0x44ab('0x25')](_0x44ab('0x27'),_0x292df6,_0x5c49b0['error'][_0x44ab('0x28')]);return _0x1cffc5(_0x5c49b0[_0x44ab('0x25')]['message']);}else{logger[_0x44ab('0x20')](_0x44ab('0x27'),_0x292df6,'request\x20sent');_0x1cffc5(_0x5c49b0[_0x44ab('0x29')][_0x44ab('0x28')]);}})['catch'](function(_0x3944fc){logger[_0x44ab('0x25')]('MailAccount,\x20%s,\x20%s',_0x292df6,_0x3944fc);_0x11714(_0x3944fc);});});}function respondWithStatusCode(_0x57fc75,_0x15bfa0){_0x15bfa0=_0x15bfa0||0xcc;return function(_0x25cb6d){if(_0x25cb6d){return _0x57fc75[_0x44ab('0x2a')](_0x15bfa0);}return _0x57fc75[_0x44ab('0x2b')](_0x15bfa0)[_0x44ab('0x2c')]();};}function respondWithResult(_0x2bfaf4,_0x5d4e37){_0x5d4e37=_0x5d4e37||0xc8;return function(_0x569896){if(_0x569896){return _0x2bfaf4[_0x44ab('0x2b')](_0x5d4e37)[_0x44ab('0x2d')](_0x569896);}};}function respondWithFilteredResult(_0xf11547,_0x2f0bea){return function(_0x3e88b6){if(_0x3e88b6){var _0x123df0=typeof _0x2f0bea[_0x44ab('0x2e')]===_0x44ab('0x2f')&&typeof _0x2f0bea['limit']===_0x44ab('0x2f');var _0x4f4d1e=_0x3e88b6[_0x44ab('0x30')];var _0x13e736=_0x123df0?0x0:_0x2f0bea[_0x44ab('0x2e')];var _0x48ae10=_0x123df0?_0x3e88b6['count']:_0x2f0bea[_0x44ab('0x2e')]+_0x2f0bea[_0x44ab('0x31')];var _0x4c6505;if(_0x48ae10>=_0x4f4d1e){_0x48ae10=_0x4f4d1e;_0x4c6505=0xc8;}else{_0x4c6505=0xce;}_0xf11547[_0x44ab('0x2b')](_0x4c6505);return _0xf11547[_0x44ab('0x32')](_0x44ab('0x33'),_0x13e736+'-'+_0x48ae10+'/'+_0x4f4d1e)['json'](_0x3e88b6);}return null;};}function patchUpdates(_0x5cf3fb){return function(_0x3b6427){try{jsonpatch[_0x44ab('0x34')](_0x3b6427,_0x5cf3fb,!![]);}catch(_0x1ec3a2){return BPromise['reject'](_0x1ec3a2);}return _0x3b6427[_0x44ab('0x35')]();};}function saveUpdates(_0x18a0f9,_0x4f7f9d){return function(_0x4cb88a){if(_0x4cb88a){return _0x4cb88a[_0x44ab('0x36')](_0x18a0f9)['then'](function(_0x36c472){return _0x36c472;});}return null;};}function removeEntity(_0x14f476,_0x17742d){return function(_0xc81b99){if(_0xc81b99){return _0xc81b99[_0x44ab('0x37')]()['then'](function(){var _0x248412=_0xc81b99[_0x44ab('0x38')]({'plain':!![]});var _0x29b05d='MailAccounts';return db[_0x44ab('0x39')][_0x44ab('0x37')]({'where':{'type':_0x29b05d,'resourceId':_0x248412['id']}})['then'](function(){return _0xc81b99;});})[_0x44ab('0x1f')](function(){_0x14f476[_0x44ab('0x2b')](0xcc)[_0x44ab('0x2c')]();});}};}function handleEntityNotFound(_0x4edaa8,_0x46894a){return function(_0x598a82){if(!_0x598a82){_0x4edaa8[_0x44ab('0x2a')](0x194);}return _0x598a82;};}function handleError(_0x5e0fff,_0x3336d5){_0x3336d5=_0x3336d5||0x1f4;return function(_0x464eb6){logger[_0x44ab('0x25')](_0x464eb6[_0x44ab('0x3a')]);if(_0x464eb6['name']){delete _0x464eb6['name'];}_0x5e0fff[_0x44ab('0x2b')](_0x3336d5)[_0x44ab('0x3b')](_0x464eb6);};}exports[_0x44ab('0x3c')]=function(_0x3ec76f,_0x239aa4){var _0x381ee0={'include':[{'model':db[_0x44ab('0x3d')],'as':'Imap'},{'model':db[_0x44ab('0x3e')],'as':_0x44ab('0x3f')},{'model':db[_0x44ab('0x40')],'as':_0x44ab('0x41')}]},_0x43e77f={},_0x2261e6={'count':0x0,'rows':[]};var _0x4bd73e=_[_0x44ab('0x42')](db[_0x44ab('0x43')][_0x44ab('0x44')],function(_0x38066f){return{'name':_0x38066f['fieldName'],'type':_0x38066f[_0x44ab('0x45')][_0x44ab('0x46')]};});_0x43e77f['model']=_[_0x44ab('0x42')](_0x4bd73e,_0x44ab('0x47'));_0x43e77f[_0x44ab('0x48')]=_['keys'](_0x3ec76f[_0x44ab('0x48')]);_0x43e77f[_0x44ab('0x49')]=_[_0x44ab('0x4a')](_0x43e77f[_0x44ab('0x4b')],_0x43e77f['query']);_0x381ee0[_0x44ab('0x4c')]=_[_0x44ab('0x4a')](_0x43e77f[_0x44ab('0x4b')],qs[_0x44ab('0x4d')](_0x3ec76f['query']['fields']));_0x381ee0[_0x44ab('0x4c')]=_0x381ee0['attributes'][_0x44ab('0x4e')]?_0x381ee0[_0x44ab('0x4c')]:_0x43e77f[_0x44ab('0x4b')];if(!_0x3ec76f[_0x44ab('0x48')]['hasOwnProperty']('nolimit')){_0x381ee0[_0x44ab('0x31')]=qs[_0x44ab('0x31')](_0x3ec76f[_0x44ab('0x48')][_0x44ab('0x31')]);_0x381ee0[_0x44ab('0x2e')]=qs[_0x44ab('0x2e')](_0x3ec76f[_0x44ab('0x48')]['offset']);}_0x381ee0[_0x44ab('0x4f')]=qs['sort'](_0x3ec76f['query'][_0x44ab('0x50')]);_0x381ee0[_0x44ab('0x51')]=qs['filters'](_[_0x44ab('0x52')](_0x3ec76f[_0x44ab('0x48')],_0x43e77f[_0x44ab('0x49')]),_0x4bd73e);if(_0x3ec76f['query'][_0x44ab('0x53')]){_0x381ee0[_0x44ab('0x51')]=_[_0x44ab('0x54')](_0x381ee0[_0x44ab('0x51')],{'$or':_[_0x44ab('0x42')](_0x4bd73e,function(_0x35f55d){if(_0x35f55d[_0x44ab('0x45')]!==_0x44ab('0x55')){var _0x1aca11={};_0x1aca11[_0x35f55d[_0x44ab('0x47')]]={'$like':'%'+_0x3ec76f[_0x44ab('0x48')][_0x44ab('0x53')]+'%'};return _0x1aca11;}})});}_0x381ee0=_['merge']({},_0x381ee0,_0x3ec76f[_0x44ab('0x56')]);var _0x5c5458={'where':_0x381ee0['where']};return db[_0x44ab('0x43')][_0x44ab('0x30')](_0x5c5458)['then'](function(_0x243ea3){_0x2261e6[_0x44ab('0x30')]=_0x243ea3;if(_0x3ec76f[_0x44ab('0x48')][_0x44ab('0x57')]){_0x381ee0['include']=[{'all':!![]}];}return db['MailAccount'][_0x44ab('0x58')](_0x381ee0);})[_0x44ab('0x1f')](function(_0x5e399b){_0x2261e6['rows']=_0x5e399b;return _0x2261e6;})[_0x44ab('0x1f')](respondWithFilteredResult(_0x239aa4,_0x381ee0))[_0x44ab('0x59')](handleError(_0x239aa4,null));};exports[_0x44ab('0x5a')]=function(_0x5c69f2,_0x492f15){var _0x3f843e={'raw':![],'where':{'id':_0x5c69f2[_0x44ab('0x5b')]['id']},'include':[{'model':db[_0x44ab('0x3d')],'as':_0x44ab('0x5c')},{'model':db['MailServerOut'],'as':_0x44ab('0x3f')},{'model':db[_0x44ab('0x40')],'as':_0x44ab('0x41')}]},_0x16ebda={};_0x16ebda[_0x44ab('0x4b')]=_[_0x44ab('0x5d')](db[_0x44ab('0x43')][_0x44ab('0x44')]);_0x16ebda[_0x44ab('0x48')]=_[_0x44ab('0x5d')](_0x5c69f2['query']);_0x16ebda['filters']=_[_0x44ab('0x4a')](_0x16ebda[_0x44ab('0x4b')],_0x16ebda[_0x44ab('0x48')]);_0x3f843e['attributes']=_[_0x44ab('0x4a')](_0x16ebda[_0x44ab('0x4b')],qs[_0x44ab('0x4d')](_0x5c69f2[_0x44ab('0x48')][_0x44ab('0x4d')]));_0x3f843e[_0x44ab('0x4c')]=_0x3f843e[_0x44ab('0x4c')][_0x44ab('0x4e')]?_0x3f843e[_0x44ab('0x4c')]:_0x16ebda[_0x44ab('0x4b')];if(_0x5c69f2['query'][_0x44ab('0x57')]){_0x3f843e[_0x44ab('0x5e')]=[{'all':!![]}];}_0x3f843e=_[_0x44ab('0x54')]({},_0x3f843e,_0x5c69f2[_0x44ab('0x56')]);return db[_0x44ab('0x43')][_0x44ab('0x5f')](_0x3f843e)[_0x44ab('0x1f')](handleEntityNotFound(_0x492f15,null))[_0x44ab('0x1f')](respondWithResult(_0x492f15,null))[_0x44ab('0x59')](handleError(_0x492f15,null));};exports[_0x44ab('0x36')]=function(_0x236798,_0x20d75e){if(_0x236798[_0x44ab('0x60')]['id']){delete _0x236798[_0x44ab('0x60')]['id'];}return db[_0x44ab('0x43')][_0x44ab('0x5f')]({'where':{'id':_0x236798['params']['id']},'include':[{'model':db[_0x44ab('0x3d')],'as':_0x44ab('0x5c')},{'model':db['MailServerOut'],'as':_0x44ab('0x3f')},{'model':db[_0x44ab('0x40')],'as':_0x44ab('0x41')}]})['then'](handleEntityNotFound(_0x20d75e,null))[_0x44ab('0x1f')](saveUpdates(_0x236798['body'],null))[_0x44ab('0x1f')](function(_0x35ebed){if(_0x35ebed&&_0x236798[_0x44ab('0x60')][_0x44ab('0x5c')]){return db[_0x44ab('0x3d')][_0x44ab('0x36')](_0x236798[_0x44ab('0x60')]['Imap'],{'where':{'MailAccountId':_0x35ebed['id']}})['then'](function(){return _0x35ebed;});}return _0x35ebed;})[_0x44ab('0x1f')](function(_0x283f37){if(_0x283f37&&_0x236798[_0x44ab('0x60')][_0x44ab('0x3f')]){return db['MailServerOut'][_0x44ab('0x36')](_0x236798[_0x44ab('0x60')][_0x44ab('0x3f')],{'where':{'MailAccountId':_0x283f37['id']}})[_0x44ab('0x1f')](function(){return _0x283f37;});}return _0x283f37;})[_0x44ab('0x1f')](respondWithResult(_0x20d75e,null))['catch'](handleError(_0x20d75e,null));};exports['describe']=function(_0x49def0,_0x32df06){return db[_0x44ab('0x43')][_0x44ab('0x61')]()[_0x44ab('0x1f')](respondWithResult(_0x32df06,null))[_0x44ab('0x59')](handleError(_0x32df06,null));};exports['addDisposition']=function(_0x4718bc,_0x1df3ea,_0x1cf7ea){if(_0x4718bc['body']['id']){delete _0x4718bc[_0x44ab('0x60')]['id'];}return db[_0x44ab('0x43')][_0x44ab('0x5f')]({'where':{'id':_0x4718bc[_0x44ab('0x5b')]['id']}})['then'](handleEntityNotFound(_0x1df3ea,null))[_0x44ab('0x1f')](function(_0x1b7098){if(_0x1b7098){_0x4718bc[_0x44ab('0x60')][_0x44ab('0x62')]=_0x1b7098['id'];return db[_0x44ab('0x63')][_0x44ab('0x64')](_0x4718bc[_0x44ab('0x60')]);}})[_0x44ab('0x1f')](respondWithResult(_0x1df3ea,null))['catch'](handleError(_0x1df3ea,null));};exports[_0x44ab('0x65')]=function(_0x93509c,_0x1e2759,_0xd4ede5){var _0x3c0aac={'raw':![],'where':{}};var _0x20166c={};var _0x238466={'count':0x0,'rows':[]};return db['MailAccount'][_0x44ab('0x66')]({'where':{'id':_0x93509c[_0x44ab('0x5b')]['id']}})[_0x44ab('0x1f')](handleEntityNotFound(_0x1e2759,null))['then'](function(_0x3a1bc5){if(_0x3a1bc5){_0x20166c[_0x44ab('0x4b')]=_[_0x44ab('0x5d')](db[_0x44ab('0x63')][_0x44ab('0x44')]);_0x20166c[_0x44ab('0x48')]=_[_0x44ab('0x5d')](_0x93509c[_0x44ab('0x48')]);_0x20166c[_0x44ab('0x49')]=_[_0x44ab('0x4a')](_0x20166c['model'],_0x20166c['query']);_0x3c0aac['attributes']=_[_0x44ab('0x4a')](_0x20166c[_0x44ab('0x4b')],qs[_0x44ab('0x4d')](_0x93509c['query']['fields']));_0x3c0aac[_0x44ab('0x4c')]=_0x3c0aac[_0x44ab('0x4c')][_0x44ab('0x4e')]?_0x3c0aac[_0x44ab('0x4c')]:_0x20166c[_0x44ab('0x4b')];if(!_0x93509c[_0x44ab('0x48')]['hasOwnProperty'](_0x44ab('0x67'))){_0x3c0aac[_0x44ab('0x31')]=qs[_0x44ab('0x31')](_0x93509c[_0x44ab('0x48')]['limit']);_0x3c0aac[_0x44ab('0x2e')]=qs[_0x44ab('0x2e')](_0x93509c['query'][_0x44ab('0x2e')]);}_0x3c0aac[_0x44ab('0x4f')]=qs[_0x44ab('0x50')](_0x93509c[_0x44ab('0x48')][_0x44ab('0x50')]);_0x3c0aac['where']=qs[_0x44ab('0x49')](_[_0x44ab('0x52')](_0x93509c['query'],_0x20166c[_0x44ab('0x49')]));_0x3c0aac[_0x44ab('0x51')]['MailAccountId']=_0x3a1bc5['id'];if(_0x93509c[_0x44ab('0x48')][_0x44ab('0x53')]){_0x3c0aac[_0x44ab('0x51')]=_[_0x44ab('0x54')](_0x3c0aac[_0x44ab('0x51')],{'$or':_[_0x44ab('0x42')](_0x3c0aac[_0x44ab('0x4c')],function(_0x153e8f){var _0x3b968b={};_0x3b968b[_0x153e8f]={'$like':'%'+_0x93509c[_0x44ab('0x48')]['filter']+'%'};return _0x3b968b;})});}_0x3c0aac=_[_0x44ab('0x54')]({},_0x3c0aac,_0x93509c[_0x44ab('0x56')]);return db[_0x44ab('0x63')][_0x44ab('0x30')]({'where':_0x3c0aac['where']})['then'](function(_0xb9c1e0){_0x238466[_0x44ab('0x30')]=_0xb9c1e0;if(_0x93509c[_0x44ab('0x48')][_0x44ab('0x57')]){_0x3c0aac['include']=[{'all':!![]}];}return db[_0x44ab('0x63')]['findAll'](_0x3c0aac);})[_0x44ab('0x1f')](function(_0x455b58){_0x238466[_0x44ab('0x68')]=_0x455b58;return _0x238466;});}})[_0x44ab('0x1f')](respondWithFilteredResult(_0x1e2759,_0x3c0aac))['catch'](handleError(_0x1e2759,null));};exports[_0x44ab('0x69')]=function(_0x537263,_0x5035ce,_0x57042a){return db['MailAccount']['find']({'where':{'id':_0x537263['params']['id']}})[_0x44ab('0x1f')](handleEntityNotFound(_0x5035ce,null))[_0x44ab('0x1f')](function(_0x2adaf3){if(_0x2adaf3){return _0x2adaf3[_0x44ab('0x69')](_0x537263['query'][_0x44ab('0x6a')]);}})['then'](respondWithStatusCode(_0x5035ce,null))[_0x44ab('0x59')](handleError(_0x5035ce,null));};exports[_0x44ab('0x6b')]=function(_0x2759fa,_0x3aec5a,_0x4e6dba){if(_0x2759fa[_0x44ab('0x60')]['id']){delete _0x2759fa[_0x44ab('0x60')]['id'];}return db[_0x44ab('0x43')][_0x44ab('0x5f')]({'where':{'id':_0x2759fa[_0x44ab('0x5b')]['id']}})[_0x44ab('0x1f')](handleEntityNotFound(_0x3aec5a,null))[_0x44ab('0x1f')](function(_0x2e0ef2){if(_0x2e0ef2){_0x2759fa['body'][_0x44ab('0x62')]=_0x2e0ef2['id'];return db['CannedAnswer'][_0x44ab('0x64')](_0x2759fa[_0x44ab('0x60')]);}})[_0x44ab('0x1f')](respondWithResult(_0x3aec5a,null))['catch'](handleError(_0x3aec5a,null));};exports[_0x44ab('0x6c')]=function(_0x2c7a32,_0x130a97,_0x2dd5bc){var _0x1127d5={'raw':![],'where':{}};var _0x3f6f35={};var _0x6d367d={'count':0x0,'rows':[]};return db[_0x44ab('0x43')][_0x44ab('0x66')]({'where':{'id':_0x2c7a32[_0x44ab('0x5b')]['id']}})[_0x44ab('0x1f')](handleEntityNotFound(_0x130a97,null))[_0x44ab('0x1f')](function(_0x5cc5ca){if(_0x5cc5ca){_0x3f6f35[_0x44ab('0x4b')]=_['keys'](db[_0x44ab('0x6d')][_0x44ab('0x44')]);_0x3f6f35[_0x44ab('0x48')]=_[_0x44ab('0x5d')](_0x2c7a32[_0x44ab('0x48')]);_0x3f6f35[_0x44ab('0x49')]=_[_0x44ab('0x4a')](_0x3f6f35['model'],_0x3f6f35['query']);_0x1127d5['attributes']=_[_0x44ab('0x4a')](_0x3f6f35[_0x44ab('0x4b')],qs[_0x44ab('0x4d')](_0x2c7a32[_0x44ab('0x48')]['fields']));_0x1127d5[_0x44ab('0x4c')]=_0x1127d5[_0x44ab('0x4c')][_0x44ab('0x4e')]?_0x1127d5['attributes']:_0x3f6f35[_0x44ab('0x4b')];if(!_0x2c7a32[_0x44ab('0x48')]['hasOwnProperty'](_0x44ab('0x67'))){_0x1127d5[_0x44ab('0x31')]=qs['limit'](_0x2c7a32[_0x44ab('0x48')][_0x44ab('0x31')]);_0x1127d5[_0x44ab('0x2e')]=qs['offset'](_0x2c7a32[_0x44ab('0x48')]['offset']);}_0x1127d5[_0x44ab('0x4f')]=qs[_0x44ab('0x50')](_0x2c7a32[_0x44ab('0x48')][_0x44ab('0x50')]);_0x1127d5[_0x44ab('0x51')]=qs['filters'](_[_0x44ab('0x52')](_0x2c7a32[_0x44ab('0x48')],_0x3f6f35[_0x44ab('0x49')]));_0x1127d5[_0x44ab('0x51')][_0x44ab('0x62')]=_0x5cc5ca['id'];if(_0x2c7a32[_0x44ab('0x48')]['filter']){_0x1127d5[_0x44ab('0x51')]=_['merge'](_0x1127d5['where'],{'$or':_[_0x44ab('0x42')](_0x1127d5[_0x44ab('0x4c')],function(_0x1fc84e){var _0x2783d5={};_0x2783d5[_0x1fc84e]={'$like':'%'+_0x2c7a32[_0x44ab('0x48')][_0x44ab('0x53')]+'%'};return _0x2783d5;})});}_0x1127d5=_[_0x44ab('0x54')]({},_0x1127d5,_0x2c7a32[_0x44ab('0x56')]);return db['CannedAnswer']['count']({'where':_0x1127d5[_0x44ab('0x51')]})['then'](function(_0x15853f){_0x6d367d['count']=_0x15853f;if(_0x2c7a32['query'][_0x44ab('0x57')]){_0x1127d5['include']=[{'all':!![]}];}return db[_0x44ab('0x6d')][_0x44ab('0x58')](_0x1127d5);})[_0x44ab('0x1f')](function(_0x41f029){_0x6d367d[_0x44ab('0x68')]=_0x41f029;return _0x6d367d;});}})['then'](respondWithFilteredResult(_0x130a97,_0x1127d5))[_0x44ab('0x59')](handleError(_0x130a97,null));};exports[_0x44ab('0x6e')]=function(_0x276dc7,_0x40f3cc,_0x5bd54a){return db[_0x44ab('0x43')]['find']({'where':{'id':_0x276dc7[_0x44ab('0x5b')]['id']}})[_0x44ab('0x1f')](handleEntityNotFound(_0x40f3cc,null))['then'](function(_0x28f910){if(_0x28f910){return _0x28f910[_0x44ab('0x6e')](_0x276dc7[_0x44ab('0x48')]['ids']);}})[_0x44ab('0x1f')](respondWithStatusCode(_0x40f3cc,null))[_0x44ab('0x59')](handleError(_0x40f3cc,null));};exports[_0x44ab('0x64')]=function(_0x472e6d,_0x36ab6c){var _0x39d1cf={'name':_0x472e6d[_0x44ab('0x60')][_0x44ab('0x47')],'key':_0x472e6d[_0x44ab('0x60')][_0x44ab('0x46')],'email':_0x472e6d[_0x44ab('0x60')][_0x44ab('0x6f')],'ListId':_0x472e6d[_0x44ab('0x60')][_0x44ab('0x70')],'active':!_[_0x44ab('0x71')](_0x472e6d[_0x44ab('0x60')][_0x44ab('0x72')])?_0x472e6d[_0x44ab('0x60')][_0x44ab('0x72')]:!![],'description':_0x472e6d[_0x44ab('0x60')][_0x44ab('0x73')]||null,'Imap':{},'Smtp':{}};if(_[_0x44ab('0x71')](_0x472e6d[_0x44ab('0x60')][_0x44ab('0x74')])){if(_0x472e6d[_0x44ab('0x60')][_0x44ab('0x75')]){_0x39d1cf[_0x44ab('0x5c')][_0x44ab('0x76')]=_0x39d1cf['Smtp'][_0x44ab('0x76')]=_0x472e6d[_0x44ab('0x60')]['cuser'];_0x39d1cf['Imap'][_0x44ab('0x77')]=_0x39d1cf['Smtp'][_0x44ab('0x78')]=_0x472e6d[_0x44ab('0x60')][_0x44ab('0x79')];}else{_0x39d1cf[_0x44ab('0x5c')]['authentication']=_0x39d1cf[_0x44ab('0x3f')][_0x44ab('0x7a')]=![];}_0x39d1cf[_0x44ab('0x5c')][_0x44ab('0x7b')]=_0x472e6d['body'][_0x44ab('0x5c')][_0x44ab('0x7b')];_0x39d1cf[_0x44ab('0x5c')][_0x44ab('0x7c')]=_0x472e6d[_0x44ab('0x60')][_0x44ab('0x5c')][_0x44ab('0x7c')];_0x39d1cf[_0x44ab('0x3f')][_0x44ab('0x7b')]=_0x472e6d['body'][_0x44ab('0x3f')]['host'];_0x39d1cf[_0x44ab('0x3f')]['port']=_0x472e6d[_0x44ab('0x60')][_0x44ab('0x3f')][_0x44ab('0x7c')];}else{_0x39d1cf['Imap'][_0x44ab('0x7d')]=_0x39d1cf['Smtp']['service']=_0x472e6d[_0x44ab('0x60')][_0x44ab('0x74')];_0x39d1cf[_0x44ab('0x5c')]['user']=_0x39d1cf[_0x44ab('0x3f')]['user']=_0x472e6d[_0x44ab('0x60')][_0x44ab('0x7e')];_0x39d1cf['Imap']['password']=_0x39d1cf[_0x44ab('0x3f')][_0x44ab('0x78')]=_0x472e6d[_0x44ab('0x60')][_0x44ab('0x79')];}return db[_0x44ab('0x43')][_0x44ab('0x64')](_0x39d1cf,{'include':[{'model':db['MailServerOut'],'as':'Smtp'},{'model':db[_0x44ab('0x3d')],'as':_0x44ab('0x5c')}]})[_0x44ab('0x1f')](function(_0x488a60){var _0x3b95a8=_0x472e6d[_0x44ab('0x76')][_0x44ab('0x38')]({'plain':!![]});if(!_0x3b95a8)throw new Error(_0x44ab('0x7f'));if(_0x3b95a8[_0x44ab('0x80')]===_0x44ab('0x76')){var _0x1db6db=_0x488a60[_0x44ab('0x38')]({'plain':!![]});return db[_0x44ab('0x81')][_0x44ab('0x5f')]({'where':{'name':_0x44ab('0x82'),'userProfileId':_0x3b95a8['userProfileId']},'raw':!![]})[_0x44ab('0x1f')](function(_0x15ae57){if(_0x15ae57&&_0x15ae57[_0x44ab('0x83')]===0x0){return db[_0x44ab('0x39')]['create']({'name':_0x1db6db[_0x44ab('0x47')],'resourceId':_0x1db6db['id'],'type':_0x15ae57[_0x44ab('0x47')],'sectionId':_0x15ae57['id']},{})[_0x44ab('0x1f')](function(){return _0x488a60;});}else{return _0x488a60;}})[_0x44ab('0x59')](function(_0x1bdbdb){logger[_0x44ab('0x25')](_0x44ab('0x84'),_0x1bdbdb);throw _0x1bdbdb;});}return _0x488a60;})[_0x44ab('0x1f')](respondWithResult(_0x36ab6c,0xc9))[_0x44ab('0x59')](handleError(_0x36ab6c,null));};exports[_0x44ab('0x85')]=function(_0x5eeda2,_0x2c00f2,_0x507d63){return db[_0x44ab('0x43')][_0x44ab('0x66')]({'where':{'id':_0x5eeda2[_0x44ab('0x5b')]['id']}})[_0x44ab('0x1f')](handleEntityNotFound(_0x2c00f2,null))[_0x44ab('0x1f')](function(_0x1f0baa){if(_0x1f0baa){return _0x1f0baa[_0x44ab('0x85')]();}return null;})[_0x44ab('0x1f')](respondWithResult(_0x2c00f2,null))[_0x44ab('0x59')](handleError(_0x2c00f2,null));};exports[_0x44ab('0x86')]=function(_0x514632,_0x435920,_0x234215){if(_0x514632[_0x44ab('0x60')]['id']){delete _0x514632[_0x44ab('0x60')]['id'];}return db[_0x44ab('0x43')][_0x44ab('0x5f')]({'where':{'id':_0x514632[_0x44ab('0x5b')]['id']}})['then'](handleEntityNotFound(_0x435920,null))['then'](function(_0x2d01f9){if(_0x2d01f9){_0x514632[_0x44ab('0x60')][_0x44ab('0x62')]=_0x2d01f9['id'];return db[_0x44ab('0x3d')][_0x44ab('0x64')](_0x514632[_0x44ab('0x60')]);}})[_0x44ab('0x1f')](respondWithResult(_0x435920,null))['catch'](handleError(_0x435920,null));};exports['removeImap']=function(_0x8f42b6,_0x6955c,_0x3c3032){return db[_0x44ab('0x43')][_0x44ab('0x66')]({'where':{'id':_0x8f42b6['params']['id']}})[_0x44ab('0x1f')](handleEntityNotFound(_0x6955c,null))[_0x44ab('0x1f')](function(_0x18b701){if(_0x18b701){return _0x18b701[_0x44ab('0x87')](null);}return null;})[_0x44ab('0x1f')](respondWithStatusCode(_0x6955c,null))[_0x44ab('0x59')](handleError(_0x6955c,null));};exports['getSmtp']=function(_0x5a14a6,_0x2b69e2,_0x2c468f){return db[_0x44ab('0x43')]['findOne']({'where':{'id':_0x5a14a6[_0x44ab('0x5b')]['id']}})[_0x44ab('0x1f')](handleEntityNotFound(_0x2b69e2,null))[_0x44ab('0x1f')](function(_0x4574c3){if(_0x4574c3){return _0x4574c3[_0x44ab('0x88')]();}return null;})[_0x44ab('0x1f')](respondWithResult(_0x2b69e2,null))[_0x44ab('0x59')](handleError(_0x2b69e2,null));};exports[_0x44ab('0x89')]=function(_0x40ba60,_0x2d8d05,_0xcc7589){if(_0x40ba60['body']['id']){delete _0x40ba60[_0x44ab('0x60')]['id'];}return db[_0x44ab('0x43')]['find']({'where':{'id':_0x40ba60['params']['id']}})[_0x44ab('0x1f')](handleEntityNotFound(_0x2d8d05,null))[_0x44ab('0x1f')](function(_0x29a300){if(_0x29a300){_0x40ba60[_0x44ab('0x60')][_0x44ab('0x62')]=_0x29a300['id'];return db['MailServerOut'][_0x44ab('0x64')](_0x40ba60[_0x44ab('0x60')]);}})['then'](respondWithResult(_0x2d8d05,null))[_0x44ab('0x59')](handleError(_0x2d8d05,null));};exports['removeSmtp']=function(_0x42107c,_0x59c2e6,_0x2d23de){return db[_0x44ab('0x43')][_0x44ab('0x66')]({'where':{'id':_0x42107c[_0x44ab('0x5b')]['id']}})['then'](handleEntityNotFound(_0x59c2e6,null))[_0x44ab('0x1f')](function(_0x3f845c){if(_0x3f845c){return _0x3f845c[_0x44ab('0x8a')](null);}return null;})[_0x44ab('0x1f')](respondWithStatusCode(_0x59c2e6,null))[_0x44ab('0x59')](handleError(_0x59c2e6,null));};exports[_0x44ab('0x8b')]=function(_0x56a781,_0x278e2a,_0x57f1a2){return db[_0x44ab('0x8c')]['find']({'where':{'id':_0x56a781[_0x44ab('0x5b')]['id']}})[_0x44ab('0x1f')](handleEntityNotFound(_0x278e2a,null))['then'](function(_0x2a3279){if(_0x2a3279){return _0x2a3279[_0x44ab('0x8b')](_0x56a781[_0x44ab('0x60')]['ids'],_['omit'](_0x56a781[_0x44ab('0x60')],['ids','id'])||{});}})[_0x44ab('0x1f')](respondWithResult(_0x278e2a,null))[_0x44ab('0x59')](handleError(_0x278e2a,null));};exports[_0x44ab('0x8d')]=function(_0x482b60,_0x2095c8,_0x8519d2){var _0x5e0619={'raw':![],'where':{}};var _0x2973cb={};var _0x5e1c59={'count':0x0,'rows':[]};return db['MailAccount'][_0x44ab('0x66')]({'where':{'id':_0x482b60['params']['id']}})[_0x44ab('0x1f')](handleEntityNotFound(_0x2095c8,null))[_0x44ab('0x1f')](function(_0x26e896){if(_0x26e896){_0x2973cb[_0x44ab('0x4b')]=_['keys'](db[_0x44ab('0x8c')]['rawAttributes']);_0x2973cb['query']=_[_0x44ab('0x5d')](_0x482b60[_0x44ab('0x48')]);_0x2973cb[_0x44ab('0x49')]=_[_0x44ab('0x4a')](_0x2973cb['model'],_0x2973cb[_0x44ab('0x48')]);_0x5e0619[_0x44ab('0x4c')]=_[_0x44ab('0x4a')](_0x2973cb[_0x44ab('0x4b')],qs['fields'](_0x482b60[_0x44ab('0x48')][_0x44ab('0x4d')]));_0x5e0619[_0x44ab('0x4c')]=_0x5e0619[_0x44ab('0x4c')][_0x44ab('0x4e')]?_0x5e0619[_0x44ab('0x4c')]:_0x2973cb[_0x44ab('0x4b')];if(!_0x482b60[_0x44ab('0x48')]['hasOwnProperty'](_0x44ab('0x67'))){_0x5e0619[_0x44ab('0x31')]=qs['limit'](_0x482b60[_0x44ab('0x48')][_0x44ab('0x31')]);_0x5e0619[_0x44ab('0x2e')]=qs['offset'](_0x482b60[_0x44ab('0x48')][_0x44ab('0x2e')]);}_0x5e0619[_0x44ab('0x4f')]=qs[_0x44ab('0x50')](_0x482b60[_0x44ab('0x48')][_0x44ab('0x50')]);_0x5e0619[_0x44ab('0x51')]=qs['filters'](_[_0x44ab('0x52')](_0x482b60[_0x44ab('0x48')],_0x2973cb['filters']));_0x5e0619[_0x44ab('0x51')]['MailAccountId']=_0x26e896['id'];if(_0x482b60['query'][_0x44ab('0x53')]){_0x5e0619['where']=_['merge'](_0x5e0619[_0x44ab('0x51')],{'$or':_[_0x44ab('0x42')](_0x5e0619[_0x44ab('0x4c')],function(_0x24f492){var _0x59fbc6={};_0x59fbc6[_0x24f492]={'$like':'%'+_0x482b60[_0x44ab('0x48')][_0x44ab('0x53')]+'%'};return _0x59fbc6;})});}_0x5e0619=_[_0x44ab('0x54')]({},_0x5e0619,_0x482b60[_0x44ab('0x56')]);return db[_0x44ab('0x8c')][_0x44ab('0x30')]({'where':_0x5e0619[_0x44ab('0x51')]})[_0x44ab('0x1f')](function(_0x2c49af){_0x5e1c59[_0x44ab('0x30')]=_0x2c49af;if(_0x482b60['query'][_0x44ab('0x57')]){_0x5e0619[_0x44ab('0x5e')]=[{'model':db[_0x44ab('0x8e')],'as':_0x44ab('0x8f'),'required':![]},{'model':db[_0x44ab('0x90')],'as':_0x44ab('0x91'),'attributes':[_0x44ab('0x47'),_0x44ab('0x92'),'internal'],'required':![]},{'model':db[_0x44ab('0x93')],'as':_0x44ab('0x94'),'attributes':['id',_0x44ab('0x47'),'color'],'where':_0x482b60[_0x44ab('0x48')][_0x44ab('0x95')]?{'id':_0x482b60[_0x44ab('0x48')][_0x44ab('0x95')]}:undefined,'required':_0x482b60['query']['tag']?!![]:![]}];}return db[_0x44ab('0x8c')][_0x44ab('0x58')](_0x5e0619);})['then'](function(_0x1b6420){_0x5e1c59[_0x44ab('0x68')]=_0x1b6420;return _0x5e1c59;});}})[_0x44ab('0x1f')](respondWithFilteredResult(_0x2095c8,_0x5e0619))[_0x44ab('0x59')](handleError(_0x2095c8,null));};exports[_0x44ab('0x96')]=function addApplications(_0x1009fe,_0x1c3c49){var _0x20a3b7=_0x1009fe[_0x44ab('0x5b')]['id'];var _0x3ea461=_0x1009fe[_0x44ab('0x60')];var _0x1088d=0xc8;var _0x530c06=null;return db[_0x44ab('0x97')][_0x44ab('0x98')]({'isolationLevel':db['sequelize']['Transaction']['ISOLATION_LEVELS'][_0x44ab('0x99')]},function(_0x41adde){return db[_0x44ab('0x43')]['findOne']({'where':{'id':_0x20a3b7},'transaction':_0x41adde})[_0x44ab('0x1f')](function(_0xbe331d){if(_0xbe331d){return db[_0x44ab('0x9a')][_0x44ab('0x37')]({'where':{'MailAccountId':_0x20a3b7},'transaction':_0x41adde})['then'](function(){var _0x53edfc=_[_0x44ab('0x42')](_0x3ea461,function(_0x2b643f){_0x2b643f['MailAccountId']=_0x20a3b7;return _0x2b643f;});return db[_0x44ab('0x9a')]['bulkCreate'](_0x53edfc,{'transaction':_0x41adde});});}else{_0x1088d=0x194;_0x530c06=[];}});})[_0x44ab('0x1f')](function(){if(_0x1088d!==0x194){return db[_0x44ab('0x9a')][_0x44ab('0x9b')]({'where':{'MailAccountId':_0x20a3b7},'order':'priority'})['then'](function(_0x3adcaa){_0x530c06=_0x3adcaa;});}})[_0x44ab('0x59')](function(_0x55333b){_0x1088d=0x1f4;logger['error'](_0x55333b[_0x44ab('0x3a')]);if(_0x55333b[_0x44ab('0x47')]){delete _0x55333b['name'];}_0x530c06=_0x55333b;})['finally'](function(){if(_0x530c06===null){_0x1c3c49[_0x44ab('0x2a')](_0x1088d);}else{if(_0x1088d===0x1f4){_0x1c3c49[_0x44ab('0x2b')](_0x1088d)['send'](_0x530c06);}else{_0x1c3c49[_0x44ab('0x2b')](_0x1088d)[_0x44ab('0x2d')](_0x530c06);}}});};exports[_0x44ab('0x9c')]=function(_0x4ba7cc,_0xa0cfbe,_0x9df4b0){var _0x3dcc9f={};var _0x5151c5={};var _0x5d8184;var _0x575827;return db['MailAccount']['findOne']({'where':{'id':_0x4ba7cc[_0x44ab('0x5b')]['id']}})[_0x44ab('0x1f')](handleEntityNotFound(_0xa0cfbe,null))[_0x44ab('0x1f')](function(_0x205960){if(_0x205960){_0x5d8184=_0x205960;_0x5151c5[_0x44ab('0x4b')]=_['keys'](db[_0x44ab('0x9a')]['rawAttributes']);_0x5151c5[_0x44ab('0x48')]=_[_0x44ab('0x5d')](_0x4ba7cc[_0x44ab('0x48')]);_0x5151c5['filters']=_['intersection'](_0x5151c5[_0x44ab('0x4b')],_0x5151c5[_0x44ab('0x48')]);_0x3dcc9f[_0x44ab('0x4c')]=_[_0x44ab('0x4a')](_0x5151c5[_0x44ab('0x4b')],qs[_0x44ab('0x4d')](_0x4ba7cc[_0x44ab('0x48')][_0x44ab('0x4d')]));_0x3dcc9f['attributes']=_0x3dcc9f[_0x44ab('0x4c')]['length']?_0x3dcc9f['attributes']:_0x5151c5[_0x44ab('0x4b')];_0x3dcc9f[_0x44ab('0x4f')]=qs[_0x44ab('0x50')](_0x4ba7cc[_0x44ab('0x48')][_0x44ab('0x50')]);_0x3dcc9f[_0x44ab('0x51')]=qs[_0x44ab('0x49')](_[_0x44ab('0x52')](_0x4ba7cc['query'],_0x5151c5[_0x44ab('0x49')]));if(_0x4ba7cc[_0x44ab('0x48')]['filter']){_0x3dcc9f[_0x44ab('0x51')]=_[_0x44ab('0x54')](_0x3dcc9f[_0x44ab('0x51')],{'$or':_[_0x44ab('0x42')](_0x3dcc9f[_0x44ab('0x4c')],function(_0x2c0d8c){var _0x4e9c47={};_0x4e9c47[_0x2c0d8c]={'$like':'%'+_0x4ba7cc[_0x44ab('0x48')][_0x44ab('0x53')]+'%'};return _0x4e9c47;})});}_0x3dcc9f=_[_0x44ab('0x54')]({},_0x3dcc9f,_0x4ba7cc[_0x44ab('0x56')]);return _0x5d8184[_0x44ab('0x9c')](_0x3dcc9f);}})['then'](function(_0x15da29){if(_0x15da29){_0x575827=_0x15da29[_0x44ab('0x4e')];if(!_0x4ba7cc[_0x44ab('0x48')][_0x44ab('0x9d')](_0x44ab('0x67'))){_0x3dcc9f[_0x44ab('0x31')]=qs[_0x44ab('0x31')](_0x4ba7cc[_0x44ab('0x48')][_0x44ab('0x31')]);_0x3dcc9f['offset']=qs['offset'](_0x4ba7cc[_0x44ab('0x48')][_0x44ab('0x2e')]);}return _0x5d8184[_0x44ab('0x9c')](_0x3dcc9f);}})[_0x44ab('0x1f')](function(_0xcd77b6){if(_0xcd77b6){return _0xcd77b6?{'count':_0x575827,'rows':_0xcd77b6}:null;}})['then'](respondWithResult(_0xa0cfbe,null))[_0x44ab('0x59')](handleError(_0xa0cfbe,null));};exports['getMessages']=function(_0x4ef197,_0x2ca915,_0x5d7303){var _0xe232a0={'raw':!![],'where':{}};var _0x4223b2={};var _0xf3eb68={'count':0x0,'rows':[]};return db['MailAccount'][_0x44ab('0x66')]({'where':{'id':_0x4ef197[_0x44ab('0x5b')]['id']}})[_0x44ab('0x1f')](handleEntityNotFound(_0x2ca915,null))[_0x44ab('0x1f')](function(_0x578837){if(_0x578837){_0x4223b2[_0x44ab('0x4b')]=_['keys'](db['MailMessage']['rawAttributes']);_0x4223b2['query']=_['keys'](_0x4ef197[_0x44ab('0x48')]);_0x4223b2[_0x44ab('0x49')]=_[_0x44ab('0x4a')](_0x4223b2[_0x44ab('0x4b')],_0x4223b2[_0x44ab('0x48')]);_0xe232a0[_0x44ab('0x4c')]=_['intersection'](_0x4223b2[_0x44ab('0x4b')],qs['fields'](_0x4ef197[_0x44ab('0x48')][_0x44ab('0x4d')]));_0xe232a0[_0x44ab('0x4c')]=_0xe232a0['attributes']['length']?_0xe232a0[_0x44ab('0x4c')]:_0x4223b2['model'];if(!_0x4ef197[_0x44ab('0x48')][_0x44ab('0x9d')](_0x44ab('0x67'))){_0xe232a0['limit']=qs[_0x44ab('0x31')](_0x4ef197[_0x44ab('0x48')]['limit']);_0xe232a0[_0x44ab('0x2e')]=qs[_0x44ab('0x2e')](_0x4ef197[_0x44ab('0x48')]['offset']);}_0xe232a0['order']=qs[_0x44ab('0x50')](_0x4ef197[_0x44ab('0x48')][_0x44ab('0x50')]);_0xe232a0[_0x44ab('0x51')]=qs['filters'](_['pick'](_0x4ef197['query'],_0x4223b2[_0x44ab('0x49')]));_0xe232a0['where'][_0x44ab('0x62')]=_0x578837['id'];if(_0x4ef197[_0x44ab('0x48')]['filter']){_0xe232a0[_0x44ab('0x51')]=_['merge'](_0xe232a0[_0x44ab('0x51')],{'$or':_[_0x44ab('0x42')](_0xe232a0[_0x44ab('0x4c')],function(_0x45a82d){var _0x3e328a={};_0x3e328a[_0x45a82d]={'$like':'%'+_0x4ef197['query'][_0x44ab('0x53')]+'%'};return _0x3e328a;})});}if(_0x4ef197[_0x44ab('0x48')][_0x44ab('0x9e')]){var _0x386ec8=_0x4ef197[_0x44ab('0x48')][_0x44ab('0x9e')][_0x44ab('0x9f')](',');var _0x5594f8={};_0x5594f8[_0x386ec8[0x0]]={'$gte':moment(_0x386ec8[0x1])[_0x44ab('0xa0')]('YYYY-MM-DD\x20HH:mm:ss')};_0xe232a0[_0x44ab('0x51')]=_['merge'](_0xe232a0[_0x44ab('0x51')],_0x5594f8);}_0xe232a0=_[_0x44ab('0x54')]({},_0xe232a0,_0x4ef197[_0x44ab('0x56')]);return db['MailMessage'][_0x44ab('0x30')]({'where':_0xe232a0['where']})[_0x44ab('0x1f')](function(_0x3e7694){_0xf3eb68[_0x44ab('0x30')]=_0x3e7694;if(_0x4ef197['query'][_0x44ab('0x57')]){_0xe232a0[_0x44ab('0x5e')]=[{'all':!![]}];}return db[_0x44ab('0xa1')]['findAll'](_0xe232a0);})[_0x44ab('0x1f')](function(_0x1d1e6a){if(_0x4ef197[_0x44ab('0x48')][_0x44ab('0xa2')]===_0x44ab('0xa3')){for(var _0xba2ea5=0x0;_0xba2ea5<_0x1d1e6a[_0x44ab('0x4e')];_0xba2ea5++){_0x1d1e6a[_0xba2ea5][_0x44ab('0x60')]=juice(_0x1d1e6a[_0xba2ea5]['body']);}}_0xf3eb68[_0x44ab('0x68')]=_0x1d1e6a;return _0xf3eb68;});}})[_0x44ab('0x1f')](respondWithFilteredResult(_0x2ca915,_0xe232a0))[_0x44ab('0x59')](handleError(_0x2ca915,null));};exports[_0x44ab('0x3b')]=function(_0x3aaaeb,_0x2422ec,_0x55f76e){var _0x4cc601,_0x261fa2={},_0xabd60c;if(_0x3aaaeb[_0x44ab('0x60')]['to']){_0xabd60c=_0x3aaaeb[_0x44ab('0x60')]['to']['split'](',')[0x0];}return db[_0x44ab('0x43')]['find']({'where':{'id':_0x3aaaeb[_0x44ab('0x5b')]['id']},'include':[{'model':db[_0x44ab('0xa4')],'as':'List','include':[{'model':db['CmContact'],'as':_0x44ab('0xa5'),'where':{'email':_0xabd60c},'limit':0x1,'order':[[_0x44ab('0xa6'),_0x44ab('0xa7')]]}]},{'model':db[_0x44ab('0x3e')],'as':_0x44ab('0x3f'),'raw':!![]}]})[_0x44ab('0x1f')](handleEntityNotFound(_0x2422ec,null))[_0x44ab('0x1f')](function(_0x3e70af){if(_0x3e70af){_0x4cc601=_0x3e70af;if(_0x3e70af['Smtp']){if(_['isNil'](_0x3aaaeb[_0x44ab('0x60')]['from'])){_0x3aaaeb[_0x44ab('0x60')][_0x44ab('0xa8')]=util[_0x44ab('0xa0')]('%s\x20<%s>',_0x3e70af[_0x44ab('0x47')],_0x3e70af['email']||_0x3e70af[_0x44ab('0x3f')][_0x44ab('0x76')]);}if(_0x3aaaeb[_0x44ab('0x60')][_0x44ab('0xa9')]&&_0x3aaaeb['body'][_0x44ab('0xa9')]['length']){for(var _0x2fb688=0x0;_0x2fb688<_0x3aaaeb['body'][_0x44ab('0xa9')][_0x44ab('0x4e')];_0x2fb688+=0x1){_0x3aaaeb[_0x44ab('0x60')][_0x44ab('0xa9')][_0x2fb688]={'filename':_0x3aaaeb[_0x44ab('0x60')]['attachments'][_0x2fb688][_0x44ab('0x47')],'path':path['join'](config[_0x44ab('0xaa')],'server/files/attachments',_0x3aaaeb[_0x44ab('0x60')]['attachments'][_0x2fb688][_0x44ab('0xab')])};}}var _0x564de3={'tls':{'rejectUnauthorized':![]}};if(_[_0x44ab('0x71')](_0x3e70af[_0x44ab('0x3f')][_0x44ab('0x7d')])){if(_0x3e70af[_0x44ab('0x3f')][_0x44ab('0x7a')]){_0x564de3[_0x44ab('0xac')]={'user':_0x3e70af[_0x44ab('0x3f')][_0x44ab('0x76')],'pass':_0x3e70af['Smtp'][_0x44ab('0x78')]};}_0x564de3[_0x44ab('0x7b')]=_0x3e70af[_0x44ab('0x3f')][_0x44ab('0x7b')];_0x564de3[_0x44ab('0x7c')]=_0x3e70af[_0x44ab('0x3f')][_0x44ab('0x7c')];_0x564de3[_0x44ab('0xad')]=_0x3e70af[_0x44ab('0x3f')][_0x44ab('0xad')];}else{_0x564de3[_0x44ab('0x7d')]=_0x3e70af[_0x44ab('0x3f')][_0x44ab('0x7d')];_0x564de3['auth']={'user':_0x3e70af[_0x44ab('0x3f')]['user'],'pass':_0x3e70af['Smtp'][_0x44ab('0x78')]};}return respondWithRpcPromise('SendMail',_0x44ab('0xae'),{'account':_0x564de3,'message':_0x3aaaeb[_0x44ab('0x60')]});}else{throw new Error(_0x44ab('0xaf'));}}})[_0x44ab('0x1f')](function(_0x59c35c){if(_0x59c35c){_0x261fa2=_0x59c35c;if(_0x4cc601[_0x44ab('0xb0')]){if(_0x4cc601[_0x44ab('0xb0')][_0x44ab('0xa5')][_0x44ab('0x4e')]){return _0x4cc601[_0x44ab('0xb0')]['Contacts'][0x0];}else{return db[_0x44ab('0x8e')]['create'](_[_0x44ab('0x17')](_0x3aaaeb['body'],{'firstName':_0x3aaaeb[_0x44ab('0x60')]['to'],'email':_0x3aaaeb[_0x44ab('0x60')]['to'],'phone':_0x3aaaeb['body']['to'],'ListId':_0x4cc601[_0x44ab('0x70')]}));}}else{throw new Error('List\x20not\x20found');}}})[_0x44ab('0x1f')](function(_0x74d3f0){if(_0x74d3f0){var _0x3327d6={'UserId':_0x3aaaeb[_0x44ab('0x76')]['id'],'ContactId':_0x74d3f0['id'],'MailAccountId':_0x4cc601['id'],'inReplyTo':_0x261fa2[_0x44ab('0xb1')],'to':_0x3aaaeb['body']['from'],'cc':_0x3aaaeb[_0x44ab('0x60')]['cc'],'subject':_0x3aaaeb['body'][_0x44ab('0xb2')],'attach':_0x3aaaeb[_0x44ab('0x60')][_0x44ab('0xb3')],'firstMsgDirection':_0x44ab('0xb4'),'lastMsgAt':moment()[_0x44ab('0xa0')](_0x44ab('0xb5')),'lastMsgDirection':'out','Messages':[_[_0x44ab('0x54')](_0x3aaaeb[_0x44ab('0x60')],{'messageId':_0x261fa2[_0x44ab('0xb1')],'sentAt':moment()['format'](_0x44ab('0xb5')),'read':!![],'MailAccountId':_0x4cc601['id'],'UserId':_0x3aaaeb[_0x44ab('0x76')]['id'],'ContactId':_0x74d3f0['id']})]};if(_0x3aaaeb['body']['Interaction']){_0x3327d6=_[_0x44ab('0x54')](_0x3327d6,_0x3aaaeb[_0x44ab('0x60')][_0x44ab('0xb6')]);}return db[_0x44ab('0x8c')][_0x44ab('0x64')](_0x3327d6,{'include':[{'model':db[_0x44ab('0xa1')],'as':'Messages'}]});}})[_0x44ab('0x1f')](respondWithResult(_0x2422ec,null))[_0x44ab('0x59')](handleError(_0x2422ec,null));};exports[_0x44ab('0xb7')]=function(_0x552223,_0x4b4f21,_0x175380){return db[_0x44ab('0x43')][_0x44ab('0x5f')]({'where':{'id':_0x552223[_0x44ab('0x5b')]['id']},'include':[{'model':db['MailServerOut'],'as':_0x44ab('0x3f'),'raw':!![]}]})[_0x44ab('0x1f')](handleEntityNotFound(_0x4b4f21,null))['then'](function(_0x4cce9b){if(_0x4cce9b&&_0x4cce9b['Smtp']){var _0x26918e={'id':_0x4cce9b['id'],'tls':{'rejectUnauthorized':![]}};if(_0x4cce9b[_0x44ab('0x3f')]['service']){_0x26918e[_0x44ab('0x7d')]=_0x4cce9b[_0x44ab('0x3f')][_0x44ab('0x7d')];}else{_0x26918e[_0x44ab('0x7b')]=_0x4cce9b[_0x44ab('0x3f')]['host'];_0x26918e[_0x44ab('0x7c')]=_0x4cce9b[_0x44ab('0x3f')]['port'];_0x26918e[_0x44ab('0xad')]=_0x4cce9b[_0x44ab('0x3f')][_0x44ab('0xad')];}if(_0x4cce9b[_0x44ab('0x3f')][_0x44ab('0x7a')]){_0x26918e[_0x44ab('0xac')]={'user':_0x4cce9b[_0x44ab('0x3f')][_0x44ab('0x76')],'pass':_0x4cce9b['Smtp'][_0x44ab('0x78')]};}return respondWithRpcPromise(_0x44ab('0xb8'),_0x44ab('0xb7'),{'account':_0x26918e});}})[_0x44ab('0x1f')](respondWithResult(_0x4b4f21,null))['catch'](handleError(_0x4b4f21,null));};exports[_0x44ab('0x37')]=function(_0x4e99b6,_0x407d48){return db['MailAccount']['find']({'where':{'id':_0x4e99b6[_0x44ab('0x5b')]['id']}})[_0x44ab('0x1f')](handleEntityNotFound(_0x407d48,null))[_0x44ab('0x1f')](function(_0x35f79c){if(_0x35f79c&&_0x35f79c[_0x44ab('0x7d')]){throw new db[(_0x44ab('0xb9'))]['ValidationError'](_0x44ab('0xba'));}return _0x35f79c;})['then'](removeEntity(_0x407d48,null))[_0x44ab('0x59')](handleError(_0x407d48,null));};exports[_0x44ab('0xbb')]=function(_0x41b336,_0x346a2e,_0x32cabd){return db['MailAccount'][_0x44ab('0x5f')]({'where':{'id':_0x41b336[_0x44ab('0x5b')]['id']}})[_0x44ab('0x1f')](handleEntityNotFound(_0x346a2e,null))[_0x44ab('0x1f')](function(_0x3ec481){if(_0x3ec481){return _0x3ec481[_0x44ab('0xbb')](_0x41b336['body'][_0x44ab('0x6a')],_[_0x44ab('0xbc')](_0x41b336[_0x44ab('0x60')],['ids','id'])||{})[_0x44ab('0xbd')](function(_0x153e35){for(var _0x568076=0x0;_0x568076<_0x41b336[_0x44ab('0x60')][_0x44ab('0x6a')][_0x44ab('0x4e')];_0x568076+=0x1){socket[_0x44ab('0xbe')](_0x44ab('0xbf'),{'UserId':Number(_0x41b336[_0x44ab('0x60')][_0x44ab('0x6a')][_0x568076]),'MailAccountId':Number(_0x41b336[_0x44ab('0x5b')]['id'])});}return _0x153e35;});}})['then'](respondWithResult(_0x346a2e,null))[_0x44ab('0x59')](handleError(_0x346a2e,null));};exports[_0x44ab('0xc0')]=function(_0x2350fc,_0x35953e,_0x17c29a){return db[_0x44ab('0x43')]['find']({'where':{'id':_0x2350fc[_0x44ab('0x5b')]['id']}})[_0x44ab('0x1f')](handleEntityNotFound(_0x35953e,null))['then'](function(_0xf435c6){if(_0xf435c6){return _0xf435c6[_0x44ab('0xc0')](_0x2350fc[_0x44ab('0x48')][_0x44ab('0x6a')])[_0x44ab('0x1f')](function(){if(_[_0x44ab('0xc1')](_0x2350fc[_0x44ab('0x48')][_0x44ab('0x6a')])){for(var _0xa6126=0x0;_0xa6126<_0x2350fc[_0x44ab('0x48')][_0x44ab('0x6a')][_0x44ab('0x4e')];_0xa6126+=0x1){socket[_0x44ab('0xbe')]('userMailAccount:remove',{'UserId':Number(_0x2350fc[_0x44ab('0x48')][_0x44ab('0x6a')][_0xa6126]),'MailAccountId':Number(_0x2350fc[_0x44ab('0x5b')]['id'])});}}else{socket[_0x44ab('0xbe')]('userMailAccount:remove',{'UserId':Number(_0x2350fc[_0x44ab('0x48')][_0x44ab('0x6a')]),'MailAccountId':Number(_0x2350fc['params']['id'])});}});}})[_0x44ab('0x1f')](respondWithStatusCode(_0x35953e,null))[_0x44ab('0x59')](handleError(_0x35953e,null));};exports[_0x44ab('0xc2')]=function(_0x427b81,_0x183f05,_0x37e8e6){var _0x433e1c={};var _0x16d63d={};var _0x989111;var _0xf8437a;return db['MailAccount'][_0x44ab('0x66')]({'where':{'id':_0x427b81[_0x44ab('0x5b')]['id']}})[_0x44ab('0x1f')](handleEntityNotFound(_0x183f05,null))[_0x44ab('0x1f')](function(_0x28fe0a){if(_0x28fe0a){_0x989111=_0x28fe0a;_0x16d63d[_0x44ab('0x4b')]=_[_0x44ab('0x5d')](db[_0x44ab('0x90')][_0x44ab('0x44')]);_0x16d63d[_0x44ab('0x48')]=_[_0x44ab('0x5d')](_0x427b81['query']);_0x16d63d['filters']=_[_0x44ab('0x4a')](_0x16d63d['model'],_0x16d63d[_0x44ab('0x48')]);_0x433e1c['attributes']=_[_0x44ab('0x4a')](_0x16d63d[_0x44ab('0x4b')],qs[_0x44ab('0x4d')](_0x427b81[_0x44ab('0x48')][_0x44ab('0x4d')]));_0x433e1c[_0x44ab('0x4c')]=_0x433e1c['attributes'][_0x44ab('0x4e')]?_0x433e1c['attributes']:_0x16d63d['model'];_0x433e1c[_0x44ab('0x4f')]=qs['sort'](_0x427b81['query'][_0x44ab('0x50')]);_0x433e1c[_0x44ab('0x51')]=qs[_0x44ab('0x49')](_['pick'](_0x427b81[_0x44ab('0x48')],_0x16d63d[_0x44ab('0x49')]));if(_0x427b81['query']['filter']){_0x433e1c[_0x44ab('0x51')]=_['merge'](_0x433e1c[_0x44ab('0x51')],{'$or':_[_0x44ab('0x42')](_0x433e1c['attributes'],function(_0x8ed3d1){var _0x404d97={};_0x404d97[_0x8ed3d1]={'$like':'%'+_0x427b81[_0x44ab('0x48')][_0x44ab('0x53')]+'%'};return _0x404d97;})});}_0x433e1c=_[_0x44ab('0x54')]({},_0x433e1c,_0x427b81['options']);return _0x989111['getAgents'](_0x433e1c);}})[_0x44ab('0x1f')](function(_0x149875){if(_0x149875){_0xf8437a=_0x149875[_0x44ab('0x4e')];if(!_0x427b81[_0x44ab('0x48')][_0x44ab('0x9d')]('nolimit')){_0x433e1c['limit']=qs[_0x44ab('0x31')](_0x427b81['query']['limit']);_0x433e1c[_0x44ab('0x2e')]=qs[_0x44ab('0x2e')](_0x427b81[_0x44ab('0x48')]['offset']);}return _0x989111['getAgents'](_0x433e1c);}})['then'](function(_0x57852c){if(_0x57852c){return _0x57852c?{'count':_0xf8437a,'rows':_0x57852c}:null;}})[_0x44ab('0x1f')](respondWithResult(_0x183f05,null))[_0x44ab('0x59')](handleError(_0x183f05,null));};