Built motion from commit (unavailable).|2.5.30
[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 _0xedd9=['Tag','Tags','tag','addApplications','sequelize','transaction','MailApplication','bulkCreate','findAndCountAll','priority','getApplications','getMessages','$gte','YYYY-MM-DD\x20HH:mm:ss','MailMessage','true','split','Contacts','updatedAt','DESC','from','format','%s\x20<%s>','attachments','join','root','server/files/attachments','basename','auth','secure','SendMail','sendMail','List\x20not\x20found','List','subject','attach','out','Interaction','Messages','verifySmtp','VerifySmtp','Sequelize','ValidationError','You\x20can\x27t\x20remove\x20the\x20mail\x20service\x20account','addAgents','spread','emit','userMailAccount:save','removeAgents','isArray','userMailAccount:remove','getAgents','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','sox','to-csv','ejs','fs-extra','squel','jsforce','desk.js','querystring','html-to-text','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','redis','defaults','socket.io-emitter','./mailAccount.socket','register','jayson/promise','client','http','request','then','info','request\x20sent','debug','stringify','error','MailAccount,\x20%s,\x20%s','message','result','catch','sendStatus','status','end','json','offset','limit','undefined','count','set','Content-Range','apply','save','update','destroy','get','MailAccounts','stack','name','send','Imap','MailServerOut','Smtp','mandatoryDispositionPause','map','MailAccount','fieldName','type','key','query','keys','filters','attributes','intersection','model','fields','length','hasOwnProperty','nolimit','sort','pick','where','merge','VIRTUAL','options','includeAll','include','findAll','rows','show','params','MailServerIn','Pause','rawAttributes','body','find','describe','MailAccountId','Disposition','getDispositions','findOne','filter','removeDispositions','ids','create','getAnswers','order','CannedAnswer','removeAnswers','email','ListId','isNil','active','description','cservice','cauthentication','user','cuser','password','pass','authentication','host','port','service','cpassword','Unable\x20to\x20retrieve\x20the\x20current\x20user','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','getImap','addImap','removeImap','setImap','getSmtp','addSmtp','removeSmtp','MailInteraction','addInteraction','omit','getInteractions','CmContact','Contact','User','internal'];(function(_0x21549c,_0x6d64d1){var _0x426cbd=function(_0x323f5b){while(--_0x323f5b){_0x21549c['push'](_0x21549c['shift']());}};_0x426cbd(++_0x6d64d1);}(_0xedd9,0xfc));var _0x9edd=function(_0x2a7275,_0x47799b){_0x2a7275=_0x2a7275-0x0;var _0x4e4b54=_0xedd9[_0x2a7275];return _0x4e4b54;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x9edd('0x0'));var zipdir=require(_0x9edd('0x1'));var jsonpatch=require(_0x9edd('0x2'));var rp=require(_0x9edd('0x3'));var moment=require(_0x9edd('0x4'));var BPromise=require(_0x9edd('0x5'));var Mustache=require(_0x9edd('0x6'));var util=require(_0x9edd('0x7'));var path=require('path');var sox=require(_0x9edd('0x8'));var csv=require(_0x9edd('0x9'));var ejs=require(_0x9edd('0xa'));var fs=require('fs');var fs_extra=require(_0x9edd('0xb'));var _=require('lodash');var squel=require(_0x9edd('0xc'));var crypto=require('crypto');var jsforce=require(_0x9edd('0xd'));var deskjs=require(_0x9edd('0xe'));var toCsv=require(_0x9edd('0x9'));var querystring=require(_0x9edd('0xf'));var Papa=require('papaparse');var htmlToText=require(_0x9edd('0x10'));var juice=require('juice');var Redis=require(_0x9edd('0x11'));var authService=require(_0x9edd('0x12'));var qs=require('../../components/parsers/qs');var as=require(_0x9edd('0x13'));var hardwareService=require(_0x9edd('0x14'));var logger=require('../../config/logger')(_0x9edd('0x15'));var utils=require(_0x9edd('0x16'));var config=require(_0x9edd('0x17'));var licenseUtil=require(_0x9edd('0x18'));var db=require(_0x9edd('0x19'))['db'];config[_0x9edd('0x1a')]=_[_0x9edd('0x1b')](config[_0x9edd('0x1a')],{'host':'localhost','port':0x18eb});var socket=require(_0x9edd('0x1c'))(new Redis(config[_0x9edd('0x1a')]));require(_0x9edd('0x1d'))[_0x9edd('0x1e')](socket);var jayson=require(_0x9edd('0x1f'));var client=jayson[_0x9edd('0x20')][_0x9edd('0x21')]({'port':0x232b});function respondWithRpcPromise(_0x75a4ab,_0x4ea60f,_0x5f5bf4,_0x448996){return new BPromise(function(_0x449cee,_0x5acf65){var _0x1b54c0=_0x448996||client;return _0x1b54c0[_0x9edd('0x22')](_0x75a4ab,_0x5f5bf4)[_0x9edd('0x23')](function(_0x4d8f33){logger[_0x9edd('0x24')]('MailAccount,\x20%s,\x20%s',_0x4ea60f,_0x9edd('0x25'));logger[_0x9edd('0x26')]('MailAccount,\x20%s,\x20%s,\x20%s',_0x4ea60f,'request\x20sent',JSON[_0x9edd('0x27')](_0x4d8f33));if(_0x4d8f33['error']){if(_0x4d8f33[_0x9edd('0x28')]['code']===0x1f4){logger['error'](_0x9edd('0x29'),_0x4ea60f,_0x4d8f33[_0x9edd('0x28')]['message']);return _0x5acf65(_0x4d8f33['error'][_0x9edd('0x2a')]);}logger[_0x9edd('0x28')](_0x9edd('0x29'),_0x4ea60f,_0x4d8f33['error'][_0x9edd('0x2a')]);return _0x449cee(_0x4d8f33[_0x9edd('0x28')][_0x9edd('0x2a')]);}else{logger[_0x9edd('0x24')](_0x9edd('0x29'),_0x4ea60f,'request\x20sent');_0x449cee(_0x4d8f33[_0x9edd('0x2b')][_0x9edd('0x2a')]);}})[_0x9edd('0x2c')](function(_0x2f9f86){logger[_0x9edd('0x28')]('MailAccount,\x20%s,\x20%s',_0x4ea60f,_0x2f9f86);_0x5acf65(_0x2f9f86);});});}function respondWithStatusCode(_0x4b3d1b,_0x3276ee){_0x3276ee=_0x3276ee||0xcc;return function(_0xfeca7b){if(_0xfeca7b){return _0x4b3d1b[_0x9edd('0x2d')](_0x3276ee);}return _0x4b3d1b[_0x9edd('0x2e')](_0x3276ee)[_0x9edd('0x2f')]();};}function respondWithResult(_0x4fe471,_0x57a2cc){_0x57a2cc=_0x57a2cc||0xc8;return function(_0x214d0a){if(_0x214d0a){return _0x4fe471[_0x9edd('0x2e')](_0x57a2cc)[_0x9edd('0x30')](_0x214d0a);}};}function respondWithFilteredResult(_0x52746a,_0x238b22){return function(_0x28cfae){if(_0x28cfae){var _0x2ae8dd=typeof _0x238b22[_0x9edd('0x31')]==='undefined'&&typeof _0x238b22[_0x9edd('0x32')]===_0x9edd('0x33');var _0xbe87e1=_0x28cfae[_0x9edd('0x34')];var _0xbbf08f=_0x2ae8dd?0x0:_0x238b22[_0x9edd('0x31')];var _0x209aba=_0x2ae8dd?_0x28cfae[_0x9edd('0x34')]:_0x238b22[_0x9edd('0x31')]+_0x238b22[_0x9edd('0x32')];var _0x4fd03f;if(_0x209aba>=_0xbe87e1){_0x209aba=_0xbe87e1;_0x4fd03f=0xc8;}else{_0x4fd03f=0xce;}_0x52746a[_0x9edd('0x2e')](_0x4fd03f);return _0x52746a[_0x9edd('0x35')](_0x9edd('0x36'),_0xbbf08f+'-'+_0x209aba+'/'+_0xbe87e1)[_0x9edd('0x30')](_0x28cfae);}return null;};}function patchUpdates(_0x5af178){return function(_0x1453d2){try{jsonpatch[_0x9edd('0x37')](_0x1453d2,_0x5af178,!![]);}catch(_0x267c74){return BPromise['reject'](_0x267c74);}return _0x1453d2[_0x9edd('0x38')]();};}function saveUpdates(_0x3990fb,_0xde9b13){return function(_0x38a7be){if(_0x38a7be){return _0x38a7be[_0x9edd('0x39')](_0x3990fb)[_0x9edd('0x23')](function(_0x473068){return _0x473068;});}return null;};}function removeEntity(_0x438a5d,_0xd0fd74){return function(_0x2539c6){if(_0x2539c6){return _0x2539c6[_0x9edd('0x3a')]()[_0x9edd('0x23')](function(){var _0x27eb7e=_0x2539c6[_0x9edd('0x3b')]({'plain':!![]});var _0x5757fc=_0x9edd('0x3c');return db['UserProfileResource'][_0x9edd('0x3a')]({'where':{'type':_0x5757fc,'resourceId':_0x27eb7e['id']}})[_0x9edd('0x23')](function(){return _0x2539c6;});})[_0x9edd('0x23')](function(){_0x438a5d[_0x9edd('0x2e')](0xcc)[_0x9edd('0x2f')]();});}};}function handleEntityNotFound(_0x4fa5ab,_0x6de835){return function(_0x44dbfc){if(!_0x44dbfc){_0x4fa5ab[_0x9edd('0x2d')](0x194);}return _0x44dbfc;};}function handleError(_0x38e9be,_0x1be77f){_0x1be77f=_0x1be77f||0x1f4;return function(_0x337e6c){logger[_0x9edd('0x28')](_0x337e6c[_0x9edd('0x3d')]);if(_0x337e6c[_0x9edd('0x3e')]){delete _0x337e6c[_0x9edd('0x3e')];}_0x38e9be['status'](_0x1be77f)[_0x9edd('0x3f')](_0x337e6c);};}exports['index']=function(_0x3ef1d5,_0x5658d6){var _0x30883e={'include':[{'model':db['MailServerIn'],'as':_0x9edd('0x40')},{'model':db[_0x9edd('0x41')],'as':_0x9edd('0x42')},{'model':db['Pause'],'as':_0x9edd('0x43')}]},_0x2858b5={},_0x34e9d2={'count':0x0,'rows':[]};var _0x51ad91=_[_0x9edd('0x44')](db[_0x9edd('0x45')]['rawAttributes'],function(_0x315f52){return{'name':_0x315f52[_0x9edd('0x46')],'type':_0x315f52[_0x9edd('0x47')][_0x9edd('0x48')]};});_0x2858b5['model']=_[_0x9edd('0x44')](_0x51ad91,'name');_0x2858b5[_0x9edd('0x49')]=_[_0x9edd('0x4a')](_0x3ef1d5['query']);_0x2858b5[_0x9edd('0x4b')]=_['intersection'](_0x2858b5['model'],_0x2858b5[_0x9edd('0x49')]);_0x30883e[_0x9edd('0x4c')]=_[_0x9edd('0x4d')](_0x2858b5[_0x9edd('0x4e')],qs[_0x9edd('0x4f')](_0x3ef1d5[_0x9edd('0x49')][_0x9edd('0x4f')]));_0x30883e[_0x9edd('0x4c')]=_0x30883e[_0x9edd('0x4c')][_0x9edd('0x50')]?_0x30883e[_0x9edd('0x4c')]:_0x2858b5[_0x9edd('0x4e')];if(!_0x3ef1d5[_0x9edd('0x49')][_0x9edd('0x51')](_0x9edd('0x52'))){_0x30883e['limit']=qs[_0x9edd('0x32')](_0x3ef1d5[_0x9edd('0x49')][_0x9edd('0x32')]);_0x30883e[_0x9edd('0x31')]=qs[_0x9edd('0x31')](_0x3ef1d5[_0x9edd('0x49')][_0x9edd('0x31')]);}_0x30883e['order']=qs['sort'](_0x3ef1d5['query'][_0x9edd('0x53')]);_0x30883e['where']=qs[_0x9edd('0x4b')](_[_0x9edd('0x54')](_0x3ef1d5[_0x9edd('0x49')],_0x2858b5[_0x9edd('0x4b')]),_0x51ad91);if(_0x3ef1d5[_0x9edd('0x49')]['filter']){_0x30883e[_0x9edd('0x55')]=_[_0x9edd('0x56')](_0x30883e[_0x9edd('0x55')],{'$or':_['map'](_0x51ad91,function(_0x3626bc){if(_0x3626bc[_0x9edd('0x47')]!==_0x9edd('0x57')){var _0x293b03={};_0x293b03[_0x3626bc[_0x9edd('0x3e')]]={'$like':'%'+_0x3ef1d5[_0x9edd('0x49')]['filter']+'%'};return _0x293b03;}})});}_0x30883e=_[_0x9edd('0x56')]({},_0x30883e,_0x3ef1d5[_0x9edd('0x58')]);var _0x596b71={'where':_0x30883e[_0x9edd('0x55')]};return db[_0x9edd('0x45')]['count'](_0x596b71)[_0x9edd('0x23')](function(_0x8134cd){_0x34e9d2[_0x9edd('0x34')]=_0x8134cd;if(_0x3ef1d5['query'][_0x9edd('0x59')]){_0x30883e[_0x9edd('0x5a')]=[{'all':!![]}];}return db[_0x9edd('0x45')][_0x9edd('0x5b')](_0x30883e);})['then'](function(_0x446443){_0x34e9d2[_0x9edd('0x5c')]=_0x446443;return _0x34e9d2;})[_0x9edd('0x23')](respondWithFilteredResult(_0x5658d6,_0x30883e))['catch'](handleError(_0x5658d6,null));};exports[_0x9edd('0x5d')]=function(_0x21f6ce,_0x57db43){var _0x8e59bd={'raw':![],'where':{'id':_0x21f6ce[_0x9edd('0x5e')]['id']},'include':[{'model':db[_0x9edd('0x5f')],'as':_0x9edd('0x40')},{'model':db[_0x9edd('0x41')],'as':_0x9edd('0x42')},{'model':db[_0x9edd('0x60')],'as':_0x9edd('0x43')}]},_0x4e2aaf={};_0x4e2aaf[_0x9edd('0x4e')]=_[_0x9edd('0x4a')](db[_0x9edd('0x45')][_0x9edd('0x61')]);_0x4e2aaf['query']=_[_0x9edd('0x4a')](_0x21f6ce[_0x9edd('0x49')]);_0x4e2aaf[_0x9edd('0x4b')]=_['intersection'](_0x4e2aaf[_0x9edd('0x4e')],_0x4e2aaf['query']);_0x8e59bd['attributes']=_['intersection'](_0x4e2aaf[_0x9edd('0x4e')],qs[_0x9edd('0x4f')](_0x21f6ce[_0x9edd('0x49')][_0x9edd('0x4f')]));_0x8e59bd['attributes']=_0x8e59bd['attributes']['length']?_0x8e59bd[_0x9edd('0x4c')]:_0x4e2aaf[_0x9edd('0x4e')];if(_0x21f6ce[_0x9edd('0x49')][_0x9edd('0x59')]){_0x8e59bd[_0x9edd('0x5a')]=[{'all':!![]}];}_0x8e59bd=_[_0x9edd('0x56')]({},_0x8e59bd,_0x21f6ce[_0x9edd('0x58')]);return db[_0x9edd('0x45')]['find'](_0x8e59bd)[_0x9edd('0x23')](handleEntityNotFound(_0x57db43,null))['then'](respondWithResult(_0x57db43,null))[_0x9edd('0x2c')](handleError(_0x57db43,null));};exports[_0x9edd('0x39')]=function(_0x4b7e68,_0x22b91a){if(_0x4b7e68[_0x9edd('0x62')]['id']){delete _0x4b7e68[_0x9edd('0x62')]['id'];}return db['MailAccount'][_0x9edd('0x63')]({'where':{'id':_0x4b7e68[_0x9edd('0x5e')]['id']},'include':[{'model':db[_0x9edd('0x5f')],'as':_0x9edd('0x40')},{'model':db[_0x9edd('0x41')],'as':_0x9edd('0x42')},{'model':db['Pause'],'as':'mandatoryDispositionPause'}]})[_0x9edd('0x23')](handleEntityNotFound(_0x22b91a,null))['then'](saveUpdates(_0x4b7e68[_0x9edd('0x62')],null))[_0x9edd('0x23')](function(_0x439083){if(_0x439083&&_0x4b7e68[_0x9edd('0x62')]['Imap']){return db[_0x9edd('0x5f')]['update'](_0x4b7e68[_0x9edd('0x62')][_0x9edd('0x40')],{'where':{'MailAccountId':_0x439083['id']}})[_0x9edd('0x23')](function(){return _0x439083;});}return _0x439083;})['then'](function(_0x2651a2){if(_0x2651a2&&_0x4b7e68['body'][_0x9edd('0x42')]){return db[_0x9edd('0x41')]['update'](_0x4b7e68[_0x9edd('0x62')]['Smtp'],{'where':{'MailAccountId':_0x2651a2['id']}})[_0x9edd('0x23')](function(){return _0x2651a2;});}return _0x2651a2;})[_0x9edd('0x23')](respondWithResult(_0x22b91a,null))[_0x9edd('0x2c')](handleError(_0x22b91a,null));};exports['describe']=function(_0x4181b9,_0x321485){return db[_0x9edd('0x45')][_0x9edd('0x64')]()[_0x9edd('0x23')](respondWithResult(_0x321485,null))['catch'](handleError(_0x321485,null));};exports['addDisposition']=function(_0x2e1a96,_0x211526,_0x5516c4){if(_0x2e1a96['body']['id']){delete _0x2e1a96['body']['id'];}return db[_0x9edd('0x45')]['find']({'where':{'id':_0x2e1a96['params']['id']}})[_0x9edd('0x23')](handleEntityNotFound(_0x211526,null))[_0x9edd('0x23')](function(_0x589348){if(_0x589348){_0x2e1a96[_0x9edd('0x62')][_0x9edd('0x65')]=_0x589348['id'];return db[_0x9edd('0x66')]['create'](_0x2e1a96[_0x9edd('0x62')]);}})['then'](respondWithResult(_0x211526,null))[_0x9edd('0x2c')](handleError(_0x211526,null));};exports[_0x9edd('0x67')]=function(_0x4c8d06,_0x1f80c4,_0x27da1a){var _0x5c1746={'raw':![],'where':{}};var _0x2bd6d1={};var _0x475dc3={'count':0x0,'rows':[]};return db[_0x9edd('0x45')][_0x9edd('0x68')]({'where':{'id':_0x4c8d06['params']['id']}})[_0x9edd('0x23')](handleEntityNotFound(_0x1f80c4,null))['then'](function(_0x1a618c){if(_0x1a618c){_0x2bd6d1[_0x9edd('0x4e')]=_[_0x9edd('0x4a')](db['Disposition'][_0x9edd('0x61')]);_0x2bd6d1[_0x9edd('0x49')]=_[_0x9edd('0x4a')](_0x4c8d06[_0x9edd('0x49')]);_0x2bd6d1[_0x9edd('0x4b')]=_[_0x9edd('0x4d')](_0x2bd6d1[_0x9edd('0x4e')],_0x2bd6d1['query']);_0x5c1746['attributes']=_[_0x9edd('0x4d')](_0x2bd6d1[_0x9edd('0x4e')],qs[_0x9edd('0x4f')](_0x4c8d06[_0x9edd('0x49')][_0x9edd('0x4f')]));_0x5c1746['attributes']=_0x5c1746[_0x9edd('0x4c')][_0x9edd('0x50')]?_0x5c1746[_0x9edd('0x4c')]:_0x2bd6d1['model'];if(!_0x4c8d06[_0x9edd('0x49')][_0x9edd('0x51')]('nolimit')){_0x5c1746[_0x9edd('0x32')]=qs[_0x9edd('0x32')](_0x4c8d06['query'][_0x9edd('0x32')]);_0x5c1746[_0x9edd('0x31')]=qs['offset'](_0x4c8d06[_0x9edd('0x49')]['offset']);}_0x5c1746['order']=qs[_0x9edd('0x53')](_0x4c8d06[_0x9edd('0x49')][_0x9edd('0x53')]);_0x5c1746['where']=qs[_0x9edd('0x4b')](_[_0x9edd('0x54')](_0x4c8d06['query'],_0x2bd6d1[_0x9edd('0x4b')]));_0x5c1746[_0x9edd('0x55')][_0x9edd('0x65')]=_0x1a618c['id'];if(_0x4c8d06[_0x9edd('0x49')]['filter']){_0x5c1746['where']=_[_0x9edd('0x56')](_0x5c1746['where'],{'$or':_[_0x9edd('0x44')](_0x5c1746[_0x9edd('0x4c')],function(_0x20dd2f){var _0x3cfd35={};_0x3cfd35[_0x20dd2f]={'$like':'%'+_0x4c8d06[_0x9edd('0x49')][_0x9edd('0x69')]+'%'};return _0x3cfd35;})});}_0x5c1746=_[_0x9edd('0x56')]({},_0x5c1746,_0x4c8d06[_0x9edd('0x58')]);return db[_0x9edd('0x66')]['count']({'where':_0x5c1746[_0x9edd('0x55')]})[_0x9edd('0x23')](function(_0x2c7562){_0x475dc3[_0x9edd('0x34')]=_0x2c7562;if(_0x4c8d06[_0x9edd('0x49')][_0x9edd('0x59')]){_0x5c1746[_0x9edd('0x5a')]=[{'all':!![]}];}return db['Disposition'][_0x9edd('0x5b')](_0x5c1746);})[_0x9edd('0x23')](function(_0x4f44e2){_0x475dc3[_0x9edd('0x5c')]=_0x4f44e2;return _0x475dc3;});}})[_0x9edd('0x23')](respondWithFilteredResult(_0x1f80c4,_0x5c1746))['catch'](handleError(_0x1f80c4,null));};exports[_0x9edd('0x6a')]=function(_0x3d6d7a,_0xfd1b61,_0x55d112){return db[_0x9edd('0x45')][_0x9edd('0x63')]({'where':{'id':_0x3d6d7a[_0x9edd('0x5e')]['id']}})['then'](handleEntityNotFound(_0xfd1b61,null))['then'](function(_0x5378ca){if(_0x5378ca){return _0x5378ca['removeDispositions'](_0x3d6d7a[_0x9edd('0x49')][_0x9edd('0x6b')]);}})[_0x9edd('0x23')](respondWithStatusCode(_0xfd1b61,null))['catch'](handleError(_0xfd1b61,null));};exports['addAnswer']=function(_0x49dc1d,_0x56d794,_0x388252){if(_0x49dc1d[_0x9edd('0x62')]['id']){delete _0x49dc1d[_0x9edd('0x62')]['id'];}return db[_0x9edd('0x45')][_0x9edd('0x63')]({'where':{'id':_0x49dc1d[_0x9edd('0x5e')]['id']}})[_0x9edd('0x23')](handleEntityNotFound(_0x56d794,null))[_0x9edd('0x23')](function(_0x2f2c34){if(_0x2f2c34){_0x49dc1d[_0x9edd('0x62')][_0x9edd('0x65')]=_0x2f2c34['id'];return db['CannedAnswer'][_0x9edd('0x6c')](_0x49dc1d[_0x9edd('0x62')]);}})[_0x9edd('0x23')](respondWithResult(_0x56d794,null))[_0x9edd('0x2c')](handleError(_0x56d794,null));};exports[_0x9edd('0x6d')]=function(_0x2d067b,_0x3d4890,_0x16b69c){var _0x4a7889={'raw':![],'where':{}};var _0x5ada4e={};var _0xe02a6={'count':0x0,'rows':[]};return db['MailAccount'][_0x9edd('0x68')]({'where':{'id':_0x2d067b['params']['id']}})[_0x9edd('0x23')](handleEntityNotFound(_0x3d4890,null))[_0x9edd('0x23')](function(_0x554804){if(_0x554804){_0x5ada4e[_0x9edd('0x4e')]=_[_0x9edd('0x4a')](db['CannedAnswer'][_0x9edd('0x61')]);_0x5ada4e[_0x9edd('0x49')]=_[_0x9edd('0x4a')](_0x2d067b[_0x9edd('0x49')]);_0x5ada4e[_0x9edd('0x4b')]=_['intersection'](_0x5ada4e[_0x9edd('0x4e')],_0x5ada4e[_0x9edd('0x49')]);_0x4a7889[_0x9edd('0x4c')]=_[_0x9edd('0x4d')](_0x5ada4e[_0x9edd('0x4e')],qs['fields'](_0x2d067b['query']['fields']));_0x4a7889['attributes']=_0x4a7889['attributes'][_0x9edd('0x50')]?_0x4a7889['attributes']:_0x5ada4e['model'];if(!_0x2d067b[_0x9edd('0x49')][_0x9edd('0x51')](_0x9edd('0x52'))){_0x4a7889[_0x9edd('0x32')]=qs[_0x9edd('0x32')](_0x2d067b[_0x9edd('0x49')][_0x9edd('0x32')]);_0x4a7889[_0x9edd('0x31')]=qs[_0x9edd('0x31')](_0x2d067b[_0x9edd('0x49')]['offset']);}_0x4a7889[_0x9edd('0x6e')]=qs[_0x9edd('0x53')](_0x2d067b[_0x9edd('0x49')][_0x9edd('0x53')]);_0x4a7889[_0x9edd('0x55')]=qs[_0x9edd('0x4b')](_[_0x9edd('0x54')](_0x2d067b[_0x9edd('0x49')],_0x5ada4e['filters']));_0x4a7889['where'][_0x9edd('0x65')]=_0x554804['id'];if(_0x2d067b[_0x9edd('0x49')][_0x9edd('0x69')]){_0x4a7889[_0x9edd('0x55')]=_[_0x9edd('0x56')](_0x4a7889[_0x9edd('0x55')],{'$or':_[_0x9edd('0x44')](_0x4a7889[_0x9edd('0x4c')],function(_0x93fef1){var _0x9c68a3={};_0x9c68a3[_0x93fef1]={'$like':'%'+_0x2d067b[_0x9edd('0x49')][_0x9edd('0x69')]+'%'};return _0x9c68a3;})});}_0x4a7889=_[_0x9edd('0x56')]({},_0x4a7889,_0x2d067b[_0x9edd('0x58')]);return db['CannedAnswer'][_0x9edd('0x34')]({'where':_0x4a7889[_0x9edd('0x55')]})['then'](function(_0x451292){_0xe02a6[_0x9edd('0x34')]=_0x451292;if(_0x2d067b[_0x9edd('0x49')][_0x9edd('0x59')]){_0x4a7889['include']=[{'all':!![]}];}return db[_0x9edd('0x6f')][_0x9edd('0x5b')](_0x4a7889);})[_0x9edd('0x23')](function(_0x2c96f1){_0xe02a6[_0x9edd('0x5c')]=_0x2c96f1;return _0xe02a6;});}})['then'](respondWithFilteredResult(_0x3d4890,_0x4a7889))[_0x9edd('0x2c')](handleError(_0x3d4890,null));};exports[_0x9edd('0x70')]=function(_0x347266,_0x4633eb,_0xa8d944){return db['MailAccount']['find']({'where':{'id':_0x347266[_0x9edd('0x5e')]['id']}})['then'](handleEntityNotFound(_0x4633eb,null))[_0x9edd('0x23')](function(_0x52308a){if(_0x52308a){return _0x52308a[_0x9edd('0x70')](_0x347266[_0x9edd('0x49')][_0x9edd('0x6b')]);}})[_0x9edd('0x23')](respondWithStatusCode(_0x4633eb,null))[_0x9edd('0x2c')](handleError(_0x4633eb,null));};exports[_0x9edd('0x6c')]=function(_0x5975f9,_0x186e02){var _0x33beb7={'name':_0x5975f9[_0x9edd('0x62')][_0x9edd('0x3e')],'key':_0x5975f9[_0x9edd('0x62')][_0x9edd('0x48')],'email':_0x5975f9[_0x9edd('0x62')][_0x9edd('0x71')],'ListId':_0x5975f9['body'][_0x9edd('0x72')],'active':!_[_0x9edd('0x73')](_0x5975f9[_0x9edd('0x62')][_0x9edd('0x74')])?_0x5975f9[_0x9edd('0x62')][_0x9edd('0x74')]:!![],'description':_0x5975f9[_0x9edd('0x62')][_0x9edd('0x75')]||null,'Imap':{},'Smtp':{}};if(_[_0x9edd('0x73')](_0x5975f9[_0x9edd('0x62')][_0x9edd('0x76')])){if(_0x5975f9[_0x9edd('0x62')][_0x9edd('0x77')]){_0x33beb7[_0x9edd('0x40')][_0x9edd('0x78')]=_0x33beb7[_0x9edd('0x42')][_0x9edd('0x78')]=_0x5975f9[_0x9edd('0x62')][_0x9edd('0x79')];_0x33beb7[_0x9edd('0x40')][_0x9edd('0x7a')]=_0x33beb7['Smtp'][_0x9edd('0x7b')]=_0x5975f9['body']['cpassword'];}else{_0x33beb7[_0x9edd('0x40')][_0x9edd('0x7c')]=_0x33beb7[_0x9edd('0x42')][_0x9edd('0x7c')]=![];}_0x33beb7[_0x9edd('0x40')][_0x9edd('0x7d')]=_0x5975f9[_0x9edd('0x62')][_0x9edd('0x40')][_0x9edd('0x7d')];_0x33beb7[_0x9edd('0x40')]['port']=_0x5975f9[_0x9edd('0x62')][_0x9edd('0x40')]['port'];_0x33beb7['Smtp'][_0x9edd('0x7d')]=_0x5975f9[_0x9edd('0x62')][_0x9edd('0x42')][_0x9edd('0x7d')];_0x33beb7['Smtp']['port']=_0x5975f9[_0x9edd('0x62')]['Smtp'][_0x9edd('0x7e')];}else{_0x33beb7[_0x9edd('0x40')][_0x9edd('0x7f')]=_0x33beb7['Smtp']['service']=_0x5975f9['body'][_0x9edd('0x76')];_0x33beb7[_0x9edd('0x40')][_0x9edd('0x78')]=_0x33beb7['Smtp'][_0x9edd('0x78')]=_0x5975f9[_0x9edd('0x62')]['cuser'];_0x33beb7[_0x9edd('0x40')][_0x9edd('0x7a')]=_0x33beb7['Smtp']['pass']=_0x5975f9[_0x9edd('0x62')][_0x9edd('0x80')];}return db['MailAccount'][_0x9edd('0x6c')](_0x33beb7,{'include':[{'model':db[_0x9edd('0x41')],'as':'Smtp'},{'model':db[_0x9edd('0x5f')],'as':'Imap'}]})[_0x9edd('0x23')](function(_0x293d05){var _0x23eb54=_0x5975f9[_0x9edd('0x78')][_0x9edd('0x3b')]({'plain':!![]});if(!_0x23eb54)throw new Error(_0x9edd('0x81'));if(_0x23eb54['role']===_0x9edd('0x78')){var _0x22aa2b=_0x293d05[_0x9edd('0x3b')]({'plain':!![]});return db['UserProfileSection'][_0x9edd('0x63')]({'where':{'name':'MailAccounts','userProfileId':_0x23eb54[_0x9edd('0x82')]},'raw':!![]})[_0x9edd('0x23')](function(_0x25da04){if(_0x25da04&&_0x25da04[_0x9edd('0x83')]===0x0){return db['UserProfileResource']['create']({'name':_0x22aa2b['name'],'resourceId':_0x22aa2b['id'],'type':_0x25da04[_0x9edd('0x3e')],'sectionId':_0x25da04['id']},{})[_0x9edd('0x23')](function(){return _0x293d05;});}else{return _0x293d05;}})[_0x9edd('0x2c')](function(_0x50af78){logger[_0x9edd('0x28')](_0x9edd('0x84'),_0x50af78);throw _0x50af78;});}return _0x293d05;})[_0x9edd('0x23')](respondWithResult(_0x186e02,0xc9))[_0x9edd('0x2c')](handleError(_0x186e02,null));};exports[_0x9edd('0x85')]=function(_0x4345eb,_0x558d0a,_0x5e5cda){return db[_0x9edd('0x45')][_0x9edd('0x68')]({'where':{'id':_0x4345eb[_0x9edd('0x5e')]['id']}})['then'](handleEntityNotFound(_0x558d0a,null))[_0x9edd('0x23')](function(_0x1694e2){if(_0x1694e2){return _0x1694e2[_0x9edd('0x85')]();}return null;})[_0x9edd('0x23')](respondWithResult(_0x558d0a,null))['catch'](handleError(_0x558d0a,null));};exports[_0x9edd('0x86')]=function(_0x4cb8fa,_0x3d8b18,_0x3eeb0c){if(_0x4cb8fa[_0x9edd('0x62')]['id']){delete _0x4cb8fa[_0x9edd('0x62')]['id'];}return db[_0x9edd('0x45')]['find']({'where':{'id':_0x4cb8fa[_0x9edd('0x5e')]['id']}})['then'](handleEntityNotFound(_0x3d8b18,null))[_0x9edd('0x23')](function(_0x557f5c){if(_0x557f5c){_0x4cb8fa[_0x9edd('0x62')]['MailAccountId']=_0x557f5c['id'];return db[_0x9edd('0x5f')][_0x9edd('0x6c')](_0x4cb8fa[_0x9edd('0x62')]);}})['then'](respondWithResult(_0x3d8b18,null))[_0x9edd('0x2c')](handleError(_0x3d8b18,null));};exports[_0x9edd('0x87')]=function(_0x1c5038,_0x2e7b0d,_0xd41817){return db[_0x9edd('0x45')][_0x9edd('0x68')]({'where':{'id':_0x1c5038[_0x9edd('0x5e')]['id']}})[_0x9edd('0x23')](handleEntityNotFound(_0x2e7b0d,null))[_0x9edd('0x23')](function(_0x1d82f9){if(_0x1d82f9){return _0x1d82f9[_0x9edd('0x88')](null);}return null;})[_0x9edd('0x23')](respondWithStatusCode(_0x2e7b0d,null))[_0x9edd('0x2c')](handleError(_0x2e7b0d,null));};exports[_0x9edd('0x89')]=function(_0x81dd98,_0x3e6798,_0x3a4789){return db[_0x9edd('0x45')][_0x9edd('0x68')]({'where':{'id':_0x81dd98[_0x9edd('0x5e')]['id']}})[_0x9edd('0x23')](handleEntityNotFound(_0x3e6798,null))['then'](function(_0x45905b){if(_0x45905b){return _0x45905b['getSmtp']();}return null;})[_0x9edd('0x23')](respondWithResult(_0x3e6798,null))[_0x9edd('0x2c')](handleError(_0x3e6798,null));};exports[_0x9edd('0x8a')]=function(_0x8ab7e8,_0x126034,_0x5465fd){if(_0x8ab7e8[_0x9edd('0x62')]['id']){delete _0x8ab7e8['body']['id'];}return db[_0x9edd('0x45')][_0x9edd('0x63')]({'where':{'id':_0x8ab7e8[_0x9edd('0x5e')]['id']}})[_0x9edd('0x23')](handleEntityNotFound(_0x126034,null))[_0x9edd('0x23')](function(_0xe8b842){if(_0xe8b842){_0x8ab7e8['body'][_0x9edd('0x65')]=_0xe8b842['id'];return db[_0x9edd('0x41')]['create'](_0x8ab7e8['body']);}})['then'](respondWithResult(_0x126034,null))['catch'](handleError(_0x126034,null));};exports[_0x9edd('0x8b')]=function(_0x12707f,_0x2e1258,_0x4791cf){return db[_0x9edd('0x45')][_0x9edd('0x68')]({'where':{'id':_0x12707f[_0x9edd('0x5e')]['id']}})[_0x9edd('0x23')](handleEntityNotFound(_0x2e1258,null))[_0x9edd('0x23')](function(_0x3cddf5){if(_0x3cddf5){return _0x3cddf5['setSmtp'](null);}return null;})[_0x9edd('0x23')](respondWithStatusCode(_0x2e1258,null))['catch'](handleError(_0x2e1258,null));};exports['addInteraction']=function(_0x286f8d,_0x2dafd2,_0x35e9b9){return db[_0x9edd('0x8c')][_0x9edd('0x63')]({'where':{'id':_0x286f8d['params']['id']}})[_0x9edd('0x23')](handleEntityNotFound(_0x2dafd2,null))[_0x9edd('0x23')](function(_0x2b2e4d){if(_0x2b2e4d){return _0x2b2e4d[_0x9edd('0x8d')](_0x286f8d['body'][_0x9edd('0x6b')],_[_0x9edd('0x8e')](_0x286f8d[_0x9edd('0x62')],[_0x9edd('0x6b'),'id'])||{});}})[_0x9edd('0x23')](respondWithResult(_0x2dafd2,null))[_0x9edd('0x2c')](handleError(_0x2dafd2,null));};exports[_0x9edd('0x8f')]=function(_0x9ff2d3,_0x1eea2f,_0xa8c1f7){var _0x3de56e={'raw':![],'where':{}};var _0x47fa05={};var _0x38869a={'count':0x0,'rows':[]};return db[_0x9edd('0x45')][_0x9edd('0x68')]({'where':{'id':_0x9ff2d3[_0x9edd('0x5e')]['id']}})[_0x9edd('0x23')](handleEntityNotFound(_0x1eea2f,null))[_0x9edd('0x23')](function(_0x16ef52){if(_0x16ef52){_0x47fa05[_0x9edd('0x4e')]=_['keys'](db['MailInteraction']['rawAttributes']);_0x47fa05[_0x9edd('0x49')]=_[_0x9edd('0x4a')](_0x9ff2d3[_0x9edd('0x49')]);_0x47fa05[_0x9edd('0x4b')]=_[_0x9edd('0x4d')](_0x47fa05[_0x9edd('0x4e')],_0x47fa05[_0x9edd('0x49')]);_0x3de56e[_0x9edd('0x4c')]=_[_0x9edd('0x4d')](_0x47fa05[_0x9edd('0x4e')],qs['fields'](_0x9ff2d3[_0x9edd('0x49')]['fields']));_0x3de56e['attributes']=_0x3de56e[_0x9edd('0x4c')][_0x9edd('0x50')]?_0x3de56e[_0x9edd('0x4c')]:_0x47fa05['model'];if(!_0x9ff2d3['query']['hasOwnProperty']('nolimit')){_0x3de56e['limit']=qs[_0x9edd('0x32')](_0x9ff2d3[_0x9edd('0x49')][_0x9edd('0x32')]);_0x3de56e['offset']=qs[_0x9edd('0x31')](_0x9ff2d3[_0x9edd('0x49')][_0x9edd('0x31')]);}_0x3de56e['order']=qs[_0x9edd('0x53')](_0x9ff2d3['query'][_0x9edd('0x53')]);_0x3de56e[_0x9edd('0x55')]=qs[_0x9edd('0x4b')](_[_0x9edd('0x54')](_0x9ff2d3['query'],_0x47fa05[_0x9edd('0x4b')]));_0x3de56e[_0x9edd('0x55')]['MailAccountId']=_0x16ef52['id'];if(_0x9ff2d3[_0x9edd('0x49')][_0x9edd('0x69')]){_0x3de56e[_0x9edd('0x55')]=_[_0x9edd('0x56')](_0x3de56e['where'],{'$or':_[_0x9edd('0x44')](_0x3de56e[_0x9edd('0x4c')],function(_0x2d9972){var _0x489d3d={};_0x489d3d[_0x2d9972]={'$like':'%'+_0x9ff2d3[_0x9edd('0x49')][_0x9edd('0x69')]+'%'};return _0x489d3d;})});}_0x3de56e=_[_0x9edd('0x56')]({},_0x3de56e,_0x9ff2d3['options']);return db[_0x9edd('0x8c')]['count']({'where':_0x3de56e[_0x9edd('0x55')]})[_0x9edd('0x23')](function(_0x49cbc7){_0x38869a[_0x9edd('0x34')]=_0x49cbc7;if(_0x9ff2d3[_0x9edd('0x49')][_0x9edd('0x59')]){_0x3de56e['include']=[{'model':db[_0x9edd('0x90')],'as':_0x9edd('0x91'),'required':![]},{'model':db[_0x9edd('0x92')],'as':'Owner','attributes':[_0x9edd('0x3e'),'fullname',_0x9edd('0x93')],'required':![]},{'model':db[_0x9edd('0x94')],'as':_0x9edd('0x95'),'attributes':['id',_0x9edd('0x3e'),'color'],'where':_0x9ff2d3['query'][_0x9edd('0x96')]?{'id':_0x9ff2d3[_0x9edd('0x49')][_0x9edd('0x96')]}:undefined,'required':_0x9ff2d3[_0x9edd('0x49')][_0x9edd('0x96')]?!![]:![]}];}return db['MailInteraction'][_0x9edd('0x5b')](_0x3de56e);})[_0x9edd('0x23')](function(_0x3a5031){_0x38869a[_0x9edd('0x5c')]=_0x3a5031;return _0x38869a;});}})[_0x9edd('0x23')](respondWithFilteredResult(_0x1eea2f,_0x3de56e))[_0x9edd('0x2c')](handleError(_0x1eea2f,null));};exports[_0x9edd('0x97')]=function(_0x3d1ea5,_0x3173fa,_0x2eb738){return db[_0x9edd('0x45')][_0x9edd('0x68')]({'where':{'id':_0x3d1ea5[_0x9edd('0x5e')]['id']}})['then'](handleEntityNotFound(_0x3173fa,null))[_0x9edd('0x23')](function(_0x15d391){if(_0x15d391){return db[_0x9edd('0x98')][_0x9edd('0x99')](function(_0x5aab0e){return db[_0x9edd('0x9a')][_0x9edd('0x3a')]({'where':{'MailAccountId':_0x3d1ea5[_0x9edd('0x5e')]['id']},'transaction':_0x5aab0e})['then'](function(_0x910adf){var _0x49a24f=_['map'](_0x3d1ea5[_0x9edd('0x62')],function(_0x94a989){_0x94a989[_0x9edd('0x65')]=_0x3d1ea5[_0x9edd('0x5e')]['id'];return _0x94a989;});return db['MailApplication'][_0x9edd('0x9b')](_0x49a24f,{'transaction':_0x5aab0e});});})[_0x9edd('0x23')](function(){return db[_0x9edd('0x9a')][_0x9edd('0x9c')]({'where':{'MailAccountId':_0x3d1ea5[_0x9edd('0x5e')]['id']},'order':_0x9edd('0x9d')});});}})[_0x9edd('0x23')](respondWithResult(_0x3173fa,null))[_0x9edd('0x2c')](handleError(_0x3173fa,null));};exports[_0x9edd('0x9e')]=function(_0x15d93f,_0xa4a0f3,_0x2f8376){var _0x5c17fb={};var _0x3dedc0={};var _0xf62254;var _0x12b2c5;return db[_0x9edd('0x45')][_0x9edd('0x68')]({'where':{'id':_0x15d93f['params']['id']}})[_0x9edd('0x23')](handleEntityNotFound(_0xa4a0f3,null))['then'](function(_0x162571){if(_0x162571){_0xf62254=_0x162571;_0x3dedc0[_0x9edd('0x4e')]=_['keys'](db['MailApplication'][_0x9edd('0x61')]);_0x3dedc0[_0x9edd('0x49')]=_[_0x9edd('0x4a')](_0x15d93f[_0x9edd('0x49')]);_0x3dedc0[_0x9edd('0x4b')]=_['intersection'](_0x3dedc0['model'],_0x3dedc0[_0x9edd('0x49')]);_0x5c17fb[_0x9edd('0x4c')]=_[_0x9edd('0x4d')](_0x3dedc0[_0x9edd('0x4e')],qs['fields'](_0x15d93f[_0x9edd('0x49')][_0x9edd('0x4f')]));_0x5c17fb[_0x9edd('0x4c')]=_0x5c17fb[_0x9edd('0x4c')][_0x9edd('0x50')]?_0x5c17fb[_0x9edd('0x4c')]:_0x3dedc0[_0x9edd('0x4e')];_0x5c17fb['order']=qs[_0x9edd('0x53')](_0x15d93f[_0x9edd('0x49')][_0x9edd('0x53')]);_0x5c17fb[_0x9edd('0x55')]=qs[_0x9edd('0x4b')](_[_0x9edd('0x54')](_0x15d93f[_0x9edd('0x49')],_0x3dedc0[_0x9edd('0x4b')]));if(_0x15d93f[_0x9edd('0x49')][_0x9edd('0x69')]){_0x5c17fb[_0x9edd('0x55')]=_[_0x9edd('0x56')](_0x5c17fb[_0x9edd('0x55')],{'$or':_['map'](_0x5c17fb[_0x9edd('0x4c')],function(_0x32cb87){var _0x147945={};_0x147945[_0x32cb87]={'$like':'%'+_0x15d93f[_0x9edd('0x49')]['filter']+'%'};return _0x147945;})});}_0x5c17fb=_[_0x9edd('0x56')]({},_0x5c17fb,_0x15d93f[_0x9edd('0x58')]);return _0xf62254[_0x9edd('0x9e')](_0x5c17fb);}})[_0x9edd('0x23')](function(_0x30f26a){if(_0x30f26a){_0x12b2c5=_0x30f26a[_0x9edd('0x50')];if(!_0x15d93f[_0x9edd('0x49')][_0x9edd('0x51')](_0x9edd('0x52'))){_0x5c17fb[_0x9edd('0x32')]=qs[_0x9edd('0x32')](_0x15d93f['query'][_0x9edd('0x32')]);_0x5c17fb[_0x9edd('0x31')]=qs[_0x9edd('0x31')](_0x15d93f[_0x9edd('0x49')][_0x9edd('0x31')]);}return _0xf62254[_0x9edd('0x9e')](_0x5c17fb);}})[_0x9edd('0x23')](function(_0x55d08b){if(_0x55d08b){return _0x55d08b?{'count':_0x12b2c5,'rows':_0x55d08b}:null;}})[_0x9edd('0x23')](respondWithResult(_0xa4a0f3,null))[_0x9edd('0x2c')](handleError(_0xa4a0f3,null));};exports[_0x9edd('0x9f')]=function(_0x3bb224,_0x3dd493,_0x116fcb){var _0x28ce67={'raw':!![],'where':{}};var _0x2cb08b={};var _0x1b780b={'count':0x0,'rows':[]};return db[_0x9edd('0x45')][_0x9edd('0x68')]({'where':{'id':_0x3bb224[_0x9edd('0x5e')]['id']}})[_0x9edd('0x23')](handleEntityNotFound(_0x3dd493,null))[_0x9edd('0x23')](function(_0x73985d){if(_0x73985d){_0x2cb08b[_0x9edd('0x4e')]=_[_0x9edd('0x4a')](db['MailMessage'][_0x9edd('0x61')]);_0x2cb08b[_0x9edd('0x49')]=_[_0x9edd('0x4a')](_0x3bb224[_0x9edd('0x49')]);_0x2cb08b[_0x9edd('0x4b')]=_[_0x9edd('0x4d')](_0x2cb08b[_0x9edd('0x4e')],_0x2cb08b[_0x9edd('0x49')]);_0x28ce67[_0x9edd('0x4c')]=_['intersection'](_0x2cb08b[_0x9edd('0x4e')],qs[_0x9edd('0x4f')](_0x3bb224[_0x9edd('0x49')]['fields']));_0x28ce67[_0x9edd('0x4c')]=_0x28ce67['attributes'][_0x9edd('0x50')]?_0x28ce67['attributes']:_0x2cb08b[_0x9edd('0x4e')];if(!_0x3bb224[_0x9edd('0x49')]['hasOwnProperty'](_0x9edd('0x52'))){_0x28ce67[_0x9edd('0x32')]=qs[_0x9edd('0x32')](_0x3bb224[_0x9edd('0x49')][_0x9edd('0x32')]);_0x28ce67[_0x9edd('0x31')]=qs[_0x9edd('0x31')](_0x3bb224['query'][_0x9edd('0x31')]);}_0x28ce67[_0x9edd('0x6e')]=qs['sort'](_0x3bb224[_0x9edd('0x49')]['sort']);_0x28ce67[_0x9edd('0x55')]=qs[_0x9edd('0x4b')](_[_0x9edd('0x54')](_0x3bb224[_0x9edd('0x49')],_0x2cb08b[_0x9edd('0x4b')]));_0x28ce67[_0x9edd('0x55')][_0x9edd('0x65')]=_0x73985d['id'];if(_0x3bb224[_0x9edd('0x49')][_0x9edd('0x69')]){_0x28ce67[_0x9edd('0x55')]=_[_0x9edd('0x56')](_0x28ce67[_0x9edd('0x55')],{'$or':_['map'](_0x28ce67['attributes'],function(_0x1ba937){var _0x39afff={};_0x39afff[_0x1ba937]={'$like':'%'+_0x3bb224[_0x9edd('0x49')][_0x9edd('0x69')]+'%'};return _0x39afff;})});}if(_0x3bb224[_0x9edd('0x49')][_0x9edd('0xa0')]){var _0x43a859=_0x3bb224[_0x9edd('0x49')][_0x9edd('0xa0')]['split'](',');var _0x1395fa={};_0x1395fa[_0x43a859[0x0]]={'$gte':moment(_0x43a859[0x1])['format'](_0x9edd('0xa1'))};_0x28ce67[_0x9edd('0x55')]=_[_0x9edd('0x56')](_0x28ce67[_0x9edd('0x55')],_0x1395fa);}_0x28ce67=_[_0x9edd('0x56')]({},_0x28ce67,_0x3bb224[_0x9edd('0x58')]);return db[_0x9edd('0xa2')][_0x9edd('0x34')]({'where':_0x28ce67[_0x9edd('0x55')]})[_0x9edd('0x23')](function(_0x77a00c){_0x1b780b[_0x9edd('0x34')]=_0x77a00c;if(_0x3bb224[_0x9edd('0x49')][_0x9edd('0x59')]){_0x28ce67[_0x9edd('0x5a')]=[{'all':!![]}];}return db[_0x9edd('0xa2')][_0x9edd('0x5b')](_0x28ce67);})[_0x9edd('0x23')](function(_0x3f20b7){if(_0x3bb224['query']['inlineCss']===_0x9edd('0xa3')){for(var _0x4b238c=0x0;_0x4b238c<_0x3f20b7[_0x9edd('0x50')];_0x4b238c++){_0x3f20b7[_0x4b238c][_0x9edd('0x62')]=juice(_0x3f20b7[_0x4b238c][_0x9edd('0x62')]);}}_0x1b780b[_0x9edd('0x5c')]=_0x3f20b7;return _0x1b780b;});}})['then'](respondWithFilteredResult(_0x3dd493,_0x28ce67))['catch'](handleError(_0x3dd493,null));};exports[_0x9edd('0x3f')]=function(_0x32e718,_0x7397cc,_0xf841b1){var _0x4259d6,_0x51ac25={},_0x4707b7;if(_0x32e718['body']['to']){_0x4707b7=_0x32e718[_0x9edd('0x62')]['to'][_0x9edd('0xa4')](',')[0x0];}return db[_0x9edd('0x45')][_0x9edd('0x63')]({'where':{'id':_0x32e718['params']['id']},'include':[{'model':db['CmList'],'as':'List','include':[{'model':db[_0x9edd('0x90')],'as':_0x9edd('0xa5'),'where':{'email':_0x4707b7},'limit':0x1,'order':[[_0x9edd('0xa6'),_0x9edd('0xa7')]]}]},{'model':db[_0x9edd('0x41')],'as':_0x9edd('0x42'),'raw':!![]}]})['then'](handleEntityNotFound(_0x7397cc,null))[_0x9edd('0x23')](function(_0x2779a8){if(_0x2779a8){_0x4259d6=_0x2779a8;if(_0x2779a8['Smtp']){if(_['isNil'](_0x32e718[_0x9edd('0x62')][_0x9edd('0xa8')])){_0x32e718[_0x9edd('0x62')]['from']=util[_0x9edd('0xa9')](_0x9edd('0xaa'),_0x2779a8[_0x9edd('0x3e')],_0x2779a8[_0x9edd('0x71')]||_0x2779a8['Smtp'][_0x9edd('0x78')]);}if(_0x32e718[_0x9edd('0x62')][_0x9edd('0xab')]&&_0x32e718[_0x9edd('0x62')][_0x9edd('0xab')][_0x9edd('0x50')]){for(var _0x55603a=0x0;_0x55603a<_0x32e718[_0x9edd('0x62')][_0x9edd('0xab')][_0x9edd('0x50')];_0x55603a+=0x1){_0x32e718[_0x9edd('0x62')]['attachments'][_0x55603a]={'filename':_0x32e718['body'][_0x9edd('0xab')][_0x55603a][_0x9edd('0x3e')],'path':path[_0x9edd('0xac')](config[_0x9edd('0xad')],_0x9edd('0xae'),_0x32e718[_0x9edd('0x62')][_0x9edd('0xab')][_0x55603a][_0x9edd('0xaf')])};}}var _0xad1233={'tls':{'rejectUnauthorized':![]}};if(_[_0x9edd('0x73')](_0x2779a8[_0x9edd('0x42')][_0x9edd('0x7f')])){if(_0x2779a8['Smtp']['authentication']){_0xad1233[_0x9edd('0xb0')]={'user':_0x2779a8[_0x9edd('0x42')][_0x9edd('0x78')],'pass':_0x2779a8[_0x9edd('0x42')][_0x9edd('0x7b')]};}_0xad1233[_0x9edd('0x7d')]=_0x2779a8[_0x9edd('0x42')][_0x9edd('0x7d')];_0xad1233['port']=_0x2779a8[_0x9edd('0x42')][_0x9edd('0x7e')];_0xad1233[_0x9edd('0xb1')]=_0x2779a8[_0x9edd('0x42')][_0x9edd('0xb1')];}else{_0xad1233[_0x9edd('0x7f')]=_0x2779a8['Smtp']['service'];_0xad1233[_0x9edd('0xb0')]={'user':_0x2779a8[_0x9edd('0x42')][_0x9edd('0x78')],'pass':_0x2779a8['Smtp']['pass']};}return respondWithRpcPromise(_0x9edd('0xb2'),_0x9edd('0xb3'),{'account':_0xad1233,'message':_0x32e718[_0x9edd('0x62')]});}else{throw new Error(_0x9edd('0xb4'));}}})[_0x9edd('0x23')](function(_0x256ae8){if(_0x256ae8){_0x51ac25=_0x256ae8;if(_0x4259d6[_0x9edd('0xb5')]){if(_0x4259d6[_0x9edd('0xb5')][_0x9edd('0xa5')][_0x9edd('0x50')]){return _0x4259d6[_0x9edd('0xb5')]['Contacts'][0x0];}else{return db[_0x9edd('0x90')]['create'](_['defaults'](_0x32e718['body'],{'firstName':_0x32e718[_0x9edd('0x62')]['to'],'email':_0x32e718[_0x9edd('0x62')]['to'],'phone':_0x32e718['body']['to'],'ListId':_0x4259d6['ListId']}));}}else{throw new Error('List\x20not\x20found');}}})['then'](function(_0x1aa25c){if(_0x1aa25c){var _0x2c4f0f={'UserId':_0x32e718[_0x9edd('0x78')]['id'],'ContactId':_0x1aa25c['id'],'MailAccountId':_0x4259d6['id'],'inReplyTo':_0x51ac25['messageId'],'to':_0x32e718[_0x9edd('0x62')][_0x9edd('0xa8')],'cc':_0x32e718[_0x9edd('0x62')]['cc'],'subject':_0x32e718[_0x9edd('0x62')][_0x9edd('0xb6')],'attach':_0x32e718['body'][_0x9edd('0xb7')],'firstMsgDirection':'out','lastMsgAt':moment()[_0x9edd('0xa9')]('YYYY-MM-DD\x20HH:mm:ss'),'lastMsgDirection':_0x9edd('0xb8'),'Messages':[_[_0x9edd('0x56')](_0x32e718[_0x9edd('0x62')],{'messageId':_0x51ac25['messageId'],'sentAt':moment()[_0x9edd('0xa9')](_0x9edd('0xa1')),'read':!![],'MailAccountId':_0x4259d6['id'],'UserId':_0x32e718[_0x9edd('0x78')]['id'],'ContactId':_0x1aa25c['id']})]};if(_0x32e718['body']['Interaction']){_0x2c4f0f=_[_0x9edd('0x56')](_0x2c4f0f,_0x32e718[_0x9edd('0x62')][_0x9edd('0xb9')]);}return db[_0x9edd('0x8c')][_0x9edd('0x6c')](_0x2c4f0f,{'include':[{'model':db[_0x9edd('0xa2')],'as':_0x9edd('0xba')}]});}})[_0x9edd('0x23')](respondWithResult(_0x7397cc,null))[_0x9edd('0x2c')](handleError(_0x7397cc,null));};exports[_0x9edd('0xbb')]=function(_0x4b98fb,_0xc0f350,_0x276a53){return db['MailAccount']['find']({'where':{'id':_0x4b98fb[_0x9edd('0x5e')]['id']},'include':[{'model':db[_0x9edd('0x41')],'as':_0x9edd('0x42'),'raw':!![]}]})[_0x9edd('0x23')](handleEntityNotFound(_0xc0f350,null))['then'](function(_0xc23db6){if(_0xc23db6&&_0xc23db6[_0x9edd('0x42')]){var _0x134d5b={'id':_0xc23db6['id'],'tls':{'rejectUnauthorized':![]}};if(_0xc23db6[_0x9edd('0x42')]['service']){_0x134d5b[_0x9edd('0x7f')]=_0xc23db6[_0x9edd('0x42')][_0x9edd('0x7f')];}else{_0x134d5b['host']=_0xc23db6[_0x9edd('0x42')][_0x9edd('0x7d')];_0x134d5b[_0x9edd('0x7e')]=_0xc23db6[_0x9edd('0x42')][_0x9edd('0x7e')];_0x134d5b[_0x9edd('0xb1')]=_0xc23db6[_0x9edd('0x42')]['secure'];}if(_0xc23db6[_0x9edd('0x42')][_0x9edd('0x7c')]){_0x134d5b['auth']={'user':_0xc23db6[_0x9edd('0x42')]['user'],'pass':_0xc23db6['Smtp'][_0x9edd('0x7b')]};}return respondWithRpcPromise(_0x9edd('0xbc'),_0x9edd('0xbb'),{'account':_0x134d5b});}})[_0x9edd('0x23')](respondWithResult(_0xc0f350,null))[_0x9edd('0x2c')](handleError(_0xc0f350,null));};exports[_0x9edd('0x3a')]=function(_0xb6e59a,_0x3c19f7){return db[_0x9edd('0x45')][_0x9edd('0x63')]({'where':{'id':_0xb6e59a[_0x9edd('0x5e')]['id']}})['then'](handleEntityNotFound(_0x3c19f7,null))['then'](function(_0x211e79){if(_0x211e79&&_0x211e79[_0x9edd('0x7f')]){throw new db[(_0x9edd('0xbd'))][(_0x9edd('0xbe'))](_0x9edd('0xbf'));}return _0x211e79;})[_0x9edd('0x23')](removeEntity(_0x3c19f7,null))['catch'](handleError(_0x3c19f7,null));};exports[_0x9edd('0xc0')]=function(_0x17c02b,_0x38eb4f,_0x4c06ed){return db[_0x9edd('0x45')]['find']({'where':{'id':_0x17c02b['params']['id']}})['then'](handleEntityNotFound(_0x38eb4f,null))[_0x9edd('0x23')](function(_0x2af999){if(_0x2af999){return _0x2af999[_0x9edd('0xc0')](_0x17c02b[_0x9edd('0x62')][_0x9edd('0x6b')],_[_0x9edd('0x8e')](_0x17c02b[_0x9edd('0x62')],[_0x9edd('0x6b'),'id'])||{})[_0x9edd('0xc1')](function(_0x5033e3){for(var _0x3a6ffa=0x0;_0x3a6ffa<_0x17c02b[_0x9edd('0x62')]['ids']['length'];_0x3a6ffa+=0x1){socket[_0x9edd('0xc2')](_0x9edd('0xc3'),{'UserId':_0x17c02b['body'][_0x9edd('0x6b')][_0x3a6ffa],'MailAccountId':_0x17c02b[_0x9edd('0x5e')]['id']});}return _0x5033e3;});}})[_0x9edd('0x23')](respondWithResult(_0x38eb4f,null))[_0x9edd('0x2c')](handleError(_0x38eb4f,null));};exports['removeAgents']=function(_0x2dce8d,_0x460bdd,_0x3864ea){return db['MailAccount'][_0x9edd('0x63')]({'where':{'id':_0x2dce8d[_0x9edd('0x5e')]['id']}})[_0x9edd('0x23')](handleEntityNotFound(_0x460bdd,null))[_0x9edd('0x23')](function(_0xf15c84){if(_0xf15c84){return _0xf15c84[_0x9edd('0xc4')](_0x2dce8d[_0x9edd('0x49')][_0x9edd('0x6b')])['then'](function(){if(_[_0x9edd('0xc5')](_0x2dce8d[_0x9edd('0x49')][_0x9edd('0x6b')])){for(var _0x17b547=0x0;_0x17b547<_0x2dce8d[_0x9edd('0x49')][_0x9edd('0x6b')][_0x9edd('0x50')];_0x17b547+=0x1){socket['emit'](_0x9edd('0xc6'),{'UserId':Number(_0x2dce8d['query']['ids'][_0x17b547]),'MailAccountId':Number(_0x2dce8d[_0x9edd('0x5e')]['id'])});}}else{socket[_0x9edd('0xc2')]('userMailAccount:remove',{'UserId':Number(_0x2dce8d[_0x9edd('0x49')][_0x9edd('0x6b')]),'MailAccountId':Number(_0x2dce8d[_0x9edd('0x5e')]['id'])});}});}})['then'](respondWithStatusCode(_0x460bdd,null))['catch'](handleError(_0x460bdd,null));};exports[_0x9edd('0xc7')]=function(_0x290caf,_0x4f78ec,_0x5bd39a){var _0x3adacd={};var _0x2dded3={};var _0x12d142;var _0x3e61fe;return db['MailAccount']['findOne']({'where':{'id':_0x290caf[_0x9edd('0x5e')]['id']}})[_0x9edd('0x23')](handleEntityNotFound(_0x4f78ec,null))['then'](function(_0x27506e){if(_0x27506e){_0x12d142=_0x27506e;_0x2dded3['model']=_[_0x9edd('0x4a')](db[_0x9edd('0x92')][_0x9edd('0x61')]);_0x2dded3[_0x9edd('0x49')]=_['keys'](_0x290caf[_0x9edd('0x49')]);_0x2dded3[_0x9edd('0x4b')]=_['intersection'](_0x2dded3[_0x9edd('0x4e')],_0x2dded3['query']);_0x3adacd[_0x9edd('0x4c')]=_[_0x9edd('0x4d')](_0x2dded3[_0x9edd('0x4e')],qs[_0x9edd('0x4f')](_0x290caf[_0x9edd('0x49')][_0x9edd('0x4f')]));_0x3adacd['attributes']=_0x3adacd[_0x9edd('0x4c')][_0x9edd('0x50')]?_0x3adacd[_0x9edd('0x4c')]:_0x2dded3[_0x9edd('0x4e')];_0x3adacd[_0x9edd('0x6e')]=qs[_0x9edd('0x53')](_0x290caf[_0x9edd('0x49')][_0x9edd('0x53')]);_0x3adacd[_0x9edd('0x55')]=qs[_0x9edd('0x4b')](_['pick'](_0x290caf[_0x9edd('0x49')],_0x2dded3[_0x9edd('0x4b')]));if(_0x290caf[_0x9edd('0x49')][_0x9edd('0x69')]){_0x3adacd[_0x9edd('0x55')]=_[_0x9edd('0x56')](_0x3adacd[_0x9edd('0x55')],{'$or':_[_0x9edd('0x44')](_0x3adacd[_0x9edd('0x4c')],function(_0x20f2a0){var _0x142052={};_0x142052[_0x20f2a0]={'$like':'%'+_0x290caf[_0x9edd('0x49')][_0x9edd('0x69')]+'%'};return _0x142052;})});}_0x3adacd=_[_0x9edd('0x56')]({},_0x3adacd,_0x290caf[_0x9edd('0x58')]);return _0x12d142['getAgents'](_0x3adacd);}})[_0x9edd('0x23')](function(_0x4ff763){if(_0x4ff763){_0x3e61fe=_0x4ff763['length'];if(!_0x290caf[_0x9edd('0x49')][_0x9edd('0x51')](_0x9edd('0x52'))){_0x3adacd['limit']=qs[_0x9edd('0x32')](_0x290caf[_0x9edd('0x49')]['limit']);_0x3adacd['offset']=qs[_0x9edd('0x31')](_0x290caf[_0x9edd('0x49')]['offset']);}return _0x12d142[_0x9edd('0xc7')](_0x3adacd);}})[_0x9edd('0x23')](function(_0x5e9684){if(_0x5e9684){return _0x5e9684?{'count':_0x3e61fe,'rows':_0x5e9684}:null;}})[_0x9edd('0x23')](respondWithResult(_0x4f78ec,null))[_0x9edd('0x2c')](handleError(_0x4f78ec,null));};