Built motion from commit 980b26c3.|2.6.29
[motion2.git] / server / api / mailInteraction / mailInteraction.controller.js
index 05ec454..5462e6f 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x9022=['filter','$gte','split','format','YYYY-MM-DD\x20HH:mm:ss','merge','include','true','rows','addTags','setTags','spread','color','emit','mailInteractionTags:save','removeTags','download','unix','toString','join','root','server','files','attachments','transcript-%d-%s.zip','push','Attachment','Attachments','Messages','from','bcc','subject','get','each','missing.recipient@your.company.com','decode','createdAt','ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ','headers','Bcc','existsSync','type','readFileSync','writeFileSync','message%d.eml','unlinkSync','rimraf','zip-dir','util','path','lodash','juice','../../components/interaction/service','../../components/parsers/qs','../../config/logger','api','../../config/environment','../../mysqldb','html-entities','defaults','redis','localhost','./mailInteraction.socket','register','sendStatus','status','end','json','offset','undefined','limit','count','set','Content-Range','update','destroy','then','error','name','send','index','rawAttributes','fieldName','key','getOptions','findAll','mail','query','user','show','params','model','keys','MailInteraction','filters','intersection','fields','attributes','length','includeAll','options','find','catch','create','body','describe','addMessage','ids','getMessages','findOne','MailMessage','hasOwnProperty','sort','where','pick','MailInteractionId','map'];(function(_0x999b85,_0x1edc2b){var _0x1d7124=function(_0x59cd29){while(--_0x59cd29){_0x999b85['push'](_0x999b85['shift']());}};_0x1d7124(++_0x1edc2b);}(_0x9022,0x18d));var _0x2902=function(_0xafb895,_0x2d0336){_0xafb895=_0xafb895-0x0;var _0x983d51=_0x9022[_0xafb895];return _0x983d51;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x2902('0x0'));var zipdir=require(_0x2902('0x1'));var moment=require('moment');var BPromise=require('bluebird');var util=require(_0x2902('0x2'));var path=require(_0x2902('0x3'));var fs=require('fs');var _=require(_0x2902('0x4'));var juice=require(_0x2902('0x5'));var Redis=require('ioredis');var interaction=require(_0x2902('0x6'));var qs=require(_0x2902('0x7'));var logger=require(_0x2902('0x8'))(_0x2902('0x9'));var config=require(_0x2902('0xa'));var db=require(_0x2902('0xb'))['db'];var htmlEntities=require(_0x2902('0xc'));config['redis']=_[_0x2902('0xd')](config[_0x2902('0xe')],{'host':_0x2902('0xf'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x2902('0xe')]));require(_0x2902('0x10'))[_0x2902('0x11')](socket);function respondWithStatusCode(_0xd9158f,_0xfeff57){_0xfeff57=_0xfeff57||0xcc;return function(_0x14a489){if(_0x14a489){return _0xd9158f[_0x2902('0x12')](_0xfeff57);}return _0xd9158f[_0x2902('0x13')](_0xfeff57)[_0x2902('0x14')]();};}function respondWithResult(_0x9b3424,_0x16ad7a){_0x16ad7a=_0x16ad7a||0xc8;return function(_0x1a51a0){if(_0x1a51a0){return _0x9b3424[_0x2902('0x13')](_0x16ad7a)[_0x2902('0x15')](_0x1a51a0);}};}function respondWithFilteredResult(_0x2e2033,_0x34685b){return function(_0x429eda){if(_0x429eda){var _0x30abc4=typeof _0x34685b[_0x2902('0x16')]===_0x2902('0x17')&&typeof _0x34685b[_0x2902('0x18')]===_0x2902('0x17');var _0x1abaff=_0x429eda[_0x2902('0x19')];var _0x302c37=_0x30abc4?0x0:_0x34685b[_0x2902('0x16')];var _0x157837=_0x30abc4?_0x429eda[_0x2902('0x19')]:_0x34685b[_0x2902('0x16')]+_0x34685b[_0x2902('0x18')];var _0x44ea9a;if(_0x157837>=_0x1abaff){_0x157837=_0x1abaff;_0x44ea9a=0xc8;}else{_0x44ea9a=0xce;}_0x2e2033[_0x2902('0x13')](_0x44ea9a);return _0x2e2033[_0x2902('0x1a')](_0x2902('0x1b'),_0x302c37+'-'+_0x157837+'/'+_0x1abaff)[_0x2902('0x15')](_0x429eda);}return null;};}function saveUpdates(_0x1163e8){return function(_0x31c1b9){if(_0x31c1b9){return _0x31c1b9[_0x2902('0x1c')](_0x1163e8)['then'](function(_0x50eacf){return _0x50eacf;});}return null;};}function removeEntity(_0x2cac89){return function(_0x1ac12c){if(_0x1ac12c){return _0x1ac12c[_0x2902('0x1d')]()[_0x2902('0x1e')](function(){_0x2cac89['status'](0xcc)[_0x2902('0x14')]();});}};}function handleEntityNotFound(_0x518f3d){return function(_0x1c55db){if(!_0x1c55db){_0x518f3d[_0x2902('0x12')](0x194);}return _0x1c55db;};}function handleError(_0x1d1d7b,_0x4dca8f){_0x4dca8f=_0x4dca8f||0x1f4;return function(_0x45b6d2){logger[_0x2902('0x1f')](_0x45b6d2['stack']);if(_0x45b6d2[_0x2902('0x20')]){delete _0x45b6d2[_0x2902('0x20')];}_0x1d1d7b[_0x2902('0x13')](_0x4dca8f)[_0x2902('0x21')](_0x45b6d2);};}exports[_0x2902('0x22')]=function(_0x2ee492,_0x6b4485){var _0xf217f3={};var _0x3db3eb=_['map'](db['MailInteraction'][_0x2902('0x23')],function(_0x32b794){return{'name':_0x32b794[_0x2902('0x24')],'type':_0x32b794['type'][_0x2902('0x25')]};});_0xf217f3=qs[_0x2902('0x26')](_0x3db3eb,_0x2ee492);return interaction[_0x2902('0x27')](_0x2902('0x28'),_0x2ee492[_0x2902('0x29')],_0x2ee492[_0x2902('0x2a')],_0xf217f3,_0x3db3eb)[_0x2902('0x1e')](respondWithFilteredResult(_0x6b4485,_0xf217f3))['catch'](handleError(_0x6b4485,null));};exports[_0x2902('0x2b')]=function(_0x255762,_0x1936a6){var _0x624597={'raw':![],'where':{'id':_0x255762[_0x2902('0x2c')]['id']}},_0x381021={};_0x381021[_0x2902('0x2d')]=_[_0x2902('0x2e')](db[_0x2902('0x2f')][_0x2902('0x23')]);_0x381021[_0x2902('0x29')]=_[_0x2902('0x2e')](_0x255762[_0x2902('0x29')]);_0x381021[_0x2902('0x30')]=_[_0x2902('0x31')](_0x381021[_0x2902('0x2d')],_0x381021[_0x2902('0x29')]);_0x624597['attributes']=_[_0x2902('0x31')](_0x381021['model'],qs[_0x2902('0x32')](_0x255762[_0x2902('0x29')][_0x2902('0x32')]));_0x624597[_0x2902('0x33')]=_0x624597['attributes'][_0x2902('0x34')]?_0x624597[_0x2902('0x33')]:_0x381021[_0x2902('0x2d')];if(_0x255762['query'][_0x2902('0x35')]){_0x624597['include']=[{'all':!![]}];}_0x624597=_['merge']({},_0x624597,_0x255762[_0x2902('0x36')]);return db[_0x2902('0x2f')][_0x2902('0x37')](_0x624597)[_0x2902('0x1e')](handleEntityNotFound(_0x1936a6,null))['then'](respondWithResult(_0x1936a6,null))[_0x2902('0x38')](handleError(_0x1936a6,null));};exports[_0x2902('0x39')]=function(_0x3fafee,_0x477ce3){return db[_0x2902('0x2f')][_0x2902('0x39')](_0x3fafee[_0x2902('0x3a')],{})[_0x2902('0x1e')](respondWithResult(_0x477ce3,0xc9))['catch'](handleError(_0x477ce3,null));};exports[_0x2902('0x1c')]=function(_0x3e352c,_0x31b966){if(_0x3e352c[_0x2902('0x3a')]['id']){delete _0x3e352c[_0x2902('0x3a')]['id'];}return db[_0x2902('0x2f')]['find']({'where':{'id':_0x3e352c[_0x2902('0x2c')]['id']}})[_0x2902('0x1e')](handleEntityNotFound(_0x31b966,null))[_0x2902('0x1e')](saveUpdates(_0x3e352c[_0x2902('0x3a')],null))['then'](respondWithResult(_0x31b966,null))[_0x2902('0x38')](handleError(_0x31b966,null));};exports[_0x2902('0x1d')]=function(_0x5e7f78,_0x486a28){return db[_0x2902('0x2f')]['find']({'where':{'id':_0x5e7f78[_0x2902('0x2c')]['id']}})['then'](handleEntityNotFound(_0x486a28,null))[_0x2902('0x1e')](removeEntity(_0x486a28,null))[_0x2902('0x38')](handleError(_0x486a28,null));};exports['describe']=function(_0x5dbad7,_0x512462){return db[_0x2902('0x2f')][_0x2902('0x3b')]()[_0x2902('0x1e')](respondWithResult(_0x512462,null))[_0x2902('0x38')](handleError(_0x512462,null));};exports[_0x2902('0x3c')]=function(_0x3bfa47,_0x56d3a4){return db['MailMessage'][_0x2902('0x37')]({'where':{'id':_0x3bfa47['params']['id']}})[_0x2902('0x1e')](handleEntityNotFound(_0x56d3a4,null))[_0x2902('0x1e')](function(_0x2feca1){if(_0x2feca1){return _0x2feca1[_0x2902('0x3c')](_0x3bfa47['body']['ids'],_['omit'](_0x3bfa47[_0x2902('0x3a')],[_0x2902('0x3d'),'id'])||{});}})['then'](respondWithResult(_0x56d3a4,null))['catch'](handleError(_0x56d3a4,null));};exports[_0x2902('0x3e')]=function(_0x25e42e,_0x3c97a4){var _0x376e46={'raw':![],'where':{}};var _0x554aef={};var _0x4b8922={'count':0x0,'rows':[]};return db[_0x2902('0x2f')][_0x2902('0x3f')]({'where':{'id':_0x25e42e['params']['id']}})[_0x2902('0x1e')](handleEntityNotFound(_0x3c97a4,null))[_0x2902('0x1e')](function(_0x3e2803){if(_0x3e2803){_0x554aef[_0x2902('0x2d')]=_[_0x2902('0x2e')](db[_0x2902('0x40')][_0x2902('0x23')]);_0x554aef[_0x2902('0x29')]=_[_0x2902('0x2e')](_0x25e42e[_0x2902('0x29')]);_0x554aef[_0x2902('0x30')]=_['intersection'](_0x554aef[_0x2902('0x2d')],_0x554aef[_0x2902('0x29')]);_0x376e46['attributes']=_['intersection'](_0x554aef['model'],qs[_0x2902('0x32')](_0x25e42e[_0x2902('0x29')][_0x2902('0x32')]));_0x376e46[_0x2902('0x33')]=_0x376e46[_0x2902('0x33')][_0x2902('0x34')]?_0x376e46[_0x2902('0x33')]:_0x554aef['model'];if(!_0x25e42e[_0x2902('0x29')][_0x2902('0x41')]('nolimit')){_0x376e46[_0x2902('0x18')]=qs['limit'](_0x25e42e[_0x2902('0x29')][_0x2902('0x18')]);_0x376e46[_0x2902('0x16')]=qs['offset'](_0x25e42e[_0x2902('0x29')]['offset']);}_0x376e46['order']=qs['sort'](_0x25e42e[_0x2902('0x29')][_0x2902('0x42')]);_0x376e46[_0x2902('0x43')]=qs['filters'](_[_0x2902('0x44')](_0x25e42e[_0x2902('0x29')],_0x554aef[_0x2902('0x30')]));_0x376e46[_0x2902('0x43')][_0x2902('0x45')]=_0x3e2803['id'];if(_0x25e42e[_0x2902('0x29')]['filter']){_0x376e46[_0x2902('0x43')]=_['merge'](_0x376e46['where'],{'$or':_[_0x2902('0x46')](_0x376e46[_0x2902('0x33')],function(_0x3394ea){var _0x185789={};_0x185789[_0x3394ea]={'$like':'%'+_0x25e42e[_0x2902('0x29')][_0x2902('0x47')]+'%'};return _0x185789;})});}if(_0x25e42e[_0x2902('0x29')][_0x2902('0x48')]){var _0x1df313=_0x25e42e[_0x2902('0x29')][_0x2902('0x48')][_0x2902('0x49')](',');var _0xc1613b={};_0xc1613b[_0x1df313[0x0]]={'$gte':moment(_0x1df313[0x1])[_0x2902('0x4a')](_0x2902('0x4b'))};_0x376e46[_0x2902('0x43')]=_[_0x2902('0x4c')](_0x376e46[_0x2902('0x43')],_0xc1613b);}_0x376e46=_[_0x2902('0x4c')]({},_0x376e46,_0x25e42e[_0x2902('0x36')]);return db['MailMessage'][_0x2902('0x19')]({'where':_0x376e46['where']})[_0x2902('0x1e')](function(_0x6b284f){_0x4b8922[_0x2902('0x19')]=_0x6b284f;if(_0x25e42e['query'][_0x2902('0x35')]){_0x376e46[_0x2902('0x4d')]=[{'all':!![]}];}return db[_0x2902('0x40')][_0x2902('0x27')](_0x376e46);})[_0x2902('0x1e')](function(_0xbe1951){if(_0x25e42e['query']['inlineCss']===_0x2902('0x4e')){for(var _0x194d39=0x0;_0x194d39<_0xbe1951[_0x2902('0x34')];_0x194d39++){_0xbe1951[_0x194d39][_0x2902('0x3a')]=juice(_0xbe1951[_0x194d39][_0x2902('0x3a')]);}}_0x4b8922[_0x2902('0x4f')]=_0xbe1951;return _0x4b8922;});}})[_0x2902('0x1e')](respondWithFilteredResult(_0x3c97a4,_0x376e46))['catch'](handleError(_0x3c97a4,null));};exports[_0x2902('0x50')]=function(_0x2e6be4,_0x49e06e){return db[_0x2902('0x2f')]['find']({'where':{'id':_0x2e6be4[_0x2902('0x2c')]['id']}})[_0x2902('0x1e')](handleEntityNotFound(_0x49e06e,null))[_0x2902('0x1e')](function(_0x729a1){if(_0x729a1){return _0x729a1[_0x2902('0x51')](_0x2e6be4['body']['ids'],_['omit'](_0x2e6be4[_0x2902('0x3a')],['ids','id'])||{})[_0x2902('0x52')](function(){return db['Tag']['findAll']({'attributes':['id','name',_0x2902('0x53')],'where':{'id':_0x2e6be4['body'][_0x2902('0x3d')]}});})[_0x2902('0x1e')](function(_0x5207e8){socket[_0x2902('0x54')](_0x2902('0x55'),{'id':Number(_0x2e6be4[_0x2902('0x2c')]['id']),'tags':_0x5207e8||[]});return{'id':Number(_0x2e6be4['params']['id']),'tags':_0x5207e8||[]};});}})['then'](respondWithResult(_0x49e06e,null))[_0x2902('0x38')](handleError(_0x49e06e,null));};exports[_0x2902('0x56')]=function(_0xe6283b,_0x4caf00){return db[_0x2902('0x2f')][_0x2902('0x37')]({'where':{'id':_0xe6283b[_0x2902('0x2c')]['id']}})[_0x2902('0x1e')](handleEntityNotFound(_0x4caf00,null))[_0x2902('0x1e')](function(_0xe6a211){if(_0xe6a211){return _0xe6a211[_0x2902('0x56')](_0xe6283b['query'][_0x2902('0x3d')]);}})[_0x2902('0x1e')](respondWithStatusCode(_0x4caf00,null))['catch'](handleError(_0x4caf00,null));};exports[_0x2902('0x57')]=function(_0x55cf27,_0x34f7fe){var _0xdfe55f=moment()[_0x2902('0x58')]()[_0x2902('0x59')]();var _0x507359=path[_0x2902('0x5a')](config[_0x2902('0x5b')],_0x2902('0x5c'),_0x2902('0x5d'),'tmp');var _0x3893db=path[_0x2902('0x5a')](config[_0x2902('0x5b')],'server','files',_0x2902('0x5e'));var _0x3699bb=path[_0x2902('0x5a')](_0x507359,_0xdfe55f);var _0x21c924=util[_0x2902('0x4a')](_0x2902('0x5f'),_0x55cf27[_0x2902('0x2c')]['id'],_0xdfe55f);var _0x22f413=path[_0x2902('0x5a')](_0x507359,_0x21c924);var _0x367a5d=[];if(_0x55cf27['query'][_0x2902('0x5e')]){_0x367a5d[_0x2902('0x60')]({'model':db[_0x2902('0x61')],'as':_0x2902('0x62'),'raw':!![]});}var _0x169127=[{'model':db[_0x2902('0x40')],'as':_0x2902('0x63'),'attributes':['id',_0x2902('0x3a'),_0x2902('0x64'),'to','cc',_0x2902('0x65'),_0x2902('0x66'),'createdAt'],'where':{'secret':![]},'order':qs[_0x2902('0x42')]('id'),'include':_0x367a5d}];return db['MailInteraction'][_0x2902('0x37')]({'where':{'id':_0x55cf27[_0x2902('0x2c')]['id']},'include':_0x169127})[_0x2902('0x1e')](handleEntityNotFound(_0x34f7fe,null))[_0x2902('0x1e')](function(_0x5469c9){if(_0x5469c9&&_0x5469c9['Messages']){var _0x5644b4=_0x5469c9[_0x2902('0x67')]({'plain':!![]});fs['mkdirSync'](_0x3699bb);return BPromise[_0x2902('0x68')](_0x5644b4[_0x2902('0x63')],function(_0x28ccd4,_0x32a167){var _0x354e9d={'from':_0x28ccd4['from'],'to':_0x28ccd4['to']||_0x2902('0x69'),'subject':_0x28ccd4['subject'],'html':htmlEntities[_0x2902('0x6a')](_0x28ccd4[_0x2902('0x3a')]),'headers':{'Date':moment(_0x28ccd4[_0x2902('0x6b')])[_0x2902('0x4a')](_0x2902('0x6c'))},'attachments':[]};if(_0x28ccd4['cc']){_0x354e9d['headers']['Cc']=_0x28ccd4['cc'];}if(_0x28ccd4[_0x2902('0x65')]){_0x354e9d[_0x2902('0x6d')][_0x2902('0x6e')]=_0x28ccd4[_0x2902('0x65')];}return new BPromise(function(_0x3e633f,_0x83da3f){if(_0x28ccd4['Attachments']){for(var _0x2cf354=0x0;_0x2cf354<_0x28ccd4[_0x2902('0x62')]['length'];_0x2cf354++){var _0x4b6cb5=_0x28ccd4[_0x2902('0x62')][_0x2cf354];var _0x55a676=path[_0x2902('0x5a')](_0x3893db,_0x4b6cb5['basename']);if(fs[_0x2902('0x6f')](_0x55a676)){_0x354e9d[_0x2902('0x5e')][_0x2902('0x60')]({'name':_0x4b6cb5['name'],'contentType':_0x4b6cb5[_0x2902('0x70')],'data':fs[_0x2902('0x71')](_0x55a676)});}}}emlformat['build'](_0x354e9d,function(_0x2fda7a,_0x474961){if(_0x2fda7a)return _0x83da3f(_0x2fda7a);fs[_0x2902('0x72')](path['join'](_0x3699bb,util[_0x2902('0x4a')](_0x2902('0x73'),_0x32a167)),_0x474961);return _0x3e633f(_0x474961);});});})[_0x2902('0x1e')](function(){return new BPromise(function(_0x3c1dbe,_0xc87b8b){zipdir(_0x3699bb,{'saveTo':_0x22f413},function(_0x5c93ee,_0x43d93f){if(_0x5c93ee)return _0xc87b8b(_0x5c93ee);return _0x3c1dbe(_0x43d93f);});})['then'](function(){return new BPromise(function(_0x20f0eb,_0x4951c0){rimraf(_0x3699bb,function(_0x2107eb){if(_0x2107eb)_0x4951c0(_0x2107eb);return _0x20f0eb();});});})[_0x2902('0x1e')](function(){return _0x34f7fe[_0x2902('0x57')](_0x22f413,_0x21c924,function(_0x1b7600){if(!_0x1b7600)fs[_0x2902('0x74')](_0x22f413);});});});}else{return _0x34f7fe[_0x2902('0x12')](0xc8);}})['catch'](handleError(_0x34f7fe,null));};
\ No newline at end of file
+var _0x48d2=['redis','./mailInteraction.socket','register','sendStatus','status','json','offset','undefined','limit','count','set','Content-Range','then','destroy','end','error','stack','name','send','index','map','MailInteraction','fieldName','type','key','getOptions','findAll','mail','query','catch','show','model','keys','filters','intersection','attributes','fields','length','includeAll','include','options','create','update','body','find','describe','addMessage','MailMessage','params','ids','getMessages','hasOwnProperty','sort','where','pick','MailInteractionId','merge','filter','$gte','split','format','YYYY-MM-DD\x20HH:mm:ss','inlineCss','true','rows','addTags','setTags','omit','spread','Tag','color','emit','mailInteractionTags:save','removeTags','toString','root','files','tmp','server','attachments','transcript-%d-%s.zip','join','push','Attachment','Attachments','Messages','from','bcc','subject','each','decode','createdAt','ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ','headers','Bcc','basename','existsSync','readFileSync','build','message%d.eml','eml-format','rimraf','zip-dir','moment','bluebird','util','path','lodash','juice','../../components/parsers/qs','../../config/logger','../../config/environment','../../mysqldb','html-entities','socket.io-emitter'];(function(_0xf6e8d,_0x5e94e9){var _0x5a6d4b=function(_0x4a8d75){while(--_0x4a8d75){_0xf6e8d['push'](_0xf6e8d['shift']());}};_0x5a6d4b(++_0x5e94e9);}(_0x48d2,0x1bd));var _0x248d=function(_0x3e531a,_0x28a82a){_0x3e531a=_0x3e531a-0x0;var _0x3c2574=_0x48d2[_0x3e531a];return _0x3c2574;};'use strict';var emlformat=require(_0x248d('0x0'));var rimraf=require(_0x248d('0x1'));var zipdir=require(_0x248d('0x2'));var moment=require(_0x248d('0x3'));var BPromise=require(_0x248d('0x4'));var util=require(_0x248d('0x5'));var path=require(_0x248d('0x6'));var fs=require('fs');var _=require(_0x248d('0x7'));var juice=require(_0x248d('0x8'));var Redis=require('ioredis');var interaction=require('../../components/interaction/service');var qs=require(_0x248d('0x9'));var logger=require(_0x248d('0xa'))('api');var config=require(_0x248d('0xb'));var db=require(_0x248d('0xc'))['db'];var htmlEntities=require(_0x248d('0xd'));config['redis']=_['defaults'](config['redis'],{'host':'localhost','port':0x18eb});var socket=require(_0x248d('0xe'))(new Redis(config[_0x248d('0xf')]));require(_0x248d('0x10'))[_0x248d('0x11')](socket);function respondWithStatusCode(_0x3ef0e2,_0x434b74){_0x434b74=_0x434b74||0xcc;return function(_0x1d2b0d){if(_0x1d2b0d){return _0x3ef0e2[_0x248d('0x12')](_0x434b74);}return _0x3ef0e2[_0x248d('0x13')](_0x434b74)['end']();};}function respondWithResult(_0xe7ceec,_0x571d99){_0x571d99=_0x571d99||0xc8;return function(_0x2e68f0){if(_0x2e68f0){return _0xe7ceec[_0x248d('0x13')](_0x571d99)[_0x248d('0x14')](_0x2e68f0);}};}function respondWithFilteredResult(_0x385f01,_0x4abcef){return function(_0x45390c){if(_0x45390c){var _0x2eb9de=typeof _0x4abcef[_0x248d('0x15')]===_0x248d('0x16')&&typeof _0x4abcef[_0x248d('0x17')]===_0x248d('0x16');var _0x34f997=_0x45390c['count'];var _0x2e04d7=_0x2eb9de?0x0:_0x4abcef['offset'];var _0x14306a=_0x2eb9de?_0x45390c[_0x248d('0x18')]:_0x4abcef[_0x248d('0x15')]+_0x4abcef['limit'];var _0x1503ed;if(_0x14306a>=_0x34f997){_0x14306a=_0x34f997;_0x1503ed=0xc8;}else{_0x1503ed=0xce;}_0x385f01[_0x248d('0x13')](_0x1503ed);return _0x385f01[_0x248d('0x19')](_0x248d('0x1a'),_0x2e04d7+'-'+_0x14306a+'/'+_0x34f997)[_0x248d('0x14')](_0x45390c);}return null;};}function saveUpdates(_0x160573){return function(_0x50fb95){if(_0x50fb95){return _0x50fb95['update'](_0x160573)[_0x248d('0x1b')](function(_0x2c5f75){return _0x2c5f75;});}return null;};}function removeEntity(_0x132302){return function(_0x24a982){if(_0x24a982){return _0x24a982[_0x248d('0x1c')]()[_0x248d('0x1b')](function(){_0x132302['status'](0xcc)[_0x248d('0x1d')]();});}};}function handleEntityNotFound(_0xc9d118){return function(_0x13c824){if(!_0x13c824){_0xc9d118['sendStatus'](0x194);}return _0x13c824;};}function handleError(_0x103a77,_0x4a4d03){_0x4a4d03=_0x4a4d03||0x1f4;return function(_0x2cbca8){logger[_0x248d('0x1e')](_0x2cbca8[_0x248d('0x1f')]);if(_0x2cbca8[_0x248d('0x20')]){delete _0x2cbca8['name'];}_0x103a77['status'](_0x4a4d03)[_0x248d('0x21')](_0x2cbca8);};}exports[_0x248d('0x22')]=function(_0x3da15e,_0x294927){var _0x53af0a={};var _0x1dd3ee=_[_0x248d('0x23')](db[_0x248d('0x24')]['rawAttributes'],function(_0x492809){return{'name':_0x492809[_0x248d('0x25')],'type':_0x492809[_0x248d('0x26')][_0x248d('0x27')]};});_0x53af0a=qs[_0x248d('0x28')](_0x1dd3ee,_0x3da15e);return interaction[_0x248d('0x29')](_0x248d('0x2a'),_0x3da15e[_0x248d('0x2b')],_0x3da15e['user'],_0x53af0a,_0x1dd3ee)[_0x248d('0x1b')](respondWithFilteredResult(_0x294927,_0x53af0a))[_0x248d('0x2c')](handleError(_0x294927,null));};exports[_0x248d('0x2d')]=function(_0x14638c,_0x3738e3){var _0x35bf47={'raw':![],'where':{'id':_0x14638c['params']['id']}},_0x51c31f={};_0x51c31f[_0x248d('0x2e')]=_[_0x248d('0x2f')](db['MailInteraction']['rawAttributes']);_0x51c31f[_0x248d('0x2b')]=_[_0x248d('0x2f')](_0x14638c['query']);_0x51c31f[_0x248d('0x30')]=_[_0x248d('0x31')](_0x51c31f['model'],_0x51c31f['query']);_0x35bf47[_0x248d('0x32')]=_[_0x248d('0x31')](_0x51c31f[_0x248d('0x2e')],qs['fields'](_0x14638c['query'][_0x248d('0x33')]));_0x35bf47['attributes']=_0x35bf47[_0x248d('0x32')][_0x248d('0x34')]?_0x35bf47[_0x248d('0x32')]:_0x51c31f[_0x248d('0x2e')];if(_0x14638c[_0x248d('0x2b')][_0x248d('0x35')]){_0x35bf47[_0x248d('0x36')]=[{'all':!![]}];}_0x35bf47=_['merge']({},_0x35bf47,_0x14638c[_0x248d('0x37')]);return db[_0x248d('0x24')]['find'](_0x35bf47)[_0x248d('0x1b')](handleEntityNotFound(_0x3738e3,null))[_0x248d('0x1b')](respondWithResult(_0x3738e3,null))[_0x248d('0x2c')](handleError(_0x3738e3,null));};exports[_0x248d('0x38')]=function(_0x19c7c5,_0x5da324){return db['MailInteraction'][_0x248d('0x38')](_0x19c7c5['body'],{})[_0x248d('0x1b')](respondWithResult(_0x5da324,0xc9))['catch'](handleError(_0x5da324,null));};exports[_0x248d('0x39')]=function(_0x3ec75e,_0x45fc05){if(_0x3ec75e[_0x248d('0x3a')]['id']){delete _0x3ec75e[_0x248d('0x3a')]['id'];}return db[_0x248d('0x24')][_0x248d('0x3b')]({'where':{'id':_0x3ec75e['params']['id']}})[_0x248d('0x1b')](handleEntityNotFound(_0x45fc05,null))[_0x248d('0x1b')](saveUpdates(_0x3ec75e[_0x248d('0x3a')],null))['then'](respondWithResult(_0x45fc05,null))[_0x248d('0x2c')](handleError(_0x45fc05,null));};exports[_0x248d('0x1c')]=function(_0x1dbb7e,_0x13c6f3){return db[_0x248d('0x24')][_0x248d('0x3b')]({'where':{'id':_0x1dbb7e['params']['id']}})[_0x248d('0x1b')](handleEntityNotFound(_0x13c6f3,null))[_0x248d('0x1b')](removeEntity(_0x13c6f3,null))[_0x248d('0x2c')](handleError(_0x13c6f3,null));};exports['describe']=function(_0x5b7ef0,_0x5c8e0c){return db[_0x248d('0x24')][_0x248d('0x3c')]()['then'](respondWithResult(_0x5c8e0c,null))['catch'](handleError(_0x5c8e0c,null));};exports[_0x248d('0x3d')]=function(_0x37dac8,_0x4bf5f4){return db[_0x248d('0x3e')]['find']({'where':{'id':_0x37dac8[_0x248d('0x3f')]['id']}})[_0x248d('0x1b')](handleEntityNotFound(_0x4bf5f4,null))[_0x248d('0x1b')](function(_0x175428){if(_0x175428){return _0x175428['addMessage'](_0x37dac8['body']['ids'],_['omit'](_0x37dac8[_0x248d('0x3a')],[_0x248d('0x40'),'id'])||{});}})[_0x248d('0x1b')](respondWithResult(_0x4bf5f4,null))['catch'](handleError(_0x4bf5f4,null));};exports[_0x248d('0x41')]=function(_0x1349b8,_0x4df71d){var _0x59e194={'raw':![],'where':{}};var _0x179c96={};var _0x38c2c2={'count':0x0,'rows':[]};return db[_0x248d('0x24')]['findOne']({'where':{'id':_0x1349b8[_0x248d('0x3f')]['id']}})['then'](handleEntityNotFound(_0x4df71d,null))[_0x248d('0x1b')](function(_0xded1af){if(_0xded1af){_0x179c96[_0x248d('0x2e')]=_[_0x248d('0x2f')](db['MailMessage']['rawAttributes']);_0x179c96[_0x248d('0x2b')]=_[_0x248d('0x2f')](_0x1349b8['query']);_0x179c96[_0x248d('0x30')]=_[_0x248d('0x31')](_0x179c96['model'],_0x179c96['query']);_0x59e194[_0x248d('0x32')]=_['intersection'](_0x179c96[_0x248d('0x2e')],qs['fields'](_0x1349b8[_0x248d('0x2b')][_0x248d('0x33')]));_0x59e194['attributes']=_0x59e194['attributes'][_0x248d('0x34')]?_0x59e194[_0x248d('0x32')]:_0x179c96[_0x248d('0x2e')];if(!_0x1349b8[_0x248d('0x2b')][_0x248d('0x42')]('nolimit')){_0x59e194[_0x248d('0x17')]=qs[_0x248d('0x17')](_0x1349b8['query']['limit']);_0x59e194['offset']=qs[_0x248d('0x15')](_0x1349b8[_0x248d('0x2b')][_0x248d('0x15')]);}_0x59e194['order']=qs[_0x248d('0x43')](_0x1349b8[_0x248d('0x2b')][_0x248d('0x43')]);_0x59e194[_0x248d('0x44')]=qs[_0x248d('0x30')](_[_0x248d('0x45')](_0x1349b8[_0x248d('0x2b')],_0x179c96[_0x248d('0x30')]));_0x59e194[_0x248d('0x44')][_0x248d('0x46')]=_0xded1af['id'];if(_0x1349b8[_0x248d('0x2b')]['filter']){_0x59e194[_0x248d('0x44')]=_[_0x248d('0x47')](_0x59e194[_0x248d('0x44')],{'$or':_[_0x248d('0x23')](_0x59e194[_0x248d('0x32')],function(_0x36534d){var _0x457498={};_0x457498[_0x36534d]={'$like':'%'+_0x1349b8[_0x248d('0x2b')][_0x248d('0x48')]+'%'};return _0x457498;})});}if(_0x1349b8[_0x248d('0x2b')][_0x248d('0x49')]){var _0x4a47d6=_0x1349b8['query'][_0x248d('0x49')][_0x248d('0x4a')](',');var _0x3ad9c3={};_0x3ad9c3[_0x4a47d6[0x0]]={'$gte':moment(_0x4a47d6[0x1])[_0x248d('0x4b')](_0x248d('0x4c'))};_0x59e194[_0x248d('0x44')]=_[_0x248d('0x47')](_0x59e194['where'],_0x3ad9c3);}_0x59e194=_['merge']({},_0x59e194,_0x1349b8['options']);return db[_0x248d('0x3e')][_0x248d('0x18')]({'where':_0x59e194[_0x248d('0x44')]})[_0x248d('0x1b')](function(_0x29d8ed){_0x38c2c2[_0x248d('0x18')]=_0x29d8ed;if(_0x1349b8['query'][_0x248d('0x35')]){_0x59e194[_0x248d('0x36')]=[{'all':!![]}];}return db['MailMessage'][_0x248d('0x29')](_0x59e194);})['then'](function(_0x1f05e4){if(_0x1349b8[_0x248d('0x2b')][_0x248d('0x4d')]===_0x248d('0x4e')){for(var _0x13ccb8=0x0;_0x13ccb8<_0x1f05e4[_0x248d('0x34')];_0x13ccb8++){_0x1f05e4[_0x13ccb8]['body']=juice(_0x1f05e4[_0x13ccb8][_0x248d('0x3a')]);}}_0x38c2c2[_0x248d('0x4f')]=_0x1f05e4;return _0x38c2c2;});}})[_0x248d('0x1b')](respondWithFilteredResult(_0x4df71d,_0x59e194))[_0x248d('0x2c')](handleError(_0x4df71d,null));};exports[_0x248d('0x50')]=function(_0x35ed93,_0x4b319c){return db['MailInteraction']['find']({'where':{'id':_0x35ed93[_0x248d('0x3f')]['id']}})[_0x248d('0x1b')](handleEntityNotFound(_0x4b319c,null))[_0x248d('0x1b')](function(_0x128281){if(_0x128281){return _0x128281[_0x248d('0x51')](_0x35ed93['body']['ids'],_[_0x248d('0x52')](_0x35ed93[_0x248d('0x3a')],[_0x248d('0x40'),'id'])||{})[_0x248d('0x53')](function(){return db[_0x248d('0x54')]['findAll']({'attributes':['id',_0x248d('0x20'),_0x248d('0x55')],'where':{'id':_0x35ed93[_0x248d('0x3a')][_0x248d('0x40')]}});})[_0x248d('0x1b')](function(_0x212c53){socket[_0x248d('0x56')](_0x248d('0x57'),{'id':Number(_0x35ed93[_0x248d('0x3f')]['id']),'tags':_0x212c53||[]});return{'id':Number(_0x35ed93[_0x248d('0x3f')]['id']),'tags':_0x212c53||[]};});}})[_0x248d('0x1b')](respondWithResult(_0x4b319c,null))[_0x248d('0x2c')](handleError(_0x4b319c,null));};exports[_0x248d('0x58')]=function(_0x25a057,_0x1106ae){return db[_0x248d('0x24')]['find']({'where':{'id':_0x25a057[_0x248d('0x3f')]['id']}})[_0x248d('0x1b')](handleEntityNotFound(_0x1106ae,null))[_0x248d('0x1b')](function(_0x7ed1c5){if(_0x7ed1c5){return _0x7ed1c5[_0x248d('0x58')](_0x25a057[_0x248d('0x2b')][_0x248d('0x40')]);}})[_0x248d('0x1b')](respondWithStatusCode(_0x1106ae,null))[_0x248d('0x2c')](handleError(_0x1106ae,null));};exports['download']=function(_0x50f213,_0x333dee){var _0x480f1c=moment()['unix']()[_0x248d('0x59')]();var _0x22c0bc=path['join'](config[_0x248d('0x5a')],'server',_0x248d('0x5b'),_0x248d('0x5c'));var _0x2f929e=path['join'](config[_0x248d('0x5a')],_0x248d('0x5d'),_0x248d('0x5b'),_0x248d('0x5e'));var _0x1f3fd8=path['join'](_0x22c0bc,_0x480f1c);var _0x291ef6=util[_0x248d('0x4b')](_0x248d('0x5f'),_0x50f213[_0x248d('0x3f')]['id'],_0x480f1c);var _0x281b8f=path[_0x248d('0x60')](_0x22c0bc,_0x291ef6);var _0x2a90b5=[];if(_0x50f213['query'][_0x248d('0x5e')]){_0x2a90b5[_0x248d('0x61')]({'model':db[_0x248d('0x62')],'as':_0x248d('0x63'),'raw':!![]});}var _0x4ca47b=[{'model':db[_0x248d('0x3e')],'as':_0x248d('0x64'),'attributes':['id','body',_0x248d('0x65'),'to','cc',_0x248d('0x66'),_0x248d('0x67'),'createdAt'],'where':{'secret':![]},'order':qs[_0x248d('0x43')]('id'),'include':_0x2a90b5}];return db[_0x248d('0x24')]['find']({'where':{'id':_0x50f213[_0x248d('0x3f')]['id']},'include':_0x4ca47b})[_0x248d('0x1b')](handleEntityNotFound(_0x333dee,null))['then'](function(_0x10f08a){if(_0x10f08a&&_0x10f08a[_0x248d('0x64')]){var _0x6d8933=_0x10f08a['get']({'plain':!![]});fs['mkdirSync'](_0x1f3fd8);return BPromise[_0x248d('0x68')](_0x6d8933[_0x248d('0x64')],function(_0x3a99ed,_0x1dbf77){var _0x6dce08={'from':_0x3a99ed[_0x248d('0x65')],'to':_0x3a99ed['to']||'missing.recipient@your.company.com','subject':_0x3a99ed[_0x248d('0x67')],'html':htmlEntities[_0x248d('0x69')](_0x3a99ed[_0x248d('0x3a')]),'headers':{'Date':moment(_0x3a99ed[_0x248d('0x6a')])[_0x248d('0x4b')](_0x248d('0x6b'))},'attachments':[]};if(_0x3a99ed['cc']){_0x6dce08['headers']['Cc']=_0x3a99ed['cc'];}if(_0x3a99ed[_0x248d('0x66')]){_0x6dce08[_0x248d('0x6c')][_0x248d('0x6d')]=_0x3a99ed[_0x248d('0x66')];}return new BPromise(function(_0x2e64c9,_0x472b76){if(_0x3a99ed[_0x248d('0x63')]){for(var _0x26141f=0x0;_0x26141f<_0x3a99ed[_0x248d('0x63')][_0x248d('0x34')];_0x26141f++){var _0x1fd971=_0x3a99ed['Attachments'][_0x26141f];var _0x2d9f72=path[_0x248d('0x60')](_0x2f929e,_0x1fd971[_0x248d('0x6e')]);if(fs[_0x248d('0x6f')](_0x2d9f72)){_0x6dce08[_0x248d('0x5e')][_0x248d('0x61')]({'name':_0x1fd971['name'],'contentType':_0x1fd971[_0x248d('0x26')],'data':fs[_0x248d('0x70')](_0x2d9f72)});}}}emlformat[_0x248d('0x71')](_0x6dce08,function(_0x1c408e,_0x35d402){if(_0x1c408e)return _0x472b76(_0x1c408e);fs['writeFileSync'](path[_0x248d('0x60')](_0x1f3fd8,util['format'](_0x248d('0x72'),_0x1dbf77)),_0x35d402);return _0x2e64c9(_0x35d402);});});})['then'](function(){return new BPromise(function(_0x304779,_0x1402a0){zipdir(_0x1f3fd8,{'saveTo':_0x281b8f},function(_0x216610,_0x27e10d){if(_0x216610)return _0x1402a0(_0x216610);return _0x304779(_0x27e10d);});})['then'](function(){return new BPromise(function(_0x25c1e6,_0x2dcd0f){rimraf(_0x1f3fd8,function(_0x139fad){if(_0x139fad)_0x2dcd0f(_0x139fad);return _0x25c1e6();});});})[_0x248d('0x1b')](function(){return _0x333dee['download'](_0x281b8f,_0x291ef6,function(_0x1be802){if(!_0x1be802)fs['unlinkSync'](_0x281b8f);});});});}else{return _0x333dee[_0x248d('0x12')](0xc8);}})['catch'](handleError(_0x333dee,null));};
\ No newline at end of file