Built motion from commit 3c2ce842.|2.6.31
[motion2.git] / server / api / mailInteraction / mailInteraction.controller.js
index 3e0136d..d5a4154 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xf4fc=['user','catch','show','params','keys','query','intersection','attributes','model','fields','length','include','merge','options','find','create','body','destroy','describe','addMessage','MailMessage','ids','omit','getMessages','findOne','filters','hasOwnProperty','nolimit','order','sort','where','pick','$gte','YYYY-MM-DD\x20HH:mm:ss','inlineCss','true','rows','addTags','spread','Tag','emit','removeTags','download','unix','join','root','server','files','tmp','attachments','transcript-%d-%s.zip','push','Attachment','Attachments','Messages','from','bcc','subject','createdAt','get','mkdirSync','missing.recipient@your.company.com','decode','format','ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ','headers','basename','readFileSync','build','writeFileSync','message%d.eml','unlinkSync','sendStatus','rimraf','zip-dir','moment','bluebird','util','path','lodash','juice','ioredis','../../components/interaction/service','../../components/parsers/qs','../../config/logger','../../config/environment','../../mysqldb','defaults','localhost','socket.io-emitter','redis','./mailInteraction.socket','register','status','offset','undefined','limit','count','Content-Range','json','update','then','end','stack','send','index','map','MailInteraction','rawAttributes','fieldName','type','key','getOptions','findAll','mail'];(function(_0x381bff,_0x19d01f){var _0x201ab1=function(_0x7d6446){while(--_0x7d6446){_0x381bff['push'](_0x381bff['shift']());}};_0x201ab1(++_0x19d01f);}(_0xf4fc,0x1a2));var _0xcf4f=function(_0x3ec400,_0xd083bb){_0x3ec400=_0x3ec400-0x0;var _0x5fc639=_0xf4fc[_0x3ec400];return _0x5fc639;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0xcf4f('0x0'));var zipdir=require(_0xcf4f('0x1'));var moment=require(_0xcf4f('0x2'));var BPromise=require(_0xcf4f('0x3'));var util=require(_0xcf4f('0x4'));var path=require(_0xcf4f('0x5'));var fs=require('fs');var _=require(_0xcf4f('0x6'));var juice=require(_0xcf4f('0x7'));var Redis=require(_0xcf4f('0x8'));var interaction=require(_0xcf4f('0x9'));var qs=require(_0xcf4f('0xa'));var logger=require(_0xcf4f('0xb'))('api');var config=require(_0xcf4f('0xc'));var db=require(_0xcf4f('0xd'))['db'];var htmlEntities=require('html-entities');config['redis']=_[_0xcf4f('0xe')](config['redis'],{'host':_0xcf4f('0xf'),'port':0x18eb});var socket=require(_0xcf4f('0x10'))(new Redis(config[_0xcf4f('0x11')]));require(_0xcf4f('0x12'))[_0xcf4f('0x13')](socket);function respondWithStatusCode(_0x28b99e,_0x308760){_0x308760=_0x308760||0xcc;return function(_0x393781){if(_0x393781){return _0x28b99e['sendStatus'](_0x308760);}return _0x28b99e[_0xcf4f('0x14')](_0x308760)['end']();};}function respondWithResult(_0x35cde6,_0x58999c){_0x58999c=_0x58999c||0xc8;return function(_0x36d4b6){if(_0x36d4b6){return _0x35cde6[_0xcf4f('0x14')](_0x58999c)['json'](_0x36d4b6);}};}function respondWithFilteredResult(_0xb298b2,_0x582c7b){return function(_0x42f66e){if(_0x42f66e){var _0x18abed=typeof _0x582c7b[_0xcf4f('0x15')]===_0xcf4f('0x16')&&typeof _0x582c7b[_0xcf4f('0x17')]===_0xcf4f('0x16');var _0x30a6ec=_0x42f66e[_0xcf4f('0x18')];var _0x202f65=_0x18abed?0x0:_0x582c7b[_0xcf4f('0x15')];var _0x1a25f8=_0x18abed?_0x42f66e[_0xcf4f('0x18')]:_0x582c7b[_0xcf4f('0x15')]+_0x582c7b[_0xcf4f('0x17')];var _0x3b1689;if(_0x1a25f8>=_0x30a6ec){_0x1a25f8=_0x30a6ec;_0x3b1689=0xc8;}else{_0x3b1689=0xce;}_0xb298b2['status'](_0x3b1689);return _0xb298b2['set'](_0xcf4f('0x19'),_0x202f65+'-'+_0x1a25f8+'/'+_0x30a6ec)[_0xcf4f('0x1a')](_0x42f66e);}return null;};}function saveUpdates(_0x242550){return function(_0x475d6f){if(_0x475d6f){return _0x475d6f[_0xcf4f('0x1b')](_0x242550)[_0xcf4f('0x1c')](function(_0x917cc8){return _0x917cc8;});}return null;};}function removeEntity(_0x2189e8){return function(_0x138908){if(_0x138908){return _0x138908['destroy']()[_0xcf4f('0x1c')](function(){_0x2189e8['status'](0xcc)[_0xcf4f('0x1d')]();});}};}function handleEntityNotFound(_0x4b8313){return function(_0x234082){if(!_0x234082){_0x4b8313['sendStatus'](0x194);}return _0x234082;};}function handleError(_0x1a979a,_0x3fa230){_0x3fa230=_0x3fa230||0x1f4;return function(_0x5c2b89){logger['error'](_0x5c2b89[_0xcf4f('0x1e')]);if(_0x5c2b89['name']){delete _0x5c2b89['name'];}_0x1a979a['status'](_0x3fa230)[_0xcf4f('0x1f')](_0x5c2b89);};}exports[_0xcf4f('0x20')]=function(_0x5ad5f0,_0x1eb9ee){var _0x15a18c={};var _0x37f864=_[_0xcf4f('0x21')](db[_0xcf4f('0x22')][_0xcf4f('0x23')],function(_0x4f5f63){return{'name':_0x4f5f63[_0xcf4f('0x24')],'type':_0x4f5f63[_0xcf4f('0x25')][_0xcf4f('0x26')]};});_0x15a18c=qs[_0xcf4f('0x27')](_0x37f864,_0x5ad5f0);return interaction[_0xcf4f('0x28')](_0xcf4f('0x29'),_0x5ad5f0['query'],_0x5ad5f0[_0xcf4f('0x2a')],_0x15a18c,_0x37f864)['then'](respondWithFilteredResult(_0x1eb9ee,_0x15a18c))[_0xcf4f('0x2b')](handleError(_0x1eb9ee,null));};exports[_0xcf4f('0x2c')]=function(_0x16bfc4,_0x261c56){var _0x5ebdf2={'raw':![],'where':{'id':_0x16bfc4[_0xcf4f('0x2d')]['id']}},_0x30c5f6={};_0x30c5f6['model']=_[_0xcf4f('0x2e')](db[_0xcf4f('0x22')][_0xcf4f('0x23')]);_0x30c5f6[_0xcf4f('0x2f')]=_['keys'](_0x16bfc4[_0xcf4f('0x2f')]);_0x30c5f6['filters']=_[_0xcf4f('0x30')](_0x30c5f6['model'],_0x30c5f6['query']);_0x5ebdf2[_0xcf4f('0x31')]=_[_0xcf4f('0x30')](_0x30c5f6[_0xcf4f('0x32')],qs[_0xcf4f('0x33')](_0x16bfc4[_0xcf4f('0x2f')][_0xcf4f('0x33')]));_0x5ebdf2['attributes']=_0x5ebdf2[_0xcf4f('0x31')][_0xcf4f('0x34')]?_0x5ebdf2[_0xcf4f('0x31')]:_0x30c5f6[_0xcf4f('0x32')];if(_0x16bfc4['query']['includeAll']){_0x5ebdf2[_0xcf4f('0x35')]=[{'all':!![]}];}_0x5ebdf2=_[_0xcf4f('0x36')]({},_0x5ebdf2,_0x16bfc4[_0xcf4f('0x37')]);return db[_0xcf4f('0x22')][_0xcf4f('0x38')](_0x5ebdf2)['then'](handleEntityNotFound(_0x261c56,null))[_0xcf4f('0x1c')](respondWithResult(_0x261c56,null))[_0xcf4f('0x2b')](handleError(_0x261c56,null));};exports[_0xcf4f('0x39')]=function(_0x1c9fd5,_0x448171){return db[_0xcf4f('0x22')][_0xcf4f('0x39')](_0x1c9fd5[_0xcf4f('0x3a')],{})[_0xcf4f('0x1c')](respondWithResult(_0x448171,0xc9))[_0xcf4f('0x2b')](handleError(_0x448171,null));};exports[_0xcf4f('0x1b')]=function(_0x1b0516,_0xbae16c){if(_0x1b0516['body']['id']){delete _0x1b0516[_0xcf4f('0x3a')]['id'];}return db[_0xcf4f('0x22')]['find']({'where':{'id':_0x1b0516[_0xcf4f('0x2d')]['id']}})[_0xcf4f('0x1c')](handleEntityNotFound(_0xbae16c,null))[_0xcf4f('0x1c')](saveUpdates(_0x1b0516[_0xcf4f('0x3a')],null))[_0xcf4f('0x1c')](respondWithResult(_0xbae16c,null))[_0xcf4f('0x2b')](handleError(_0xbae16c,null));};exports[_0xcf4f('0x3b')]=function(_0x5de279,_0x3ef6b1){return db[_0xcf4f('0x22')]['find']({'where':{'id':_0x5de279[_0xcf4f('0x2d')]['id']}})[_0xcf4f('0x1c')](handleEntityNotFound(_0x3ef6b1,null))['then'](removeEntity(_0x3ef6b1,null))[_0xcf4f('0x2b')](handleError(_0x3ef6b1,null));};exports['describe']=function(_0x399bb8,_0x5e5843){return db[_0xcf4f('0x22')][_0xcf4f('0x3c')]()[_0xcf4f('0x1c')](respondWithResult(_0x5e5843,null))['catch'](handleError(_0x5e5843,null));};exports[_0xcf4f('0x3d')]=function(_0x21c3dd,_0x4a6694){return db[_0xcf4f('0x3e')]['find']({'where':{'id':_0x21c3dd['params']['id']}})[_0xcf4f('0x1c')](handleEntityNotFound(_0x4a6694,null))['then'](function(_0x3b60ba){if(_0x3b60ba){return _0x3b60ba[_0xcf4f('0x3d')](_0x21c3dd[_0xcf4f('0x3a')][_0xcf4f('0x3f')],_[_0xcf4f('0x40')](_0x21c3dd['body'],[_0xcf4f('0x3f'),'id'])||{});}})[_0xcf4f('0x1c')](respondWithResult(_0x4a6694,null))[_0xcf4f('0x2b')](handleError(_0x4a6694,null));};exports[_0xcf4f('0x41')]=function(_0x59c03d,_0x5db49d){var _0x2b3f6c={'raw':![],'where':{}};var _0x2b5d5e={};var _0x597fe0={'count':0x0,'rows':[]};return db[_0xcf4f('0x22')][_0xcf4f('0x42')]({'where':{'id':_0x59c03d['params']['id']}})[_0xcf4f('0x1c')](handleEntityNotFound(_0x5db49d,null))[_0xcf4f('0x1c')](function(_0x79039f){if(_0x79039f){_0x2b5d5e['model']=_[_0xcf4f('0x2e')](db[_0xcf4f('0x3e')][_0xcf4f('0x23')]);_0x2b5d5e[_0xcf4f('0x2f')]=_[_0xcf4f('0x2e')](_0x59c03d['query']);_0x2b5d5e[_0xcf4f('0x43')]=_[_0xcf4f('0x30')](_0x2b5d5e['model'],_0x2b5d5e[_0xcf4f('0x2f')]);_0x2b3f6c[_0xcf4f('0x31')]=_[_0xcf4f('0x30')](_0x2b5d5e[_0xcf4f('0x32')],qs[_0xcf4f('0x33')](_0x59c03d[_0xcf4f('0x2f')][_0xcf4f('0x33')]));_0x2b3f6c['attributes']=_0x2b3f6c[_0xcf4f('0x31')][_0xcf4f('0x34')]?_0x2b3f6c['attributes']:_0x2b5d5e[_0xcf4f('0x32')];if(!_0x59c03d[_0xcf4f('0x2f')][_0xcf4f('0x44')](_0xcf4f('0x45'))){_0x2b3f6c[_0xcf4f('0x17')]=qs[_0xcf4f('0x17')](_0x59c03d['query']['limit']);_0x2b3f6c[_0xcf4f('0x15')]=qs[_0xcf4f('0x15')](_0x59c03d[_0xcf4f('0x2f')][_0xcf4f('0x15')]);}_0x2b3f6c[_0xcf4f('0x46')]=qs[_0xcf4f('0x47')](_0x59c03d[_0xcf4f('0x2f')]['sort']);_0x2b3f6c[_0xcf4f('0x48')]=qs[_0xcf4f('0x43')](_[_0xcf4f('0x49')](_0x59c03d[_0xcf4f('0x2f')],_0x2b5d5e['filters']));_0x2b3f6c['where']['MailInteractionId']=_0x79039f['id'];if(_0x59c03d[_0xcf4f('0x2f')]['filter']){_0x2b3f6c['where']=_[_0xcf4f('0x36')](_0x2b3f6c['where'],{'$or':_['map'](_0x2b3f6c[_0xcf4f('0x31')],function(_0x90483e){var _0x1285af={};_0x1285af[_0x90483e]={'$like':'%'+_0x59c03d[_0xcf4f('0x2f')]['filter']+'%'};return _0x1285af;})});}if(_0x59c03d['query'][_0xcf4f('0x4a')]){var _0x275a10=_0x59c03d[_0xcf4f('0x2f')][_0xcf4f('0x4a')]['split'](',');var _0x255189={};_0x255189[_0x275a10[0x0]]={'$gte':moment(_0x275a10[0x1])['format'](_0xcf4f('0x4b'))};_0x2b3f6c[_0xcf4f('0x48')]=_[_0xcf4f('0x36')](_0x2b3f6c[_0xcf4f('0x48')],_0x255189);}_0x2b3f6c=_[_0xcf4f('0x36')]({},_0x2b3f6c,_0x59c03d['options']);return db[_0xcf4f('0x3e')][_0xcf4f('0x18')]({'where':_0x2b3f6c[_0xcf4f('0x48')]})[_0xcf4f('0x1c')](function(_0x84bdb4){_0x597fe0[_0xcf4f('0x18')]=_0x84bdb4;if(_0x59c03d[_0xcf4f('0x2f')]['includeAll']){_0x2b3f6c[_0xcf4f('0x35')]=[{'all':!![]}];}return db['MailMessage'][_0xcf4f('0x28')](_0x2b3f6c);})[_0xcf4f('0x1c')](function(_0x2e8c74){if(_0x59c03d['query'][_0xcf4f('0x4c')]===_0xcf4f('0x4d')){for(var _0x21d3eb=0x0;_0x21d3eb<_0x2e8c74[_0xcf4f('0x34')];_0x21d3eb++){_0x2e8c74[_0x21d3eb][_0xcf4f('0x3a')]=juice(_0x2e8c74[_0x21d3eb][_0xcf4f('0x3a')]);}}_0x597fe0[_0xcf4f('0x4e')]=_0x2e8c74;return _0x597fe0;});}})[_0xcf4f('0x1c')](respondWithFilteredResult(_0x5db49d,_0x2b3f6c))[_0xcf4f('0x2b')](handleError(_0x5db49d,null));};exports[_0xcf4f('0x4f')]=function(_0xc0f90a,_0x27e794){return db[_0xcf4f('0x22')][_0xcf4f('0x38')]({'where':{'id':_0xc0f90a['params']['id']}})[_0xcf4f('0x1c')](handleEntityNotFound(_0x27e794,null))[_0xcf4f('0x1c')](function(_0x11cba9){if(_0x11cba9){return _0x11cba9['setTags'](_0xc0f90a[_0xcf4f('0x3a')][_0xcf4f('0x3f')],_['omit'](_0xc0f90a[_0xcf4f('0x3a')],[_0xcf4f('0x3f'),'id'])||{})[_0xcf4f('0x50')](function(){return db[_0xcf4f('0x51')][_0xcf4f('0x28')]({'attributes':['id','name','color'],'where':{'id':_0xc0f90a[_0xcf4f('0x3a')][_0xcf4f('0x3f')]}});})[_0xcf4f('0x1c')](function(_0x56af60){socket[_0xcf4f('0x52')]('mailInteractionTags:save',{'id':Number(_0xc0f90a[_0xcf4f('0x2d')]['id']),'tags':_0x56af60||[]});return{'id':Number(_0xc0f90a['params']['id']),'tags':_0x56af60||[]};});}})[_0xcf4f('0x1c')](respondWithResult(_0x27e794,null))[_0xcf4f('0x2b')](handleError(_0x27e794,null));};exports['removeTags']=function(_0x1fe714,_0x364437){return db[_0xcf4f('0x22')][_0xcf4f('0x38')]({'where':{'id':_0x1fe714[_0xcf4f('0x2d')]['id']}})[_0xcf4f('0x1c')](handleEntityNotFound(_0x364437,null))[_0xcf4f('0x1c')](function(_0x4fe188){if(_0x4fe188){return _0x4fe188[_0xcf4f('0x53')](_0x1fe714[_0xcf4f('0x2f')][_0xcf4f('0x3f')]);}})[_0xcf4f('0x1c')](respondWithStatusCode(_0x364437,null))[_0xcf4f('0x2b')](handleError(_0x364437,null));};exports[_0xcf4f('0x54')]=function(_0x5bb64b,_0x16b5b6){var _0x391672=moment()[_0xcf4f('0x55')]()['toString']();var _0x525390=path[_0xcf4f('0x56')](config[_0xcf4f('0x57')],_0xcf4f('0x58'),_0xcf4f('0x59'),_0xcf4f('0x5a'));var _0x331d4f=path[_0xcf4f('0x56')](config['root'],'server','files',_0xcf4f('0x5b'));var _0x1b3d91=path[_0xcf4f('0x56')](_0x525390,_0x391672);var _0xbf484=util['format'](_0xcf4f('0x5c'),_0x5bb64b['params']['id'],_0x391672);var _0xfcd01=path[_0xcf4f('0x56')](_0x525390,_0xbf484);var _0x3645a9=[];if(_0x5bb64b[_0xcf4f('0x2f')][_0xcf4f('0x5b')]){_0x3645a9[_0xcf4f('0x5d')]({'model':db[_0xcf4f('0x5e')],'as':_0xcf4f('0x5f'),'raw':!![]});}var _0x4d8767=[{'model':db[_0xcf4f('0x3e')],'as':_0xcf4f('0x60'),'attributes':['id',_0xcf4f('0x3a'),_0xcf4f('0x61'),'to','cc',_0xcf4f('0x62'),_0xcf4f('0x63'),_0xcf4f('0x64')],'where':{'secret':![]},'order':qs[_0xcf4f('0x47')]('id'),'include':_0x3645a9}];return db[_0xcf4f('0x22')][_0xcf4f('0x38')]({'where':{'id':_0x5bb64b['params']['id']},'include':_0x4d8767})[_0xcf4f('0x1c')](handleEntityNotFound(_0x16b5b6,null))[_0xcf4f('0x1c')](function(_0x4697ab){if(_0x4697ab&&_0x4697ab['Messages']){var _0x29b805=_0x4697ab[_0xcf4f('0x65')]({'plain':!![]});fs[_0xcf4f('0x66')](_0x1b3d91);return BPromise['each'](_0x29b805[_0xcf4f('0x60')],function(_0x570c19,_0x211784){var _0x2577e5={'from':_0x570c19[_0xcf4f('0x61')],'to':_0x570c19['to']||_0xcf4f('0x67'),'subject':_0x570c19['subject'],'html':htmlEntities[_0xcf4f('0x68')](_0x570c19[_0xcf4f('0x3a')]),'headers':{'Date':moment(_0x570c19[_0xcf4f('0x64')])[_0xcf4f('0x69')](_0xcf4f('0x6a'))},'attachments':[]};if(_0x570c19['cc']){_0x2577e5['headers']['Cc']=_0x570c19['cc'];}if(_0x570c19[_0xcf4f('0x62')]){_0x2577e5[_0xcf4f('0x6b')]['Bcc']=_0x570c19[_0xcf4f('0x62')];}return new BPromise(function(_0x203f96,_0x593249){if(_0x570c19['Attachments']){for(var _0x11674b=0x0;_0x11674b<_0x570c19[_0xcf4f('0x5f')][_0xcf4f('0x34')];_0x11674b++){var _0x3ba8d9=_0x570c19[_0xcf4f('0x5f')][_0x11674b];var _0x2b67b3=path[_0xcf4f('0x56')](_0x331d4f,_0x3ba8d9[_0xcf4f('0x6c')]);if(fs['existsSync'](_0x2b67b3)){_0x2577e5[_0xcf4f('0x5b')][_0xcf4f('0x5d')]({'name':_0x3ba8d9['name'],'contentType':_0x3ba8d9[_0xcf4f('0x25')],'data':fs[_0xcf4f('0x6d')](_0x2b67b3)});}}}emlformat[_0xcf4f('0x6e')](_0x2577e5,function(_0x5e5130,_0x59f08c){if(_0x5e5130)return _0x593249(_0x5e5130);fs[_0xcf4f('0x6f')](path[_0xcf4f('0x56')](_0x1b3d91,util['format'](_0xcf4f('0x70'),_0x211784)),_0x59f08c);return _0x203f96(_0x59f08c);});});})[_0xcf4f('0x1c')](function(){return new BPromise(function(_0x106247,_0x2fec89){zipdir(_0x1b3d91,{'saveTo':_0xfcd01},function(_0x1095fc,_0x4d50f1){if(_0x1095fc)return _0x2fec89(_0x1095fc);return _0x106247(_0x4d50f1);});})[_0xcf4f('0x1c')](function(){return new BPromise(function(_0x5ce250,_0x1a37ae){rimraf(_0x1b3d91,function(_0x67f073){if(_0x67f073)_0x1a37ae(_0x67f073);return _0x5ce250();});});})['then'](function(){return _0x16b5b6[_0xcf4f('0x54')](_0xfcd01,_0xbf484,function(_0x28f052){if(!_0x28f052)fs[_0xcf4f('0x71')](_0xfcd01);});});});}else{return _0x16b5b6[_0xcf4f('0x72')](0xc8);}})['catch'](handleError(_0x16b5b6,null));};
\ No newline at end of file
+var _0x3007=['map','MailInteraction','fieldName','type','key','getOptions','findAll','mail','query','user','show','params','model','keys','filters','intersection','attributes','fields','includeAll','include','merge','options','find','catch','create','body','describe','addMessage','MailMessage','ids','getMessages','rawAttributes','length','nolimit','order','sort','where','pick','MailInteractionId','filter','$gte','split','format','inlineCss','rows','addTags','setTags','omit','spread','Tag','color','emit','mailInteractionTags:save','removeTags','download','unix','toString','join','server','files','root','attachments','transcript-%d-%s.zip','Attachments','Messages','from','bcc','subject','createdAt','each','missing.recipient@your.company.com','decode','ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ','headers','basename','existsSync','push','readFileSync','writeFileSync','message%d.eml','eml-format','zip-dir','bluebird','util','path','lodash','juice','ioredis','../../components/parsers/qs','../../config/logger','api','../../config/environment','../../mysqldb','html-entities','redis','defaults','localhost','end','json','offset','undefined','count','limit','status','Content-Range','then','destroy','sendStatus','error','stack','name','index'];(function(_0x49bba8,_0x3a9f40){var _0x5dca5d=function(_0x526539){while(--_0x526539){_0x49bba8['push'](_0x49bba8['shift']());}};_0x5dca5d(++_0x3a9f40);}(_0x3007,0xc0));var _0x7300=function(_0x4898f0,_0x49fb26){_0x4898f0=_0x4898f0-0x0;var _0x58b576=_0x3007[_0x4898f0];return _0x58b576;};'use strict';var emlformat=require(_0x7300('0x0'));var rimraf=require('rimraf');var zipdir=require(_0x7300('0x1'));var moment=require('moment');var BPromise=require(_0x7300('0x2'));var util=require(_0x7300('0x3'));var path=require(_0x7300('0x4'));var fs=require('fs');var _=require(_0x7300('0x5'));var juice=require(_0x7300('0x6'));var Redis=require(_0x7300('0x7'));var interaction=require('../../components/interaction/service');var qs=require(_0x7300('0x8'));var logger=require(_0x7300('0x9'))(_0x7300('0xa'));var config=require(_0x7300('0xb'));var db=require(_0x7300('0xc'))['db'];var htmlEntities=require(_0x7300('0xd'));config[_0x7300('0xe')]=_[_0x7300('0xf')](config[_0x7300('0xe')],{'host':_0x7300('0x10'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x7300('0xe')]));require('./mailInteraction.socket')['register'](socket);function respondWithStatusCode(_0x245430,_0x1092c9){_0x1092c9=_0x1092c9||0xcc;return function(_0x23bdc5){if(_0x23bdc5){return _0x245430['sendStatus'](_0x1092c9);}return _0x245430['status'](_0x1092c9)[_0x7300('0x11')]();};}function respondWithResult(_0x42afd3,_0x29d8c3){_0x29d8c3=_0x29d8c3||0xc8;return function(_0x51570f){if(_0x51570f){return _0x42afd3['status'](_0x29d8c3)[_0x7300('0x12')](_0x51570f);}};}function respondWithFilteredResult(_0x5e3bbe,_0x3c0c0b){return function(_0x146055){if(_0x146055){var _0x3457f8=typeof _0x3c0c0b[_0x7300('0x13')]===_0x7300('0x14')&&typeof _0x3c0c0b['limit']===_0x7300('0x14');var _0x4c7c4f=_0x146055[_0x7300('0x15')];var _0x2993d5=_0x3457f8?0x0:_0x3c0c0b['offset'];var _0x951503=_0x3457f8?_0x146055[_0x7300('0x15')]:_0x3c0c0b[_0x7300('0x13')]+_0x3c0c0b[_0x7300('0x16')];var _0x43c6b7;if(_0x951503>=_0x4c7c4f){_0x951503=_0x4c7c4f;_0x43c6b7=0xc8;}else{_0x43c6b7=0xce;}_0x5e3bbe[_0x7300('0x17')](_0x43c6b7);return _0x5e3bbe['set'](_0x7300('0x18'),_0x2993d5+'-'+_0x951503+'/'+_0x4c7c4f)[_0x7300('0x12')](_0x146055);}return null;};}function saveUpdates(_0x31719a){return function(_0xff3be0){if(_0xff3be0){return _0xff3be0['update'](_0x31719a)[_0x7300('0x19')](function(_0x47a767){return _0x47a767;});}return null;};}function removeEntity(_0x460283){return function(_0x2a8b41){if(_0x2a8b41){return _0x2a8b41[_0x7300('0x1a')]()['then'](function(){_0x460283[_0x7300('0x17')](0xcc)[_0x7300('0x11')]();});}};}function handleEntityNotFound(_0x5565f4){return function(_0x510d79){if(!_0x510d79){_0x5565f4[_0x7300('0x1b')](0x194);}return _0x510d79;};}function handleError(_0x3a0f8c,_0x3dbafd){_0x3dbafd=_0x3dbafd||0x1f4;return function(_0x165ecb){logger[_0x7300('0x1c')](_0x165ecb[_0x7300('0x1d')]);if(_0x165ecb[_0x7300('0x1e')]){delete _0x165ecb['name'];}_0x3a0f8c[_0x7300('0x17')](_0x3dbafd)['send'](_0x165ecb);};}exports[_0x7300('0x1f')]=function(_0x131842,_0x1716c2){var _0x202dde={};var _0x527369=_[_0x7300('0x20')](db[_0x7300('0x21')]['rawAttributes'],function(_0x356f2a){return{'name':_0x356f2a[_0x7300('0x22')],'type':_0x356f2a[_0x7300('0x23')][_0x7300('0x24')]};});_0x202dde=qs[_0x7300('0x25')](_0x527369,_0x131842);return interaction[_0x7300('0x26')](_0x7300('0x27'),_0x131842[_0x7300('0x28')],_0x131842[_0x7300('0x29')],_0x202dde,_0x527369)[_0x7300('0x19')](respondWithFilteredResult(_0x1716c2,_0x202dde))['catch'](handleError(_0x1716c2,null));};exports[_0x7300('0x2a')]=function(_0x2ae0c1,_0x379a00){var _0x50f520={'raw':![],'where':{'id':_0x2ae0c1[_0x7300('0x2b')]['id']}},_0x4eec17={};_0x4eec17[_0x7300('0x2c')]=_[_0x7300('0x2d')](db[_0x7300('0x21')]['rawAttributes']);_0x4eec17['query']=_[_0x7300('0x2d')](_0x2ae0c1[_0x7300('0x28')]);_0x4eec17[_0x7300('0x2e')]=_[_0x7300('0x2f')](_0x4eec17[_0x7300('0x2c')],_0x4eec17[_0x7300('0x28')]);_0x50f520[_0x7300('0x30')]=_[_0x7300('0x2f')](_0x4eec17[_0x7300('0x2c')],qs['fields'](_0x2ae0c1['query'][_0x7300('0x31')]));_0x50f520[_0x7300('0x30')]=_0x50f520['attributes']['length']?_0x50f520[_0x7300('0x30')]:_0x4eec17[_0x7300('0x2c')];if(_0x2ae0c1['query'][_0x7300('0x32')]){_0x50f520[_0x7300('0x33')]=[{'all':!![]}];}_0x50f520=_[_0x7300('0x34')]({},_0x50f520,_0x2ae0c1[_0x7300('0x35')]);return db[_0x7300('0x21')][_0x7300('0x36')](_0x50f520)[_0x7300('0x19')](handleEntityNotFound(_0x379a00,null))[_0x7300('0x19')](respondWithResult(_0x379a00,null))[_0x7300('0x37')](handleError(_0x379a00,null));};exports[_0x7300('0x38')]=function(_0xad3793,_0x4ead96){return db['MailInteraction'][_0x7300('0x38')](_0xad3793[_0x7300('0x39')],{})[_0x7300('0x19')](respondWithResult(_0x4ead96,0xc9))['catch'](handleError(_0x4ead96,null));};exports['update']=function(_0x378352,_0x287fef){if(_0x378352[_0x7300('0x39')]['id']){delete _0x378352[_0x7300('0x39')]['id'];}return db[_0x7300('0x21')][_0x7300('0x36')]({'where':{'id':_0x378352[_0x7300('0x2b')]['id']}})[_0x7300('0x19')](handleEntityNotFound(_0x287fef,null))[_0x7300('0x19')](saveUpdates(_0x378352[_0x7300('0x39')],null))[_0x7300('0x19')](respondWithResult(_0x287fef,null))[_0x7300('0x37')](handleError(_0x287fef,null));};exports[_0x7300('0x1a')]=function(_0x235606,_0x5814c7){return db['MailInteraction']['find']({'where':{'id':_0x235606[_0x7300('0x2b')]['id']}})['then'](handleEntityNotFound(_0x5814c7,null))[_0x7300('0x19')](removeEntity(_0x5814c7,null))['catch'](handleError(_0x5814c7,null));};exports[_0x7300('0x3a')]=function(_0x239733,_0x41cab6){return db['MailInteraction'][_0x7300('0x3a')]()[_0x7300('0x19')](respondWithResult(_0x41cab6,null))[_0x7300('0x37')](handleError(_0x41cab6,null));};exports[_0x7300('0x3b')]=function(_0x40a978,_0x4dca77){return db[_0x7300('0x3c')]['find']({'where':{'id':_0x40a978['params']['id']}})[_0x7300('0x19')](handleEntityNotFound(_0x4dca77,null))[_0x7300('0x19')](function(_0x49d29c){if(_0x49d29c){return _0x49d29c['addMessage'](_0x40a978[_0x7300('0x39')][_0x7300('0x3d')],_['omit'](_0x40a978[_0x7300('0x39')],['ids','id'])||{});}})[_0x7300('0x19')](respondWithResult(_0x4dca77,null))[_0x7300('0x37')](handleError(_0x4dca77,null));};exports[_0x7300('0x3e')]=function(_0x13978a,_0x2cdce8){var _0x9c86ae={'raw':![],'where':{}};var _0x3caa05={};var _0x2ee94a={'count':0x0,'rows':[]};return db['MailInteraction']['findOne']({'where':{'id':_0x13978a[_0x7300('0x2b')]['id']}})[_0x7300('0x19')](handleEntityNotFound(_0x2cdce8,null))[_0x7300('0x19')](function(_0x1838ac){if(_0x1838ac){_0x3caa05[_0x7300('0x2c')]=_[_0x7300('0x2d')](db[_0x7300('0x3c')][_0x7300('0x3f')]);_0x3caa05[_0x7300('0x28')]=_[_0x7300('0x2d')](_0x13978a[_0x7300('0x28')]);_0x3caa05['filters']=_[_0x7300('0x2f')](_0x3caa05[_0x7300('0x2c')],_0x3caa05[_0x7300('0x28')]);_0x9c86ae['attributes']=_[_0x7300('0x2f')](_0x3caa05[_0x7300('0x2c')],qs[_0x7300('0x31')](_0x13978a[_0x7300('0x28')][_0x7300('0x31')]));_0x9c86ae[_0x7300('0x30')]=_0x9c86ae[_0x7300('0x30')][_0x7300('0x40')]?_0x9c86ae[_0x7300('0x30')]:_0x3caa05[_0x7300('0x2c')];if(!_0x13978a[_0x7300('0x28')]['hasOwnProperty'](_0x7300('0x41'))){_0x9c86ae[_0x7300('0x16')]=qs['limit'](_0x13978a[_0x7300('0x28')][_0x7300('0x16')]);_0x9c86ae[_0x7300('0x13')]=qs[_0x7300('0x13')](_0x13978a[_0x7300('0x28')][_0x7300('0x13')]);}_0x9c86ae[_0x7300('0x42')]=qs['sort'](_0x13978a[_0x7300('0x28')][_0x7300('0x43')]);_0x9c86ae[_0x7300('0x44')]=qs[_0x7300('0x2e')](_[_0x7300('0x45')](_0x13978a[_0x7300('0x28')],_0x3caa05[_0x7300('0x2e')]));_0x9c86ae[_0x7300('0x44')][_0x7300('0x46')]=_0x1838ac['id'];if(_0x13978a[_0x7300('0x28')][_0x7300('0x47')]){_0x9c86ae[_0x7300('0x44')]=_[_0x7300('0x34')](_0x9c86ae[_0x7300('0x44')],{'$or':_[_0x7300('0x20')](_0x9c86ae[_0x7300('0x30')],function(_0x53dad7){var _0x4ea656={};_0x4ea656[_0x53dad7]={'$like':'%'+_0x13978a['query'][_0x7300('0x47')]+'%'};return _0x4ea656;})});}if(_0x13978a[_0x7300('0x28')][_0x7300('0x48')]){var _0x3fdac6=_0x13978a[_0x7300('0x28')][_0x7300('0x48')][_0x7300('0x49')](',');var _0x2c1043={};_0x2c1043[_0x3fdac6[0x0]]={'$gte':moment(_0x3fdac6[0x1])[_0x7300('0x4a')]('YYYY-MM-DD\x20HH:mm:ss')};_0x9c86ae['where']=_[_0x7300('0x34')](_0x9c86ae[_0x7300('0x44')],_0x2c1043);}_0x9c86ae=_['merge']({},_0x9c86ae,_0x13978a[_0x7300('0x35')]);return db[_0x7300('0x3c')][_0x7300('0x15')]({'where':_0x9c86ae[_0x7300('0x44')]})[_0x7300('0x19')](function(_0x49e8d2){_0x2ee94a[_0x7300('0x15')]=_0x49e8d2;if(_0x13978a[_0x7300('0x28')][_0x7300('0x32')]){_0x9c86ae[_0x7300('0x33')]=[{'all':!![]}];}return db[_0x7300('0x3c')][_0x7300('0x26')](_0x9c86ae);})[_0x7300('0x19')](function(_0x2314fc){if(_0x13978a['query'][_0x7300('0x4b')]==='true'){for(var _0x46234c=0x0;_0x46234c<_0x2314fc[_0x7300('0x40')];_0x46234c++){_0x2314fc[_0x46234c][_0x7300('0x39')]=juice(_0x2314fc[_0x46234c][_0x7300('0x39')]);}}_0x2ee94a[_0x7300('0x4c')]=_0x2314fc;return _0x2ee94a;});}})[_0x7300('0x19')](respondWithFilteredResult(_0x2cdce8,_0x9c86ae))[_0x7300('0x37')](handleError(_0x2cdce8,null));};exports[_0x7300('0x4d')]=function(_0x52a9f6,_0x32914a){return db[_0x7300('0x21')][_0x7300('0x36')]({'where':{'id':_0x52a9f6[_0x7300('0x2b')]['id']}})[_0x7300('0x19')](handleEntityNotFound(_0x32914a,null))[_0x7300('0x19')](function(_0x2faad5){if(_0x2faad5){return _0x2faad5[_0x7300('0x4e')](_0x52a9f6[_0x7300('0x39')]['ids'],_[_0x7300('0x4f')](_0x52a9f6[_0x7300('0x39')],[_0x7300('0x3d'),'id'])||{})[_0x7300('0x50')](function(){return db[_0x7300('0x51')]['findAll']({'attributes':['id',_0x7300('0x1e'),_0x7300('0x52')],'where':{'id':_0x52a9f6[_0x7300('0x39')][_0x7300('0x3d')]}});})[_0x7300('0x19')](function(_0x1f31e6){socket[_0x7300('0x53')](_0x7300('0x54'),{'id':Number(_0x52a9f6['params']['id']),'tags':_0x1f31e6||[]});return{'id':Number(_0x52a9f6[_0x7300('0x2b')]['id']),'tags':_0x1f31e6||[]};});}})[_0x7300('0x19')](respondWithResult(_0x32914a,null))[_0x7300('0x37')](handleError(_0x32914a,null));};exports[_0x7300('0x55')]=function(_0x28475a,_0x5729c9){return db[_0x7300('0x21')][_0x7300('0x36')]({'where':{'id':_0x28475a[_0x7300('0x2b')]['id']}})[_0x7300('0x19')](handleEntityNotFound(_0x5729c9,null))[_0x7300('0x19')](function(_0x18d6f1){if(_0x18d6f1){return _0x18d6f1['removeTags'](_0x28475a[_0x7300('0x28')][_0x7300('0x3d')]);}})[_0x7300('0x19')](respondWithStatusCode(_0x5729c9,null))[_0x7300('0x37')](handleError(_0x5729c9,null));};exports[_0x7300('0x56')]=function(_0x447422,_0xb4bb32){var _0x5609b8=moment()[_0x7300('0x57')]()[_0x7300('0x58')]();var _0x2a8be9=path[_0x7300('0x59')](config['root'],_0x7300('0x5a'),_0x7300('0x5b'),'tmp');var _0x204196=path[_0x7300('0x59')](config[_0x7300('0x5c')],_0x7300('0x5a'),_0x7300('0x5b'),_0x7300('0x5d'));var _0x4caac4=path[_0x7300('0x59')](_0x2a8be9,_0x5609b8);var _0x57f708=util[_0x7300('0x4a')](_0x7300('0x5e'),_0x447422['params']['id'],_0x5609b8);var _0x2c9689=path[_0x7300('0x59')](_0x2a8be9,_0x57f708);var _0x358aee=[];if(_0x447422[_0x7300('0x28')][_0x7300('0x5d')]){_0x358aee['push']({'model':db['Attachment'],'as':_0x7300('0x5f'),'raw':!![]});}var _0x2ab44d=[{'model':db['MailMessage'],'as':_0x7300('0x60'),'attributes':['id','body',_0x7300('0x61'),'to','cc',_0x7300('0x62'),_0x7300('0x63'),_0x7300('0x64')],'where':{'secret':![]},'order':qs[_0x7300('0x43')]('id'),'include':_0x358aee}];return db[_0x7300('0x21')]['find']({'where':{'id':_0x447422[_0x7300('0x2b')]['id']},'include':_0x2ab44d})[_0x7300('0x19')](handleEntityNotFound(_0xb4bb32,null))[_0x7300('0x19')](function(_0x3c9d37){if(_0x3c9d37&&_0x3c9d37['Messages']){var _0xf74aec=_0x3c9d37['get']({'plain':!![]});fs['mkdirSync'](_0x4caac4);return BPromise[_0x7300('0x65')](_0xf74aec[_0x7300('0x60')],function(_0x24e6b4,_0x572b93){var _0x586fe2={'from':_0x24e6b4['from'],'to':_0x24e6b4['to']||_0x7300('0x66'),'subject':_0x24e6b4[_0x7300('0x63')],'html':htmlEntities[_0x7300('0x67')](_0x24e6b4['body']),'headers':{'Date':moment(_0x24e6b4[_0x7300('0x64')])[_0x7300('0x4a')](_0x7300('0x68'))},'attachments':[]};if(_0x24e6b4['cc']){_0x586fe2[_0x7300('0x69')]['Cc']=_0x24e6b4['cc'];}if(_0x24e6b4[_0x7300('0x62')]){_0x586fe2[_0x7300('0x69')]['Bcc']=_0x24e6b4[_0x7300('0x62')];}return new BPromise(function(_0x9feedf,_0x1701e5){if(_0x24e6b4[_0x7300('0x5f')]){for(var _0x29e5c1=0x0;_0x29e5c1<_0x24e6b4['Attachments']['length'];_0x29e5c1++){var _0x3043fd=_0x24e6b4[_0x7300('0x5f')][_0x29e5c1];var _0x1dadce=path[_0x7300('0x59')](_0x204196,_0x3043fd[_0x7300('0x6a')]);if(fs[_0x7300('0x6b')](_0x1dadce)){_0x586fe2['attachments'][_0x7300('0x6c')]({'name':_0x3043fd[_0x7300('0x1e')],'contentType':_0x3043fd['type'],'data':fs[_0x7300('0x6d')](_0x1dadce)});}}}emlformat['build'](_0x586fe2,function(_0x18712b,_0x3384ad){if(_0x18712b)return _0x1701e5(_0x18712b);fs[_0x7300('0x6e')](path[_0x7300('0x59')](_0x4caac4,util[_0x7300('0x4a')](_0x7300('0x6f'),_0x572b93)),_0x3384ad);return _0x9feedf(_0x3384ad);});});})[_0x7300('0x19')](function(){return new BPromise(function(_0x4d4bef,_0x5a7037){zipdir(_0x4caac4,{'saveTo':_0x2c9689},function(_0x39e988,_0x2a9fcb){if(_0x39e988)return _0x5a7037(_0x39e988);return _0x4d4bef(_0x2a9fcb);});})['then'](function(){return new BPromise(function(_0x51d74c,_0x3c2f86){rimraf(_0x4caac4,function(_0x54d1de){if(_0x54d1de)_0x3c2f86(_0x54d1de);return _0x51d74c();});});})[_0x7300('0x19')](function(){return _0xb4bb32[_0x7300('0x56')](_0x2c9689,_0x57f708,function(_0x1edfbc){if(!_0x1edfbc)fs['unlinkSync'](_0x2c9689);});});});}else{return _0xb4bb32['sendStatus'](0xc8);}})['catch'](handleError(_0xb4bb32,null));};
\ No newline at end of file