Built motion from commit (unavailable).|2.5.15
[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 _0xdc12=['stringify','error','code','message','result','sendStatus','offset','status','set','Content-Range','json','apply','reject','save','update','destroy','get','MailAccounts','UserProfileResource','end','stack','name','send','index','MailServerIn','Imap','MailServerOut','Smtp','mandatoryDispositionPause','MailAccount','rawAttributes','fieldName','type','key','model','query','filters','intersection','attributes','fields','nolimit','limit','order','sort','where','pick','filter','merge','map','VIRTUAL','options','count','includeAll','findAll','rows','catch','params','Pause','keys','length','include','find','body','describe','addDisposition','MailAccountId','Disposition','create','findOne','hasOwnProperty','removeDispositions','ids','addAnswer','getAnswers','CannedAnswer','removeAnswers','email','ListId','isNil','active','description','cservice','cauthentication','user','cuser','pass','cpassword','authentication','host','port','service','Unable\x20to\x20retrieve\x20the\x20current\x20user','UserProfileSection','userProfileId','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','getImap','addImap','removeImap','setImap','getSmtp','addSmtp','removeSmtp','setSmtp','addInteraction','MailInteraction','omit','getInteractions','CmContact','Contact','User','Owner','fullname','internal','Tag','Tags','tag','addApplications','sequelize','transaction','MailApplication','bulkCreate','priority','getApplications','getMessages','MailMessage','$gte','format','YYYY-MM-DD\x20HH:mm:ss','split','List','Contacts','updatedAt','from','attachments','join','root','server/files/attachments','basename','auth','secure','SendMail','sendMail','messageId','attach','out','Interaction','verifySmtp','VerifySmtp','You\x20can\x27t\x20remove\x20the\x20mail\x20service\x20account','addAgents','emit','userMailAccount:save','isArray','userMailAccount:remove','getAgents','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','mustache','path','sox','to-csv','ejs','lodash','squel','crypto','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','redis','defaults','localhost','socket.io-emitter','./mailAccount.socket','jayson/promise','client','http','request','then','info','MailAccount,\x20%s,\x20%s','request\x20sent','debug'];(function(_0x365344,_0x43405e){var _0x4b3ef8=function(_0x2f98ad){while(--_0x2f98ad){_0x365344['push'](_0x365344['shift']());}};_0x4b3ef8(++_0x43405e);}(_0xdc12,0x9b));var _0x2dc1=function(_0x2af92b,_0x41cf95){_0x2af92b=_0x2af92b-0x0;var _0x5702b6=_0xdc12[_0x2af92b];return _0x5702b6;};'use strict';var pdf=require(_0x2dc1('0x0'));var emlformat=require(_0x2dc1('0x1'));var rimraf=require(_0x2dc1('0x2'));var zipdir=require(_0x2dc1('0x3'));var jsonpatch=require(_0x2dc1('0x4'));var rp=require(_0x2dc1('0x5'));var moment=require('moment');var BPromise=require('bluebird');var Mustache=require(_0x2dc1('0x6'));var util=require('util');var path=require(_0x2dc1('0x7'));var sox=require(_0x2dc1('0x8'));var csv=require(_0x2dc1('0x9'));var ejs=require(_0x2dc1('0xa'));var fs=require('fs');var _=require(_0x2dc1('0xb'));var squel=require(_0x2dc1('0xc'));var crypto=require(_0x2dc1('0xd'));var jsforce=require('jsforce');var deskjs=require(_0x2dc1('0xe'));var toCsv=require(_0x2dc1('0x9'));var querystring=require(_0x2dc1('0xf'));var Papa=require(_0x2dc1('0x10'));var Redis=require(_0x2dc1('0x11'));var authService=require(_0x2dc1('0x12'));var qs=require(_0x2dc1('0x13'));var as=require(_0x2dc1('0x14'));var hardwareService=require(_0x2dc1('0x15'));var logger=require('../../config/logger')('api');var utils=require(_0x2dc1('0x16'));var config=require(_0x2dc1('0x17'));var licenseUtil=require(_0x2dc1('0x18'));var db=require(_0x2dc1('0x19'))['db'];config[_0x2dc1('0x1a')]=_[_0x2dc1('0x1b')](config[_0x2dc1('0x1a')],{'host':_0x2dc1('0x1c'),'port':0x18eb});var socket=require(_0x2dc1('0x1d'))(new Redis(config[_0x2dc1('0x1a')]));require(_0x2dc1('0x1e'))['register'](socket);var jayson=require(_0x2dc1('0x1f'));var client=jayson[_0x2dc1('0x20')][_0x2dc1('0x21')]({'port':0x232b});function respondWithRpcPromise(_0x47712b,_0x2c8888,_0x86c0c8,_0x59e4e1){return new BPromise(function(_0x5108f4,_0x6af74c){var _0x59b649=_0x59e4e1||client;return _0x59b649[_0x2dc1('0x22')](_0x47712b,_0x86c0c8)[_0x2dc1('0x23')](function(_0x4f3962){logger[_0x2dc1('0x24')](_0x2dc1('0x25'),_0x2c8888,_0x2dc1('0x26'));logger[_0x2dc1('0x27')]('MailAccount,\x20%s,\x20%s,\x20%s',_0x2c8888,_0x2dc1('0x26'),JSON[_0x2dc1('0x28')](_0x4f3962));if(_0x4f3962['error']){if(_0x4f3962[_0x2dc1('0x29')][_0x2dc1('0x2a')]===0x1f4){logger[_0x2dc1('0x29')](_0x2dc1('0x25'),_0x2c8888,_0x4f3962[_0x2dc1('0x29')][_0x2dc1('0x2b')]);return _0x6af74c(_0x4f3962[_0x2dc1('0x29')][_0x2dc1('0x2b')]);}logger[_0x2dc1('0x29')]('MailAccount,\x20%s,\x20%s',_0x2c8888,_0x4f3962[_0x2dc1('0x29')][_0x2dc1('0x2b')]);return _0x5108f4(_0x4f3962[_0x2dc1('0x29')]['message']);}else{logger[_0x2dc1('0x24')]('MailAccount,\x20%s,\x20%s',_0x2c8888,_0x2dc1('0x26'));_0x5108f4(_0x4f3962[_0x2dc1('0x2c')][_0x2dc1('0x2b')]);}})['catch'](function(_0xbc899){logger['error'](_0x2dc1('0x25'),_0x2c8888,_0xbc899);_0x6af74c(_0xbc899);});});}function respondWithStatusCode(_0x745abf,_0x22bef7){_0x22bef7=_0x22bef7||0xcc;return function(_0x536f73){if(_0x536f73){return _0x745abf[_0x2dc1('0x2d')](_0x22bef7);}return _0x745abf['status'](_0x22bef7)['end']();};}function respondWithResult(_0x1d9849,_0x7405bf){_0x7405bf=_0x7405bf||0xc8;return function(_0xfaac26){if(_0xfaac26){return _0x1d9849['status'](_0x7405bf)['json'](_0xfaac26);}};}function respondWithFilteredResult(_0xa4daee,_0x111ae6){return function(_0x2d8fe1){if(_0x2d8fe1){var _0x56bed9=_0x2d8fe1['count'],_0x12578f=_0x111ae6[_0x2dc1('0x2e')],_0x30c9f3=_0x111ae6[_0x2dc1('0x2e')]+_0x111ae6['limit'],_0x2e656f;if(_0x30c9f3>=_0x56bed9){_0x30c9f3=_0x56bed9;_0x2e656f=0xc8;}else{_0x2e656f=0xce;}_0xa4daee[_0x2dc1('0x2f')](_0x2e656f);return _0xa4daee[_0x2dc1('0x30')](_0x2dc1('0x31'),_0x12578f+'-'+_0x30c9f3+'/'+_0x56bed9)[_0x2dc1('0x32')](_0x2d8fe1);}return null;};}function patchUpdates(_0x11f91f){return function(_0x3f39fa){try{jsonpatch[_0x2dc1('0x33')](_0x3f39fa,_0x11f91f,!![]);}catch(_0x1d143e){return BPromise[_0x2dc1('0x34')](_0x1d143e);}return _0x3f39fa[_0x2dc1('0x35')]();};}function saveUpdates(_0x19a280,_0x3ec71a){return function(_0x2639f4){if(_0x2639f4){return _0x2639f4[_0x2dc1('0x36')](_0x19a280)[_0x2dc1('0x23')](function(_0x5cf20a){return _0x5cf20a;});}return null;};}function removeEntity(_0x247310,_0x38e721){return function(_0x5162e1){if(_0x5162e1){return _0x5162e1[_0x2dc1('0x37')]()[_0x2dc1('0x23')](function(){var _0x40a937=_0x5162e1[_0x2dc1('0x38')]({'plain':!![]});var _0x452512=_0x2dc1('0x39');return db[_0x2dc1('0x3a')][_0x2dc1('0x37')]({'where':{'type':_0x452512,'resourceId':_0x40a937['id']}})[_0x2dc1('0x23')](function(){return _0x5162e1;});})[_0x2dc1('0x23')](function(){_0x247310[_0x2dc1('0x2f')](0xcc)[_0x2dc1('0x3b')]();});}};}function handleEntityNotFound(_0x4eaeb3,_0x11fdd5){return function(_0x582c3c){if(!_0x582c3c){_0x4eaeb3['sendStatus'](0x194);}return _0x582c3c;};}function handleError(_0x50079b,_0x5f523a){_0x5f523a=_0x5f523a||0x1f4;return function(_0x2ebff0){logger[_0x2dc1('0x29')](_0x2ebff0[_0x2dc1('0x3c')]);if(_0x2ebff0[_0x2dc1('0x3d')]){delete _0x2ebff0['name'];}_0x50079b[_0x2dc1('0x2f')](_0x5f523a)[_0x2dc1('0x3e')](_0x2ebff0);};}exports[_0x2dc1('0x3f')]=function(_0x4146a8,_0x72fcb4){var _0x3ae4e1={'include':[{'model':db[_0x2dc1('0x40')],'as':_0x2dc1('0x41')},{'model':db[_0x2dc1('0x42')],'as':_0x2dc1('0x43')},{'model':db['Pause'],'as':_0x2dc1('0x44')}]},_0x2bd5cf={},_0x31e0fd={'count':0x0,'rows':[]};var _0x1986a6=_['map'](db[_0x2dc1('0x45')][_0x2dc1('0x46')],function(_0x84fb0a){return{'name':_0x84fb0a[_0x2dc1('0x47')],'type':_0x84fb0a[_0x2dc1('0x48')][_0x2dc1('0x49')]};});_0x2bd5cf[_0x2dc1('0x4a')]=_['map'](_0x1986a6,_0x2dc1('0x3d'));_0x2bd5cf[_0x2dc1('0x4b')]=_['keys'](_0x4146a8[_0x2dc1('0x4b')]);_0x2bd5cf[_0x2dc1('0x4c')]=_[_0x2dc1('0x4d')](_0x2bd5cf['model'],_0x2bd5cf[_0x2dc1('0x4b')]);_0x3ae4e1[_0x2dc1('0x4e')]=_[_0x2dc1('0x4d')](_0x2bd5cf[_0x2dc1('0x4a')],qs[_0x2dc1('0x4f')](_0x4146a8[_0x2dc1('0x4b')][_0x2dc1('0x4f')]));_0x3ae4e1[_0x2dc1('0x4e')]=_0x3ae4e1['attributes']['length']?_0x3ae4e1['attributes']:_0x2bd5cf[_0x2dc1('0x4a')];if(!_0x4146a8[_0x2dc1('0x4b')]['hasOwnProperty'](_0x2dc1('0x50'))){_0x3ae4e1[_0x2dc1('0x51')]=qs[_0x2dc1('0x51')](_0x4146a8[_0x2dc1('0x4b')]['limit']);_0x3ae4e1[_0x2dc1('0x2e')]=qs[_0x2dc1('0x2e')](_0x4146a8['query'][_0x2dc1('0x2e')]);}_0x3ae4e1[_0x2dc1('0x52')]=qs['sort'](_0x4146a8[_0x2dc1('0x4b')][_0x2dc1('0x53')]);_0x3ae4e1[_0x2dc1('0x54')]=qs[_0x2dc1('0x4c')](_[_0x2dc1('0x55')](_0x4146a8['query'],_0x2bd5cf[_0x2dc1('0x4c')]),_0x1986a6);if(_0x4146a8[_0x2dc1('0x4b')][_0x2dc1('0x56')]){_0x3ae4e1['where']=_[_0x2dc1('0x57')](_0x3ae4e1[_0x2dc1('0x54')],{'$or':_[_0x2dc1('0x58')](_0x1986a6,function(_0x2e3c42){if(_0x2e3c42[_0x2dc1('0x48')]!==_0x2dc1('0x59')){var _0xc10e7d={};_0xc10e7d[_0x2e3c42[_0x2dc1('0x3d')]]={'$like':'%'+_0x4146a8[_0x2dc1('0x4b')]['filter']+'%'};return _0xc10e7d;}})});}_0x3ae4e1=_[_0x2dc1('0x57')]({},_0x3ae4e1,_0x4146a8[_0x2dc1('0x5a')]);var _0x34af38={'where':_0x3ae4e1[_0x2dc1('0x54')]};return db[_0x2dc1('0x45')][_0x2dc1('0x5b')](_0x34af38)['then'](function(_0x4068e2){_0x31e0fd[_0x2dc1('0x5b')]=_0x4068e2;if(_0x4146a8[_0x2dc1('0x4b')][_0x2dc1('0x5c')]){_0x3ae4e1['include']=[{'all':!![]}];}return db[_0x2dc1('0x45')][_0x2dc1('0x5d')](_0x3ae4e1);})[_0x2dc1('0x23')](function(_0x4c7d45){_0x31e0fd[_0x2dc1('0x5e')]=_0x4c7d45;return _0x31e0fd;})['then'](respondWithFilteredResult(_0x72fcb4,_0x3ae4e1))[_0x2dc1('0x5f')](handleError(_0x72fcb4,null));};exports['show']=function(_0x154c99,_0x22416e){var _0x20dc07={'raw':![],'where':{'id':_0x154c99[_0x2dc1('0x60')]['id']},'include':[{'model':db[_0x2dc1('0x40')],'as':_0x2dc1('0x41')},{'model':db[_0x2dc1('0x42')],'as':_0x2dc1('0x43')},{'model':db[_0x2dc1('0x61')],'as':_0x2dc1('0x44')}]},_0x414203={};_0x414203[_0x2dc1('0x4a')]=_['keys'](db['MailAccount'][_0x2dc1('0x46')]);_0x414203[_0x2dc1('0x4b')]=_[_0x2dc1('0x62')](_0x154c99['query']);_0x414203['filters']=_[_0x2dc1('0x4d')](_0x414203[_0x2dc1('0x4a')],_0x414203[_0x2dc1('0x4b')]);_0x20dc07[_0x2dc1('0x4e')]=_[_0x2dc1('0x4d')](_0x414203['model'],qs[_0x2dc1('0x4f')](_0x154c99['query'][_0x2dc1('0x4f')]));_0x20dc07[_0x2dc1('0x4e')]=_0x20dc07['attributes'][_0x2dc1('0x63')]?_0x20dc07[_0x2dc1('0x4e')]:_0x414203[_0x2dc1('0x4a')];if(_0x154c99[_0x2dc1('0x4b')][_0x2dc1('0x5c')]){_0x20dc07[_0x2dc1('0x64')]=[{'all':!![]}];}_0x20dc07=_[_0x2dc1('0x57')]({},_0x20dc07,_0x154c99[_0x2dc1('0x5a')]);return db[_0x2dc1('0x45')][_0x2dc1('0x65')](_0x20dc07)[_0x2dc1('0x23')](handleEntityNotFound(_0x22416e,null))[_0x2dc1('0x23')](respondWithResult(_0x22416e,null))['catch'](handleError(_0x22416e,null));};exports['update']=function(_0x15c390,_0x3b6602){if(_0x15c390[_0x2dc1('0x66')]['id']){delete _0x15c390[_0x2dc1('0x66')]['id'];}return db[_0x2dc1('0x45')]['find']({'where':{'id':_0x15c390[_0x2dc1('0x60')]['id']},'include':[{'model':db[_0x2dc1('0x40')],'as':_0x2dc1('0x41')},{'model':db[_0x2dc1('0x42')],'as':'Smtp'},{'model':db[_0x2dc1('0x61')],'as':_0x2dc1('0x44')}]})['then'](handleEntityNotFound(_0x3b6602,null))[_0x2dc1('0x23')](saveUpdates(_0x15c390['body'],null))[_0x2dc1('0x23')](function(_0x491992){if(_0x491992&&_0x15c390[_0x2dc1('0x66')][_0x2dc1('0x41')]){return db[_0x2dc1('0x40')]['update'](_0x15c390['body']['Imap'],{'where':{'MailAccountId':_0x491992['id']}})['then'](function(){return _0x491992;});}return _0x491992;})['then'](function(_0x5622b5){if(_0x5622b5&&_0x15c390[_0x2dc1('0x66')]['Smtp']){return db['MailServerOut'][_0x2dc1('0x36')](_0x15c390[_0x2dc1('0x66')][_0x2dc1('0x43')],{'where':{'MailAccountId':_0x5622b5['id']}})[_0x2dc1('0x23')](function(){return _0x5622b5;});}return _0x5622b5;})[_0x2dc1('0x23')](respondWithResult(_0x3b6602,null))[_0x2dc1('0x5f')](handleError(_0x3b6602,null));};exports[_0x2dc1('0x67')]=function(_0x584047,_0x528d9b){return db['MailAccount']['describe']()['then'](respondWithResult(_0x528d9b,null))[_0x2dc1('0x5f')](handleError(_0x528d9b,null));};exports[_0x2dc1('0x68')]=function(_0x92ef78,_0x2437f1,_0xb20183){if(_0x92ef78['body']['id']){delete _0x92ef78[_0x2dc1('0x66')]['id'];}return db[_0x2dc1('0x45')]['find']({'where':{'id':_0x92ef78[_0x2dc1('0x60')]['id']}})[_0x2dc1('0x23')](handleEntityNotFound(_0x2437f1,null))['then'](function(_0x4ee0b5){if(_0x4ee0b5){_0x92ef78['body'][_0x2dc1('0x69')]=_0x4ee0b5['id'];return db[_0x2dc1('0x6a')][_0x2dc1('0x6b')](_0x92ef78['body']);}})['then'](respondWithResult(_0x2437f1,null))[_0x2dc1('0x5f')](handleError(_0x2437f1,null));};exports['getDispositions']=function(_0x1f1f7a,_0x80ceac,_0x1b630c){var _0x53e3fb={'raw':![],'where':{}};var _0x1004a2={};var _0x1e1d5a={'count':0x0,'rows':[]};return db['MailAccount'][_0x2dc1('0x6c')]({'where':{'id':_0x1f1f7a[_0x2dc1('0x60')]['id']}})[_0x2dc1('0x23')](handleEntityNotFound(_0x80ceac,null))[_0x2dc1('0x23')](function(_0x4cbb48){if(_0x4cbb48){_0x1004a2[_0x2dc1('0x4a')]=_[_0x2dc1('0x62')](db[_0x2dc1('0x6a')][_0x2dc1('0x46')]);_0x1004a2[_0x2dc1('0x4b')]=_[_0x2dc1('0x62')](_0x1f1f7a[_0x2dc1('0x4b')]);_0x1004a2[_0x2dc1('0x4c')]=_[_0x2dc1('0x4d')](_0x1004a2[_0x2dc1('0x4a')],_0x1004a2[_0x2dc1('0x4b')]);_0x53e3fb[_0x2dc1('0x4e')]=_[_0x2dc1('0x4d')](_0x1004a2[_0x2dc1('0x4a')],qs[_0x2dc1('0x4f')](_0x1f1f7a[_0x2dc1('0x4b')][_0x2dc1('0x4f')]));_0x53e3fb[_0x2dc1('0x4e')]=_0x53e3fb['attributes'][_0x2dc1('0x63')]?_0x53e3fb[_0x2dc1('0x4e')]:_0x1004a2[_0x2dc1('0x4a')];if(!_0x1f1f7a[_0x2dc1('0x4b')][_0x2dc1('0x6d')](_0x2dc1('0x50'))){_0x53e3fb['limit']=qs[_0x2dc1('0x51')](_0x1f1f7a['query'][_0x2dc1('0x51')]);_0x53e3fb['offset']=qs[_0x2dc1('0x2e')](_0x1f1f7a[_0x2dc1('0x4b')][_0x2dc1('0x2e')]);}_0x53e3fb[_0x2dc1('0x52')]=qs['sort'](_0x1f1f7a[_0x2dc1('0x4b')][_0x2dc1('0x53')]);_0x53e3fb[_0x2dc1('0x54')]=qs[_0x2dc1('0x4c')](_[_0x2dc1('0x55')](_0x1f1f7a[_0x2dc1('0x4b')],_0x1004a2[_0x2dc1('0x4c')]));_0x53e3fb['where'][_0x2dc1('0x69')]=_0x4cbb48['id'];if(_0x1f1f7a[_0x2dc1('0x4b')][_0x2dc1('0x56')]){_0x53e3fb[_0x2dc1('0x54')]=_[_0x2dc1('0x57')](_0x53e3fb[_0x2dc1('0x54')],{'$or':_[_0x2dc1('0x58')](_0x53e3fb[_0x2dc1('0x4e')],function(_0x204004){var _0x5e0345={};_0x5e0345[_0x204004]={'$like':'%'+_0x1f1f7a[_0x2dc1('0x4b')][_0x2dc1('0x56')]+'%'};return _0x5e0345;})});}_0x53e3fb=_[_0x2dc1('0x57')]({},_0x53e3fb,_0x1f1f7a[_0x2dc1('0x5a')]);return db['Disposition'][_0x2dc1('0x5b')]({'where':_0x53e3fb['where']})[_0x2dc1('0x23')](function(_0x1df620){_0x1e1d5a['count']=_0x1df620;if(_0x1f1f7a[_0x2dc1('0x4b')]['includeAll']){_0x53e3fb[_0x2dc1('0x64')]=[{'all':!![]}];}return db[_0x2dc1('0x6a')]['findAll'](_0x53e3fb);})['then'](function(_0x113359){_0x1e1d5a[_0x2dc1('0x5e')]=_0x113359;return _0x1e1d5a;});}})[_0x2dc1('0x23')](respondWithFilteredResult(_0x80ceac,_0x53e3fb))[_0x2dc1('0x5f')](handleError(_0x80ceac,null));};exports['removeDispositions']=function(_0x2028d7,_0x59f831,_0x333d6e){return db[_0x2dc1('0x45')][_0x2dc1('0x65')]({'where':{'id':_0x2028d7[_0x2dc1('0x60')]['id']}})['then'](handleEntityNotFound(_0x59f831,null))[_0x2dc1('0x23')](function(_0x34dc9d){if(_0x34dc9d){return _0x34dc9d[_0x2dc1('0x6e')](_0x2028d7[_0x2dc1('0x4b')][_0x2dc1('0x6f')]);}})[_0x2dc1('0x23')](respondWithStatusCode(_0x59f831,null))[_0x2dc1('0x5f')](handleError(_0x59f831,null));};exports[_0x2dc1('0x70')]=function(_0x2da176,_0x13997c,_0x1c9648){if(_0x2da176[_0x2dc1('0x66')]['id']){delete _0x2da176['body']['id'];}return db[_0x2dc1('0x45')][_0x2dc1('0x65')]({'where':{'id':_0x2da176[_0x2dc1('0x60')]['id']}})[_0x2dc1('0x23')](handleEntityNotFound(_0x13997c,null))['then'](function(_0x1e0750){if(_0x1e0750){_0x2da176[_0x2dc1('0x66')][_0x2dc1('0x69')]=_0x1e0750['id'];return db['CannedAnswer']['create'](_0x2da176[_0x2dc1('0x66')]);}})['then'](respondWithResult(_0x13997c,null))['catch'](handleError(_0x13997c,null));};exports[_0x2dc1('0x71')]=function(_0x5c41af,_0x18fda9,_0x57164d){var _0x45817d={'raw':![],'where':{}};var _0x542ccd={};var _0x2449e7={'count':0x0,'rows':[]};return db[_0x2dc1('0x45')][_0x2dc1('0x6c')]({'where':{'id':_0x5c41af[_0x2dc1('0x60')]['id']}})[_0x2dc1('0x23')](handleEntityNotFound(_0x18fda9,null))['then'](function(_0x268ecb){if(_0x268ecb){_0x542ccd[_0x2dc1('0x4a')]=_['keys'](db[_0x2dc1('0x72')][_0x2dc1('0x46')]);_0x542ccd['query']=_[_0x2dc1('0x62')](_0x5c41af[_0x2dc1('0x4b')]);_0x542ccd[_0x2dc1('0x4c')]=_[_0x2dc1('0x4d')](_0x542ccd[_0x2dc1('0x4a')],_0x542ccd[_0x2dc1('0x4b')]);_0x45817d['attributes']=_[_0x2dc1('0x4d')](_0x542ccd[_0x2dc1('0x4a')],qs[_0x2dc1('0x4f')](_0x5c41af[_0x2dc1('0x4b')][_0x2dc1('0x4f')]));_0x45817d[_0x2dc1('0x4e')]=_0x45817d[_0x2dc1('0x4e')][_0x2dc1('0x63')]?_0x45817d['attributes']:_0x542ccd[_0x2dc1('0x4a')];if(!_0x5c41af[_0x2dc1('0x4b')][_0x2dc1('0x6d')](_0x2dc1('0x50'))){_0x45817d[_0x2dc1('0x51')]=qs['limit'](_0x5c41af[_0x2dc1('0x4b')][_0x2dc1('0x51')]);_0x45817d[_0x2dc1('0x2e')]=qs[_0x2dc1('0x2e')](_0x5c41af[_0x2dc1('0x4b')][_0x2dc1('0x2e')]);}_0x45817d['order']=qs['sort'](_0x5c41af[_0x2dc1('0x4b')][_0x2dc1('0x53')]);_0x45817d[_0x2dc1('0x54')]=qs[_0x2dc1('0x4c')](_[_0x2dc1('0x55')](_0x5c41af[_0x2dc1('0x4b')],_0x542ccd[_0x2dc1('0x4c')]));_0x45817d[_0x2dc1('0x54')][_0x2dc1('0x69')]=_0x268ecb['id'];if(_0x5c41af[_0x2dc1('0x4b')]['filter']){_0x45817d['where']=_[_0x2dc1('0x57')](_0x45817d[_0x2dc1('0x54')],{'$or':_[_0x2dc1('0x58')](_0x45817d[_0x2dc1('0x4e')],function(_0x18a83f){var _0xfc2136={};_0xfc2136[_0x18a83f]={'$like':'%'+_0x5c41af[_0x2dc1('0x4b')][_0x2dc1('0x56')]+'%'};return _0xfc2136;})});}_0x45817d=_['merge']({},_0x45817d,_0x5c41af[_0x2dc1('0x5a')]);return db['CannedAnswer'][_0x2dc1('0x5b')]({'where':_0x45817d[_0x2dc1('0x54')]})['then'](function(_0x467df8){_0x2449e7['count']=_0x467df8;if(_0x5c41af['query'][_0x2dc1('0x5c')]){_0x45817d[_0x2dc1('0x64')]=[{'all':!![]}];}return db['CannedAnswer']['findAll'](_0x45817d);})[_0x2dc1('0x23')](function(_0x12bfc9){_0x2449e7[_0x2dc1('0x5e')]=_0x12bfc9;return _0x2449e7;});}})[_0x2dc1('0x23')](respondWithFilteredResult(_0x18fda9,_0x45817d))[_0x2dc1('0x5f')](handleError(_0x18fda9,null));};exports['removeAnswers']=function(_0x599cff,_0x492fbc,_0x7ef600){return db[_0x2dc1('0x45')][_0x2dc1('0x65')]({'where':{'id':_0x599cff[_0x2dc1('0x60')]['id']}})[_0x2dc1('0x23')](handleEntityNotFound(_0x492fbc,null))[_0x2dc1('0x23')](function(_0x2188bf){if(_0x2188bf){return _0x2188bf[_0x2dc1('0x73')](_0x599cff[_0x2dc1('0x4b')][_0x2dc1('0x6f')]);}})[_0x2dc1('0x23')](respondWithStatusCode(_0x492fbc,null))[_0x2dc1('0x5f')](handleError(_0x492fbc,null));};exports['create']=function(_0x1c917a,_0x17917a){var _0x293a31={'name':_0x1c917a[_0x2dc1('0x66')][_0x2dc1('0x3d')],'key':_0x1c917a['body']['key'],'email':_0x1c917a['body'][_0x2dc1('0x74')],'ListId':_0x1c917a[_0x2dc1('0x66')][_0x2dc1('0x75')],'active':!_[_0x2dc1('0x76')](_0x1c917a['body'][_0x2dc1('0x77')])?_0x1c917a[_0x2dc1('0x66')][_0x2dc1('0x77')]:!![],'description':_0x1c917a[_0x2dc1('0x66')][_0x2dc1('0x78')]||null,'Imap':{},'Smtp':{}};if(_[_0x2dc1('0x76')](_0x1c917a[_0x2dc1('0x66')][_0x2dc1('0x79')])){if(_0x1c917a['body'][_0x2dc1('0x7a')]){_0x293a31['Imap']['user']=_0x293a31[_0x2dc1('0x43')][_0x2dc1('0x7b')]=_0x1c917a['body'][_0x2dc1('0x7c')];_0x293a31[_0x2dc1('0x41')]['password']=_0x293a31[_0x2dc1('0x43')][_0x2dc1('0x7d')]=_0x1c917a[_0x2dc1('0x66')][_0x2dc1('0x7e')];}else{_0x293a31['Imap'][_0x2dc1('0x7f')]=_0x293a31['Smtp'][_0x2dc1('0x7f')]=![];}_0x293a31[_0x2dc1('0x41')][_0x2dc1('0x80')]=_0x1c917a[_0x2dc1('0x66')][_0x2dc1('0x41')]['host'];_0x293a31[_0x2dc1('0x41')][_0x2dc1('0x81')]=_0x1c917a[_0x2dc1('0x66')][_0x2dc1('0x41')][_0x2dc1('0x81')];_0x293a31[_0x2dc1('0x43')][_0x2dc1('0x80')]=_0x1c917a[_0x2dc1('0x66')][_0x2dc1('0x43')][_0x2dc1('0x80')];_0x293a31[_0x2dc1('0x43')][_0x2dc1('0x81')]=_0x1c917a[_0x2dc1('0x66')][_0x2dc1('0x43')][_0x2dc1('0x81')];}else{_0x293a31['Imap']['service']=_0x293a31[_0x2dc1('0x43')][_0x2dc1('0x82')]=_0x1c917a[_0x2dc1('0x66')][_0x2dc1('0x79')];_0x293a31[_0x2dc1('0x41')][_0x2dc1('0x7b')]=_0x293a31[_0x2dc1('0x43')][_0x2dc1('0x7b')]=_0x1c917a['body']['cuser'];_0x293a31[_0x2dc1('0x41')]['password']=_0x293a31[_0x2dc1('0x43')][_0x2dc1('0x7d')]=_0x1c917a[_0x2dc1('0x66')][_0x2dc1('0x7e')];}return db[_0x2dc1('0x45')][_0x2dc1('0x6b')](_0x293a31,{'include':[{'model':db[_0x2dc1('0x42')],'as':_0x2dc1('0x43')},{'model':db[_0x2dc1('0x40')],'as':_0x2dc1('0x41')}]})['then'](function(_0x56d05b){var _0x1df6d3=_0x1c917a[_0x2dc1('0x7b')]['get']({'plain':!![]});if(!_0x1df6d3)throw new Error(_0x2dc1('0x83'));if(_0x1df6d3['role']===_0x2dc1('0x7b')){var _0x4121a7=_0x56d05b[_0x2dc1('0x38')]({'plain':!![]});return db[_0x2dc1('0x84')][_0x2dc1('0x65')]({'where':{'name':'MailAccounts','userProfileId':_0x1df6d3[_0x2dc1('0x85')]},'raw':!![]})[_0x2dc1('0x23')](function(_0x37b2cb){if(_0x37b2cb&&_0x37b2cb['autoAssociation']===0x0){return db[_0x2dc1('0x3a')][_0x2dc1('0x6b')]({'name':_0x4121a7[_0x2dc1('0x3d')],'resourceId':_0x4121a7['id'],'type':_0x37b2cb[_0x2dc1('0x3d')],'sectionId':_0x37b2cb['id']},{})[_0x2dc1('0x23')](function(){return _0x56d05b;});}else{return _0x56d05b;}})[_0x2dc1('0x5f')](function(_0x5dc599){logger[_0x2dc1('0x29')](_0x2dc1('0x86'),_0x5dc599);throw _0x5dc599;});}return _0x56d05b;})[_0x2dc1('0x23')](respondWithResult(_0x17917a,0xc9))[_0x2dc1('0x5f')](handleError(_0x17917a,null));};exports[_0x2dc1('0x87')]=function(_0x57fdec,_0x2d6073,_0x359974){return db[_0x2dc1('0x45')]['findOne']({'where':{'id':_0x57fdec[_0x2dc1('0x60')]['id']}})[_0x2dc1('0x23')](handleEntityNotFound(_0x2d6073,null))['then'](function(_0x482124){if(_0x482124){return _0x482124[_0x2dc1('0x87')]();}return null;})['then'](respondWithResult(_0x2d6073,null))[_0x2dc1('0x5f')](handleError(_0x2d6073,null));};exports[_0x2dc1('0x88')]=function(_0x588804,_0x56b3a9,_0x1cfedc){if(_0x588804['body']['id']){delete _0x588804[_0x2dc1('0x66')]['id'];}return db[_0x2dc1('0x45')][_0x2dc1('0x65')]({'where':{'id':_0x588804[_0x2dc1('0x60')]['id']}})[_0x2dc1('0x23')](handleEntityNotFound(_0x56b3a9,null))[_0x2dc1('0x23')](function(_0x3b556c){if(_0x3b556c){_0x588804[_0x2dc1('0x66')]['MailAccountId']=_0x3b556c['id'];return db[_0x2dc1('0x40')][_0x2dc1('0x6b')](_0x588804['body']);}})[_0x2dc1('0x23')](respondWithResult(_0x56b3a9,null))[_0x2dc1('0x5f')](handleError(_0x56b3a9,null));};exports[_0x2dc1('0x89')]=function(_0x150c95,_0x461e60,_0x20f4da){return db[_0x2dc1('0x45')][_0x2dc1('0x6c')]({'where':{'id':_0x150c95[_0x2dc1('0x60')]['id']}})[_0x2dc1('0x23')](handleEntityNotFound(_0x461e60,null))['then'](function(_0x1028c6){if(_0x1028c6){return _0x1028c6[_0x2dc1('0x8a')](null);}return null;})['then'](respondWithStatusCode(_0x461e60,null))['catch'](handleError(_0x461e60,null));};exports[_0x2dc1('0x8b')]=function(_0x213136,_0x457c8f,_0x4f813e){return db[_0x2dc1('0x45')][_0x2dc1('0x6c')]({'where':{'id':_0x213136[_0x2dc1('0x60')]['id']}})[_0x2dc1('0x23')](handleEntityNotFound(_0x457c8f,null))['then'](function(_0x558f87){if(_0x558f87){return _0x558f87[_0x2dc1('0x8b')]();}return null;})[_0x2dc1('0x23')](respondWithResult(_0x457c8f,null))['catch'](handleError(_0x457c8f,null));};exports[_0x2dc1('0x8c')]=function(_0x465d38,_0x2831b0,_0x29cb58){if(_0x465d38[_0x2dc1('0x66')]['id']){delete _0x465d38[_0x2dc1('0x66')]['id'];}return db['MailAccount'][_0x2dc1('0x65')]({'where':{'id':_0x465d38[_0x2dc1('0x60')]['id']}})[_0x2dc1('0x23')](handleEntityNotFound(_0x2831b0,null))[_0x2dc1('0x23')](function(_0x4f06b1){if(_0x4f06b1){_0x465d38[_0x2dc1('0x66')][_0x2dc1('0x69')]=_0x4f06b1['id'];return db[_0x2dc1('0x42')][_0x2dc1('0x6b')](_0x465d38[_0x2dc1('0x66')]);}})[_0x2dc1('0x23')](respondWithResult(_0x2831b0,null))[_0x2dc1('0x5f')](handleError(_0x2831b0,null));};exports[_0x2dc1('0x8d')]=function(_0x1b19a1,_0x5d281c,_0x17b373){return db['MailAccount']['findOne']({'where':{'id':_0x1b19a1[_0x2dc1('0x60')]['id']}})[_0x2dc1('0x23')](handleEntityNotFound(_0x5d281c,null))[_0x2dc1('0x23')](function(_0x18bd09){if(_0x18bd09){return _0x18bd09[_0x2dc1('0x8e')](null);}return null;})[_0x2dc1('0x23')](respondWithStatusCode(_0x5d281c,null))[_0x2dc1('0x5f')](handleError(_0x5d281c,null));};exports[_0x2dc1('0x8f')]=function(_0x473ab5,_0xe5db5,_0x59c271){return db[_0x2dc1('0x90')][_0x2dc1('0x65')]({'where':{'id':_0x473ab5[_0x2dc1('0x60')]['id']}})['then'](handleEntityNotFound(_0xe5db5,null))[_0x2dc1('0x23')](function(_0x398be2){if(_0x398be2){return _0x398be2[_0x2dc1('0x8f')](_0x473ab5[_0x2dc1('0x66')][_0x2dc1('0x6f')],_[_0x2dc1('0x91')](_0x473ab5[_0x2dc1('0x66')],['ids','id'])||{});}})['then'](respondWithResult(_0xe5db5,null))[_0x2dc1('0x5f')](handleError(_0xe5db5,null));};exports[_0x2dc1('0x92')]=function(_0x16cdfb,_0x5ada71,_0x4b190c){var _0x28f500={'raw':![],'where':{}};var _0x6477c2={};var _0x45d5d7={'count':0x0,'rows':[]};return db[_0x2dc1('0x45')][_0x2dc1('0x6c')]({'where':{'id':_0x16cdfb[_0x2dc1('0x60')]['id']}})[_0x2dc1('0x23')](handleEntityNotFound(_0x5ada71,null))[_0x2dc1('0x23')](function(_0x1cfa46){if(_0x1cfa46){_0x6477c2['model']=_[_0x2dc1('0x62')](db[_0x2dc1('0x90')][_0x2dc1('0x46')]);_0x6477c2['query']=_[_0x2dc1('0x62')](_0x16cdfb['query']);_0x6477c2[_0x2dc1('0x4c')]=_['intersection'](_0x6477c2[_0x2dc1('0x4a')],_0x6477c2[_0x2dc1('0x4b')]);_0x28f500[_0x2dc1('0x4e')]=_[_0x2dc1('0x4d')](_0x6477c2[_0x2dc1('0x4a')],qs[_0x2dc1('0x4f')](_0x16cdfb[_0x2dc1('0x4b')][_0x2dc1('0x4f')]));_0x28f500[_0x2dc1('0x4e')]=_0x28f500['attributes']['length']?_0x28f500['attributes']:_0x6477c2[_0x2dc1('0x4a')];if(!_0x16cdfb[_0x2dc1('0x4b')][_0x2dc1('0x6d')](_0x2dc1('0x50'))){_0x28f500[_0x2dc1('0x51')]=qs['limit'](_0x16cdfb[_0x2dc1('0x4b')][_0x2dc1('0x51')]);_0x28f500[_0x2dc1('0x2e')]=qs[_0x2dc1('0x2e')](_0x16cdfb[_0x2dc1('0x4b')]['offset']);}_0x28f500['order']=qs[_0x2dc1('0x53')](_0x16cdfb[_0x2dc1('0x4b')][_0x2dc1('0x53')]);_0x28f500[_0x2dc1('0x54')]=qs['filters'](_[_0x2dc1('0x55')](_0x16cdfb['query'],_0x6477c2[_0x2dc1('0x4c')]));_0x28f500[_0x2dc1('0x54')][_0x2dc1('0x69')]=_0x1cfa46['id'];if(_0x16cdfb[_0x2dc1('0x4b')][_0x2dc1('0x56')]){_0x28f500[_0x2dc1('0x54')]=_[_0x2dc1('0x57')](_0x28f500[_0x2dc1('0x54')],{'$or':_[_0x2dc1('0x58')](_0x28f500[_0x2dc1('0x4e')],function(_0x5cbe7e){var _0xf25255={};_0xf25255[_0x5cbe7e]={'$like':'%'+_0x16cdfb[_0x2dc1('0x4b')]['filter']+'%'};return _0xf25255;})});}_0x28f500=_[_0x2dc1('0x57')]({},_0x28f500,_0x16cdfb[_0x2dc1('0x5a')]);return db[_0x2dc1('0x90')][_0x2dc1('0x5b')]({'where':_0x28f500[_0x2dc1('0x54')]})['then'](function(_0x3f3233){_0x45d5d7[_0x2dc1('0x5b')]=_0x3f3233;if(_0x16cdfb[_0x2dc1('0x4b')][_0x2dc1('0x5c')]){_0x28f500['include']=[{'model':db[_0x2dc1('0x93')],'as':_0x2dc1('0x94'),'required':![]},{'model':db[_0x2dc1('0x95')],'as':_0x2dc1('0x96'),'attributes':[_0x2dc1('0x3d'),_0x2dc1('0x97'),_0x2dc1('0x98')],'required':![]},{'model':db[_0x2dc1('0x99')],'as':_0x2dc1('0x9a'),'attributes':['id',_0x2dc1('0x3d'),'color'],'where':_0x16cdfb['query'][_0x2dc1('0x9b')]?{'id':_0x16cdfb[_0x2dc1('0x4b')][_0x2dc1('0x9b')]}:undefined,'required':_0x16cdfb[_0x2dc1('0x4b')][_0x2dc1('0x9b')]?!![]:![]}];}return db['MailInteraction']['findAll'](_0x28f500);})[_0x2dc1('0x23')](function(_0x52ca60){_0x45d5d7[_0x2dc1('0x5e')]=_0x52ca60;return _0x45d5d7;});}})[_0x2dc1('0x23')](respondWithFilteredResult(_0x5ada71,_0x28f500))[_0x2dc1('0x5f')](handleError(_0x5ada71,null));};exports[_0x2dc1('0x9c')]=function(_0x282987,_0x79bb37,_0x2eba3c){return db[_0x2dc1('0x45')][_0x2dc1('0x6c')]({'where':{'id':_0x282987['params']['id']}})[_0x2dc1('0x23')](handleEntityNotFound(_0x79bb37,null))['then'](function(_0x5b31c7){if(_0x5b31c7){return db[_0x2dc1('0x9d')][_0x2dc1('0x9e')](function(_0x837e68){return db['MailApplication'][_0x2dc1('0x37')]({'where':{'MailAccountId':_0x282987['params']['id']},'transaction':_0x837e68})[_0x2dc1('0x23')](function(_0x56fca6){var _0x3e9b2c=_['map'](_0x282987[_0x2dc1('0x66')],function(_0x53f33a){_0x53f33a[_0x2dc1('0x69')]=_0x282987[_0x2dc1('0x60')]['id'];return _0x53f33a;});return db[_0x2dc1('0x9f')][_0x2dc1('0xa0')](_0x3e9b2c,{'transaction':_0x837e68});});})[_0x2dc1('0x23')](function(){return db[_0x2dc1('0x9f')]['findAndCountAll']({'where':{'MailAccountId':_0x282987['params']['id']},'order':_0x2dc1('0xa1')});});}})[_0x2dc1('0x23')](respondWithResult(_0x79bb37,null))['catch'](handleError(_0x79bb37,null));};exports[_0x2dc1('0xa2')]=function(_0x5ea082,_0x159e83,_0x1cba8e){var _0x185c77={};var _0x56412f={};var _0x21218e;var _0x222e65;return db[_0x2dc1('0x45')][_0x2dc1('0x6c')]({'where':{'id':_0x5ea082['params']['id']}})['then'](handleEntityNotFound(_0x159e83,null))[_0x2dc1('0x23')](function(_0x25cf40){if(_0x25cf40){_0x21218e=_0x25cf40;_0x56412f[_0x2dc1('0x4a')]=_[_0x2dc1('0x62')](db[_0x2dc1('0x9f')][_0x2dc1('0x46')]);_0x56412f[_0x2dc1('0x4b')]=_[_0x2dc1('0x62')](_0x5ea082['query']);_0x56412f[_0x2dc1('0x4c')]=_[_0x2dc1('0x4d')](_0x56412f[_0x2dc1('0x4a')],_0x56412f[_0x2dc1('0x4b')]);_0x185c77['attributes']=_[_0x2dc1('0x4d')](_0x56412f[_0x2dc1('0x4a')],qs[_0x2dc1('0x4f')](_0x5ea082[_0x2dc1('0x4b')][_0x2dc1('0x4f')]));_0x185c77[_0x2dc1('0x4e')]=_0x185c77[_0x2dc1('0x4e')]['length']?_0x185c77[_0x2dc1('0x4e')]:_0x56412f[_0x2dc1('0x4a')];_0x185c77[_0x2dc1('0x52')]=qs['sort'](_0x5ea082[_0x2dc1('0x4b')][_0x2dc1('0x53')]);_0x185c77[_0x2dc1('0x54')]=qs['filters'](_[_0x2dc1('0x55')](_0x5ea082[_0x2dc1('0x4b')],_0x56412f['filters']));if(_0x5ea082[_0x2dc1('0x4b')][_0x2dc1('0x56')]){_0x185c77[_0x2dc1('0x54')]=_[_0x2dc1('0x57')](_0x185c77['where'],{'$or':_['map'](_0x185c77['attributes'],function(_0x4486bf){var _0x469f34={};_0x469f34[_0x4486bf]={'$like':'%'+_0x5ea082[_0x2dc1('0x4b')][_0x2dc1('0x56')]+'%'};return _0x469f34;})});}_0x185c77=_['merge']({},_0x185c77,_0x5ea082[_0x2dc1('0x5a')]);return _0x21218e[_0x2dc1('0xa2')](_0x185c77);}})[_0x2dc1('0x23')](function(_0x8a0f9f){if(_0x8a0f9f){_0x222e65=_0x8a0f9f[_0x2dc1('0x63')];if(!_0x5ea082['query'][_0x2dc1('0x6d')](_0x2dc1('0x50'))){_0x185c77[_0x2dc1('0x51')]=qs[_0x2dc1('0x51')](_0x5ea082[_0x2dc1('0x4b')]['limit']);_0x185c77[_0x2dc1('0x2e')]=qs['offset'](_0x5ea082[_0x2dc1('0x4b')]['offset']);}return _0x21218e[_0x2dc1('0xa2')](_0x185c77);}})[_0x2dc1('0x23')](function(_0x554609){if(_0x554609){return _0x554609?{'count':_0x222e65,'rows':_0x554609}:null;}})['then'](respondWithResult(_0x159e83,null))['catch'](handleError(_0x159e83,null));};exports[_0x2dc1('0xa3')]=function(_0x42f350,_0x52015d,_0x2c0924){var _0x20a6fe={'raw':!![],'where':{}};var _0x504d9d={};var _0x1ae373={'count':0x0,'rows':[]};return db['MailAccount']['findOne']({'where':{'id':_0x42f350['params']['id']}})['then'](handleEntityNotFound(_0x52015d,null))[_0x2dc1('0x23')](function(_0xfca3c2){if(_0xfca3c2){_0x504d9d['model']=_['keys'](db[_0x2dc1('0xa4')][_0x2dc1('0x46')]);_0x504d9d[_0x2dc1('0x4b')]=_[_0x2dc1('0x62')](_0x42f350[_0x2dc1('0x4b')]);_0x504d9d[_0x2dc1('0x4c')]=_[_0x2dc1('0x4d')](_0x504d9d['model'],_0x504d9d[_0x2dc1('0x4b')]);_0x20a6fe['attributes']=_[_0x2dc1('0x4d')](_0x504d9d[_0x2dc1('0x4a')],qs[_0x2dc1('0x4f')](_0x42f350[_0x2dc1('0x4b')][_0x2dc1('0x4f')]));_0x20a6fe[_0x2dc1('0x4e')]=_0x20a6fe['attributes'][_0x2dc1('0x63')]?_0x20a6fe[_0x2dc1('0x4e')]:_0x504d9d[_0x2dc1('0x4a')];if(!_0x42f350['query']['hasOwnProperty'](_0x2dc1('0x50'))){_0x20a6fe[_0x2dc1('0x51')]=qs[_0x2dc1('0x51')](_0x42f350[_0x2dc1('0x4b')][_0x2dc1('0x51')]);_0x20a6fe['offset']=qs[_0x2dc1('0x2e')](_0x42f350[_0x2dc1('0x4b')][_0x2dc1('0x2e')]);}_0x20a6fe[_0x2dc1('0x52')]=qs[_0x2dc1('0x53')](_0x42f350[_0x2dc1('0x4b')][_0x2dc1('0x53')]);_0x20a6fe['where']=qs['filters'](_[_0x2dc1('0x55')](_0x42f350['query'],_0x504d9d['filters']));_0x20a6fe[_0x2dc1('0x54')]['MailAccountId']=_0xfca3c2['id'];if(_0x42f350[_0x2dc1('0x4b')][_0x2dc1('0x56')]){_0x20a6fe[_0x2dc1('0x54')]=_[_0x2dc1('0x57')](_0x20a6fe[_0x2dc1('0x54')],{'$or':_['map'](_0x20a6fe[_0x2dc1('0x4e')],function(_0x533c58){var _0x319dfe={};_0x319dfe[_0x533c58]={'$like':'%'+_0x42f350[_0x2dc1('0x4b')][_0x2dc1('0x56')]+'%'};return _0x319dfe;})});}if(_0x42f350[_0x2dc1('0x4b')][_0x2dc1('0xa5')]){var _0x328504=_0x42f350[_0x2dc1('0x4b')][_0x2dc1('0xa5')]['split'](',');var _0x103200={};_0x103200[_0x328504[0x0]]={'$gte':moment(_0x328504[0x1])[_0x2dc1('0xa6')](_0x2dc1('0xa7'))};_0x20a6fe[_0x2dc1('0x54')]=_[_0x2dc1('0x57')](_0x20a6fe[_0x2dc1('0x54')],_0x103200);}_0x20a6fe=_[_0x2dc1('0x57')]({},_0x20a6fe,_0x42f350[_0x2dc1('0x5a')]);return db[_0x2dc1('0xa4')][_0x2dc1('0x5b')]({'where':_0x20a6fe['where']})[_0x2dc1('0x23')](function(_0x366c04){_0x1ae373[_0x2dc1('0x5b')]=_0x366c04;if(_0x42f350[_0x2dc1('0x4b')][_0x2dc1('0x5c')]){_0x20a6fe[_0x2dc1('0x64')]=[{'all':!![]}];}return db[_0x2dc1('0xa4')][_0x2dc1('0x5d')](_0x20a6fe);})[_0x2dc1('0x23')](function(_0x41785d){_0x1ae373[_0x2dc1('0x5e')]=_0x41785d;return _0x1ae373;});}})[_0x2dc1('0x23')](respondWithFilteredResult(_0x52015d,_0x20a6fe))['catch'](handleError(_0x52015d,null));};exports['send']=function(_0x14be07,_0x25914c,_0x62631e){var _0x524ab4,_0x478b21={},_0x52f3ec;if(_0x14be07[_0x2dc1('0x66')]['to']){_0x52f3ec=_0x14be07[_0x2dc1('0x66')]['to'][_0x2dc1('0xa8')](',')[0x0];}return db['MailAccount'][_0x2dc1('0x65')]({'where':{'id':_0x14be07[_0x2dc1('0x60')]['id']},'include':[{'model':db['CmList'],'as':_0x2dc1('0xa9'),'include':[{'model':db['CmContact'],'as':_0x2dc1('0xaa'),'where':{'email':_0x52f3ec},'limit':0x1,'order':[[_0x2dc1('0xab'),'DESC']]}]},{'model':db[_0x2dc1('0x42')],'as':'Smtp','raw':!![]}]})[_0x2dc1('0x23')](handleEntityNotFound(_0x25914c,null))[_0x2dc1('0x23')](function(_0x56d56d){if(_0x56d56d){_0x524ab4=_0x56d56d;if(_0x56d56d['Smtp']){if(_[_0x2dc1('0x76')](_0x14be07[_0x2dc1('0x66')][_0x2dc1('0xac')])){_0x14be07[_0x2dc1('0x66')][_0x2dc1('0xac')]=util['format']('%s\x20<%s>',_0x56d56d['name'],_0x56d56d[_0x2dc1('0x74')]||_0x56d56d[_0x2dc1('0x43')][_0x2dc1('0x7b')]);}if(_0x14be07['body']['attachments']&&_0x14be07['body']['attachments'][_0x2dc1('0x63')]){for(var _0x1cec19=0x0;_0x1cec19<_0x14be07[_0x2dc1('0x66')][_0x2dc1('0xad')][_0x2dc1('0x63')];_0x1cec19+=0x1){_0x14be07[_0x2dc1('0x66')][_0x2dc1('0xad')][_0x1cec19]={'filename':_0x14be07[_0x2dc1('0x66')]['attachments'][_0x1cec19][_0x2dc1('0x3d')],'path':path[_0x2dc1('0xae')](config[_0x2dc1('0xaf')],_0x2dc1('0xb0'),_0x14be07['body']['attachments'][_0x1cec19][_0x2dc1('0xb1')])};}}var _0x5d22e6={'tls':{'rejectUnauthorized':![]}};if(_['isNil'](_0x56d56d[_0x2dc1('0x43')][_0x2dc1('0x82')])){if(_0x56d56d[_0x2dc1('0x43')][_0x2dc1('0x7f')]){_0x5d22e6[_0x2dc1('0xb2')]={'user':_0x56d56d['Smtp'][_0x2dc1('0x7b')],'pass':_0x56d56d[_0x2dc1('0x43')][_0x2dc1('0x7d')]};}_0x5d22e6['host']=_0x56d56d[_0x2dc1('0x43')]['host'];_0x5d22e6['port']=_0x56d56d[_0x2dc1('0x43')]['port'];_0x5d22e6[_0x2dc1('0xb3')]=_0x56d56d[_0x2dc1('0x43')]['secure'];}else{_0x5d22e6['service']=_0x56d56d['Smtp']['service'];_0x5d22e6[_0x2dc1('0xb2')]={'user':_0x56d56d['Smtp'][_0x2dc1('0x7b')],'pass':_0x56d56d[_0x2dc1('0x43')][_0x2dc1('0x7d')]};}return respondWithRpcPromise(_0x2dc1('0xb4'),_0x2dc1('0xb5'),{'account':_0x5d22e6,'message':_0x14be07[_0x2dc1('0x66')]});}else{throw new Error('List\x20not\x20found');}}})['then'](function(_0x29243f){if(_0x29243f){_0x478b21=_0x29243f;if(_0x524ab4[_0x2dc1('0xa9')]){if(_0x524ab4[_0x2dc1('0xa9')]['Contacts']['length']){return _0x524ab4[_0x2dc1('0xa9')]['Contacts'][0x0];}else{return db[_0x2dc1('0x93')][_0x2dc1('0x6b')](_[_0x2dc1('0x1b')](_0x14be07[_0x2dc1('0x66')],{'firstName':_0x14be07['body']['to'],'email':_0x14be07['body']['to'],'phone':_0x14be07['body']['to'],'ListId':_0x524ab4[_0x2dc1('0x75')]}));}}else{throw new Error('List\x20not\x20found');}}})[_0x2dc1('0x23')](function(_0x57658c){if(_0x57658c){var _0x2a3666={'UserId':_0x14be07[_0x2dc1('0x7b')]['id'],'ContactId':_0x57658c['id'],'MailAccountId':_0x524ab4['id'],'inReplyTo':_0x478b21[_0x2dc1('0xb6')],'to':_0x14be07['body'][_0x2dc1('0xac')],'cc':_0x14be07['body']['cc'],'subject':_0x14be07[_0x2dc1('0x66')]['subject'],'attach':_0x14be07[_0x2dc1('0x66')][_0x2dc1('0xb7')],'firstMsgDirection':_0x2dc1('0xb8'),'lastMsgAt':moment()[_0x2dc1('0xa6')](_0x2dc1('0xa7')),'lastMsgDirection':'out','lastMsgBody':_0x14be07['body'][_0x2dc1('0x66')],'Messages':[_['merge'](_0x14be07[_0x2dc1('0x66')],{'messageId':_0x478b21[_0x2dc1('0xb6')],'sentAt':moment()[_0x2dc1('0xa6')](_0x2dc1('0xa7')),'read':!![],'MailAccountId':_0x524ab4['id'],'UserId':_0x14be07[_0x2dc1('0x7b')]['id'],'ContactId':_0x57658c['id']})]};if(_0x14be07[_0x2dc1('0x66')][_0x2dc1('0xb9')]){_0x2a3666=_[_0x2dc1('0x57')](_0x2a3666,_0x14be07[_0x2dc1('0x66')][_0x2dc1('0xb9')]);}return db[_0x2dc1('0x90')][_0x2dc1('0x6b')](_0x2a3666,{'include':[{'model':db['MailMessage'],'as':'Messages'}]});}})['then'](respondWithResult(_0x25914c,null))[_0x2dc1('0x5f')](handleError(_0x25914c,null));};exports[_0x2dc1('0xba')]=function(_0x54ace5,_0x18328b,_0x276461){return db[_0x2dc1('0x45')][_0x2dc1('0x65')]({'where':{'id':_0x54ace5[_0x2dc1('0x60')]['id']},'include':[{'model':db[_0x2dc1('0x42')],'as':'Smtp','raw':!![]}]})[_0x2dc1('0x23')](handleEntityNotFound(_0x18328b,null))[_0x2dc1('0x23')](function(_0x5dc992){if(_0x5dc992&&_0x5dc992[_0x2dc1('0x43')]){var _0x3a0600={'id':_0x5dc992['id'],'tls':{'rejectUnauthorized':![]}};if(_0x5dc992[_0x2dc1('0x43')][_0x2dc1('0x82')]){_0x3a0600[_0x2dc1('0x82')]=_0x5dc992['Smtp']['service'];}else{_0x3a0600[_0x2dc1('0x80')]=_0x5dc992[_0x2dc1('0x43')]['host'];_0x3a0600['port']=_0x5dc992[_0x2dc1('0x43')]['port'];_0x3a0600['secure']=_0x5dc992['Smtp'][_0x2dc1('0xb3')];}if(_0x5dc992[_0x2dc1('0x43')][_0x2dc1('0x7f')]){_0x3a0600[_0x2dc1('0xb2')]={'user':_0x5dc992[_0x2dc1('0x43')]['user'],'pass':_0x5dc992[_0x2dc1('0x43')][_0x2dc1('0x7d')]};}return respondWithRpcPromise(_0x2dc1('0xbb'),_0x2dc1('0xba'),{'account':_0x3a0600});}})[_0x2dc1('0x23')](respondWithResult(_0x18328b,null))[_0x2dc1('0x5f')](handleError(_0x18328b,null));};exports[_0x2dc1('0x37')]=function(_0x53793b,_0x261a26){return db[_0x2dc1('0x45')]['find']({'where':{'id':_0x53793b['params']['id']}})[_0x2dc1('0x23')](handleEntityNotFound(_0x261a26,null))[_0x2dc1('0x23')](function(_0x35bc8d){if(_0x35bc8d&&_0x35bc8d['service']){throw new db['Sequelize']['ValidationError'](_0x2dc1('0xbc'));}return _0x35bc8d;})['then'](removeEntity(_0x261a26,null))[_0x2dc1('0x5f')](handleError(_0x261a26,null));};exports[_0x2dc1('0xbd')]=function(_0x4eacb9,_0x478da9,_0x5a03ac){return db[_0x2dc1('0x45')][_0x2dc1('0x65')]({'where':{'id':_0x4eacb9[_0x2dc1('0x60')]['id']}})['then'](handleEntityNotFound(_0x478da9,null))['then'](function(_0x14de40){if(_0x14de40){return _0x14de40['addAgents'](_0x4eacb9[_0x2dc1('0x66')][_0x2dc1('0x6f')],_[_0x2dc1('0x91')](_0x4eacb9[_0x2dc1('0x66')],[_0x2dc1('0x6f'),'id'])||{})['spread'](function(_0x5e9a5a){for(var _0x1d3c7b=0x0;_0x1d3c7b<_0x4eacb9[_0x2dc1('0x66')][_0x2dc1('0x6f')]['length'];_0x1d3c7b+=0x1){socket[_0x2dc1('0xbe')](_0x2dc1('0xbf'),{'UserId':_0x4eacb9['body'][_0x2dc1('0x6f')][_0x1d3c7b],'MailAccountId':_0x4eacb9[_0x2dc1('0x60')]['id']});}return _0x5e9a5a;});}})[_0x2dc1('0x23')](respondWithResult(_0x478da9,null))[_0x2dc1('0x5f')](handleError(_0x478da9,null));};exports['removeAgents']=function(_0x5057bc,_0x1177c5,_0x2e4de6){return db['MailAccount'][_0x2dc1('0x65')]({'where':{'id':_0x5057bc[_0x2dc1('0x60')]['id']}})[_0x2dc1('0x23')](handleEntityNotFound(_0x1177c5,null))['then'](function(_0x1a66cb){if(_0x1a66cb){return _0x1a66cb['removeAgents'](_0x5057bc['query'][_0x2dc1('0x6f')])[_0x2dc1('0x23')](function(){if(_[_0x2dc1('0xc0')](_0x5057bc[_0x2dc1('0x4b')][_0x2dc1('0x6f')])){for(var _0x4f731e=0x0;_0x4f731e<_0x5057bc[_0x2dc1('0x4b')][_0x2dc1('0x6f')]['length'];_0x4f731e+=0x1){socket[_0x2dc1('0xbe')]('userMailAccount:remove',{'UserId':Number(_0x5057bc['query'][_0x2dc1('0x6f')][_0x4f731e]),'MailAccountId':Number(_0x5057bc['params']['id'])});}}else{socket[_0x2dc1('0xbe')](_0x2dc1('0xc1'),{'UserId':Number(_0x5057bc[_0x2dc1('0x4b')][_0x2dc1('0x6f')]),'MailAccountId':Number(_0x5057bc[_0x2dc1('0x60')]['id'])});}});}})[_0x2dc1('0x23')](respondWithStatusCode(_0x1177c5,null))['catch'](handleError(_0x1177c5,null));};exports[_0x2dc1('0xc2')]=function(_0x276f3a,_0x2c37ce,_0x365632){var _0xca1ff7={};var _0x38aea6={};var _0x31a607;var _0x1f6ccc;return db[_0x2dc1('0x45')][_0x2dc1('0x6c')]({'where':{'id':_0x276f3a['params']['id']}})[_0x2dc1('0x23')](handleEntityNotFound(_0x2c37ce,null))[_0x2dc1('0x23')](function(_0x207418){if(_0x207418){_0x31a607=_0x207418;_0x38aea6['model']=_[_0x2dc1('0x62')](db[_0x2dc1('0x95')]['rawAttributes']);_0x38aea6[_0x2dc1('0x4b')]=_['keys'](_0x276f3a['query']);_0x38aea6[_0x2dc1('0x4c')]=_[_0x2dc1('0x4d')](_0x38aea6[_0x2dc1('0x4a')],_0x38aea6['query']);_0xca1ff7['attributes']=_['intersection'](_0x38aea6['model'],qs[_0x2dc1('0x4f')](_0x276f3a[_0x2dc1('0x4b')][_0x2dc1('0x4f')]));_0xca1ff7[_0x2dc1('0x4e')]=_0xca1ff7[_0x2dc1('0x4e')]['length']?_0xca1ff7[_0x2dc1('0x4e')]:_0x38aea6[_0x2dc1('0x4a')];_0xca1ff7[_0x2dc1('0x52')]=qs[_0x2dc1('0x53')](_0x276f3a[_0x2dc1('0x4b')][_0x2dc1('0x53')]);_0xca1ff7[_0x2dc1('0x54')]=qs[_0x2dc1('0x4c')](_[_0x2dc1('0x55')](_0x276f3a[_0x2dc1('0x4b')],_0x38aea6[_0x2dc1('0x4c')]));if(_0x276f3a[_0x2dc1('0x4b')][_0x2dc1('0x56')]){_0xca1ff7['where']=_[_0x2dc1('0x57')](_0xca1ff7[_0x2dc1('0x54')],{'$or':_[_0x2dc1('0x58')](_0xca1ff7[_0x2dc1('0x4e')],function(_0x2cd68e){var _0x5ad51c={};_0x5ad51c[_0x2cd68e]={'$like':'%'+_0x276f3a['query'][_0x2dc1('0x56')]+'%'};return _0x5ad51c;})});}_0xca1ff7=_[_0x2dc1('0x57')]({},_0xca1ff7,_0x276f3a[_0x2dc1('0x5a')]);return _0x31a607['getAgents'](_0xca1ff7);}})[_0x2dc1('0x23')](function(_0x17e1af){if(_0x17e1af){_0x1f6ccc=_0x17e1af[_0x2dc1('0x63')];if(!_0x276f3a[_0x2dc1('0x4b')]['hasOwnProperty'](_0x2dc1('0x50'))){_0xca1ff7[_0x2dc1('0x51')]=qs['limit'](_0x276f3a[_0x2dc1('0x4b')][_0x2dc1('0x51')]);_0xca1ff7['offset']=qs[_0x2dc1('0x2e')](_0x276f3a[_0x2dc1('0x4b')][_0x2dc1('0x2e')]);}return _0x31a607[_0x2dc1('0xc2')](_0xca1ff7);}})[_0x2dc1('0x23')](function(_0x37a384){if(_0x37a384){return _0x37a384?{'count':_0x1f6ccc,'rows':_0x37a384}:null;}})[_0x2dc1('0x23')](respondWithResult(_0x2c37ce,null))[_0x2dc1('0x5f')](handleError(_0x2c37ce,null));};