Built motion from commit (unavailable).|2.5.4
[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 _0xcbd9=['status','json','count','offset','limit','set','Content-Range','apply','reject','save','update','get','MailAccounts','UserProfileResource','end','sendStatus','stack','name','send','index','MailServerIn','Imap','MailServerOut','Smtp','Pause','mandatoryDispositionPause','map','fieldName','type','key','model','query','keys','filters','attributes','intersection','fields','length','hasOwnProperty','nolimit','sort','where','pick','filter','merge','VIRTUAL','options','MailAccount','includeAll','include','findAll','show','params','rawAttributes','find','body','describe','MailAccountId','Disposition','create','getDispositions','findOne','rows','removeDispositions','ids','CannedAnswer','order','ListId','description','isNil','cauthentication','user','cuser','password','cpassword','authentication','host','port','service','pass','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','userProfileId','autoAssociation','getImap','addImap','getSmtp','setSmtp','addInteraction','omit','getInteractions','MailInteraction','CmContact','Contact','internal','Tags','tag','addApplications','sequelize','transaction','destroy','bulkCreate','priority','getApplications','MailApplication','MailMessage','$gte','split','format','YYYY-MM-DD\x20HH:mm:ss','CmList','List','Contacts','updatedAt','DESC','from','%s\x20<%s>','email','attachments','join','root','server/files/attachments','basename','auth','SendMail','sendMail','List\x20not\x20found','messageId','subject','out','Interaction','verifySmtp','secure','VerifySmtp','You\x20can\x27t\x20remove\x20the\x20mail\x20service\x20account','addAgents','spread','emit','userMailAccount:save','removeAgents','isArray','userMailAccount:remove','getAgents','User','eml-format','zip-dir','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','ejs','squel','crypto','desk.js','querystring','papaparse','ioredis','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../mysqldb','redis','defaults','localhost','http','Sequelize','ValidationError','The\x20password\x20must\x20be\x20at\x20least\x208\x20characters\x20long\x20and\x20have\x201\x20lowercase\x20character,\x201\x20uppercase\x20character,\x201\x20number\x20and\x201\x20special\x20character\x20~!@#$%^&-_=+[{]}.','then','info','MailAccount,\x20%s,\x20%s','debug','request\x20sent','stringify','error','code','message','result','catch'];(function(_0x175a55,_0x4082fd){var _0x167adf=function(_0x18ef07){while(--_0x18ef07){_0x175a55['push'](_0x175a55['shift']());}};_0x167adf(++_0x4082fd);}(_0xcbd9,0x91));var _0x9cbd=function(_0x1c0adf,_0xe1d577){_0x1c0adf=_0x1c0adf-0x0;var _0x40d45e=_0xcbd9[_0x1c0adf];return _0x40d45e;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0x9cbd('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x9cbd('0x1'));var jsonpatch=require('fast-json-patch');var rp=require(_0x9cbd('0x2'));var moment=require(_0x9cbd('0x3'));var BPromise=require(_0x9cbd('0x4'));var Mustache=require(_0x9cbd('0x5'));var util=require(_0x9cbd('0x6'));var path=require(_0x9cbd('0x7'));var sox=require(_0x9cbd('0x8'));var csv=require(_0x9cbd('0x9'));var ejs=require(_0x9cbd('0xa'));var fs=require('fs');var _=require('lodash');var squel=require(_0x9cbd('0xb'));var crypto=require(_0x9cbd('0xc'));var jsforce=require('jsforce');var deskjs=require(_0x9cbd('0xd'));var toCsv=require(_0x9cbd('0x9'));var querystring=require(_0x9cbd('0xe'));var Papa=require(_0x9cbd('0xf'));var Redis=require(_0x9cbd('0x10'));var authService=require('../../components/auth/service');var qs=require('../../components/parsers/qs');var as=require(_0x9cbd('0x11'));var hardwareService=require(_0x9cbd('0x12'));var logger=require(_0x9cbd('0x13'))(_0x9cbd('0x14'));var utils=require('../../config/utils');var config=require('../../config/environment');var db=require(_0x9cbd('0x15'))['db'];config[_0x9cbd('0x16')]=_[_0x9cbd('0x17')](config[_0x9cbd('0x16')],{'host':_0x9cbd('0x18'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config['redis']));require('./mailAccount.socket')['register'](socket);var jayson=require('jayson/promise');var client=jayson['client'][_0x9cbd('0x19')]({'port':0x232b});function checkPasswordPattern(_0x549e71,_0x774c26,_0x1d7a42){if(_0x1d7a42){var _0x5894ff=new RegExp(/(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[?!@#\$%\^&\*~\-_=+[{\]\}])(?=.{8,})/);if(_0x5894ff['test'](_0x774c26)){return _0x549e71;}else{throw new db[(_0x9cbd('0x1a'))][(_0x9cbd('0x1b'))](_0x9cbd('0x1c'));}}else{return _0x549e71;}}function respondWithRpcPromise(_0x5c0d88,_0x30971c,_0x2e6501,_0x4b15bb){return new BPromise(function(_0x3cd679,_0x45b291){var _0x31cc8d=_0x4b15bb||client;return _0x31cc8d['request'](_0x5c0d88,_0x2e6501)[_0x9cbd('0x1d')](function(_0x1cafd9){logger[_0x9cbd('0x1e')](_0x9cbd('0x1f'),_0x30971c,'request\x20sent');logger[_0x9cbd('0x20')]('MailAccount,\x20%s,\x20%s,\x20%s',_0x30971c,_0x9cbd('0x21'),JSON[_0x9cbd('0x22')](_0x1cafd9));if(_0x1cafd9[_0x9cbd('0x23')]){if(_0x1cafd9['error'][_0x9cbd('0x24')]===0x1f4){logger['error'](_0x9cbd('0x1f'),_0x30971c,_0x1cafd9[_0x9cbd('0x23')]['message']);return _0x45b291(_0x1cafd9[_0x9cbd('0x23')][_0x9cbd('0x25')]);}logger[_0x9cbd('0x23')](_0x9cbd('0x1f'),_0x30971c,_0x1cafd9[_0x9cbd('0x23')][_0x9cbd('0x25')]);return _0x3cd679(_0x1cafd9[_0x9cbd('0x23')][_0x9cbd('0x25')]);}else{logger['info'](_0x9cbd('0x1f'),_0x30971c,_0x9cbd('0x21'));_0x3cd679(_0x1cafd9[_0x9cbd('0x26')]['message']);}})[_0x9cbd('0x27')](function(_0x14c759){logger[_0x9cbd('0x23')](_0x9cbd('0x1f'),_0x30971c,_0x14c759);_0x45b291(_0x14c759);});});}function respondWithStatusCode(_0x15a932,_0x3a8b6d){_0x3a8b6d=_0x3a8b6d||0xcc;return function(_0x496f34){if(_0x496f34){return _0x15a932['sendStatus'](_0x3a8b6d);}return _0x15a932[_0x9cbd('0x28')](_0x3a8b6d)['end']();};}function respondWithResult(_0x193a0d,_0x351eae){_0x351eae=_0x351eae||0xc8;return function(_0x2b5f43){if(_0x2b5f43){return _0x193a0d[_0x9cbd('0x28')](_0x351eae)[_0x9cbd('0x29')](_0x2b5f43);}};}function respondWithFilteredResult(_0x46e337,_0x1b45be){return function(_0xced4c8){if(_0xced4c8){var _0x441ecc=_0xced4c8[_0x9cbd('0x2a')],_0x3d1a4f=_0x1b45be[_0x9cbd('0x2b')],_0x3987dd=_0x1b45be[_0x9cbd('0x2b')]+_0x1b45be[_0x9cbd('0x2c')],_0xb7c2fb;if(_0x3987dd>=_0x441ecc){_0x3987dd=_0x441ecc;_0xb7c2fb=0xc8;}else{_0xb7c2fb=0xce;}_0x46e337[_0x9cbd('0x28')](_0xb7c2fb);return _0x46e337[_0x9cbd('0x2d')](_0x9cbd('0x2e'),_0x3d1a4f+'-'+_0x3987dd+'/'+_0x441ecc)[_0x9cbd('0x29')](_0xced4c8);}return null;};}function patchUpdates(_0x782d49){return function(_0x1e695f){try{jsonpatch[_0x9cbd('0x2f')](_0x1e695f,_0x782d49,!![]);}catch(_0x238552){return BPromise[_0x9cbd('0x30')](_0x238552);}return _0x1e695f[_0x9cbd('0x31')]();};}function saveUpdates(_0x4e7c4a,_0x382ddd){return function(_0x517178){if(_0x517178){return _0x517178[_0x9cbd('0x32')](_0x4e7c4a)[_0x9cbd('0x1d')](function(_0x4f68c0){return _0x4f68c0;});}return null;};}function removeEntity(_0x3ec1da,_0x4d37cf){return function(_0x4c7e18){if(_0x4c7e18){return _0x4c7e18['destroy']()[_0x9cbd('0x1d')](function(){var _0xa27ac0=_0x4c7e18[_0x9cbd('0x33')]({'plain':!![]});var _0x1c09c0=_0x9cbd('0x34');return db[_0x9cbd('0x35')]['destroy']({'where':{'type':_0x1c09c0,'resourceId':_0xa27ac0['id']}})[_0x9cbd('0x1d')](function(){return _0x4c7e18;});})[_0x9cbd('0x1d')](function(){_0x3ec1da[_0x9cbd('0x28')](0xcc)[_0x9cbd('0x36')]();});}};}function handleEntityNotFound(_0x256ea2,_0x1651c9){return function(_0x3a8cec){if(!_0x3a8cec){_0x256ea2[_0x9cbd('0x37')](0x194);}return _0x3a8cec;};}function handleError(_0x15ee46,_0x4ac7f6){_0x4ac7f6=_0x4ac7f6||0x1f4;return function(_0x17a4d6){logger[_0x9cbd('0x23')](_0x17a4d6[_0x9cbd('0x38')]);if(_0x17a4d6['name']){delete _0x17a4d6[_0x9cbd('0x39')];}_0x15ee46[_0x9cbd('0x28')](_0x4ac7f6)[_0x9cbd('0x3a')](_0x17a4d6);};}exports[_0x9cbd('0x3b')]=function(_0x1c3214,_0x3790ee){var _0x31cefa={'include':[{'model':db[_0x9cbd('0x3c')],'as':_0x9cbd('0x3d')},{'model':db[_0x9cbd('0x3e')],'as':_0x9cbd('0x3f')},{'model':db[_0x9cbd('0x40')],'as':_0x9cbd('0x41')}]},_0x4e13db={},_0x1bbcf5={'count':0x0,'rows':[]};var _0x486020=_[_0x9cbd('0x42')](db['MailAccount']['rawAttributes'],function(_0x3340f6){return{'name':_0x3340f6[_0x9cbd('0x43')],'type':_0x3340f6[_0x9cbd('0x44')][_0x9cbd('0x45')]};});_0x4e13db[_0x9cbd('0x46')]=_[_0x9cbd('0x42')](_0x486020,'name');_0x4e13db[_0x9cbd('0x47')]=_[_0x9cbd('0x48')](_0x1c3214[_0x9cbd('0x47')]);_0x4e13db[_0x9cbd('0x49')]=_['intersection'](_0x4e13db[_0x9cbd('0x46')],_0x4e13db[_0x9cbd('0x47')]);_0x31cefa[_0x9cbd('0x4a')]=_[_0x9cbd('0x4b')](_0x4e13db['model'],qs[_0x9cbd('0x4c')](_0x1c3214[_0x9cbd('0x47')][_0x9cbd('0x4c')]));_0x31cefa[_0x9cbd('0x4a')]=_0x31cefa[_0x9cbd('0x4a')][_0x9cbd('0x4d')]?_0x31cefa[_0x9cbd('0x4a')]:_0x4e13db[_0x9cbd('0x46')];if(!_0x1c3214[_0x9cbd('0x47')][_0x9cbd('0x4e')](_0x9cbd('0x4f'))){_0x31cefa[_0x9cbd('0x2c')]=qs[_0x9cbd('0x2c')](_0x1c3214[_0x9cbd('0x47')]['limit']);_0x31cefa[_0x9cbd('0x2b')]=qs[_0x9cbd('0x2b')](_0x1c3214[_0x9cbd('0x47')]['offset']);}_0x31cefa['order']=qs[_0x9cbd('0x50')](_0x1c3214[_0x9cbd('0x47')][_0x9cbd('0x50')]);_0x31cefa[_0x9cbd('0x51')]=qs[_0x9cbd('0x49')](_[_0x9cbd('0x52')](_0x1c3214['query'],_0x4e13db[_0x9cbd('0x49')]),_0x486020);if(_0x1c3214[_0x9cbd('0x47')][_0x9cbd('0x53')]){_0x31cefa[_0x9cbd('0x51')]=_[_0x9cbd('0x54')](_0x31cefa[_0x9cbd('0x51')],{'$or':_['map'](_0x486020,function(_0x48b13b){if(_0x48b13b['type']!==_0x9cbd('0x55')){var _0x2e120a={};_0x2e120a[_0x48b13b[_0x9cbd('0x39')]]={'$like':'%'+_0x1c3214[_0x9cbd('0x47')][_0x9cbd('0x53')]+'%'};return _0x2e120a;}})});}_0x31cefa=_['merge']({},_0x31cefa,_0x1c3214[_0x9cbd('0x56')]);var _0x1d9a24={'where':_0x31cefa[_0x9cbd('0x51')]};return db[_0x9cbd('0x57')][_0x9cbd('0x2a')](_0x1d9a24)[_0x9cbd('0x1d')](function(_0x479ddc){_0x1bbcf5['count']=_0x479ddc;if(_0x1c3214['query'][_0x9cbd('0x58')]){_0x31cefa[_0x9cbd('0x59')]=[{'all':!![]}];}return db['MailAccount'][_0x9cbd('0x5a')](_0x31cefa);})[_0x9cbd('0x1d')](function(_0x214e9e){_0x1bbcf5['rows']=_0x214e9e;return _0x1bbcf5;})[_0x9cbd('0x1d')](respondWithFilteredResult(_0x3790ee,_0x31cefa))[_0x9cbd('0x27')](handleError(_0x3790ee,null));};exports[_0x9cbd('0x5b')]=function(_0x3e3cc1,_0x21f306){var _0x3283c2={'raw':![],'where':{'id':_0x3e3cc1[_0x9cbd('0x5c')]['id']},'include':[{'model':db['MailServerIn'],'as':_0x9cbd('0x3d')},{'model':db[_0x9cbd('0x3e')],'as':_0x9cbd('0x3f')},{'model':db['Pause'],'as':'mandatoryDispositionPause'}]},_0x405199={};_0x405199['model']=_[_0x9cbd('0x48')](db['MailAccount'][_0x9cbd('0x5d')]);_0x405199['query']=_[_0x9cbd('0x48')](_0x3e3cc1['query']);_0x405199[_0x9cbd('0x49')]=_[_0x9cbd('0x4b')](_0x405199[_0x9cbd('0x46')],_0x405199[_0x9cbd('0x47')]);_0x3283c2[_0x9cbd('0x4a')]=_[_0x9cbd('0x4b')](_0x405199[_0x9cbd('0x46')],qs['fields'](_0x3e3cc1[_0x9cbd('0x47')][_0x9cbd('0x4c')]));_0x3283c2[_0x9cbd('0x4a')]=_0x3283c2[_0x9cbd('0x4a')][_0x9cbd('0x4d')]?_0x3283c2[_0x9cbd('0x4a')]:_0x405199['model'];if(_0x3e3cc1['query']['includeAll']){_0x3283c2[_0x9cbd('0x59')]=[{'all':!![]}];}_0x3283c2=_[_0x9cbd('0x54')]({},_0x3283c2,_0x3e3cc1[_0x9cbd('0x56')]);return db[_0x9cbd('0x57')][_0x9cbd('0x5e')](_0x3283c2)[_0x9cbd('0x1d')](handleEntityNotFound(_0x21f306,null))[_0x9cbd('0x1d')](respondWithResult(_0x21f306,null))[_0x9cbd('0x27')](handleError(_0x21f306,null));};exports['update']=function(_0x2b1a87,_0x43bab9){if(_0x2b1a87[_0x9cbd('0x5f')]['id']){delete _0x2b1a87[_0x9cbd('0x5f')]['id'];}return db['MailAccount'][_0x9cbd('0x5e')]({'where':{'id':_0x2b1a87['params']['id']},'include':[{'model':db[_0x9cbd('0x3c')],'as':_0x9cbd('0x3d')},{'model':db[_0x9cbd('0x3e')],'as':_0x9cbd('0x3f')},{'model':db[_0x9cbd('0x40')],'as':_0x9cbd('0x41')}]})[_0x9cbd('0x1d')](handleEntityNotFound(_0x43bab9,null))[_0x9cbd('0x1d')](saveUpdates(_0x2b1a87[_0x9cbd('0x5f')],null))[_0x9cbd('0x1d')](function(_0x4b4615){if(_0x4b4615&&_0x2b1a87[_0x9cbd('0x5f')][_0x9cbd('0x3d')]){return db[_0x9cbd('0x3c')][_0x9cbd('0x32')](_0x2b1a87['body']['Imap'],{'where':{'MailAccountId':_0x4b4615['id']}})[_0x9cbd('0x1d')](function(){return _0x4b4615;});}return _0x4b4615;})[_0x9cbd('0x1d')](function(_0x1691c5){if(_0x1691c5&&_0x2b1a87[_0x9cbd('0x5f')]['Smtp']){return db['MailServerOut'][_0x9cbd('0x32')](_0x2b1a87[_0x9cbd('0x5f')][_0x9cbd('0x3f')],{'where':{'MailAccountId':_0x1691c5['id']}})[_0x9cbd('0x1d')](function(){return _0x1691c5;});}return _0x1691c5;})[_0x9cbd('0x1d')](respondWithResult(_0x43bab9,null))[_0x9cbd('0x27')](handleError(_0x43bab9,null));};exports['describe']=function(_0x19f184,_0x50367f){return db['MailAccount'][_0x9cbd('0x60')]()['then'](respondWithResult(_0x50367f,null))[_0x9cbd('0x27')](handleError(_0x50367f,null));};exports['addDisposition']=function(_0x224c95,_0x5e6459,_0x2b3bb5){if(_0x224c95[_0x9cbd('0x5f')]['id']){delete _0x224c95[_0x9cbd('0x5f')]['id'];}return db['MailAccount'][_0x9cbd('0x5e')]({'where':{'id':_0x224c95[_0x9cbd('0x5c')]['id']}})[_0x9cbd('0x1d')](handleEntityNotFound(_0x5e6459,null))[_0x9cbd('0x1d')](function(_0x9a452b){if(_0x9a452b){_0x224c95['body'][_0x9cbd('0x61')]=_0x9a452b['id'];return db[_0x9cbd('0x62')][_0x9cbd('0x63')](_0x224c95['body']);}})[_0x9cbd('0x1d')](respondWithResult(_0x5e6459,null))[_0x9cbd('0x27')](handleError(_0x5e6459,null));};exports[_0x9cbd('0x64')]=function(_0x58dc9d,_0x15334d,_0x5cf9e0){var _0x424c0b={'raw':![],'where':{}};var _0x2af3be={};var _0x510e02={'count':0x0,'rows':[]};return db[_0x9cbd('0x57')][_0x9cbd('0x65')]({'where':{'id':_0x58dc9d['params']['id']}})['then'](handleEntityNotFound(_0x15334d,null))[_0x9cbd('0x1d')](function(_0x566004){if(_0x566004){_0x2af3be[_0x9cbd('0x46')]=_['keys'](db[_0x9cbd('0x62')][_0x9cbd('0x5d')]);_0x2af3be[_0x9cbd('0x47')]=_[_0x9cbd('0x48')](_0x58dc9d['query']);_0x2af3be[_0x9cbd('0x49')]=_[_0x9cbd('0x4b')](_0x2af3be['model'],_0x2af3be[_0x9cbd('0x47')]);_0x424c0b['attributes']=_['intersection'](_0x2af3be[_0x9cbd('0x46')],qs[_0x9cbd('0x4c')](_0x58dc9d[_0x9cbd('0x47')][_0x9cbd('0x4c')]));_0x424c0b[_0x9cbd('0x4a')]=_0x424c0b[_0x9cbd('0x4a')][_0x9cbd('0x4d')]?_0x424c0b[_0x9cbd('0x4a')]:_0x2af3be[_0x9cbd('0x46')];if(!_0x58dc9d[_0x9cbd('0x47')][_0x9cbd('0x4e')](_0x9cbd('0x4f'))){_0x424c0b[_0x9cbd('0x2c')]=qs[_0x9cbd('0x2c')](_0x58dc9d[_0x9cbd('0x47')]['limit']);_0x424c0b[_0x9cbd('0x2b')]=qs[_0x9cbd('0x2b')](_0x58dc9d['query'][_0x9cbd('0x2b')]);}_0x424c0b['order']=qs[_0x9cbd('0x50')](_0x58dc9d[_0x9cbd('0x47')]['sort']);_0x424c0b['where']=qs[_0x9cbd('0x49')](_[_0x9cbd('0x52')](_0x58dc9d[_0x9cbd('0x47')],_0x2af3be[_0x9cbd('0x49')]));_0x424c0b[_0x9cbd('0x51')][_0x9cbd('0x61')]=_0x566004['id'];if(_0x58dc9d[_0x9cbd('0x47')]['filter']){_0x424c0b[_0x9cbd('0x51')]=_['merge'](_0x424c0b[_0x9cbd('0x51')],{'$or':_['map'](_0x424c0b['attributes'],function(_0xe03f50){var _0x43b6d1={};_0x43b6d1[_0xe03f50]={'$like':'%'+_0x58dc9d[_0x9cbd('0x47')][_0x9cbd('0x53')]+'%'};return _0x43b6d1;})});}_0x424c0b=_[_0x9cbd('0x54')]({},_0x424c0b,_0x58dc9d['options']);return db[_0x9cbd('0x62')][_0x9cbd('0x2a')]({'where':_0x424c0b[_0x9cbd('0x51')]})['then'](function(_0x1a39f4){_0x510e02[_0x9cbd('0x2a')]=_0x1a39f4;if(_0x58dc9d[_0x9cbd('0x47')][_0x9cbd('0x58')]){_0x424c0b[_0x9cbd('0x59')]=[{'all':!![]}];}return db['Disposition'][_0x9cbd('0x5a')](_0x424c0b);})['then'](function(_0x590341){_0x510e02[_0x9cbd('0x66')]=_0x590341;return _0x510e02;});}})['then'](respondWithFilteredResult(_0x15334d,_0x424c0b))[_0x9cbd('0x27')](handleError(_0x15334d,null));};exports['removeDispositions']=function(_0x527307,_0x3a2ccd,_0x3d7ab2){return db['MailAccount'][_0x9cbd('0x5e')]({'where':{'id':_0x527307[_0x9cbd('0x5c')]['id']}})[_0x9cbd('0x1d')](handleEntityNotFound(_0x3a2ccd,null))[_0x9cbd('0x1d')](function(_0x52342a){if(_0x52342a){return _0x52342a[_0x9cbd('0x67')](_0x527307[_0x9cbd('0x47')][_0x9cbd('0x68')]);}})[_0x9cbd('0x1d')](respondWithStatusCode(_0x3a2ccd,null))[_0x9cbd('0x27')](handleError(_0x3a2ccd,null));};exports['addAnswer']=function(_0x35794b,_0x1a88c0,_0x155424){if(_0x35794b[_0x9cbd('0x5f')]['id']){delete _0x35794b[_0x9cbd('0x5f')]['id'];}return db[_0x9cbd('0x57')][_0x9cbd('0x5e')]({'where':{'id':_0x35794b[_0x9cbd('0x5c')]['id']}})[_0x9cbd('0x1d')](handleEntityNotFound(_0x1a88c0,null))[_0x9cbd('0x1d')](function(_0x3a747c){if(_0x3a747c){_0x35794b['body'][_0x9cbd('0x61')]=_0x3a747c['id'];return db[_0x9cbd('0x69')][_0x9cbd('0x63')](_0x35794b[_0x9cbd('0x5f')]);}})['then'](respondWithResult(_0x1a88c0,null))[_0x9cbd('0x27')](handleError(_0x1a88c0,null));};exports['getAnswers']=function(_0x4d30a4,_0x27c998,_0x420017){var _0x3548d6={'raw':![],'where':{}};var _0x494d68={};var _0x41ae98={'count':0x0,'rows':[]};return db[_0x9cbd('0x57')][_0x9cbd('0x65')]({'where':{'id':_0x4d30a4[_0x9cbd('0x5c')]['id']}})[_0x9cbd('0x1d')](handleEntityNotFound(_0x27c998,null))[_0x9cbd('0x1d')](function(_0x58231e){if(_0x58231e){_0x494d68[_0x9cbd('0x46')]=_[_0x9cbd('0x48')](db['CannedAnswer'][_0x9cbd('0x5d')]);_0x494d68[_0x9cbd('0x47')]=_[_0x9cbd('0x48')](_0x4d30a4[_0x9cbd('0x47')]);_0x494d68['filters']=_[_0x9cbd('0x4b')](_0x494d68[_0x9cbd('0x46')],_0x494d68[_0x9cbd('0x47')]);_0x3548d6[_0x9cbd('0x4a')]=_[_0x9cbd('0x4b')](_0x494d68[_0x9cbd('0x46')],qs[_0x9cbd('0x4c')](_0x4d30a4[_0x9cbd('0x47')][_0x9cbd('0x4c')]));_0x3548d6['attributes']=_0x3548d6[_0x9cbd('0x4a')][_0x9cbd('0x4d')]?_0x3548d6['attributes']:_0x494d68['model'];if(!_0x4d30a4[_0x9cbd('0x47')][_0x9cbd('0x4e')]('nolimit')){_0x3548d6[_0x9cbd('0x2c')]=qs[_0x9cbd('0x2c')](_0x4d30a4[_0x9cbd('0x47')][_0x9cbd('0x2c')]);_0x3548d6[_0x9cbd('0x2b')]=qs[_0x9cbd('0x2b')](_0x4d30a4[_0x9cbd('0x47')][_0x9cbd('0x2b')]);}_0x3548d6[_0x9cbd('0x6a')]=qs[_0x9cbd('0x50')](_0x4d30a4['query'][_0x9cbd('0x50')]);_0x3548d6[_0x9cbd('0x51')]=qs['filters'](_[_0x9cbd('0x52')](_0x4d30a4['query'],_0x494d68[_0x9cbd('0x49')]));_0x3548d6['where']['MailAccountId']=_0x58231e['id'];if(_0x4d30a4[_0x9cbd('0x47')][_0x9cbd('0x53')]){_0x3548d6[_0x9cbd('0x51')]=_['merge'](_0x3548d6['where'],{'$or':_[_0x9cbd('0x42')](_0x3548d6[_0x9cbd('0x4a')],function(_0x368320){var _0x37a2b0={};_0x37a2b0[_0x368320]={'$like':'%'+_0x4d30a4[_0x9cbd('0x47')]['filter']+'%'};return _0x37a2b0;})});}_0x3548d6=_[_0x9cbd('0x54')]({},_0x3548d6,_0x4d30a4[_0x9cbd('0x56')]);return db['CannedAnswer'][_0x9cbd('0x2a')]({'where':_0x3548d6[_0x9cbd('0x51')]})[_0x9cbd('0x1d')](function(_0x4e1491){_0x41ae98[_0x9cbd('0x2a')]=_0x4e1491;if(_0x4d30a4[_0x9cbd('0x47')][_0x9cbd('0x58')]){_0x3548d6[_0x9cbd('0x59')]=[{'all':!![]}];}return db[_0x9cbd('0x69')]['findAll'](_0x3548d6);})['then'](function(_0x1586ba){_0x41ae98[_0x9cbd('0x66')]=_0x1586ba;return _0x41ae98;});}})[_0x9cbd('0x1d')](respondWithFilteredResult(_0x27c998,_0x3548d6))[_0x9cbd('0x27')](handleError(_0x27c998,null));};exports['removeAnswers']=function(_0x564fd5,_0xe7c477,_0x257fd0){return db[_0x9cbd('0x57')][_0x9cbd('0x5e')]({'where':{'id':_0x564fd5[_0x9cbd('0x5c')]['id']}})['then'](handleEntityNotFound(_0xe7c477,null))[_0x9cbd('0x1d')](function(_0x3b1c38){if(_0x3b1c38){return _0x3b1c38['removeAnswers'](_0x564fd5[_0x9cbd('0x47')][_0x9cbd('0x68')]);}})[_0x9cbd('0x1d')](respondWithStatusCode(_0xe7c477,null))['catch'](handleError(_0xe7c477,null));};exports[_0x9cbd('0x63')]=function(_0x2b49ff,_0x244eb7){var _0x4cf579={'name':_0x2b49ff[_0x9cbd('0x5f')][_0x9cbd('0x39')],'key':_0x2b49ff[_0x9cbd('0x5f')][_0x9cbd('0x45')],'email':_0x2b49ff[_0x9cbd('0x5f')]['email'],'ListId':_0x2b49ff['body'][_0x9cbd('0x6b')],'active':!_['isNil'](_0x2b49ff[_0x9cbd('0x5f')]['active'])?_0x2b49ff['body']['active']:!![],'description':_0x2b49ff[_0x9cbd('0x5f')][_0x9cbd('0x6c')]||null,'Imap':{},'Smtp':{}};if(_[_0x9cbd('0x6d')](_0x2b49ff[_0x9cbd('0x5f')]['cservice'])){if(_0x2b49ff['body'][_0x9cbd('0x6e')]){_0x4cf579[_0x9cbd('0x3d')][_0x9cbd('0x6f')]=_0x4cf579[_0x9cbd('0x3f')][_0x9cbd('0x6f')]=_0x2b49ff['body'][_0x9cbd('0x70')];_0x4cf579['Imap'][_0x9cbd('0x71')]=_0x4cf579[_0x9cbd('0x3f')]['pass']=_0x2b49ff[_0x9cbd('0x5f')][_0x9cbd('0x72')];}else{_0x4cf579[_0x9cbd('0x3d')][_0x9cbd('0x73')]=_0x4cf579['Smtp']['authentication']=![];}_0x4cf579[_0x9cbd('0x3d')][_0x9cbd('0x74')]=_0x2b49ff[_0x9cbd('0x5f')][_0x9cbd('0x3d')]['host'];_0x4cf579[_0x9cbd('0x3d')]['port']=_0x2b49ff[_0x9cbd('0x5f')]['Imap'][_0x9cbd('0x75')];_0x4cf579[_0x9cbd('0x3f')][_0x9cbd('0x74')]=_0x2b49ff['body'][_0x9cbd('0x3f')]['host'];_0x4cf579['Smtp'][_0x9cbd('0x75')]=_0x2b49ff[_0x9cbd('0x5f')][_0x9cbd('0x3f')]['port'];}else{_0x4cf579[_0x9cbd('0x3d')]['service']=_0x4cf579[_0x9cbd('0x3f')][_0x9cbd('0x76')]=_0x2b49ff[_0x9cbd('0x5f')]['cservice'];_0x4cf579[_0x9cbd('0x3d')][_0x9cbd('0x6f')]=_0x4cf579[_0x9cbd('0x3f')][_0x9cbd('0x6f')]=_0x2b49ff['body'][_0x9cbd('0x70')];_0x4cf579[_0x9cbd('0x3d')][_0x9cbd('0x71')]=_0x4cf579[_0x9cbd('0x3f')][_0x9cbd('0x77')]=_0x2b49ff[_0x9cbd('0x5f')][_0x9cbd('0x72')];}return db[_0x9cbd('0x57')][_0x9cbd('0x63')](_0x4cf579,{'include':[{'model':db[_0x9cbd('0x3e')],'as':'Smtp'},{'model':db[_0x9cbd('0x3c')],'as':_0x9cbd('0x3d')}]})[_0x9cbd('0x1d')](function(_0x5e2def){var _0x305c5e=_0x2b49ff[_0x9cbd('0x6f')][_0x9cbd('0x33')]({'plain':!![]});if(!_0x305c5e)throw new Error(_0x9cbd('0x78'));if(_0x305c5e[_0x9cbd('0x79')]==='user'){var _0x1ef815=_0x5e2def[_0x9cbd('0x33')]({'plain':!![]});return db[_0x9cbd('0x7a')][_0x9cbd('0x5e')]({'where':{'name':_0x9cbd('0x34'),'userProfileId':_0x305c5e[_0x9cbd('0x7b')]},'raw':!![]})[_0x9cbd('0x1d')](function(_0x56577f){if(_0x56577f&&_0x56577f[_0x9cbd('0x7c')]===0x0){return db['UserProfileResource']['create']({'name':_0x1ef815[_0x9cbd('0x39')],'resourceId':_0x1ef815['id'],'type':_0x56577f['name'],'sectionId':_0x56577f['id']},{})[_0x9cbd('0x1d')](function(){return _0x5e2def;});}else{return _0x5e2def;}})[_0x9cbd('0x27')](function(_0x4d99df){logger[_0x9cbd('0x23')]('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x4d99df);throw _0x4d99df;});}return _0x5e2def;})[_0x9cbd('0x1d')](respondWithResult(_0x244eb7,0xc9))[_0x9cbd('0x27')](handleError(_0x244eb7,null));};exports[_0x9cbd('0x7d')]=function(_0x437851,_0x5e9822,_0x1cd00f){return db[_0x9cbd('0x57')]['findOne']({'where':{'id':_0x437851[_0x9cbd('0x5c')]['id']}})['then'](handleEntityNotFound(_0x5e9822,null))['then'](function(_0x17d804){if(_0x17d804){return _0x17d804[_0x9cbd('0x7d')]();}return null;})[_0x9cbd('0x1d')](respondWithResult(_0x5e9822,null))[_0x9cbd('0x27')](handleError(_0x5e9822,null));};exports[_0x9cbd('0x7e')]=function(_0x35ddf8,_0x157375,_0x3b84cb){if(_0x35ddf8[_0x9cbd('0x5f')]['id']){delete _0x35ddf8[_0x9cbd('0x5f')]['id'];}return db[_0x9cbd('0x57')][_0x9cbd('0x5e')]({'where':{'id':_0x35ddf8[_0x9cbd('0x5c')]['id']}})[_0x9cbd('0x1d')](handleEntityNotFound(_0x157375,null))[_0x9cbd('0x1d')](function(_0x1ccc08){if(_0x1ccc08){_0x35ddf8[_0x9cbd('0x5f')][_0x9cbd('0x61')]=_0x1ccc08['id'];return db[_0x9cbd('0x3c')][_0x9cbd('0x63')](_0x35ddf8[_0x9cbd('0x5f')]);}})[_0x9cbd('0x1d')](respondWithResult(_0x157375,null))['catch'](handleError(_0x157375,null));};exports['removeImap']=function(_0x59978d,_0x3edc9b,_0x44c1de){return db[_0x9cbd('0x57')][_0x9cbd('0x65')]({'where':{'id':_0x59978d[_0x9cbd('0x5c')]['id']}})[_0x9cbd('0x1d')](handleEntityNotFound(_0x3edc9b,null))[_0x9cbd('0x1d')](function(_0x52771b){if(_0x52771b){return _0x52771b['setImap'](null);}return null;})['then'](respondWithStatusCode(_0x3edc9b,null))[_0x9cbd('0x27')](handleError(_0x3edc9b,null));};exports[_0x9cbd('0x7f')]=function(_0x4ae61d,_0x1c1f68,_0xed9d54){return db['MailAccount'][_0x9cbd('0x65')]({'where':{'id':_0x4ae61d[_0x9cbd('0x5c')]['id']}})[_0x9cbd('0x1d')](handleEntityNotFound(_0x1c1f68,null))['then'](function(_0x37673d){if(_0x37673d){return _0x37673d['getSmtp']();}return null;})[_0x9cbd('0x1d')](respondWithResult(_0x1c1f68,null))[_0x9cbd('0x27')](handleError(_0x1c1f68,null));};exports['addSmtp']=function(_0x85a8a5,_0xb2723d,_0x361359){if(_0x85a8a5['body']['id']){delete _0x85a8a5[_0x9cbd('0x5f')]['id'];}return db[_0x9cbd('0x57')][_0x9cbd('0x5e')]({'where':{'id':_0x85a8a5[_0x9cbd('0x5c')]['id']}})[_0x9cbd('0x1d')](handleEntityNotFound(_0xb2723d,null))[_0x9cbd('0x1d')](function(_0x568a91){if(_0x568a91){_0x85a8a5[_0x9cbd('0x5f')]['MailAccountId']=_0x568a91['id'];return db[_0x9cbd('0x3e')][_0x9cbd('0x63')](_0x85a8a5[_0x9cbd('0x5f')]);}})[_0x9cbd('0x1d')](respondWithResult(_0xb2723d,null))[_0x9cbd('0x27')](handleError(_0xb2723d,null));};exports['removeSmtp']=function(_0x2e3b08,_0x1883c3,_0x818ab9){return db['MailAccount'][_0x9cbd('0x65')]({'where':{'id':_0x2e3b08[_0x9cbd('0x5c')]['id']}})[_0x9cbd('0x1d')](handleEntityNotFound(_0x1883c3,null))[_0x9cbd('0x1d')](function(_0x4f325c){if(_0x4f325c){return _0x4f325c[_0x9cbd('0x80')](null);}return null;})[_0x9cbd('0x1d')](respondWithStatusCode(_0x1883c3,null))[_0x9cbd('0x27')](handleError(_0x1883c3,null));};exports[_0x9cbd('0x81')]=function(_0x233d13,_0x4ea0ce,_0x3c1770){return db['MailInteraction'][_0x9cbd('0x5e')]({'where':{'id':_0x233d13[_0x9cbd('0x5c')]['id']}})[_0x9cbd('0x1d')](handleEntityNotFound(_0x4ea0ce,null))[_0x9cbd('0x1d')](function(_0x4d1e14){if(_0x4d1e14){return _0x4d1e14[_0x9cbd('0x81')](_0x233d13[_0x9cbd('0x5f')][_0x9cbd('0x68')],_[_0x9cbd('0x82')](_0x233d13[_0x9cbd('0x5f')],[_0x9cbd('0x68'),'id'])||{});}})[_0x9cbd('0x1d')](respondWithResult(_0x4ea0ce,null))['catch'](handleError(_0x4ea0ce,null));};exports[_0x9cbd('0x83')]=function(_0x5364f2,_0xe5fde3,_0xc8c579){var _0x31151d={'raw':![],'where':{}};var _0x25d02c={};var _0x55ffc6={'count':0x0,'rows':[]};return db[_0x9cbd('0x57')]['findOne']({'where':{'id':_0x5364f2[_0x9cbd('0x5c')]['id']}})['then'](handleEntityNotFound(_0xe5fde3,null))[_0x9cbd('0x1d')](function(_0x5acd3d){if(_0x5acd3d){_0x25d02c[_0x9cbd('0x46')]=_[_0x9cbd('0x48')](db[_0x9cbd('0x84')][_0x9cbd('0x5d')]);_0x25d02c[_0x9cbd('0x47')]=_[_0x9cbd('0x48')](_0x5364f2[_0x9cbd('0x47')]);_0x25d02c[_0x9cbd('0x49')]=_['intersection'](_0x25d02c[_0x9cbd('0x46')],_0x25d02c['query']);_0x31151d[_0x9cbd('0x4a')]=_['intersection'](_0x25d02c[_0x9cbd('0x46')],qs[_0x9cbd('0x4c')](_0x5364f2[_0x9cbd('0x47')][_0x9cbd('0x4c')]));_0x31151d['attributes']=_0x31151d['attributes'][_0x9cbd('0x4d')]?_0x31151d[_0x9cbd('0x4a')]:_0x25d02c[_0x9cbd('0x46')];if(!_0x5364f2['query'][_0x9cbd('0x4e')]('nolimit')){_0x31151d[_0x9cbd('0x2c')]=qs[_0x9cbd('0x2c')](_0x5364f2[_0x9cbd('0x47')][_0x9cbd('0x2c')]);_0x31151d[_0x9cbd('0x2b')]=qs['offset'](_0x5364f2[_0x9cbd('0x47')][_0x9cbd('0x2b')]);}_0x31151d[_0x9cbd('0x6a')]=qs[_0x9cbd('0x50')](_0x5364f2['query'][_0x9cbd('0x50')]);_0x31151d['where']=qs[_0x9cbd('0x49')](_[_0x9cbd('0x52')](_0x5364f2[_0x9cbd('0x47')],_0x25d02c['filters']));_0x31151d[_0x9cbd('0x51')][_0x9cbd('0x61')]=_0x5acd3d['id'];if(_0x5364f2[_0x9cbd('0x47')]['filter']){_0x31151d[_0x9cbd('0x51')]=_[_0x9cbd('0x54')](_0x31151d['where'],{'$or':_[_0x9cbd('0x42')](_0x31151d[_0x9cbd('0x4a')],function(_0x26cc6e){var _0x1f5773={};_0x1f5773[_0x26cc6e]={'$like':'%'+_0x5364f2['query'][_0x9cbd('0x53')]+'%'};return _0x1f5773;})});}_0x31151d=_[_0x9cbd('0x54')]({},_0x31151d,_0x5364f2[_0x9cbd('0x56')]);return db[_0x9cbd('0x84')][_0x9cbd('0x2a')]({'where':_0x31151d[_0x9cbd('0x51')]})['then'](function(_0x65878a){_0x55ffc6[_0x9cbd('0x2a')]=_0x65878a;if(_0x5364f2['query'][_0x9cbd('0x58')]){_0x31151d[_0x9cbd('0x59')]=[{'model':db[_0x9cbd('0x85')],'as':_0x9cbd('0x86'),'required':![]},{'model':db['User'],'as':'Owner','attributes':[_0x9cbd('0x39'),'fullname',_0x9cbd('0x87')],'required':![]},{'model':db['Tag'],'as':_0x9cbd('0x88'),'attributes':['id',_0x9cbd('0x39'),'color'],'where':_0x5364f2[_0x9cbd('0x47')][_0x9cbd('0x89')]?{'id':_0x5364f2[_0x9cbd('0x47')][_0x9cbd('0x89')]}:undefined,'required':_0x5364f2[_0x9cbd('0x47')]['tag']?!![]:![]}];}return db[_0x9cbd('0x84')]['findAll'](_0x31151d);})[_0x9cbd('0x1d')](function(_0x541138){_0x55ffc6[_0x9cbd('0x66')]=_0x541138;return _0x55ffc6;});}})[_0x9cbd('0x1d')](respondWithFilteredResult(_0xe5fde3,_0x31151d))['catch'](handleError(_0xe5fde3,null));};exports[_0x9cbd('0x8a')]=function(_0x5257ff,_0x1fa95b,_0x48fcd8){return db[_0x9cbd('0x57')][_0x9cbd('0x65')]({'where':{'id':_0x5257ff['params']['id']}})[_0x9cbd('0x1d')](handleEntityNotFound(_0x1fa95b,null))['then'](function(_0x46041c){if(_0x46041c){return db[_0x9cbd('0x8b')][_0x9cbd('0x8c')](function(_0x448974){return db['MailApplication'][_0x9cbd('0x8d')]({'where':{'MailAccountId':_0x5257ff[_0x9cbd('0x5c')]['id']},'transaction':_0x448974})[_0x9cbd('0x1d')](function(_0x41b0e8){var _0x4ade61=_[_0x9cbd('0x42')](_0x5257ff[_0x9cbd('0x5f')],function(_0xab7d42){_0xab7d42['MailAccountId']=_0x5257ff[_0x9cbd('0x5c')]['id'];return _0xab7d42;});return db['MailApplication'][_0x9cbd('0x8e')](_0x4ade61,{'transaction':_0x448974});});})[_0x9cbd('0x1d')](function(){return db['MailApplication']['findAndCountAll']({'where':{'MailAccountId':_0x5257ff['params']['id']},'order':_0x9cbd('0x8f')});});}})[_0x9cbd('0x1d')](respondWithResult(_0x1fa95b,null))[_0x9cbd('0x27')](handleError(_0x1fa95b,null));};exports[_0x9cbd('0x90')]=function(_0x4c20d9,_0x5d635c,_0x3077e3){var _0x214279={};var _0x583b10={};var _0x38ff07;var _0x20f191;return db[_0x9cbd('0x57')][_0x9cbd('0x65')]({'where':{'id':_0x4c20d9[_0x9cbd('0x5c')]['id']}})[_0x9cbd('0x1d')](handleEntityNotFound(_0x5d635c,null))[_0x9cbd('0x1d')](function(_0x451b10){if(_0x451b10){_0x38ff07=_0x451b10;_0x583b10[_0x9cbd('0x46')]=_[_0x9cbd('0x48')](db[_0x9cbd('0x91')][_0x9cbd('0x5d')]);_0x583b10[_0x9cbd('0x47')]=_['keys'](_0x4c20d9[_0x9cbd('0x47')]);_0x583b10[_0x9cbd('0x49')]=_[_0x9cbd('0x4b')](_0x583b10[_0x9cbd('0x46')],_0x583b10[_0x9cbd('0x47')]);_0x214279[_0x9cbd('0x4a')]=_[_0x9cbd('0x4b')](_0x583b10['model'],qs[_0x9cbd('0x4c')](_0x4c20d9[_0x9cbd('0x47')][_0x9cbd('0x4c')]));_0x214279[_0x9cbd('0x4a')]=_0x214279[_0x9cbd('0x4a')]['length']?_0x214279[_0x9cbd('0x4a')]:_0x583b10['model'];_0x214279[_0x9cbd('0x6a')]=qs[_0x9cbd('0x50')](_0x4c20d9[_0x9cbd('0x47')][_0x9cbd('0x50')]);_0x214279[_0x9cbd('0x51')]=qs[_0x9cbd('0x49')](_['pick'](_0x4c20d9[_0x9cbd('0x47')],_0x583b10[_0x9cbd('0x49')]));if(_0x4c20d9[_0x9cbd('0x47')][_0x9cbd('0x53')]){_0x214279[_0x9cbd('0x51')]=_[_0x9cbd('0x54')](_0x214279[_0x9cbd('0x51')],{'$or':_[_0x9cbd('0x42')](_0x214279[_0x9cbd('0x4a')],function(_0x47d4ad){var _0x690276={};_0x690276[_0x47d4ad]={'$like':'%'+_0x4c20d9[_0x9cbd('0x47')][_0x9cbd('0x53')]+'%'};return _0x690276;})});}_0x214279=_[_0x9cbd('0x54')]({},_0x214279,_0x4c20d9[_0x9cbd('0x56')]);return _0x38ff07['getApplications'](_0x214279);}})['then'](function(_0x5db5ed){if(_0x5db5ed){_0x20f191=_0x5db5ed['length'];if(!_0x4c20d9[_0x9cbd('0x47')][_0x9cbd('0x4e')](_0x9cbd('0x4f'))){_0x214279[_0x9cbd('0x2c')]=qs['limit'](_0x4c20d9[_0x9cbd('0x47')][_0x9cbd('0x2c')]);_0x214279[_0x9cbd('0x2b')]=qs['offset'](_0x4c20d9[_0x9cbd('0x47')]['offset']);}return _0x38ff07[_0x9cbd('0x90')](_0x214279);}})[_0x9cbd('0x1d')](function(_0x1aed30){if(_0x1aed30){return _0x1aed30?{'count':_0x20f191,'rows':_0x1aed30}:null;}})[_0x9cbd('0x1d')](respondWithResult(_0x5d635c,null))[_0x9cbd('0x27')](handleError(_0x5d635c,null));};exports['getMessages']=function(_0x2d1594,_0x51f503,_0x783a79){var _0xa9ce7d={'raw':!![],'where':{}};var _0x13f5f6={};var _0x1c816c={'count':0x0,'rows':[]};return db[_0x9cbd('0x57')][_0x9cbd('0x65')]({'where':{'id':_0x2d1594[_0x9cbd('0x5c')]['id']}})[_0x9cbd('0x1d')](handleEntityNotFound(_0x51f503,null))['then'](function(_0x221334){if(_0x221334){_0x13f5f6[_0x9cbd('0x46')]=_['keys'](db[_0x9cbd('0x92')][_0x9cbd('0x5d')]);_0x13f5f6[_0x9cbd('0x47')]=_[_0x9cbd('0x48')](_0x2d1594['query']);_0x13f5f6[_0x9cbd('0x49')]=_[_0x9cbd('0x4b')](_0x13f5f6[_0x9cbd('0x46')],_0x13f5f6[_0x9cbd('0x47')]);_0xa9ce7d[_0x9cbd('0x4a')]=_[_0x9cbd('0x4b')](_0x13f5f6[_0x9cbd('0x46')],qs[_0x9cbd('0x4c')](_0x2d1594[_0x9cbd('0x47')][_0x9cbd('0x4c')]));_0xa9ce7d['attributes']=_0xa9ce7d[_0x9cbd('0x4a')]['length']?_0xa9ce7d[_0x9cbd('0x4a')]:_0x13f5f6[_0x9cbd('0x46')];if(!_0x2d1594[_0x9cbd('0x47')][_0x9cbd('0x4e')](_0x9cbd('0x4f'))){_0xa9ce7d['limit']=qs[_0x9cbd('0x2c')](_0x2d1594[_0x9cbd('0x47')][_0x9cbd('0x2c')]);_0xa9ce7d[_0x9cbd('0x2b')]=qs[_0x9cbd('0x2b')](_0x2d1594[_0x9cbd('0x47')][_0x9cbd('0x2b')]);}_0xa9ce7d[_0x9cbd('0x6a')]=qs[_0x9cbd('0x50')](_0x2d1594[_0x9cbd('0x47')][_0x9cbd('0x50')]);_0xa9ce7d[_0x9cbd('0x51')]=qs[_0x9cbd('0x49')](_['pick'](_0x2d1594[_0x9cbd('0x47')],_0x13f5f6[_0x9cbd('0x49')]));_0xa9ce7d[_0x9cbd('0x51')][_0x9cbd('0x61')]=_0x221334['id'];if(_0x2d1594['query'][_0x9cbd('0x53')]){_0xa9ce7d[_0x9cbd('0x51')]=_[_0x9cbd('0x54')](_0xa9ce7d[_0x9cbd('0x51')],{'$or':_[_0x9cbd('0x42')](_0xa9ce7d[_0x9cbd('0x4a')],function(_0x2f9230){var _0x193bc2={};_0x193bc2[_0x2f9230]={'$like':'%'+_0x2d1594[_0x9cbd('0x47')][_0x9cbd('0x53')]+'%'};return _0x193bc2;})});}if(_0x2d1594[_0x9cbd('0x47')][_0x9cbd('0x93')]){var _0x1c0c82=_0x2d1594[_0x9cbd('0x47')][_0x9cbd('0x93')][_0x9cbd('0x94')](',');var _0x515651={};_0x515651[_0x1c0c82[0x0]]={'$gte':moment(_0x1c0c82[0x1])[_0x9cbd('0x95')](_0x9cbd('0x96'))};_0xa9ce7d['where']=_[_0x9cbd('0x54')](_0xa9ce7d[_0x9cbd('0x51')],_0x515651);}_0xa9ce7d=_['merge']({},_0xa9ce7d,_0x2d1594[_0x9cbd('0x56')]);return db[_0x9cbd('0x92')][_0x9cbd('0x2a')]({'where':_0xa9ce7d['where']})[_0x9cbd('0x1d')](function(_0x32e0e6){_0x1c816c[_0x9cbd('0x2a')]=_0x32e0e6;if(_0x2d1594[_0x9cbd('0x47')][_0x9cbd('0x58')]){_0xa9ce7d['include']=[{'all':!![]}];}return db[_0x9cbd('0x92')][_0x9cbd('0x5a')](_0xa9ce7d);})[_0x9cbd('0x1d')](function(_0xfa16d){_0x1c816c[_0x9cbd('0x66')]=_0xfa16d;return _0x1c816c;});}})['then'](respondWithFilteredResult(_0x51f503,_0xa9ce7d))['catch'](handleError(_0x51f503,null));};exports[_0x9cbd('0x3a')]=function(_0x3f1846,_0x33519c,_0x30fb4d){var _0x1703c8,_0x46ebbb={},_0x3673ea;if(_0x3f1846[_0x9cbd('0x5f')]['to']){_0x3673ea=_0x3f1846[_0x9cbd('0x5f')]['to'][_0x9cbd('0x94')](',')[0x0];}return db['MailAccount'][_0x9cbd('0x5e')]({'where':{'id':_0x3f1846[_0x9cbd('0x5c')]['id']},'include':[{'model':db[_0x9cbd('0x97')],'as':_0x9cbd('0x98'),'include':[{'model':db[_0x9cbd('0x85')],'as':_0x9cbd('0x99'),'where':{'email':_0x3673ea},'limit':0x1,'order':[[_0x9cbd('0x9a'),_0x9cbd('0x9b')]]}]},{'model':db[_0x9cbd('0x3e')],'as':_0x9cbd('0x3f'),'raw':!![]}]})[_0x9cbd('0x1d')](handleEntityNotFound(_0x33519c,null))[_0x9cbd('0x1d')](function(_0x263a95){if(_0x263a95){_0x1703c8=_0x263a95;if(_0x263a95[_0x9cbd('0x3f')]){if(_[_0x9cbd('0x6d')](_0x3f1846[_0x9cbd('0x5f')][_0x9cbd('0x9c')])){_0x3f1846[_0x9cbd('0x5f')][_0x9cbd('0x9c')]=util['format'](_0x9cbd('0x9d'),_0x263a95[_0x9cbd('0x39')],_0x263a95[_0x9cbd('0x9e')]||_0x263a95[_0x9cbd('0x3f')][_0x9cbd('0x6f')]);}if(_0x3f1846['body'][_0x9cbd('0x9f')]&&_0x3f1846[_0x9cbd('0x5f')][_0x9cbd('0x9f')]['length']){for(var _0x5cb454=0x0;_0x5cb454<_0x3f1846[_0x9cbd('0x5f')][_0x9cbd('0x9f')][_0x9cbd('0x4d')];_0x5cb454+=0x1){_0x3f1846[_0x9cbd('0x5f')][_0x9cbd('0x9f')][_0x5cb454]={'filename':_0x3f1846['body']['attachments'][_0x5cb454][_0x9cbd('0x39')],'path':path[_0x9cbd('0xa0')](config[_0x9cbd('0xa1')],_0x9cbd('0xa2'),_0x3f1846['body'][_0x9cbd('0x9f')][_0x5cb454][_0x9cbd('0xa3')])};}}var _0x1ddc97={'tls':{'rejectUnauthorized':![]}};if(_[_0x9cbd('0x6d')](_0x263a95['Smtp']['service'])){if(_0x263a95[_0x9cbd('0x3f')][_0x9cbd('0x73')]){_0x1ddc97[_0x9cbd('0xa4')]={'user':_0x263a95[_0x9cbd('0x3f')][_0x9cbd('0x6f')],'pass':_0x263a95[_0x9cbd('0x3f')]['pass']};}_0x1ddc97[_0x9cbd('0x74')]=_0x263a95[_0x9cbd('0x3f')][_0x9cbd('0x74')];_0x1ddc97[_0x9cbd('0x75')]=_0x263a95[_0x9cbd('0x3f')]['port'];_0x1ddc97['secure']=_0x263a95[_0x9cbd('0x3f')]['secure'];}else{_0x1ddc97[_0x9cbd('0x76')]=_0x263a95[_0x9cbd('0x3f')][_0x9cbd('0x76')];_0x1ddc97[_0x9cbd('0xa4')]={'user':_0x263a95[_0x9cbd('0x3f')][_0x9cbd('0x6f')],'pass':_0x263a95[_0x9cbd('0x3f')][_0x9cbd('0x77')]};}return respondWithRpcPromise(_0x9cbd('0xa5'),_0x9cbd('0xa6'),{'account':_0x1ddc97,'message':_0x3f1846[_0x9cbd('0x5f')]});}else{throw new Error('List\x20not\x20found');}}})[_0x9cbd('0x1d')](function(_0x15b9b8){if(_0x15b9b8){_0x46ebbb=_0x15b9b8;if(_0x1703c8[_0x9cbd('0x98')]){if(_0x1703c8[_0x9cbd('0x98')][_0x9cbd('0x99')][_0x9cbd('0x4d')]){return _0x1703c8['List'][_0x9cbd('0x99')][0x0];}else{return db[_0x9cbd('0x85')][_0x9cbd('0x63')](_[_0x9cbd('0x17')](_0x3f1846[_0x9cbd('0x5f')],{'firstName':_0x3f1846[_0x9cbd('0x5f')]['to'],'email':_0x3f1846[_0x9cbd('0x5f')]['to'],'phone':_0x3f1846[_0x9cbd('0x5f')]['to'],'ListId':_0x1703c8[_0x9cbd('0x6b')]}));}}else{throw new Error(_0x9cbd('0xa7'));}}})[_0x9cbd('0x1d')](function(_0x141f50){if(_0x141f50){var _0x451f19={'UserId':_0x3f1846[_0x9cbd('0x6f')]['id'],'ContactId':_0x141f50['id'],'MailAccountId':_0x1703c8['id'],'inReplyTo':_0x46ebbb[_0x9cbd('0xa8')],'to':_0x3f1846[_0x9cbd('0x5f')][_0x9cbd('0x9c')],'cc':_0x3f1846[_0x9cbd('0x5f')]['cc'],'subject':_0x3f1846['body'][_0x9cbd('0xa9')],'attach':_0x3f1846[_0x9cbd('0x5f')]['attach'],'firstMsgDirection':_0x9cbd('0xaa'),'lastMsgAt':moment()[_0x9cbd('0x95')]('YYYY-MM-DD\x20HH:mm:ss'),'lastMsgDirection':_0x9cbd('0xaa'),'lastMsgBody':_0x3f1846[_0x9cbd('0x5f')][_0x9cbd('0x5f')],'Messages':[_[_0x9cbd('0x54')](_0x3f1846[_0x9cbd('0x5f')],{'messageId':_0x46ebbb[_0x9cbd('0xa8')],'sentAt':moment()[_0x9cbd('0x95')](_0x9cbd('0x96')),'read':!![],'MailAccountId':_0x1703c8['id'],'UserId':_0x3f1846[_0x9cbd('0x6f')]['id'],'ContactId':_0x141f50['id']})]};if(_0x3f1846[_0x9cbd('0x5f')][_0x9cbd('0xab')]){_0x451f19=_[_0x9cbd('0x54')](_0x451f19,_0x3f1846['body'][_0x9cbd('0xab')]);}return db[_0x9cbd('0x84')]['create'](_0x451f19,{'include':[{'model':db['MailMessage'],'as':'Messages'}]});}})[_0x9cbd('0x1d')](respondWithResult(_0x33519c,null))[_0x9cbd('0x27')](handleError(_0x33519c,null));};exports[_0x9cbd('0xac')]=function(_0x51b23b,_0x443f59,_0x28af1e){return db[_0x9cbd('0x57')]['find']({'where':{'id':_0x51b23b[_0x9cbd('0x5c')]['id']},'include':[{'model':db[_0x9cbd('0x3e')],'as':'Smtp','raw':!![]}]})['then'](handleEntityNotFound(_0x443f59,null))[_0x9cbd('0x1d')](function(_0x35d68a){if(_0x35d68a&&_0x35d68a[_0x9cbd('0x3f')]){var _0x5aca2a={'id':_0x35d68a['id'],'tls':{'rejectUnauthorized':![]}};if(_0x35d68a[_0x9cbd('0x3f')]['service']){_0x5aca2a['service']=_0x35d68a[_0x9cbd('0x3f')][_0x9cbd('0x76')];}else{_0x5aca2a['host']=_0x35d68a[_0x9cbd('0x3f')]['host'];_0x5aca2a[_0x9cbd('0x75')]=_0x35d68a[_0x9cbd('0x3f')][_0x9cbd('0x75')];_0x5aca2a[_0x9cbd('0xad')]=_0x35d68a['Smtp'][_0x9cbd('0xad')];}if(_0x35d68a[_0x9cbd('0x3f')][_0x9cbd('0x73')]){_0x5aca2a[_0x9cbd('0xa4')]={'user':_0x35d68a[_0x9cbd('0x3f')][_0x9cbd('0x6f')],'pass':_0x35d68a[_0x9cbd('0x3f')][_0x9cbd('0x77')]};}return respondWithRpcPromise(_0x9cbd('0xae'),_0x9cbd('0xac'),{'account':_0x5aca2a});}})[_0x9cbd('0x1d')](respondWithResult(_0x443f59,null))[_0x9cbd('0x27')](handleError(_0x443f59,null));};exports[_0x9cbd('0x8d')]=function(_0x40fcc1,_0x2de9d4){return db[_0x9cbd('0x57')]['find']({'where':{'id':_0x40fcc1[_0x9cbd('0x5c')]['id']}})['then'](handleEntityNotFound(_0x2de9d4,null))[_0x9cbd('0x1d')](function(_0x13f5b7){if(_0x13f5b7&&_0x13f5b7[_0x9cbd('0x76')]){throw new db[(_0x9cbd('0x1a'))][(_0x9cbd('0x1b'))](_0x9cbd('0xaf'));}return _0x13f5b7;})[_0x9cbd('0x1d')](removeEntity(_0x2de9d4,null))[_0x9cbd('0x27')](handleError(_0x2de9d4,null));};exports[_0x9cbd('0xb0')]=function(_0x22160a,_0x365502,_0x2b4e3d){return db[_0x9cbd('0x57')][_0x9cbd('0x5e')]({'where':{'id':_0x22160a['params']['id']}})[_0x9cbd('0x1d')](handleEntityNotFound(_0x365502,null))[_0x9cbd('0x1d')](function(_0x1946a0){if(_0x1946a0){return _0x1946a0[_0x9cbd('0xb0')](_0x22160a['body'][_0x9cbd('0x68')],_[_0x9cbd('0x82')](_0x22160a[_0x9cbd('0x5f')],['ids','id'])||{})[_0x9cbd('0xb1')](function(_0xdb0d36){for(var _0x4e92dd=0x0;_0x4e92dd<_0x22160a[_0x9cbd('0x5f')][_0x9cbd('0x68')][_0x9cbd('0x4d')];_0x4e92dd+=0x1){socket[_0x9cbd('0xb2')](_0x9cbd('0xb3'),{'UserId':_0x22160a['body'][_0x9cbd('0x68')][_0x4e92dd],'MailAccountId':_0x22160a[_0x9cbd('0x5c')]['id']});}return _0xdb0d36;});}})[_0x9cbd('0x1d')](respondWithResult(_0x365502,null))['catch'](handleError(_0x365502,null));};exports['removeAgents']=function(_0x254917,_0x3b44b6,_0x2e6b7e){return db['MailAccount']['find']({'where':{'id':_0x254917['params']['id']}})['then'](handleEntityNotFound(_0x3b44b6,null))[_0x9cbd('0x1d')](function(_0x51dde9){if(_0x51dde9){return _0x51dde9[_0x9cbd('0xb4')](_0x254917[_0x9cbd('0x47')][_0x9cbd('0x68')])[_0x9cbd('0x1d')](function(){if(_[_0x9cbd('0xb5')](_0x254917['query'][_0x9cbd('0x68')])){for(var _0x310cdc=0x0;_0x310cdc<_0x254917[_0x9cbd('0x47')]['ids']['length'];_0x310cdc+=0x1){socket['emit'](_0x9cbd('0xb6'),{'UserId':Number(_0x254917['query'][_0x9cbd('0x68')][_0x310cdc]),'MailAccountId':Number(_0x254917[_0x9cbd('0x5c')]['id'])});}}else{socket['emit'](_0x9cbd('0xb6'),{'UserId':Number(_0x254917[_0x9cbd('0x47')]['ids']),'MailAccountId':Number(_0x254917['params']['id'])});}});}})['then'](respondWithStatusCode(_0x3b44b6,null))['catch'](handleError(_0x3b44b6,null));};exports[_0x9cbd('0xb7')]=function(_0x220894,_0x1106b8,_0x38a337){var _0x165b99={};var _0x37ee75={};var _0x41687b;var _0x50f38b;return db[_0x9cbd('0x57')]['findOne']({'where':{'id':_0x220894[_0x9cbd('0x5c')]['id']}})['then'](handleEntityNotFound(_0x1106b8,null))[_0x9cbd('0x1d')](function(_0x5d9802){if(_0x5d9802){_0x41687b=_0x5d9802;_0x37ee75[_0x9cbd('0x46')]=_['keys'](db[_0x9cbd('0xb8')][_0x9cbd('0x5d')]);_0x37ee75[_0x9cbd('0x47')]=_[_0x9cbd('0x48')](_0x220894[_0x9cbd('0x47')]);_0x37ee75[_0x9cbd('0x49')]=_[_0x9cbd('0x4b')](_0x37ee75['model'],_0x37ee75[_0x9cbd('0x47')]);_0x165b99[_0x9cbd('0x4a')]=_[_0x9cbd('0x4b')](_0x37ee75[_0x9cbd('0x46')],qs[_0x9cbd('0x4c')](_0x220894['query'][_0x9cbd('0x4c')]));_0x165b99['attributes']=_0x165b99['attributes']['length']?_0x165b99[_0x9cbd('0x4a')]:_0x37ee75['model'];_0x165b99[_0x9cbd('0x6a')]=qs[_0x9cbd('0x50')](_0x220894[_0x9cbd('0x47')][_0x9cbd('0x50')]);_0x165b99[_0x9cbd('0x51')]=qs[_0x9cbd('0x49')](_[_0x9cbd('0x52')](_0x220894[_0x9cbd('0x47')],_0x37ee75[_0x9cbd('0x49')]));if(_0x220894[_0x9cbd('0x47')][_0x9cbd('0x53')]){_0x165b99[_0x9cbd('0x51')]=_[_0x9cbd('0x54')](_0x165b99[_0x9cbd('0x51')],{'$or':_[_0x9cbd('0x42')](_0x165b99['attributes'],function(_0x1d173f){var _0x5abc80={};_0x5abc80[_0x1d173f]={'$like':'%'+_0x220894[_0x9cbd('0x47')][_0x9cbd('0x53')]+'%'};return _0x5abc80;})});}_0x165b99=_[_0x9cbd('0x54')]({},_0x165b99,_0x220894['options']);return _0x41687b[_0x9cbd('0xb7')](_0x165b99);}})[_0x9cbd('0x1d')](function(_0x1d233b){if(_0x1d233b){_0x50f38b=_0x1d233b[_0x9cbd('0x4d')];if(!_0x220894['query'][_0x9cbd('0x4e')](_0x9cbd('0x4f'))){_0x165b99['limit']=qs['limit'](_0x220894[_0x9cbd('0x47')][_0x9cbd('0x2c')]);_0x165b99[_0x9cbd('0x2b')]=qs[_0x9cbd('0x2b')](_0x220894[_0x9cbd('0x47')][_0x9cbd('0x2b')]);}return _0x41687b[_0x9cbd('0xb7')](_0x165b99);}})[_0x9cbd('0x1d')](function(_0x522537){if(_0x522537){return _0x522537?{'count':_0x50f38b,'rows':_0x522537}:null;}})['then'](respondWithResult(_0x1106b8,null))[_0x9cbd('0x27')](handleError(_0x1106b8,null));};