Built motion from commit 449495f6.|2.6.27
[motion2.git] / server / api / mailInteraction / mailInteraction.controller.js
index 4658697..1496815 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x34e8=['count','Content-Range','update','then','error','stack','name','send','map','MailInteraction','rawAttributes','type','key','getOptions','findAll','mail','query','user','catch','show','params','model','filters','intersection','fields','attributes','length','includeAll','include','merge','options','create','body','find','describe','addMessage','MailMessage','findOne','keys','hasOwnProperty','nolimit','order','sort','where','pick','MailInteractionId','filter','$gte','split','format','YYYY-MM-DD\x20HH:mm:ss','true','rows','addTags','ids','Tag','color','removeTags','unix','toString','join','root','server','tmp','files','attachments','push','Attachment','Attachments','from','bcc','createdAt','Messages','get','mkdirSync','each','subject','decode','ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ','headers','basename','existsSync','build','writeFileSync','message%d.eml','download','eml-format','rimraf','zip-dir','moment','bluebird','util','juice','ioredis','../../components/interaction/service','../../components/parsers/qs','../../config/logger','api','../../config/environment','html-entities','redis','defaults','localhost','socket.io-emitter','./mailInteraction.socket','register','sendStatus','status','end','json','offset','undefined','limit'];(function(_0x543673,_0xe0ea22){var _0x45468c=function(_0x4e44a7){while(--_0x4e44a7){_0x543673['push'](_0x543673['shift']());}};_0x45468c(++_0xe0ea22);}(_0x34e8,0x1a9));var _0x834e=function(_0x32caca,_0x446cd5){_0x32caca=_0x32caca-0x0;var _0x5abadb=_0x34e8[_0x32caca];return _0x5abadb;};'use strict';var emlformat=require(_0x834e('0x0'));var rimraf=require(_0x834e('0x1'));var zipdir=require(_0x834e('0x2'));var moment=require(_0x834e('0x3'));var BPromise=require(_0x834e('0x4'));var util=require(_0x834e('0x5'));var path=require('path');var fs=require('fs');var _=require('lodash');var juice=require(_0x834e('0x6'));var Redis=require(_0x834e('0x7'));var interaction=require(_0x834e('0x8'));var qs=require(_0x834e('0x9'));var logger=require(_0x834e('0xa'))(_0x834e('0xb'));var config=require(_0x834e('0xc'));var db=require('../../mysqldb')['db'];var htmlEntities=require(_0x834e('0xd'));config[_0x834e('0xe')]=_[_0x834e('0xf')](config['redis'],{'host':_0x834e('0x10'),'port':0x18eb});var socket=require(_0x834e('0x11'))(new Redis(config['redis']));require(_0x834e('0x12'))[_0x834e('0x13')](socket);function respondWithStatusCode(_0x378061,_0x22f3e2){_0x22f3e2=_0x22f3e2||0xcc;return function(_0x46640c){if(_0x46640c){return _0x378061[_0x834e('0x14')](_0x22f3e2);}return _0x378061[_0x834e('0x15')](_0x22f3e2)[_0x834e('0x16')]();};}function respondWithResult(_0x103d70,_0x30ca4b){_0x30ca4b=_0x30ca4b||0xc8;return function(_0x6cef50){if(_0x6cef50){return _0x103d70[_0x834e('0x15')](_0x30ca4b)[_0x834e('0x17')](_0x6cef50);}};}function respondWithFilteredResult(_0x3b4e98,_0xff034){return function(_0x2b89ad){if(_0x2b89ad){var _0x3c70c2=typeof _0xff034[_0x834e('0x18')]===_0x834e('0x19')&&typeof _0xff034[_0x834e('0x1a')]===_0x834e('0x19');var _0x1fb0db=_0x2b89ad['count'];var _0x2dad6a=_0x3c70c2?0x0:_0xff034[_0x834e('0x18')];var _0x40ef41=_0x3c70c2?_0x2b89ad[_0x834e('0x1b')]:_0xff034['offset']+_0xff034['limit'];var _0x1fa4d3;if(_0x40ef41>=_0x1fb0db){_0x40ef41=_0x1fb0db;_0x1fa4d3=0xc8;}else{_0x1fa4d3=0xce;}_0x3b4e98[_0x834e('0x15')](_0x1fa4d3);return _0x3b4e98['set'](_0x834e('0x1c'),_0x2dad6a+'-'+_0x40ef41+'/'+_0x1fb0db)[_0x834e('0x17')](_0x2b89ad);}return null;};}function saveUpdates(_0x46c4e5){return function(_0x244294){if(_0x244294){return _0x244294[_0x834e('0x1d')](_0x46c4e5)[_0x834e('0x1e')](function(_0x3ca178){return _0x3ca178;});}return null;};}function removeEntity(_0x4d53d4){return function(_0x4d7c03){if(_0x4d7c03){return _0x4d7c03['destroy']()[_0x834e('0x1e')](function(){_0x4d53d4[_0x834e('0x15')](0xcc)[_0x834e('0x16')]();});}};}function handleEntityNotFound(_0x597c7c){return function(_0x2bdd65){if(!_0x2bdd65){_0x597c7c[_0x834e('0x14')](0x194);}return _0x2bdd65;};}function handleError(_0x59e635,_0x315ead){_0x315ead=_0x315ead||0x1f4;return function(_0x2ae700){logger[_0x834e('0x1f')](_0x2ae700[_0x834e('0x20')]);if(_0x2ae700[_0x834e('0x21')]){delete _0x2ae700[_0x834e('0x21')];}_0x59e635[_0x834e('0x15')](_0x315ead)[_0x834e('0x22')](_0x2ae700);};}exports['index']=function(_0x2eaa9b,_0x42bc53){var _0x57e3fe={};var _0x5a407c=_[_0x834e('0x23')](db[_0x834e('0x24')][_0x834e('0x25')],function(_0x3b4207){return{'name':_0x3b4207['fieldName'],'type':_0x3b4207[_0x834e('0x26')][_0x834e('0x27')]};});_0x57e3fe=qs[_0x834e('0x28')](_0x5a407c,_0x2eaa9b);return interaction[_0x834e('0x29')](_0x834e('0x2a'),_0x2eaa9b[_0x834e('0x2b')],_0x2eaa9b[_0x834e('0x2c')],_0x57e3fe,_0x5a407c)[_0x834e('0x1e')](respondWithFilteredResult(_0x42bc53,_0x57e3fe))[_0x834e('0x2d')](handleError(_0x42bc53,null));};exports[_0x834e('0x2e')]=function(_0x258718,_0x3f9eeb){var _0x5a442f={'raw':![],'where':{'id':_0x258718[_0x834e('0x2f')]['id']}},_0x5cbd20={};_0x5cbd20[_0x834e('0x30')]=_['keys'](db['MailInteraction'][_0x834e('0x25')]);_0x5cbd20[_0x834e('0x2b')]=_['keys'](_0x258718[_0x834e('0x2b')]);_0x5cbd20[_0x834e('0x31')]=_['intersection'](_0x5cbd20[_0x834e('0x30')],_0x5cbd20[_0x834e('0x2b')]);_0x5a442f['attributes']=_[_0x834e('0x32')](_0x5cbd20[_0x834e('0x30')],qs['fields'](_0x258718['query'][_0x834e('0x33')]));_0x5a442f[_0x834e('0x34')]=_0x5a442f[_0x834e('0x34')][_0x834e('0x35')]?_0x5a442f['attributes']:_0x5cbd20['model'];if(_0x258718[_0x834e('0x2b')][_0x834e('0x36')]){_0x5a442f[_0x834e('0x37')]=[{'all':!![]}];}_0x5a442f=_[_0x834e('0x38')]({},_0x5a442f,_0x258718[_0x834e('0x39')]);return db['MailInteraction']['find'](_0x5a442f)['then'](handleEntityNotFound(_0x3f9eeb,null))[_0x834e('0x1e')](respondWithResult(_0x3f9eeb,null))['catch'](handleError(_0x3f9eeb,null));};exports[_0x834e('0x3a')]=function(_0x4bafee,_0x47e4bb){return db['MailInteraction'][_0x834e('0x3a')](_0x4bafee[_0x834e('0x3b')],{})[_0x834e('0x1e')](respondWithResult(_0x47e4bb,0xc9))[_0x834e('0x2d')](handleError(_0x47e4bb,null));};exports['update']=function(_0x264695,_0x95d69e){if(_0x264695[_0x834e('0x3b')]['id']){delete _0x264695[_0x834e('0x3b')]['id'];}return db['MailInteraction'][_0x834e('0x3c')]({'where':{'id':_0x264695[_0x834e('0x2f')]['id']}})[_0x834e('0x1e')](handleEntityNotFound(_0x95d69e,null))[_0x834e('0x1e')](saveUpdates(_0x264695['body'],null))[_0x834e('0x1e')](respondWithResult(_0x95d69e,null))[_0x834e('0x2d')](handleError(_0x95d69e,null));};exports['destroy']=function(_0x1c67c7,_0x863f9c){return db[_0x834e('0x24')][_0x834e('0x3c')]({'where':{'id':_0x1c67c7[_0x834e('0x2f')]['id']}})[_0x834e('0x1e')](handleEntityNotFound(_0x863f9c,null))['then'](removeEntity(_0x863f9c,null))[_0x834e('0x2d')](handleError(_0x863f9c,null));};exports[_0x834e('0x3d')]=function(_0x1d600f,_0x5d1f0e){return db['MailInteraction'][_0x834e('0x3d')]()['then'](respondWithResult(_0x5d1f0e,null))[_0x834e('0x2d')](handleError(_0x5d1f0e,null));};exports[_0x834e('0x3e')]=function(_0x1f61ce,_0x21f9ec){return db[_0x834e('0x3f')]['find']({'where':{'id':_0x1f61ce[_0x834e('0x2f')]['id']}})['then'](handleEntityNotFound(_0x21f9ec,null))[_0x834e('0x1e')](function(_0xd538a4){if(_0xd538a4){return _0xd538a4[_0x834e('0x3e')](_0x1f61ce[_0x834e('0x3b')]['ids'],_['omit'](_0x1f61ce[_0x834e('0x3b')],['ids','id'])||{});}})[_0x834e('0x1e')](respondWithResult(_0x21f9ec,null))['catch'](handleError(_0x21f9ec,null));};exports['getMessages']=function(_0x3b0988,_0x464011){var _0x332e53={'raw':![],'where':{}};var _0x56b063={};var _0x3b725c={'count':0x0,'rows':[]};return db['MailInteraction'][_0x834e('0x40')]({'where':{'id':_0x3b0988[_0x834e('0x2f')]['id']}})['then'](handleEntityNotFound(_0x464011,null))[_0x834e('0x1e')](function(_0xf7d8bf){if(_0xf7d8bf){_0x56b063['model']=_[_0x834e('0x41')](db[_0x834e('0x3f')][_0x834e('0x25')]);_0x56b063['query']=_[_0x834e('0x41')](_0x3b0988[_0x834e('0x2b')]);_0x56b063[_0x834e('0x31')]=_[_0x834e('0x32')](_0x56b063[_0x834e('0x30')],_0x56b063[_0x834e('0x2b')]);_0x332e53[_0x834e('0x34')]=_[_0x834e('0x32')](_0x56b063['model'],qs['fields'](_0x3b0988[_0x834e('0x2b')][_0x834e('0x33')]));_0x332e53[_0x834e('0x34')]=_0x332e53[_0x834e('0x34')]['length']?_0x332e53[_0x834e('0x34')]:_0x56b063['model'];if(!_0x3b0988[_0x834e('0x2b')][_0x834e('0x42')](_0x834e('0x43'))){_0x332e53[_0x834e('0x1a')]=qs['limit'](_0x3b0988['query']['limit']);_0x332e53[_0x834e('0x18')]=qs[_0x834e('0x18')](_0x3b0988[_0x834e('0x2b')][_0x834e('0x18')]);}_0x332e53[_0x834e('0x44')]=qs[_0x834e('0x45')](_0x3b0988[_0x834e('0x2b')]['sort']);_0x332e53[_0x834e('0x46')]=qs['filters'](_[_0x834e('0x47')](_0x3b0988[_0x834e('0x2b')],_0x56b063[_0x834e('0x31')]));_0x332e53[_0x834e('0x46')][_0x834e('0x48')]=_0xf7d8bf['id'];if(_0x3b0988[_0x834e('0x2b')]['filter']){_0x332e53[_0x834e('0x46')]=_[_0x834e('0x38')](_0x332e53['where'],{'$or':_[_0x834e('0x23')](_0x332e53[_0x834e('0x34')],function(_0x34524c){var _0xf9d91b={};_0xf9d91b[_0x34524c]={'$like':'%'+_0x3b0988[_0x834e('0x2b')][_0x834e('0x49')]+'%'};return _0xf9d91b;})});}if(_0x3b0988[_0x834e('0x2b')][_0x834e('0x4a')]){var _0x452a3a=_0x3b0988[_0x834e('0x2b')][_0x834e('0x4a')][_0x834e('0x4b')](',');var _0x4b0bdd={};_0x4b0bdd[_0x452a3a[0x0]]={'$gte':moment(_0x452a3a[0x1])[_0x834e('0x4c')](_0x834e('0x4d'))};_0x332e53[_0x834e('0x46')]=_[_0x834e('0x38')](_0x332e53[_0x834e('0x46')],_0x4b0bdd);}_0x332e53=_[_0x834e('0x38')]({},_0x332e53,_0x3b0988['options']);return db[_0x834e('0x3f')][_0x834e('0x1b')]({'where':_0x332e53['where']})[_0x834e('0x1e')](function(_0x33065c){_0x3b725c[_0x834e('0x1b')]=_0x33065c;if(_0x3b0988['query'][_0x834e('0x36')]){_0x332e53['include']=[{'all':!![]}];}return db[_0x834e('0x3f')][_0x834e('0x29')](_0x332e53);})[_0x834e('0x1e')](function(_0x3e3339){if(_0x3b0988['query']['inlineCss']===_0x834e('0x4e')){for(var _0x11dc84=0x0;_0x11dc84<_0x3e3339[_0x834e('0x35')];_0x11dc84++){_0x3e3339[_0x11dc84][_0x834e('0x3b')]=juice(_0x3e3339[_0x11dc84]['body']);}}_0x3b725c[_0x834e('0x4f')]=_0x3e3339;return _0x3b725c;});}})[_0x834e('0x1e')](respondWithFilteredResult(_0x464011,_0x332e53))[_0x834e('0x2d')](handleError(_0x464011,null));};exports[_0x834e('0x50')]=function(_0x273ef9,_0x4480c9){return db[_0x834e('0x24')][_0x834e('0x3c')]({'where':{'id':_0x273ef9[_0x834e('0x2f')]['id']}})['then'](handleEntityNotFound(_0x4480c9,null))[_0x834e('0x1e')](function(_0x12d984){if(_0x12d984){return _0x12d984['setTags'](_0x273ef9[_0x834e('0x3b')][_0x834e('0x51')],_['omit'](_0x273ef9[_0x834e('0x3b')],[_0x834e('0x51'),'id'])||{})['spread'](function(){return db[_0x834e('0x52')]['findAll']({'attributes':['id',_0x834e('0x21'),_0x834e('0x53')],'where':{'id':_0x273ef9['body'][_0x834e('0x51')]}});})[_0x834e('0x1e')](function(_0x5ee7c2){socket['emit']('mailInteractionTags:save',{'id':Number(_0x273ef9['params']['id']),'tags':_0x5ee7c2||[]});return{'id':Number(_0x273ef9['params']['id']),'tags':_0x5ee7c2||[]};});}})[_0x834e('0x1e')](respondWithResult(_0x4480c9,null))['catch'](handleError(_0x4480c9,null));};exports[_0x834e('0x54')]=function(_0x1287ba,_0x2f2682){return db[_0x834e('0x24')]['find']({'where':{'id':_0x1287ba['params']['id']}})[_0x834e('0x1e')](handleEntityNotFound(_0x2f2682,null))[_0x834e('0x1e')](function(_0x38a3f6){if(_0x38a3f6){return _0x38a3f6[_0x834e('0x54')](_0x1287ba[_0x834e('0x2b')][_0x834e('0x51')]);}})['then'](respondWithStatusCode(_0x2f2682,null))[_0x834e('0x2d')](handleError(_0x2f2682,null));};exports['download']=function(_0xb65ebf,_0x43ccdf){var _0x100376=moment()[_0x834e('0x55')]()[_0x834e('0x56')]();var _0xd0dc46=path[_0x834e('0x57')](config[_0x834e('0x58')],_0x834e('0x59'),'files',_0x834e('0x5a'));var _0x5bf20c=path['join'](config[_0x834e('0x58')],_0x834e('0x59'),_0x834e('0x5b'),_0x834e('0x5c'));var _0x17cd1f=path[_0x834e('0x57')](_0xd0dc46,_0x100376);var _0x28bd53=util['format']('transcript-%d-%s.zip',_0xb65ebf[_0x834e('0x2f')]['id'],_0x100376);var _0x47dbba=path[_0x834e('0x57')](_0xd0dc46,_0x28bd53);var _0x111e4d=[];if(_0xb65ebf[_0x834e('0x2b')][_0x834e('0x5c')]){_0x111e4d[_0x834e('0x5d')]({'model':db[_0x834e('0x5e')],'as':_0x834e('0x5f'),'raw':!![]});}var _0x1d314d=[{'model':db['MailMessage'],'as':'Messages','attributes':['id',_0x834e('0x3b'),_0x834e('0x60'),'to','cc',_0x834e('0x61'),'subject',_0x834e('0x62')],'where':{'secret':![]},'order':qs[_0x834e('0x45')]('id'),'include':_0x111e4d}];return db['MailInteraction']['find']({'where':{'id':_0xb65ebf[_0x834e('0x2f')]['id']},'include':_0x1d314d})[_0x834e('0x1e')](handleEntityNotFound(_0x43ccdf,null))[_0x834e('0x1e')](function(_0x595f6b){if(_0x595f6b&&_0x595f6b[_0x834e('0x63')]){var _0x1b0e88=_0x595f6b[_0x834e('0x64')]({'plain':!![]});fs[_0x834e('0x65')](_0x17cd1f);return BPromise[_0x834e('0x66')](_0x1b0e88[_0x834e('0x63')],function(_0x5c69b9,_0x568262){var _0x453575={'from':_0x5c69b9[_0x834e('0x60')],'to':_0x5c69b9['to']||'missing.recipient@your.company.com','subject':_0x5c69b9[_0x834e('0x67')],'html':htmlEntities[_0x834e('0x68')](_0x5c69b9['body']),'headers':{'Date':moment(_0x5c69b9[_0x834e('0x62')])[_0x834e('0x4c')](_0x834e('0x69'))},'attachments':[]};if(_0x5c69b9['cc']){_0x453575[_0x834e('0x6a')]['Cc']=_0x5c69b9['cc'];}if(_0x5c69b9['bcc']){_0x453575[_0x834e('0x6a')]['Bcc']=_0x5c69b9[_0x834e('0x61')];}return new BPromise(function(_0x5d648a,_0x30485e){if(_0x5c69b9[_0x834e('0x5f')]){for(var _0x42cd2f=0x0;_0x42cd2f<_0x5c69b9['Attachments'][_0x834e('0x35')];_0x42cd2f++){var _0x41e62f=_0x5c69b9['Attachments'][_0x42cd2f];var _0x24d5fe=path[_0x834e('0x57')](_0x5bf20c,_0x41e62f[_0x834e('0x6b')]);if(fs[_0x834e('0x6c')](_0x24d5fe)){_0x453575[_0x834e('0x5c')][_0x834e('0x5d')]({'name':_0x41e62f[_0x834e('0x21')],'contentType':_0x41e62f['type'],'data':fs['readFileSync'](_0x24d5fe)});}}}emlformat[_0x834e('0x6d')](_0x453575,function(_0x6f6ede,_0x222466){if(_0x6f6ede)return _0x30485e(_0x6f6ede);fs[_0x834e('0x6e')](path[_0x834e('0x57')](_0x17cd1f,util['format'](_0x834e('0x6f'),_0x568262)),_0x222466);return _0x5d648a(_0x222466);});});})[_0x834e('0x1e')](function(){return new BPromise(function(_0x5b8ee9,_0x4edc22){zipdir(_0x17cd1f,{'saveTo':_0x47dbba},function(_0x2c21bc,_0xb9acf5){if(_0x2c21bc)return _0x4edc22(_0x2c21bc);return _0x5b8ee9(_0xb9acf5);});})[_0x834e('0x1e')](function(){return new BPromise(function(_0x2175ea,_0x460df0){rimraf(_0x17cd1f,function(_0x26b77d){if(_0x26b77d)_0x460df0(_0x26b77d);return _0x2175ea();});});})[_0x834e('0x1e')](function(){return _0x43ccdf[_0x834e('0x70')](_0x47dbba,_0x28bd53,function(_0x3db30e){if(!_0x3db30e)fs['unlinkSync'](_0x47dbba);});});});}else{return _0x43ccdf[_0x834e('0x14')](0xc8);}})[_0x834e('0x2d')](handleError(_0x43ccdf,null));};
\ No newline at end of file
+var _0x447e=['../../config/logger','api','../../config/environment','defaults','redis','localhost','./mailInteraction.socket','register','sendStatus','status','end','offset','undefined','limit','count','set','Content-Range','json','update','then','error','stack','name','send','index','map','MailInteraction','rawAttributes','key','mail','query','user','show','params','model','keys','filters','intersection','attributes','fields','length','includeAll','include','merge','options','find','catch','create','body','destroy','MailMessage','addMessage','ids','getMessages','hasOwnProperty','order','where','pick','MailInteractionId','filter','$gte','split','format','findAll','inlineCss','true','addTags','omit','Tag','color','mailInteractionTags:save','removeTags','download','unix','toString','join','files','tmp','root','transcript-%d-%s.zip','attachments','push','Attachment','Messages','from','bcc','createdAt','sort','get','each','missing.recipient@your.company.com','subject','decode','headers','Attachments','basename','existsSync','readFileSync','build','writeFileSync','message%d.eml','unlinkSync','eml-format','rimraf','zip-dir','moment','util','path','lodash','juice','../../components/interaction/service','../../components/parsers/qs'];(function(_0x23efd8,_0x502628){var _0x55ede=function(_0xbdc0b7){while(--_0xbdc0b7){_0x23efd8['push'](_0x23efd8['shift']());}};_0x55ede(++_0x502628);}(_0x447e,0x146));var _0xe447=function(_0x11aa74,_0x589680){_0x11aa74=_0x11aa74-0x0;var _0x172f1c=_0x447e[_0x11aa74];return _0x172f1c;};'use strict';var emlformat=require(_0xe447('0x0'));var rimraf=require(_0xe447('0x1'));var zipdir=require(_0xe447('0x2'));var moment=require(_0xe447('0x3'));var BPromise=require('bluebird');var util=require(_0xe447('0x4'));var path=require(_0xe447('0x5'));var fs=require('fs');var _=require(_0xe447('0x6'));var juice=require(_0xe447('0x7'));var Redis=require('ioredis');var interaction=require(_0xe447('0x8'));var qs=require(_0xe447('0x9'));var logger=require(_0xe447('0xa'))(_0xe447('0xb'));var config=require(_0xe447('0xc'));var db=require('../../mysqldb')['db'];var htmlEntities=require('html-entities');config['redis']=_[_0xe447('0xd')](config[_0xe447('0xe')],{'host':_0xe447('0xf'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0xe447('0xe')]));require(_0xe447('0x10'))[_0xe447('0x11')](socket);function respondWithStatusCode(_0x4d950a,_0x381ca1){_0x381ca1=_0x381ca1||0xcc;return function(_0x126ff4){if(_0x126ff4){return _0x4d950a[_0xe447('0x12')](_0x381ca1);}return _0x4d950a[_0xe447('0x13')](_0x381ca1)[_0xe447('0x14')]();};}function respondWithResult(_0x5d1f5b,_0x30a97b){_0x30a97b=_0x30a97b||0xc8;return function(_0x3bd134){if(_0x3bd134){return _0x5d1f5b[_0xe447('0x13')](_0x30a97b)['json'](_0x3bd134);}};}function respondWithFilteredResult(_0x912195,_0x23febd){return function(_0x5f446b){if(_0x5f446b){var _0x116c75=typeof _0x23febd[_0xe447('0x15')]===_0xe447('0x16')&&typeof _0x23febd[_0xe447('0x17')]===_0xe447('0x16');var _0x3263d8=_0x5f446b['count'];var _0xefd8a9=_0x116c75?0x0:_0x23febd[_0xe447('0x15')];var _0x379222=_0x116c75?_0x5f446b[_0xe447('0x18')]:_0x23febd[_0xe447('0x15')]+_0x23febd[_0xe447('0x17')];var _0x2bf39f;if(_0x379222>=_0x3263d8){_0x379222=_0x3263d8;_0x2bf39f=0xc8;}else{_0x2bf39f=0xce;}_0x912195['status'](_0x2bf39f);return _0x912195[_0xe447('0x19')](_0xe447('0x1a'),_0xefd8a9+'-'+_0x379222+'/'+_0x3263d8)[_0xe447('0x1b')](_0x5f446b);}return null;};}function saveUpdates(_0x1a1ab3){return function(_0x148a35){if(_0x148a35){return _0x148a35[_0xe447('0x1c')](_0x1a1ab3)[_0xe447('0x1d')](function(_0x5362ed){return _0x5362ed;});}return null;};}function removeEntity(_0x54a9d0){return function(_0x3dc90b){if(_0x3dc90b){return _0x3dc90b['destroy']()['then'](function(){_0x54a9d0['status'](0xcc)[_0xe447('0x14')]();});}};}function handleEntityNotFound(_0xfa0d9e){return function(_0x2bf4af){if(!_0x2bf4af){_0xfa0d9e[_0xe447('0x12')](0x194);}return _0x2bf4af;};}function handleError(_0x2a5fc0,_0x257147){_0x257147=_0x257147||0x1f4;return function(_0x555a04){logger[_0xe447('0x1e')](_0x555a04[_0xe447('0x1f')]);if(_0x555a04['name']){delete _0x555a04[_0xe447('0x20')];}_0x2a5fc0['status'](_0x257147)[_0xe447('0x21')](_0x555a04);};}exports[_0xe447('0x22')]=function(_0x4d1c4d,_0x2f82dd){var _0x22f7b9={};var _0x400180=_[_0xe447('0x23')](db[_0xe447('0x24')][_0xe447('0x25')],function(_0x11e394){return{'name':_0x11e394['fieldName'],'type':_0x11e394['type'][_0xe447('0x26')]};});_0x22f7b9=qs['getOptions'](_0x400180,_0x4d1c4d);return interaction['findAll'](_0xe447('0x27'),_0x4d1c4d[_0xe447('0x28')],_0x4d1c4d[_0xe447('0x29')],_0x22f7b9,_0x400180)[_0xe447('0x1d')](respondWithFilteredResult(_0x2f82dd,_0x22f7b9))['catch'](handleError(_0x2f82dd,null));};exports[_0xe447('0x2a')]=function(_0x490a2a,_0x7710f2){var _0x5ac0c1={'raw':![],'where':{'id':_0x490a2a[_0xe447('0x2b')]['id']}},_0x1f70b6={};_0x1f70b6[_0xe447('0x2c')]=_[_0xe447('0x2d')](db[_0xe447('0x24')][_0xe447('0x25')]);_0x1f70b6[_0xe447('0x28')]=_[_0xe447('0x2d')](_0x490a2a['query']);_0x1f70b6[_0xe447('0x2e')]=_[_0xe447('0x2f')](_0x1f70b6[_0xe447('0x2c')],_0x1f70b6[_0xe447('0x28')]);_0x5ac0c1[_0xe447('0x30')]=_[_0xe447('0x2f')](_0x1f70b6['model'],qs[_0xe447('0x31')](_0x490a2a[_0xe447('0x28')]['fields']));_0x5ac0c1[_0xe447('0x30')]=_0x5ac0c1['attributes'][_0xe447('0x32')]?_0x5ac0c1[_0xe447('0x30')]:_0x1f70b6[_0xe447('0x2c')];if(_0x490a2a['query'][_0xe447('0x33')]){_0x5ac0c1[_0xe447('0x34')]=[{'all':!![]}];}_0x5ac0c1=_[_0xe447('0x35')]({},_0x5ac0c1,_0x490a2a[_0xe447('0x36')]);return db[_0xe447('0x24')][_0xe447('0x37')](_0x5ac0c1)[_0xe447('0x1d')](handleEntityNotFound(_0x7710f2,null))[_0xe447('0x1d')](respondWithResult(_0x7710f2,null))[_0xe447('0x38')](handleError(_0x7710f2,null));};exports[_0xe447('0x39')]=function(_0x43634b,_0x3ad18b){return db['MailInteraction'][_0xe447('0x39')](_0x43634b[_0xe447('0x3a')],{})['then'](respondWithResult(_0x3ad18b,0xc9))['catch'](handleError(_0x3ad18b,null));};exports[_0xe447('0x1c')]=function(_0x9b9d1d,_0x5b1428){if(_0x9b9d1d[_0xe447('0x3a')]['id']){delete _0x9b9d1d[_0xe447('0x3a')]['id'];}return db[_0xe447('0x24')][_0xe447('0x37')]({'where':{'id':_0x9b9d1d[_0xe447('0x2b')]['id']}})[_0xe447('0x1d')](handleEntityNotFound(_0x5b1428,null))[_0xe447('0x1d')](saveUpdates(_0x9b9d1d[_0xe447('0x3a')],null))[_0xe447('0x1d')](respondWithResult(_0x5b1428,null))[_0xe447('0x38')](handleError(_0x5b1428,null));};exports[_0xe447('0x3b')]=function(_0x1d72ef,_0x29bc53){return db['MailInteraction']['find']({'where':{'id':_0x1d72ef[_0xe447('0x2b')]['id']}})['then'](handleEntityNotFound(_0x29bc53,null))[_0xe447('0x1d')](removeEntity(_0x29bc53,null))[_0xe447('0x38')](handleError(_0x29bc53,null));};exports['describe']=function(_0x3c10f4,_0x17a55e){return db[_0xe447('0x24')]['describe']()[_0xe447('0x1d')](respondWithResult(_0x17a55e,null))[_0xe447('0x38')](handleError(_0x17a55e,null));};exports['addMessage']=function(_0x1c5bd9,_0x272703){return db[_0xe447('0x3c')][_0xe447('0x37')]({'where':{'id':_0x1c5bd9['params']['id']}})['then'](handleEntityNotFound(_0x272703,null))[_0xe447('0x1d')](function(_0x5ef2e2){if(_0x5ef2e2){return _0x5ef2e2[_0xe447('0x3d')](_0x1c5bd9[_0xe447('0x3a')][_0xe447('0x3e')],_['omit'](_0x1c5bd9['body'],['ids','id'])||{});}})[_0xe447('0x1d')](respondWithResult(_0x272703,null))[_0xe447('0x38')](handleError(_0x272703,null));};exports[_0xe447('0x3f')]=function(_0x5d1d84,_0x5057e4){var _0x4e7bc6={'raw':![],'where':{}};var _0x1c69e6={};var _0x2a5711={'count':0x0,'rows':[]};return db['MailInteraction']['findOne']({'where':{'id':_0x5d1d84[_0xe447('0x2b')]['id']}})[_0xe447('0x1d')](handleEntityNotFound(_0x5057e4,null))[_0xe447('0x1d')](function(_0x10a97a){if(_0x10a97a){_0x1c69e6['model']=_['keys'](db['MailMessage']['rawAttributes']);_0x1c69e6[_0xe447('0x28')]=_[_0xe447('0x2d')](_0x5d1d84[_0xe447('0x28')]);_0x1c69e6[_0xe447('0x2e')]=_[_0xe447('0x2f')](_0x1c69e6['model'],_0x1c69e6['query']);_0x4e7bc6['attributes']=_[_0xe447('0x2f')](_0x1c69e6[_0xe447('0x2c')],qs['fields'](_0x5d1d84[_0xe447('0x28')][_0xe447('0x31')]));_0x4e7bc6[_0xe447('0x30')]=_0x4e7bc6[_0xe447('0x30')]['length']?_0x4e7bc6[_0xe447('0x30')]:_0x1c69e6['model'];if(!_0x5d1d84[_0xe447('0x28')][_0xe447('0x40')]('nolimit')){_0x4e7bc6[_0xe447('0x17')]=qs['limit'](_0x5d1d84[_0xe447('0x28')][_0xe447('0x17')]);_0x4e7bc6[_0xe447('0x15')]=qs[_0xe447('0x15')](_0x5d1d84['query']['offset']);}_0x4e7bc6[_0xe447('0x41')]=qs['sort'](_0x5d1d84[_0xe447('0x28')]['sort']);_0x4e7bc6[_0xe447('0x42')]=qs[_0xe447('0x2e')](_[_0xe447('0x43')](_0x5d1d84['query'],_0x1c69e6[_0xe447('0x2e')]));_0x4e7bc6[_0xe447('0x42')][_0xe447('0x44')]=_0x10a97a['id'];if(_0x5d1d84[_0xe447('0x28')]['filter']){_0x4e7bc6[_0xe447('0x42')]=_[_0xe447('0x35')](_0x4e7bc6['where'],{'$or':_['map'](_0x4e7bc6[_0xe447('0x30')],function(_0x467dea){var _0x4626d1={};_0x4626d1[_0x467dea]={'$like':'%'+_0x5d1d84[_0xe447('0x28')][_0xe447('0x45')]+'%'};return _0x4626d1;})});}if(_0x5d1d84[_0xe447('0x28')][_0xe447('0x46')]){var _0x46066=_0x5d1d84[_0xe447('0x28')]['$gte'][_0xe447('0x47')](',');var _0x1293e2={};_0x1293e2[_0x46066[0x0]]={'$gte':moment(_0x46066[0x1])[_0xe447('0x48')]('YYYY-MM-DD\x20HH:mm:ss')};_0x4e7bc6[_0xe447('0x42')]=_[_0xe447('0x35')](_0x4e7bc6[_0xe447('0x42')],_0x1293e2);}_0x4e7bc6=_[_0xe447('0x35')]({},_0x4e7bc6,_0x5d1d84[_0xe447('0x36')]);return db['MailMessage'][_0xe447('0x18')]({'where':_0x4e7bc6[_0xe447('0x42')]})[_0xe447('0x1d')](function(_0x4d5631){_0x2a5711[_0xe447('0x18')]=_0x4d5631;if(_0x5d1d84[_0xe447('0x28')][_0xe447('0x33')]){_0x4e7bc6['include']=[{'all':!![]}];}return db['MailMessage'][_0xe447('0x49')](_0x4e7bc6);})[_0xe447('0x1d')](function(_0x1a099a){if(_0x5d1d84['query'][_0xe447('0x4a')]===_0xe447('0x4b')){for(var _0xf8709c=0x0;_0xf8709c<_0x1a099a['length'];_0xf8709c++){_0x1a099a[_0xf8709c][_0xe447('0x3a')]=juice(_0x1a099a[_0xf8709c][_0xe447('0x3a')]);}}_0x2a5711['rows']=_0x1a099a;return _0x2a5711;});}})[_0xe447('0x1d')](respondWithFilteredResult(_0x5057e4,_0x4e7bc6))['catch'](handleError(_0x5057e4,null));};exports[_0xe447('0x4c')]=function(_0xac0cea,_0x8e8203){return db[_0xe447('0x24')][_0xe447('0x37')]({'where':{'id':_0xac0cea[_0xe447('0x2b')]['id']}})[_0xe447('0x1d')](handleEntityNotFound(_0x8e8203,null))['then'](function(_0x555058){if(_0x555058){return _0x555058['setTags'](_0xac0cea[_0xe447('0x3a')][_0xe447('0x3e')],_[_0xe447('0x4d')](_0xac0cea[_0xe447('0x3a')],[_0xe447('0x3e'),'id'])||{})['spread'](function(){return db[_0xe447('0x4e')][_0xe447('0x49')]({'attributes':['id',_0xe447('0x20'),_0xe447('0x4f')],'where':{'id':_0xac0cea[_0xe447('0x3a')][_0xe447('0x3e')]}});})[_0xe447('0x1d')](function(_0x2adab8){socket['emit'](_0xe447('0x50'),{'id':Number(_0xac0cea[_0xe447('0x2b')]['id']),'tags':_0x2adab8||[]});return{'id':Number(_0xac0cea[_0xe447('0x2b')]['id']),'tags':_0x2adab8||[]};});}})[_0xe447('0x1d')](respondWithResult(_0x8e8203,null))[_0xe447('0x38')](handleError(_0x8e8203,null));};exports[_0xe447('0x51')]=function(_0x24ce90,_0x238153){return db[_0xe447('0x24')][_0xe447('0x37')]({'where':{'id':_0x24ce90[_0xe447('0x2b')]['id']}})[_0xe447('0x1d')](handleEntityNotFound(_0x238153,null))[_0xe447('0x1d')](function(_0x1ba58f){if(_0x1ba58f){return _0x1ba58f[_0xe447('0x51')](_0x24ce90['query'][_0xe447('0x3e')]);}})['then'](respondWithStatusCode(_0x238153,null))[_0xe447('0x38')](handleError(_0x238153,null));};exports[_0xe447('0x52')]=function(_0x5ceacf,_0x334723){var _0x1e552e=moment()[_0xe447('0x53')]()[_0xe447('0x54')]();var _0x257c1d=path[_0xe447('0x55')](config['root'],'server',_0xe447('0x56'),_0xe447('0x57'));var _0x5901f2=path[_0xe447('0x55')](config[_0xe447('0x58')],'server',_0xe447('0x56'),'attachments');var _0x5a47a1=path[_0xe447('0x55')](_0x257c1d,_0x1e552e);var _0xa87a1a=util['format'](_0xe447('0x59'),_0x5ceacf[_0xe447('0x2b')]['id'],_0x1e552e);var _0x42d46a=path['join'](_0x257c1d,_0xa87a1a);var _0xe01af6=[];if(_0x5ceacf[_0xe447('0x28')][_0xe447('0x5a')]){_0xe01af6[_0xe447('0x5b')]({'model':db[_0xe447('0x5c')],'as':'Attachments','raw':!![]});}var _0x50876d=[{'model':db[_0xe447('0x3c')],'as':_0xe447('0x5d'),'attributes':['id','body',_0xe447('0x5e'),'to','cc',_0xe447('0x5f'),'subject',_0xe447('0x60')],'where':{'secret':![]},'order':qs[_0xe447('0x61')]('id'),'include':_0xe01af6}];return db[_0xe447('0x24')][_0xe447('0x37')]({'where':{'id':_0x5ceacf[_0xe447('0x2b')]['id']},'include':_0x50876d})[_0xe447('0x1d')](handleEntityNotFound(_0x334723,null))[_0xe447('0x1d')](function(_0x3fe3d4){if(_0x3fe3d4&&_0x3fe3d4[_0xe447('0x5d')]){var _0x247c7c=_0x3fe3d4[_0xe447('0x62')]({'plain':!![]});fs['mkdirSync'](_0x5a47a1);return BPromise[_0xe447('0x63')](_0x247c7c[_0xe447('0x5d')],function(_0x301ad0,_0x220a76){var _0x1b69e0={'from':_0x301ad0[_0xe447('0x5e')],'to':_0x301ad0['to']||_0xe447('0x64'),'subject':_0x301ad0[_0xe447('0x65')],'html':htmlEntities[_0xe447('0x66')](_0x301ad0[_0xe447('0x3a')]),'headers':{'Date':moment(_0x301ad0['createdAt'])[_0xe447('0x48')]('ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ')},'attachments':[]};if(_0x301ad0['cc']){_0x1b69e0[_0xe447('0x67')]['Cc']=_0x301ad0['cc'];}if(_0x301ad0[_0xe447('0x5f')]){_0x1b69e0[_0xe447('0x67')]['Bcc']=_0x301ad0['bcc'];}return new BPromise(function(_0x1ea67b,_0x17aa7b){if(_0x301ad0['Attachments']){for(var _0x469286=0x0;_0x469286<_0x301ad0[_0xe447('0x68')][_0xe447('0x32')];_0x469286++){var _0x178b3e=_0x301ad0[_0xe447('0x68')][_0x469286];var _0x10b78d=path['join'](_0x5901f2,_0x178b3e[_0xe447('0x69')]);if(fs[_0xe447('0x6a')](_0x10b78d)){_0x1b69e0[_0xe447('0x5a')]['push']({'name':_0x178b3e[_0xe447('0x20')],'contentType':_0x178b3e['type'],'data':fs[_0xe447('0x6b')](_0x10b78d)});}}}emlformat[_0xe447('0x6c')](_0x1b69e0,function(_0x1a6f01,_0x1f83ba){if(_0x1a6f01)return _0x17aa7b(_0x1a6f01);fs[_0xe447('0x6d')](path[_0xe447('0x55')](_0x5a47a1,util['format'](_0xe447('0x6e'),_0x220a76)),_0x1f83ba);return _0x1ea67b(_0x1f83ba);});});})[_0xe447('0x1d')](function(){return new BPromise(function(_0x313283,_0x44a1f4){zipdir(_0x5a47a1,{'saveTo':_0x42d46a},function(_0x3ba834,_0x5438fc){if(_0x3ba834)return _0x44a1f4(_0x3ba834);return _0x313283(_0x5438fc);});})['then'](function(){return new BPromise(function(_0x38805c,_0x531e49){rimraf(_0x5a47a1,function(_0x4518d3){if(_0x4518d3)_0x531e49(_0x4518d3);return _0x38805c();});});})[_0xe447('0x1d')](function(){return _0x334723[_0xe447('0x52')](_0x42d46a,_0xa87a1a,function(_0x566195){if(!_0x566195)fs[_0xe447('0x6f')](_0x42d46a);});});});}else{return _0x334723['sendStatus'](0xc8);}})[_0xe447('0x38')](handleError(_0x334723,null));};
\ No newline at end of file