Built motion from commit (unavailable).|2.5.3
[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 _0xc511=['fast-json-patch','request-promise','moment','bluebird','mustache','path','sox','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/environment','../../mysqldb','redis','defaults','localhost','./mailAccount.socket','register','client','http','test','Sequelize','The\x20password\x20must\x20be\x20at\x20least\x208\x20characters\x20long\x20and\x20have\x201\x20lowercase\x20character,\x201\x20uppercase\x20character,\x201\x20number\x20and\x201\x20special\x20character\x20~!@#$%^&-_=+[{]}.','request','then','MailAccount,\x20%s,\x20%s,\x20%s','request\x20sent','stringify','error','code','message','MailAccount,\x20%s,\x20%s','catch','sendStatus','status','end','json','count','offset','limit','set','Content-Range','reject','save','update','destroy','get','MailAccounts','UserProfileResource','stack','name','MailServerIn','Imap','MailServerOut','Pause','map','MailAccount','rawAttributes','fieldName','model','keys','query','filters','intersection','fields','attributes','length','hasOwnProperty','nolimit','sort','where','pick','filter','merge','VIRTUAL','options','includeAll','rows','show','params','Smtp','mandatoryDispositionPause','include','find','body','describe','addDisposition','MailAccountId','Disposition','create','getDispositions','findOne','findAll','removeDispositions','ids','addAnswer','getAnswers','CannedAnswer','order','removeAnswers','key','email','active','description','cservice','user','cuser','password','authentication','host','port','pass','cpassword','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','userProfileId','autoAssociation','getImap','addImap','removeImap','setImap','getSmtp','addSmtp','removeSmtp','setSmtp','addInteraction','MailInteraction','omit','CmContact','Contact','User','Owner','fullname','internal','Tag','Tags','color','tag','addApplications','sequelize','transaction','MailApplication','bulkCreate','findAndCountAll','priority','getApplications','MailMessage','$gte','split','YYYY-MM-DD\x20HH:mm:ss','CmList','List','Contacts','updatedAt','isNil','from','format','attachments','join','root','basename','secure','service','auth','SendMail','sendMail','List\x20not\x20found','ListId','messageId','subject','attach','out','Interaction','Messages','verifySmtp','VerifySmtp','ValidationError','addAgents','userMailAccount:save','removeAgents','isArray','emit','userMailAccount:remove','getAgents','html-pdf','eml-format','rimraf'];(function(_0x1c4cc6,_0x52cd1b){var _0x2ba5a8=function(_0x2d6298){while(--_0x2d6298){_0x1c4cc6['push'](_0x1c4cc6['shift']());}};_0x2ba5a8(++_0x52cd1b);}(_0xc511,0xc1));var _0x1c51=function(_0x2aecb2,_0x343312){_0x2aecb2=_0x2aecb2-0x0;var _0x3ebb80=_0xc511[_0x2aecb2];return _0x3ebb80;};'use strict';var pdf=require(_0x1c51('0x0'));var emlformat=require(_0x1c51('0x1'));var rimraf=require(_0x1c51('0x2'));var zipdir=require('zip-dir');var jsonpatch=require(_0x1c51('0x3'));var rp=require(_0x1c51('0x4'));var moment=require(_0x1c51('0x5'));var BPromise=require(_0x1c51('0x6'));var Mustache=require(_0x1c51('0x7'));var util=require('util');var path=require(_0x1c51('0x8'));var sox=require(_0x1c51('0x9'));var csv=require(_0x1c51('0xa'));var ejs=require(_0x1c51('0xb'));var fs=require('fs');var _=require(_0x1c51('0xc'));var squel=require(_0x1c51('0xd'));var crypto=require(_0x1c51('0xe'));var jsforce=require(_0x1c51('0xf'));var deskjs=require(_0x1c51('0x10'));var toCsv=require(_0x1c51('0xa'));var querystring=require('querystring');var Papa=require(_0x1c51('0x11'));var Redis=require('ioredis');var authService=require(_0x1c51('0x12'));var qs=require(_0x1c51('0x13'));var as=require(_0x1c51('0x14'));var hardwareService=require(_0x1c51('0x15'));var logger=require(_0x1c51('0x16'))('api');var utils=require('../../config/utils');var config=require(_0x1c51('0x17'));var db=require(_0x1c51('0x18'))['db'];config[_0x1c51('0x19')]=_[_0x1c51('0x1a')](config[_0x1c51('0x19')],{'host':_0x1c51('0x1b'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x1c51('0x19')]));require(_0x1c51('0x1c'))[_0x1c51('0x1d')](socket);var jayson=require('jayson/promise');var client=jayson[_0x1c51('0x1e')][_0x1c51('0x1f')]({'port':0x232b});function checkPasswordPattern(_0x41afa3,_0x2f43e3,_0x5acdf7){if(_0x5acdf7){var _0x3175ae=new RegExp(/(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[?!@#\$%\^&\*~\-_=+[{\]\}])(?=.{8,})/);if(_0x3175ae[_0x1c51('0x20')](_0x2f43e3)){return _0x41afa3;}else{throw new db[(_0x1c51('0x21'))]['ValidationError'](_0x1c51('0x22'));}}else{return _0x41afa3;}}function respondWithRpcPromise(_0x19babc,_0x401edc,_0x17a4b7,_0x400a73){return new BPromise(function(_0x280d29,_0x354bc2){var _0xd10ae3=_0x400a73||client;return _0xd10ae3[_0x1c51('0x23')](_0x19babc,_0x17a4b7)[_0x1c51('0x24')](function(_0x5304da){logger['info']('MailAccount,\x20%s,\x20%s',_0x401edc,'request\x20sent');logger['debug'](_0x1c51('0x25'),_0x401edc,_0x1c51('0x26'),JSON[_0x1c51('0x27')](_0x5304da));if(_0x5304da[_0x1c51('0x28')]){if(_0x5304da[_0x1c51('0x28')][_0x1c51('0x29')]===0x1f4){logger[_0x1c51('0x28')]('MailAccount,\x20%s,\x20%s',_0x401edc,_0x5304da[_0x1c51('0x28')][_0x1c51('0x2a')]);return _0x354bc2(_0x5304da[_0x1c51('0x28')][_0x1c51('0x2a')]);}logger[_0x1c51('0x28')](_0x1c51('0x2b'),_0x401edc,_0x5304da[_0x1c51('0x28')][_0x1c51('0x2a')]);return _0x280d29(_0x5304da[_0x1c51('0x28')]['message']);}else{logger['info'](_0x1c51('0x2b'),_0x401edc,'request\x20sent');_0x280d29(_0x5304da['result'][_0x1c51('0x2a')]);}})[_0x1c51('0x2c')](function(_0xc4e3ba){logger[_0x1c51('0x28')](_0x1c51('0x2b'),_0x401edc,_0xc4e3ba);_0x354bc2(_0xc4e3ba);});});}function respondWithStatusCode(_0x942253,_0x4e6068){_0x4e6068=_0x4e6068||0xcc;return function(_0x1075eb){if(_0x1075eb){return _0x942253[_0x1c51('0x2d')](_0x4e6068);}return _0x942253[_0x1c51('0x2e')](_0x4e6068)[_0x1c51('0x2f')]();};}function respondWithResult(_0x480f26,_0x4f8363){_0x4f8363=_0x4f8363||0xc8;return function(_0x456b49){if(_0x456b49){return _0x480f26[_0x1c51('0x2e')](_0x4f8363)[_0x1c51('0x30')](_0x456b49);}};}function respondWithFilteredResult(_0x11201c,_0x3c840e){return function(_0x1710b4){if(_0x1710b4){var _0x1fa520=_0x1710b4[_0x1c51('0x31')],_0x13c9dd=_0x3c840e[_0x1c51('0x32')],_0x4e300e=_0x3c840e[_0x1c51('0x32')]+_0x3c840e[_0x1c51('0x33')],_0x9ff87;if(_0x4e300e>=_0x1fa520){_0x4e300e=_0x1fa520;_0x9ff87=0xc8;}else{_0x9ff87=0xce;}_0x11201c[_0x1c51('0x2e')](_0x9ff87);return _0x11201c[_0x1c51('0x34')](_0x1c51('0x35'),_0x13c9dd+'-'+_0x4e300e+'/'+_0x1fa520)[_0x1c51('0x30')](_0x1710b4);}return null;};}function patchUpdates(_0x42a99d){return function(_0x593acf){try{jsonpatch['apply'](_0x593acf,_0x42a99d,!![]);}catch(_0x160916){return BPromise[_0x1c51('0x36')](_0x160916);}return _0x593acf[_0x1c51('0x37')]();};}function saveUpdates(_0x5c159c,_0x47862e){return function(_0x3faa6a){if(_0x3faa6a){return _0x3faa6a[_0x1c51('0x38')](_0x5c159c)[_0x1c51('0x24')](function(_0x37f7f8){return _0x37f7f8;});}return null;};}function removeEntity(_0x72d279,_0x4f4399){return function(_0x47e094){if(_0x47e094){return _0x47e094[_0x1c51('0x39')]()[_0x1c51('0x24')](function(){var _0x1bd5d1=_0x47e094[_0x1c51('0x3a')]({'plain':!![]});var _0x6ce541=_0x1c51('0x3b');return db[_0x1c51('0x3c')]['destroy']({'where':{'type':_0x6ce541,'resourceId':_0x1bd5d1['id']}})['then'](function(){return _0x47e094;});})[_0x1c51('0x24')](function(){_0x72d279['status'](0xcc)[_0x1c51('0x2f')]();});}};}function handleEntityNotFound(_0x1c96d7,_0x327a64){return function(_0xdb9673){if(!_0xdb9673){_0x1c96d7[_0x1c51('0x2d')](0x194);}return _0xdb9673;};}function handleError(_0x3c39bb,_0x953d34){_0x953d34=_0x953d34||0x1f4;return function(_0x20e896){logger[_0x1c51('0x28')](_0x20e896[_0x1c51('0x3d')]);if(_0x20e896[_0x1c51('0x3e')]){delete _0x20e896[_0x1c51('0x3e')];}_0x3c39bb[_0x1c51('0x2e')](_0x953d34)['send'](_0x20e896);};}exports['index']=function(_0x309aab,_0x2f3fb1){var _0x425547={'include':[{'model':db[_0x1c51('0x3f')],'as':_0x1c51('0x40')},{'model':db[_0x1c51('0x41')],'as':'Smtp'},{'model':db[_0x1c51('0x42')],'as':'mandatoryDispositionPause'}]},_0x98fb29={},_0x4c2df0={'count':0x0,'rows':[]};var _0x22c839=_[_0x1c51('0x43')](db[_0x1c51('0x44')][_0x1c51('0x45')],function(_0x52b65){return{'name':_0x52b65[_0x1c51('0x46')],'type':_0x52b65['type']['key']};});_0x98fb29[_0x1c51('0x47')]=_[_0x1c51('0x43')](_0x22c839,'name');_0x98fb29['query']=_[_0x1c51('0x48')](_0x309aab[_0x1c51('0x49')]);_0x98fb29[_0x1c51('0x4a')]=_[_0x1c51('0x4b')](_0x98fb29[_0x1c51('0x47')],_0x98fb29[_0x1c51('0x49')]);_0x425547['attributes']=_[_0x1c51('0x4b')](_0x98fb29[_0x1c51('0x47')],qs['fields'](_0x309aab[_0x1c51('0x49')][_0x1c51('0x4c')]));_0x425547[_0x1c51('0x4d')]=_0x425547[_0x1c51('0x4d')][_0x1c51('0x4e')]?_0x425547[_0x1c51('0x4d')]:_0x98fb29['model'];if(!_0x309aab['query'][_0x1c51('0x4f')](_0x1c51('0x50'))){_0x425547['limit']=qs[_0x1c51('0x33')](_0x309aab[_0x1c51('0x49')][_0x1c51('0x33')]);_0x425547[_0x1c51('0x32')]=qs[_0x1c51('0x32')](_0x309aab[_0x1c51('0x49')][_0x1c51('0x32')]);}_0x425547['order']=qs[_0x1c51('0x51')](_0x309aab[_0x1c51('0x49')][_0x1c51('0x51')]);_0x425547[_0x1c51('0x52')]=qs['filters'](_[_0x1c51('0x53')](_0x309aab[_0x1c51('0x49')],_0x98fb29[_0x1c51('0x4a')]),_0x22c839);if(_0x309aab[_0x1c51('0x49')][_0x1c51('0x54')]){_0x425547['where']=_[_0x1c51('0x55')](_0x425547[_0x1c51('0x52')],{'$or':_[_0x1c51('0x43')](_0x22c839,function(_0x472b36){if(_0x472b36['type']!==_0x1c51('0x56')){var _0x196c96={};_0x196c96[_0x472b36[_0x1c51('0x3e')]]={'$like':'%'+_0x309aab[_0x1c51('0x49')][_0x1c51('0x54')]+'%'};return _0x196c96;}})});}_0x425547=_[_0x1c51('0x55')]({},_0x425547,_0x309aab[_0x1c51('0x57')]);var _0x28c4c0={'where':_0x425547['where']};return db['MailAccount']['count'](_0x28c4c0)[_0x1c51('0x24')](function(_0x327c47){_0x4c2df0[_0x1c51('0x31')]=_0x327c47;if(_0x309aab[_0x1c51('0x49')][_0x1c51('0x58')]){_0x425547['include']=[{'all':!![]}];}return db[_0x1c51('0x44')]['findAll'](_0x425547);})[_0x1c51('0x24')](function(_0x2e0957){_0x4c2df0[_0x1c51('0x59')]=_0x2e0957;return _0x4c2df0;})[_0x1c51('0x24')](respondWithFilteredResult(_0x2f3fb1,_0x425547))[_0x1c51('0x2c')](handleError(_0x2f3fb1,null));};exports[_0x1c51('0x5a')]=function(_0x49936c,_0x366b5){var _0x3f0edb={'raw':![],'where':{'id':_0x49936c[_0x1c51('0x5b')]['id']},'include':[{'model':db[_0x1c51('0x3f')],'as':_0x1c51('0x40')},{'model':db[_0x1c51('0x41')],'as':_0x1c51('0x5c')},{'model':db[_0x1c51('0x42')],'as':_0x1c51('0x5d')}]},_0x1caef8={};_0x1caef8['model']=_[_0x1c51('0x48')](db[_0x1c51('0x44')][_0x1c51('0x45')]);_0x1caef8[_0x1c51('0x49')]=_[_0x1c51('0x48')](_0x49936c['query']);_0x1caef8['filters']=_[_0x1c51('0x4b')](_0x1caef8['model'],_0x1caef8['query']);_0x3f0edb[_0x1c51('0x4d')]=_[_0x1c51('0x4b')](_0x1caef8[_0x1c51('0x47')],qs[_0x1c51('0x4c')](_0x49936c[_0x1c51('0x49')][_0x1c51('0x4c')]));_0x3f0edb[_0x1c51('0x4d')]=_0x3f0edb[_0x1c51('0x4d')]['length']?_0x3f0edb[_0x1c51('0x4d')]:_0x1caef8[_0x1c51('0x47')];if(_0x49936c[_0x1c51('0x49')][_0x1c51('0x58')]){_0x3f0edb[_0x1c51('0x5e')]=[{'all':!![]}];}_0x3f0edb=_['merge']({},_0x3f0edb,_0x49936c[_0x1c51('0x57')]);return db[_0x1c51('0x44')][_0x1c51('0x5f')](_0x3f0edb)['then'](handleEntityNotFound(_0x366b5,null))[_0x1c51('0x24')](respondWithResult(_0x366b5,null))[_0x1c51('0x2c')](handleError(_0x366b5,null));};exports['update']=function(_0x3427d3,_0x5b5cca){if(_0x3427d3[_0x1c51('0x60')]['id']){delete _0x3427d3[_0x1c51('0x60')]['id'];}return db[_0x1c51('0x44')][_0x1c51('0x5f')]({'where':{'id':_0x3427d3[_0x1c51('0x5b')]['id']},'include':[{'model':db[_0x1c51('0x3f')],'as':_0x1c51('0x40')},{'model':db['MailServerOut'],'as':_0x1c51('0x5c')},{'model':db['Pause'],'as':_0x1c51('0x5d')}]})['then'](handleEntityNotFound(_0x5b5cca,null))['then'](saveUpdates(_0x3427d3[_0x1c51('0x60')],null))['then'](function(_0x14b68b){if(_0x14b68b&&_0x3427d3[_0x1c51('0x60')][_0x1c51('0x40')]){return db['MailServerIn']['update'](_0x3427d3['body'][_0x1c51('0x40')],{'where':{'MailAccountId':_0x14b68b['id']}})['then'](function(){return _0x14b68b;});}return _0x14b68b;})[_0x1c51('0x24')](function(_0x7f3f4f){if(_0x7f3f4f&&_0x3427d3['body']['Smtp']){return db['MailServerOut']['update'](_0x3427d3['body'][_0x1c51('0x5c')],{'where':{'MailAccountId':_0x7f3f4f['id']}})['then'](function(){return _0x7f3f4f;});}return _0x7f3f4f;})[_0x1c51('0x24')](respondWithResult(_0x5b5cca,null))[_0x1c51('0x2c')](handleError(_0x5b5cca,null));};exports['describe']=function(_0x30592b,_0x4bab1d){return db[_0x1c51('0x44')][_0x1c51('0x61')]()['then'](respondWithResult(_0x4bab1d,null))['catch'](handleError(_0x4bab1d,null));};exports[_0x1c51('0x62')]=function(_0x26e66c,_0x39e81e,_0x11958e){if(_0x26e66c['body']['id']){delete _0x26e66c[_0x1c51('0x60')]['id'];}return db[_0x1c51('0x44')][_0x1c51('0x5f')]({'where':{'id':_0x26e66c['params']['id']}})[_0x1c51('0x24')](handleEntityNotFound(_0x39e81e,null))[_0x1c51('0x24')](function(_0x3a12ff){if(_0x3a12ff){_0x26e66c['body'][_0x1c51('0x63')]=_0x3a12ff['id'];return db[_0x1c51('0x64')][_0x1c51('0x65')](_0x26e66c[_0x1c51('0x60')]);}})['then'](respondWithResult(_0x39e81e,null))['catch'](handleError(_0x39e81e,null));};exports[_0x1c51('0x66')]=function(_0x26f82c,_0xef784d,_0x6b9760){var _0x58274a={'raw':![],'where':{}};var _0x38605a={};var _0x2b8b44={'count':0x0,'rows':[]};return db[_0x1c51('0x44')][_0x1c51('0x67')]({'where':{'id':_0x26f82c['params']['id']}})['then'](handleEntityNotFound(_0xef784d,null))[_0x1c51('0x24')](function(_0x3ae6ef){if(_0x3ae6ef){_0x38605a['model']=_[_0x1c51('0x48')](db[_0x1c51('0x64')][_0x1c51('0x45')]);_0x38605a[_0x1c51('0x49')]=_[_0x1c51('0x48')](_0x26f82c[_0x1c51('0x49')]);_0x38605a['filters']=_[_0x1c51('0x4b')](_0x38605a['model'],_0x38605a[_0x1c51('0x49')]);_0x58274a[_0x1c51('0x4d')]=_[_0x1c51('0x4b')](_0x38605a['model'],qs['fields'](_0x26f82c[_0x1c51('0x49')][_0x1c51('0x4c')]));_0x58274a[_0x1c51('0x4d')]=_0x58274a[_0x1c51('0x4d')][_0x1c51('0x4e')]?_0x58274a[_0x1c51('0x4d')]:_0x38605a[_0x1c51('0x47')];if(!_0x26f82c[_0x1c51('0x49')][_0x1c51('0x4f')](_0x1c51('0x50'))){_0x58274a['limit']=qs[_0x1c51('0x33')](_0x26f82c[_0x1c51('0x49')][_0x1c51('0x33')]);_0x58274a[_0x1c51('0x32')]=qs['offset'](_0x26f82c['query'][_0x1c51('0x32')]);}_0x58274a['order']=qs[_0x1c51('0x51')](_0x26f82c['query'][_0x1c51('0x51')]);_0x58274a[_0x1c51('0x52')]=qs[_0x1c51('0x4a')](_[_0x1c51('0x53')](_0x26f82c['query'],_0x38605a[_0x1c51('0x4a')]));_0x58274a['where'][_0x1c51('0x63')]=_0x3ae6ef['id'];if(_0x26f82c[_0x1c51('0x49')]['filter']){_0x58274a[_0x1c51('0x52')]=_[_0x1c51('0x55')](_0x58274a[_0x1c51('0x52')],{'$or':_[_0x1c51('0x43')](_0x58274a[_0x1c51('0x4d')],function(_0x39fd8e){var _0x5591a5={};_0x5591a5[_0x39fd8e]={'$like':'%'+_0x26f82c[_0x1c51('0x49')][_0x1c51('0x54')]+'%'};return _0x5591a5;})});}_0x58274a=_['merge']({},_0x58274a,_0x26f82c[_0x1c51('0x57')]);return db[_0x1c51('0x64')][_0x1c51('0x31')]({'where':_0x58274a['where']})[_0x1c51('0x24')](function(_0x3b5dc8){_0x2b8b44[_0x1c51('0x31')]=_0x3b5dc8;if(_0x26f82c[_0x1c51('0x49')]['includeAll']){_0x58274a[_0x1c51('0x5e')]=[{'all':!![]}];}return db[_0x1c51('0x64')][_0x1c51('0x68')](_0x58274a);})['then'](function(_0x3a05e0){_0x2b8b44[_0x1c51('0x59')]=_0x3a05e0;return _0x2b8b44;});}})[_0x1c51('0x24')](respondWithFilteredResult(_0xef784d,_0x58274a))['catch'](handleError(_0xef784d,null));};exports[_0x1c51('0x69')]=function(_0x525376,_0x22d5c8,_0x197312){return db[_0x1c51('0x44')][_0x1c51('0x5f')]({'where':{'id':_0x525376[_0x1c51('0x5b')]['id']}})[_0x1c51('0x24')](handleEntityNotFound(_0x22d5c8,null))[_0x1c51('0x24')](function(_0x58c1fd){if(_0x58c1fd){return _0x58c1fd['removeDispositions'](_0x525376[_0x1c51('0x49')][_0x1c51('0x6a')]);}})[_0x1c51('0x24')](respondWithStatusCode(_0x22d5c8,null))[_0x1c51('0x2c')](handleError(_0x22d5c8,null));};exports[_0x1c51('0x6b')]=function(_0x3e2c68,_0x28caa1,_0x3bade4){if(_0x3e2c68[_0x1c51('0x60')]['id']){delete _0x3e2c68[_0x1c51('0x60')]['id'];}return db[_0x1c51('0x44')]['find']({'where':{'id':_0x3e2c68[_0x1c51('0x5b')]['id']}})[_0x1c51('0x24')](handleEntityNotFound(_0x28caa1,null))['then'](function(_0x187b17){if(_0x187b17){_0x3e2c68['body'][_0x1c51('0x63')]=_0x187b17['id'];return db['CannedAnswer'][_0x1c51('0x65')](_0x3e2c68['body']);}})['then'](respondWithResult(_0x28caa1,null))[_0x1c51('0x2c')](handleError(_0x28caa1,null));};exports[_0x1c51('0x6c')]=function(_0x366232,_0x6a24eb,_0x2170fe){var _0x52a1f6={'raw':![],'where':{}};var _0xcc86c={};var _0xf36e78={'count':0x0,'rows':[]};return db[_0x1c51('0x44')][_0x1c51('0x67')]({'where':{'id':_0x366232[_0x1c51('0x5b')]['id']}})[_0x1c51('0x24')](handleEntityNotFound(_0x6a24eb,null))[_0x1c51('0x24')](function(_0x426154){if(_0x426154){_0xcc86c['model']=_[_0x1c51('0x48')](db[_0x1c51('0x6d')]['rawAttributes']);_0xcc86c[_0x1c51('0x49')]=_[_0x1c51('0x48')](_0x366232[_0x1c51('0x49')]);_0xcc86c['filters']=_['intersection'](_0xcc86c[_0x1c51('0x47')],_0xcc86c[_0x1c51('0x49')]);_0x52a1f6[_0x1c51('0x4d')]=_[_0x1c51('0x4b')](_0xcc86c['model'],qs['fields'](_0x366232[_0x1c51('0x49')][_0x1c51('0x4c')]));_0x52a1f6[_0x1c51('0x4d')]=_0x52a1f6[_0x1c51('0x4d')][_0x1c51('0x4e')]?_0x52a1f6['attributes']:_0xcc86c[_0x1c51('0x47')];if(!_0x366232['query'][_0x1c51('0x4f')]('nolimit')){_0x52a1f6[_0x1c51('0x33')]=qs['limit'](_0x366232[_0x1c51('0x49')][_0x1c51('0x33')]);_0x52a1f6['offset']=qs[_0x1c51('0x32')](_0x366232['query'][_0x1c51('0x32')]);}_0x52a1f6[_0x1c51('0x6e')]=qs['sort'](_0x366232[_0x1c51('0x49')][_0x1c51('0x51')]);_0x52a1f6[_0x1c51('0x52')]=qs[_0x1c51('0x4a')](_[_0x1c51('0x53')](_0x366232[_0x1c51('0x49')],_0xcc86c[_0x1c51('0x4a')]));_0x52a1f6[_0x1c51('0x52')]['MailAccountId']=_0x426154['id'];if(_0x366232[_0x1c51('0x49')][_0x1c51('0x54')]){_0x52a1f6[_0x1c51('0x52')]=_[_0x1c51('0x55')](_0x52a1f6[_0x1c51('0x52')],{'$or':_[_0x1c51('0x43')](_0x52a1f6[_0x1c51('0x4d')],function(_0x5748c9){var _0x5a82b1={};_0x5a82b1[_0x5748c9]={'$like':'%'+_0x366232['query']['filter']+'%'};return _0x5a82b1;})});}_0x52a1f6=_[_0x1c51('0x55')]({},_0x52a1f6,_0x366232['options']);return db[_0x1c51('0x6d')][_0x1c51('0x31')]({'where':_0x52a1f6[_0x1c51('0x52')]})[_0x1c51('0x24')](function(_0x11d270){_0xf36e78[_0x1c51('0x31')]=_0x11d270;if(_0x366232[_0x1c51('0x49')][_0x1c51('0x58')]){_0x52a1f6['include']=[{'all':!![]}];}return db[_0x1c51('0x6d')][_0x1c51('0x68')](_0x52a1f6);})[_0x1c51('0x24')](function(_0x8ecd00){_0xf36e78[_0x1c51('0x59')]=_0x8ecd00;return _0xf36e78;});}})[_0x1c51('0x24')](respondWithFilteredResult(_0x6a24eb,_0x52a1f6))[_0x1c51('0x2c')](handleError(_0x6a24eb,null));};exports[_0x1c51('0x6f')]=function(_0x5cb8e9,_0x45d5c1,_0x372d44){return db['MailAccount']['find']({'where':{'id':_0x5cb8e9['params']['id']}})[_0x1c51('0x24')](handleEntityNotFound(_0x45d5c1,null))[_0x1c51('0x24')](function(_0x51eee6){if(_0x51eee6){return _0x51eee6[_0x1c51('0x6f')](_0x5cb8e9[_0x1c51('0x49')][_0x1c51('0x6a')]);}})[_0x1c51('0x24')](respondWithStatusCode(_0x45d5c1,null))['catch'](handleError(_0x45d5c1,null));};exports[_0x1c51('0x65')]=function(_0x1a3a6a,_0x15ae52){var _0x54db11={'name':_0x1a3a6a[_0x1c51('0x60')][_0x1c51('0x3e')],'key':_0x1a3a6a[_0x1c51('0x60')][_0x1c51('0x70')],'email':_0x1a3a6a[_0x1c51('0x60')][_0x1c51('0x71')],'ListId':_0x1a3a6a[_0x1c51('0x60')]['ListId'],'active':!_['isNil'](_0x1a3a6a[_0x1c51('0x60')][_0x1c51('0x72')])?_0x1a3a6a[_0x1c51('0x60')][_0x1c51('0x72')]:!![],'description':_0x1a3a6a[_0x1c51('0x60')][_0x1c51('0x73')]||null,'Imap':{},'Smtp':{}};if(_['isNil'](_0x1a3a6a[_0x1c51('0x60')][_0x1c51('0x74')])){if(_0x1a3a6a[_0x1c51('0x60')]['cauthentication']){_0x54db11['Imap'][_0x1c51('0x75')]=_0x54db11['Smtp'][_0x1c51('0x75')]=_0x1a3a6a[_0x1c51('0x60')][_0x1c51('0x76')];_0x54db11[_0x1c51('0x40')][_0x1c51('0x77')]=_0x54db11[_0x1c51('0x5c')]['pass']=_0x1a3a6a[_0x1c51('0x60')]['cpassword'];}else{_0x54db11[_0x1c51('0x40')][_0x1c51('0x78')]=_0x54db11[_0x1c51('0x5c')][_0x1c51('0x78')]=![];}_0x54db11[_0x1c51('0x40')][_0x1c51('0x79')]=_0x1a3a6a['body'][_0x1c51('0x40')]['host'];_0x54db11[_0x1c51('0x40')]['port']=_0x1a3a6a[_0x1c51('0x60')][_0x1c51('0x40')][_0x1c51('0x7a')];_0x54db11[_0x1c51('0x5c')][_0x1c51('0x79')]=_0x1a3a6a[_0x1c51('0x60')]['Smtp'][_0x1c51('0x79')];_0x54db11[_0x1c51('0x5c')][_0x1c51('0x7a')]=_0x1a3a6a[_0x1c51('0x60')]['Smtp'][_0x1c51('0x7a')];}else{_0x54db11[_0x1c51('0x40')]['service']=_0x54db11[_0x1c51('0x5c')]['service']=_0x1a3a6a[_0x1c51('0x60')][_0x1c51('0x74')];_0x54db11[_0x1c51('0x40')][_0x1c51('0x75')]=_0x54db11['Smtp'][_0x1c51('0x75')]=_0x1a3a6a[_0x1c51('0x60')]['cuser'];_0x54db11[_0x1c51('0x40')][_0x1c51('0x77')]=_0x54db11['Smtp'][_0x1c51('0x7b')]=_0x1a3a6a['body'][_0x1c51('0x7c')];}return db[_0x1c51('0x44')][_0x1c51('0x65')](_0x54db11,{'include':[{'model':db[_0x1c51('0x41')],'as':_0x1c51('0x5c')},{'model':db[_0x1c51('0x3f')],'as':_0x1c51('0x40')}]})[_0x1c51('0x24')](function(_0x45b4ec){var _0x515d4d=_0x1a3a6a[_0x1c51('0x75')]['get']({'plain':!![]});if(!_0x515d4d)throw new Error(_0x1c51('0x7d'));if(_0x515d4d[_0x1c51('0x7e')]===_0x1c51('0x75')){var _0x56c853=_0x45b4ec['get']({'plain':!![]});return db['UserProfileSection']['find']({'where':{'name':_0x1c51('0x3b'),'userProfileId':_0x515d4d[_0x1c51('0x7f')]},'raw':!![]})[_0x1c51('0x24')](function(_0x52b97e){if(_0x52b97e&&_0x52b97e[_0x1c51('0x80')]===0x0){return db['UserProfileResource'][_0x1c51('0x65')]({'name':_0x56c853['name'],'resourceId':_0x56c853['id'],'type':_0x52b97e[_0x1c51('0x3e')],'sectionId':_0x52b97e['id']},{})[_0x1c51('0x24')](function(){return _0x45b4ec;});}else{return _0x45b4ec;}})[_0x1c51('0x2c')](function(_0x1d4952){logger[_0x1c51('0x28')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x1d4952);throw _0x1d4952;});}return _0x45b4ec;})[_0x1c51('0x24')](respondWithResult(_0x15ae52,0xc9))[_0x1c51('0x2c')](handleError(_0x15ae52,null));};exports[_0x1c51('0x81')]=function(_0x194530,_0x119176,_0x3e5f05){return db['MailAccount']['findOne']({'where':{'id':_0x194530['params']['id']}})[_0x1c51('0x24')](handleEntityNotFound(_0x119176,null))['then'](function(_0xf2135f){if(_0xf2135f){return _0xf2135f[_0x1c51('0x81')]();}return null;})[_0x1c51('0x24')](respondWithResult(_0x119176,null))[_0x1c51('0x2c')](handleError(_0x119176,null));};exports[_0x1c51('0x82')]=function(_0x6fe75b,_0x148fd4,_0x5b1b03){if(_0x6fe75b[_0x1c51('0x60')]['id']){delete _0x6fe75b[_0x1c51('0x60')]['id'];}return db[_0x1c51('0x44')][_0x1c51('0x5f')]({'where':{'id':_0x6fe75b[_0x1c51('0x5b')]['id']}})[_0x1c51('0x24')](handleEntityNotFound(_0x148fd4,null))[_0x1c51('0x24')](function(_0x4e29db){if(_0x4e29db){_0x6fe75b[_0x1c51('0x60')][_0x1c51('0x63')]=_0x4e29db['id'];return db['MailServerIn'][_0x1c51('0x65')](_0x6fe75b[_0x1c51('0x60')]);}})[_0x1c51('0x24')](respondWithResult(_0x148fd4,null))[_0x1c51('0x2c')](handleError(_0x148fd4,null));};exports[_0x1c51('0x83')]=function(_0x2fc594,_0x2e1e30,_0x14163a){return db['MailAccount'][_0x1c51('0x67')]({'where':{'id':_0x2fc594[_0x1c51('0x5b')]['id']}})[_0x1c51('0x24')](handleEntityNotFound(_0x2e1e30,null))[_0x1c51('0x24')](function(_0x398a53){if(_0x398a53){return _0x398a53[_0x1c51('0x84')](null);}return null;})[_0x1c51('0x24')](respondWithStatusCode(_0x2e1e30,null))[_0x1c51('0x2c')](handleError(_0x2e1e30,null));};exports['getSmtp']=function(_0x2d8e54,_0x303ed1,_0x4da4a8){return db[_0x1c51('0x44')][_0x1c51('0x67')]({'where':{'id':_0x2d8e54[_0x1c51('0x5b')]['id']}})[_0x1c51('0x24')](handleEntityNotFound(_0x303ed1,null))[_0x1c51('0x24')](function(_0x370630){if(_0x370630){return _0x370630[_0x1c51('0x85')]();}return null;})['then'](respondWithResult(_0x303ed1,null))[_0x1c51('0x2c')](handleError(_0x303ed1,null));};exports[_0x1c51('0x86')]=function(_0xc44ee6,_0x2d4557,_0x2a2d2b){if(_0xc44ee6[_0x1c51('0x60')]['id']){delete _0xc44ee6[_0x1c51('0x60')]['id'];}return db['MailAccount'][_0x1c51('0x5f')]({'where':{'id':_0xc44ee6[_0x1c51('0x5b')]['id']}})['then'](handleEntityNotFound(_0x2d4557,null))[_0x1c51('0x24')](function(_0x4d1f39){if(_0x4d1f39){_0xc44ee6[_0x1c51('0x60')][_0x1c51('0x63')]=_0x4d1f39['id'];return db['MailServerOut'][_0x1c51('0x65')](_0xc44ee6['body']);}})['then'](respondWithResult(_0x2d4557,null))[_0x1c51('0x2c')](handleError(_0x2d4557,null));};exports[_0x1c51('0x87')]=function(_0x29a801,_0x501867,_0xbcbf54){return db['MailAccount'][_0x1c51('0x67')]({'where':{'id':_0x29a801[_0x1c51('0x5b')]['id']}})[_0x1c51('0x24')](handleEntityNotFound(_0x501867,null))[_0x1c51('0x24')](function(_0xcaf5a){if(_0xcaf5a){return _0xcaf5a[_0x1c51('0x88')](null);}return null;})[_0x1c51('0x24')](respondWithStatusCode(_0x501867,null))[_0x1c51('0x2c')](handleError(_0x501867,null));};exports[_0x1c51('0x89')]=function(_0x869832,_0x28cc25,_0x26f5a){return db[_0x1c51('0x8a')][_0x1c51('0x5f')]({'where':{'id':_0x869832['params']['id']}})[_0x1c51('0x24')](handleEntityNotFound(_0x28cc25,null))[_0x1c51('0x24')](function(_0x592a91){if(_0x592a91){return _0x592a91['addInteraction'](_0x869832[_0x1c51('0x60')]['ids'],_[_0x1c51('0x8b')](_0x869832[_0x1c51('0x60')],[_0x1c51('0x6a'),'id'])||{});}})[_0x1c51('0x24')](respondWithResult(_0x28cc25,null))[_0x1c51('0x2c')](handleError(_0x28cc25,null));};exports['getInteractions']=function(_0x565a57,_0x2f51b0,_0x30f15e){var _0x25af4d={'raw':![],'where':{}};var _0x38ce2e={};var _0x41368f={'count':0x0,'rows':[]};return db['MailAccount'][_0x1c51('0x67')]({'where':{'id':_0x565a57['params']['id']}})[_0x1c51('0x24')](handleEntityNotFound(_0x2f51b0,null))[_0x1c51('0x24')](function(_0x3cd3d6){if(_0x3cd3d6){_0x38ce2e[_0x1c51('0x47')]=_['keys'](db[_0x1c51('0x8a')][_0x1c51('0x45')]);_0x38ce2e[_0x1c51('0x49')]=_[_0x1c51('0x48')](_0x565a57[_0x1c51('0x49')]);_0x38ce2e[_0x1c51('0x4a')]=_['intersection'](_0x38ce2e[_0x1c51('0x47')],_0x38ce2e[_0x1c51('0x49')]);_0x25af4d[_0x1c51('0x4d')]=_['intersection'](_0x38ce2e[_0x1c51('0x47')],qs['fields'](_0x565a57[_0x1c51('0x49')][_0x1c51('0x4c')]));_0x25af4d[_0x1c51('0x4d')]=_0x25af4d['attributes']['length']?_0x25af4d[_0x1c51('0x4d')]:_0x38ce2e[_0x1c51('0x47')];if(!_0x565a57[_0x1c51('0x49')]['hasOwnProperty'](_0x1c51('0x50'))){_0x25af4d[_0x1c51('0x33')]=qs[_0x1c51('0x33')](_0x565a57[_0x1c51('0x49')][_0x1c51('0x33')]);_0x25af4d[_0x1c51('0x32')]=qs[_0x1c51('0x32')](_0x565a57[_0x1c51('0x49')][_0x1c51('0x32')]);}_0x25af4d[_0x1c51('0x6e')]=qs[_0x1c51('0x51')](_0x565a57[_0x1c51('0x49')][_0x1c51('0x51')]);_0x25af4d[_0x1c51('0x52')]=qs[_0x1c51('0x4a')](_[_0x1c51('0x53')](_0x565a57[_0x1c51('0x49')],_0x38ce2e[_0x1c51('0x4a')]));_0x25af4d['where'][_0x1c51('0x63')]=_0x3cd3d6['id'];if(_0x565a57[_0x1c51('0x49')][_0x1c51('0x54')]){_0x25af4d[_0x1c51('0x52')]=_[_0x1c51('0x55')](_0x25af4d[_0x1c51('0x52')],{'$or':_['map'](_0x25af4d['attributes'],function(_0x444dbe){var _0x75900d={};_0x75900d[_0x444dbe]={'$like':'%'+_0x565a57[_0x1c51('0x49')]['filter']+'%'};return _0x75900d;})});}_0x25af4d=_[_0x1c51('0x55')]({},_0x25af4d,_0x565a57['options']);return db[_0x1c51('0x8a')][_0x1c51('0x31')]({'where':_0x25af4d[_0x1c51('0x52')]})[_0x1c51('0x24')](function(_0x47fe8){_0x41368f[_0x1c51('0x31')]=_0x47fe8;if(_0x565a57[_0x1c51('0x49')][_0x1c51('0x58')]){_0x25af4d[_0x1c51('0x5e')]=[{'model':db[_0x1c51('0x8c')],'as':_0x1c51('0x8d'),'required':![]},{'model':db[_0x1c51('0x8e')],'as':_0x1c51('0x8f'),'attributes':[_0x1c51('0x3e'),_0x1c51('0x90'),_0x1c51('0x91')],'required':![]},{'model':db[_0x1c51('0x92')],'as':_0x1c51('0x93'),'attributes':['id','name',_0x1c51('0x94')],'where':_0x565a57[_0x1c51('0x49')]['tag']?{'id':_0x565a57[_0x1c51('0x49')]['tag']}:undefined,'required':_0x565a57[_0x1c51('0x49')][_0x1c51('0x95')]?!![]:![]}];}return db[_0x1c51('0x8a')]['findAll'](_0x25af4d);})['then'](function(_0xbcee5a){_0x41368f[_0x1c51('0x59')]=_0xbcee5a;return _0x41368f;});}})[_0x1c51('0x24')](respondWithFilteredResult(_0x2f51b0,_0x25af4d))[_0x1c51('0x2c')](handleError(_0x2f51b0,null));};exports[_0x1c51('0x96')]=function(_0x28f983,_0x3ee028,_0x1c44b3){return db[_0x1c51('0x44')][_0x1c51('0x67')]({'where':{'id':_0x28f983[_0x1c51('0x5b')]['id']}})[_0x1c51('0x24')](handleEntityNotFound(_0x3ee028,null))[_0x1c51('0x24')](function(_0x3a1193){if(_0x3a1193){return db[_0x1c51('0x97')][_0x1c51('0x98')](function(_0x101f75){return db[_0x1c51('0x99')][_0x1c51('0x39')]({'where':{'MailAccountId':_0x28f983[_0x1c51('0x5b')]['id']},'transaction':_0x101f75})[_0x1c51('0x24')](function(_0x2b417b){var _0x17bf61=_[_0x1c51('0x43')](_0x28f983[_0x1c51('0x60')],function(_0x5bbfb4){_0x5bbfb4[_0x1c51('0x63')]=_0x28f983['params']['id'];return _0x5bbfb4;});return db[_0x1c51('0x99')][_0x1c51('0x9a')](_0x17bf61,{'transaction':_0x101f75});});})[_0x1c51('0x24')](function(){return db[_0x1c51('0x99')][_0x1c51('0x9b')]({'where':{'MailAccountId':_0x28f983[_0x1c51('0x5b')]['id']},'order':_0x1c51('0x9c')});});}})['then'](respondWithResult(_0x3ee028,null))[_0x1c51('0x2c')](handleError(_0x3ee028,null));};exports[_0x1c51('0x9d')]=function(_0x2b836e,_0x280e7f,_0x46a169){var _0x5d65ec={};var _0x20e971={};var _0x2b2f4c;var _0xd773c4;return db[_0x1c51('0x44')]['findOne']({'where':{'id':_0x2b836e['params']['id']}})[_0x1c51('0x24')](handleEntityNotFound(_0x280e7f,null))[_0x1c51('0x24')](function(_0x5b3169){if(_0x5b3169){_0x2b2f4c=_0x5b3169;_0x20e971[_0x1c51('0x47')]=_['keys'](db[_0x1c51('0x99')][_0x1c51('0x45')]);_0x20e971[_0x1c51('0x49')]=_[_0x1c51('0x48')](_0x2b836e['query']);_0x20e971[_0x1c51('0x4a')]=_[_0x1c51('0x4b')](_0x20e971['model'],_0x20e971[_0x1c51('0x49')]);_0x5d65ec[_0x1c51('0x4d')]=_[_0x1c51('0x4b')](_0x20e971[_0x1c51('0x47')],qs[_0x1c51('0x4c')](_0x2b836e['query'][_0x1c51('0x4c')]));_0x5d65ec['attributes']=_0x5d65ec[_0x1c51('0x4d')][_0x1c51('0x4e')]?_0x5d65ec['attributes']:_0x20e971['model'];_0x5d65ec[_0x1c51('0x6e')]=qs[_0x1c51('0x51')](_0x2b836e[_0x1c51('0x49')][_0x1c51('0x51')]);_0x5d65ec['where']=qs['filters'](_[_0x1c51('0x53')](_0x2b836e[_0x1c51('0x49')],_0x20e971[_0x1c51('0x4a')]));if(_0x2b836e[_0x1c51('0x49')][_0x1c51('0x54')]){_0x5d65ec[_0x1c51('0x52')]=_[_0x1c51('0x55')](_0x5d65ec[_0x1c51('0x52')],{'$or':_['map'](_0x5d65ec[_0x1c51('0x4d')],function(_0xc63f4d){var _0x51531a={};_0x51531a[_0xc63f4d]={'$like':'%'+_0x2b836e[_0x1c51('0x49')]['filter']+'%'};return _0x51531a;})});}_0x5d65ec=_[_0x1c51('0x55')]({},_0x5d65ec,_0x2b836e['options']);return _0x2b2f4c[_0x1c51('0x9d')](_0x5d65ec);}})['then'](function(_0x4bd9ee){if(_0x4bd9ee){_0xd773c4=_0x4bd9ee['length'];if(!_0x2b836e['query'][_0x1c51('0x4f')](_0x1c51('0x50'))){_0x5d65ec['limit']=qs[_0x1c51('0x33')](_0x2b836e[_0x1c51('0x49')][_0x1c51('0x33')]);_0x5d65ec[_0x1c51('0x32')]=qs[_0x1c51('0x32')](_0x2b836e[_0x1c51('0x49')][_0x1c51('0x32')]);}return _0x2b2f4c[_0x1c51('0x9d')](_0x5d65ec);}})[_0x1c51('0x24')](function(_0x9df4f){if(_0x9df4f){return _0x9df4f?{'count':_0xd773c4,'rows':_0x9df4f}:null;}})[_0x1c51('0x24')](respondWithResult(_0x280e7f,null))[_0x1c51('0x2c')](handleError(_0x280e7f,null));};exports['getMessages']=function(_0x335e19,_0x3b723c,_0x2a4b49){var _0x18dda9={'raw':!![],'where':{}};var _0x5101c0={};var _0x2c9de8={'count':0x0,'rows':[]};return db[_0x1c51('0x44')][_0x1c51('0x67')]({'where':{'id':_0x335e19[_0x1c51('0x5b')]['id']}})[_0x1c51('0x24')](handleEntityNotFound(_0x3b723c,null))[_0x1c51('0x24')](function(_0x546a61){if(_0x546a61){_0x5101c0[_0x1c51('0x47')]=_[_0x1c51('0x48')](db[_0x1c51('0x9e')][_0x1c51('0x45')]);_0x5101c0[_0x1c51('0x49')]=_[_0x1c51('0x48')](_0x335e19['query']);_0x5101c0['filters']=_[_0x1c51('0x4b')](_0x5101c0['model'],_0x5101c0[_0x1c51('0x49')]);_0x18dda9[_0x1c51('0x4d')]=_[_0x1c51('0x4b')](_0x5101c0[_0x1c51('0x47')],qs[_0x1c51('0x4c')](_0x335e19[_0x1c51('0x49')][_0x1c51('0x4c')]));_0x18dda9[_0x1c51('0x4d')]=_0x18dda9[_0x1c51('0x4d')]['length']?_0x18dda9[_0x1c51('0x4d')]:_0x5101c0[_0x1c51('0x47')];if(!_0x335e19[_0x1c51('0x49')][_0x1c51('0x4f')]('nolimit')){_0x18dda9[_0x1c51('0x33')]=qs[_0x1c51('0x33')](_0x335e19['query'][_0x1c51('0x33')]);_0x18dda9[_0x1c51('0x32')]=qs[_0x1c51('0x32')](_0x335e19[_0x1c51('0x49')][_0x1c51('0x32')]);}_0x18dda9['order']=qs[_0x1c51('0x51')](_0x335e19[_0x1c51('0x49')][_0x1c51('0x51')]);_0x18dda9[_0x1c51('0x52')]=qs[_0x1c51('0x4a')](_[_0x1c51('0x53')](_0x335e19[_0x1c51('0x49')],_0x5101c0[_0x1c51('0x4a')]));_0x18dda9[_0x1c51('0x52')]['MailAccountId']=_0x546a61['id'];if(_0x335e19[_0x1c51('0x49')][_0x1c51('0x54')]){_0x18dda9['where']=_[_0x1c51('0x55')](_0x18dda9[_0x1c51('0x52')],{'$or':_[_0x1c51('0x43')](_0x18dda9[_0x1c51('0x4d')],function(_0x3a8884){var _0x28fbfa={};_0x28fbfa[_0x3a8884]={'$like':'%'+_0x335e19[_0x1c51('0x49')][_0x1c51('0x54')]+'%'};return _0x28fbfa;})});}if(_0x335e19[_0x1c51('0x49')]['$gte']){var _0x2d1e37=_0x335e19['query'][_0x1c51('0x9f')][_0x1c51('0xa0')](',');var _0x4fc63a={};_0x4fc63a[_0x2d1e37[0x0]]={'$gte':moment(_0x2d1e37[0x1])['format'](_0x1c51('0xa1'))};_0x18dda9['where']=_[_0x1c51('0x55')](_0x18dda9[_0x1c51('0x52')],_0x4fc63a);}_0x18dda9=_[_0x1c51('0x55')]({},_0x18dda9,_0x335e19[_0x1c51('0x57')]);return db[_0x1c51('0x9e')]['count']({'where':_0x18dda9[_0x1c51('0x52')]})[_0x1c51('0x24')](function(_0x2d9434){_0x2c9de8[_0x1c51('0x31')]=_0x2d9434;if(_0x335e19['query'][_0x1c51('0x58')]){_0x18dda9[_0x1c51('0x5e')]=[{'all':!![]}];}return db['MailMessage'][_0x1c51('0x68')](_0x18dda9);})['then'](function(_0x165ade){_0x2c9de8[_0x1c51('0x59')]=_0x165ade;return _0x2c9de8;});}})[_0x1c51('0x24')](respondWithFilteredResult(_0x3b723c,_0x18dda9))[_0x1c51('0x2c')](handleError(_0x3b723c,null));};exports['send']=function(_0xca2951,_0x1f32f8,_0x33b00c){var _0x3333f1,_0x3914dd={},_0xc4d1a1;if(_0xca2951[_0x1c51('0x60')]['to']){_0xc4d1a1=_0xca2951['body']['to'][_0x1c51('0xa0')](',')[0x0];}return db[_0x1c51('0x44')]['find']({'where':{'id':_0xca2951[_0x1c51('0x5b')]['id']},'include':[{'model':db[_0x1c51('0xa2')],'as':_0x1c51('0xa3'),'include':[{'model':db[_0x1c51('0x8c')],'as':_0x1c51('0xa4'),'where':{'email':_0xc4d1a1},'limit':0x1,'order':[[_0x1c51('0xa5'),'DESC']]}]},{'model':db[_0x1c51('0x41')],'as':_0x1c51('0x5c'),'raw':!![]}]})[_0x1c51('0x24')](handleEntityNotFound(_0x1f32f8,null))[_0x1c51('0x24')](function(_0x3e024d){if(_0x3e024d){_0x3333f1=_0x3e024d;if(_0x3e024d['Smtp']){if(_[_0x1c51('0xa6')](_0xca2951['body'][_0x1c51('0xa7')])){_0xca2951[_0x1c51('0x60')][_0x1c51('0xa7')]=util[_0x1c51('0xa8')]('%s\x20<%s>',_0x3e024d['name'],_0x3e024d[_0x1c51('0x71')]||_0x3e024d[_0x1c51('0x5c')][_0x1c51('0x75')]);}if(_0xca2951['body'][_0x1c51('0xa9')]&&_0xca2951[_0x1c51('0x60')][_0x1c51('0xa9')][_0x1c51('0x4e')]){for(var _0xea785d=0x0;_0xea785d<_0xca2951['body']['attachments'][_0x1c51('0x4e')];_0xea785d+=0x1){_0xca2951[_0x1c51('0x60')][_0x1c51('0xa9')][_0xea785d]={'filename':_0xca2951['body'][_0x1c51('0xa9')][_0xea785d]['name'],'path':path[_0x1c51('0xaa')](config[_0x1c51('0xab')],'server/files/attachments',_0xca2951[_0x1c51('0x60')][_0x1c51('0xa9')][_0xea785d][_0x1c51('0xac')])};}}var _0x206583={'tls':{'rejectUnauthorized':![]}};if(_[_0x1c51('0xa6')](_0x3e024d[_0x1c51('0x5c')]['service'])){if(_0x3e024d['Smtp']['authentication']){_0x206583['auth']={'user':_0x3e024d[_0x1c51('0x5c')]['user'],'pass':_0x3e024d[_0x1c51('0x5c')][_0x1c51('0x7b')]};}_0x206583[_0x1c51('0x79')]=_0x3e024d[_0x1c51('0x5c')][_0x1c51('0x79')];_0x206583['port']=_0x3e024d[_0x1c51('0x5c')][_0x1c51('0x7a')];_0x206583[_0x1c51('0xad')]=_0x3e024d[_0x1c51('0x5c')][_0x1c51('0xad')];}else{_0x206583[_0x1c51('0xae')]=_0x3e024d[_0x1c51('0x5c')]['service'];_0x206583[_0x1c51('0xaf')]={'user':_0x3e024d[_0x1c51('0x5c')][_0x1c51('0x75')],'pass':_0x3e024d[_0x1c51('0x5c')][_0x1c51('0x7b')]};}return respondWithRpcPromise(_0x1c51('0xb0'),_0x1c51('0xb1'),{'account':_0x206583,'message':_0xca2951[_0x1c51('0x60')]});}else{throw new Error(_0x1c51('0xb2'));}}})[_0x1c51('0x24')](function(_0x464fab){if(_0x464fab){_0x3914dd=_0x464fab;if(_0x3333f1['List']){if(_0x3333f1[_0x1c51('0xa3')][_0x1c51('0xa4')][_0x1c51('0x4e')]){return _0x3333f1[_0x1c51('0xa3')][_0x1c51('0xa4')][0x0];}else{return db[_0x1c51('0x8c')][_0x1c51('0x65')](_['defaults'](_0xca2951[_0x1c51('0x60')],{'firstName':_0xca2951[_0x1c51('0x60')]['to'],'email':_0xca2951[_0x1c51('0x60')]['to'],'phone':_0xca2951[_0x1c51('0x60')]['to'],'ListId':_0x3333f1[_0x1c51('0xb3')]}));}}else{throw new Error(_0x1c51('0xb2'));}}})[_0x1c51('0x24')](function(_0x501552){if(_0x501552){var _0x2ae104={'UserId':_0xca2951['user']['id'],'ContactId':_0x501552['id'],'MailAccountId':_0x3333f1['id'],'inReplyTo':_0x3914dd[_0x1c51('0xb4')],'to':_0xca2951[_0x1c51('0x60')][_0x1c51('0xa7')],'cc':_0xca2951[_0x1c51('0x60')]['cc'],'subject':_0xca2951[_0x1c51('0x60')][_0x1c51('0xb5')],'attach':_0xca2951[_0x1c51('0x60')][_0x1c51('0xb6')],'firstMsgDirection':'out','lastMsgAt':moment()[_0x1c51('0xa8')](_0x1c51('0xa1')),'lastMsgDirection':_0x1c51('0xb7'),'lastMsgBody':_0xca2951['body']['body'],'Messages':[_[_0x1c51('0x55')](_0xca2951['body'],{'messageId':_0x3914dd[_0x1c51('0xb4')],'sentAt':moment()[_0x1c51('0xa8')](_0x1c51('0xa1')),'read':!![],'MailAccountId':_0x3333f1['id'],'UserId':_0xca2951[_0x1c51('0x75')]['id'],'ContactId':_0x501552['id']})]};if(_0xca2951[_0x1c51('0x60')]['Interaction']){_0x2ae104=_[_0x1c51('0x55')](_0x2ae104,_0xca2951[_0x1c51('0x60')][_0x1c51('0xb8')]);}return db[_0x1c51('0x8a')][_0x1c51('0x65')](_0x2ae104,{'include':[{'model':db[_0x1c51('0x9e')],'as':_0x1c51('0xb9')}]});}})['then'](respondWithResult(_0x1f32f8,null))[_0x1c51('0x2c')](handleError(_0x1f32f8,null));};exports[_0x1c51('0xba')]=function(_0x2efd4a,_0x11b72f,_0x3a460f){return db[_0x1c51('0x44')][_0x1c51('0x5f')]({'where':{'id':_0x2efd4a[_0x1c51('0x5b')]['id']},'include':[{'model':db[_0x1c51('0x41')],'as':_0x1c51('0x5c'),'raw':!![]}]})[_0x1c51('0x24')](handleEntityNotFound(_0x11b72f,null))[_0x1c51('0x24')](function(_0x5dd25c){if(_0x5dd25c&&_0x5dd25c[_0x1c51('0x5c')]){var _0x969d5={'id':_0x5dd25c['id'],'tls':{'rejectUnauthorized':![]}};if(_0x5dd25c['Smtp'][_0x1c51('0xae')]){_0x969d5[_0x1c51('0xae')]=_0x5dd25c[_0x1c51('0x5c')][_0x1c51('0xae')];}else{_0x969d5[_0x1c51('0x79')]=_0x5dd25c['Smtp'][_0x1c51('0x79')];_0x969d5['port']=_0x5dd25c['Smtp'][_0x1c51('0x7a')];_0x969d5[_0x1c51('0xad')]=_0x5dd25c[_0x1c51('0x5c')][_0x1c51('0xad')];}if(_0x5dd25c['Smtp'][_0x1c51('0x78')]){_0x969d5['auth']={'user':_0x5dd25c[_0x1c51('0x5c')][_0x1c51('0x75')],'pass':_0x5dd25c[_0x1c51('0x5c')][_0x1c51('0x7b')]};}return respondWithRpcPromise(_0x1c51('0xbb'),_0x1c51('0xba'),{'account':_0x969d5});}})[_0x1c51('0x24')](respondWithResult(_0x11b72f,null))[_0x1c51('0x2c')](handleError(_0x11b72f,null));};exports[_0x1c51('0x39')]=function(_0x57a251,_0x477261){return db[_0x1c51('0x44')][_0x1c51('0x5f')]({'where':{'id':_0x57a251[_0x1c51('0x5b')]['id']}})[_0x1c51('0x24')](handleEntityNotFound(_0x477261,null))['then'](function(_0x4fce8e){if(_0x4fce8e&&_0x4fce8e['service']){throw new db[(_0x1c51('0x21'))][(_0x1c51('0xbc'))]('You\x20can\x27t\x20remove\x20the\x20mail\x20service\x20account');}return _0x4fce8e;})[_0x1c51('0x24')](removeEntity(_0x477261,null))[_0x1c51('0x2c')](handleError(_0x477261,null));};exports[_0x1c51('0xbd')]=function(_0x48b9b4,_0x1c4b8e,_0x31742a){return db[_0x1c51('0x44')]['find']({'where':{'id':_0x48b9b4['params']['id']}})[_0x1c51('0x24')](handleEntityNotFound(_0x1c4b8e,null))[_0x1c51('0x24')](function(_0x4ffa31){if(_0x4ffa31){return _0x4ffa31['addAgents'](_0x48b9b4[_0x1c51('0x60')][_0x1c51('0x6a')],_[_0x1c51('0x8b')](_0x48b9b4['body'],[_0x1c51('0x6a'),'id'])||{})['spread'](function(_0x1ae570){for(var _0xeb8b29=0x0;_0xeb8b29<_0x48b9b4[_0x1c51('0x60')][_0x1c51('0x6a')]['length'];_0xeb8b29+=0x1){socket['emit'](_0x1c51('0xbe'),{'UserId':_0x48b9b4[_0x1c51('0x60')]['ids'][_0xeb8b29],'MailAccountId':_0x48b9b4[_0x1c51('0x5b')]['id']});}return _0x1ae570;});}})['then'](respondWithResult(_0x1c4b8e,null))['catch'](handleError(_0x1c4b8e,null));};exports['removeAgents']=function(_0x2d9de7,_0x3e27f3,_0x1a2e0c){return db['MailAccount'][_0x1c51('0x5f')]({'where':{'id':_0x2d9de7[_0x1c51('0x5b')]['id']}})[_0x1c51('0x24')](handleEntityNotFound(_0x3e27f3,null))[_0x1c51('0x24')](function(_0x383323){if(_0x383323){return _0x383323[_0x1c51('0xbf')](_0x2d9de7['query'][_0x1c51('0x6a')])['then'](function(){if(_[_0x1c51('0xc0')](_0x2d9de7[_0x1c51('0x49')]['ids'])){for(var _0x2eee46=0x0;_0x2eee46<_0x2d9de7[_0x1c51('0x49')][_0x1c51('0x6a')]['length'];_0x2eee46+=0x1){socket['emit']('userMailAccount:remove',{'UserId':Number(_0x2d9de7[_0x1c51('0x49')][_0x1c51('0x6a')][_0x2eee46]),'MailAccountId':Number(_0x2d9de7[_0x1c51('0x5b')]['id'])});}}else{socket[_0x1c51('0xc1')](_0x1c51('0xc2'),{'UserId':Number(_0x2d9de7[_0x1c51('0x49')][_0x1c51('0x6a')]),'MailAccountId':Number(_0x2d9de7[_0x1c51('0x5b')]['id'])});}});}})[_0x1c51('0x24')](respondWithStatusCode(_0x3e27f3,null))[_0x1c51('0x2c')](handleError(_0x3e27f3,null));};exports[_0x1c51('0xc3')]=function(_0x2243c8,_0x472583,_0x2264ad){var _0x4b12b0={};var _0x3263f4={};var _0x33c180;var _0x4ccdf6;return db['MailAccount'][_0x1c51('0x67')]({'where':{'id':_0x2243c8[_0x1c51('0x5b')]['id']}})[_0x1c51('0x24')](handleEntityNotFound(_0x472583,null))[_0x1c51('0x24')](function(_0x4ed7eb){if(_0x4ed7eb){_0x33c180=_0x4ed7eb;_0x3263f4[_0x1c51('0x47')]=_[_0x1c51('0x48')](db[_0x1c51('0x8e')]['rawAttributes']);_0x3263f4[_0x1c51('0x49')]=_[_0x1c51('0x48')](_0x2243c8[_0x1c51('0x49')]);_0x3263f4[_0x1c51('0x4a')]=_['intersection'](_0x3263f4['model'],_0x3263f4[_0x1c51('0x49')]);_0x4b12b0[_0x1c51('0x4d')]=_[_0x1c51('0x4b')](_0x3263f4[_0x1c51('0x47')],qs[_0x1c51('0x4c')](_0x2243c8[_0x1c51('0x49')][_0x1c51('0x4c')]));_0x4b12b0[_0x1c51('0x4d')]=_0x4b12b0[_0x1c51('0x4d')]['length']?_0x4b12b0[_0x1c51('0x4d')]:_0x3263f4[_0x1c51('0x47')];_0x4b12b0['order']=qs[_0x1c51('0x51')](_0x2243c8[_0x1c51('0x49')][_0x1c51('0x51')]);_0x4b12b0[_0x1c51('0x52')]=qs[_0x1c51('0x4a')](_[_0x1c51('0x53')](_0x2243c8[_0x1c51('0x49')],_0x3263f4[_0x1c51('0x4a')]));if(_0x2243c8[_0x1c51('0x49')][_0x1c51('0x54')]){_0x4b12b0[_0x1c51('0x52')]=_['merge'](_0x4b12b0[_0x1c51('0x52')],{'$or':_[_0x1c51('0x43')](_0x4b12b0['attributes'],function(_0x304ae2){var _0x3c5d1f={};_0x3c5d1f[_0x304ae2]={'$like':'%'+_0x2243c8[_0x1c51('0x49')][_0x1c51('0x54')]+'%'};return _0x3c5d1f;})});}_0x4b12b0=_[_0x1c51('0x55')]({},_0x4b12b0,_0x2243c8[_0x1c51('0x57')]);return _0x33c180[_0x1c51('0xc3')](_0x4b12b0);}})[_0x1c51('0x24')](function(_0x13283f){if(_0x13283f){_0x4ccdf6=_0x13283f[_0x1c51('0x4e')];if(!_0x2243c8['query'][_0x1c51('0x4f')](_0x1c51('0x50'))){_0x4b12b0[_0x1c51('0x33')]=qs['limit'](_0x2243c8[_0x1c51('0x49')][_0x1c51('0x33')]);_0x4b12b0[_0x1c51('0x32')]=qs[_0x1c51('0x32')](_0x2243c8['query'][_0x1c51('0x32')]);}return _0x33c180[_0x1c51('0xc3')](_0x4b12b0);}})[_0x1c51('0x24')](function(_0x3d0987){if(_0x3d0987){return _0x3d0987?{'count':_0x4ccdf6,'rows':_0x3d0987}:null;}})[_0x1c51('0x24')](respondWithResult(_0x472583,null))[_0x1c51('0x2c')](handleError(_0x472583,null));};