Built motion from commit d1eab355.|2.6.28
[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 _0xc360=['getImap','addImap','setImap','getSmtp','removeSmtp','setSmtp','addInteraction','omit','getInteractions','MailInteraction','Contact','Owner','fullname','internal','Tags','color','tag','addApplications','sequelize','transaction','Transaction','ISOLATION_LEVELS','READ_COMMITTED','MailApplication','bulkCreate','findAndCountAll','priority','finally','send','getApplications','getMessages','MailMessage','$gte','split','format','YYYY-MM-DD\x20HH:mm:ss','inlineCss','true','List','CmContact','updatedAt','DESC','CloudProvider','Smtp\x20configuration\x20not\x20found','from','attachments','join','root','server/files/attachments','getSmtpOptions','SendMail','Contacts','defaults','messageId','subject','out','Interaction','Messages','verifySmtp','Sequelize','ValidationError','You\x20can\x27t\x20remove\x20the\x20mail\x20service\x20account','addAgents','spread','emit','userMailAccount:save','removeAgents','isArray','userMailAccount:remove','User','getAgents','moment','bluebird','path','lodash','juice','../../components/parsers/qs','../../config/logger','redis','./mailAccount.socket','register','jayson/promise','client','http','request','then','info','request\x20sent','MailAccount,\x20%s,\x20%s,\x20%s','error','code','MailAccount,\x20%s,\x20%s','message','catch','sendStatus','status','json','offset','undefined','limit','count','Content-Range','update','destroy','MailAccounts','end','stack','name','imap.gmail.com','yahoo','imap.mail.yahoo.com','hotmail','imap-mail.outlook.com','outlook365','outlook.office365.com','Unknown\x20email\x20service\x20provider','gmail','smtp.gmail.com','smtp.mail.yahoo.com','smtp.office365.com','user','password','pass','modernAuthentication','CloudProviderId','host','port','service','authentication','username','Imap','Smtp','index','MailServerIn','Pause','mandatoryDispositionPause','MailAccount','rawAttributes','fieldName','type','model','map','query','intersection','fields','attributes','length','hasOwnProperty','nolimit','sort','where','filters','filter','merge','VIRTUAL','options','includeAll','include','findAll','rows','show','params','MailServerOut','keys','body','provider','secure','Mail\x20Account\x20not\x20found','describe','addDisposition','find','MailAccountId','Disposition','create','getDispositions','findOne','pick','removeDispositions','ids','addAnswer','CannedAnswer','getAnswers','order','removeAnswers','key','email','ListId','isNil','active','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','get','UserProfileSection','userProfileId','autoAssociation','UserProfileResource'];(function(_0x152ef7,_0x221f4c){var _0x33b535=function(_0x4d9ab7){while(--_0x4d9ab7){_0x152ef7['push'](_0x152ef7['shift']());}};_0x33b535(++_0x221f4c);}(_0xc360,0x1cf));var _0x0c36=function(_0x405a63,_0x4f770c){_0x405a63=_0x405a63-0x0;var _0x2802b5=_0xc360[_0x405a63];return _0x2802b5;};'use strict';var moment=require(_0x0c36('0x0'));var BPromise=require(_0x0c36('0x1'));var util=require('util');var path=require(_0x0c36('0x2'));var _=require(_0x0c36('0x3'));var juice=require(_0x0c36('0x4'));var Redis=require('ioredis');var qs=require(_0x0c36('0x5'));var logger=require(_0x0c36('0x6'))('api');var config=require('../../config/environment');var db=require('../../mysqldb')['db'];config[_0x0c36('0x7')]=_['defaults'](config['redis'],{'host':'localhost','port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x0c36('0x7')]));require(_0x0c36('0x8'))[_0x0c36('0x9')](socket);var jayson=require(_0x0c36('0xa'));var client=jayson[_0x0c36('0xb')][_0x0c36('0xc')]({'port':0x232b});function respondWithRpcPromise(_0x54589a,_0x4912c0,_0x3a4653,_0x3cc8ac){return new BPromise(function(_0xc2e9be,_0x36275d){var _0x33de0d=_0x3cc8ac||client;return _0x33de0d[_0x0c36('0xd')](_0x54589a,_0x3a4653)[_0x0c36('0xe')](function(_0x1d3492){logger[_0x0c36('0xf')]('MailAccount,\x20%s,\x20%s',_0x4912c0,_0x0c36('0x10'));logger['debug'](_0x0c36('0x11'),_0x4912c0,_0x0c36('0x10'),JSON['stringify'](_0x1d3492));if(_0x1d3492['error']){if(_0x1d3492[_0x0c36('0x12')][_0x0c36('0x13')]===0x1f4){logger['error'](_0x0c36('0x14'),_0x4912c0,_0x1d3492[_0x0c36('0x12')][_0x0c36('0x15')]);return _0x36275d(_0x1d3492[_0x0c36('0x12')][_0x0c36('0x15')]);}logger[_0x0c36('0x12')](_0x0c36('0x14'),_0x4912c0,_0x1d3492[_0x0c36('0x12')][_0x0c36('0x15')]);return _0xc2e9be(_0x1d3492['error'][_0x0c36('0x15')]);}else{logger[_0x0c36('0xf')](_0x0c36('0x14'),_0x4912c0,_0x0c36('0x10'));_0xc2e9be(_0x1d3492['result'][_0x0c36('0x15')]);}})[_0x0c36('0x16')](function(_0x2986fc){logger[_0x0c36('0x12')]('MailAccount,\x20%s,\x20%s',_0x4912c0,_0x2986fc);_0x36275d(_0x2986fc);});});}function respondWithStatusCode(_0x4a09b5,_0x59bf60){_0x59bf60=_0x59bf60||0xcc;return function(_0x3ecac4){if(_0x3ecac4){return _0x4a09b5[_0x0c36('0x17')](_0x59bf60);}return _0x4a09b5[_0x0c36('0x18')](_0x59bf60)['end']();};}function respondWithResult(_0x2268df,_0x2fa9dc){_0x2fa9dc=_0x2fa9dc||0xc8;return function(_0x45c2a4){if(_0x45c2a4){return _0x2268df[_0x0c36('0x18')](_0x2fa9dc)[_0x0c36('0x19')](_0x45c2a4);}};}function respondWithFilteredResult(_0x4ebda5,_0x481601){return function(_0x2bda3a){if(_0x2bda3a){var _0x48f250=typeof _0x481601[_0x0c36('0x1a')]===_0x0c36('0x1b')&&typeof _0x481601[_0x0c36('0x1c')]==='undefined';var _0x864534=_0x2bda3a[_0x0c36('0x1d')];var _0x51b50f=_0x48f250?0x0:_0x481601[_0x0c36('0x1a')];var _0x37dff4=_0x48f250?_0x2bda3a['count']:_0x481601[_0x0c36('0x1a')]+_0x481601['limit'];var _0x27657f;if(_0x37dff4>=_0x864534){_0x37dff4=_0x864534;_0x27657f=0xc8;}else{_0x27657f=0xce;}_0x4ebda5[_0x0c36('0x18')](_0x27657f);return _0x4ebda5['set'](_0x0c36('0x1e'),_0x51b50f+'-'+_0x37dff4+'/'+_0x864534)[_0x0c36('0x19')](_0x2bda3a);}return null;};}function saveUpdates(_0x3b59bb){return function(_0x4d29c1){if(_0x4d29c1){return _0x4d29c1[_0x0c36('0x1f')](_0x3b59bb)[_0x0c36('0xe')](function(_0x1c3d37){return _0x1c3d37;});}return null;};}function removeEntity(_0x473ee4){return function(_0x2f42ac){if(_0x2f42ac){return _0x2f42ac[_0x0c36('0x20')]()[_0x0c36('0xe')](function(){var _0x278655=_0x2f42ac['get']({'plain':!![]});var _0x19232d=_0x0c36('0x21');return db['UserProfileResource'][_0x0c36('0x20')]({'where':{'type':_0x19232d,'resourceId':_0x278655['id']}})['then'](function(){return _0x2f42ac;});})[_0x0c36('0xe')](function(){_0x473ee4[_0x0c36('0x18')](0xcc)[_0x0c36('0x22')]();});}};}function handleEntityNotFound(_0xa52de1){return function(_0x489b74){if(!_0x489b74){_0xa52de1[_0x0c36('0x17')](0x194);}return _0x489b74;};}function handleError(_0x55f69d,_0x3e1ec9){_0x3e1ec9=_0x3e1ec9||0x1f4;return function(_0x417d13){logger[_0x0c36('0x12')](_0x417d13[_0x0c36('0x23')]);if(_0x417d13[_0x0c36('0x24')]){delete _0x417d13[_0x0c36('0x24')];}_0x55f69d[_0x0c36('0x18')](_0x3e1ec9)['send'](_0x417d13);};}function getImapHost(_0x22441f){switch(_0x22441f){case'gmail':return _0x0c36('0x25');case _0x0c36('0x26'):return _0x0c36('0x27');case _0x0c36('0x28'):return _0x0c36('0x29');case _0x0c36('0x2a'):return _0x0c36('0x2b');}throw new Error(_0x0c36('0x2c'),_0x22441f);}function getSmtpHost(_0x3c2388){switch(_0x3c2388){case _0x0c36('0x2d'):return _0x0c36('0x2e');case _0x0c36('0x26'):return _0x0c36('0x2f');case _0x0c36('0x28'):return'smtp-mail.outlook.com';case'outlook365':return _0x0c36('0x30');}throw new Error('Unknown\x20email\x20service\x20provider',_0x3c2388);}function getAuthenticationOptions(_0xa40dba,_0x5415a4){var _0x5a31ee={};var _0x55568f={};if(_0xa40dba){_0x5a31ee[_0x0c36('0x31')]=_0x55568f[_0x0c36('0x31')]=_0x5415a4['username'];_0x5a31ee[_0x0c36('0x32')]=_0x55568f[_0x0c36('0x33')]=_0x5415a4[_0x0c36('0x32')];if(_0x5415a4[_0x0c36('0x34')]){_0x5a31ee[_0x0c36('0x34')]=_0x55568f[_0x0c36('0x34')]=!![];_0x5a31ee[_0x0c36('0x35')]=_0x55568f[_0x0c36('0x35')]=_0x5415a4[_0x0c36('0x35')];_0x5a31ee[_0x0c36('0x32')]=_0x55568f['pass']=null;}else{_0x5a31ee[_0x0c36('0x35')]=_0x55568f[_0x0c36('0x35')]=null;}_0x5a31ee[_0x0c36('0x36')]=getImapHost(_0xa40dba);_0x5a31ee[_0x0c36('0x37')]=0x3e1;_0x55568f[_0x0c36('0x36')]=getSmtpHost(_0xa40dba);_0x55568f[_0x0c36('0x37')]=0x24b;_0x55568f['secure']=![];_0x5a31ee[_0x0c36('0x38')]=_0x55568f[_0x0c36('0x38')]=null;}else{if(_0x5415a4[_0x0c36('0x39')]){_0x5a31ee[_0x0c36('0x31')]=_0x55568f['user']=_0x5415a4[_0x0c36('0x3a')];_0x5a31ee[_0x0c36('0x32')]=_0x55568f[_0x0c36('0x33')]=_0x5415a4[_0x0c36('0x32')];}else{_0x5a31ee[_0x0c36('0x39')]=_0x55568f['authentication']=![];_0x5a31ee['user']=_0x55568f[_0x0c36('0x31')]=null;_0x5a31ee[_0x0c36('0x32')]=_0x55568f['pass']=null;}_0x5a31ee[_0x0c36('0x36')]=_0x5415a4['Imap'][_0x0c36('0x36')];_0x5a31ee['port']=_0x5415a4[_0x0c36('0x3b')]['port'];_0x55568f[_0x0c36('0x36')]=_0x5415a4[_0x0c36('0x3c')][_0x0c36('0x36')];_0x55568f[_0x0c36('0x37')]=_0x5415a4['Smtp'][_0x0c36('0x37')];}return{'Imap':_0x5a31ee,'Smtp':_0x55568f};}exports[_0x0c36('0x3d')]=function(_0x25004b,_0x240bf2){var _0x284a05={'include':[{'model':db[_0x0c36('0x3e')],'as':_0x0c36('0x3b')},{'model':db['MailServerOut'],'as':_0x0c36('0x3c')},{'model':db[_0x0c36('0x3f')],'as':_0x0c36('0x40')}]},_0x1ad58b={},_0x51be46={'count':0x0,'rows':[]};var _0x360acd=_['map'](db[_0x0c36('0x41')][_0x0c36('0x42')],function(_0x45464f){return{'name':_0x45464f[_0x0c36('0x43')],'type':_0x45464f[_0x0c36('0x44')]['key']};});_0x1ad58b[_0x0c36('0x45')]=_[_0x0c36('0x46')](_0x360acd,'name');_0x1ad58b['query']=_['keys'](_0x25004b[_0x0c36('0x47')]);_0x1ad58b['filters']=_['intersection'](_0x1ad58b[_0x0c36('0x45')],_0x1ad58b[_0x0c36('0x47')]);_0x284a05['attributes']=_[_0x0c36('0x48')](_0x1ad58b[_0x0c36('0x45')],qs[_0x0c36('0x49')](_0x25004b[_0x0c36('0x47')][_0x0c36('0x49')]));_0x284a05[_0x0c36('0x4a')]=_0x284a05[_0x0c36('0x4a')][_0x0c36('0x4b')]?_0x284a05[_0x0c36('0x4a')]:_0x1ad58b['model'];if(!_0x25004b['query'][_0x0c36('0x4c')](_0x0c36('0x4d'))){_0x284a05[_0x0c36('0x1c')]=qs[_0x0c36('0x1c')](_0x25004b[_0x0c36('0x47')][_0x0c36('0x1c')]);_0x284a05['offset']=qs[_0x0c36('0x1a')](_0x25004b[_0x0c36('0x47')]['offset']);}_0x284a05['order']=qs[_0x0c36('0x4e')](_0x25004b[_0x0c36('0x47')]['sort']);_0x284a05[_0x0c36('0x4f')]=qs[_0x0c36('0x50')](_['pick'](_0x25004b[_0x0c36('0x47')],_0x1ad58b[_0x0c36('0x50')]),_0x360acd);if(_0x25004b['query'][_0x0c36('0x51')]){_0x284a05[_0x0c36('0x4f')]=_[_0x0c36('0x52')](_0x284a05[_0x0c36('0x4f')],{'$or':_['map'](_0x360acd,function(_0x1a9533){if(_0x1a9533[_0x0c36('0x44')]!==_0x0c36('0x53')){var _0x922af3={};_0x922af3[_0x1a9533[_0x0c36('0x24')]]={'$like':'%'+_0x25004b[_0x0c36('0x47')][_0x0c36('0x51')]+'%'};return _0x922af3;}})});}_0x284a05=_[_0x0c36('0x52')]({},_0x284a05,_0x25004b[_0x0c36('0x54')]);var _0x3d70b1={'where':_0x284a05['where']};return db['MailAccount'][_0x0c36('0x1d')](_0x3d70b1)[_0x0c36('0xe')](function(_0x32cf7f){_0x51be46['count']=_0x32cf7f;if(_0x25004b[_0x0c36('0x47')][_0x0c36('0x55')]){_0x284a05[_0x0c36('0x56')]=[{'all':!![]}];}return db[_0x0c36('0x41')][_0x0c36('0x57')](_0x284a05);})[_0x0c36('0xe')](function(_0x562bbe){_0x51be46[_0x0c36('0x58')]=_0x562bbe;return _0x51be46;})['then'](respondWithFilteredResult(_0x240bf2,_0x284a05))['catch'](handleError(_0x240bf2,null));};exports[_0x0c36('0x59')]=function(_0x364d3a,_0x1a4f43){var _0xe870c1={'raw':![],'where':{'id':_0x364d3a[_0x0c36('0x5a')]['id']},'include':[{'model':db[_0x0c36('0x3e')],'as':_0x0c36('0x3b')},{'model':db[_0x0c36('0x5b')],'as':_0x0c36('0x3c')},{'model':db['Pause'],'as':'mandatoryDispositionPause'}]},_0x14b47c={};_0x14b47c[_0x0c36('0x45')]=_[_0x0c36('0x5c')](db[_0x0c36('0x41')][_0x0c36('0x42')]);_0x14b47c[_0x0c36('0x47')]=_[_0x0c36('0x5c')](_0x364d3a[_0x0c36('0x47')]);_0x14b47c['filters']=_[_0x0c36('0x48')](_0x14b47c[_0x0c36('0x45')],_0x14b47c[_0x0c36('0x47')]);_0xe870c1[_0x0c36('0x4a')]=_[_0x0c36('0x48')](_0x14b47c['model'],qs[_0x0c36('0x49')](_0x364d3a['query'][_0x0c36('0x49')]));_0xe870c1[_0x0c36('0x4a')]=_0xe870c1[_0x0c36('0x4a')]['length']?_0xe870c1[_0x0c36('0x4a')]:_0x14b47c[_0x0c36('0x45')];if(_0x364d3a[_0x0c36('0x47')][_0x0c36('0x55')]){_0xe870c1[_0x0c36('0x56')]=[{'all':!![]}];}_0xe870c1=_[_0x0c36('0x52')]({},_0xe870c1,_0x364d3a[_0x0c36('0x54')]);return db[_0x0c36('0x41')]['find'](_0xe870c1)[_0x0c36('0xe')](handleEntityNotFound(_0x1a4f43,null))[_0x0c36('0xe')](respondWithResult(_0x1a4f43,null))['catch'](handleError(_0x1a4f43,null));};exports['update']=function(_0x442a92,_0x300ce2){if(_0x442a92[_0x0c36('0x5d')]['id']){delete _0x442a92[_0x0c36('0x5d')]['id'];}var _0x5d9d07=_0x442a92[_0x0c36('0x5d')][_0x0c36('0x5e')]==='custom'?null:_0x442a92[_0x0c36('0x5d')][_0x0c36('0x5e')];var _0x1ffb78=_0x442a92[_0x0c36('0x5d')][_0x0c36('0x3b')]||{};var _0x2d52ca=_0x442a92['body'][_0x0c36('0x3c')]||{};if(_0x5d9d07){_0x1ffb78[_0x0c36('0x36')]=getImapHost(_0x5d9d07);_0x1ffb78[_0x0c36('0x37')]=0x3e1;_0x2d52ca['host']=getSmtpHost(_0x5d9d07);_0x2d52ca[_0x0c36('0x37')]=0x24b;_0x2d52ca[_0x0c36('0x5f')]=![];}if(_0x2d52ca[_0x0c36('0x34')]){_0x2d52ca[_0x0c36('0x5f')]=![];}else{_0x2d52ca['CloudProviderId']=null;}if(!_0x1ffb78[_0x0c36('0x34')])_0x1ffb78[_0x0c36('0x35')]=null;_0x442a92[_0x0c36('0x5d')][_0x0c36('0x3b')]=_0x1ffb78;_0x442a92[_0x0c36('0x5d')]['Smtp']=_0x2d52ca;return db[_0x0c36('0x41')]['find']({'where':{'id':_0x442a92[_0x0c36('0x5a')]['id']},'include':[{'model':db['MailServerIn'],'as':_0x0c36('0x3b')},{'model':db[_0x0c36('0x5b')],'as':'Smtp'},{'model':db[_0x0c36('0x3f')],'as':'mandatoryDispositionPause'}]})[_0x0c36('0xe')](handleEntityNotFound(_0x300ce2,null))[_0x0c36('0xe')](function(_0x5b025b){if(!_0x5b025b)throw new Error(_0x0c36('0x60'));if(_0x5b025b[_0x0c36('0x38')])delete _0x442a92[_0x0c36('0x5d')][_0x0c36('0x3b')];return _0x5b025b;})[_0x0c36('0xe')](saveUpdates(_0x442a92[_0x0c36('0x5d')],null))[_0x0c36('0xe')](function(_0x33608e){if(!_0x442a92[_0x0c36('0x5d')][_0x0c36('0x3b')])return _0x33608e;return db['MailServerIn'][_0x0c36('0x1f')](_0x442a92[_0x0c36('0x5d')][_0x0c36('0x3b')],{'where':{'MailAccountId':_0x33608e['id']}})[_0x0c36('0xe')](function(){return _0x33608e;});})[_0x0c36('0xe')](function(_0x48b0fb){if(!_0x442a92[_0x0c36('0x5d')][_0x0c36('0x3c')])return _0x48b0fb;return db['MailServerOut'][_0x0c36('0x1f')](_0x442a92[_0x0c36('0x5d')]['Smtp'],{'where':{'MailAccountId':_0x48b0fb['id']}})[_0x0c36('0xe')](function(){return _0x48b0fb;});})['then'](respondWithResult(_0x300ce2,null))['catch'](handleError(_0x300ce2,null));};exports['describe']=function(_0x1cf887,_0x1a1830){return db['MailAccount'][_0x0c36('0x61')]()['then'](respondWithResult(_0x1a1830,null))[_0x0c36('0x16')](handleError(_0x1a1830,null));};exports[_0x0c36('0x62')]=function(_0x1b9573,_0x23aca4){if(_0x1b9573[_0x0c36('0x5d')]['id']){delete _0x1b9573[_0x0c36('0x5d')]['id'];}return db[_0x0c36('0x41')][_0x0c36('0x63')]({'where':{'id':_0x1b9573[_0x0c36('0x5a')]['id']}})[_0x0c36('0xe')](handleEntityNotFound(_0x23aca4,null))[_0x0c36('0xe')](function(_0x5b29ae){if(_0x5b29ae){_0x1b9573[_0x0c36('0x5d')][_0x0c36('0x64')]=_0x5b29ae['id'];return db[_0x0c36('0x65')][_0x0c36('0x66')](_0x1b9573['body']);}})[_0x0c36('0xe')](respondWithResult(_0x23aca4,null))[_0x0c36('0x16')](handleError(_0x23aca4,null));};exports[_0x0c36('0x67')]=function(_0x180ba3,_0x585780){var _0x3a98b9={'raw':![],'where':{}};var _0x160ce7={};var _0x16dcfe={'count':0x0,'rows':[]};return db[_0x0c36('0x41')][_0x0c36('0x68')]({'where':{'id':_0x180ba3['params']['id']}})[_0x0c36('0xe')](handleEntityNotFound(_0x585780,null))['then'](function(_0x58e589){if(_0x58e589){_0x160ce7[_0x0c36('0x45')]=_['keys'](db['Disposition'][_0x0c36('0x42')]);_0x160ce7[_0x0c36('0x47')]=_[_0x0c36('0x5c')](_0x180ba3[_0x0c36('0x47')]);_0x160ce7[_0x0c36('0x50')]=_['intersection'](_0x160ce7['model'],_0x160ce7[_0x0c36('0x47')]);_0x3a98b9[_0x0c36('0x4a')]=_[_0x0c36('0x48')](_0x160ce7[_0x0c36('0x45')],qs[_0x0c36('0x49')](_0x180ba3[_0x0c36('0x47')][_0x0c36('0x49')]));_0x3a98b9[_0x0c36('0x4a')]=_0x3a98b9[_0x0c36('0x4a')][_0x0c36('0x4b')]?_0x3a98b9['attributes']:_0x160ce7[_0x0c36('0x45')];if(!_0x180ba3[_0x0c36('0x47')][_0x0c36('0x4c')]('nolimit')){_0x3a98b9[_0x0c36('0x1c')]=qs[_0x0c36('0x1c')](_0x180ba3[_0x0c36('0x47')]['limit']);_0x3a98b9[_0x0c36('0x1a')]=qs['offset'](_0x180ba3[_0x0c36('0x47')][_0x0c36('0x1a')]);}_0x3a98b9['order']=qs[_0x0c36('0x4e')](_0x180ba3[_0x0c36('0x47')]['sort']);_0x3a98b9[_0x0c36('0x4f')]=qs[_0x0c36('0x50')](_[_0x0c36('0x69')](_0x180ba3[_0x0c36('0x47')],_0x160ce7['filters']));_0x3a98b9['where'][_0x0c36('0x64')]=_0x58e589['id'];if(_0x180ba3[_0x0c36('0x47')]['filter']){_0x3a98b9[_0x0c36('0x4f')]=_[_0x0c36('0x52')](_0x3a98b9[_0x0c36('0x4f')],{'$or':_[_0x0c36('0x46')](_0x3a98b9[_0x0c36('0x4a')],function(_0x213e56){var _0x1edb1c={};_0x1edb1c[_0x213e56]={'$like':'%'+_0x180ba3[_0x0c36('0x47')][_0x0c36('0x51')]+'%'};return _0x1edb1c;})});}_0x3a98b9=_[_0x0c36('0x52')]({},_0x3a98b9,_0x180ba3[_0x0c36('0x54')]);return db['Disposition']['count']({'where':_0x3a98b9[_0x0c36('0x4f')]})[_0x0c36('0xe')](function(_0x2b91f3){_0x16dcfe[_0x0c36('0x1d')]=_0x2b91f3;if(_0x180ba3[_0x0c36('0x47')][_0x0c36('0x55')]){_0x3a98b9[_0x0c36('0x56')]=[{'all':!![]}];}return db['Disposition'][_0x0c36('0x57')](_0x3a98b9);})[_0x0c36('0xe')](function(_0x4abb75){_0x16dcfe[_0x0c36('0x58')]=_0x4abb75;return _0x16dcfe;});}})[_0x0c36('0xe')](respondWithFilteredResult(_0x585780,_0x3a98b9))[_0x0c36('0x16')](handleError(_0x585780,null));};exports['removeDispositions']=function(_0x70443e,_0x34166a){return db[_0x0c36('0x41')][_0x0c36('0x63')]({'where':{'id':_0x70443e[_0x0c36('0x5a')]['id']}})[_0x0c36('0xe')](handleEntityNotFound(_0x34166a,null))[_0x0c36('0xe')](function(_0x434464){if(_0x434464){return _0x434464[_0x0c36('0x6a')](_0x70443e[_0x0c36('0x47')][_0x0c36('0x6b')]);}})[_0x0c36('0xe')](respondWithStatusCode(_0x34166a,null))[_0x0c36('0x16')](handleError(_0x34166a,null));};exports[_0x0c36('0x6c')]=function(_0x4d452c,_0x2a62e7){if(_0x4d452c[_0x0c36('0x5d')]['id']){delete _0x4d452c[_0x0c36('0x5d')]['id'];}return db[_0x0c36('0x41')][_0x0c36('0x63')]({'where':{'id':_0x4d452c[_0x0c36('0x5a')]['id']}})[_0x0c36('0xe')](handleEntityNotFound(_0x2a62e7,null))[_0x0c36('0xe')](function(_0x1d0a1b){if(_0x1d0a1b){_0x4d452c[_0x0c36('0x5d')][_0x0c36('0x64')]=_0x1d0a1b['id'];return db[_0x0c36('0x6d')]['create'](_0x4d452c[_0x0c36('0x5d')]);}})[_0x0c36('0xe')](respondWithResult(_0x2a62e7,null))['catch'](handleError(_0x2a62e7,null));};exports[_0x0c36('0x6e')]=function(_0x45ed7f,_0x397ef8){var _0x4a3a73={'raw':![],'where':{}};var _0x366a22={};var _0x4cf0bb={'count':0x0,'rows':[]};return db[_0x0c36('0x41')][_0x0c36('0x68')]({'where':{'id':_0x45ed7f['params']['id']}})[_0x0c36('0xe')](handleEntityNotFound(_0x397ef8,null))['then'](function(_0x30a944){if(_0x30a944){_0x366a22[_0x0c36('0x45')]=_[_0x0c36('0x5c')](db[_0x0c36('0x6d')][_0x0c36('0x42')]);_0x366a22[_0x0c36('0x47')]=_['keys'](_0x45ed7f[_0x0c36('0x47')]);_0x366a22[_0x0c36('0x50')]=_[_0x0c36('0x48')](_0x366a22[_0x0c36('0x45')],_0x366a22[_0x0c36('0x47')]);_0x4a3a73[_0x0c36('0x4a')]=_[_0x0c36('0x48')](_0x366a22['model'],qs['fields'](_0x45ed7f[_0x0c36('0x47')][_0x0c36('0x49')]));_0x4a3a73[_0x0c36('0x4a')]=_0x4a3a73['attributes']['length']?_0x4a3a73[_0x0c36('0x4a')]:_0x366a22[_0x0c36('0x45')];if(!_0x45ed7f['query']['hasOwnProperty'](_0x0c36('0x4d'))){_0x4a3a73[_0x0c36('0x1c')]=qs['limit'](_0x45ed7f['query']['limit']);_0x4a3a73[_0x0c36('0x1a')]=qs[_0x0c36('0x1a')](_0x45ed7f[_0x0c36('0x47')][_0x0c36('0x1a')]);}_0x4a3a73[_0x0c36('0x6f')]=qs[_0x0c36('0x4e')](_0x45ed7f['query'][_0x0c36('0x4e')]);_0x4a3a73[_0x0c36('0x4f')]=qs[_0x0c36('0x50')](_[_0x0c36('0x69')](_0x45ed7f[_0x0c36('0x47')],_0x366a22[_0x0c36('0x50')]));_0x4a3a73['where']['MailAccountId']=_0x30a944['id'];if(_0x45ed7f[_0x0c36('0x47')][_0x0c36('0x51')]){_0x4a3a73['where']=_[_0x0c36('0x52')](_0x4a3a73['where'],{'$or':_[_0x0c36('0x46')](_0x4a3a73[_0x0c36('0x4a')],function(_0x4e271c){var _0x21f164={};_0x21f164[_0x4e271c]={'$like':'%'+_0x45ed7f[_0x0c36('0x47')][_0x0c36('0x51')]+'%'};return _0x21f164;})});}_0x4a3a73=_['merge']({},_0x4a3a73,_0x45ed7f[_0x0c36('0x54')]);return db[_0x0c36('0x6d')][_0x0c36('0x1d')]({'where':_0x4a3a73['where']})['then'](function(_0x182974){_0x4cf0bb['count']=_0x182974;if(_0x45ed7f[_0x0c36('0x47')][_0x0c36('0x55')]){_0x4a3a73[_0x0c36('0x56')]=[{'all':!![]}];}return db[_0x0c36('0x6d')][_0x0c36('0x57')](_0x4a3a73);})[_0x0c36('0xe')](function(_0x18f5f7){_0x4cf0bb[_0x0c36('0x58')]=_0x18f5f7;return _0x4cf0bb;});}})[_0x0c36('0xe')](respondWithFilteredResult(_0x397ef8,_0x4a3a73))['catch'](handleError(_0x397ef8,null));};exports[_0x0c36('0x70')]=function(_0x1485c2,_0x1cae24){return db[_0x0c36('0x41')][_0x0c36('0x63')]({'where':{'id':_0x1485c2['params']['id']}})[_0x0c36('0xe')](handleEntityNotFound(_0x1cae24,null))[_0x0c36('0xe')](function(_0x4d1934){if(_0x4d1934){return _0x4d1934[_0x0c36('0x70')](_0x1485c2[_0x0c36('0x47')][_0x0c36('0x6b')]);}})[_0x0c36('0xe')](respondWithStatusCode(_0x1cae24,null))[_0x0c36('0x16')](handleError(_0x1cae24,null));};exports[_0x0c36('0x66')]=function(_0x312116,_0x27f5ba){var _0x20a385={'name':_0x312116[_0x0c36('0x5d')][_0x0c36('0x24')],'key':_0x312116[_0x0c36('0x5d')][_0x0c36('0x71')],'provider':_0x312116['body'][_0x0c36('0x5e')]==='custom'?null:_0x312116['body'][_0x0c36('0x5e')],'email':_0x312116[_0x0c36('0x5d')][_0x0c36('0x72')],'ListId':_0x312116[_0x0c36('0x5d')][_0x0c36('0x73')],'active':!_[_0x0c36('0x74')](_0x312116['body'][_0x0c36('0x75')])?_0x312116['body'][_0x0c36('0x75')]:!![],'description':_0x312116[_0x0c36('0x5d')]['description']||null};var _0x184674=getAuthenticationOptions(_0x20a385[_0x0c36('0x5e')],_0x312116[_0x0c36('0x5d')]);_0x20a385[_0x0c36('0x3b')]=_0x184674[_0x0c36('0x3b')];_0x20a385[_0x0c36('0x3c')]=_0x184674[_0x0c36('0x3c')];return db[_0x0c36('0x41')][_0x0c36('0x66')](_0x20a385,{'include':[{'model':db[_0x0c36('0x5b')],'as':_0x0c36('0x3c')},{'model':db[_0x0c36('0x3e')],'as':_0x0c36('0x3b')}]})['then'](function(_0xbb4932){var _0x31f24f=_0x312116[_0x0c36('0x31')]['get']({'plain':!![]});if(!_0x31f24f)throw new Error(_0x0c36('0x76'));if(_0x31f24f[_0x0c36('0x77')]==='user'){var _0x3cc4d5=_0xbb4932[_0x0c36('0x78')]({'plain':!![]});return db[_0x0c36('0x79')][_0x0c36('0x63')]({'where':{'name':_0x0c36('0x21'),'userProfileId':_0x31f24f[_0x0c36('0x7a')]},'raw':!![]})[_0x0c36('0xe')](function(_0x2a92f5){if(_0x2a92f5&&_0x2a92f5[_0x0c36('0x7b')]===0x0){return db[_0x0c36('0x7c')][_0x0c36('0x66')]({'name':_0x3cc4d5['name'],'resourceId':_0x3cc4d5['id'],'type':_0x2a92f5[_0x0c36('0x24')],'sectionId':_0x2a92f5['id']},{})[_0x0c36('0xe')](function(){return _0xbb4932;});}else{return _0xbb4932;}})[_0x0c36('0x16')](function(_0x582fee){logger[_0x0c36('0x12')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x582fee);throw _0x582fee;});}return _0xbb4932;})['then'](respondWithResult(_0x27f5ba,0xc9))[_0x0c36('0x16')](handleError(_0x27f5ba,null));};exports['getImap']=function(_0x2aeffa,_0x4dda55){return db[_0x0c36('0x41')][_0x0c36('0x68')]({'where':{'id':_0x2aeffa[_0x0c36('0x5a')]['id']}})[_0x0c36('0xe')](handleEntityNotFound(_0x4dda55,null))[_0x0c36('0xe')](function(_0x128ea8){if(_0x128ea8){return _0x128ea8[_0x0c36('0x7d')]();}return null;})[_0x0c36('0xe')](respondWithResult(_0x4dda55,null))[_0x0c36('0x16')](handleError(_0x4dda55,null));};exports[_0x0c36('0x7e')]=function(_0x4f015d,_0x161c23){if(_0x4f015d[_0x0c36('0x5d')]['id']){delete _0x4f015d['body']['id'];}return db[_0x0c36('0x41')][_0x0c36('0x63')]({'where':{'id':_0x4f015d[_0x0c36('0x5a')]['id']}})[_0x0c36('0xe')](handleEntityNotFound(_0x161c23,null))[_0x0c36('0xe')](function(_0x360723){if(_0x360723){_0x4f015d[_0x0c36('0x5d')][_0x0c36('0x64')]=_0x360723['id'];return db['MailServerIn'][_0x0c36('0x66')](_0x4f015d[_0x0c36('0x5d')]);}})[_0x0c36('0xe')](respondWithResult(_0x161c23,null))[_0x0c36('0x16')](handleError(_0x161c23,null));};exports['removeImap']=function(_0x3790bf,_0x456412){return db[_0x0c36('0x41')][_0x0c36('0x68')]({'where':{'id':_0x3790bf[_0x0c36('0x5a')]['id']}})[_0x0c36('0xe')](handleEntityNotFound(_0x456412,null))[_0x0c36('0xe')](function(_0x16f770){if(_0x16f770){return _0x16f770[_0x0c36('0x7f')](null);}return null;})[_0x0c36('0xe')](respondWithStatusCode(_0x456412,null))['catch'](handleError(_0x456412,null));};exports['getSmtp']=function(_0x584f5d,_0x554ff7){return db[_0x0c36('0x41')]['findOne']({'where':{'id':_0x584f5d[_0x0c36('0x5a')]['id']}})['then'](handleEntityNotFound(_0x554ff7,null))[_0x0c36('0xe')](function(_0x3c7b56){if(_0x3c7b56){return _0x3c7b56[_0x0c36('0x80')]();}return null;})[_0x0c36('0xe')](respondWithResult(_0x554ff7,null))['catch'](handleError(_0x554ff7,null));};exports['addSmtp']=function(_0x2091c6,_0x10269c){if(_0x2091c6[_0x0c36('0x5d')]['id']){delete _0x2091c6[_0x0c36('0x5d')]['id'];}return db[_0x0c36('0x41')]['find']({'where':{'id':_0x2091c6[_0x0c36('0x5a')]['id']}})['then'](handleEntityNotFound(_0x10269c,null))[_0x0c36('0xe')](function(_0x5125ea){if(_0x5125ea){_0x2091c6[_0x0c36('0x5d')][_0x0c36('0x64')]=_0x5125ea['id'];return db[_0x0c36('0x5b')][_0x0c36('0x66')](_0x2091c6[_0x0c36('0x5d')]);}})[_0x0c36('0xe')](respondWithResult(_0x10269c,null))['catch'](handleError(_0x10269c,null));};exports[_0x0c36('0x81')]=function(_0x3a50a6,_0x2deb6c){return db[_0x0c36('0x41')][_0x0c36('0x68')]({'where':{'id':_0x3a50a6[_0x0c36('0x5a')]['id']}})[_0x0c36('0xe')](handleEntityNotFound(_0x2deb6c,null))[_0x0c36('0xe')](function(_0x15ed57){if(_0x15ed57){return _0x15ed57[_0x0c36('0x82')](null);}return null;})[_0x0c36('0xe')](respondWithStatusCode(_0x2deb6c,null))[_0x0c36('0x16')](handleError(_0x2deb6c,null));};exports[_0x0c36('0x83')]=function(_0x105a69,_0x456db1){return db['MailInteraction'][_0x0c36('0x63')]({'where':{'id':_0x105a69[_0x0c36('0x5a')]['id']}})[_0x0c36('0xe')](handleEntityNotFound(_0x456db1,null))[_0x0c36('0xe')](function(_0x495468){if(_0x495468){return _0x495468['addInteraction'](_0x105a69[_0x0c36('0x5d')][_0x0c36('0x6b')],_[_0x0c36('0x84')](_0x105a69['body'],[_0x0c36('0x6b'),'id'])||{});}})['then'](respondWithResult(_0x456db1,null))['catch'](handleError(_0x456db1,null));};exports[_0x0c36('0x85')]=function(_0x1e0282,_0xe73ac8){var _0x5371dd={'raw':![],'where':{}};var _0x1974f6={};var _0x317dae={'count':0x0,'rows':[]};return db[_0x0c36('0x41')][_0x0c36('0x68')]({'where':{'id':_0x1e0282[_0x0c36('0x5a')]['id']}})['then'](handleEntityNotFound(_0xe73ac8,null))[_0x0c36('0xe')](function(_0x37c1e6){if(_0x37c1e6){_0x1974f6['model']=_[_0x0c36('0x5c')](db[_0x0c36('0x86')][_0x0c36('0x42')]);_0x1974f6[_0x0c36('0x47')]=_[_0x0c36('0x5c')](_0x1e0282[_0x0c36('0x47')]);_0x1974f6[_0x0c36('0x50')]=_['intersection'](_0x1974f6[_0x0c36('0x45')],_0x1974f6[_0x0c36('0x47')]);_0x5371dd['attributes']=_[_0x0c36('0x48')](_0x1974f6[_0x0c36('0x45')],qs[_0x0c36('0x49')](_0x1e0282[_0x0c36('0x47')][_0x0c36('0x49')]));_0x5371dd[_0x0c36('0x4a')]=_0x5371dd['attributes']['length']?_0x5371dd[_0x0c36('0x4a')]:_0x1974f6[_0x0c36('0x45')];if(!_0x1e0282['query'][_0x0c36('0x4c')](_0x0c36('0x4d'))){_0x5371dd[_0x0c36('0x1c')]=qs[_0x0c36('0x1c')](_0x1e0282[_0x0c36('0x47')]['limit']);_0x5371dd[_0x0c36('0x1a')]=qs[_0x0c36('0x1a')](_0x1e0282[_0x0c36('0x47')][_0x0c36('0x1a')]);}_0x5371dd[_0x0c36('0x6f')]=qs['sort'](_0x1e0282[_0x0c36('0x47')][_0x0c36('0x4e')]);_0x5371dd[_0x0c36('0x4f')]=qs['filters'](_[_0x0c36('0x69')](_0x1e0282[_0x0c36('0x47')],_0x1974f6[_0x0c36('0x50')]));_0x5371dd[_0x0c36('0x4f')]['MailAccountId']=_0x37c1e6['id'];if(_0x1e0282['query']['filter']){_0x5371dd[_0x0c36('0x4f')]=_[_0x0c36('0x52')](_0x5371dd[_0x0c36('0x4f')],{'$or':_['map'](_0x5371dd[_0x0c36('0x4a')],function(_0x29968f){var _0x125708={};_0x125708[_0x29968f]={'$like':'%'+_0x1e0282[_0x0c36('0x47')][_0x0c36('0x51')]+'%'};return _0x125708;})});}_0x5371dd=_[_0x0c36('0x52')]({},_0x5371dd,_0x1e0282[_0x0c36('0x54')]);return db['MailInteraction']['count']({'where':_0x5371dd[_0x0c36('0x4f')]})[_0x0c36('0xe')](function(_0x759c5a){_0x317dae[_0x0c36('0x1d')]=_0x759c5a;if(_0x1e0282[_0x0c36('0x47')][_0x0c36('0x55')]){_0x5371dd[_0x0c36('0x56')]=[{'model':db['CmContact'],'as':_0x0c36('0x87'),'required':![]},{'model':db['User'],'as':_0x0c36('0x88'),'attributes':[_0x0c36('0x24'),_0x0c36('0x89'),_0x0c36('0x8a')],'required':![]},{'model':db['Tag'],'as':_0x0c36('0x8b'),'attributes':['id',_0x0c36('0x24'),_0x0c36('0x8c')],'where':_0x1e0282[_0x0c36('0x47')]['tag']?{'id':_0x1e0282['query'][_0x0c36('0x8d')]}:undefined,'required':_0x1e0282[_0x0c36('0x47')][_0x0c36('0x8d')]?!![]:![]}];}return db['MailInteraction'][_0x0c36('0x57')](_0x5371dd);})[_0x0c36('0xe')](function(_0x4430c0){_0x317dae[_0x0c36('0x58')]=_0x4430c0;return _0x317dae;});}})[_0x0c36('0xe')](respondWithFilteredResult(_0xe73ac8,_0x5371dd))['catch'](handleError(_0xe73ac8,null));};exports[_0x0c36('0x8e')]=function addApplications(_0x2412db,_0x5a4394){var _0x200a55=_0x2412db[_0x0c36('0x5a')]['id'];var _0x3a60a7=_0x2412db['body'];var _0x56134c=0xc8;var _0x460970=null;return db[_0x0c36('0x8f')][_0x0c36('0x90')]({'isolationLevel':db[_0x0c36('0x8f')][_0x0c36('0x91')][_0x0c36('0x92')][_0x0c36('0x93')]},function(_0x321270){return db[_0x0c36('0x41')]['findOne']({'where':{'id':_0x200a55},'transaction':_0x321270})['then'](function(_0xf3b8d7){if(_0xf3b8d7){return db[_0x0c36('0x94')][_0x0c36('0x20')]({'where':{'MailAccountId':_0x200a55},'transaction':_0x321270})[_0x0c36('0xe')](function(){var _0x1eec50=_[_0x0c36('0x46')](_0x3a60a7,function(_0x24598c){_0x24598c[_0x0c36('0x64')]=_0x200a55;return _0x24598c;});return db[_0x0c36('0x94')][_0x0c36('0x95')](_0x1eec50,{'transaction':_0x321270});});}else{_0x56134c=0x194;_0x460970=[];}});})['then'](function(){if(_0x56134c!==0x194){return db[_0x0c36('0x94')][_0x0c36('0x96')]({'where':{'MailAccountId':_0x200a55},'order':_0x0c36('0x97')})[_0x0c36('0xe')](function(_0x1ebedb){_0x460970=_0x1ebedb;});}})['catch'](function(_0x51332c){_0x56134c=0x1f4;logger[_0x0c36('0x12')](_0x51332c['stack']);if(_0x51332c['name']){delete _0x51332c[_0x0c36('0x24')];}_0x460970=_0x51332c;})[_0x0c36('0x98')](function(){if(_0x460970===null){_0x5a4394[_0x0c36('0x17')](_0x56134c);}else{if(_0x56134c===0x1f4){_0x5a4394[_0x0c36('0x18')](_0x56134c)[_0x0c36('0x99')](_0x460970);}else{_0x5a4394[_0x0c36('0x18')](_0x56134c)[_0x0c36('0x19')](_0x460970);}}});};exports[_0x0c36('0x9a')]=function(_0x2579f0,_0x1634bb){var _0x14afee={};var _0x41bf89={};var _0x101ad4;var _0x5b8479;return db[_0x0c36('0x41')][_0x0c36('0x68')]({'where':{'id':_0x2579f0[_0x0c36('0x5a')]['id']}})['then'](handleEntityNotFound(_0x1634bb,null))[_0x0c36('0xe')](function(_0x3171fb){if(_0x3171fb){_0x101ad4=_0x3171fb;_0x41bf89[_0x0c36('0x45')]=_[_0x0c36('0x5c')](db[_0x0c36('0x94')][_0x0c36('0x42')]);_0x41bf89[_0x0c36('0x47')]=_[_0x0c36('0x5c')](_0x2579f0['query']);_0x41bf89[_0x0c36('0x50')]=_[_0x0c36('0x48')](_0x41bf89[_0x0c36('0x45')],_0x41bf89[_0x0c36('0x47')]);_0x14afee['attributes']=_[_0x0c36('0x48')](_0x41bf89['model'],qs[_0x0c36('0x49')](_0x2579f0[_0x0c36('0x47')][_0x0c36('0x49')]));_0x14afee['attributes']=_0x14afee[_0x0c36('0x4a')][_0x0c36('0x4b')]?_0x14afee[_0x0c36('0x4a')]:_0x41bf89[_0x0c36('0x45')];_0x14afee[_0x0c36('0x6f')]=qs[_0x0c36('0x4e')](_0x2579f0['query'][_0x0c36('0x4e')]);_0x14afee[_0x0c36('0x4f')]=qs[_0x0c36('0x50')](_[_0x0c36('0x69')](_0x2579f0[_0x0c36('0x47')],_0x41bf89['filters']));if(_0x2579f0[_0x0c36('0x47')][_0x0c36('0x51')]){_0x14afee[_0x0c36('0x4f')]=_[_0x0c36('0x52')](_0x14afee[_0x0c36('0x4f')],{'$or':_[_0x0c36('0x46')](_0x14afee[_0x0c36('0x4a')],function(_0x3f202e){var _0x370d6f={};_0x370d6f[_0x3f202e]={'$like':'%'+_0x2579f0['query'][_0x0c36('0x51')]+'%'};return _0x370d6f;})});}_0x14afee=_[_0x0c36('0x52')]({},_0x14afee,_0x2579f0[_0x0c36('0x54')]);return _0x101ad4['getApplications'](_0x14afee);}})['then'](function(_0x1f99bc){if(_0x1f99bc){_0x5b8479=_0x1f99bc['length'];if(!_0x2579f0['query'][_0x0c36('0x4c')]('nolimit')){_0x14afee[_0x0c36('0x1c')]=qs[_0x0c36('0x1c')](_0x2579f0[_0x0c36('0x47')][_0x0c36('0x1c')]);_0x14afee[_0x0c36('0x1a')]=qs[_0x0c36('0x1a')](_0x2579f0[_0x0c36('0x47')]['offset']);}return _0x101ad4['getApplications'](_0x14afee);}})[_0x0c36('0xe')](function(_0x17e4a0){if(_0x17e4a0){return _0x17e4a0?{'count':_0x5b8479,'rows':_0x17e4a0}:null;}})[_0x0c36('0xe')](respondWithResult(_0x1634bb,null))[_0x0c36('0x16')](handleError(_0x1634bb,null));};exports[_0x0c36('0x9b')]=function(_0x29814e,_0x2b496d){var _0x531c4e={'raw':!![],'where':{}};var _0x254bed={};var _0x13f0f0={'count':0x0,'rows':[]};return db[_0x0c36('0x41')]['findOne']({'where':{'id':_0x29814e[_0x0c36('0x5a')]['id']}})[_0x0c36('0xe')](handleEntityNotFound(_0x2b496d,null))[_0x0c36('0xe')](function(_0x7a1538){if(_0x7a1538){_0x254bed[_0x0c36('0x45')]=_[_0x0c36('0x5c')](db[_0x0c36('0x9c')][_0x0c36('0x42')]);_0x254bed[_0x0c36('0x47')]=_[_0x0c36('0x5c')](_0x29814e[_0x0c36('0x47')]);_0x254bed[_0x0c36('0x50')]=_[_0x0c36('0x48')](_0x254bed[_0x0c36('0x45')],_0x254bed[_0x0c36('0x47')]);_0x531c4e[_0x0c36('0x4a')]=_['intersection'](_0x254bed[_0x0c36('0x45')],qs[_0x0c36('0x49')](_0x29814e[_0x0c36('0x47')][_0x0c36('0x49')]));_0x531c4e[_0x0c36('0x4a')]=_0x531c4e[_0x0c36('0x4a')][_0x0c36('0x4b')]?_0x531c4e[_0x0c36('0x4a')]:_0x254bed['model'];if(!_0x29814e['query'][_0x0c36('0x4c')](_0x0c36('0x4d'))){_0x531c4e[_0x0c36('0x1c')]=qs[_0x0c36('0x1c')](_0x29814e[_0x0c36('0x47')][_0x0c36('0x1c')]);_0x531c4e[_0x0c36('0x1a')]=qs[_0x0c36('0x1a')](_0x29814e[_0x0c36('0x47')][_0x0c36('0x1a')]);}_0x531c4e[_0x0c36('0x6f')]=qs[_0x0c36('0x4e')](_0x29814e['query'][_0x0c36('0x4e')]);_0x531c4e[_0x0c36('0x4f')]=qs['filters'](_[_0x0c36('0x69')](_0x29814e[_0x0c36('0x47')],_0x254bed[_0x0c36('0x50')]));_0x531c4e[_0x0c36('0x4f')]['MailAccountId']=_0x7a1538['id'];if(_0x29814e['query'][_0x0c36('0x51')]){_0x531c4e[_0x0c36('0x4f')]=_['merge'](_0x531c4e[_0x0c36('0x4f')],{'$or':_['map'](_0x531c4e[_0x0c36('0x4a')],function(_0x530a54){var _0x582330={};_0x582330[_0x530a54]={'$like':'%'+_0x29814e[_0x0c36('0x47')]['filter']+'%'};return _0x582330;})});}if(_0x29814e[_0x0c36('0x47')][_0x0c36('0x9d')]){var _0x42155b=_0x29814e[_0x0c36('0x47')][_0x0c36('0x9d')][_0x0c36('0x9e')](',');var _0x5edd70={};_0x5edd70[_0x42155b[0x0]]={'$gte':moment(_0x42155b[0x1])[_0x0c36('0x9f')](_0x0c36('0xa0'))};_0x531c4e['where']=_['merge'](_0x531c4e['where'],_0x5edd70);}_0x531c4e=_[_0x0c36('0x52')]({},_0x531c4e,_0x29814e[_0x0c36('0x54')]);return db['MailMessage']['count']({'where':_0x531c4e[_0x0c36('0x4f')]})[_0x0c36('0xe')](function(_0x4aaebc){_0x13f0f0[_0x0c36('0x1d')]=_0x4aaebc;if(_0x29814e[_0x0c36('0x47')][_0x0c36('0x55')]){_0x531c4e[_0x0c36('0x56')]=[{'all':!![]}];}return db[_0x0c36('0x9c')][_0x0c36('0x57')](_0x531c4e);})[_0x0c36('0xe')](function(_0x5d5ada){if(_0x29814e[_0x0c36('0x47')][_0x0c36('0xa1')]===_0x0c36('0xa2')){for(var _0x3f6c22=0x0;_0x3f6c22<_0x5d5ada[_0x0c36('0x4b')];_0x3f6c22++){_0x5d5ada[_0x3f6c22][_0x0c36('0x5d')]=juice(_0x5d5ada[_0x3f6c22][_0x0c36('0x5d')]);}}_0x13f0f0[_0x0c36('0x58')]=_0x5d5ada;return _0x13f0f0;});}})[_0x0c36('0xe')](respondWithFilteredResult(_0x2b496d,_0x531c4e))[_0x0c36('0x16')](handleError(_0x2b496d,null));};exports[_0x0c36('0x99')]=function(_0x478628,_0x5b4d6a){var _0x4a8202,_0x5c2a06={},_0x5912e6;if(_0x478628[_0x0c36('0x5d')]['to']){_0x5912e6=_0x478628['body']['to']['split'](',')[0x0];}return db['MailAccount'][_0x0c36('0x63')]({'where':{'id':_0x478628[_0x0c36('0x5a')]['id']},'include':[{'model':db['CmList'],'as':_0x0c36('0xa3'),'include':[{'model':db[_0x0c36('0xa4')],'as':'Contacts','where':{'email':_0x5912e6},'limit':0x1,'order':[[_0x0c36('0xa5'),_0x0c36('0xa6')]]}]},{'model':db[_0x0c36('0x5b')],'as':_0x0c36('0x3c'),'raw':!![],'include':[{'model':db[_0x0c36('0xa7')],'as':_0x0c36('0xa7'),'raw':!![]}]}]})['then'](handleEntityNotFound(_0x5b4d6a,null))[_0x0c36('0xe')](function(_0x4580a1){if(!_0x4580a1)return;_0x4a8202=_0x4580a1;if(!_0x4580a1['Smtp'])throw new Error(_0x0c36('0xa8'));if(_[_0x0c36('0x74')](_0x478628[_0x0c36('0x5d')]['from'])){_0x478628[_0x0c36('0x5d')][_0x0c36('0xa9')]=util[_0x0c36('0x9f')]('%s\x20<%s>',_0x4580a1[_0x0c36('0x24')],_0x4580a1[_0x0c36('0x72')]||_0x4580a1[_0x0c36('0x3c')][_0x0c36('0x31')]);}if(_0x478628[_0x0c36('0x5d')][_0x0c36('0xaa')]&&_0x478628[_0x0c36('0x5d')][_0x0c36('0xaa')][_0x0c36('0x4b')]){for(var _0x134f42=0x0;_0x134f42<_0x478628[_0x0c36('0x5d')]['attachments'][_0x0c36('0x4b')];_0x134f42+=0x1){_0x478628['body'][_0x0c36('0xaa')][_0x134f42]={'filename':_0x478628[_0x0c36('0x5d')][_0x0c36('0xaa')][_0x134f42][_0x0c36('0x24')],'path':path[_0x0c36('0xab')](config[_0x0c36('0xac')],_0x0c36('0xad'),_0x478628['body'][_0x0c36('0xaa')][_0x134f42]['basename'])};}}var _0x2eff96=_0x4580a1[_0x0c36('0xae')]();return respondWithRpcPromise(_0x0c36('0xaf'),'sendMail',{'account':_0x2eff96,'message':_0x478628[_0x0c36('0x5d')]});})[_0x0c36('0xe')](function(_0x11dbe6){if(!_0x11dbe6)return;_0x5c2a06=_0x11dbe6;if(!_0x4a8202[_0x0c36('0xa3')])throw new Error('List\x20not\x20found');if(_0x4a8202[_0x0c36('0xa3')][_0x0c36('0xb0')][_0x0c36('0x4b')])return _0x4a8202[_0x0c36('0xa3')][_0x0c36('0xb0')][0x0];return db[_0x0c36('0xa4')][_0x0c36('0x66')](_[_0x0c36('0xb1')](_0x478628[_0x0c36('0x5d')],{'firstName':_0x478628[_0x0c36('0x5d')]['to'],'email':_0x478628[_0x0c36('0x5d')]['to'],'phone':_0x478628[_0x0c36('0x5d')]['to'],'ListId':_0x4a8202[_0x0c36('0x73')]}));})[_0x0c36('0xe')](function(_0x20bbcd){if(!_0x20bbcd)return;var _0xc6cd2a={'UserId':_0x478628[_0x0c36('0x31')]['id'],'ContactId':_0x20bbcd['id'],'MailAccountId':_0x4a8202['id'],'inReplyTo':_0x5c2a06[_0x0c36('0xb2')],'to':_0x478628[_0x0c36('0x5d')]['from'],'cc':_0x478628[_0x0c36('0x5d')]['cc'],'subject':_0x478628[_0x0c36('0x5d')][_0x0c36('0xb3')],'attach':_0x478628['body']['attach'],'firstMsgDirection':_0x0c36('0xb4'),'lastMsgAt':moment()[_0x0c36('0x9f')](_0x0c36('0xa0')),'lastMsgDirection':_0x0c36('0xb4'),'Messages':[_['merge'](_0x478628[_0x0c36('0x5d')],{'messageId':_0x5c2a06[_0x0c36('0xb2')],'sentAt':moment()[_0x0c36('0x9f')](_0x0c36('0xa0')),'read':!![],'MailAccountId':_0x4a8202['id'],'UserId':_0x478628[_0x0c36('0x31')]['id'],'ContactId':_0x20bbcd['id']})]};if(_0x478628[_0x0c36('0x5d')][_0x0c36('0xb5')]){_0xc6cd2a=_['merge'](_0xc6cd2a,_0x478628[_0x0c36('0x5d')][_0x0c36('0xb5')]);}return db[_0x0c36('0x86')][_0x0c36('0x66')](_0xc6cd2a,{'include':[{'model':db[_0x0c36('0x9c')],'as':_0x0c36('0xb6')}]});})['then'](respondWithResult(_0x5b4d6a,null))[_0x0c36('0x16')](handleError(_0x5b4d6a,null));};exports['verifySmtp']=function(_0x360edf,_0x5ca529){return db['MailAccount'][_0x0c36('0x63')]({'where':{'id':_0x360edf[_0x0c36('0x5a')]['id']},'include':[{'model':db['MailServerOut'],'as':_0x0c36('0x3c'),'raw':!![],'include':[{'model':db[_0x0c36('0xa7')],'as':_0x0c36('0xa7'),'raw':!![]}]}]})[_0x0c36('0xe')](handleEntityNotFound(_0x5ca529,null))[_0x0c36('0xe')](function(_0x5106dc){if(!_0x5106dc[_0x0c36('0x3c')])return;var _0x54a5b9=_0x5106dc[_0x0c36('0xae')]();return respondWithRpcPromise('VerifySmtp',_0x0c36('0xb7'),{'account':_0x54a5b9});})['then'](respondWithResult(_0x5ca529,null))[_0x0c36('0x16')](handleError(_0x5ca529,null));};exports['destroy']=function(_0x1fe4ba,_0x56b2a1){return db['MailAccount'][_0x0c36('0x63')]({'where':{'id':_0x1fe4ba[_0x0c36('0x5a')]['id']}})['then'](handleEntityNotFound(_0x56b2a1,null))['then'](function(_0x47a648){if(_0x47a648&&_0x47a648[_0x0c36('0x38')]){throw new db[(_0x0c36('0xb8'))][(_0x0c36('0xb9'))](_0x0c36('0xba'));}return _0x47a648;})[_0x0c36('0xe')](removeEntity(_0x56b2a1,null))[_0x0c36('0x16')](handleError(_0x56b2a1,null));};exports['addAgents']=function(_0x5ec547,_0x5974f5){return db[_0x0c36('0x41')][_0x0c36('0x63')]({'where':{'id':_0x5ec547[_0x0c36('0x5a')]['id']}})[_0x0c36('0xe')](handleEntityNotFound(_0x5974f5,null))['then'](function(_0x41acec){if(_0x41acec){return _0x41acec[_0x0c36('0xbb')](_0x5ec547['body'][_0x0c36('0x6b')],_['omit'](_0x5ec547[_0x0c36('0x5d')],[_0x0c36('0x6b'),'id'])||{})[_0x0c36('0xbc')](function(_0x261167){for(var _0x11dfb0=0x0;_0x11dfb0<_0x5ec547['body'][_0x0c36('0x6b')][_0x0c36('0x4b')];_0x11dfb0+=0x1){socket[_0x0c36('0xbd')](_0x0c36('0xbe'),{'UserId':Number(_0x5ec547[_0x0c36('0x5d')][_0x0c36('0x6b')][_0x11dfb0]),'MailAccountId':Number(_0x5ec547['params']['id'])});}return _0x261167;});}})['then'](respondWithResult(_0x5974f5,null))['catch'](handleError(_0x5974f5,null));};exports[_0x0c36('0xbf')]=function(_0x471f67,_0x3dd55e){return db[_0x0c36('0x41')]['find']({'where':{'id':_0x471f67[_0x0c36('0x5a')]['id']}})['then'](handleEntityNotFound(_0x3dd55e,null))[_0x0c36('0xe')](function(_0x292e9f){if(_0x292e9f){return _0x292e9f[_0x0c36('0xbf')](_0x471f67['query'][_0x0c36('0x6b')])['then'](function(){if(_[_0x0c36('0xc0')](_0x471f67[_0x0c36('0x47')][_0x0c36('0x6b')])){for(var _0x2f6d8f=0x0;_0x2f6d8f<_0x471f67[_0x0c36('0x47')][_0x0c36('0x6b')][_0x0c36('0x4b')];_0x2f6d8f+=0x1){socket[_0x0c36('0xbd')](_0x0c36('0xc1'),{'UserId':Number(_0x471f67['query'][_0x0c36('0x6b')][_0x2f6d8f]),'MailAccountId':Number(_0x471f67['params']['id'])});}}else{socket[_0x0c36('0xbd')](_0x0c36('0xc1'),{'UserId':Number(_0x471f67['query'][_0x0c36('0x6b')]),'MailAccountId':Number(_0x471f67[_0x0c36('0x5a')]['id'])});}});}})[_0x0c36('0xe')](respondWithStatusCode(_0x3dd55e,null))[_0x0c36('0x16')](handleError(_0x3dd55e,null));};exports['getAgents']=function(_0x65b95b,_0x31e54f){var _0x40fb9a={};var _0x253be7={};var _0x341f19;var _0x56d638;return db[_0x0c36('0x41')][_0x0c36('0x68')]({'where':{'id':_0x65b95b[_0x0c36('0x5a')]['id']}})[_0x0c36('0xe')](handleEntityNotFound(_0x31e54f,null))[_0x0c36('0xe')](function(_0x5c645a){if(_0x5c645a){_0x341f19=_0x5c645a;_0x253be7['model']=_[_0x0c36('0x5c')](db[_0x0c36('0xc2')][_0x0c36('0x42')]);_0x253be7['query']=_[_0x0c36('0x5c')](_0x65b95b['query']);_0x253be7[_0x0c36('0x50')]=_[_0x0c36('0x48')](_0x253be7[_0x0c36('0x45')],_0x253be7[_0x0c36('0x47')]);_0x40fb9a[_0x0c36('0x4a')]=_[_0x0c36('0x48')](_0x253be7[_0x0c36('0x45')],qs[_0x0c36('0x49')](_0x65b95b['query'][_0x0c36('0x49')]));_0x40fb9a['attributes']=_0x40fb9a[_0x0c36('0x4a')][_0x0c36('0x4b')]?_0x40fb9a[_0x0c36('0x4a')]:_0x253be7[_0x0c36('0x45')];_0x40fb9a['order']=qs[_0x0c36('0x4e')](_0x65b95b['query'][_0x0c36('0x4e')]);_0x40fb9a[_0x0c36('0x4f')]=qs['filters'](_[_0x0c36('0x69')](_0x65b95b[_0x0c36('0x47')],_0x253be7['filters']));if(_0x65b95b[_0x0c36('0x47')][_0x0c36('0x51')]){_0x40fb9a[_0x0c36('0x4f')]=_[_0x0c36('0x52')](_0x40fb9a[_0x0c36('0x4f')],{'$or':_[_0x0c36('0x46')](_0x40fb9a[_0x0c36('0x4a')],function(_0x4d1664){var _0x1a2236={};_0x1a2236[_0x4d1664]={'$like':'%'+_0x65b95b[_0x0c36('0x47')]['filter']+'%'};return _0x1a2236;})});}_0x40fb9a=_[_0x0c36('0x52')]({},_0x40fb9a,_0x65b95b[_0x0c36('0x54')]);return _0x341f19[_0x0c36('0xc3')](_0x40fb9a);}})[_0x0c36('0xe')](function(_0x9efc11){if(_0x9efc11){_0x56d638=_0x9efc11[_0x0c36('0x4b')];if(!_0x65b95b[_0x0c36('0x47')][_0x0c36('0x4c')](_0x0c36('0x4d'))){_0x40fb9a[_0x0c36('0x1c')]=qs[_0x0c36('0x1c')](_0x65b95b[_0x0c36('0x47')][_0x0c36('0x1c')]);_0x40fb9a[_0x0c36('0x1a')]=qs[_0x0c36('0x1a')](_0x65b95b['query']['offset']);}return _0x341f19[_0x0c36('0xc3')](_0x40fb9a);}})[_0x0c36('0xe')](function(_0x2f0278){if(_0x2f0278){return _0x2f0278?{'count':_0x56d638,'rows':_0x2f0278}:null;}})[_0x0c36('0xe')](respondWithResult(_0x31e54f,null))[_0x0c36('0x16')](handleError(_0x31e54f,null));};