Built motion from commit 9d0783e6.|2.6.13
[motion2.git] / server / api / mailInteraction / mailInteraction.controller.js
index 0e32e45..a7577f6 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x3f05=['mailInteractionTags:save','removeTags','download','toString','files','tmp','join','root','server','attachments','transcript-%d-%s.zip','push','Attachments','Messages','bcc','subject','createdAt','get','mkdirSync','each','from','decode','headers','Bcc','basename','readFileSync','writeFileSync','message%d.eml','eml-format','rimraf','zip-dir','moment','bluebird','path','lodash','juice','ioredis','../../components/parsers/qs','api','../../config/environment','../../mysqldb','html-entities','redis','defaults','localhost','./mailInteraction.socket','sendStatus','status','json','offset','limit','undefined','count','Content-Range','update','then','destroy','error','name','index','fieldName','type','mail','user','catch','show','model','MailInteraction','rawAttributes','query','filters','attributes','intersection','fields','length','includeAll','include','merge','options','find','create','body','params','describe','MailMessage','addMessage','ids','omit','getMessages','findOne','keys','nolimit','sort','where','pick','MailInteractionId','filter','map','$gte','split','format','findAll','inlineCss','true','rows','addTags','setTags','spread','Tag','color','emit'];(function(_0x213f91,_0x8f3782){var _0x5cf677=function(_0x469754){while(--_0x469754){_0x213f91['push'](_0x213f91['shift']());}};_0x5cf677(++_0x8f3782);}(_0x3f05,0xfa));var _0x53f0=function(_0x325155,_0x5d4450){_0x325155=_0x325155-0x0;var _0x284d00=_0x3f05[_0x325155];return _0x284d00;};'use strict';var emlformat=require(_0x53f0('0x0'));var rimraf=require(_0x53f0('0x1'));var zipdir=require(_0x53f0('0x2'));var moment=require(_0x53f0('0x3'));var BPromise=require(_0x53f0('0x4'));var util=require('util');var path=require(_0x53f0('0x5'));var fs=require('fs');var _=require(_0x53f0('0x6'));var juice=require(_0x53f0('0x7'));var Redis=require(_0x53f0('0x8'));var interaction=require('../../components/interaction/service');var qs=require(_0x53f0('0x9'));var logger=require('../../config/logger')(_0x53f0('0xa'));var config=require(_0x53f0('0xb'));var db=require(_0x53f0('0xc'))['db'];var htmlEntities=require(_0x53f0('0xd'));config[_0x53f0('0xe')]=_[_0x53f0('0xf')](config[_0x53f0('0xe')],{'host':_0x53f0('0x10'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config['redis']));require(_0x53f0('0x11'))['register'](socket);function respondWithStatusCode(_0x513570,_0x5b873e){_0x5b873e=_0x5b873e||0xcc;return function(_0x5b0ec7){if(_0x5b0ec7){return _0x513570[_0x53f0('0x12')](_0x5b873e);}return _0x513570[_0x53f0('0x13')](_0x5b873e)['end']();};}function respondWithResult(_0x3b5e39,_0x1762b7){_0x1762b7=_0x1762b7||0xc8;return function(_0x35da4a){if(_0x35da4a){return _0x3b5e39[_0x53f0('0x13')](_0x1762b7)[_0x53f0('0x14')](_0x35da4a);}};}function respondWithFilteredResult(_0x281b01,_0x4df3ab){return function(_0x332de6){if(_0x332de6){var _0x1305e7=typeof _0x4df3ab[_0x53f0('0x15')]==='undefined'&&typeof _0x4df3ab[_0x53f0('0x16')]===_0x53f0('0x17');var _0x41a678=_0x332de6[_0x53f0('0x18')];var _0xc1c15d=_0x1305e7?0x0:_0x4df3ab[_0x53f0('0x15')];var _0x5ec66c=_0x1305e7?_0x332de6[_0x53f0('0x18')]:_0x4df3ab[_0x53f0('0x15')]+_0x4df3ab['limit'];var _0x4a40ab;if(_0x5ec66c>=_0x41a678){_0x5ec66c=_0x41a678;_0x4a40ab=0xc8;}else{_0x4a40ab=0xce;}_0x281b01['status'](_0x4a40ab);return _0x281b01['set'](_0x53f0('0x19'),_0xc1c15d+'-'+_0x5ec66c+'/'+_0x41a678)[_0x53f0('0x14')](_0x332de6);}return null;};}function saveUpdates(_0x1315f0){return function(_0x15aac5){if(_0x15aac5){return _0x15aac5[_0x53f0('0x1a')](_0x1315f0)[_0x53f0('0x1b')](function(_0x2fdf53){return _0x2fdf53;});}return null;};}function removeEntity(_0x332acf){return function(_0x5418ab){if(_0x5418ab){return _0x5418ab[_0x53f0('0x1c')]()[_0x53f0('0x1b')](function(){_0x332acf['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0x28988d){return function(_0x4f0ac4){if(!_0x4f0ac4){_0x28988d['sendStatus'](0x194);}return _0x4f0ac4;};}function handleError(_0xcc8398,_0x36e377){_0x36e377=_0x36e377||0x1f4;return function(_0x15a629){logger[_0x53f0('0x1d')](_0x15a629['stack']);if(_0x15a629[_0x53f0('0x1e')]){delete _0x15a629[_0x53f0('0x1e')];}_0xcc8398[_0x53f0('0x13')](_0x36e377)['send'](_0x15a629);};}exports[_0x53f0('0x1f')]=function(_0x3a9ebf,_0x433c1a){var _0x2630a2={};var _0x21276e=_['map'](db['MailInteraction']['rawAttributes'],function(_0x20a907){return{'name':_0x20a907[_0x53f0('0x20')],'type':_0x20a907[_0x53f0('0x21')]['key']};});_0x2630a2=qs['getOptions'](_0x21276e,_0x3a9ebf);return interaction['findAll'](_0x53f0('0x22'),_0x3a9ebf['query'],_0x3a9ebf[_0x53f0('0x23')],_0x2630a2,_0x21276e)[_0x53f0('0x1b')](respondWithFilteredResult(_0x433c1a,_0x2630a2))[_0x53f0('0x24')](handleError(_0x433c1a,null));};exports[_0x53f0('0x25')]=function(_0x343b95,_0x2a51e8){var _0x1c1e10={'raw':![],'where':{'id':_0x343b95['params']['id']}},_0x126738={};_0x126738[_0x53f0('0x26')]=_['keys'](db[_0x53f0('0x27')][_0x53f0('0x28')]);_0x126738[_0x53f0('0x29')]=_['keys'](_0x343b95[_0x53f0('0x29')]);_0x126738[_0x53f0('0x2a')]=_['intersection'](_0x126738[_0x53f0('0x26')],_0x126738[_0x53f0('0x29')]);_0x1c1e10[_0x53f0('0x2b')]=_[_0x53f0('0x2c')](_0x126738['model'],qs[_0x53f0('0x2d')](_0x343b95[_0x53f0('0x29')][_0x53f0('0x2d')]));_0x1c1e10[_0x53f0('0x2b')]=_0x1c1e10['attributes'][_0x53f0('0x2e')]?_0x1c1e10[_0x53f0('0x2b')]:_0x126738[_0x53f0('0x26')];if(_0x343b95['query'][_0x53f0('0x2f')]){_0x1c1e10[_0x53f0('0x30')]=[{'all':!![]}];}_0x1c1e10=_[_0x53f0('0x31')]({},_0x1c1e10,_0x343b95[_0x53f0('0x32')]);return db[_0x53f0('0x27')][_0x53f0('0x33')](_0x1c1e10)['then'](handleEntityNotFound(_0x2a51e8,null))['then'](respondWithResult(_0x2a51e8,null))[_0x53f0('0x24')](handleError(_0x2a51e8,null));};exports[_0x53f0('0x34')]=function(_0x4050d1,_0x5d89fa){return db[_0x53f0('0x27')][_0x53f0('0x34')](_0x4050d1[_0x53f0('0x35')],{})[_0x53f0('0x1b')](respondWithResult(_0x5d89fa,0xc9))['catch'](handleError(_0x5d89fa,null));};exports[_0x53f0('0x1a')]=function(_0x3d0cae,_0x225bf1){if(_0x3d0cae['body']['id']){delete _0x3d0cae[_0x53f0('0x35')]['id'];}return db['MailInteraction'][_0x53f0('0x33')]({'where':{'id':_0x3d0cae[_0x53f0('0x36')]['id']}})['then'](handleEntityNotFound(_0x225bf1,null))[_0x53f0('0x1b')](saveUpdates(_0x3d0cae[_0x53f0('0x35')],null))[_0x53f0('0x1b')](respondWithResult(_0x225bf1,null))[_0x53f0('0x24')](handleError(_0x225bf1,null));};exports['destroy']=function(_0x3c702e,_0x41d5cb){return db[_0x53f0('0x27')][_0x53f0('0x33')]({'where':{'id':_0x3c702e[_0x53f0('0x36')]['id']}})[_0x53f0('0x1b')](handleEntityNotFound(_0x41d5cb,null))[_0x53f0('0x1b')](removeEntity(_0x41d5cb,null))['catch'](handleError(_0x41d5cb,null));};exports[_0x53f0('0x37')]=function(_0x6fbd94,_0x469282){return db[_0x53f0('0x27')][_0x53f0('0x37')]()[_0x53f0('0x1b')](respondWithResult(_0x469282,null))['catch'](handleError(_0x469282,null));};exports['addMessage']=function(_0xbaa73e,_0x46916a){return db[_0x53f0('0x38')][_0x53f0('0x33')]({'where':{'id':_0xbaa73e[_0x53f0('0x36')]['id']}})[_0x53f0('0x1b')](handleEntityNotFound(_0x46916a,null))[_0x53f0('0x1b')](function(_0x25825b){if(_0x25825b){return _0x25825b[_0x53f0('0x39')](_0xbaa73e['body'][_0x53f0('0x3a')],_[_0x53f0('0x3b')](_0xbaa73e[_0x53f0('0x35')],[_0x53f0('0x3a'),'id'])||{});}})[_0x53f0('0x1b')](respondWithResult(_0x46916a,null))['catch'](handleError(_0x46916a,null));};exports[_0x53f0('0x3c')]=function(_0x3d2d69,_0x469331){var _0x5a16a3={'raw':![],'where':{}};var _0x42017d={};var _0x1d6a95={'count':0x0,'rows':[]};return db[_0x53f0('0x27')][_0x53f0('0x3d')]({'where':{'id':_0x3d2d69['params']['id']}})[_0x53f0('0x1b')](handleEntityNotFound(_0x469331,null))[_0x53f0('0x1b')](function(_0xa125f7){if(_0xa125f7){_0x42017d[_0x53f0('0x26')]=_[_0x53f0('0x3e')](db[_0x53f0('0x38')]['rawAttributes']);_0x42017d[_0x53f0('0x29')]=_['keys'](_0x3d2d69[_0x53f0('0x29')]);_0x42017d['filters']=_[_0x53f0('0x2c')](_0x42017d[_0x53f0('0x26')],_0x42017d[_0x53f0('0x29')]);_0x5a16a3[_0x53f0('0x2b')]=_[_0x53f0('0x2c')](_0x42017d['model'],qs[_0x53f0('0x2d')](_0x3d2d69['query'][_0x53f0('0x2d')]));_0x5a16a3[_0x53f0('0x2b')]=_0x5a16a3[_0x53f0('0x2b')]['length']?_0x5a16a3[_0x53f0('0x2b')]:_0x42017d[_0x53f0('0x26')];if(!_0x3d2d69['query']['hasOwnProperty'](_0x53f0('0x3f'))){_0x5a16a3['limit']=qs[_0x53f0('0x16')](_0x3d2d69[_0x53f0('0x29')][_0x53f0('0x16')]);_0x5a16a3[_0x53f0('0x15')]=qs[_0x53f0('0x15')](_0x3d2d69['query'][_0x53f0('0x15')]);}_0x5a16a3['order']=qs['sort'](_0x3d2d69[_0x53f0('0x29')][_0x53f0('0x40')]);_0x5a16a3[_0x53f0('0x41')]=qs['filters'](_[_0x53f0('0x42')](_0x3d2d69['query'],_0x42017d[_0x53f0('0x2a')]));_0x5a16a3[_0x53f0('0x41')][_0x53f0('0x43')]=_0xa125f7['id'];if(_0x3d2d69[_0x53f0('0x29')][_0x53f0('0x44')]){_0x5a16a3[_0x53f0('0x41')]=_['merge'](_0x5a16a3[_0x53f0('0x41')],{'$or':_[_0x53f0('0x45')](_0x5a16a3[_0x53f0('0x2b')],function(_0x5355ae){var _0x44fead={};_0x44fead[_0x5355ae]={'$like':'%'+_0x3d2d69[_0x53f0('0x29')]['filter']+'%'};return _0x44fead;})});}if(_0x3d2d69[_0x53f0('0x29')]['$gte']){var _0x3cccf6=_0x3d2d69['query'][_0x53f0('0x46')][_0x53f0('0x47')](',');var _0x3606de={};_0x3606de[_0x3cccf6[0x0]]={'$gte':moment(_0x3cccf6[0x1])[_0x53f0('0x48')]('YYYY-MM-DD\x20HH:mm:ss')};_0x5a16a3[_0x53f0('0x41')]=_[_0x53f0('0x31')](_0x5a16a3[_0x53f0('0x41')],_0x3606de);}_0x5a16a3=_[_0x53f0('0x31')]({},_0x5a16a3,_0x3d2d69[_0x53f0('0x32')]);return db[_0x53f0('0x38')]['count']({'where':_0x5a16a3[_0x53f0('0x41')]})[_0x53f0('0x1b')](function(_0x18d80a){_0x1d6a95['count']=_0x18d80a;if(_0x3d2d69[_0x53f0('0x29')][_0x53f0('0x2f')]){_0x5a16a3[_0x53f0('0x30')]=[{'all':!![]}];}return db['MailMessage'][_0x53f0('0x49')](_0x5a16a3);})[_0x53f0('0x1b')](function(_0x3d090d){if(_0x3d2d69[_0x53f0('0x29')][_0x53f0('0x4a')]===_0x53f0('0x4b')){for(var _0x1351f4=0x0;_0x1351f4<_0x3d090d[_0x53f0('0x2e')];_0x1351f4++){_0x3d090d[_0x1351f4][_0x53f0('0x35')]=juice(_0x3d090d[_0x1351f4][_0x53f0('0x35')]);}}_0x1d6a95[_0x53f0('0x4c')]=_0x3d090d;return _0x1d6a95;});}})[_0x53f0('0x1b')](respondWithFilteredResult(_0x469331,_0x5a16a3))[_0x53f0('0x24')](handleError(_0x469331,null));};exports[_0x53f0('0x4d')]=function(_0x37e7b8,_0x3b2587){return db[_0x53f0('0x27')][_0x53f0('0x33')]({'where':{'id':_0x37e7b8[_0x53f0('0x36')]['id']}})[_0x53f0('0x1b')](handleEntityNotFound(_0x3b2587,null))[_0x53f0('0x1b')](function(_0x53cbdd){if(_0x53cbdd){return _0x53cbdd[_0x53f0('0x4e')](_0x37e7b8[_0x53f0('0x35')][_0x53f0('0x3a')],_['omit'](_0x37e7b8['body'],[_0x53f0('0x3a'),'id'])||{})[_0x53f0('0x4f')](function(){return db[_0x53f0('0x50')][_0x53f0('0x49')]({'attributes':['id',_0x53f0('0x1e'),_0x53f0('0x51')],'where':{'id':_0x37e7b8[_0x53f0('0x35')]['ids']}});})[_0x53f0('0x1b')](function(_0x2dd510){socket[_0x53f0('0x52')](_0x53f0('0x53'),{'id':Number(_0x37e7b8[_0x53f0('0x36')]['id']),'tags':_0x2dd510||[]});return{'id':Number(_0x37e7b8[_0x53f0('0x36')]['id']),'tags':_0x2dd510||[]};});}})['then'](respondWithResult(_0x3b2587,null))[_0x53f0('0x24')](handleError(_0x3b2587,null));};exports[_0x53f0('0x54')]=function(_0xcab300,_0x54a764){return db[_0x53f0('0x27')][_0x53f0('0x33')]({'where':{'id':_0xcab300['params']['id']}})[_0x53f0('0x1b')](handleEntityNotFound(_0x54a764,null))[_0x53f0('0x1b')](function(_0x6fa5b9){if(_0x6fa5b9){return _0x6fa5b9[_0x53f0('0x54')](_0xcab300[_0x53f0('0x29')][_0x53f0('0x3a')]);}})['then'](respondWithStatusCode(_0x54a764,null))[_0x53f0('0x24')](handleError(_0x54a764,null));};exports[_0x53f0('0x55')]=function(_0x25707c,_0x35d311){var _0x396355=moment()['unix']()[_0x53f0('0x56')]();var _0x30653e=path['join'](config['root'],'server',_0x53f0('0x57'),_0x53f0('0x58'));var _0x5e0501=path[_0x53f0('0x59')](config[_0x53f0('0x5a')],_0x53f0('0x5b'),_0x53f0('0x57'),_0x53f0('0x5c'));var _0x3c983c=path[_0x53f0('0x59')](_0x30653e,_0x396355);var _0x2adb3d=util[_0x53f0('0x48')](_0x53f0('0x5d'),_0x25707c[_0x53f0('0x36')]['id'],_0x396355);var _0x190e54=path[_0x53f0('0x59')](_0x30653e,_0x2adb3d);var _0x4c2c62=[];if(_0x25707c[_0x53f0('0x29')]['attachments']){_0x4c2c62[_0x53f0('0x5e')]({'model':db['Attachment'],'as':_0x53f0('0x5f'),'raw':!![]});}var _0x53aedf=[{'model':db[_0x53f0('0x38')],'as':_0x53f0('0x60'),'attributes':['id',_0x53f0('0x35'),'from','to','cc',_0x53f0('0x61'),_0x53f0('0x62'),_0x53f0('0x63')],'where':{'secret':![]},'order':qs[_0x53f0('0x40')]('id'),'include':_0x4c2c62}];return db[_0x53f0('0x27')][_0x53f0('0x33')]({'where':{'id':_0x25707c['params']['id']},'include':_0x53aedf})['then'](handleEntityNotFound(_0x35d311,null))[_0x53f0('0x1b')](function(_0x3d853f){if(_0x3d853f&&_0x3d853f['Messages']){var _0xd027d3=_0x3d853f[_0x53f0('0x64')]({'plain':!![]});fs[_0x53f0('0x65')](_0x3c983c);return BPromise[_0x53f0('0x66')](_0xd027d3[_0x53f0('0x60')],function(_0x67251e,_0x7984f0){var _0x1dd617={'from':_0x67251e[_0x53f0('0x67')],'to':_0x67251e['to']||'missing.recipient@your.company.com','subject':_0x67251e[_0x53f0('0x62')],'html':htmlEntities[_0x53f0('0x68')](_0x67251e[_0x53f0('0x35')]),'headers':{'Date':moment(_0x67251e[_0x53f0('0x63')])['format']('ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ')},'attachments':[]};if(_0x67251e['cc']){_0x1dd617[_0x53f0('0x69')]['Cc']=_0x67251e['cc'];}if(_0x67251e[_0x53f0('0x61')]){_0x1dd617[_0x53f0('0x69')][_0x53f0('0x6a')]=_0x67251e[_0x53f0('0x61')];}return new BPromise(function(_0x30a0bf,_0x3c7446){if(_0x67251e[_0x53f0('0x5f')]){for(var _0x1ecf6e=0x0;_0x1ecf6e<_0x67251e[_0x53f0('0x5f')][_0x53f0('0x2e')];_0x1ecf6e++){var _0x4e60ca=_0x67251e[_0x53f0('0x5f')][_0x1ecf6e];var _0x3661f3=path['join'](_0x5e0501,_0x4e60ca[_0x53f0('0x6b')]);if(fs['existsSync'](_0x3661f3)){_0x1dd617[_0x53f0('0x5c')][_0x53f0('0x5e')]({'name':_0x4e60ca[_0x53f0('0x1e')],'contentType':_0x4e60ca[_0x53f0('0x21')],'data':fs[_0x53f0('0x6c')](_0x3661f3)});}}}emlformat['build'](_0x1dd617,function(_0x10c58f,_0xff1d3){if(_0x10c58f)return _0x3c7446(_0x10c58f);fs[_0x53f0('0x6d')](path[_0x53f0('0x59')](_0x3c983c,util[_0x53f0('0x48')](_0x53f0('0x6e'),_0x7984f0)),_0xff1d3);return _0x30a0bf(_0xff1d3);});});})[_0x53f0('0x1b')](function(){return new BPromise(function(_0x1f7751,_0xa4faeb){zipdir(_0x3c983c,{'saveTo':_0x190e54},function(_0x3aad08,_0x1a6f5a){if(_0x3aad08)return _0xa4faeb(_0x3aad08);return _0x1f7751(_0x1a6f5a);});})[_0x53f0('0x1b')](function(){return new BPromise(function(_0x4d7781,_0x5cfe09){rimraf(_0x3c983c,function(_0x15d281){if(_0x15d281)_0x5cfe09(_0x15d281);return _0x4d7781();});});})['then'](function(){return _0x35d311['download'](_0x190e54,_0x2adb3d,function(_0x5ef59c){if(!_0x5ef59c)fs['unlinkSync'](_0x190e54);});});});}else{return _0x35d311[_0x53f0('0x12')](0xc8);}})[_0x53f0('0x24')](handleError(_0x35d311,null));};
\ No newline at end of file
+var _0x91dc=['addMessage','MailMessage','ids','getMessages','findOne','filters','nolimit','order','where','MailInteractionId','filter','merge','$gte','split','format','YYYY-MM-DD\x20HH:mm:ss','options','findAll','inlineCss','true','rows','addTags','setTags','Tag','color','emit','mailInteractionTags:save','removeTags','unix','toString','join','files','tmp','root','server','attachments','transcript-%d-%s.zip','push','Attachment','Attachments','from','bcc','subject','createdAt','Messages','get','each','decode','ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ','headers','Bcc','basename','existsSync','readFileSync','build','download','unlinkSync','eml-format','rimraf','zip-dir','bluebird','util','path','lodash','juice','ioredis','../../components/interaction/service','../../components/parsers/qs','../../config/logger','../../config/environment','../../mysqldb','html-entities','redis','localhost','./mailInteraction.socket','register','sendStatus','status','end','json','offset','undefined','count','limit','set','Content-Range','update','destroy','stack','name','send','index','MailInteraction','fieldName','type','key','getOptions','mail','user','then','catch','params','model','keys','rawAttributes','query','intersection','attributes','fields','length','includeAll','include','find','create','body','describe'];(function(_0x308f43,_0x525cfe){var _0x53f0cc=function(_0x1a768e){while(--_0x1a768e){_0x308f43['push'](_0x308f43['shift']());}};_0x53f0cc(++_0x525cfe);}(_0x91dc,0xad));var _0xc91d=function(_0x2528f4,_0x9ccff9){_0x2528f4=_0x2528f4-0x0;var _0x120ea3=_0x91dc[_0x2528f4];return _0x120ea3;};'use strict';var emlformat=require(_0xc91d('0x0'));var rimraf=require(_0xc91d('0x1'));var zipdir=require(_0xc91d('0x2'));var moment=require('moment');var BPromise=require(_0xc91d('0x3'));var util=require(_0xc91d('0x4'));var path=require(_0xc91d('0x5'));var fs=require('fs');var _=require(_0xc91d('0x6'));var juice=require(_0xc91d('0x7'));var Redis=require(_0xc91d('0x8'));var interaction=require(_0xc91d('0x9'));var qs=require(_0xc91d('0xa'));var logger=require(_0xc91d('0xb'))('api');var config=require(_0xc91d('0xc'));var db=require(_0xc91d('0xd'))['db'];var htmlEntities=require(_0xc91d('0xe'));config[_0xc91d('0xf')]=_['defaults'](config['redis'],{'host':_0xc91d('0x10'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0xc91d('0xf')]));require(_0xc91d('0x11'))[_0xc91d('0x12')](socket);function respondWithStatusCode(_0x2f1310,_0x1f7c8b){_0x1f7c8b=_0x1f7c8b||0xcc;return function(_0x59e21e){if(_0x59e21e){return _0x2f1310[_0xc91d('0x13')](_0x1f7c8b);}return _0x2f1310[_0xc91d('0x14')](_0x1f7c8b)[_0xc91d('0x15')]();};}function respondWithResult(_0x58396c,_0x16432c){_0x16432c=_0x16432c||0xc8;return function(_0x38cb59){if(_0x38cb59){return _0x58396c[_0xc91d('0x14')](_0x16432c)[_0xc91d('0x16')](_0x38cb59);}};}function respondWithFilteredResult(_0x5501f2,_0x533365){return function(_0x262df9){if(_0x262df9){var _0x4b5d24=typeof _0x533365[_0xc91d('0x17')]===_0xc91d('0x18')&&typeof _0x533365['limit']==='undefined';var _0x5c4092=_0x262df9[_0xc91d('0x19')];var _0x401253=_0x4b5d24?0x0:_0x533365[_0xc91d('0x17')];var _0x1e083c=_0x4b5d24?_0x262df9[_0xc91d('0x19')]:_0x533365['offset']+_0x533365[_0xc91d('0x1a')];var _0x28944f;if(_0x1e083c>=_0x5c4092){_0x1e083c=_0x5c4092;_0x28944f=0xc8;}else{_0x28944f=0xce;}_0x5501f2[_0xc91d('0x14')](_0x28944f);return _0x5501f2[_0xc91d('0x1b')](_0xc91d('0x1c'),_0x401253+'-'+_0x1e083c+'/'+_0x5c4092)[_0xc91d('0x16')](_0x262df9);}return null;};}function saveUpdates(_0x4ccddb){return function(_0x41212c){if(_0x41212c){return _0x41212c[_0xc91d('0x1d')](_0x4ccddb)['then'](function(_0x1a919e){return _0x1a919e;});}return null;};}function removeEntity(_0x341230){return function(_0x216d22){if(_0x216d22){return _0x216d22[_0xc91d('0x1e')]()['then'](function(){_0x341230['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0xac685f){return function(_0x309680){if(!_0x309680){_0xac685f[_0xc91d('0x13')](0x194);}return _0x309680;};}function handleError(_0xefb353,_0x282ee5){_0x282ee5=_0x282ee5||0x1f4;return function(_0x1c8980){logger['error'](_0x1c8980[_0xc91d('0x1f')]);if(_0x1c8980[_0xc91d('0x20')]){delete _0x1c8980['name'];}_0xefb353[_0xc91d('0x14')](_0x282ee5)[_0xc91d('0x21')](_0x1c8980);};}exports[_0xc91d('0x22')]=function(_0x16b44b,_0x1da967){var _0x51dc21={};var _0x4d57a1=_['map'](db[_0xc91d('0x23')]['rawAttributes'],function(_0x1e6e09){return{'name':_0x1e6e09[_0xc91d('0x24')],'type':_0x1e6e09[_0xc91d('0x25')][_0xc91d('0x26')]};});_0x51dc21=qs[_0xc91d('0x27')](_0x4d57a1,_0x16b44b);return interaction['findAll'](_0xc91d('0x28'),_0x16b44b['query'],_0x16b44b[_0xc91d('0x29')],_0x51dc21,_0x4d57a1)[_0xc91d('0x2a')](respondWithFilteredResult(_0x1da967,_0x51dc21))[_0xc91d('0x2b')](handleError(_0x1da967,null));};exports['show']=function(_0x47d950,_0x2e0fd2){var _0xbbbdc={'raw':![],'where':{'id':_0x47d950[_0xc91d('0x2c')]['id']}},_0x20f565={};_0x20f565[_0xc91d('0x2d')]=_[_0xc91d('0x2e')](db[_0xc91d('0x23')][_0xc91d('0x2f')]);_0x20f565[_0xc91d('0x30')]=_[_0xc91d('0x2e')](_0x47d950[_0xc91d('0x30')]);_0x20f565['filters']=_[_0xc91d('0x31')](_0x20f565[_0xc91d('0x2d')],_0x20f565[_0xc91d('0x30')]);_0xbbbdc[_0xc91d('0x32')]=_['intersection'](_0x20f565['model'],qs[_0xc91d('0x33')](_0x47d950[_0xc91d('0x30')][_0xc91d('0x33')]));_0xbbbdc[_0xc91d('0x32')]=_0xbbbdc[_0xc91d('0x32')][_0xc91d('0x34')]?_0xbbbdc[_0xc91d('0x32')]:_0x20f565[_0xc91d('0x2d')];if(_0x47d950[_0xc91d('0x30')][_0xc91d('0x35')]){_0xbbbdc[_0xc91d('0x36')]=[{'all':!![]}];}_0xbbbdc=_['merge']({},_0xbbbdc,_0x47d950['options']);return db['MailInteraction'][_0xc91d('0x37')](_0xbbbdc)['then'](handleEntityNotFound(_0x2e0fd2,null))[_0xc91d('0x2a')](respondWithResult(_0x2e0fd2,null))[_0xc91d('0x2b')](handleError(_0x2e0fd2,null));};exports[_0xc91d('0x38')]=function(_0x5c7d07,_0x317ff8){return db['MailInteraction'][_0xc91d('0x38')](_0x5c7d07[_0xc91d('0x39')],{})['then'](respondWithResult(_0x317ff8,0xc9))[_0xc91d('0x2b')](handleError(_0x317ff8,null));};exports[_0xc91d('0x1d')]=function(_0x5d3f85,_0x1d983d){if(_0x5d3f85['body']['id']){delete _0x5d3f85['body']['id'];}return db['MailInteraction'][_0xc91d('0x37')]({'where':{'id':_0x5d3f85['params']['id']}})['then'](handleEntityNotFound(_0x1d983d,null))[_0xc91d('0x2a')](saveUpdates(_0x5d3f85[_0xc91d('0x39')],null))['then'](respondWithResult(_0x1d983d,null))['catch'](handleError(_0x1d983d,null));};exports[_0xc91d('0x1e')]=function(_0x4b0130,_0x523781){return db[_0xc91d('0x23')]['find']({'where':{'id':_0x4b0130[_0xc91d('0x2c')]['id']}})[_0xc91d('0x2a')](handleEntityNotFound(_0x523781,null))[_0xc91d('0x2a')](removeEntity(_0x523781,null))[_0xc91d('0x2b')](handleError(_0x523781,null));};exports[_0xc91d('0x3a')]=function(_0x34a340,_0x148f01){return db['MailInteraction'][_0xc91d('0x3a')]()[_0xc91d('0x2a')](respondWithResult(_0x148f01,null))[_0xc91d('0x2b')](handleError(_0x148f01,null));};exports[_0xc91d('0x3b')]=function(_0x135412,_0x192f14){return db[_0xc91d('0x3c')][_0xc91d('0x37')]({'where':{'id':_0x135412[_0xc91d('0x2c')]['id']}})[_0xc91d('0x2a')](handleEntityNotFound(_0x192f14,null))[_0xc91d('0x2a')](function(_0x4204d9){if(_0x4204d9){return _0x4204d9[_0xc91d('0x3b')](_0x135412[_0xc91d('0x39')]['ids'],_['omit'](_0x135412['body'],[_0xc91d('0x3d'),'id'])||{});}})[_0xc91d('0x2a')](respondWithResult(_0x192f14,null))[_0xc91d('0x2b')](handleError(_0x192f14,null));};exports[_0xc91d('0x3e')]=function(_0x348446,_0x5616c4){var _0x3923ff={'raw':![],'where':{}};var _0x49057d={};var _0x27646d={'count':0x0,'rows':[]};return db[_0xc91d('0x23')][_0xc91d('0x3f')]({'where':{'id':_0x348446[_0xc91d('0x2c')]['id']}})['then'](handleEntityNotFound(_0x5616c4,null))['then'](function(_0x28efbd){if(_0x28efbd){_0x49057d[_0xc91d('0x2d')]=_[_0xc91d('0x2e')](db['MailMessage'][_0xc91d('0x2f')]);_0x49057d['query']=_[_0xc91d('0x2e')](_0x348446[_0xc91d('0x30')]);_0x49057d[_0xc91d('0x40')]=_[_0xc91d('0x31')](_0x49057d['model'],_0x49057d[_0xc91d('0x30')]);_0x3923ff[_0xc91d('0x32')]=_[_0xc91d('0x31')](_0x49057d[_0xc91d('0x2d')],qs[_0xc91d('0x33')](_0x348446[_0xc91d('0x30')][_0xc91d('0x33')]));_0x3923ff[_0xc91d('0x32')]=_0x3923ff['attributes'][_0xc91d('0x34')]?_0x3923ff[_0xc91d('0x32')]:_0x49057d[_0xc91d('0x2d')];if(!_0x348446['query']['hasOwnProperty'](_0xc91d('0x41'))){_0x3923ff['limit']=qs[_0xc91d('0x1a')](_0x348446['query']['limit']);_0x3923ff['offset']=qs[_0xc91d('0x17')](_0x348446[_0xc91d('0x30')]['offset']);}_0x3923ff[_0xc91d('0x42')]=qs['sort'](_0x348446[_0xc91d('0x30')]['sort']);_0x3923ff['where']=qs['filters'](_['pick'](_0x348446[_0xc91d('0x30')],_0x49057d[_0xc91d('0x40')]));_0x3923ff[_0xc91d('0x43')][_0xc91d('0x44')]=_0x28efbd['id'];if(_0x348446['query'][_0xc91d('0x45')]){_0x3923ff[_0xc91d('0x43')]=_[_0xc91d('0x46')](_0x3923ff[_0xc91d('0x43')],{'$or':_['map'](_0x3923ff[_0xc91d('0x32')],function(_0x4dca6a){var _0x32574c={};_0x32574c[_0x4dca6a]={'$like':'%'+_0x348446[_0xc91d('0x30')][_0xc91d('0x45')]+'%'};return _0x32574c;})});}if(_0x348446[_0xc91d('0x30')][_0xc91d('0x47')]){var _0x2de3c5=_0x348446[_0xc91d('0x30')]['$gte'][_0xc91d('0x48')](',');var _0x2e8434={};_0x2e8434[_0x2de3c5[0x0]]={'$gte':moment(_0x2de3c5[0x1])[_0xc91d('0x49')](_0xc91d('0x4a'))};_0x3923ff[_0xc91d('0x43')]=_[_0xc91d('0x46')](_0x3923ff[_0xc91d('0x43')],_0x2e8434);}_0x3923ff=_[_0xc91d('0x46')]({},_0x3923ff,_0x348446[_0xc91d('0x4b')]);return db['MailMessage'][_0xc91d('0x19')]({'where':_0x3923ff[_0xc91d('0x43')]})[_0xc91d('0x2a')](function(_0x38b5c2){_0x27646d[_0xc91d('0x19')]=_0x38b5c2;if(_0x348446[_0xc91d('0x30')]['includeAll']){_0x3923ff[_0xc91d('0x36')]=[{'all':!![]}];}return db[_0xc91d('0x3c')][_0xc91d('0x4c')](_0x3923ff);})[_0xc91d('0x2a')](function(_0xe245b6){if(_0x348446[_0xc91d('0x30')][_0xc91d('0x4d')]===_0xc91d('0x4e')){for(var _0x401b77=0x0;_0x401b77<_0xe245b6[_0xc91d('0x34')];_0x401b77++){_0xe245b6[_0x401b77][_0xc91d('0x39')]=juice(_0xe245b6[_0x401b77]['body']);}}_0x27646d[_0xc91d('0x4f')]=_0xe245b6;return _0x27646d;});}})['then'](respondWithFilteredResult(_0x5616c4,_0x3923ff))['catch'](handleError(_0x5616c4,null));};exports[_0xc91d('0x50')]=function(_0x58f665,_0x1b520a){return db['MailInteraction'][_0xc91d('0x37')]({'where':{'id':_0x58f665[_0xc91d('0x2c')]['id']}})[_0xc91d('0x2a')](handleEntityNotFound(_0x1b520a,null))[_0xc91d('0x2a')](function(_0x14870f){if(_0x14870f){return _0x14870f[_0xc91d('0x51')](_0x58f665[_0xc91d('0x39')][_0xc91d('0x3d')],_['omit'](_0x58f665[_0xc91d('0x39')],['ids','id'])||{})['spread'](function(){return db[_0xc91d('0x52')]['findAll']({'attributes':['id',_0xc91d('0x20'),_0xc91d('0x53')],'where':{'id':_0x58f665[_0xc91d('0x39')][_0xc91d('0x3d')]}});})['then'](function(_0x18074f){socket[_0xc91d('0x54')](_0xc91d('0x55'),{'id':Number(_0x58f665[_0xc91d('0x2c')]['id']),'tags':_0x18074f||[]});return{'id':Number(_0x58f665[_0xc91d('0x2c')]['id']),'tags':_0x18074f||[]};});}})[_0xc91d('0x2a')](respondWithResult(_0x1b520a,null))[_0xc91d('0x2b')](handleError(_0x1b520a,null));};exports[_0xc91d('0x56')]=function(_0x4b1609,_0x588127){return db[_0xc91d('0x23')][_0xc91d('0x37')]({'where':{'id':_0x4b1609['params']['id']}})[_0xc91d('0x2a')](handleEntityNotFound(_0x588127,null))[_0xc91d('0x2a')](function(_0x24f7f1){if(_0x24f7f1){return _0x24f7f1[_0xc91d('0x56')](_0x4b1609[_0xc91d('0x30')][_0xc91d('0x3d')]);}})[_0xc91d('0x2a')](respondWithStatusCode(_0x588127,null))[_0xc91d('0x2b')](handleError(_0x588127,null));};exports['download']=function(_0x39345a,_0x44ddbf){var _0xb40ae0=moment()[_0xc91d('0x57')]()[_0xc91d('0x58')]();var _0x5f5ce4=path[_0xc91d('0x59')](config['root'],'server',_0xc91d('0x5a'),_0xc91d('0x5b'));var _0x2feac9=path[_0xc91d('0x59')](config[_0xc91d('0x5c')],_0xc91d('0x5d'),_0xc91d('0x5a'),_0xc91d('0x5e'));var _0x579c5d=path['join'](_0x5f5ce4,_0xb40ae0);var _0x2fee04=util[_0xc91d('0x49')](_0xc91d('0x5f'),_0x39345a['params']['id'],_0xb40ae0);var _0x2cbd94=path[_0xc91d('0x59')](_0x5f5ce4,_0x2fee04);var _0xd9c6ca=[];if(_0x39345a[_0xc91d('0x30')][_0xc91d('0x5e')]){_0xd9c6ca[_0xc91d('0x60')]({'model':db[_0xc91d('0x61')],'as':_0xc91d('0x62'),'raw':!![]});}var _0x507f72=[{'model':db['MailMessage'],'as':'Messages','attributes':['id',_0xc91d('0x39'),_0xc91d('0x63'),'to','cc',_0xc91d('0x64'),_0xc91d('0x65'),_0xc91d('0x66')],'where':{'secret':![]},'order':qs['sort']('id'),'include':_0xd9c6ca}];return db['MailInteraction'][_0xc91d('0x37')]({'where':{'id':_0x39345a['params']['id']},'include':_0x507f72})[_0xc91d('0x2a')](handleEntityNotFound(_0x44ddbf,null))[_0xc91d('0x2a')](function(_0xfc331d){if(_0xfc331d&&_0xfc331d[_0xc91d('0x67')]){var _0x6abe95=_0xfc331d[_0xc91d('0x68')]({'plain':!![]});fs['mkdirSync'](_0x579c5d);return BPromise[_0xc91d('0x69')](_0x6abe95['Messages'],function(_0x4baa18,_0x59527c){var _0x483478={'from':_0x4baa18[_0xc91d('0x63')],'to':_0x4baa18['to']||'missing.recipient@your.company.com','subject':_0x4baa18[_0xc91d('0x65')],'html':htmlEntities[_0xc91d('0x6a')](_0x4baa18[_0xc91d('0x39')]),'headers':{'Date':moment(_0x4baa18['createdAt'])[_0xc91d('0x49')](_0xc91d('0x6b'))},'attachments':[]};if(_0x4baa18['cc']){_0x483478[_0xc91d('0x6c')]['Cc']=_0x4baa18['cc'];}if(_0x4baa18[_0xc91d('0x64')]){_0x483478[_0xc91d('0x6c')][_0xc91d('0x6d')]=_0x4baa18[_0xc91d('0x64')];}return new BPromise(function(_0x315a45,_0x286f8c){if(_0x4baa18[_0xc91d('0x62')]){for(var _0x9a99a3=0x0;_0x9a99a3<_0x4baa18['Attachments']['length'];_0x9a99a3++){var _0x4bc1fb=_0x4baa18[_0xc91d('0x62')][_0x9a99a3];var _0x1eb17f=path['join'](_0x2feac9,_0x4bc1fb[_0xc91d('0x6e')]);if(fs[_0xc91d('0x6f')](_0x1eb17f)){_0x483478[_0xc91d('0x5e')][_0xc91d('0x60')]({'name':_0x4bc1fb[_0xc91d('0x20')],'contentType':_0x4bc1fb[_0xc91d('0x25')],'data':fs[_0xc91d('0x70')](_0x1eb17f)});}}}emlformat[_0xc91d('0x71')](_0x483478,function(_0x577f72,_0x44e1ad){if(_0x577f72)return _0x286f8c(_0x577f72);fs['writeFileSync'](path[_0xc91d('0x59')](_0x579c5d,util[_0xc91d('0x49')]('message%d.eml',_0x59527c)),_0x44e1ad);return _0x315a45(_0x44e1ad);});});})[_0xc91d('0x2a')](function(){return new BPromise(function(_0x38546c,_0xdf1731){zipdir(_0x579c5d,{'saveTo':_0x2cbd94},function(_0x1ec87b,_0x53f9bf){if(_0x1ec87b)return _0xdf1731(_0x1ec87b);return _0x38546c(_0x53f9bf);});})[_0xc91d('0x2a')](function(){return new BPromise(function(_0xec18a3,_0x5116fe){rimraf(_0x579c5d,function(_0x4244a6){if(_0x4244a6)_0x5116fe(_0x4244a6);return _0xec18a3();});});})[_0xc91d('0x2a')](function(){return _0x44ddbf[_0xc91d('0x72')](_0x2cbd94,_0x2fee04,function(_0x4e1f03){if(!_0x4e1f03)fs[_0xc91d('0x73')](_0x2cbd94);});});});}else{return _0x44ddbf['sendStatus'](0xc8);}})[_0xc91d('0x2b')](handleError(_0x44ddbf,null));};
\ No newline at end of file