289e395cfa5745aea62b504f5a269f4910e6ee29
[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 _0xc902=['destroy','MailAccounts','UserProfileResource','end','name','send','index','MailServerIn','Imap','Pause','mandatoryDispositionPause','map','MailAccount','fieldName','type','key','model','query','keys','filters','attributes','intersection','fields','length','nolimit','sort','where','merge','VIRTUAL','includeAll','include','findAll','rows','show','params','MailServerOut','Smtp','rawAttributes','options','find','body','describe','addDisposition','Disposition','create','getDispositions','findOne','hasOwnProperty','order','MailAccountId','filter','removeDispositions','addAnswer','CannedAnswer','getAnswers','pick','removeAnswers','ids','email','ListId','isNil','active','description','user','cuser','pass','cpassword','authentication','host','port','service','cservice','get','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','getImap','addImap','removeImap','setImap','getSmtp','addSmtp','setSmtp','addInteraction','omit','getInteractions','MailInteraction','CmContact','Contact','User','Owner','fullname','internal','Tag','Tags','tag','addApplications','sequelize','transaction','ISOLATION_LEVELS','READ_COMMITTED','MailApplication','bulkCreate','priority','stack','finally','getApplications','getMessages','MailMessage','$gte','split','format','YYYY-MM-DD\x20HH:mm:ss','inlineCss','true','CmList','List','Contacts','updatedAt','DESC','from','%s\x20<%s>','attachments','root','basename','secure','SendMail','sendMail','defaults','List\x20not\x20found','messageId','attach','out','Interaction','Messages','verifySmtp','auth','VerifySmtp','You\x20can\x27t\x20remove\x20the\x20mail\x20service\x20account','addAgents','spread','emit','userMailAccount:save','removeAgents','isArray','userMailAccount:remove','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','mustache','util','path','sox','to-csv','lodash','squel','crypto','jsforce','desk.js','papaparse','juice','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','../../config/license/util','redis','localhost','socket.io-emitter','./mailAccount.socket','register','client','http','then','debug','request\x20sent','stringify','error','code','MailAccount,\x20%s,\x20%s','message','info','catch','sendStatus','status','json','offset','limit','undefined','count','apply','save','update'];(function(_0x1c8cad,_0x324ee7){var _0x1884ae=function(_0x2d6e3d){while(--_0x2d6e3d){_0x1c8cad['push'](_0x1c8cad['shift']());}};_0x1884ae(++_0x324ee7);}(_0xc902,0x15c));var _0x2c90=function(_0x13025a,_0x3bafcb){_0x13025a=_0x13025a-0x0;var _0x4c3b65=_0xc902[_0x13025a];return _0x4c3b65;};'use strict';var emlformat=require(_0x2c90('0x0'));var rimraf=require(_0x2c90('0x1'));var zipdir=require(_0x2c90('0x2'));var jsonpatch=require(_0x2c90('0x3'));var rp=require(_0x2c90('0x4'));var moment=require(_0x2c90('0x5'));var BPromise=require('bluebird');var Mustache=require(_0x2c90('0x6'));var util=require(_0x2c90('0x7'));var path=require(_0x2c90('0x8'));var sox=require(_0x2c90('0x9'));var csv=require(_0x2c90('0xa'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x2c90('0xb'));var squel=require(_0x2c90('0xc'));var crypto=require(_0x2c90('0xd'));var jsforce=require(_0x2c90('0xe'));var deskjs=require(_0x2c90('0xf'));var toCsv=require('to-csv');var querystring=require('querystring');var Papa=require(_0x2c90('0x10'));var htmlToText=require('html-to-text');var juice=require(_0x2c90('0x11'));var Redis=require(_0x2c90('0x12'));var authService=require(_0x2c90('0x13'));var qs=require(_0x2c90('0x14'));var as=require(_0x2c90('0x15'));var hardwareService=require(_0x2c90('0x16'));var logger=require(_0x2c90('0x17'))(_0x2c90('0x18'));var utils=require('../../config/utils');var config=require(_0x2c90('0x19'));var licenseUtil=require(_0x2c90('0x1a'));var db=require('../../mysqldb')['db'];config[_0x2c90('0x1b')]=_['defaults'](config[_0x2c90('0x1b')],{'host':_0x2c90('0x1c'),'port':0x18eb});var socket=require(_0x2c90('0x1d'))(new Redis(config[_0x2c90('0x1b')]));require(_0x2c90('0x1e'))[_0x2c90('0x1f')](socket);var jayson=require('jayson/promise');var client=jayson[_0x2c90('0x20')][_0x2c90('0x21')]({'port':0x232b});function respondWithRpcPromise(_0x2ee7be,_0x22452f,_0x46b40a,_0x102a3b){return new BPromise(function(_0x16be42,_0x45de38){var _0x445f34=_0x102a3b||client;return _0x445f34['request'](_0x2ee7be,_0x46b40a)[_0x2c90('0x22')](function(_0x2814bb){logger['info']('MailAccount,\x20%s,\x20%s',_0x22452f,'request\x20sent');logger[_0x2c90('0x23')]('MailAccount,\x20%s,\x20%s,\x20%s',_0x22452f,_0x2c90('0x24'),JSON[_0x2c90('0x25')](_0x2814bb));if(_0x2814bb['error']){if(_0x2814bb[_0x2c90('0x26')][_0x2c90('0x27')]===0x1f4){logger[_0x2c90('0x26')](_0x2c90('0x28'),_0x22452f,_0x2814bb[_0x2c90('0x26')][_0x2c90('0x29')]);return _0x45de38(_0x2814bb[_0x2c90('0x26')][_0x2c90('0x29')]);}logger[_0x2c90('0x26')](_0x2c90('0x28'),_0x22452f,_0x2814bb[_0x2c90('0x26')][_0x2c90('0x29')]);return _0x16be42(_0x2814bb[_0x2c90('0x26')][_0x2c90('0x29')]);}else{logger[_0x2c90('0x2a')]('MailAccount,\x20%s,\x20%s',_0x22452f,_0x2c90('0x24'));_0x16be42(_0x2814bb['result']['message']);}})[_0x2c90('0x2b')](function(_0x74027e){logger[_0x2c90('0x26')](_0x2c90('0x28'),_0x22452f,_0x74027e);_0x45de38(_0x74027e);});});}function respondWithStatusCode(_0x527ec6,_0x23c59d){_0x23c59d=_0x23c59d||0xcc;return function(_0x852dc6){if(_0x852dc6){return _0x527ec6[_0x2c90('0x2c')](_0x23c59d);}return _0x527ec6[_0x2c90('0x2d')](_0x23c59d)['end']();};}function respondWithResult(_0x36267c,_0x3e924b){_0x3e924b=_0x3e924b||0xc8;return function(_0x4abd54){if(_0x4abd54){return _0x36267c[_0x2c90('0x2d')](_0x3e924b)[_0x2c90('0x2e')](_0x4abd54);}};}function respondWithFilteredResult(_0x151462,_0x19cca4){return function(_0x44d4b5){if(_0x44d4b5){var _0x48043f=typeof _0x19cca4[_0x2c90('0x2f')]==='undefined'&&typeof _0x19cca4[_0x2c90('0x30')]===_0x2c90('0x31');var _0x4e017f=_0x44d4b5[_0x2c90('0x32')];var _0x20c157=_0x48043f?0x0:_0x19cca4['offset'];var _0x46d2c5=_0x48043f?_0x44d4b5[_0x2c90('0x32')]:_0x19cca4['offset']+_0x19cca4[_0x2c90('0x30')];var _0x468afe;if(_0x46d2c5>=_0x4e017f){_0x46d2c5=_0x4e017f;_0x468afe=0xc8;}else{_0x468afe=0xce;}_0x151462[_0x2c90('0x2d')](_0x468afe);return _0x151462['set']('Content-Range',_0x20c157+'-'+_0x46d2c5+'/'+_0x4e017f)[_0x2c90('0x2e')](_0x44d4b5);}return null;};}function patchUpdates(_0x28934c){return function(_0x26b59c){try{jsonpatch[_0x2c90('0x33')](_0x26b59c,_0x28934c,!![]);}catch(_0x540f67){return BPromise['reject'](_0x540f67);}return _0x26b59c[_0x2c90('0x34')]();};}function saveUpdates(_0x4cd5c9,_0x4417b2){return function(_0x1d2896){if(_0x1d2896){return _0x1d2896[_0x2c90('0x35')](_0x4cd5c9)['then'](function(_0x5f3d3e){return _0x5f3d3e;});}return null;};}function removeEntity(_0x1516cf,_0x4e3d02){return function(_0x3a8fd9){if(_0x3a8fd9){return _0x3a8fd9[_0x2c90('0x36')]()[_0x2c90('0x22')](function(){var _0x45b6c3=_0x3a8fd9['get']({'plain':!![]});var _0x4e2f82=_0x2c90('0x37');return db[_0x2c90('0x38')][_0x2c90('0x36')]({'where':{'type':_0x4e2f82,'resourceId':_0x45b6c3['id']}})[_0x2c90('0x22')](function(){return _0x3a8fd9;});})[_0x2c90('0x22')](function(){_0x1516cf[_0x2c90('0x2d')](0xcc)[_0x2c90('0x39')]();});}};}function handleEntityNotFound(_0x3f3fd8,_0x4f0475){return function(_0x351d15){if(!_0x351d15){_0x3f3fd8[_0x2c90('0x2c')](0x194);}return _0x351d15;};}function handleError(_0x51956d,_0x26ce1c){_0x26ce1c=_0x26ce1c||0x1f4;return function(_0x1d2ff4){logger[_0x2c90('0x26')](_0x1d2ff4['stack']);if(_0x1d2ff4[_0x2c90('0x3a')]){delete _0x1d2ff4[_0x2c90('0x3a')];}_0x51956d[_0x2c90('0x2d')](_0x26ce1c)[_0x2c90('0x3b')](_0x1d2ff4);};}exports[_0x2c90('0x3c')]=function(_0x39b709,_0x5cb4f8){var _0x3e0606={'include':[{'model':db[_0x2c90('0x3d')],'as':_0x2c90('0x3e')},{'model':db['MailServerOut'],'as':'Smtp'},{'model':db[_0x2c90('0x3f')],'as':_0x2c90('0x40')}]},_0x5e5f87={},_0x22a357={'count':0x0,'rows':[]};var _0x3cf036=_[_0x2c90('0x41')](db[_0x2c90('0x42')]['rawAttributes'],function(_0x1bbdc2){return{'name':_0x1bbdc2[_0x2c90('0x43')],'type':_0x1bbdc2[_0x2c90('0x44')][_0x2c90('0x45')]};});_0x5e5f87[_0x2c90('0x46')]=_[_0x2c90('0x41')](_0x3cf036,'name');_0x5e5f87[_0x2c90('0x47')]=_[_0x2c90('0x48')](_0x39b709[_0x2c90('0x47')]);_0x5e5f87[_0x2c90('0x49')]=_['intersection'](_0x5e5f87['model'],_0x5e5f87[_0x2c90('0x47')]);_0x3e0606[_0x2c90('0x4a')]=_[_0x2c90('0x4b')](_0x5e5f87[_0x2c90('0x46')],qs[_0x2c90('0x4c')](_0x39b709[_0x2c90('0x47')]['fields']));_0x3e0606[_0x2c90('0x4a')]=_0x3e0606[_0x2c90('0x4a')][_0x2c90('0x4d')]?_0x3e0606['attributes']:_0x5e5f87[_0x2c90('0x46')];if(!_0x39b709['query']['hasOwnProperty'](_0x2c90('0x4e'))){_0x3e0606[_0x2c90('0x30')]=qs[_0x2c90('0x30')](_0x39b709['query'][_0x2c90('0x30')]);_0x3e0606['offset']=qs[_0x2c90('0x2f')](_0x39b709['query']['offset']);}_0x3e0606['order']=qs['sort'](_0x39b709[_0x2c90('0x47')][_0x2c90('0x4f')]);_0x3e0606[_0x2c90('0x50')]=qs[_0x2c90('0x49')](_['pick'](_0x39b709['query'],_0x5e5f87[_0x2c90('0x49')]),_0x3cf036);if(_0x39b709[_0x2c90('0x47')]['filter']){_0x3e0606[_0x2c90('0x50')]=_[_0x2c90('0x51')](_0x3e0606[_0x2c90('0x50')],{'$or':_[_0x2c90('0x41')](_0x3cf036,function(_0x338304){if(_0x338304[_0x2c90('0x44')]!==_0x2c90('0x52')){var _0x421b93={};_0x421b93[_0x338304['name']]={'$like':'%'+_0x39b709[_0x2c90('0x47')]['filter']+'%'};return _0x421b93;}})});}_0x3e0606=_[_0x2c90('0x51')]({},_0x3e0606,_0x39b709['options']);var _0x3af3b9={'where':_0x3e0606[_0x2c90('0x50')]};return db['MailAccount']['count'](_0x3af3b9)[_0x2c90('0x22')](function(_0x3d4b1a){_0x22a357[_0x2c90('0x32')]=_0x3d4b1a;if(_0x39b709['query'][_0x2c90('0x53')]){_0x3e0606[_0x2c90('0x54')]=[{'all':!![]}];}return db[_0x2c90('0x42')][_0x2c90('0x55')](_0x3e0606);})[_0x2c90('0x22')](function(_0x543c35){_0x22a357[_0x2c90('0x56')]=_0x543c35;return _0x22a357;})[_0x2c90('0x22')](respondWithFilteredResult(_0x5cb4f8,_0x3e0606))[_0x2c90('0x2b')](handleError(_0x5cb4f8,null));};exports[_0x2c90('0x57')]=function(_0x4f83b3,_0x5639d3){var _0x1e8f2b={'raw':![],'where':{'id':_0x4f83b3[_0x2c90('0x58')]['id']},'include':[{'model':db['MailServerIn'],'as':_0x2c90('0x3e')},{'model':db[_0x2c90('0x59')],'as':_0x2c90('0x5a')},{'model':db[_0x2c90('0x3f')],'as':_0x2c90('0x40')}]},_0x4c0925={};_0x4c0925[_0x2c90('0x46')]=_[_0x2c90('0x48')](db[_0x2c90('0x42')][_0x2c90('0x5b')]);_0x4c0925[_0x2c90('0x47')]=_['keys'](_0x4f83b3[_0x2c90('0x47')]);_0x4c0925['filters']=_['intersection'](_0x4c0925[_0x2c90('0x46')],_0x4c0925[_0x2c90('0x47')]);_0x1e8f2b[_0x2c90('0x4a')]=_['intersection'](_0x4c0925['model'],qs[_0x2c90('0x4c')](_0x4f83b3[_0x2c90('0x47')][_0x2c90('0x4c')]));_0x1e8f2b[_0x2c90('0x4a')]=_0x1e8f2b['attributes'][_0x2c90('0x4d')]?_0x1e8f2b[_0x2c90('0x4a')]:_0x4c0925[_0x2c90('0x46')];if(_0x4f83b3[_0x2c90('0x47')][_0x2c90('0x53')]){_0x1e8f2b[_0x2c90('0x54')]=[{'all':!![]}];}_0x1e8f2b=_[_0x2c90('0x51')]({},_0x1e8f2b,_0x4f83b3[_0x2c90('0x5c')]);return db[_0x2c90('0x42')][_0x2c90('0x5d')](_0x1e8f2b)['then'](handleEntityNotFound(_0x5639d3,null))['then'](respondWithResult(_0x5639d3,null))[_0x2c90('0x2b')](handleError(_0x5639d3,null));};exports[_0x2c90('0x35')]=function(_0x27feef,_0x37c8ac){if(_0x27feef['body']['id']){delete _0x27feef[_0x2c90('0x5e')]['id'];}return db[_0x2c90('0x42')][_0x2c90('0x5d')]({'where':{'id':_0x27feef[_0x2c90('0x58')]['id']},'include':[{'model':db[_0x2c90('0x3d')],'as':_0x2c90('0x3e')},{'model':db['MailServerOut'],'as':_0x2c90('0x5a')},{'model':db[_0x2c90('0x3f')],'as':_0x2c90('0x40')}]})[_0x2c90('0x22')](handleEntityNotFound(_0x37c8ac,null))['then'](saveUpdates(_0x27feef['body'],null))['then'](function(_0x5ae38b){if(_0x5ae38b&&_0x27feef[_0x2c90('0x5e')][_0x2c90('0x3e')]){return db['MailServerIn'][_0x2c90('0x35')](_0x27feef[_0x2c90('0x5e')][_0x2c90('0x3e')],{'where':{'MailAccountId':_0x5ae38b['id']}})[_0x2c90('0x22')](function(){return _0x5ae38b;});}return _0x5ae38b;})[_0x2c90('0x22')](function(_0x5e6098){if(_0x5e6098&&_0x27feef[_0x2c90('0x5e')]['Smtp']){return db[_0x2c90('0x59')][_0x2c90('0x35')](_0x27feef[_0x2c90('0x5e')][_0x2c90('0x5a')],{'where':{'MailAccountId':_0x5e6098['id']}})[_0x2c90('0x22')](function(){return _0x5e6098;});}return _0x5e6098;})['then'](respondWithResult(_0x37c8ac,null))['catch'](handleError(_0x37c8ac,null));};exports['describe']=function(_0x444655,_0x50f65d){return db['MailAccount'][_0x2c90('0x5f')]()[_0x2c90('0x22')](respondWithResult(_0x50f65d,null))[_0x2c90('0x2b')](handleError(_0x50f65d,null));};exports[_0x2c90('0x60')]=function(_0x4a36d0,_0x18b27f,_0x1b785e){if(_0x4a36d0[_0x2c90('0x5e')]['id']){delete _0x4a36d0[_0x2c90('0x5e')]['id'];}return db[_0x2c90('0x42')]['find']({'where':{'id':_0x4a36d0[_0x2c90('0x58')]['id']}})[_0x2c90('0x22')](handleEntityNotFound(_0x18b27f,null))[_0x2c90('0x22')](function(_0xb5f5bd){if(_0xb5f5bd){_0x4a36d0[_0x2c90('0x5e')]['MailAccountId']=_0xb5f5bd['id'];return db[_0x2c90('0x61')][_0x2c90('0x62')](_0x4a36d0[_0x2c90('0x5e')]);}})[_0x2c90('0x22')](respondWithResult(_0x18b27f,null))[_0x2c90('0x2b')](handleError(_0x18b27f,null));};exports[_0x2c90('0x63')]=function(_0x219059,_0x56b5be,_0x57eca9){var _0x48fbc5={'raw':![],'where':{}};var _0x905ea3={};var _0x27083e={'count':0x0,'rows':[]};return db[_0x2c90('0x42')][_0x2c90('0x64')]({'where':{'id':_0x219059['params']['id']}})[_0x2c90('0x22')](handleEntityNotFound(_0x56b5be,null))['then'](function(_0x57d177){if(_0x57d177){_0x905ea3['model']=_['keys'](db['Disposition'][_0x2c90('0x5b')]);_0x905ea3['query']=_['keys'](_0x219059[_0x2c90('0x47')]);_0x905ea3[_0x2c90('0x49')]=_[_0x2c90('0x4b')](_0x905ea3['model'],_0x905ea3['query']);_0x48fbc5['attributes']=_[_0x2c90('0x4b')](_0x905ea3[_0x2c90('0x46')],qs[_0x2c90('0x4c')](_0x219059[_0x2c90('0x47')][_0x2c90('0x4c')]));_0x48fbc5[_0x2c90('0x4a')]=_0x48fbc5[_0x2c90('0x4a')][_0x2c90('0x4d')]?_0x48fbc5[_0x2c90('0x4a')]:_0x905ea3[_0x2c90('0x46')];if(!_0x219059[_0x2c90('0x47')][_0x2c90('0x65')](_0x2c90('0x4e'))){_0x48fbc5[_0x2c90('0x30')]=qs[_0x2c90('0x30')](_0x219059[_0x2c90('0x47')]['limit']);_0x48fbc5['offset']=qs[_0x2c90('0x2f')](_0x219059[_0x2c90('0x47')][_0x2c90('0x2f')]);}_0x48fbc5[_0x2c90('0x66')]=qs[_0x2c90('0x4f')](_0x219059[_0x2c90('0x47')][_0x2c90('0x4f')]);_0x48fbc5[_0x2c90('0x50')]=qs[_0x2c90('0x49')](_['pick'](_0x219059[_0x2c90('0x47')],_0x905ea3['filters']));_0x48fbc5[_0x2c90('0x50')][_0x2c90('0x67')]=_0x57d177['id'];if(_0x219059[_0x2c90('0x47')]['filter']){_0x48fbc5[_0x2c90('0x50')]=_[_0x2c90('0x51')](_0x48fbc5[_0x2c90('0x50')],{'$or':_[_0x2c90('0x41')](_0x48fbc5[_0x2c90('0x4a')],function(_0x518a9d){var _0x2dd511={};_0x2dd511[_0x518a9d]={'$like':'%'+_0x219059['query'][_0x2c90('0x68')]+'%'};return _0x2dd511;})});}_0x48fbc5=_['merge']({},_0x48fbc5,_0x219059['options']);return db[_0x2c90('0x61')][_0x2c90('0x32')]({'where':_0x48fbc5[_0x2c90('0x50')]})[_0x2c90('0x22')](function(_0x4a27ca){_0x27083e[_0x2c90('0x32')]=_0x4a27ca;if(_0x219059[_0x2c90('0x47')]['includeAll']){_0x48fbc5[_0x2c90('0x54')]=[{'all':!![]}];}return db[_0x2c90('0x61')][_0x2c90('0x55')](_0x48fbc5);})[_0x2c90('0x22')](function(_0x5a2dc7){_0x27083e['rows']=_0x5a2dc7;return _0x27083e;});}})[_0x2c90('0x22')](respondWithFilteredResult(_0x56b5be,_0x48fbc5))[_0x2c90('0x2b')](handleError(_0x56b5be,null));};exports[_0x2c90('0x69')]=function(_0x46c09c,_0x2d424f,_0x3e1245){return db[_0x2c90('0x42')][_0x2c90('0x5d')]({'where':{'id':_0x46c09c[_0x2c90('0x58')]['id']}})[_0x2c90('0x22')](handleEntityNotFound(_0x2d424f,null))[_0x2c90('0x22')](function(_0x4a9b60){if(_0x4a9b60){return _0x4a9b60[_0x2c90('0x69')](_0x46c09c[_0x2c90('0x47')]['ids']);}})['then'](respondWithStatusCode(_0x2d424f,null))[_0x2c90('0x2b')](handleError(_0x2d424f,null));};exports[_0x2c90('0x6a')]=function(_0xb05c44,_0x53eccb,_0x5de696){if(_0xb05c44[_0x2c90('0x5e')]['id']){delete _0xb05c44[_0x2c90('0x5e')]['id'];}return db[_0x2c90('0x42')][_0x2c90('0x5d')]({'where':{'id':_0xb05c44[_0x2c90('0x58')]['id']}})[_0x2c90('0x22')](handleEntityNotFound(_0x53eccb,null))[_0x2c90('0x22')](function(_0x1cf2ac){if(_0x1cf2ac){_0xb05c44[_0x2c90('0x5e')][_0x2c90('0x67')]=_0x1cf2ac['id'];return db[_0x2c90('0x6b')][_0x2c90('0x62')](_0xb05c44[_0x2c90('0x5e')]);}})['then'](respondWithResult(_0x53eccb,null))[_0x2c90('0x2b')](handleError(_0x53eccb,null));};exports[_0x2c90('0x6c')]=function(_0x97908c,_0x4bd5ee,_0x1832d2){var _0x5d980a={'raw':![],'where':{}};var _0xa69893={};var _0xc52ea2={'count':0x0,'rows':[]};return db[_0x2c90('0x42')][_0x2c90('0x64')]({'where':{'id':_0x97908c[_0x2c90('0x58')]['id']}})['then'](handleEntityNotFound(_0x4bd5ee,null))['then'](function(_0x4230b0){if(_0x4230b0){_0xa69893[_0x2c90('0x46')]=_['keys'](db['CannedAnswer'][_0x2c90('0x5b')]);_0xa69893[_0x2c90('0x47')]=_[_0x2c90('0x48')](_0x97908c[_0x2c90('0x47')]);_0xa69893[_0x2c90('0x49')]=_[_0x2c90('0x4b')](_0xa69893[_0x2c90('0x46')],_0xa69893[_0x2c90('0x47')]);_0x5d980a['attributes']=_[_0x2c90('0x4b')](_0xa69893[_0x2c90('0x46')],qs[_0x2c90('0x4c')](_0x97908c[_0x2c90('0x47')][_0x2c90('0x4c')]));_0x5d980a[_0x2c90('0x4a')]=_0x5d980a[_0x2c90('0x4a')]['length']?_0x5d980a[_0x2c90('0x4a')]:_0xa69893[_0x2c90('0x46')];if(!_0x97908c[_0x2c90('0x47')][_0x2c90('0x65')](_0x2c90('0x4e'))){_0x5d980a[_0x2c90('0x30')]=qs[_0x2c90('0x30')](_0x97908c[_0x2c90('0x47')][_0x2c90('0x30')]);_0x5d980a['offset']=qs[_0x2c90('0x2f')](_0x97908c['query']['offset']);}_0x5d980a[_0x2c90('0x66')]=qs[_0x2c90('0x4f')](_0x97908c[_0x2c90('0x47')][_0x2c90('0x4f')]);_0x5d980a[_0x2c90('0x50')]=qs[_0x2c90('0x49')](_[_0x2c90('0x6d')](_0x97908c[_0x2c90('0x47')],_0xa69893[_0x2c90('0x49')]));_0x5d980a[_0x2c90('0x50')][_0x2c90('0x67')]=_0x4230b0['id'];if(_0x97908c['query']['filter']){_0x5d980a[_0x2c90('0x50')]=_[_0x2c90('0x51')](_0x5d980a[_0x2c90('0x50')],{'$or':_[_0x2c90('0x41')](_0x5d980a[_0x2c90('0x4a')],function(_0x4e5401){var _0x3c153f={};_0x3c153f[_0x4e5401]={'$like':'%'+_0x97908c[_0x2c90('0x47')][_0x2c90('0x68')]+'%'};return _0x3c153f;})});}_0x5d980a=_[_0x2c90('0x51')]({},_0x5d980a,_0x97908c[_0x2c90('0x5c')]);return db['CannedAnswer']['count']({'where':_0x5d980a[_0x2c90('0x50')]})[_0x2c90('0x22')](function(_0x3604b2){_0xc52ea2['count']=_0x3604b2;if(_0x97908c['query']['includeAll']){_0x5d980a[_0x2c90('0x54')]=[{'all':!![]}];}return db[_0x2c90('0x6b')][_0x2c90('0x55')](_0x5d980a);})[_0x2c90('0x22')](function(_0x1fec39){_0xc52ea2[_0x2c90('0x56')]=_0x1fec39;return _0xc52ea2;});}})[_0x2c90('0x22')](respondWithFilteredResult(_0x4bd5ee,_0x5d980a))[_0x2c90('0x2b')](handleError(_0x4bd5ee,null));};exports[_0x2c90('0x6e')]=function(_0x5b3f9c,_0x11bcc5,_0xa3ad9){return db['MailAccount'][_0x2c90('0x5d')]({'where':{'id':_0x5b3f9c[_0x2c90('0x58')]['id']}})[_0x2c90('0x22')](handleEntityNotFound(_0x11bcc5,null))[_0x2c90('0x22')](function(_0x6f1a80){if(_0x6f1a80){return _0x6f1a80[_0x2c90('0x6e')](_0x5b3f9c[_0x2c90('0x47')][_0x2c90('0x6f')]);}})[_0x2c90('0x22')](respondWithStatusCode(_0x11bcc5,null))['catch'](handleError(_0x11bcc5,null));};exports[_0x2c90('0x62')]=function(_0x4cb55b,_0x48e608){var _0x104137={'name':_0x4cb55b['body'][_0x2c90('0x3a')],'key':_0x4cb55b[_0x2c90('0x5e')][_0x2c90('0x45')],'email':_0x4cb55b[_0x2c90('0x5e')][_0x2c90('0x70')],'ListId':_0x4cb55b[_0x2c90('0x5e')][_0x2c90('0x71')],'active':!_[_0x2c90('0x72')](_0x4cb55b[_0x2c90('0x5e')][_0x2c90('0x73')])?_0x4cb55b[_0x2c90('0x5e')][_0x2c90('0x73')]:!![],'description':_0x4cb55b[_0x2c90('0x5e')][_0x2c90('0x74')]||null,'Imap':{},'Smtp':{}};if(_[_0x2c90('0x72')](_0x4cb55b[_0x2c90('0x5e')]['cservice'])){if(_0x4cb55b[_0x2c90('0x5e')]['cauthentication']){_0x104137['Imap'][_0x2c90('0x75')]=_0x104137[_0x2c90('0x5a')][_0x2c90('0x75')]=_0x4cb55b['body'][_0x2c90('0x76')];_0x104137[_0x2c90('0x3e')]['password']=_0x104137[_0x2c90('0x5a')][_0x2c90('0x77')]=_0x4cb55b[_0x2c90('0x5e')][_0x2c90('0x78')];}else{_0x104137['Imap'][_0x2c90('0x79')]=_0x104137['Smtp'][_0x2c90('0x79')]=![];}_0x104137[_0x2c90('0x3e')][_0x2c90('0x7a')]=_0x4cb55b[_0x2c90('0x5e')]['Imap']['host'];_0x104137[_0x2c90('0x3e')][_0x2c90('0x7b')]=_0x4cb55b[_0x2c90('0x5e')][_0x2c90('0x3e')][_0x2c90('0x7b')];_0x104137['Smtp'][_0x2c90('0x7a')]=_0x4cb55b[_0x2c90('0x5e')][_0x2c90('0x5a')]['host'];_0x104137['Smtp'][_0x2c90('0x7b')]=_0x4cb55b[_0x2c90('0x5e')][_0x2c90('0x5a')][_0x2c90('0x7b')];}else{_0x104137[_0x2c90('0x3e')][_0x2c90('0x7c')]=_0x104137['Smtp'][_0x2c90('0x7c')]=_0x4cb55b[_0x2c90('0x5e')][_0x2c90('0x7d')];_0x104137['Imap'][_0x2c90('0x75')]=_0x104137[_0x2c90('0x5a')]['user']=_0x4cb55b[_0x2c90('0x5e')][_0x2c90('0x76')];_0x104137[_0x2c90('0x3e')]['password']=_0x104137[_0x2c90('0x5a')][_0x2c90('0x77')]=_0x4cb55b[_0x2c90('0x5e')][_0x2c90('0x78')];}return db[_0x2c90('0x42')]['create'](_0x104137,{'include':[{'model':db[_0x2c90('0x59')],'as':'Smtp'},{'model':db['MailServerIn'],'as':'Imap'}]})[_0x2c90('0x22')](function(_0x461261){var _0x1c9515=_0x4cb55b[_0x2c90('0x75')][_0x2c90('0x7e')]({'plain':!![]});if(!_0x1c9515)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x1c9515['role']===_0x2c90('0x75')){var _0x581264=_0x461261[_0x2c90('0x7e')]({'plain':!![]});return db[_0x2c90('0x7f')][_0x2c90('0x5d')]({'where':{'name':_0x2c90('0x37'),'userProfileId':_0x1c9515[_0x2c90('0x80')]},'raw':!![]})[_0x2c90('0x22')](function(_0x5e1273){if(_0x5e1273&&_0x5e1273[_0x2c90('0x81')]===0x0){return db[_0x2c90('0x38')][_0x2c90('0x62')]({'name':_0x581264[_0x2c90('0x3a')],'resourceId':_0x581264['id'],'type':_0x5e1273[_0x2c90('0x3a')],'sectionId':_0x5e1273['id']},{})['then'](function(){return _0x461261;});}else{return _0x461261;}})[_0x2c90('0x2b')](function(_0x153c24){logger['error'](_0x2c90('0x82'),_0x153c24);throw _0x153c24;});}return _0x461261;})[_0x2c90('0x22')](respondWithResult(_0x48e608,0xc9))[_0x2c90('0x2b')](handleError(_0x48e608,null));};exports[_0x2c90('0x83')]=function(_0x44dc6f,_0x1426c8,_0x36f975){return db['MailAccount'][_0x2c90('0x64')]({'where':{'id':_0x44dc6f[_0x2c90('0x58')]['id']}})[_0x2c90('0x22')](handleEntityNotFound(_0x1426c8,null))[_0x2c90('0x22')](function(_0x2c4171){if(_0x2c4171){return _0x2c4171[_0x2c90('0x83')]();}return null;})[_0x2c90('0x22')](respondWithResult(_0x1426c8,null))[_0x2c90('0x2b')](handleError(_0x1426c8,null));};exports[_0x2c90('0x84')]=function(_0x1c79bc,_0xdcac56,_0x2645ae){if(_0x1c79bc[_0x2c90('0x5e')]['id']){delete _0x1c79bc['body']['id'];}return db[_0x2c90('0x42')][_0x2c90('0x5d')]({'where':{'id':_0x1c79bc[_0x2c90('0x58')]['id']}})[_0x2c90('0x22')](handleEntityNotFound(_0xdcac56,null))[_0x2c90('0x22')](function(_0x100da8){if(_0x100da8){_0x1c79bc['body'][_0x2c90('0x67')]=_0x100da8['id'];return db[_0x2c90('0x3d')][_0x2c90('0x62')](_0x1c79bc[_0x2c90('0x5e')]);}})[_0x2c90('0x22')](respondWithResult(_0xdcac56,null))[_0x2c90('0x2b')](handleError(_0xdcac56,null));};exports[_0x2c90('0x85')]=function(_0xe5428f,_0x3d7789,_0x396ed6){return db[_0x2c90('0x42')][_0x2c90('0x64')]({'where':{'id':_0xe5428f[_0x2c90('0x58')]['id']}})[_0x2c90('0x22')](handleEntityNotFound(_0x3d7789,null))['then'](function(_0x29aa3d){if(_0x29aa3d){return _0x29aa3d[_0x2c90('0x86')](null);}return null;})[_0x2c90('0x22')](respondWithStatusCode(_0x3d7789,null))[_0x2c90('0x2b')](handleError(_0x3d7789,null));};exports[_0x2c90('0x87')]=function(_0x178656,_0xb2fddc,_0x3fab07){return db['MailAccount']['findOne']({'where':{'id':_0x178656['params']['id']}})['then'](handleEntityNotFound(_0xb2fddc,null))['then'](function(_0x535b41){if(_0x535b41){return _0x535b41[_0x2c90('0x87')]();}return null;})['then'](respondWithResult(_0xb2fddc,null))[_0x2c90('0x2b')](handleError(_0xb2fddc,null));};exports[_0x2c90('0x88')]=function(_0x418c06,_0x390d4,_0x282342){if(_0x418c06[_0x2c90('0x5e')]['id']){delete _0x418c06['body']['id'];}return db[_0x2c90('0x42')][_0x2c90('0x5d')]({'where':{'id':_0x418c06['params']['id']}})[_0x2c90('0x22')](handleEntityNotFound(_0x390d4,null))[_0x2c90('0x22')](function(_0x2cedae){if(_0x2cedae){_0x418c06[_0x2c90('0x5e')]['MailAccountId']=_0x2cedae['id'];return db[_0x2c90('0x59')][_0x2c90('0x62')](_0x418c06[_0x2c90('0x5e')]);}})[_0x2c90('0x22')](respondWithResult(_0x390d4,null))['catch'](handleError(_0x390d4,null));};exports['removeSmtp']=function(_0x34e713,_0xad0438,_0x5e1100){return db[_0x2c90('0x42')][_0x2c90('0x64')]({'where':{'id':_0x34e713[_0x2c90('0x58')]['id']}})[_0x2c90('0x22')](handleEntityNotFound(_0xad0438,null))[_0x2c90('0x22')](function(_0x3c56ec){if(_0x3c56ec){return _0x3c56ec[_0x2c90('0x89')](null);}return null;})[_0x2c90('0x22')](respondWithStatusCode(_0xad0438,null))['catch'](handleError(_0xad0438,null));};exports[_0x2c90('0x8a')]=function(_0xdb77b6,_0x27bc2d,_0x2bf742){return db['MailInteraction'][_0x2c90('0x5d')]({'where':{'id':_0xdb77b6[_0x2c90('0x58')]['id']}})[_0x2c90('0x22')](handleEntityNotFound(_0x27bc2d,null))[_0x2c90('0x22')](function(_0x456b24){if(_0x456b24){return _0x456b24[_0x2c90('0x8a')](_0xdb77b6[_0x2c90('0x5e')][_0x2c90('0x6f')],_[_0x2c90('0x8b')](_0xdb77b6[_0x2c90('0x5e')],[_0x2c90('0x6f'),'id'])||{});}})[_0x2c90('0x22')](respondWithResult(_0x27bc2d,null))[_0x2c90('0x2b')](handleError(_0x27bc2d,null));};exports[_0x2c90('0x8c')]=function(_0x1c8694,_0x124dec,_0x4a3a2c){var _0x1a2754={'raw':![],'where':{}};var _0x154dcb={};var _0x127b80={'count':0x0,'rows':[]};return db['MailAccount'][_0x2c90('0x64')]({'where':{'id':_0x1c8694['params']['id']}})[_0x2c90('0x22')](handleEntityNotFound(_0x124dec,null))['then'](function(_0x923475){if(_0x923475){_0x154dcb[_0x2c90('0x46')]=_[_0x2c90('0x48')](db['MailInteraction'][_0x2c90('0x5b')]);_0x154dcb[_0x2c90('0x47')]=_[_0x2c90('0x48')](_0x1c8694[_0x2c90('0x47')]);_0x154dcb[_0x2c90('0x49')]=_[_0x2c90('0x4b')](_0x154dcb[_0x2c90('0x46')],_0x154dcb[_0x2c90('0x47')]);_0x1a2754[_0x2c90('0x4a')]=_[_0x2c90('0x4b')](_0x154dcb['model'],qs[_0x2c90('0x4c')](_0x1c8694['query'][_0x2c90('0x4c')]));_0x1a2754[_0x2c90('0x4a')]=_0x1a2754[_0x2c90('0x4a')][_0x2c90('0x4d')]?_0x1a2754[_0x2c90('0x4a')]:_0x154dcb[_0x2c90('0x46')];if(!_0x1c8694['query'][_0x2c90('0x65')](_0x2c90('0x4e'))){_0x1a2754[_0x2c90('0x30')]=qs[_0x2c90('0x30')](_0x1c8694[_0x2c90('0x47')][_0x2c90('0x30')]);_0x1a2754['offset']=qs['offset'](_0x1c8694['query']['offset']);}_0x1a2754[_0x2c90('0x66')]=qs[_0x2c90('0x4f')](_0x1c8694[_0x2c90('0x47')][_0x2c90('0x4f')]);_0x1a2754['where']=qs[_0x2c90('0x49')](_[_0x2c90('0x6d')](_0x1c8694[_0x2c90('0x47')],_0x154dcb['filters']));_0x1a2754[_0x2c90('0x50')][_0x2c90('0x67')]=_0x923475['id'];if(_0x1c8694[_0x2c90('0x47')]['filter']){_0x1a2754['where']=_[_0x2c90('0x51')](_0x1a2754[_0x2c90('0x50')],{'$or':_['map'](_0x1a2754['attributes'],function(_0xcde4df){var _0x4b7a4a={};_0x4b7a4a[_0xcde4df]={'$like':'%'+_0x1c8694[_0x2c90('0x47')][_0x2c90('0x68')]+'%'};return _0x4b7a4a;})});}_0x1a2754=_[_0x2c90('0x51')]({},_0x1a2754,_0x1c8694[_0x2c90('0x5c')]);return db[_0x2c90('0x8d')]['count']({'where':_0x1a2754[_0x2c90('0x50')]})[_0x2c90('0x22')](function(_0x16c850){_0x127b80['count']=_0x16c850;if(_0x1c8694[_0x2c90('0x47')][_0x2c90('0x53')]){_0x1a2754[_0x2c90('0x54')]=[{'model':db[_0x2c90('0x8e')],'as':_0x2c90('0x8f'),'required':![]},{'model':db[_0x2c90('0x90')],'as':_0x2c90('0x91'),'attributes':[_0x2c90('0x3a'),_0x2c90('0x92'),_0x2c90('0x93')],'required':![]},{'model':db[_0x2c90('0x94')],'as':_0x2c90('0x95'),'attributes':['id',_0x2c90('0x3a'),'color'],'where':_0x1c8694['query'][_0x2c90('0x96')]?{'id':_0x1c8694[_0x2c90('0x47')]['tag']}:undefined,'required':_0x1c8694[_0x2c90('0x47')]['tag']?!![]:![]}];}return db['MailInteraction'][_0x2c90('0x55')](_0x1a2754);})[_0x2c90('0x22')](function(_0xfb59a2){_0x127b80[_0x2c90('0x56')]=_0xfb59a2;return _0x127b80;});}})[_0x2c90('0x22')](respondWithFilteredResult(_0x124dec,_0x1a2754))[_0x2c90('0x2b')](handleError(_0x124dec,null));};exports[_0x2c90('0x97')]=function addApplications(_0x1ead27,_0x5c4ce8){var _0xbb62ed=_0x1ead27[_0x2c90('0x58')]['id'];var _0x48d60c=_0x1ead27[_0x2c90('0x5e')];var _0x3df253=0xc8;var _0x277330=null;return db[_0x2c90('0x98')][_0x2c90('0x99')]({'isolationLevel':db['sequelize']['Transaction'][_0x2c90('0x9a')][_0x2c90('0x9b')]},function(_0x2c898e){return db['MailAccount'][_0x2c90('0x64')]({'where':{'id':_0xbb62ed},'transaction':_0x2c898e})[_0x2c90('0x22')](function(_0x3170a5){if(_0x3170a5){return db[_0x2c90('0x9c')][_0x2c90('0x36')]({'where':{'MailAccountId':_0xbb62ed},'transaction':_0x2c898e})['then'](function(){var _0x4a3fb5=_[_0x2c90('0x41')](_0x48d60c,function(_0x3d01e5){_0x3d01e5[_0x2c90('0x67')]=_0xbb62ed;return _0x3d01e5;});return db[_0x2c90('0x9c')][_0x2c90('0x9d')](_0x4a3fb5,{'transaction':_0x2c898e});});}else{_0x3df253=0x194;_0x277330=[];}});})['then'](function(){if(_0x3df253!==0x194){return db[_0x2c90('0x9c')]['findAndCountAll']({'where':{'MailAccountId':_0xbb62ed},'order':_0x2c90('0x9e')})['then'](function(_0x54697a){_0x277330=_0x54697a;});}})[_0x2c90('0x2b')](function(_0x529762){_0x3df253=0x1f4;logger[_0x2c90('0x26')](_0x529762[_0x2c90('0x9f')]);if(_0x529762[_0x2c90('0x3a')]){delete _0x529762['name'];}_0x277330=_0x529762;})[_0x2c90('0xa0')](function(){if(_0x277330===null){_0x5c4ce8[_0x2c90('0x2c')](_0x3df253);}else{if(_0x3df253===0x1f4){_0x5c4ce8[_0x2c90('0x2d')](_0x3df253)[_0x2c90('0x3b')](_0x277330);}else{_0x5c4ce8[_0x2c90('0x2d')](_0x3df253)[_0x2c90('0x2e')](_0x277330);}}});};exports['getApplications']=function(_0xf184a6,_0x39b0ec,_0xee62c1){var _0x1a2d8a={};var _0x1c5209={};var _0x423606;var _0x2c8278;return db[_0x2c90('0x42')][_0x2c90('0x64')]({'where':{'id':_0xf184a6[_0x2c90('0x58')]['id']}})[_0x2c90('0x22')](handleEntityNotFound(_0x39b0ec,null))['then'](function(_0x307e05){if(_0x307e05){_0x423606=_0x307e05;_0x1c5209[_0x2c90('0x46')]=_[_0x2c90('0x48')](db[_0x2c90('0x9c')][_0x2c90('0x5b')]);_0x1c5209[_0x2c90('0x47')]=_[_0x2c90('0x48')](_0xf184a6[_0x2c90('0x47')]);_0x1c5209[_0x2c90('0x49')]=_[_0x2c90('0x4b')](_0x1c5209[_0x2c90('0x46')],_0x1c5209[_0x2c90('0x47')]);_0x1a2d8a[_0x2c90('0x4a')]=_[_0x2c90('0x4b')](_0x1c5209[_0x2c90('0x46')],qs['fields'](_0xf184a6['query'][_0x2c90('0x4c')]));_0x1a2d8a[_0x2c90('0x4a')]=_0x1a2d8a[_0x2c90('0x4a')][_0x2c90('0x4d')]?_0x1a2d8a[_0x2c90('0x4a')]:_0x1c5209[_0x2c90('0x46')];_0x1a2d8a[_0x2c90('0x66')]=qs[_0x2c90('0x4f')](_0xf184a6[_0x2c90('0x47')]['sort']);_0x1a2d8a['where']=qs[_0x2c90('0x49')](_['pick'](_0xf184a6['query'],_0x1c5209[_0x2c90('0x49')]));if(_0xf184a6[_0x2c90('0x47')][_0x2c90('0x68')]){_0x1a2d8a[_0x2c90('0x50')]=_['merge'](_0x1a2d8a[_0x2c90('0x50')],{'$or':_[_0x2c90('0x41')](_0x1a2d8a[_0x2c90('0x4a')],function(_0x4a6b0a){var _0x127121={};_0x127121[_0x4a6b0a]={'$like':'%'+_0xf184a6[_0x2c90('0x47')]['filter']+'%'};return _0x127121;})});}_0x1a2d8a=_[_0x2c90('0x51')]({},_0x1a2d8a,_0xf184a6['options']);return _0x423606[_0x2c90('0xa1')](_0x1a2d8a);}})[_0x2c90('0x22')](function(_0x2f7ebc){if(_0x2f7ebc){_0x2c8278=_0x2f7ebc[_0x2c90('0x4d')];if(!_0xf184a6[_0x2c90('0x47')][_0x2c90('0x65')](_0x2c90('0x4e'))){_0x1a2d8a[_0x2c90('0x30')]=qs[_0x2c90('0x30')](_0xf184a6['query']['limit']);_0x1a2d8a[_0x2c90('0x2f')]=qs[_0x2c90('0x2f')](_0xf184a6[_0x2c90('0x47')]['offset']);}return _0x423606[_0x2c90('0xa1')](_0x1a2d8a);}})[_0x2c90('0x22')](function(_0x327d07){if(_0x327d07){return _0x327d07?{'count':_0x2c8278,'rows':_0x327d07}:null;}})[_0x2c90('0x22')](respondWithResult(_0x39b0ec,null))[_0x2c90('0x2b')](handleError(_0x39b0ec,null));};exports[_0x2c90('0xa2')]=function(_0x1f813b,_0x1d5786,_0x4a94c4){var _0x483476={'raw':!![],'where':{}};var _0x10b1b7={};var _0x2bcbbc={'count':0x0,'rows':[]};return db['MailAccount']['findOne']({'where':{'id':_0x1f813b[_0x2c90('0x58')]['id']}})[_0x2c90('0x22')](handleEntityNotFound(_0x1d5786,null))[_0x2c90('0x22')](function(_0x58ea37){if(_0x58ea37){_0x10b1b7['model']=_['keys'](db[_0x2c90('0xa3')][_0x2c90('0x5b')]);_0x10b1b7[_0x2c90('0x47')]=_[_0x2c90('0x48')](_0x1f813b[_0x2c90('0x47')]);_0x10b1b7[_0x2c90('0x49')]=_[_0x2c90('0x4b')](_0x10b1b7['model'],_0x10b1b7[_0x2c90('0x47')]);_0x483476[_0x2c90('0x4a')]=_[_0x2c90('0x4b')](_0x10b1b7[_0x2c90('0x46')],qs['fields'](_0x1f813b[_0x2c90('0x47')][_0x2c90('0x4c')]));_0x483476[_0x2c90('0x4a')]=_0x483476['attributes'][_0x2c90('0x4d')]?_0x483476[_0x2c90('0x4a')]:_0x10b1b7[_0x2c90('0x46')];if(!_0x1f813b[_0x2c90('0x47')][_0x2c90('0x65')](_0x2c90('0x4e'))){_0x483476[_0x2c90('0x30')]=qs[_0x2c90('0x30')](_0x1f813b[_0x2c90('0x47')]['limit']);_0x483476[_0x2c90('0x2f')]=qs[_0x2c90('0x2f')](_0x1f813b[_0x2c90('0x47')][_0x2c90('0x2f')]);}_0x483476[_0x2c90('0x66')]=qs['sort'](_0x1f813b['query'][_0x2c90('0x4f')]);_0x483476[_0x2c90('0x50')]=qs[_0x2c90('0x49')](_[_0x2c90('0x6d')](_0x1f813b[_0x2c90('0x47')],_0x10b1b7[_0x2c90('0x49')]));_0x483476[_0x2c90('0x50')][_0x2c90('0x67')]=_0x58ea37['id'];if(_0x1f813b[_0x2c90('0x47')][_0x2c90('0x68')]){_0x483476[_0x2c90('0x50')]=_['merge'](_0x483476['where'],{'$or':_[_0x2c90('0x41')](_0x483476['attributes'],function(_0x366515){var _0x63712c={};_0x63712c[_0x366515]={'$like':'%'+_0x1f813b['query'][_0x2c90('0x68')]+'%'};return _0x63712c;})});}if(_0x1f813b['query']['$gte']){var _0x25a774=_0x1f813b[_0x2c90('0x47')][_0x2c90('0xa4')][_0x2c90('0xa5')](',');var _0xfe21ed={};_0xfe21ed[_0x25a774[0x0]]={'$gte':moment(_0x25a774[0x1])[_0x2c90('0xa6')](_0x2c90('0xa7'))};_0x483476[_0x2c90('0x50')]=_[_0x2c90('0x51')](_0x483476[_0x2c90('0x50')],_0xfe21ed);}_0x483476=_[_0x2c90('0x51')]({},_0x483476,_0x1f813b[_0x2c90('0x5c')]);return db[_0x2c90('0xa3')]['count']({'where':_0x483476['where']})['then'](function(_0x191c39){_0x2bcbbc[_0x2c90('0x32')]=_0x191c39;if(_0x1f813b[_0x2c90('0x47')][_0x2c90('0x53')]){_0x483476[_0x2c90('0x54')]=[{'all':!![]}];}return db[_0x2c90('0xa3')][_0x2c90('0x55')](_0x483476);})[_0x2c90('0x22')](function(_0x360334){if(_0x1f813b[_0x2c90('0x47')][_0x2c90('0xa8')]===_0x2c90('0xa9')){for(var _0x428225=0x0;_0x428225<_0x360334[_0x2c90('0x4d')];_0x428225++){_0x360334[_0x428225]['body']=juice(_0x360334[_0x428225][_0x2c90('0x5e')]);}}_0x2bcbbc['rows']=_0x360334;return _0x2bcbbc;});}})[_0x2c90('0x22')](respondWithFilteredResult(_0x1d5786,_0x483476))[_0x2c90('0x2b')](handleError(_0x1d5786,null));};exports[_0x2c90('0x3b')]=function(_0x3b79dd,_0x3a2e93,_0x9bd907){var _0xaf8b83,_0x3ebe77={},_0x2e96e0;if(_0x3b79dd[_0x2c90('0x5e')]['to']){_0x2e96e0=_0x3b79dd[_0x2c90('0x5e')]['to']['split'](',')[0x0];}return db[_0x2c90('0x42')][_0x2c90('0x5d')]({'where':{'id':_0x3b79dd[_0x2c90('0x58')]['id']},'include':[{'model':db[_0x2c90('0xaa')],'as':_0x2c90('0xab'),'include':[{'model':db[_0x2c90('0x8e')],'as':_0x2c90('0xac'),'where':{'email':_0x2e96e0},'limit':0x1,'order':[[_0x2c90('0xad'),_0x2c90('0xae')]]}]},{'model':db[_0x2c90('0x59')],'as':_0x2c90('0x5a'),'raw':!![]}]})[_0x2c90('0x22')](handleEntityNotFound(_0x3a2e93,null))[_0x2c90('0x22')](function(_0x870af5){if(_0x870af5){_0xaf8b83=_0x870af5;if(_0x870af5[_0x2c90('0x5a')]){if(_[_0x2c90('0x72')](_0x3b79dd[_0x2c90('0x5e')][_0x2c90('0xaf')])){_0x3b79dd['body'][_0x2c90('0xaf')]=util[_0x2c90('0xa6')](_0x2c90('0xb0'),_0x870af5[_0x2c90('0x3a')],_0x870af5[_0x2c90('0x70')]||_0x870af5[_0x2c90('0x5a')]['user']);}if(_0x3b79dd['body'][_0x2c90('0xb1')]&&_0x3b79dd[_0x2c90('0x5e')]['attachments'][_0x2c90('0x4d')]){for(var _0x299632=0x0;_0x299632<_0x3b79dd[_0x2c90('0x5e')][_0x2c90('0xb1')][_0x2c90('0x4d')];_0x299632+=0x1){_0x3b79dd[_0x2c90('0x5e')][_0x2c90('0xb1')][_0x299632]={'filename':_0x3b79dd[_0x2c90('0x5e')][_0x2c90('0xb1')][_0x299632][_0x2c90('0x3a')],'path':path['join'](config[_0x2c90('0xb2')],'server/files/attachments',_0x3b79dd[_0x2c90('0x5e')]['attachments'][_0x299632][_0x2c90('0xb3')])};}}var _0x58d2aa={'tls':{'rejectUnauthorized':![]}};if(_[_0x2c90('0x72')](_0x870af5['Smtp']['service'])){if(_0x870af5[_0x2c90('0x5a')][_0x2c90('0x79')]){_0x58d2aa['auth']={'user':_0x870af5[_0x2c90('0x5a')][_0x2c90('0x75')],'pass':_0x870af5[_0x2c90('0x5a')][_0x2c90('0x77')]};}_0x58d2aa['host']=_0x870af5[_0x2c90('0x5a')][_0x2c90('0x7a')];_0x58d2aa['port']=_0x870af5[_0x2c90('0x5a')][_0x2c90('0x7b')];_0x58d2aa[_0x2c90('0xb4')]=_0x870af5[_0x2c90('0x5a')][_0x2c90('0xb4')];}else{_0x58d2aa[_0x2c90('0x7c')]=_0x870af5['Smtp'][_0x2c90('0x7c')];_0x58d2aa['auth']={'user':_0x870af5[_0x2c90('0x5a')][_0x2c90('0x75')],'pass':_0x870af5[_0x2c90('0x5a')][_0x2c90('0x77')]};}return respondWithRpcPromise(_0x2c90('0xb5'),_0x2c90('0xb6'),{'account':_0x58d2aa,'message':_0x3b79dd[_0x2c90('0x5e')]});}else{throw new Error('List\x20not\x20found');}}})['then'](function(_0x34f666){if(_0x34f666){_0x3ebe77=_0x34f666;if(_0xaf8b83['List']){if(_0xaf8b83['List'][_0x2c90('0xac')]['length']){return _0xaf8b83[_0x2c90('0xab')][_0x2c90('0xac')][0x0];}else{return db['CmContact'][_0x2c90('0x62')](_[_0x2c90('0xb7')](_0x3b79dd['body'],{'firstName':_0x3b79dd[_0x2c90('0x5e')]['to'],'email':_0x3b79dd[_0x2c90('0x5e')]['to'],'phone':_0x3b79dd['body']['to'],'ListId':_0xaf8b83[_0x2c90('0x71')]}));}}else{throw new Error(_0x2c90('0xb8'));}}})[_0x2c90('0x22')](function(_0x696bf0){if(_0x696bf0){var _0x409ad2={'UserId':_0x3b79dd[_0x2c90('0x75')]['id'],'ContactId':_0x696bf0['id'],'MailAccountId':_0xaf8b83['id'],'inReplyTo':_0x3ebe77[_0x2c90('0xb9')],'to':_0x3b79dd[_0x2c90('0x5e')][_0x2c90('0xaf')],'cc':_0x3b79dd[_0x2c90('0x5e')]['cc'],'subject':_0x3b79dd[_0x2c90('0x5e')]['subject'],'attach':_0x3b79dd[_0x2c90('0x5e')][_0x2c90('0xba')],'firstMsgDirection':_0x2c90('0xbb'),'lastMsgAt':moment()[_0x2c90('0xa6')](_0x2c90('0xa7')),'lastMsgDirection':_0x2c90('0xbb'),'Messages':[_[_0x2c90('0x51')](_0x3b79dd[_0x2c90('0x5e')],{'messageId':_0x3ebe77[_0x2c90('0xb9')],'sentAt':moment()[_0x2c90('0xa6')](_0x2c90('0xa7')),'read':!![],'MailAccountId':_0xaf8b83['id'],'UserId':_0x3b79dd[_0x2c90('0x75')]['id'],'ContactId':_0x696bf0['id']})]};if(_0x3b79dd[_0x2c90('0x5e')]['Interaction']){_0x409ad2=_[_0x2c90('0x51')](_0x409ad2,_0x3b79dd[_0x2c90('0x5e')][_0x2c90('0xbc')]);}return db[_0x2c90('0x8d')]['create'](_0x409ad2,{'include':[{'model':db[_0x2c90('0xa3')],'as':_0x2c90('0xbd')}]});}})[_0x2c90('0x22')](respondWithResult(_0x3a2e93,null))[_0x2c90('0x2b')](handleError(_0x3a2e93,null));};exports[_0x2c90('0xbe')]=function(_0xa5a700,_0x3510a1,_0x591467){return db[_0x2c90('0x42')][_0x2c90('0x5d')]({'where':{'id':_0xa5a700[_0x2c90('0x58')]['id']},'include':[{'model':db[_0x2c90('0x59')],'as':_0x2c90('0x5a'),'raw':!![]}]})[_0x2c90('0x22')](handleEntityNotFound(_0x3510a1,null))[_0x2c90('0x22')](function(_0x3c0359){if(_0x3c0359&&_0x3c0359[_0x2c90('0x5a')]){var _0x54f2dd={'id':_0x3c0359['id'],'tls':{'rejectUnauthorized':![]}};if(_0x3c0359[_0x2c90('0x5a')][_0x2c90('0x7c')]){_0x54f2dd['service']=_0x3c0359['Smtp'][_0x2c90('0x7c')];}else{_0x54f2dd[_0x2c90('0x7a')]=_0x3c0359[_0x2c90('0x5a')][_0x2c90('0x7a')];_0x54f2dd[_0x2c90('0x7b')]=_0x3c0359[_0x2c90('0x5a')][_0x2c90('0x7b')];_0x54f2dd[_0x2c90('0xb4')]=_0x3c0359[_0x2c90('0x5a')]['secure'];}if(_0x3c0359[_0x2c90('0x5a')][_0x2c90('0x79')]){_0x54f2dd[_0x2c90('0xbf')]={'user':_0x3c0359['Smtp'][_0x2c90('0x75')],'pass':_0x3c0359['Smtp'][_0x2c90('0x77')]};}return respondWithRpcPromise(_0x2c90('0xc0'),'verifySmtp',{'account':_0x54f2dd});}})[_0x2c90('0x22')](respondWithResult(_0x3510a1,null))[_0x2c90('0x2b')](handleError(_0x3510a1,null));};exports['destroy']=function(_0x4ddf15,_0x2a6c3b){return db[_0x2c90('0x42')]['find']({'where':{'id':_0x4ddf15[_0x2c90('0x58')]['id']}})[_0x2c90('0x22')](handleEntityNotFound(_0x2a6c3b,null))[_0x2c90('0x22')](function(_0x1beee8){if(_0x1beee8&&_0x1beee8['service']){throw new db['Sequelize']['ValidationError'](_0x2c90('0xc1'));}return _0x1beee8;})[_0x2c90('0x22')](removeEntity(_0x2a6c3b,null))[_0x2c90('0x2b')](handleError(_0x2a6c3b,null));};exports[_0x2c90('0xc2')]=function(_0x2bf1be,_0x5c35d6,_0x24e0b0){return db[_0x2c90('0x42')]['find']({'where':{'id':_0x2bf1be[_0x2c90('0x58')]['id']}})[_0x2c90('0x22')](handleEntityNotFound(_0x5c35d6,null))[_0x2c90('0x22')](function(_0x154ee1){if(_0x154ee1){return _0x154ee1[_0x2c90('0xc2')](_0x2bf1be[_0x2c90('0x5e')]['ids'],_[_0x2c90('0x8b')](_0x2bf1be[_0x2c90('0x5e')],[_0x2c90('0x6f'),'id'])||{})[_0x2c90('0xc3')](function(_0x1e9209){for(var _0x42e1f4=0x0;_0x42e1f4<_0x2bf1be[_0x2c90('0x5e')][_0x2c90('0x6f')][_0x2c90('0x4d')];_0x42e1f4+=0x1){socket[_0x2c90('0xc4')](_0x2c90('0xc5'),{'UserId':Number(_0x2bf1be[_0x2c90('0x5e')][_0x2c90('0x6f')][_0x42e1f4]),'MailAccountId':Number(_0x2bf1be[_0x2c90('0x58')]['id'])});}return _0x1e9209;});}})[_0x2c90('0x22')](respondWithResult(_0x5c35d6,null))['catch'](handleError(_0x5c35d6,null));};exports[_0x2c90('0xc6')]=function(_0x1cddce,_0x162d13,_0xbb2b6){return db[_0x2c90('0x42')][_0x2c90('0x5d')]({'where':{'id':_0x1cddce[_0x2c90('0x58')]['id']}})[_0x2c90('0x22')](handleEntityNotFound(_0x162d13,null))[_0x2c90('0x22')](function(_0x15d9e7){if(_0x15d9e7){return _0x15d9e7['removeAgents'](_0x1cddce[_0x2c90('0x47')]['ids'])['then'](function(){if(_[_0x2c90('0xc7')](_0x1cddce[_0x2c90('0x47')][_0x2c90('0x6f')])){for(var _0x2edcb9=0x0;_0x2edcb9<_0x1cddce['query']['ids'][_0x2c90('0x4d')];_0x2edcb9+=0x1){socket[_0x2c90('0xc4')](_0x2c90('0xc8'),{'UserId':Number(_0x1cddce[_0x2c90('0x47')][_0x2c90('0x6f')][_0x2edcb9]),'MailAccountId':Number(_0x1cddce[_0x2c90('0x58')]['id'])});}}else{socket[_0x2c90('0xc4')]('userMailAccount:remove',{'UserId':Number(_0x1cddce[_0x2c90('0x47')][_0x2c90('0x6f')]),'MailAccountId':Number(_0x1cddce[_0x2c90('0x58')]['id'])});}});}})[_0x2c90('0x22')](respondWithStatusCode(_0x162d13,null))[_0x2c90('0x2b')](handleError(_0x162d13,null));};exports['getAgents']=function(_0x190c2a,_0x3e45be,_0x8e048d){var _0x164f4b={};var _0x2c4aba={};var _0x873bd5;var _0x2b4343;return db[_0x2c90('0x42')]['findOne']({'where':{'id':_0x190c2a['params']['id']}})['then'](handleEntityNotFound(_0x3e45be,null))[_0x2c90('0x22')](function(_0x22b815){if(_0x22b815){_0x873bd5=_0x22b815;_0x2c4aba[_0x2c90('0x46')]=_[_0x2c90('0x48')](db[_0x2c90('0x90')][_0x2c90('0x5b')]);_0x2c4aba[_0x2c90('0x47')]=_[_0x2c90('0x48')](_0x190c2a[_0x2c90('0x47')]);_0x2c4aba['filters']=_[_0x2c90('0x4b')](_0x2c4aba[_0x2c90('0x46')],_0x2c4aba[_0x2c90('0x47')]);_0x164f4b[_0x2c90('0x4a')]=_[_0x2c90('0x4b')](_0x2c4aba[_0x2c90('0x46')],qs['fields'](_0x190c2a['query'][_0x2c90('0x4c')]));_0x164f4b['attributes']=_0x164f4b[_0x2c90('0x4a')][_0x2c90('0x4d')]?_0x164f4b['attributes']:_0x2c4aba[_0x2c90('0x46')];_0x164f4b['order']=qs[_0x2c90('0x4f')](_0x190c2a[_0x2c90('0x47')][_0x2c90('0x4f')]);_0x164f4b['where']=qs['filters'](_['pick'](_0x190c2a[_0x2c90('0x47')],_0x2c4aba[_0x2c90('0x49')]));if(_0x190c2a[_0x2c90('0x47')][_0x2c90('0x68')]){_0x164f4b[_0x2c90('0x50')]=_['merge'](_0x164f4b['where'],{'$or':_[_0x2c90('0x41')](_0x164f4b[_0x2c90('0x4a')],function(_0x1db916){var _0x1991f9={};_0x1991f9[_0x1db916]={'$like':'%'+_0x190c2a['query'][_0x2c90('0x68')]+'%'};return _0x1991f9;})});}_0x164f4b=_[_0x2c90('0x51')]({},_0x164f4b,_0x190c2a['options']);return _0x873bd5['getAgents'](_0x164f4b);}})['then'](function(_0x13f132){if(_0x13f132){_0x2b4343=_0x13f132[_0x2c90('0x4d')];if(!_0x190c2a['query'][_0x2c90('0x65')]('nolimit')){_0x164f4b['limit']=qs[_0x2c90('0x30')](_0x190c2a[_0x2c90('0x47')][_0x2c90('0x30')]);_0x164f4b[_0x2c90('0x2f')]=qs['offset'](_0x190c2a['query']['offset']);}return _0x873bd5['getAgents'](_0x164f4b);}})[_0x2c90('0x22')](function(_0x545ff9){if(_0x545ff9){return _0x545ff9?{'count':_0x2b4343,'rows':_0x545ff9}:null;}})[_0x2c90('0x22')](respondWithResult(_0x3e45be,null))[_0x2c90('0x2b')](handleError(_0x3e45be,null));};