c1bc34a5a6323670a83deeaf6aabdf1cb247a0d9
[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 _0x0269=['order','where','type','filter','merge','MailAccount','include','rows','show','Smtp','Pause','intersection','length','includeAll','options','find','body','params','describe','MailAccountId','getDispositions','findOne','rawAttributes','sort','pick','Disposition','removeDispositions','ids','addAnswer','CannedAnswer','getAnswers','findAll','removeAnswers','create','ListId','isNil','active','cservice','cauthentication','user','cuser','pass','cpassword','authentication','host','port','service','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','getImap','removeImap','setImap','removeSmtp','setSmtp','addInteraction','MailInteraction','omit','getInteractions','CmContact','Contact','User','Owner','fullname','Tag','Tags','tag','sequelize','transaction','Transaction','READ_COMMITTED','MailApplication','bulkCreate','findAndCountAll','priority','finally','getApplications','getMessages','MailMessage','$gte','format','YYYY-MM-DD\x20HH:mm:ss','true','split','List','Contacts','updatedAt','email','attachments','join','server/files/attachments','basename','auth','secure','SendMail','sendMail','List\x20not\x20found','messageId','from','attach','out','Interaction','verifySmtp','VerifySmtp','Sequelize','You\x20can\x27t\x20remove\x20the\x20mail\x20service\x20account','addAgents','spread','emit','userMailAccount:save','removeAgents','userMailAccount:remove','getAgents','eml-format','zip-dir','request-promise','bluebird','mustache','util','path','to-csv','ejs','squel','crypto','jsforce','desk.js','querystring','papaparse','html-to-text','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','redis','defaults','localhost','./mailAccount.socket','register','jayson/promise','client','http','request','then','info','MailAccount,\x20%s,\x20%s','request\x20sent','debug','error','code','message','result','catch','sendStatus','status','end','json','offset','undefined','limit','count','set','apply','reject','update','destroy','get','MailAccounts','UserProfileResource','stack','name','send','index','MailServerIn','Imap','MailServerOut','mandatoryDispositionPause','fieldName','key','model','map','query','keys','filters','fields','attributes','hasOwnProperty','nolimit'];(function(_0x212bc0,_0x68928d){var _0x4b8360=function(_0x45b477){while(--_0x45b477){_0x212bc0['push'](_0x212bc0['shift']());}};_0x4b8360(++_0x68928d);}(_0x0269,0x135));var _0x9026=function(_0x544176,_0x4e6ccd){_0x544176=_0x544176-0x0;var _0x47ae6e=_0x0269[_0x544176];return _0x47ae6e;};'use strict';var emlformat=require(_0x9026('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x9026('0x1'));var jsonpatch=require('fast-json-patch');var rp=require(_0x9026('0x2'));var moment=require('moment');var BPromise=require(_0x9026('0x3'));var Mustache=require(_0x9026('0x4'));var util=require(_0x9026('0x5'));var path=require(_0x9026('0x6'));var sox=require('sox');var csv=require(_0x9026('0x7'));var ejs=require(_0x9026('0x8'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require('lodash');var squel=require(_0x9026('0x9'));var crypto=require(_0x9026('0xa'));var jsforce=require(_0x9026('0xb'));var deskjs=require(_0x9026('0xc'));var toCsv=require('to-csv');var querystring=require(_0x9026('0xd'));var Papa=require(_0x9026('0xe'));var htmlToText=require(_0x9026('0xf'));var juice=require('juice');var Redis=require(_0x9026('0x10'));var authService=require(_0x9026('0x11'));var qs=require(_0x9026('0x12'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x9026('0x13'));var logger=require('../../config/logger')(_0x9026('0x14'));var utils=require(_0x9026('0x15'));var config=require(_0x9026('0x16'));var licenseUtil=require(_0x9026('0x17'));var db=require(_0x9026('0x18'))['db'];config[_0x9026('0x19')]=_[_0x9026('0x1a')](config['redis'],{'host':_0x9026('0x1b'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x9026('0x19')]));require(_0x9026('0x1c'))[_0x9026('0x1d')](socket);var jayson=require(_0x9026('0x1e'));var client=jayson[_0x9026('0x1f')][_0x9026('0x20')]({'port':0x232b});function respondWithRpcPromise(_0x142465,_0x1eb679,_0x5d5053,_0x401438){return new BPromise(function(_0x2b9834,_0x50328c){var _0xc68011=_0x401438||client;return _0xc68011[_0x9026('0x21')](_0x142465,_0x5d5053)[_0x9026('0x22')](function(_0x4e37d0){logger[_0x9026('0x23')](_0x9026('0x24'),_0x1eb679,_0x9026('0x25'));logger[_0x9026('0x26')]('MailAccount,\x20%s,\x20%s,\x20%s',_0x1eb679,_0x9026('0x25'),JSON['stringify'](_0x4e37d0));if(_0x4e37d0[_0x9026('0x27')]){if(_0x4e37d0['error'][_0x9026('0x28')]===0x1f4){logger[_0x9026('0x27')](_0x9026('0x24'),_0x1eb679,_0x4e37d0[_0x9026('0x27')][_0x9026('0x29')]);return _0x50328c(_0x4e37d0[_0x9026('0x27')][_0x9026('0x29')]);}logger[_0x9026('0x27')](_0x9026('0x24'),_0x1eb679,_0x4e37d0['error']['message']);return _0x2b9834(_0x4e37d0[_0x9026('0x27')][_0x9026('0x29')]);}else{logger[_0x9026('0x23')](_0x9026('0x24'),_0x1eb679,_0x9026('0x25'));_0x2b9834(_0x4e37d0[_0x9026('0x2a')][_0x9026('0x29')]);}})[_0x9026('0x2b')](function(_0x775596){logger[_0x9026('0x27')](_0x9026('0x24'),_0x1eb679,_0x775596);_0x50328c(_0x775596);});});}function respondWithStatusCode(_0x106de3,_0x38fd9c){_0x38fd9c=_0x38fd9c||0xcc;return function(_0x2ace13){if(_0x2ace13){return _0x106de3[_0x9026('0x2c')](_0x38fd9c);}return _0x106de3[_0x9026('0x2d')](_0x38fd9c)[_0x9026('0x2e')]();};}function respondWithResult(_0x9c5f39,_0x2fae98){_0x2fae98=_0x2fae98||0xc8;return function(_0x5d2b12){if(_0x5d2b12){return _0x9c5f39[_0x9026('0x2d')](_0x2fae98)[_0x9026('0x2f')](_0x5d2b12);}};}function respondWithFilteredResult(_0x30c988,_0x103ce7){return function(_0x17dc25){if(_0x17dc25){var _0x3cead8=typeof _0x103ce7[_0x9026('0x30')]===_0x9026('0x31')&&typeof _0x103ce7[_0x9026('0x32')]===_0x9026('0x31');var _0x24fa55=_0x17dc25['count'];var _0x1cf21f=_0x3cead8?0x0:_0x103ce7[_0x9026('0x30')];var _0x3b5bfd=_0x3cead8?_0x17dc25[_0x9026('0x33')]:_0x103ce7[_0x9026('0x30')]+_0x103ce7[_0x9026('0x32')];var _0x275f2a;if(_0x3b5bfd>=_0x24fa55){_0x3b5bfd=_0x24fa55;_0x275f2a=0xc8;}else{_0x275f2a=0xce;}_0x30c988['status'](_0x275f2a);return _0x30c988[_0x9026('0x34')]('Content-Range',_0x1cf21f+'-'+_0x3b5bfd+'/'+_0x24fa55)[_0x9026('0x2f')](_0x17dc25);}return null;};}function patchUpdates(_0x473d93){return function(_0x1b26ae){try{jsonpatch[_0x9026('0x35')](_0x1b26ae,_0x473d93,!![]);}catch(_0x1f48bb){return BPromise[_0x9026('0x36')](_0x1f48bb);}return _0x1b26ae['save']();};}function saveUpdates(_0x3ecaa4,_0x4167fd){return function(_0x1c608a){if(_0x1c608a){return _0x1c608a[_0x9026('0x37')](_0x3ecaa4)['then'](function(_0x1da1d1){return _0x1da1d1;});}return null;};}function removeEntity(_0x1bc7fc,_0x49680d){return function(_0x45e924){if(_0x45e924){return _0x45e924[_0x9026('0x38')]()[_0x9026('0x22')](function(){var _0xe63aad=_0x45e924[_0x9026('0x39')]({'plain':!![]});var _0x7943af=_0x9026('0x3a');return db[_0x9026('0x3b')]['destroy']({'where':{'type':_0x7943af,'resourceId':_0xe63aad['id']}})[_0x9026('0x22')](function(){return _0x45e924;});})[_0x9026('0x22')](function(){_0x1bc7fc['status'](0xcc)[_0x9026('0x2e')]();});}};}function handleEntityNotFound(_0x1de27c,_0xf5085e){return function(_0xf44a47){if(!_0xf44a47){_0x1de27c[_0x9026('0x2c')](0x194);}return _0xf44a47;};}function handleError(_0x240f8a,_0x30414){_0x30414=_0x30414||0x1f4;return function(_0x13c084){logger['error'](_0x13c084[_0x9026('0x3c')]);if(_0x13c084[_0x9026('0x3d')]){delete _0x13c084[_0x9026('0x3d')];}_0x240f8a[_0x9026('0x2d')](_0x30414)[_0x9026('0x3e')](_0x13c084);};}exports[_0x9026('0x3f')]=function(_0x2f826f,_0x4c950e){var _0x20d1fe={'include':[{'model':db[_0x9026('0x40')],'as':_0x9026('0x41')},{'model':db[_0x9026('0x42')],'as':'Smtp'},{'model':db['Pause'],'as':_0x9026('0x43')}]},_0x4cf794={},_0x3b4fcd={'count':0x0,'rows':[]};var _0x1bf0df=_['map'](db['MailAccount']['rawAttributes'],function(_0x18272e){return{'name':_0x18272e[_0x9026('0x44')],'type':_0x18272e['type'][_0x9026('0x45')]};});_0x4cf794[_0x9026('0x46')]=_[_0x9026('0x47')](_0x1bf0df,_0x9026('0x3d'));_0x4cf794[_0x9026('0x48')]=_[_0x9026('0x49')](_0x2f826f[_0x9026('0x48')]);_0x4cf794[_0x9026('0x4a')]=_['intersection'](_0x4cf794[_0x9026('0x46')],_0x4cf794[_0x9026('0x48')]);_0x20d1fe['attributes']=_['intersection'](_0x4cf794['model'],qs[_0x9026('0x4b')](_0x2f826f[_0x9026('0x48')][_0x9026('0x4b')]));_0x20d1fe[_0x9026('0x4c')]=_0x20d1fe[_0x9026('0x4c')]['length']?_0x20d1fe[_0x9026('0x4c')]:_0x4cf794['model'];if(!_0x2f826f[_0x9026('0x48')][_0x9026('0x4d')](_0x9026('0x4e'))){_0x20d1fe[_0x9026('0x32')]=qs['limit'](_0x2f826f['query'][_0x9026('0x32')]);_0x20d1fe[_0x9026('0x30')]=qs[_0x9026('0x30')](_0x2f826f[_0x9026('0x48')][_0x9026('0x30')]);}_0x20d1fe[_0x9026('0x4f')]=qs['sort'](_0x2f826f[_0x9026('0x48')]['sort']);_0x20d1fe[_0x9026('0x50')]=qs[_0x9026('0x4a')](_['pick'](_0x2f826f[_0x9026('0x48')],_0x4cf794['filters']),_0x1bf0df);if(_0x2f826f[_0x9026('0x48')]['filter']){_0x20d1fe[_0x9026('0x50')]=_['merge'](_0x20d1fe['where'],{'$or':_[_0x9026('0x47')](_0x1bf0df,function(_0x30389f){if(_0x30389f[_0x9026('0x51')]!=='VIRTUAL'){var _0x3a4c72={};_0x3a4c72[_0x30389f[_0x9026('0x3d')]]={'$like':'%'+_0x2f826f[_0x9026('0x48')][_0x9026('0x52')]+'%'};return _0x3a4c72;}})});}_0x20d1fe=_[_0x9026('0x53')]({},_0x20d1fe,_0x2f826f['options']);var _0x22591b={'where':_0x20d1fe[_0x9026('0x50')]};return db[_0x9026('0x54')][_0x9026('0x33')](_0x22591b)[_0x9026('0x22')](function(_0x16e09d){_0x3b4fcd['count']=_0x16e09d;if(_0x2f826f[_0x9026('0x48')]['includeAll']){_0x20d1fe[_0x9026('0x55')]=[{'all':!![]}];}return db[_0x9026('0x54')]['findAll'](_0x20d1fe);})[_0x9026('0x22')](function(_0x324350){_0x3b4fcd[_0x9026('0x56')]=_0x324350;return _0x3b4fcd;})[_0x9026('0x22')](respondWithFilteredResult(_0x4c950e,_0x20d1fe))[_0x9026('0x2b')](handleError(_0x4c950e,null));};exports[_0x9026('0x57')]=function(_0x2d038c,_0x3c338e){var _0x140925={'raw':![],'where':{'id':_0x2d038c['params']['id']},'include':[{'model':db[_0x9026('0x40')],'as':_0x9026('0x41')},{'model':db['MailServerOut'],'as':_0x9026('0x58')},{'model':db[_0x9026('0x59')],'as':_0x9026('0x43')}]},_0x3d5add={};_0x3d5add[_0x9026('0x46')]=_[_0x9026('0x49')](db[_0x9026('0x54')]['rawAttributes']);_0x3d5add[_0x9026('0x48')]=_['keys'](_0x2d038c[_0x9026('0x48')]);_0x3d5add[_0x9026('0x4a')]=_[_0x9026('0x5a')](_0x3d5add['model'],_0x3d5add['query']);_0x140925[_0x9026('0x4c')]=_[_0x9026('0x5a')](_0x3d5add[_0x9026('0x46')],qs[_0x9026('0x4b')](_0x2d038c[_0x9026('0x48')][_0x9026('0x4b')]));_0x140925[_0x9026('0x4c')]=_0x140925[_0x9026('0x4c')][_0x9026('0x5b')]?_0x140925[_0x9026('0x4c')]:_0x3d5add['model'];if(_0x2d038c['query'][_0x9026('0x5c')]){_0x140925[_0x9026('0x55')]=[{'all':!![]}];}_0x140925=_[_0x9026('0x53')]({},_0x140925,_0x2d038c[_0x9026('0x5d')]);return db[_0x9026('0x54')][_0x9026('0x5e')](_0x140925)[_0x9026('0x22')](handleEntityNotFound(_0x3c338e,null))['then'](respondWithResult(_0x3c338e,null))[_0x9026('0x2b')](handleError(_0x3c338e,null));};exports['update']=function(_0x2cdcd9,_0x2983a4){if(_0x2cdcd9['body']['id']){delete _0x2cdcd9[_0x9026('0x5f')]['id'];}return db[_0x9026('0x54')][_0x9026('0x5e')]({'where':{'id':_0x2cdcd9[_0x9026('0x60')]['id']},'include':[{'model':db['MailServerIn'],'as':_0x9026('0x41')},{'model':db[_0x9026('0x42')],'as':'Smtp'},{'model':db['Pause'],'as':_0x9026('0x43')}]})['then'](handleEntityNotFound(_0x2983a4,null))[_0x9026('0x22')](saveUpdates(_0x2cdcd9[_0x9026('0x5f')],null))['then'](function(_0x10cd97){if(_0x10cd97&&_0x2cdcd9[_0x9026('0x5f')][_0x9026('0x41')]){return db[_0x9026('0x40')][_0x9026('0x37')](_0x2cdcd9[_0x9026('0x5f')][_0x9026('0x41')],{'where':{'MailAccountId':_0x10cd97['id']}})[_0x9026('0x22')](function(){return _0x10cd97;});}return _0x10cd97;})['then'](function(_0x2d126a){if(_0x2d126a&&_0x2cdcd9[_0x9026('0x5f')][_0x9026('0x58')]){return db[_0x9026('0x42')][_0x9026('0x37')](_0x2cdcd9[_0x9026('0x5f')][_0x9026('0x58')],{'where':{'MailAccountId':_0x2d126a['id']}})[_0x9026('0x22')](function(){return _0x2d126a;});}return _0x2d126a;})[_0x9026('0x22')](respondWithResult(_0x2983a4,null))[_0x9026('0x2b')](handleError(_0x2983a4,null));};exports['describe']=function(_0x23c380,_0x5ea8b9){return db['MailAccount'][_0x9026('0x61')]()[_0x9026('0x22')](respondWithResult(_0x5ea8b9,null))[_0x9026('0x2b')](handleError(_0x5ea8b9,null));};exports['addDisposition']=function(_0x405880,_0x56837e,_0x1e125b){if(_0x405880[_0x9026('0x5f')]['id']){delete _0x405880['body']['id'];}return db[_0x9026('0x54')]['find']({'where':{'id':_0x405880[_0x9026('0x60')]['id']}})[_0x9026('0x22')](handleEntityNotFound(_0x56837e,null))[_0x9026('0x22')](function(_0x33a27d){if(_0x33a27d){_0x405880[_0x9026('0x5f')][_0x9026('0x62')]=_0x33a27d['id'];return db['Disposition']['create'](_0x405880[_0x9026('0x5f')]);}})[_0x9026('0x22')](respondWithResult(_0x56837e,null))[_0x9026('0x2b')](handleError(_0x56837e,null));};exports[_0x9026('0x63')]=function(_0x1c19e3,_0x200959,_0x55d3f5){var _0x115c39={'raw':![],'where':{}};var _0x1dd8d1={};var _0x3b429f={'count':0x0,'rows':[]};return db['MailAccount'][_0x9026('0x64')]({'where':{'id':_0x1c19e3[_0x9026('0x60')]['id']}})[_0x9026('0x22')](handleEntityNotFound(_0x200959,null))[_0x9026('0x22')](function(_0x19de68){if(_0x19de68){_0x1dd8d1[_0x9026('0x46')]=_['keys'](db['Disposition'][_0x9026('0x65')]);_0x1dd8d1[_0x9026('0x48')]=_[_0x9026('0x49')](_0x1c19e3['query']);_0x1dd8d1[_0x9026('0x4a')]=_['intersection'](_0x1dd8d1[_0x9026('0x46')],_0x1dd8d1[_0x9026('0x48')]);_0x115c39[_0x9026('0x4c')]=_[_0x9026('0x5a')](_0x1dd8d1[_0x9026('0x46')],qs['fields'](_0x1c19e3[_0x9026('0x48')][_0x9026('0x4b')]));_0x115c39[_0x9026('0x4c')]=_0x115c39[_0x9026('0x4c')][_0x9026('0x5b')]?_0x115c39['attributes']:_0x1dd8d1[_0x9026('0x46')];if(!_0x1c19e3['query'][_0x9026('0x4d')]('nolimit')){_0x115c39['limit']=qs[_0x9026('0x32')](_0x1c19e3['query'][_0x9026('0x32')]);_0x115c39[_0x9026('0x30')]=qs[_0x9026('0x30')](_0x1c19e3[_0x9026('0x48')][_0x9026('0x30')]);}_0x115c39[_0x9026('0x4f')]=qs[_0x9026('0x66')](_0x1c19e3['query']['sort']);_0x115c39[_0x9026('0x50')]=qs[_0x9026('0x4a')](_[_0x9026('0x67')](_0x1c19e3['query'],_0x1dd8d1[_0x9026('0x4a')]));_0x115c39[_0x9026('0x50')][_0x9026('0x62')]=_0x19de68['id'];if(_0x1c19e3['query'][_0x9026('0x52')]){_0x115c39[_0x9026('0x50')]=_[_0x9026('0x53')](_0x115c39[_0x9026('0x50')],{'$or':_[_0x9026('0x47')](_0x115c39[_0x9026('0x4c')],function(_0x5da133){var _0x19f6ba={};_0x19f6ba[_0x5da133]={'$like':'%'+_0x1c19e3['query'][_0x9026('0x52')]+'%'};return _0x19f6ba;})});}_0x115c39=_['merge']({},_0x115c39,_0x1c19e3[_0x9026('0x5d')]);return db[_0x9026('0x68')][_0x9026('0x33')]({'where':_0x115c39[_0x9026('0x50')]})[_0x9026('0x22')](function(_0xe448d8){_0x3b429f[_0x9026('0x33')]=_0xe448d8;if(_0x1c19e3[_0x9026('0x48')][_0x9026('0x5c')]){_0x115c39[_0x9026('0x55')]=[{'all':!![]}];}return db['Disposition']['findAll'](_0x115c39);})['then'](function(_0x582f99){_0x3b429f['rows']=_0x582f99;return _0x3b429f;});}})[_0x9026('0x22')](respondWithFilteredResult(_0x200959,_0x115c39))[_0x9026('0x2b')](handleError(_0x200959,null));};exports[_0x9026('0x69')]=function(_0x3980fb,_0x46d10c,_0x4e5d5b){return db[_0x9026('0x54')][_0x9026('0x5e')]({'where':{'id':_0x3980fb[_0x9026('0x60')]['id']}})[_0x9026('0x22')](handleEntityNotFound(_0x46d10c,null))[_0x9026('0x22')](function(_0x3e391b){if(_0x3e391b){return _0x3e391b[_0x9026('0x69')](_0x3980fb[_0x9026('0x48')][_0x9026('0x6a')]);}})[_0x9026('0x22')](respondWithStatusCode(_0x46d10c,null))[_0x9026('0x2b')](handleError(_0x46d10c,null));};exports[_0x9026('0x6b')]=function(_0x47f264,_0x3ba9cd,_0x1158b4){if(_0x47f264[_0x9026('0x5f')]['id']){delete _0x47f264[_0x9026('0x5f')]['id'];}return db[_0x9026('0x54')]['find']({'where':{'id':_0x47f264[_0x9026('0x60')]['id']}})['then'](handleEntityNotFound(_0x3ba9cd,null))[_0x9026('0x22')](function(_0x20155c){if(_0x20155c){_0x47f264[_0x9026('0x5f')][_0x9026('0x62')]=_0x20155c['id'];return db[_0x9026('0x6c')]['create'](_0x47f264[_0x9026('0x5f')]);}})[_0x9026('0x22')](respondWithResult(_0x3ba9cd,null))[_0x9026('0x2b')](handleError(_0x3ba9cd,null));};exports[_0x9026('0x6d')]=function(_0x5021b1,_0x4eb377,_0x176564){var _0x2345b3={'raw':![],'where':{}};var _0x5ac92f={};var _0x530e6b={'count':0x0,'rows':[]};return db[_0x9026('0x54')]['findOne']({'where':{'id':_0x5021b1[_0x9026('0x60')]['id']}})[_0x9026('0x22')](handleEntityNotFound(_0x4eb377,null))[_0x9026('0x22')](function(_0x4b4769){if(_0x4b4769){_0x5ac92f[_0x9026('0x46')]=_[_0x9026('0x49')](db[_0x9026('0x6c')][_0x9026('0x65')]);_0x5ac92f[_0x9026('0x48')]=_[_0x9026('0x49')](_0x5021b1[_0x9026('0x48')]);_0x5ac92f['filters']=_[_0x9026('0x5a')](_0x5ac92f[_0x9026('0x46')],_0x5ac92f['query']);_0x2345b3[_0x9026('0x4c')]=_[_0x9026('0x5a')](_0x5ac92f[_0x9026('0x46')],qs[_0x9026('0x4b')](_0x5021b1[_0x9026('0x48')][_0x9026('0x4b')]));_0x2345b3['attributes']=_0x2345b3[_0x9026('0x4c')][_0x9026('0x5b')]?_0x2345b3['attributes']:_0x5ac92f[_0x9026('0x46')];if(!_0x5021b1[_0x9026('0x48')]['hasOwnProperty'](_0x9026('0x4e'))){_0x2345b3['limit']=qs['limit'](_0x5021b1['query'][_0x9026('0x32')]);_0x2345b3[_0x9026('0x30')]=qs['offset'](_0x5021b1[_0x9026('0x48')][_0x9026('0x30')]);}_0x2345b3[_0x9026('0x4f')]=qs['sort'](_0x5021b1[_0x9026('0x48')][_0x9026('0x66')]);_0x2345b3[_0x9026('0x50')]=qs['filters'](_['pick'](_0x5021b1[_0x9026('0x48')],_0x5ac92f[_0x9026('0x4a')]));_0x2345b3[_0x9026('0x50')][_0x9026('0x62')]=_0x4b4769['id'];if(_0x5021b1[_0x9026('0x48')][_0x9026('0x52')]){_0x2345b3[_0x9026('0x50')]=_['merge'](_0x2345b3[_0x9026('0x50')],{'$or':_['map'](_0x2345b3[_0x9026('0x4c')],function(_0x4d2842){var _0x1e9150={};_0x1e9150[_0x4d2842]={'$like':'%'+_0x5021b1[_0x9026('0x48')]['filter']+'%'};return _0x1e9150;})});}_0x2345b3=_['merge']({},_0x2345b3,_0x5021b1[_0x9026('0x5d')]);return db[_0x9026('0x6c')]['count']({'where':_0x2345b3[_0x9026('0x50')]})[_0x9026('0x22')](function(_0x4ddb20){_0x530e6b['count']=_0x4ddb20;if(_0x5021b1['query']['includeAll']){_0x2345b3['include']=[{'all':!![]}];}return db[_0x9026('0x6c')][_0x9026('0x6e')](_0x2345b3);})[_0x9026('0x22')](function(_0xf8fc35){_0x530e6b[_0x9026('0x56')]=_0xf8fc35;return _0x530e6b;});}})[_0x9026('0x22')](respondWithFilteredResult(_0x4eb377,_0x2345b3))[_0x9026('0x2b')](handleError(_0x4eb377,null));};exports['removeAnswers']=function(_0xa6756c,_0x8f6cf6,_0x455e69){return db[_0x9026('0x54')][_0x9026('0x5e')]({'where':{'id':_0xa6756c[_0x9026('0x60')]['id']}})['then'](handleEntityNotFound(_0x8f6cf6,null))[_0x9026('0x22')](function(_0x18a0b4){if(_0x18a0b4){return _0x18a0b4[_0x9026('0x6f')](_0xa6756c[_0x9026('0x48')][_0x9026('0x6a')]);}})[_0x9026('0x22')](respondWithStatusCode(_0x8f6cf6,null))['catch'](handleError(_0x8f6cf6,null));};exports[_0x9026('0x70')]=function(_0x11956d,_0xa0c1e5){var _0x27ae0f={'name':_0x11956d['body']['name'],'key':_0x11956d[_0x9026('0x5f')]['key'],'email':_0x11956d['body']['email'],'ListId':_0x11956d[_0x9026('0x5f')][_0x9026('0x71')],'active':!_[_0x9026('0x72')](_0x11956d[_0x9026('0x5f')]['active'])?_0x11956d[_0x9026('0x5f')][_0x9026('0x73')]:!![],'description':_0x11956d[_0x9026('0x5f')]['description']||null,'Imap':{},'Smtp':{}};if(_[_0x9026('0x72')](_0x11956d[_0x9026('0x5f')][_0x9026('0x74')])){if(_0x11956d[_0x9026('0x5f')][_0x9026('0x75')]){_0x27ae0f[_0x9026('0x41')][_0x9026('0x76')]=_0x27ae0f['Smtp'][_0x9026('0x76')]=_0x11956d[_0x9026('0x5f')][_0x9026('0x77')];_0x27ae0f[_0x9026('0x41')]['password']=_0x27ae0f[_0x9026('0x58')][_0x9026('0x78')]=_0x11956d[_0x9026('0x5f')][_0x9026('0x79')];}else{_0x27ae0f[_0x9026('0x41')][_0x9026('0x7a')]=_0x27ae0f[_0x9026('0x58')][_0x9026('0x7a')]=![];}_0x27ae0f[_0x9026('0x41')]['host']=_0x11956d[_0x9026('0x5f')]['Imap'][_0x9026('0x7b')];_0x27ae0f[_0x9026('0x41')][_0x9026('0x7c')]=_0x11956d[_0x9026('0x5f')][_0x9026('0x41')][_0x9026('0x7c')];_0x27ae0f[_0x9026('0x58')][_0x9026('0x7b')]=_0x11956d[_0x9026('0x5f')][_0x9026('0x58')][_0x9026('0x7b')];_0x27ae0f[_0x9026('0x58')][_0x9026('0x7c')]=_0x11956d[_0x9026('0x5f')][_0x9026('0x58')][_0x9026('0x7c')];}else{_0x27ae0f[_0x9026('0x41')]['service']=_0x27ae0f['Smtp'][_0x9026('0x7d')]=_0x11956d['body'][_0x9026('0x74')];_0x27ae0f['Imap']['user']=_0x27ae0f[_0x9026('0x58')][_0x9026('0x76')]=_0x11956d['body'][_0x9026('0x77')];_0x27ae0f['Imap']['password']=_0x27ae0f[_0x9026('0x58')][_0x9026('0x78')]=_0x11956d[_0x9026('0x5f')][_0x9026('0x79')];}return db[_0x9026('0x54')]['create'](_0x27ae0f,{'include':[{'model':db['MailServerOut'],'as':'Smtp'},{'model':db[_0x9026('0x40')],'as':_0x9026('0x41')}]})[_0x9026('0x22')](function(_0x520aa5){var _0x46a0ec=_0x11956d[_0x9026('0x76')]['get']({'plain':!![]});if(!_0x46a0ec)throw new Error(_0x9026('0x7e'));if(_0x46a0ec[_0x9026('0x7f')]==='user'){var _0x355474=_0x520aa5[_0x9026('0x39')]({'plain':!![]});return db['UserProfileSection']['find']({'where':{'name':'MailAccounts','userProfileId':_0x46a0ec[_0x9026('0x80')]},'raw':!![]})[_0x9026('0x22')](function(_0x17abb8){if(_0x17abb8&&_0x17abb8[_0x9026('0x81')]===0x0){return db[_0x9026('0x3b')]['create']({'name':_0x355474[_0x9026('0x3d')],'resourceId':_0x355474['id'],'type':_0x17abb8[_0x9026('0x3d')],'sectionId':_0x17abb8['id']},{})[_0x9026('0x22')](function(){return _0x520aa5;});}else{return _0x520aa5;}})['catch'](function(_0x1528cf){logger[_0x9026('0x27')](_0x9026('0x82'),_0x1528cf);throw _0x1528cf;});}return _0x520aa5;})[_0x9026('0x22')](respondWithResult(_0xa0c1e5,0xc9))[_0x9026('0x2b')](handleError(_0xa0c1e5,null));};exports['getImap']=function(_0x17200f,_0x215e25,_0x1ca0f4){return db[_0x9026('0x54')]['findOne']({'where':{'id':_0x17200f[_0x9026('0x60')]['id']}})[_0x9026('0x22')](handleEntityNotFound(_0x215e25,null))[_0x9026('0x22')](function(_0xea7c41){if(_0xea7c41){return _0xea7c41[_0x9026('0x83')]();}return null;})[_0x9026('0x22')](respondWithResult(_0x215e25,null))[_0x9026('0x2b')](handleError(_0x215e25,null));};exports['addImap']=function(_0x3e4afc,_0x45dd97,_0x3d99c0){if(_0x3e4afc[_0x9026('0x5f')]['id']){delete _0x3e4afc[_0x9026('0x5f')]['id'];}return db[_0x9026('0x54')][_0x9026('0x5e')]({'where':{'id':_0x3e4afc[_0x9026('0x60')]['id']}})[_0x9026('0x22')](handleEntityNotFound(_0x45dd97,null))[_0x9026('0x22')](function(_0x2db94e){if(_0x2db94e){_0x3e4afc['body'][_0x9026('0x62')]=_0x2db94e['id'];return db[_0x9026('0x40')]['create'](_0x3e4afc[_0x9026('0x5f')]);}})[_0x9026('0x22')](respondWithResult(_0x45dd97,null))[_0x9026('0x2b')](handleError(_0x45dd97,null));};exports[_0x9026('0x84')]=function(_0x17e665,_0x40403b,_0x355f3a){return db[_0x9026('0x54')][_0x9026('0x64')]({'where':{'id':_0x17e665[_0x9026('0x60')]['id']}})[_0x9026('0x22')](handleEntityNotFound(_0x40403b,null))['then'](function(_0x1a4edb){if(_0x1a4edb){return _0x1a4edb[_0x9026('0x85')](null);}return null;})[_0x9026('0x22')](respondWithStatusCode(_0x40403b,null))[_0x9026('0x2b')](handleError(_0x40403b,null));};exports['getSmtp']=function(_0xc3a0a7,_0x1f389e,_0x2ce6b9){return db[_0x9026('0x54')]['findOne']({'where':{'id':_0xc3a0a7[_0x9026('0x60')]['id']}})[_0x9026('0x22')](handleEntityNotFound(_0x1f389e,null))[_0x9026('0x22')](function(_0x39166b){if(_0x39166b){return _0x39166b['getSmtp']();}return null;})[_0x9026('0x22')](respondWithResult(_0x1f389e,null))['catch'](handleError(_0x1f389e,null));};exports['addSmtp']=function(_0xea616d,_0x527ff7,_0x3d33b7){if(_0xea616d[_0x9026('0x5f')]['id']){delete _0xea616d[_0x9026('0x5f')]['id'];}return db[_0x9026('0x54')][_0x9026('0x5e')]({'where':{'id':_0xea616d[_0x9026('0x60')]['id']}})[_0x9026('0x22')](handleEntityNotFound(_0x527ff7,null))['then'](function(_0x4f4873){if(_0x4f4873){_0xea616d[_0x9026('0x5f')][_0x9026('0x62')]=_0x4f4873['id'];return db[_0x9026('0x42')][_0x9026('0x70')](_0xea616d['body']);}})[_0x9026('0x22')](respondWithResult(_0x527ff7,null))[_0x9026('0x2b')](handleError(_0x527ff7,null));};exports[_0x9026('0x86')]=function(_0x46f8f7,_0x434f75,_0x1e2c65){return db['MailAccount'][_0x9026('0x64')]({'where':{'id':_0x46f8f7[_0x9026('0x60')]['id']}})[_0x9026('0x22')](handleEntityNotFound(_0x434f75,null))['then'](function(_0x1e64c6){if(_0x1e64c6){return _0x1e64c6[_0x9026('0x87')](null);}return null;})['then'](respondWithStatusCode(_0x434f75,null))[_0x9026('0x2b')](handleError(_0x434f75,null));};exports[_0x9026('0x88')]=function(_0x6fb5f8,_0x1089a1,_0x635f78){return db[_0x9026('0x89')][_0x9026('0x5e')]({'where':{'id':_0x6fb5f8['params']['id']}})[_0x9026('0x22')](handleEntityNotFound(_0x1089a1,null))[_0x9026('0x22')](function(_0x433950){if(_0x433950){return _0x433950[_0x9026('0x88')](_0x6fb5f8[_0x9026('0x5f')][_0x9026('0x6a')],_[_0x9026('0x8a')](_0x6fb5f8[_0x9026('0x5f')],[_0x9026('0x6a'),'id'])||{});}})['then'](respondWithResult(_0x1089a1,null))[_0x9026('0x2b')](handleError(_0x1089a1,null));};exports[_0x9026('0x8b')]=function(_0x7419b2,_0x2b72d1,_0x176d6e){var _0x2a7091={'raw':![],'where':{}};var _0x37bd30={};var _0x2e6bbb={'count':0x0,'rows':[]};return db[_0x9026('0x54')][_0x9026('0x64')]({'where':{'id':_0x7419b2[_0x9026('0x60')]['id']}})[_0x9026('0x22')](handleEntityNotFound(_0x2b72d1,null))[_0x9026('0x22')](function(_0x527488){if(_0x527488){_0x37bd30['model']=_[_0x9026('0x49')](db[_0x9026('0x89')]['rawAttributes']);_0x37bd30[_0x9026('0x48')]=_[_0x9026('0x49')](_0x7419b2[_0x9026('0x48')]);_0x37bd30['filters']=_[_0x9026('0x5a')](_0x37bd30[_0x9026('0x46')],_0x37bd30[_0x9026('0x48')]);_0x2a7091[_0x9026('0x4c')]=_[_0x9026('0x5a')](_0x37bd30[_0x9026('0x46')],qs['fields'](_0x7419b2[_0x9026('0x48')][_0x9026('0x4b')]));_0x2a7091[_0x9026('0x4c')]=_0x2a7091[_0x9026('0x4c')][_0x9026('0x5b')]?_0x2a7091['attributes']:_0x37bd30['model'];if(!_0x7419b2[_0x9026('0x48')][_0x9026('0x4d')]('nolimit')){_0x2a7091['limit']=qs[_0x9026('0x32')](_0x7419b2[_0x9026('0x48')][_0x9026('0x32')]);_0x2a7091[_0x9026('0x30')]=qs[_0x9026('0x30')](_0x7419b2['query'][_0x9026('0x30')]);}_0x2a7091['order']=qs[_0x9026('0x66')](_0x7419b2[_0x9026('0x48')]['sort']);_0x2a7091[_0x9026('0x50')]=qs[_0x9026('0x4a')](_[_0x9026('0x67')](_0x7419b2[_0x9026('0x48')],_0x37bd30[_0x9026('0x4a')]));_0x2a7091[_0x9026('0x50')][_0x9026('0x62')]=_0x527488['id'];if(_0x7419b2[_0x9026('0x48')][_0x9026('0x52')]){_0x2a7091[_0x9026('0x50')]=_[_0x9026('0x53')](_0x2a7091[_0x9026('0x50')],{'$or':_['map'](_0x2a7091[_0x9026('0x4c')],function(_0x13f202){var _0x417869={};_0x417869[_0x13f202]={'$like':'%'+_0x7419b2['query'][_0x9026('0x52')]+'%'};return _0x417869;})});}_0x2a7091=_['merge']({},_0x2a7091,_0x7419b2[_0x9026('0x5d')]);return db[_0x9026('0x89')][_0x9026('0x33')]({'where':_0x2a7091[_0x9026('0x50')]})[_0x9026('0x22')](function(_0x1e73cb){_0x2e6bbb[_0x9026('0x33')]=_0x1e73cb;if(_0x7419b2[_0x9026('0x48')][_0x9026('0x5c')]){_0x2a7091[_0x9026('0x55')]=[{'model':db[_0x9026('0x8c')],'as':_0x9026('0x8d'),'required':![]},{'model':db[_0x9026('0x8e')],'as':_0x9026('0x8f'),'attributes':[_0x9026('0x3d'),_0x9026('0x90'),'internal'],'required':![]},{'model':db[_0x9026('0x91')],'as':_0x9026('0x92'),'attributes':['id','name','color'],'where':_0x7419b2['query'][_0x9026('0x93')]?{'id':_0x7419b2['query'][_0x9026('0x93')]}:undefined,'required':_0x7419b2['query'][_0x9026('0x93')]?!![]:![]}];}return db[_0x9026('0x89')][_0x9026('0x6e')](_0x2a7091);})[_0x9026('0x22')](function(_0x34187d){_0x2e6bbb[_0x9026('0x56')]=_0x34187d;return _0x2e6bbb;});}})[_0x9026('0x22')](respondWithFilteredResult(_0x2b72d1,_0x2a7091))['catch'](handleError(_0x2b72d1,null));};exports['addApplications']=function addApplications(_0x2abf19,_0x500f62){var _0x4fd9c0=_0x2abf19['params']['id'];var _0x1fd096=_0x2abf19[_0x9026('0x5f')];var _0x4c8fb2=0xc8;var _0x5a1f19=null;return db[_0x9026('0x94')][_0x9026('0x95')]({'isolationLevel':db[_0x9026('0x94')][_0x9026('0x96')]['ISOLATION_LEVELS'][_0x9026('0x97')]},function(_0x29c159){return db[_0x9026('0x54')]['findOne']({'where':{'id':_0x4fd9c0},'transaction':_0x29c159})['then'](function(_0x1e07ce){if(_0x1e07ce){return db[_0x9026('0x98')]['destroy']({'where':{'MailAccountId':_0x4fd9c0},'transaction':_0x29c159})[_0x9026('0x22')](function(){var _0x3a61cd=_[_0x9026('0x47')](_0x1fd096,function(_0x404061){_0x404061['MailAccountId']=_0x4fd9c0;return _0x404061;});return db[_0x9026('0x98')][_0x9026('0x99')](_0x3a61cd,{'transaction':_0x29c159});});}else{_0x4c8fb2=0x194;_0x5a1f19=[];}});})[_0x9026('0x22')](function(){if(_0x4c8fb2!==0x194){return db[_0x9026('0x98')][_0x9026('0x9a')]({'where':{'MailAccountId':_0x4fd9c0},'order':_0x9026('0x9b')})[_0x9026('0x22')](function(_0x55a60b){_0x5a1f19=_0x55a60b;});}})['catch'](function(_0x6e2a16){_0x4c8fb2=0x1f4;logger[_0x9026('0x27')](_0x6e2a16['stack']);if(_0x6e2a16[_0x9026('0x3d')]){delete _0x6e2a16[_0x9026('0x3d')];}_0x5a1f19=_0x6e2a16;})[_0x9026('0x9c')](function(){if(_0x5a1f19===null){_0x500f62[_0x9026('0x2c')](_0x4c8fb2);}else{if(_0x4c8fb2===0x1f4){_0x500f62['status'](_0x4c8fb2)[_0x9026('0x3e')](_0x5a1f19);}else{_0x500f62[_0x9026('0x2d')](_0x4c8fb2)[_0x9026('0x2f')](_0x5a1f19);}}});};exports['getApplications']=function(_0x26e613,_0x10cdfe,_0x4711a7){var _0x172e01={};var _0x312f9e={};var _0x2e5573;var _0xfa3432;return db['MailAccount'][_0x9026('0x64')]({'where':{'id':_0x26e613['params']['id']}})[_0x9026('0x22')](handleEntityNotFound(_0x10cdfe,null))[_0x9026('0x22')](function(_0x140df3){if(_0x140df3){_0x2e5573=_0x140df3;_0x312f9e[_0x9026('0x46')]=_['keys'](db[_0x9026('0x98')][_0x9026('0x65')]);_0x312f9e[_0x9026('0x48')]=_[_0x9026('0x49')](_0x26e613[_0x9026('0x48')]);_0x312f9e['filters']=_[_0x9026('0x5a')](_0x312f9e['model'],_0x312f9e[_0x9026('0x48')]);_0x172e01[_0x9026('0x4c')]=_[_0x9026('0x5a')](_0x312f9e[_0x9026('0x46')],qs['fields'](_0x26e613[_0x9026('0x48')][_0x9026('0x4b')]));_0x172e01[_0x9026('0x4c')]=_0x172e01[_0x9026('0x4c')]['length']?_0x172e01['attributes']:_0x312f9e[_0x9026('0x46')];_0x172e01[_0x9026('0x4f')]=qs[_0x9026('0x66')](_0x26e613['query'][_0x9026('0x66')]);_0x172e01['where']=qs[_0x9026('0x4a')](_['pick'](_0x26e613[_0x9026('0x48')],_0x312f9e['filters']));if(_0x26e613[_0x9026('0x48')][_0x9026('0x52')]){_0x172e01[_0x9026('0x50')]=_[_0x9026('0x53')](_0x172e01[_0x9026('0x50')],{'$or':_[_0x9026('0x47')](_0x172e01[_0x9026('0x4c')],function(_0x5c773f){var _0x21fefc={};_0x21fefc[_0x5c773f]={'$like':'%'+_0x26e613[_0x9026('0x48')]['filter']+'%'};return _0x21fefc;})});}_0x172e01=_[_0x9026('0x53')]({},_0x172e01,_0x26e613['options']);return _0x2e5573['getApplications'](_0x172e01);}})[_0x9026('0x22')](function(_0x45577f){if(_0x45577f){_0xfa3432=_0x45577f[_0x9026('0x5b')];if(!_0x26e613['query'][_0x9026('0x4d')](_0x9026('0x4e'))){_0x172e01['limit']=qs[_0x9026('0x32')](_0x26e613[_0x9026('0x48')][_0x9026('0x32')]);_0x172e01['offset']=qs[_0x9026('0x30')](_0x26e613[_0x9026('0x48')]['offset']);}return _0x2e5573[_0x9026('0x9d')](_0x172e01);}})[_0x9026('0x22')](function(_0x18b177){if(_0x18b177){return _0x18b177?{'count':_0xfa3432,'rows':_0x18b177}:null;}})['then'](respondWithResult(_0x10cdfe,null))['catch'](handleError(_0x10cdfe,null));};exports[_0x9026('0x9e')]=function(_0x3b6dbf,_0x28083d,_0x158b41){var _0x1d6f58={'raw':!![],'where':{}};var _0x48cb50={};var _0x91c87={'count':0x0,'rows':[]};return db[_0x9026('0x54')][_0x9026('0x64')]({'where':{'id':_0x3b6dbf[_0x9026('0x60')]['id']}})[_0x9026('0x22')](handleEntityNotFound(_0x28083d,null))[_0x9026('0x22')](function(_0x25e849){if(_0x25e849){_0x48cb50[_0x9026('0x46')]=_[_0x9026('0x49')](db[_0x9026('0x9f')][_0x9026('0x65')]);_0x48cb50[_0x9026('0x48')]=_['keys'](_0x3b6dbf[_0x9026('0x48')]);_0x48cb50[_0x9026('0x4a')]=_[_0x9026('0x5a')](_0x48cb50[_0x9026('0x46')],_0x48cb50[_0x9026('0x48')]);_0x1d6f58[_0x9026('0x4c')]=_[_0x9026('0x5a')](_0x48cb50[_0x9026('0x46')],qs['fields'](_0x3b6dbf[_0x9026('0x48')][_0x9026('0x4b')]));_0x1d6f58[_0x9026('0x4c')]=_0x1d6f58[_0x9026('0x4c')][_0x9026('0x5b')]?_0x1d6f58[_0x9026('0x4c')]:_0x48cb50['model'];if(!_0x3b6dbf[_0x9026('0x48')][_0x9026('0x4d')](_0x9026('0x4e'))){_0x1d6f58['limit']=qs[_0x9026('0x32')](_0x3b6dbf[_0x9026('0x48')][_0x9026('0x32')]);_0x1d6f58[_0x9026('0x30')]=qs[_0x9026('0x30')](_0x3b6dbf[_0x9026('0x48')][_0x9026('0x30')]);}_0x1d6f58[_0x9026('0x4f')]=qs['sort'](_0x3b6dbf[_0x9026('0x48')]['sort']);_0x1d6f58[_0x9026('0x50')]=qs[_0x9026('0x4a')](_[_0x9026('0x67')](_0x3b6dbf['query'],_0x48cb50[_0x9026('0x4a')]));_0x1d6f58[_0x9026('0x50')][_0x9026('0x62')]=_0x25e849['id'];if(_0x3b6dbf[_0x9026('0x48')][_0x9026('0x52')]){_0x1d6f58[_0x9026('0x50')]=_[_0x9026('0x53')](_0x1d6f58[_0x9026('0x50')],{'$or':_[_0x9026('0x47')](_0x1d6f58['attributes'],function(_0x5e6e38){var _0x140e1e={};_0x140e1e[_0x5e6e38]={'$like':'%'+_0x3b6dbf[_0x9026('0x48')]['filter']+'%'};return _0x140e1e;})});}if(_0x3b6dbf[_0x9026('0x48')][_0x9026('0xa0')]){var _0x64923=_0x3b6dbf[_0x9026('0x48')]['$gte']['split'](',');var _0x5380ee={};_0x5380ee[_0x64923[0x0]]={'$gte':moment(_0x64923[0x1])[_0x9026('0xa1')](_0x9026('0xa2'))};_0x1d6f58[_0x9026('0x50')]=_[_0x9026('0x53')](_0x1d6f58[_0x9026('0x50')],_0x5380ee);}_0x1d6f58=_[_0x9026('0x53')]({},_0x1d6f58,_0x3b6dbf[_0x9026('0x5d')]);return db[_0x9026('0x9f')]['count']({'where':_0x1d6f58['where']})[_0x9026('0x22')](function(_0x5cb78f){_0x91c87[_0x9026('0x33')]=_0x5cb78f;if(_0x3b6dbf[_0x9026('0x48')][_0x9026('0x5c')]){_0x1d6f58[_0x9026('0x55')]=[{'all':!![]}];}return db[_0x9026('0x9f')][_0x9026('0x6e')](_0x1d6f58);})[_0x9026('0x22')](function(_0x2ac623){if(_0x3b6dbf[_0x9026('0x48')]['inlineCss']===_0x9026('0xa3')){for(var _0x47cb69=0x0;_0x47cb69<_0x2ac623['length'];_0x47cb69++){_0x2ac623[_0x47cb69][_0x9026('0x5f')]=juice(_0x2ac623[_0x47cb69][_0x9026('0x5f')]);}}_0x91c87[_0x9026('0x56')]=_0x2ac623;return _0x91c87;});}})[_0x9026('0x22')](respondWithFilteredResult(_0x28083d,_0x1d6f58))[_0x9026('0x2b')](handleError(_0x28083d,null));};exports[_0x9026('0x3e')]=function(_0x4dd3f3,_0x422674,_0x4b2529){var _0x1c247a,_0x4e5d52={},_0x23ddfe;if(_0x4dd3f3[_0x9026('0x5f')]['to']){_0x23ddfe=_0x4dd3f3['body']['to'][_0x9026('0xa4')](',')[0x0];}return db[_0x9026('0x54')][_0x9026('0x5e')]({'where':{'id':_0x4dd3f3[_0x9026('0x60')]['id']},'include':[{'model':db['CmList'],'as':_0x9026('0xa5'),'include':[{'model':db['CmContact'],'as':_0x9026('0xa6'),'where':{'email':_0x23ddfe},'limit':0x1,'order':[[_0x9026('0xa7'),'DESC']]}]},{'model':db[_0x9026('0x42')],'as':_0x9026('0x58'),'raw':!![]}]})['then'](handleEntityNotFound(_0x422674,null))[_0x9026('0x22')](function(_0x172a7e){if(_0x172a7e){_0x1c247a=_0x172a7e;if(_0x172a7e[_0x9026('0x58')]){if(_['isNil'](_0x4dd3f3[_0x9026('0x5f')]['from'])){_0x4dd3f3[_0x9026('0x5f')]['from']=util[_0x9026('0xa1')]('%s\x20<%s>',_0x172a7e[_0x9026('0x3d')],_0x172a7e[_0x9026('0xa8')]||_0x172a7e[_0x9026('0x58')]['user']);}if(_0x4dd3f3['body'][_0x9026('0xa9')]&&_0x4dd3f3[_0x9026('0x5f')][_0x9026('0xa9')][_0x9026('0x5b')]){for(var _0x3b7451=0x0;_0x3b7451<_0x4dd3f3['body']['attachments'][_0x9026('0x5b')];_0x3b7451+=0x1){_0x4dd3f3['body'][_0x9026('0xa9')][_0x3b7451]={'filename':_0x4dd3f3[_0x9026('0x5f')][_0x9026('0xa9')][_0x3b7451]['name'],'path':path[_0x9026('0xaa')](config['root'],_0x9026('0xab'),_0x4dd3f3[_0x9026('0x5f')]['attachments'][_0x3b7451][_0x9026('0xac')])};}}var _0x259cdf={'tls':{'rejectUnauthorized':![]}};if(_['isNil'](_0x172a7e[_0x9026('0x58')][_0x9026('0x7d')])){if(_0x172a7e[_0x9026('0x58')]['authentication']){_0x259cdf[_0x9026('0xad')]={'user':_0x172a7e[_0x9026('0x58')][_0x9026('0x76')],'pass':_0x172a7e[_0x9026('0x58')]['pass']};}_0x259cdf['host']=_0x172a7e[_0x9026('0x58')][_0x9026('0x7b')];_0x259cdf[_0x9026('0x7c')]=_0x172a7e[_0x9026('0x58')][_0x9026('0x7c')];_0x259cdf['secure']=_0x172a7e[_0x9026('0x58')][_0x9026('0xae')];}else{_0x259cdf['service']=_0x172a7e[_0x9026('0x58')][_0x9026('0x7d')];_0x259cdf[_0x9026('0xad')]={'user':_0x172a7e['Smtp'][_0x9026('0x76')],'pass':_0x172a7e[_0x9026('0x58')][_0x9026('0x78')]};}return respondWithRpcPromise(_0x9026('0xaf'),_0x9026('0xb0'),{'account':_0x259cdf,'message':_0x4dd3f3[_0x9026('0x5f')]});}else{throw new Error('List\x20not\x20found');}}})[_0x9026('0x22')](function(_0x2dad19){if(_0x2dad19){_0x4e5d52=_0x2dad19;if(_0x1c247a[_0x9026('0xa5')]){if(_0x1c247a['List'][_0x9026('0xa6')][_0x9026('0x5b')]){return _0x1c247a[_0x9026('0xa5')][_0x9026('0xa6')][0x0];}else{return db[_0x9026('0x8c')][_0x9026('0x70')](_[_0x9026('0x1a')](_0x4dd3f3['body'],{'firstName':_0x4dd3f3[_0x9026('0x5f')]['to'],'email':_0x4dd3f3[_0x9026('0x5f')]['to'],'phone':_0x4dd3f3[_0x9026('0x5f')]['to'],'ListId':_0x1c247a['ListId']}));}}else{throw new Error(_0x9026('0xb1'));}}})[_0x9026('0x22')](function(_0x262f8e){if(_0x262f8e){var _0x1cfe6d={'UserId':_0x4dd3f3[_0x9026('0x76')]['id'],'ContactId':_0x262f8e['id'],'MailAccountId':_0x1c247a['id'],'inReplyTo':_0x4e5d52[_0x9026('0xb2')],'to':_0x4dd3f3[_0x9026('0x5f')][_0x9026('0xb3')],'cc':_0x4dd3f3['body']['cc'],'subject':_0x4dd3f3[_0x9026('0x5f')]['subject'],'attach':_0x4dd3f3[_0x9026('0x5f')][_0x9026('0xb4')],'firstMsgDirection':'out','lastMsgAt':moment()[_0x9026('0xa1')](_0x9026('0xa2')),'lastMsgDirection':_0x9026('0xb5'),'Messages':[_['merge'](_0x4dd3f3[_0x9026('0x5f')],{'messageId':_0x4e5d52['messageId'],'sentAt':moment()['format'](_0x9026('0xa2')),'read':!![],'MailAccountId':_0x1c247a['id'],'UserId':_0x4dd3f3[_0x9026('0x76')]['id'],'ContactId':_0x262f8e['id']})]};if(_0x4dd3f3[_0x9026('0x5f')]['Interaction']){_0x1cfe6d=_[_0x9026('0x53')](_0x1cfe6d,_0x4dd3f3[_0x9026('0x5f')][_0x9026('0xb6')]);}return db['MailInteraction']['create'](_0x1cfe6d,{'include':[{'model':db['MailMessage'],'as':'Messages'}]});}})[_0x9026('0x22')](respondWithResult(_0x422674,null))[_0x9026('0x2b')](handleError(_0x422674,null));};exports[_0x9026('0xb7')]=function(_0x1240cf,_0x422df8,_0x462bd3){return db[_0x9026('0x54')]['find']({'where':{'id':_0x1240cf[_0x9026('0x60')]['id']},'include':[{'model':db[_0x9026('0x42')],'as':_0x9026('0x58'),'raw':!![]}]})[_0x9026('0x22')](handleEntityNotFound(_0x422df8,null))[_0x9026('0x22')](function(_0x804343){if(_0x804343&&_0x804343[_0x9026('0x58')]){var _0x1f9429={'id':_0x804343['id'],'tls':{'rejectUnauthorized':![]}};if(_0x804343[_0x9026('0x58')][_0x9026('0x7d')]){_0x1f9429['service']=_0x804343[_0x9026('0x58')][_0x9026('0x7d')];}else{_0x1f9429[_0x9026('0x7b')]=_0x804343['Smtp'][_0x9026('0x7b')];_0x1f9429[_0x9026('0x7c')]=_0x804343[_0x9026('0x58')]['port'];_0x1f9429[_0x9026('0xae')]=_0x804343['Smtp']['secure'];}if(_0x804343[_0x9026('0x58')]['authentication']){_0x1f9429[_0x9026('0xad')]={'user':_0x804343[_0x9026('0x58')][_0x9026('0x76')],'pass':_0x804343['Smtp'][_0x9026('0x78')]};}return respondWithRpcPromise(_0x9026('0xb8'),_0x9026('0xb7'),{'account':_0x1f9429});}})[_0x9026('0x22')](respondWithResult(_0x422df8,null))[_0x9026('0x2b')](handleError(_0x422df8,null));};exports[_0x9026('0x38')]=function(_0x460a13,_0x10ad2b){return db[_0x9026('0x54')][_0x9026('0x5e')]({'where':{'id':_0x460a13[_0x9026('0x60')]['id']}})['then'](handleEntityNotFound(_0x10ad2b,null))[_0x9026('0x22')](function(_0x282437){if(_0x282437&&_0x282437['service']){throw new db[(_0x9026('0xb9'))]['ValidationError'](_0x9026('0xba'));}return _0x282437;})[_0x9026('0x22')](removeEntity(_0x10ad2b,null))[_0x9026('0x2b')](handleError(_0x10ad2b,null));};exports[_0x9026('0xbb')]=function(_0x339e49,_0x2ee6c4,_0x2d5cf2){return db['MailAccount'][_0x9026('0x5e')]({'where':{'id':_0x339e49['params']['id']}})[_0x9026('0x22')](handleEntityNotFound(_0x2ee6c4,null))[_0x9026('0x22')](function(_0x16a8eb){if(_0x16a8eb){return _0x16a8eb[_0x9026('0xbb')](_0x339e49[_0x9026('0x5f')][_0x9026('0x6a')],_[_0x9026('0x8a')](_0x339e49['body'],[_0x9026('0x6a'),'id'])||{})[_0x9026('0xbc')](function(_0x1c67ab){for(var _0x176d97=0x0;_0x176d97<_0x339e49[_0x9026('0x5f')][_0x9026('0x6a')][_0x9026('0x5b')];_0x176d97+=0x1){socket[_0x9026('0xbd')](_0x9026('0xbe'),{'UserId':Number(_0x339e49[_0x9026('0x5f')][_0x9026('0x6a')][_0x176d97]),'MailAccountId':Number(_0x339e49[_0x9026('0x60')]['id'])});}return _0x1c67ab;});}})[_0x9026('0x22')](respondWithResult(_0x2ee6c4,null))[_0x9026('0x2b')](handleError(_0x2ee6c4,null));};exports[_0x9026('0xbf')]=function(_0xe746fd,_0x1163d1,_0x3134be){return db['MailAccount']['find']({'where':{'id':_0xe746fd[_0x9026('0x60')]['id']}})[_0x9026('0x22')](handleEntityNotFound(_0x1163d1,null))['then'](function(_0x2acbe1){if(_0x2acbe1){return _0x2acbe1[_0x9026('0xbf')](_0xe746fd[_0x9026('0x48')]['ids'])['then'](function(){if(_['isArray'](_0xe746fd[_0x9026('0x48')][_0x9026('0x6a')])){for(var _0x5df099=0x0;_0x5df099<_0xe746fd[_0x9026('0x48')][_0x9026('0x6a')]['length'];_0x5df099+=0x1){socket['emit'](_0x9026('0xc0'),{'UserId':Number(_0xe746fd[_0x9026('0x48')][_0x9026('0x6a')][_0x5df099]),'MailAccountId':Number(_0xe746fd[_0x9026('0x60')]['id'])});}}else{socket['emit'](_0x9026('0xc0'),{'UserId':Number(_0xe746fd['query'][_0x9026('0x6a')]),'MailAccountId':Number(_0xe746fd[_0x9026('0x60')]['id'])});}});}})[_0x9026('0x22')](respondWithStatusCode(_0x1163d1,null))[_0x9026('0x2b')](handleError(_0x1163d1,null));};exports[_0x9026('0xc1')]=function(_0x2bba51,_0x1923d8,_0x690d5d){var _0x335b68={};var _0x22de67={};var _0x120fe0;var _0x52a782;return db[_0x9026('0x54')][_0x9026('0x64')]({'where':{'id':_0x2bba51[_0x9026('0x60')]['id']}})[_0x9026('0x22')](handleEntityNotFound(_0x1923d8,null))[_0x9026('0x22')](function(_0x4b9d10){if(_0x4b9d10){_0x120fe0=_0x4b9d10;_0x22de67['model']=_[_0x9026('0x49')](db[_0x9026('0x8e')]['rawAttributes']);_0x22de67[_0x9026('0x48')]=_[_0x9026('0x49')](_0x2bba51[_0x9026('0x48')]);_0x22de67[_0x9026('0x4a')]=_['intersection'](_0x22de67[_0x9026('0x46')],_0x22de67['query']);_0x335b68[_0x9026('0x4c')]=_[_0x9026('0x5a')](_0x22de67[_0x9026('0x46')],qs[_0x9026('0x4b')](_0x2bba51[_0x9026('0x48')]['fields']));_0x335b68[_0x9026('0x4c')]=_0x335b68[_0x9026('0x4c')]['length']?_0x335b68[_0x9026('0x4c')]:_0x22de67[_0x9026('0x46')];_0x335b68[_0x9026('0x4f')]=qs[_0x9026('0x66')](_0x2bba51[_0x9026('0x48')][_0x9026('0x66')]);_0x335b68[_0x9026('0x50')]=qs[_0x9026('0x4a')](_[_0x9026('0x67')](_0x2bba51[_0x9026('0x48')],_0x22de67[_0x9026('0x4a')]));if(_0x2bba51[_0x9026('0x48')][_0x9026('0x52')]){_0x335b68[_0x9026('0x50')]=_[_0x9026('0x53')](_0x335b68[_0x9026('0x50')],{'$or':_[_0x9026('0x47')](_0x335b68[_0x9026('0x4c')],function(_0x476ae3){var _0x4d1a79={};_0x4d1a79[_0x476ae3]={'$like':'%'+_0x2bba51[_0x9026('0x48')][_0x9026('0x52')]+'%'};return _0x4d1a79;})});}_0x335b68=_[_0x9026('0x53')]({},_0x335b68,_0x2bba51[_0x9026('0x5d')]);return _0x120fe0['getAgents'](_0x335b68);}})['then'](function(_0x52ec18){if(_0x52ec18){_0x52a782=_0x52ec18[_0x9026('0x5b')];if(!_0x2bba51['query'][_0x9026('0x4d')](_0x9026('0x4e'))){_0x335b68[_0x9026('0x32')]=qs[_0x9026('0x32')](_0x2bba51['query'][_0x9026('0x32')]);_0x335b68[_0x9026('0x30')]=qs[_0x9026('0x30')](_0x2bba51[_0x9026('0x48')][_0x9026('0x30')]);}return _0x120fe0[_0x9026('0xc1')](_0x335b68);}})[_0x9026('0x22')](function(_0x313cc3){if(_0x313cc3){return _0x313cc3?{'count':_0x52a782,'rows':_0x313cc3}:null;}})[_0x9026('0x22')](respondWithResult(_0x1923d8,null))[_0x9026('0x2b')](handleError(_0x1923d8,null));};