Built motion from commit (unavailable).|2.5.8
[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 _0xcb5d=['internal','Tag','Tags','color','tag','addApplications','sequelize','transaction','MailApplication','priority','getApplications','getMessages','MailMessage','$gte','split','format','YYYY-MM-DD\x20HH:mm:ss','List','Contacts','updatedAt','DESC','from','attachments','join','server/files/attachments','basename','auth','SendMail','List\x20not\x20found','attach','out','messageId','Interaction','Messages','verifySmtp','secure','ValidationError','You\x20can\x27t\x20remove\x20the\x20mail\x20service\x20account','addAgents','spread','emit','removeAgents','userMailAccount:remove','getAgents','html-pdf','eml-format','zip-dir','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','ejs','lodash','crypto','jsforce','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','defaults','redis','./mailAccount.socket','register','jayson/promise','client','http','request','then','info','MailAccount,\x20%s,\x20%s','request\x20sent','debug','MailAccount,\x20%s,\x20%s,\x20%s','stringify','error','code','message','result','catch','status','json','count','offset','limit','set','reject','save','update','destroy','get','MailAccounts','sendStatus','stack','name','send','index','MailServerIn','MailServerOut','Pause','mandatoryDispositionPause','map','rawAttributes','fieldName','type','key','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','pick','where','merge','filter','options','MailAccount','includeAll','include','findAll','rows','params','Imap','Smtp','find','body','describe','addDisposition','Disposition','create','getDispositions','findOne','MailAccountId','removeDispositions','ids','addAnswer','CannedAnswer','getAnswers','removeAnswers','email','ListId','isNil','active','description','cservice','cauthentication','user','password','cpassword','authentication','host','port','service','cuser','pass','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','userProfileId','autoAssociation','UserProfileResource','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','getImap','addImap','removeImap','setImap','getSmtp','addSmtp','setSmtp','MailInteraction','addInteraction','getInteractions','CmContact','Contact','User','fullname'];(function(_0x42cae2,_0x284ef8){var _0x5f256f=function(_0x41abc8){while(--_0x41abc8){_0x42cae2['push'](_0x42cae2['shift']());}};_0x5f256f(++_0x284ef8);}(_0xcb5d,0x1aa));var _0xdcb5=function(_0x487b0c,_0x14ff74){_0x487b0c=_0x487b0c-0x0;var _0x1adbdc=_0xcb5d[_0x487b0c];return _0x1adbdc;};'use strict';var pdf=require(_0xdcb5('0x0'));var emlformat=require(_0xdcb5('0x1'));var rimraf=require('rimraf');var zipdir=require(_0xdcb5('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0xdcb5('0x3'));var moment=require(_0xdcb5('0x4'));var BPromise=require(_0xdcb5('0x5'));var Mustache=require(_0xdcb5('0x6'));var util=require(_0xdcb5('0x7'));var path=require(_0xdcb5('0x8'));var sox=require(_0xdcb5('0x9'));var csv=require(_0xdcb5('0xa'));var ejs=require(_0xdcb5('0xb'));var fs=require('fs');var _=require(_0xdcb5('0xc'));var squel=require('squel');var crypto=require(_0xdcb5('0xd'));var jsforce=require(_0xdcb5('0xe'));var deskjs=require('desk.js');var toCsv=require(_0xdcb5('0xa'));var querystring=require('querystring');var Papa=require(_0xdcb5('0xf'));var Redis=require(_0xdcb5('0x10'));var authService=require('../../components/auth/service');var qs=require(_0xdcb5('0x11'));var as=require(_0xdcb5('0x12'));var hardwareService=require('../../config/license/hardware');var logger=require(_0xdcb5('0x13'))('api');var utils=require(_0xdcb5('0x14'));var config=require(_0xdcb5('0x15'));var licenseUtil=require(_0xdcb5('0x16'));var db=require(_0xdcb5('0x17'))['db'];config['redis']=_[_0xdcb5('0x18')](config[_0xdcb5('0x19')],{'host':'localhost','port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0xdcb5('0x19')]));require(_0xdcb5('0x1a'))[_0xdcb5('0x1b')](socket);var jayson=require(_0xdcb5('0x1c'));var client=jayson[_0xdcb5('0x1d')][_0xdcb5('0x1e')]({'port':0x232b});function respondWithRpcPromise(_0x5860e3,_0x142a1c,_0x3e613c,_0x3eb5bc){return new BPromise(function(_0x4772f1,_0x28f5be){var _0x47ac36=_0x3eb5bc||client;return _0x47ac36[_0xdcb5('0x1f')](_0x5860e3,_0x3e613c)[_0xdcb5('0x20')](function(_0x3d240f){logger[_0xdcb5('0x21')](_0xdcb5('0x22'),_0x142a1c,_0xdcb5('0x23'));logger[_0xdcb5('0x24')](_0xdcb5('0x25'),_0x142a1c,'request\x20sent',JSON[_0xdcb5('0x26')](_0x3d240f));if(_0x3d240f[_0xdcb5('0x27')]){if(_0x3d240f['error'][_0xdcb5('0x28')]===0x1f4){logger[_0xdcb5('0x27')](_0xdcb5('0x22'),_0x142a1c,_0x3d240f[_0xdcb5('0x27')][_0xdcb5('0x29')]);return _0x28f5be(_0x3d240f[_0xdcb5('0x27')][_0xdcb5('0x29')]);}logger[_0xdcb5('0x27')]('MailAccount,\x20%s,\x20%s',_0x142a1c,_0x3d240f['error'][_0xdcb5('0x29')]);return _0x4772f1(_0x3d240f[_0xdcb5('0x27')][_0xdcb5('0x29')]);}else{logger[_0xdcb5('0x21')](_0xdcb5('0x22'),_0x142a1c,_0xdcb5('0x23'));_0x4772f1(_0x3d240f[_0xdcb5('0x2a')]['message']);}})[_0xdcb5('0x2b')](function(_0x15a9d5){logger[_0xdcb5('0x27')](_0xdcb5('0x22'),_0x142a1c,_0x15a9d5);_0x28f5be(_0x15a9d5);});});}function respondWithStatusCode(_0x2bdbca,_0x41c665){_0x41c665=_0x41c665||0xcc;return function(_0x16d9c9){if(_0x16d9c9){return _0x2bdbca['sendStatus'](_0x41c665);}return _0x2bdbca[_0xdcb5('0x2c')](_0x41c665)['end']();};}function respondWithResult(_0x21a9fe,_0x416704){_0x416704=_0x416704||0xc8;return function(_0x4f5aad){if(_0x4f5aad){return _0x21a9fe[_0xdcb5('0x2c')](_0x416704)[_0xdcb5('0x2d')](_0x4f5aad);}};}function respondWithFilteredResult(_0x865179,_0x34d1bf){return function(_0x255a92){if(_0x255a92){var _0xa6a3=_0x255a92[_0xdcb5('0x2e')],_0x25d851=_0x34d1bf[_0xdcb5('0x2f')],_0x1b0051=_0x34d1bf[_0xdcb5('0x2f')]+_0x34d1bf[_0xdcb5('0x30')],_0x21574b;if(_0x1b0051>=_0xa6a3){_0x1b0051=_0xa6a3;_0x21574b=0xc8;}else{_0x21574b=0xce;}_0x865179['status'](_0x21574b);return _0x865179[_0xdcb5('0x31')]('Content-Range',_0x25d851+'-'+_0x1b0051+'/'+_0xa6a3)[_0xdcb5('0x2d')](_0x255a92);}return null;};}function patchUpdates(_0x21a68f){return function(_0x38fe77){try{jsonpatch['apply'](_0x38fe77,_0x21a68f,!![]);}catch(_0x49c51b){return BPromise[_0xdcb5('0x32')](_0x49c51b);}return _0x38fe77[_0xdcb5('0x33')]();};}function saveUpdates(_0x300d95,_0x2480eb){return function(_0x47cdcf){if(_0x47cdcf){return _0x47cdcf[_0xdcb5('0x34')](_0x300d95)[_0xdcb5('0x20')](function(_0x2f079f){return _0x2f079f;});}return null;};}function removeEntity(_0x4fdd10,_0x49a746){return function(_0x33d3ba){if(_0x33d3ba){return _0x33d3ba[_0xdcb5('0x35')]()[_0xdcb5('0x20')](function(){var _0x1de01c=_0x33d3ba[_0xdcb5('0x36')]({'plain':!![]});var _0x1ab338=_0xdcb5('0x37');return db['UserProfileResource'][_0xdcb5('0x35')]({'where':{'type':_0x1ab338,'resourceId':_0x1de01c['id']}})[_0xdcb5('0x20')](function(){return _0x33d3ba;});})['then'](function(){_0x4fdd10[_0xdcb5('0x2c')](0xcc)['end']();});}};}function handleEntityNotFound(_0x1eeb59,_0x30d19a){return function(_0x57f90b){if(!_0x57f90b){_0x1eeb59[_0xdcb5('0x38')](0x194);}return _0x57f90b;};}function handleError(_0x55ecf4,_0x239647){_0x239647=_0x239647||0x1f4;return function(_0x2ae9e2){logger['error'](_0x2ae9e2[_0xdcb5('0x39')]);if(_0x2ae9e2[_0xdcb5('0x3a')]){delete _0x2ae9e2[_0xdcb5('0x3a')];}_0x55ecf4[_0xdcb5('0x2c')](_0x239647)[_0xdcb5('0x3b')](_0x2ae9e2);};}exports[_0xdcb5('0x3c')]=function(_0x264d2a,_0x352b3f){var _0x218b01={'include':[{'model':db[_0xdcb5('0x3d')],'as':'Imap'},{'model':db[_0xdcb5('0x3e')],'as':'Smtp'},{'model':db[_0xdcb5('0x3f')],'as':_0xdcb5('0x40')}]},_0x47b055={},_0x1b48d1={'count':0x0,'rows':[]};var _0x41b646=_[_0xdcb5('0x41')](db['MailAccount'][_0xdcb5('0x42')],function(_0xea4087){return{'name':_0xea4087[_0xdcb5('0x43')],'type':_0xea4087[_0xdcb5('0x44')][_0xdcb5('0x45')]};});_0x47b055[_0xdcb5('0x46')]=_[_0xdcb5('0x41')](_0x41b646,_0xdcb5('0x3a'));_0x47b055[_0xdcb5('0x47')]=_[_0xdcb5('0x48')](_0x264d2a[_0xdcb5('0x47')]);_0x47b055[_0xdcb5('0x49')]=_[_0xdcb5('0x4a')](_0x47b055['model'],_0x47b055['query']);_0x218b01[_0xdcb5('0x4b')]=_[_0xdcb5('0x4a')](_0x47b055['model'],qs['fields'](_0x264d2a['query'][_0xdcb5('0x4c')]));_0x218b01[_0xdcb5('0x4b')]=_0x218b01[_0xdcb5('0x4b')][_0xdcb5('0x4d')]?_0x218b01[_0xdcb5('0x4b')]:_0x47b055[_0xdcb5('0x46')];if(!_0x264d2a[_0xdcb5('0x47')][_0xdcb5('0x4e')](_0xdcb5('0x4f'))){_0x218b01[_0xdcb5('0x30')]=qs[_0xdcb5('0x30')](_0x264d2a[_0xdcb5('0x47')][_0xdcb5('0x30')]);_0x218b01[_0xdcb5('0x2f')]=qs['offset'](_0x264d2a[_0xdcb5('0x47')]['offset']);}_0x218b01[_0xdcb5('0x50')]=qs[_0xdcb5('0x51')](_0x264d2a[_0xdcb5('0x47')][_0xdcb5('0x51')]);_0x218b01['where']=qs[_0xdcb5('0x49')](_[_0xdcb5('0x52')](_0x264d2a[_0xdcb5('0x47')],_0x47b055[_0xdcb5('0x49')]),_0x41b646);if(_0x264d2a['query']['filter']){_0x218b01[_0xdcb5('0x53')]=_[_0xdcb5('0x54')](_0x218b01[_0xdcb5('0x53')],{'$or':_['map'](_0x41b646,function(_0x150c7a){if(_0x150c7a[_0xdcb5('0x44')]!=='VIRTUAL'){var _0x246c83={};_0x246c83[_0x150c7a[_0xdcb5('0x3a')]]={'$like':'%'+_0x264d2a[_0xdcb5('0x47')][_0xdcb5('0x55')]+'%'};return _0x246c83;}})});}_0x218b01=_[_0xdcb5('0x54')]({},_0x218b01,_0x264d2a[_0xdcb5('0x56')]);var _0x2a3ec2={'where':_0x218b01[_0xdcb5('0x53')]};return db[_0xdcb5('0x57')][_0xdcb5('0x2e')](_0x2a3ec2)['then'](function(_0x39f23b){_0x1b48d1[_0xdcb5('0x2e')]=_0x39f23b;if(_0x264d2a[_0xdcb5('0x47')][_0xdcb5('0x58')]){_0x218b01[_0xdcb5('0x59')]=[{'all':!![]}];}return db[_0xdcb5('0x57')][_0xdcb5('0x5a')](_0x218b01);})['then'](function(_0x32a111){_0x1b48d1[_0xdcb5('0x5b')]=_0x32a111;return _0x1b48d1;})[_0xdcb5('0x20')](respondWithFilteredResult(_0x352b3f,_0x218b01))[_0xdcb5('0x2b')](handleError(_0x352b3f,null));};exports['show']=function(_0x497494,_0x31cc28){var _0x57a5fb={'raw':![],'where':{'id':_0x497494[_0xdcb5('0x5c')]['id']},'include':[{'model':db[_0xdcb5('0x3d')],'as':_0xdcb5('0x5d')},{'model':db[_0xdcb5('0x3e')],'as':_0xdcb5('0x5e')},{'model':db[_0xdcb5('0x3f')],'as':'mandatoryDispositionPause'}]},_0x46ad08={};_0x46ad08[_0xdcb5('0x46')]=_['keys'](db[_0xdcb5('0x57')][_0xdcb5('0x42')]);_0x46ad08[_0xdcb5('0x47')]=_[_0xdcb5('0x48')](_0x497494['query']);_0x46ad08['filters']=_[_0xdcb5('0x4a')](_0x46ad08[_0xdcb5('0x46')],_0x46ad08[_0xdcb5('0x47')]);_0x57a5fb[_0xdcb5('0x4b')]=_[_0xdcb5('0x4a')](_0x46ad08[_0xdcb5('0x46')],qs[_0xdcb5('0x4c')](_0x497494[_0xdcb5('0x47')][_0xdcb5('0x4c')]));_0x57a5fb[_0xdcb5('0x4b')]=_0x57a5fb[_0xdcb5('0x4b')][_0xdcb5('0x4d')]?_0x57a5fb[_0xdcb5('0x4b')]:_0x46ad08[_0xdcb5('0x46')];if(_0x497494['query']['includeAll']){_0x57a5fb[_0xdcb5('0x59')]=[{'all':!![]}];}_0x57a5fb=_[_0xdcb5('0x54')]({},_0x57a5fb,_0x497494[_0xdcb5('0x56')]);return db[_0xdcb5('0x57')][_0xdcb5('0x5f')](_0x57a5fb)[_0xdcb5('0x20')](handleEntityNotFound(_0x31cc28,null))[_0xdcb5('0x20')](respondWithResult(_0x31cc28,null))['catch'](handleError(_0x31cc28,null));};exports['update']=function(_0x4243e5,_0x3959a8){if(_0x4243e5[_0xdcb5('0x60')]['id']){delete _0x4243e5['body']['id'];}return db[_0xdcb5('0x57')]['find']({'where':{'id':_0x4243e5['params']['id']},'include':[{'model':db[_0xdcb5('0x3d')],'as':_0xdcb5('0x5d')},{'model':db[_0xdcb5('0x3e')],'as':_0xdcb5('0x5e')},{'model':db[_0xdcb5('0x3f')],'as':_0xdcb5('0x40')}]})[_0xdcb5('0x20')](handleEntityNotFound(_0x3959a8,null))[_0xdcb5('0x20')](saveUpdates(_0x4243e5[_0xdcb5('0x60')],null))[_0xdcb5('0x20')](function(_0x33688c){if(_0x33688c&&_0x4243e5[_0xdcb5('0x60')]['Imap']){return db[_0xdcb5('0x3d')]['update'](_0x4243e5['body'][_0xdcb5('0x5d')],{'where':{'MailAccountId':_0x33688c['id']}})[_0xdcb5('0x20')](function(){return _0x33688c;});}return _0x33688c;})[_0xdcb5('0x20')](function(_0x12ab40){if(_0x12ab40&&_0x4243e5[_0xdcb5('0x60')]['Smtp']){return db[_0xdcb5('0x3e')]['update'](_0x4243e5[_0xdcb5('0x60')][_0xdcb5('0x5e')],{'where':{'MailAccountId':_0x12ab40['id']}})[_0xdcb5('0x20')](function(){return _0x12ab40;});}return _0x12ab40;})['then'](respondWithResult(_0x3959a8,null))[_0xdcb5('0x2b')](handleError(_0x3959a8,null));};exports['describe']=function(_0x3bd8d7,_0x404261){return db[_0xdcb5('0x57')][_0xdcb5('0x61')]()[_0xdcb5('0x20')](respondWithResult(_0x404261,null))[_0xdcb5('0x2b')](handleError(_0x404261,null));};exports[_0xdcb5('0x62')]=function(_0x96b96c,_0x149185,_0x21b5ca){if(_0x96b96c[_0xdcb5('0x60')]['id']){delete _0x96b96c[_0xdcb5('0x60')]['id'];}return db['MailAccount']['find']({'where':{'id':_0x96b96c[_0xdcb5('0x5c')]['id']}})[_0xdcb5('0x20')](handleEntityNotFound(_0x149185,null))[_0xdcb5('0x20')](function(_0x5a98b3){if(_0x5a98b3){_0x96b96c[_0xdcb5('0x60')]['MailAccountId']=_0x5a98b3['id'];return db[_0xdcb5('0x63')][_0xdcb5('0x64')](_0x96b96c[_0xdcb5('0x60')]);}})[_0xdcb5('0x20')](respondWithResult(_0x149185,null))[_0xdcb5('0x2b')](handleError(_0x149185,null));};exports[_0xdcb5('0x65')]=function(_0x1141b2,_0x3df083,_0x59ad41){var _0x9350e7={'raw':![],'where':{}};var _0x5bd2bc={};var _0x1860be={'count':0x0,'rows':[]};return db[_0xdcb5('0x57')][_0xdcb5('0x66')]({'where':{'id':_0x1141b2[_0xdcb5('0x5c')]['id']}})[_0xdcb5('0x20')](handleEntityNotFound(_0x3df083,null))[_0xdcb5('0x20')](function(_0x8d15c5){if(_0x8d15c5){_0x5bd2bc['model']=_[_0xdcb5('0x48')](db[_0xdcb5('0x63')][_0xdcb5('0x42')]);_0x5bd2bc[_0xdcb5('0x47')]=_[_0xdcb5('0x48')](_0x1141b2[_0xdcb5('0x47')]);_0x5bd2bc['filters']=_[_0xdcb5('0x4a')](_0x5bd2bc[_0xdcb5('0x46')],_0x5bd2bc[_0xdcb5('0x47')]);_0x9350e7[_0xdcb5('0x4b')]=_[_0xdcb5('0x4a')](_0x5bd2bc[_0xdcb5('0x46')],qs[_0xdcb5('0x4c')](_0x1141b2[_0xdcb5('0x47')]['fields']));_0x9350e7[_0xdcb5('0x4b')]=_0x9350e7[_0xdcb5('0x4b')][_0xdcb5('0x4d')]?_0x9350e7[_0xdcb5('0x4b')]:_0x5bd2bc[_0xdcb5('0x46')];if(!_0x1141b2[_0xdcb5('0x47')]['hasOwnProperty']('nolimit')){_0x9350e7['limit']=qs[_0xdcb5('0x30')](_0x1141b2[_0xdcb5('0x47')][_0xdcb5('0x30')]);_0x9350e7['offset']=qs[_0xdcb5('0x2f')](_0x1141b2['query'][_0xdcb5('0x2f')]);}_0x9350e7[_0xdcb5('0x50')]=qs['sort'](_0x1141b2[_0xdcb5('0x47')][_0xdcb5('0x51')]);_0x9350e7['where']=qs['filters'](_[_0xdcb5('0x52')](_0x1141b2[_0xdcb5('0x47')],_0x5bd2bc[_0xdcb5('0x49')]));_0x9350e7['where'][_0xdcb5('0x67')]=_0x8d15c5['id'];if(_0x1141b2['query'][_0xdcb5('0x55')]){_0x9350e7[_0xdcb5('0x53')]=_[_0xdcb5('0x54')](_0x9350e7[_0xdcb5('0x53')],{'$or':_['map'](_0x9350e7[_0xdcb5('0x4b')],function(_0x1e772d){var _0x26d81c={};_0x26d81c[_0x1e772d]={'$like':'%'+_0x1141b2[_0xdcb5('0x47')][_0xdcb5('0x55')]+'%'};return _0x26d81c;})});}_0x9350e7=_[_0xdcb5('0x54')]({},_0x9350e7,_0x1141b2[_0xdcb5('0x56')]);return db['Disposition']['count']({'where':_0x9350e7[_0xdcb5('0x53')]})[_0xdcb5('0x20')](function(_0x3e257b){_0x1860be['count']=_0x3e257b;if(_0x1141b2['query'][_0xdcb5('0x58')]){_0x9350e7[_0xdcb5('0x59')]=[{'all':!![]}];}return db[_0xdcb5('0x63')][_0xdcb5('0x5a')](_0x9350e7);})[_0xdcb5('0x20')](function(_0x47f2d6){_0x1860be[_0xdcb5('0x5b')]=_0x47f2d6;return _0x1860be;});}})[_0xdcb5('0x20')](respondWithFilteredResult(_0x3df083,_0x9350e7))[_0xdcb5('0x2b')](handleError(_0x3df083,null));};exports[_0xdcb5('0x68')]=function(_0x420817,_0x37a44a,_0x324808){return db[_0xdcb5('0x57')][_0xdcb5('0x5f')]({'where':{'id':_0x420817['params']['id']}})['then'](handleEntityNotFound(_0x37a44a,null))[_0xdcb5('0x20')](function(_0x54638b){if(_0x54638b){return _0x54638b[_0xdcb5('0x68')](_0x420817[_0xdcb5('0x47')][_0xdcb5('0x69')]);}})[_0xdcb5('0x20')](respondWithStatusCode(_0x37a44a,null))[_0xdcb5('0x2b')](handleError(_0x37a44a,null));};exports[_0xdcb5('0x6a')]=function(_0x744206,_0x295765,_0x3ba711){if(_0x744206['body']['id']){delete _0x744206['body']['id'];}return db[_0xdcb5('0x57')][_0xdcb5('0x5f')]({'where':{'id':_0x744206[_0xdcb5('0x5c')]['id']}})['then'](handleEntityNotFound(_0x295765,null))['then'](function(_0xac7e37){if(_0xac7e37){_0x744206['body'][_0xdcb5('0x67')]=_0xac7e37['id'];return db[_0xdcb5('0x6b')][_0xdcb5('0x64')](_0x744206[_0xdcb5('0x60')]);}})['then'](respondWithResult(_0x295765,null))[_0xdcb5('0x2b')](handleError(_0x295765,null));};exports[_0xdcb5('0x6c')]=function(_0x54f27b,_0x30f535,_0x412b9a){var _0x324720={'raw':![],'where':{}};var _0x5bde32={};var _0x54f844={'count':0x0,'rows':[]};return db[_0xdcb5('0x57')]['findOne']({'where':{'id':_0x54f27b['params']['id']}})[_0xdcb5('0x20')](handleEntityNotFound(_0x30f535,null))[_0xdcb5('0x20')](function(_0x563c8a){if(_0x563c8a){_0x5bde32[_0xdcb5('0x46')]=_[_0xdcb5('0x48')](db[_0xdcb5('0x6b')][_0xdcb5('0x42')]);_0x5bde32[_0xdcb5('0x47')]=_['keys'](_0x54f27b['query']);_0x5bde32[_0xdcb5('0x49')]=_[_0xdcb5('0x4a')](_0x5bde32['model'],_0x5bde32[_0xdcb5('0x47')]);_0x324720[_0xdcb5('0x4b')]=_['intersection'](_0x5bde32[_0xdcb5('0x46')],qs[_0xdcb5('0x4c')](_0x54f27b[_0xdcb5('0x47')][_0xdcb5('0x4c')]));_0x324720[_0xdcb5('0x4b')]=_0x324720[_0xdcb5('0x4b')]['length']?_0x324720[_0xdcb5('0x4b')]:_0x5bde32[_0xdcb5('0x46')];if(!_0x54f27b[_0xdcb5('0x47')][_0xdcb5('0x4e')](_0xdcb5('0x4f'))){_0x324720[_0xdcb5('0x30')]=qs[_0xdcb5('0x30')](_0x54f27b[_0xdcb5('0x47')][_0xdcb5('0x30')]);_0x324720[_0xdcb5('0x2f')]=qs[_0xdcb5('0x2f')](_0x54f27b[_0xdcb5('0x47')][_0xdcb5('0x2f')]);}_0x324720[_0xdcb5('0x50')]=qs[_0xdcb5('0x51')](_0x54f27b['query'][_0xdcb5('0x51')]);_0x324720[_0xdcb5('0x53')]=qs[_0xdcb5('0x49')](_[_0xdcb5('0x52')](_0x54f27b[_0xdcb5('0x47')],_0x5bde32[_0xdcb5('0x49')]));_0x324720[_0xdcb5('0x53')][_0xdcb5('0x67')]=_0x563c8a['id'];if(_0x54f27b[_0xdcb5('0x47')]['filter']){_0x324720[_0xdcb5('0x53')]=_[_0xdcb5('0x54')](_0x324720[_0xdcb5('0x53')],{'$or':_[_0xdcb5('0x41')](_0x324720[_0xdcb5('0x4b')],function(_0x315d37){var _0xc8db79={};_0xc8db79[_0x315d37]={'$like':'%'+_0x54f27b[_0xdcb5('0x47')][_0xdcb5('0x55')]+'%'};return _0xc8db79;})});}_0x324720=_[_0xdcb5('0x54')]({},_0x324720,_0x54f27b[_0xdcb5('0x56')]);return db['CannedAnswer'][_0xdcb5('0x2e')]({'where':_0x324720[_0xdcb5('0x53')]})['then'](function(_0x434388){_0x54f844[_0xdcb5('0x2e')]=_0x434388;if(_0x54f27b[_0xdcb5('0x47')][_0xdcb5('0x58')]){_0x324720[_0xdcb5('0x59')]=[{'all':!![]}];}return db[_0xdcb5('0x6b')][_0xdcb5('0x5a')](_0x324720);})[_0xdcb5('0x20')](function(_0x96dc2a){_0x54f844[_0xdcb5('0x5b')]=_0x96dc2a;return _0x54f844;});}})[_0xdcb5('0x20')](respondWithFilteredResult(_0x30f535,_0x324720))[_0xdcb5('0x2b')](handleError(_0x30f535,null));};exports[_0xdcb5('0x6d')]=function(_0x1c9d3f,_0x29dbae,_0x590159){return db['MailAccount']['find']({'where':{'id':_0x1c9d3f[_0xdcb5('0x5c')]['id']}})[_0xdcb5('0x20')](handleEntityNotFound(_0x29dbae,null))[_0xdcb5('0x20')](function(_0x924086){if(_0x924086){return _0x924086['removeAnswers'](_0x1c9d3f[_0xdcb5('0x47')][_0xdcb5('0x69')]);}})['then'](respondWithStatusCode(_0x29dbae,null))['catch'](handleError(_0x29dbae,null));};exports[_0xdcb5('0x64')]=function(_0x4ed080,_0x10571e){var _0x12c11a={'name':_0x4ed080['body']['name'],'key':_0x4ed080[_0xdcb5('0x60')][_0xdcb5('0x45')],'email':_0x4ed080[_0xdcb5('0x60')][_0xdcb5('0x6e')],'ListId':_0x4ed080[_0xdcb5('0x60')][_0xdcb5('0x6f')],'active':!_[_0xdcb5('0x70')](_0x4ed080['body'][_0xdcb5('0x71')])?_0x4ed080[_0xdcb5('0x60')]['active']:!![],'description':_0x4ed080['body'][_0xdcb5('0x72')]||null,'Imap':{},'Smtp':{}};if(_[_0xdcb5('0x70')](_0x4ed080['body'][_0xdcb5('0x73')])){if(_0x4ed080[_0xdcb5('0x60')][_0xdcb5('0x74')]){_0x12c11a['Imap'][_0xdcb5('0x75')]=_0x12c11a['Smtp'][_0xdcb5('0x75')]=_0x4ed080['body']['cuser'];_0x12c11a[_0xdcb5('0x5d')][_0xdcb5('0x76')]=_0x12c11a[_0xdcb5('0x5e')]['pass']=_0x4ed080[_0xdcb5('0x60')][_0xdcb5('0x77')];}else{_0x12c11a[_0xdcb5('0x5d')][_0xdcb5('0x78')]=_0x12c11a[_0xdcb5('0x5e')][_0xdcb5('0x78')]=![];}_0x12c11a[_0xdcb5('0x5d')][_0xdcb5('0x79')]=_0x4ed080[_0xdcb5('0x60')][_0xdcb5('0x5d')]['host'];_0x12c11a[_0xdcb5('0x5d')]['port']=_0x4ed080['body']['Imap'][_0xdcb5('0x7a')];_0x12c11a[_0xdcb5('0x5e')][_0xdcb5('0x79')]=_0x4ed080['body'][_0xdcb5('0x5e')][_0xdcb5('0x79')];_0x12c11a[_0xdcb5('0x5e')]['port']=_0x4ed080[_0xdcb5('0x60')][_0xdcb5('0x5e')][_0xdcb5('0x7a')];}else{_0x12c11a['Imap'][_0xdcb5('0x7b')]=_0x12c11a['Smtp'][_0xdcb5('0x7b')]=_0x4ed080[_0xdcb5('0x60')]['cservice'];_0x12c11a[_0xdcb5('0x5d')]['user']=_0x12c11a[_0xdcb5('0x5e')][_0xdcb5('0x75')]=_0x4ed080[_0xdcb5('0x60')][_0xdcb5('0x7c')];_0x12c11a[_0xdcb5('0x5d')][_0xdcb5('0x76')]=_0x12c11a['Smtp'][_0xdcb5('0x7d')]=_0x4ed080[_0xdcb5('0x60')]['cpassword'];}return db['MailAccount'][_0xdcb5('0x64')](_0x12c11a,{'include':[{'model':db[_0xdcb5('0x3e')],'as':_0xdcb5('0x5e')},{'model':db[_0xdcb5('0x3d')],'as':_0xdcb5('0x5d')}]})[_0xdcb5('0x20')](function(_0x5cfeeb){var _0xc9ad0=_0x4ed080['user'][_0xdcb5('0x36')]({'plain':!![]});if(!_0xc9ad0)throw new Error(_0xdcb5('0x7e'));if(_0xc9ad0[_0xdcb5('0x7f')]===_0xdcb5('0x75')){var _0x179fc2=_0x5cfeeb[_0xdcb5('0x36')]({'plain':!![]});return db[_0xdcb5('0x80')][_0xdcb5('0x5f')]({'where':{'name':_0xdcb5('0x37'),'userProfileId':_0xc9ad0[_0xdcb5('0x81')]},'raw':!![]})['then'](function(_0x277c5f){if(_0x277c5f&&_0x277c5f[_0xdcb5('0x82')]===0x0){return db[_0xdcb5('0x83')][_0xdcb5('0x64')]({'name':_0x179fc2[_0xdcb5('0x3a')],'resourceId':_0x179fc2['id'],'type':_0x277c5f[_0xdcb5('0x3a')],'sectionId':_0x277c5f['id']},{})[_0xdcb5('0x20')](function(){return _0x5cfeeb;});}else{return _0x5cfeeb;}})['catch'](function(_0x59bee4){logger['error'](_0xdcb5('0x84'),_0x59bee4);throw _0x59bee4;});}return _0x5cfeeb;})[_0xdcb5('0x20')](respondWithResult(_0x10571e,0xc9))[_0xdcb5('0x2b')](handleError(_0x10571e,null));};exports['getImap']=function(_0x525236,_0x59a809,_0x56fb62){return db['MailAccount'][_0xdcb5('0x66')]({'where':{'id':_0x525236[_0xdcb5('0x5c')]['id']}})[_0xdcb5('0x20')](handleEntityNotFound(_0x59a809,null))[_0xdcb5('0x20')](function(_0x4fb5f3){if(_0x4fb5f3){return _0x4fb5f3[_0xdcb5('0x85')]();}return null;})['then'](respondWithResult(_0x59a809,null))['catch'](handleError(_0x59a809,null));};exports[_0xdcb5('0x86')]=function(_0xa0bf4b,_0x24e631,_0x9a6082){if(_0xa0bf4b[_0xdcb5('0x60')]['id']){delete _0xa0bf4b['body']['id'];}return db[_0xdcb5('0x57')][_0xdcb5('0x5f')]({'where':{'id':_0xa0bf4b[_0xdcb5('0x5c')]['id']}})[_0xdcb5('0x20')](handleEntityNotFound(_0x24e631,null))[_0xdcb5('0x20')](function(_0x131f35){if(_0x131f35){_0xa0bf4b['body'][_0xdcb5('0x67')]=_0x131f35['id'];return db[_0xdcb5('0x3d')][_0xdcb5('0x64')](_0xa0bf4b[_0xdcb5('0x60')]);}})[_0xdcb5('0x20')](respondWithResult(_0x24e631,null))[_0xdcb5('0x2b')](handleError(_0x24e631,null));};exports[_0xdcb5('0x87')]=function(_0xd456a9,_0x2243d5,_0x35703c){return db['MailAccount']['findOne']({'where':{'id':_0xd456a9[_0xdcb5('0x5c')]['id']}})[_0xdcb5('0x20')](handleEntityNotFound(_0x2243d5,null))[_0xdcb5('0x20')](function(_0x222d11){if(_0x222d11){return _0x222d11[_0xdcb5('0x88')](null);}return null;})[_0xdcb5('0x20')](respondWithStatusCode(_0x2243d5,null))[_0xdcb5('0x2b')](handleError(_0x2243d5,null));};exports[_0xdcb5('0x89')]=function(_0x1fb004,_0x144485,_0x1367fb){return db[_0xdcb5('0x57')]['findOne']({'where':{'id':_0x1fb004[_0xdcb5('0x5c')]['id']}})['then'](handleEntityNotFound(_0x144485,null))[_0xdcb5('0x20')](function(_0x56e5ad){if(_0x56e5ad){return _0x56e5ad[_0xdcb5('0x89')]();}return null;})['then'](respondWithResult(_0x144485,null))[_0xdcb5('0x2b')](handleError(_0x144485,null));};exports[_0xdcb5('0x8a')]=function(_0x441a56,_0x1ad4d8,_0x37ed62){if(_0x441a56['body']['id']){delete _0x441a56[_0xdcb5('0x60')]['id'];}return db[_0xdcb5('0x57')][_0xdcb5('0x5f')]({'where':{'id':_0x441a56[_0xdcb5('0x5c')]['id']}})['then'](handleEntityNotFound(_0x1ad4d8,null))[_0xdcb5('0x20')](function(_0x2fe668){if(_0x2fe668){_0x441a56['body']['MailAccountId']=_0x2fe668['id'];return db[_0xdcb5('0x3e')][_0xdcb5('0x64')](_0x441a56[_0xdcb5('0x60')]);}})[_0xdcb5('0x20')](respondWithResult(_0x1ad4d8,null))[_0xdcb5('0x2b')](handleError(_0x1ad4d8,null));};exports['removeSmtp']=function(_0x33d00d,_0x163fcb,_0x343fa7){return db[_0xdcb5('0x57')][_0xdcb5('0x66')]({'where':{'id':_0x33d00d[_0xdcb5('0x5c')]['id']}})['then'](handleEntityNotFound(_0x163fcb,null))[_0xdcb5('0x20')](function(_0x3a20ee){if(_0x3a20ee){return _0x3a20ee[_0xdcb5('0x8b')](null);}return null;})['then'](respondWithStatusCode(_0x163fcb,null))[_0xdcb5('0x2b')](handleError(_0x163fcb,null));};exports['addInteraction']=function(_0x160c8f,_0x2fab58,_0x5b6aa3){return db[_0xdcb5('0x8c')][_0xdcb5('0x5f')]({'where':{'id':_0x160c8f[_0xdcb5('0x5c')]['id']}})[_0xdcb5('0x20')](handleEntityNotFound(_0x2fab58,null))['then'](function(_0x4d484f){if(_0x4d484f){return _0x4d484f[_0xdcb5('0x8d')](_0x160c8f[_0xdcb5('0x60')][_0xdcb5('0x69')],_['omit'](_0x160c8f['body'],[_0xdcb5('0x69'),'id'])||{});}})['then'](respondWithResult(_0x2fab58,null))[_0xdcb5('0x2b')](handleError(_0x2fab58,null));};exports[_0xdcb5('0x8e')]=function(_0x2f1fb5,_0x510cd0,_0x83a4c2){var _0xbb759={'raw':![],'where':{}};var _0x1e1993={};var _0x2b6038={'count':0x0,'rows':[]};return db['MailAccount'][_0xdcb5('0x66')]({'where':{'id':_0x2f1fb5[_0xdcb5('0x5c')]['id']}})[_0xdcb5('0x20')](handleEntityNotFound(_0x510cd0,null))[_0xdcb5('0x20')](function(_0x3a150c){if(_0x3a150c){_0x1e1993[_0xdcb5('0x46')]=_['keys'](db[_0xdcb5('0x8c')][_0xdcb5('0x42')]);_0x1e1993[_0xdcb5('0x47')]=_[_0xdcb5('0x48')](_0x2f1fb5[_0xdcb5('0x47')]);_0x1e1993[_0xdcb5('0x49')]=_['intersection'](_0x1e1993[_0xdcb5('0x46')],_0x1e1993[_0xdcb5('0x47')]);_0xbb759[_0xdcb5('0x4b')]=_[_0xdcb5('0x4a')](_0x1e1993[_0xdcb5('0x46')],qs[_0xdcb5('0x4c')](_0x2f1fb5[_0xdcb5('0x47')]['fields']));_0xbb759[_0xdcb5('0x4b')]=_0xbb759[_0xdcb5('0x4b')]['length']?_0xbb759[_0xdcb5('0x4b')]:_0x1e1993[_0xdcb5('0x46')];if(!_0x2f1fb5[_0xdcb5('0x47')][_0xdcb5('0x4e')](_0xdcb5('0x4f'))){_0xbb759[_0xdcb5('0x30')]=qs[_0xdcb5('0x30')](_0x2f1fb5[_0xdcb5('0x47')][_0xdcb5('0x30')]);_0xbb759[_0xdcb5('0x2f')]=qs['offset'](_0x2f1fb5[_0xdcb5('0x47')][_0xdcb5('0x2f')]);}_0xbb759[_0xdcb5('0x50')]=qs['sort'](_0x2f1fb5[_0xdcb5('0x47')][_0xdcb5('0x51')]);_0xbb759[_0xdcb5('0x53')]=qs[_0xdcb5('0x49')](_[_0xdcb5('0x52')](_0x2f1fb5['query'],_0x1e1993[_0xdcb5('0x49')]));_0xbb759[_0xdcb5('0x53')][_0xdcb5('0x67')]=_0x3a150c['id'];if(_0x2f1fb5['query']['filter']){_0xbb759[_0xdcb5('0x53')]=_[_0xdcb5('0x54')](_0xbb759[_0xdcb5('0x53')],{'$or':_[_0xdcb5('0x41')](_0xbb759[_0xdcb5('0x4b')],function(_0x5f0f45){var _0x23c5c2={};_0x23c5c2[_0x5f0f45]={'$like':'%'+_0x2f1fb5[_0xdcb5('0x47')][_0xdcb5('0x55')]+'%'};return _0x23c5c2;})});}_0xbb759=_[_0xdcb5('0x54')]({},_0xbb759,_0x2f1fb5[_0xdcb5('0x56')]);return db[_0xdcb5('0x8c')][_0xdcb5('0x2e')]({'where':_0xbb759[_0xdcb5('0x53')]})[_0xdcb5('0x20')](function(_0xde79c){_0x2b6038[_0xdcb5('0x2e')]=_0xde79c;if(_0x2f1fb5['query'][_0xdcb5('0x58')]){_0xbb759['include']=[{'model':db[_0xdcb5('0x8f')],'as':_0xdcb5('0x90'),'required':![]},{'model':db[_0xdcb5('0x91')],'as':'Owner','attributes':['name',_0xdcb5('0x92'),_0xdcb5('0x93')],'required':![]},{'model':db[_0xdcb5('0x94')],'as':_0xdcb5('0x95'),'attributes':['id',_0xdcb5('0x3a'),_0xdcb5('0x96')],'where':_0x2f1fb5[_0xdcb5('0x47')][_0xdcb5('0x97')]?{'id':_0x2f1fb5[_0xdcb5('0x47')][_0xdcb5('0x97')]}:undefined,'required':_0x2f1fb5[_0xdcb5('0x47')][_0xdcb5('0x97')]?!![]:![]}];}return db[_0xdcb5('0x8c')][_0xdcb5('0x5a')](_0xbb759);})[_0xdcb5('0x20')](function(_0x3fda88){_0x2b6038['rows']=_0x3fda88;return _0x2b6038;});}})['then'](respondWithFilteredResult(_0x510cd0,_0xbb759))[_0xdcb5('0x2b')](handleError(_0x510cd0,null));};exports[_0xdcb5('0x98')]=function(_0x5303fb,_0x186f33,_0x4468c2){return db[_0xdcb5('0x57')][_0xdcb5('0x66')]({'where':{'id':_0x5303fb[_0xdcb5('0x5c')]['id']}})[_0xdcb5('0x20')](handleEntityNotFound(_0x186f33,null))[_0xdcb5('0x20')](function(_0x139484){if(_0x139484){return db[_0xdcb5('0x99')][_0xdcb5('0x9a')](function(_0x2fae78){return db[_0xdcb5('0x9b')]['destroy']({'where':{'MailAccountId':_0x5303fb['params']['id']},'transaction':_0x2fae78})[_0xdcb5('0x20')](function(_0x310b37){var _0x42667f=_[_0xdcb5('0x41')](_0x5303fb[_0xdcb5('0x60')],function(_0x30d5fc){_0x30d5fc[_0xdcb5('0x67')]=_0x5303fb[_0xdcb5('0x5c')]['id'];return _0x30d5fc;});return db['MailApplication']['bulkCreate'](_0x42667f,{'transaction':_0x2fae78});});})[_0xdcb5('0x20')](function(){return db['MailApplication']['findAndCountAll']({'where':{'MailAccountId':_0x5303fb['params']['id']},'order':_0xdcb5('0x9c')});});}})[_0xdcb5('0x20')](respondWithResult(_0x186f33,null))['catch'](handleError(_0x186f33,null));};exports['getApplications']=function(_0x4f832c,_0x3ac0fa,_0x2b0160){var _0x53f947={};var _0xa53a2f={};var _0x38cb79;var _0x3b5219;return db[_0xdcb5('0x57')]['findOne']({'where':{'id':_0x4f832c[_0xdcb5('0x5c')]['id']}})[_0xdcb5('0x20')](handleEntityNotFound(_0x3ac0fa,null))['then'](function(_0x50a7de){if(_0x50a7de){_0x38cb79=_0x50a7de;_0xa53a2f['model']=_[_0xdcb5('0x48')](db[_0xdcb5('0x9b')][_0xdcb5('0x42')]);_0xa53a2f['query']=_[_0xdcb5('0x48')](_0x4f832c[_0xdcb5('0x47')]);_0xa53a2f[_0xdcb5('0x49')]=_[_0xdcb5('0x4a')](_0xa53a2f[_0xdcb5('0x46')],_0xa53a2f[_0xdcb5('0x47')]);_0x53f947[_0xdcb5('0x4b')]=_[_0xdcb5('0x4a')](_0xa53a2f['model'],qs['fields'](_0x4f832c[_0xdcb5('0x47')][_0xdcb5('0x4c')]));_0x53f947['attributes']=_0x53f947['attributes'][_0xdcb5('0x4d')]?_0x53f947['attributes']:_0xa53a2f['model'];_0x53f947[_0xdcb5('0x50')]=qs['sort'](_0x4f832c[_0xdcb5('0x47')]['sort']);_0x53f947[_0xdcb5('0x53')]=qs[_0xdcb5('0x49')](_['pick'](_0x4f832c[_0xdcb5('0x47')],_0xa53a2f[_0xdcb5('0x49')]));if(_0x4f832c[_0xdcb5('0x47')][_0xdcb5('0x55')]){_0x53f947[_0xdcb5('0x53')]=_[_0xdcb5('0x54')](_0x53f947['where'],{'$or':_[_0xdcb5('0x41')](_0x53f947[_0xdcb5('0x4b')],function(_0x459989){var _0x5a9461={};_0x5a9461[_0x459989]={'$like':'%'+_0x4f832c['query'][_0xdcb5('0x55')]+'%'};return _0x5a9461;})});}_0x53f947=_[_0xdcb5('0x54')]({},_0x53f947,_0x4f832c[_0xdcb5('0x56')]);return _0x38cb79[_0xdcb5('0x9d')](_0x53f947);}})['then'](function(_0x4cf545){if(_0x4cf545){_0x3b5219=_0x4cf545[_0xdcb5('0x4d')];if(!_0x4f832c[_0xdcb5('0x47')]['hasOwnProperty'](_0xdcb5('0x4f'))){_0x53f947[_0xdcb5('0x30')]=qs[_0xdcb5('0x30')](_0x4f832c[_0xdcb5('0x47')][_0xdcb5('0x30')]);_0x53f947[_0xdcb5('0x2f')]=qs[_0xdcb5('0x2f')](_0x4f832c['query'][_0xdcb5('0x2f')]);}return _0x38cb79[_0xdcb5('0x9d')](_0x53f947);}})['then'](function(_0x3c7cb0){if(_0x3c7cb0){return _0x3c7cb0?{'count':_0x3b5219,'rows':_0x3c7cb0}:null;}})[_0xdcb5('0x20')](respondWithResult(_0x3ac0fa,null))[_0xdcb5('0x2b')](handleError(_0x3ac0fa,null));};exports[_0xdcb5('0x9e')]=function(_0x1998e8,_0x2b1d09,_0xbcfda4){var _0x3826a6={'raw':!![],'where':{}};var _0x7b1250={};var _0x18ed22={'count':0x0,'rows':[]};return db['MailAccount']['findOne']({'where':{'id':_0x1998e8[_0xdcb5('0x5c')]['id']}})[_0xdcb5('0x20')](handleEntityNotFound(_0x2b1d09,null))['then'](function(_0x47bd79){if(_0x47bd79){_0x7b1250[_0xdcb5('0x46')]=_[_0xdcb5('0x48')](db[_0xdcb5('0x9f')]['rawAttributes']);_0x7b1250['query']=_[_0xdcb5('0x48')](_0x1998e8['query']);_0x7b1250[_0xdcb5('0x49')]=_['intersection'](_0x7b1250['model'],_0x7b1250[_0xdcb5('0x47')]);_0x3826a6[_0xdcb5('0x4b')]=_['intersection'](_0x7b1250[_0xdcb5('0x46')],qs['fields'](_0x1998e8[_0xdcb5('0x47')][_0xdcb5('0x4c')]));_0x3826a6[_0xdcb5('0x4b')]=_0x3826a6[_0xdcb5('0x4b')]['length']?_0x3826a6[_0xdcb5('0x4b')]:_0x7b1250[_0xdcb5('0x46')];if(!_0x1998e8[_0xdcb5('0x47')]['hasOwnProperty'](_0xdcb5('0x4f'))){_0x3826a6[_0xdcb5('0x30')]=qs[_0xdcb5('0x30')](_0x1998e8[_0xdcb5('0x47')][_0xdcb5('0x30')]);_0x3826a6['offset']=qs[_0xdcb5('0x2f')](_0x1998e8['query'][_0xdcb5('0x2f')]);}_0x3826a6[_0xdcb5('0x50')]=qs['sort'](_0x1998e8[_0xdcb5('0x47')]['sort']);_0x3826a6['where']=qs[_0xdcb5('0x49')](_[_0xdcb5('0x52')](_0x1998e8[_0xdcb5('0x47')],_0x7b1250[_0xdcb5('0x49')]));_0x3826a6[_0xdcb5('0x53')][_0xdcb5('0x67')]=_0x47bd79['id'];if(_0x1998e8[_0xdcb5('0x47')]['filter']){_0x3826a6[_0xdcb5('0x53')]=_[_0xdcb5('0x54')](_0x3826a6[_0xdcb5('0x53')],{'$or':_['map'](_0x3826a6[_0xdcb5('0x4b')],function(_0x5504bb){var _0x3474c0={};_0x3474c0[_0x5504bb]={'$like':'%'+_0x1998e8['query'][_0xdcb5('0x55')]+'%'};return _0x3474c0;})});}if(_0x1998e8[_0xdcb5('0x47')][_0xdcb5('0xa0')]){var _0x3773af=_0x1998e8['query']['$gte'][_0xdcb5('0xa1')](',');var _0x25e6bb={};_0x25e6bb[_0x3773af[0x0]]={'$gte':moment(_0x3773af[0x1])[_0xdcb5('0xa2')](_0xdcb5('0xa3'))};_0x3826a6[_0xdcb5('0x53')]=_[_0xdcb5('0x54')](_0x3826a6[_0xdcb5('0x53')],_0x25e6bb);}_0x3826a6=_[_0xdcb5('0x54')]({},_0x3826a6,_0x1998e8[_0xdcb5('0x56')]);return db['MailMessage'][_0xdcb5('0x2e')]({'where':_0x3826a6['where']})[_0xdcb5('0x20')](function(_0x33ddf8){_0x18ed22['count']=_0x33ddf8;if(_0x1998e8[_0xdcb5('0x47')][_0xdcb5('0x58')]){_0x3826a6[_0xdcb5('0x59')]=[{'all':!![]}];}return db[_0xdcb5('0x9f')]['findAll'](_0x3826a6);})[_0xdcb5('0x20')](function(_0x2ad38c){_0x18ed22[_0xdcb5('0x5b')]=_0x2ad38c;return _0x18ed22;});}})[_0xdcb5('0x20')](respondWithFilteredResult(_0x2b1d09,_0x3826a6))[_0xdcb5('0x2b')](handleError(_0x2b1d09,null));};exports['send']=function(_0x360835,_0x5bb3c0,_0x49b085){var _0x1d5bfa,_0x10c3a0={},_0x576048;if(_0x360835['body']['to']){_0x576048=_0x360835[_0xdcb5('0x60')]['to']['split'](',')[0x0];}return db[_0xdcb5('0x57')]['find']({'where':{'id':_0x360835[_0xdcb5('0x5c')]['id']},'include':[{'model':db['CmList'],'as':_0xdcb5('0xa4'),'include':[{'model':db[_0xdcb5('0x8f')],'as':_0xdcb5('0xa5'),'where':{'email':_0x576048},'limit':0x1,'order':[[_0xdcb5('0xa6'),_0xdcb5('0xa7')]]}]},{'model':db[_0xdcb5('0x3e')],'as':_0xdcb5('0x5e'),'raw':!![]}]})['then'](handleEntityNotFound(_0x5bb3c0,null))[_0xdcb5('0x20')](function(_0x31b297){if(_0x31b297){_0x1d5bfa=_0x31b297;if(_0x31b297[_0xdcb5('0x5e')]){if(_[_0xdcb5('0x70')](_0x360835[_0xdcb5('0x60')]['from'])){_0x360835[_0xdcb5('0x60')][_0xdcb5('0xa8')]=util[_0xdcb5('0xa2')]('%s\x20<%s>',_0x31b297[_0xdcb5('0x3a')],_0x31b297['email']||_0x31b297['Smtp']['user']);}if(_0x360835[_0xdcb5('0x60')][_0xdcb5('0xa9')]&&_0x360835[_0xdcb5('0x60')]['attachments']['length']){for(var _0xec96e0=0x0;_0xec96e0<_0x360835[_0xdcb5('0x60')][_0xdcb5('0xa9')][_0xdcb5('0x4d')];_0xec96e0+=0x1){_0x360835['body'][_0xdcb5('0xa9')][_0xec96e0]={'filename':_0x360835[_0xdcb5('0x60')][_0xdcb5('0xa9')][_0xec96e0][_0xdcb5('0x3a')],'path':path[_0xdcb5('0xaa')](config['root'],_0xdcb5('0xab'),_0x360835[_0xdcb5('0x60')][_0xdcb5('0xa9')][_0xec96e0][_0xdcb5('0xac')])};}}var _0x2b0ed8={'tls':{'rejectUnauthorized':![]}};if(_[_0xdcb5('0x70')](_0x31b297[_0xdcb5('0x5e')][_0xdcb5('0x7b')])){if(_0x31b297[_0xdcb5('0x5e')][_0xdcb5('0x78')]){_0x2b0ed8[_0xdcb5('0xad')]={'user':_0x31b297[_0xdcb5('0x5e')][_0xdcb5('0x75')],'pass':_0x31b297[_0xdcb5('0x5e')][_0xdcb5('0x7d')]};}_0x2b0ed8[_0xdcb5('0x79')]=_0x31b297[_0xdcb5('0x5e')]['host'];_0x2b0ed8['port']=_0x31b297[_0xdcb5('0x5e')]['port'];_0x2b0ed8['secure']=_0x31b297[_0xdcb5('0x5e')]['secure'];}else{_0x2b0ed8[_0xdcb5('0x7b')]=_0x31b297[_0xdcb5('0x5e')]['service'];_0x2b0ed8[_0xdcb5('0xad')]={'user':_0x31b297[_0xdcb5('0x5e')][_0xdcb5('0x75')],'pass':_0x31b297[_0xdcb5('0x5e')][_0xdcb5('0x7d')]};}return respondWithRpcPromise(_0xdcb5('0xae'),'sendMail',{'account':_0x2b0ed8,'message':_0x360835[_0xdcb5('0x60')]});}else{throw new Error(_0xdcb5('0xaf'));}}})[_0xdcb5('0x20')](function(_0x3586a4){if(_0x3586a4){_0x10c3a0=_0x3586a4;if(_0x1d5bfa[_0xdcb5('0xa4')]){if(_0x1d5bfa[_0xdcb5('0xa4')]['Contacts'][_0xdcb5('0x4d')]){return _0x1d5bfa[_0xdcb5('0xa4')]['Contacts'][0x0];}else{return db[_0xdcb5('0x8f')]['create'](_[_0xdcb5('0x18')](_0x360835[_0xdcb5('0x60')],{'firstName':_0x360835[_0xdcb5('0x60')]['to'],'email':_0x360835[_0xdcb5('0x60')]['to'],'phone':_0x360835[_0xdcb5('0x60')]['to'],'ListId':_0x1d5bfa[_0xdcb5('0x6f')]}));}}else{throw new Error(_0xdcb5('0xaf'));}}})[_0xdcb5('0x20')](function(_0xd64f1d){if(_0xd64f1d){var _0x196449={'UserId':_0x360835[_0xdcb5('0x75')]['id'],'ContactId':_0xd64f1d['id'],'MailAccountId':_0x1d5bfa['id'],'inReplyTo':_0x10c3a0['messageId'],'to':_0x360835[_0xdcb5('0x60')][_0xdcb5('0xa8')],'cc':_0x360835[_0xdcb5('0x60')]['cc'],'subject':_0x360835['body']['subject'],'attach':_0x360835[_0xdcb5('0x60')][_0xdcb5('0xb0')],'firstMsgDirection':_0xdcb5('0xb1'),'lastMsgAt':moment()[_0xdcb5('0xa2')]('YYYY-MM-DD\x20HH:mm:ss'),'lastMsgDirection':_0xdcb5('0xb1'),'lastMsgBody':_0x360835[_0xdcb5('0x60')][_0xdcb5('0x60')],'Messages':[_[_0xdcb5('0x54')](_0x360835['body'],{'messageId':_0x10c3a0[_0xdcb5('0xb2')],'sentAt':moment()[_0xdcb5('0xa2')]('YYYY-MM-DD\x20HH:mm:ss'),'read':!![],'MailAccountId':_0x1d5bfa['id'],'UserId':_0x360835[_0xdcb5('0x75')]['id'],'ContactId':_0xd64f1d['id']})]};if(_0x360835[_0xdcb5('0x60')][_0xdcb5('0xb3')]){_0x196449=_[_0xdcb5('0x54')](_0x196449,_0x360835[_0xdcb5('0x60')][_0xdcb5('0xb3')]);}return db[_0xdcb5('0x8c')]['create'](_0x196449,{'include':[{'model':db['MailMessage'],'as':_0xdcb5('0xb4')}]});}})['then'](respondWithResult(_0x5bb3c0,null))[_0xdcb5('0x2b')](handleError(_0x5bb3c0,null));};exports[_0xdcb5('0xb5')]=function(_0x66c06d,_0xd4a0c7,_0xea7ddd){return db['MailAccount']['find']({'where':{'id':_0x66c06d['params']['id']},'include':[{'model':db['MailServerOut'],'as':_0xdcb5('0x5e'),'raw':!![]}]})['then'](handleEntityNotFound(_0xd4a0c7,null))[_0xdcb5('0x20')](function(_0x11138a){if(_0x11138a&&_0x11138a[_0xdcb5('0x5e')]){var _0x2d76e0={'id':_0x11138a['id'],'tls':{'rejectUnauthorized':![]}};if(_0x11138a[_0xdcb5('0x5e')][_0xdcb5('0x7b')]){_0x2d76e0[_0xdcb5('0x7b')]=_0x11138a[_0xdcb5('0x5e')][_0xdcb5('0x7b')];}else{_0x2d76e0['host']=_0x11138a[_0xdcb5('0x5e')][_0xdcb5('0x79')];_0x2d76e0[_0xdcb5('0x7a')]=_0x11138a['Smtp'][_0xdcb5('0x7a')];_0x2d76e0[_0xdcb5('0xb6')]=_0x11138a[_0xdcb5('0x5e')][_0xdcb5('0xb6')];}if(_0x11138a[_0xdcb5('0x5e')][_0xdcb5('0x78')]){_0x2d76e0['auth']={'user':_0x11138a['Smtp'][_0xdcb5('0x75')],'pass':_0x11138a[_0xdcb5('0x5e')][_0xdcb5('0x7d')]};}return respondWithRpcPromise('VerifySmtp','verifySmtp',{'account':_0x2d76e0});}})[_0xdcb5('0x20')](respondWithResult(_0xd4a0c7,null))[_0xdcb5('0x2b')](handleError(_0xd4a0c7,null));};exports[_0xdcb5('0x35')]=function(_0xd62e77,_0x36308e){return db[_0xdcb5('0x57')]['find']({'where':{'id':_0xd62e77[_0xdcb5('0x5c')]['id']}})[_0xdcb5('0x20')](handleEntityNotFound(_0x36308e,null))['then'](function(_0x51d282){if(_0x51d282&&_0x51d282['service']){throw new db['Sequelize'][(_0xdcb5('0xb7'))](_0xdcb5('0xb8'));}return _0x51d282;})[_0xdcb5('0x20')](removeEntity(_0x36308e,null))[_0xdcb5('0x2b')](handleError(_0x36308e,null));};exports['addAgents']=function(_0x2a284b,_0x1f0cbb,_0x8fc33d){return db[_0xdcb5('0x57')][_0xdcb5('0x5f')]({'where':{'id':_0x2a284b[_0xdcb5('0x5c')]['id']}})[_0xdcb5('0x20')](handleEntityNotFound(_0x1f0cbb,null))['then'](function(_0x114974){if(_0x114974){return _0x114974[_0xdcb5('0xb9')](_0x2a284b[_0xdcb5('0x60')]['ids'],_['omit'](_0x2a284b['body'],[_0xdcb5('0x69'),'id'])||{})[_0xdcb5('0xba')](function(_0x3118c7){for(var _0x10c6fe=0x0;_0x10c6fe<_0x2a284b[_0xdcb5('0x60')]['ids']['length'];_0x10c6fe+=0x1){socket[_0xdcb5('0xbb')]('userMailAccount:save',{'UserId':_0x2a284b[_0xdcb5('0x60')][_0xdcb5('0x69')][_0x10c6fe],'MailAccountId':_0x2a284b[_0xdcb5('0x5c')]['id']});}return _0x3118c7;});}})['then'](respondWithResult(_0x1f0cbb,null))[_0xdcb5('0x2b')](handleError(_0x1f0cbb,null));};exports[_0xdcb5('0xbc')]=function(_0x2f06a3,_0x9c2775,_0x3adaf7){return db[_0xdcb5('0x57')][_0xdcb5('0x5f')]({'where':{'id':_0x2f06a3[_0xdcb5('0x5c')]['id']}})[_0xdcb5('0x20')](handleEntityNotFound(_0x9c2775,null))[_0xdcb5('0x20')](function(_0x4d2714){if(_0x4d2714){return _0x4d2714[_0xdcb5('0xbc')](_0x2f06a3['query']['ids'])[_0xdcb5('0x20')](function(){if(_['isArray'](_0x2f06a3[_0xdcb5('0x47')][_0xdcb5('0x69')])){for(var _0x106b49=0x0;_0x106b49<_0x2f06a3[_0xdcb5('0x47')][_0xdcb5('0x69')]['length'];_0x106b49+=0x1){socket[_0xdcb5('0xbb')](_0xdcb5('0xbd'),{'UserId':Number(_0x2f06a3[_0xdcb5('0x47')][_0xdcb5('0x69')][_0x106b49]),'MailAccountId':Number(_0x2f06a3[_0xdcb5('0x5c')]['id'])});}}else{socket['emit'](_0xdcb5('0xbd'),{'UserId':Number(_0x2f06a3[_0xdcb5('0x47')][_0xdcb5('0x69')]),'MailAccountId':Number(_0x2f06a3[_0xdcb5('0x5c')]['id'])});}});}})[_0xdcb5('0x20')](respondWithStatusCode(_0x9c2775,null))[_0xdcb5('0x2b')](handleError(_0x9c2775,null));};exports[_0xdcb5('0xbe')]=function(_0x642a25,_0x390be5,_0x234929){var _0x193b72={};var _0x147aef={};var _0x296452;var _0x1b4cd7;return db[_0xdcb5('0x57')][_0xdcb5('0x66')]({'where':{'id':_0x642a25[_0xdcb5('0x5c')]['id']}})[_0xdcb5('0x20')](handleEntityNotFound(_0x390be5,null))[_0xdcb5('0x20')](function(_0x1eb321){if(_0x1eb321){_0x296452=_0x1eb321;_0x147aef[_0xdcb5('0x46')]=_[_0xdcb5('0x48')](db[_0xdcb5('0x91')]['rawAttributes']);_0x147aef[_0xdcb5('0x47')]=_[_0xdcb5('0x48')](_0x642a25[_0xdcb5('0x47')]);_0x147aef['filters']=_[_0xdcb5('0x4a')](_0x147aef[_0xdcb5('0x46')],_0x147aef['query']);_0x193b72[_0xdcb5('0x4b')]=_[_0xdcb5('0x4a')](_0x147aef[_0xdcb5('0x46')],qs['fields'](_0x642a25[_0xdcb5('0x47')][_0xdcb5('0x4c')]));_0x193b72['attributes']=_0x193b72[_0xdcb5('0x4b')][_0xdcb5('0x4d')]?_0x193b72[_0xdcb5('0x4b')]:_0x147aef[_0xdcb5('0x46')];_0x193b72[_0xdcb5('0x50')]=qs[_0xdcb5('0x51')](_0x642a25[_0xdcb5('0x47')]['sort']);_0x193b72[_0xdcb5('0x53')]=qs[_0xdcb5('0x49')](_['pick'](_0x642a25[_0xdcb5('0x47')],_0x147aef[_0xdcb5('0x49')]));if(_0x642a25['query'][_0xdcb5('0x55')]){_0x193b72[_0xdcb5('0x53')]=_[_0xdcb5('0x54')](_0x193b72['where'],{'$or':_['map'](_0x193b72[_0xdcb5('0x4b')],function(_0x511ac0){var _0x2297ef={};_0x2297ef[_0x511ac0]={'$like':'%'+_0x642a25[_0xdcb5('0x47')]['filter']+'%'};return _0x2297ef;})});}_0x193b72=_[_0xdcb5('0x54')]({},_0x193b72,_0x642a25[_0xdcb5('0x56')]);return _0x296452[_0xdcb5('0xbe')](_0x193b72);}})[_0xdcb5('0x20')](function(_0x25de4f){if(_0x25de4f){_0x1b4cd7=_0x25de4f[_0xdcb5('0x4d')];if(!_0x642a25[_0xdcb5('0x47')]['hasOwnProperty'](_0xdcb5('0x4f'))){_0x193b72[_0xdcb5('0x30')]=qs[_0xdcb5('0x30')](_0x642a25['query'][_0xdcb5('0x30')]);_0x193b72[_0xdcb5('0x2f')]=qs[_0xdcb5('0x2f')](_0x642a25['query'][_0xdcb5('0x2f')]);}return _0x296452[_0xdcb5('0xbe')](_0x193b72);}})[_0xdcb5('0x20')](function(_0x29bfc1){if(_0x29bfc1){return _0x29bfc1?{'count':_0x1b4cd7,'rows':_0x29bfc1}:null;}})['then'](respondWithResult(_0x390be5,null))[_0xdcb5('0x2b')](handleError(_0x390be5,null));};