Built motion from commit ff78e754.|2.6.29
[motion2.git] / server / api / mailInteraction / mailInteraction.controller.js
index 787f48c..fa794c2 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x34df=['server','tmp','join','format','push','Attachments','Messages','subject','createdAt','mkdirSync','each','from','decode','headers','bcc','Bcc','basename','existsSync','name','readFileSync','build','message%d.eml','unlinkSync','rimraf','zip-dir','moment','bluebird','path','lodash','juice','ioredis','../../components/interaction/service','../../components/parsers/qs','../../config/logger','../../config/environment','../../mysqldb','html-entities','redis','defaults','localhost','./mailInteraction.socket','status','end','offset','undefined','limit','count','set','Content-Range','json','update','destroy','then','error','send','map','MailInteraction','rawAttributes','fieldName','type','key','getOptions','findAll','user','catch','show','params','model','keys','query','intersection','attributes','fields','include','merge','options','find','create','body','addMessage','ids','omit','filters','length','hasOwnProperty','nolimit','order','sort','pick','filter','where','split','YYYY-MM-DD\x20HH:mm:ss','MailMessage','includeAll','inlineCss','true','addTags','Tag','color','emit','removeTags','download','unix','root'];(function(_0x5a69a9,_0x1cb225){var _0xdb22c7=function(_0x4fbe13){while(--_0x4fbe13){_0x5a69a9['push'](_0x5a69a9['shift']());}};_0xdb22c7(++_0x1cb225);}(_0x34df,0x80));var _0xf34d=function(_0x9c3c56,_0x169b56){_0x9c3c56=_0x9c3c56-0x0;var _0x2dd782=_0x34df[_0x9c3c56];return _0x2dd782;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0xf34d('0x0'));var zipdir=require(_0xf34d('0x1'));var moment=require(_0xf34d('0x2'));var BPromise=require(_0xf34d('0x3'));var util=require('util');var path=require(_0xf34d('0x4'));var fs=require('fs');var _=require(_0xf34d('0x5'));var juice=require(_0xf34d('0x6'));var Redis=require(_0xf34d('0x7'));var interaction=require(_0xf34d('0x8'));var qs=require(_0xf34d('0x9'));var logger=require(_0xf34d('0xa'))('api');var config=require(_0xf34d('0xb'));var db=require(_0xf34d('0xc'))['db'];var htmlEntities=require(_0xf34d('0xd'));config[_0xf34d('0xe')]=_[_0xf34d('0xf')](config['redis'],{'host':_0xf34d('0x10'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0xf34d('0xe')]));require(_0xf34d('0x11'))['register'](socket);function respondWithStatusCode(_0x929a84,_0x334e13){_0x334e13=_0x334e13||0xcc;return function(_0x238f82){if(_0x238f82){return _0x929a84['sendStatus'](_0x334e13);}return _0x929a84[_0xf34d('0x12')](_0x334e13)[_0xf34d('0x13')]();};}function respondWithResult(_0x3902b4,_0x4107eb){_0x4107eb=_0x4107eb||0xc8;return function(_0x4d67ad){if(_0x4d67ad){return _0x3902b4[_0xf34d('0x12')](_0x4107eb)['json'](_0x4d67ad);}};}function respondWithFilteredResult(_0x579a8e,_0x483e0d){return function(_0x46f406){if(_0x46f406){var _0x30cda6=typeof _0x483e0d[_0xf34d('0x14')]===_0xf34d('0x15')&&typeof _0x483e0d[_0xf34d('0x16')]==='undefined';var _0x126ce2=_0x46f406['count'];var _0x3c30f6=_0x30cda6?0x0:_0x483e0d[_0xf34d('0x14')];var _0x43b184=_0x30cda6?_0x46f406[_0xf34d('0x17')]:_0x483e0d[_0xf34d('0x14')]+_0x483e0d['limit'];var _0x3212e4;if(_0x43b184>=_0x126ce2){_0x43b184=_0x126ce2;_0x3212e4=0xc8;}else{_0x3212e4=0xce;}_0x579a8e['status'](_0x3212e4);return _0x579a8e[_0xf34d('0x18')](_0xf34d('0x19'),_0x3c30f6+'-'+_0x43b184+'/'+_0x126ce2)[_0xf34d('0x1a')](_0x46f406);}return null;};}function saveUpdates(_0xbaeb97){return function(_0x17da12){if(_0x17da12){return _0x17da12[_0xf34d('0x1b')](_0xbaeb97)['then'](function(_0x1ea57e){return _0x1ea57e;});}return null;};}function removeEntity(_0x4e64c0){return function(_0x3ef5ee){if(_0x3ef5ee){return _0x3ef5ee[_0xf34d('0x1c')]()[_0xf34d('0x1d')](function(){_0x4e64c0['status'](0xcc)[_0xf34d('0x13')]();});}};}function handleEntityNotFound(_0x2cf83f){return function(_0x48aa48){if(!_0x48aa48){_0x2cf83f['sendStatus'](0x194);}return _0x48aa48;};}function handleError(_0x47dbbe,_0x1c6cbe){_0x1c6cbe=_0x1c6cbe||0x1f4;return function(_0x13fb00){logger[_0xf34d('0x1e')](_0x13fb00['stack']);if(_0x13fb00['name']){delete _0x13fb00['name'];}_0x47dbbe['status'](_0x1c6cbe)[_0xf34d('0x1f')](_0x13fb00);};}exports['index']=function(_0x5bf9ae,_0x3f8694){var _0x50f4ca={};var _0x21e67a=_[_0xf34d('0x20')](db[_0xf34d('0x21')][_0xf34d('0x22')],function(_0x42b904){return{'name':_0x42b904[_0xf34d('0x23')],'type':_0x42b904[_0xf34d('0x24')][_0xf34d('0x25')]};});_0x50f4ca=qs[_0xf34d('0x26')](_0x21e67a,_0x5bf9ae);return interaction[_0xf34d('0x27')]('mail',_0x5bf9ae['query'],_0x5bf9ae[_0xf34d('0x28')],_0x50f4ca,_0x21e67a)[_0xf34d('0x1d')](respondWithFilteredResult(_0x3f8694,_0x50f4ca))[_0xf34d('0x29')](handleError(_0x3f8694,null));};exports[_0xf34d('0x2a')]=function(_0x166e43,_0x1098e6){var _0x4a6f15={'raw':![],'where':{'id':_0x166e43[_0xf34d('0x2b')]['id']}},_0x58a256={};_0x58a256[_0xf34d('0x2c')]=_[_0xf34d('0x2d')](db[_0xf34d('0x21')][_0xf34d('0x22')]);_0x58a256[_0xf34d('0x2e')]=_['keys'](_0x166e43['query']);_0x58a256['filters']=_[_0xf34d('0x2f')](_0x58a256['model'],_0x58a256[_0xf34d('0x2e')]);_0x4a6f15[_0xf34d('0x30')]=_[_0xf34d('0x2f')](_0x58a256[_0xf34d('0x2c')],qs[_0xf34d('0x31')](_0x166e43[_0xf34d('0x2e')][_0xf34d('0x31')]));_0x4a6f15[_0xf34d('0x30')]=_0x4a6f15[_0xf34d('0x30')]['length']?_0x4a6f15['attributes']:_0x58a256[_0xf34d('0x2c')];if(_0x166e43[_0xf34d('0x2e')]['includeAll']){_0x4a6f15[_0xf34d('0x32')]=[{'all':!![]}];}_0x4a6f15=_[_0xf34d('0x33')]({},_0x4a6f15,_0x166e43[_0xf34d('0x34')]);return db['MailInteraction'][_0xf34d('0x35')](_0x4a6f15)[_0xf34d('0x1d')](handleEntityNotFound(_0x1098e6,null))[_0xf34d('0x1d')](respondWithResult(_0x1098e6,null))['catch'](handleError(_0x1098e6,null));};exports[_0xf34d('0x36')]=function(_0x1c1115,_0x1f32ef){return db[_0xf34d('0x21')][_0xf34d('0x36')](_0x1c1115[_0xf34d('0x37')],{})[_0xf34d('0x1d')](respondWithResult(_0x1f32ef,0xc9))[_0xf34d('0x29')](handleError(_0x1f32ef,null));};exports[_0xf34d('0x1b')]=function(_0x3e194f,_0x3168b2){if(_0x3e194f[_0xf34d('0x37')]['id']){delete _0x3e194f[_0xf34d('0x37')]['id'];}return db['MailInteraction'][_0xf34d('0x35')]({'where':{'id':_0x3e194f[_0xf34d('0x2b')]['id']}})[_0xf34d('0x1d')](handleEntityNotFound(_0x3168b2,null))['then'](saveUpdates(_0x3e194f[_0xf34d('0x37')],null))[_0xf34d('0x1d')](respondWithResult(_0x3168b2,null))[_0xf34d('0x29')](handleError(_0x3168b2,null));};exports['destroy']=function(_0x1460db,_0x21a03f){return db[_0xf34d('0x21')][_0xf34d('0x35')]({'where':{'id':_0x1460db[_0xf34d('0x2b')]['id']}})[_0xf34d('0x1d')](handleEntityNotFound(_0x21a03f,null))['then'](removeEntity(_0x21a03f,null))[_0xf34d('0x29')](handleError(_0x21a03f,null));};exports['describe']=function(_0x99fcc0,_0x2a940d){return db[_0xf34d('0x21')]['describe']()['then'](respondWithResult(_0x2a940d,null))[_0xf34d('0x29')](handleError(_0x2a940d,null));};exports[_0xf34d('0x38')]=function(_0x3c87ab,_0xf29df9){return db['MailMessage'][_0xf34d('0x35')]({'where':{'id':_0x3c87ab[_0xf34d('0x2b')]['id']}})[_0xf34d('0x1d')](handleEntityNotFound(_0xf29df9,null))[_0xf34d('0x1d')](function(_0x32d6f4){if(_0x32d6f4){return _0x32d6f4['addMessage'](_0x3c87ab[_0xf34d('0x37')][_0xf34d('0x39')],_[_0xf34d('0x3a')](_0x3c87ab['body'],[_0xf34d('0x39'),'id'])||{});}})[_0xf34d('0x1d')](respondWithResult(_0xf29df9,null))[_0xf34d('0x29')](handleError(_0xf29df9,null));};exports['getMessages']=function(_0x22bf80,_0x589bf4){var _0x1253fb={'raw':![],'where':{}};var _0x1638f3={};var _0x34c0a2={'count':0x0,'rows':[]};return db[_0xf34d('0x21')]['findOne']({'where':{'id':_0x22bf80[_0xf34d('0x2b')]['id']}})[_0xf34d('0x1d')](handleEntityNotFound(_0x589bf4,null))[_0xf34d('0x1d')](function(_0x24071a){if(_0x24071a){_0x1638f3[_0xf34d('0x2c')]=_[_0xf34d('0x2d')](db['MailMessage'][_0xf34d('0x22')]);_0x1638f3[_0xf34d('0x2e')]=_[_0xf34d('0x2d')](_0x22bf80['query']);_0x1638f3[_0xf34d('0x3b')]=_['intersection'](_0x1638f3[_0xf34d('0x2c')],_0x1638f3[_0xf34d('0x2e')]);_0x1253fb[_0xf34d('0x30')]=_[_0xf34d('0x2f')](_0x1638f3[_0xf34d('0x2c')],qs[_0xf34d('0x31')](_0x22bf80[_0xf34d('0x2e')]['fields']));_0x1253fb['attributes']=_0x1253fb[_0xf34d('0x30')][_0xf34d('0x3c')]?_0x1253fb['attributes']:_0x1638f3[_0xf34d('0x2c')];if(!_0x22bf80[_0xf34d('0x2e')][_0xf34d('0x3d')](_0xf34d('0x3e'))){_0x1253fb['limit']=qs['limit'](_0x22bf80[_0xf34d('0x2e')]['limit']);_0x1253fb['offset']=qs[_0xf34d('0x14')](_0x22bf80[_0xf34d('0x2e')][_0xf34d('0x14')]);}_0x1253fb[_0xf34d('0x3f')]=qs[_0xf34d('0x40')](_0x22bf80[_0xf34d('0x2e')][_0xf34d('0x40')]);_0x1253fb['where']=qs['filters'](_[_0xf34d('0x41')](_0x22bf80[_0xf34d('0x2e')],_0x1638f3[_0xf34d('0x3b')]));_0x1253fb['where']['MailInteractionId']=_0x24071a['id'];if(_0x22bf80['query'][_0xf34d('0x42')]){_0x1253fb['where']=_['merge'](_0x1253fb[_0xf34d('0x43')],{'$or':_[_0xf34d('0x20')](_0x1253fb[_0xf34d('0x30')],function(_0x199c2d){var _0x2e2a94={};_0x2e2a94[_0x199c2d]={'$like':'%'+_0x22bf80['query'][_0xf34d('0x42')]+'%'};return _0x2e2a94;})});}if(_0x22bf80[_0xf34d('0x2e')]['$gte']){var _0x27a91e=_0x22bf80[_0xf34d('0x2e')]['$gte'][_0xf34d('0x44')](',');var _0x34d09a={};_0x34d09a[_0x27a91e[0x0]]={'$gte':moment(_0x27a91e[0x1])['format'](_0xf34d('0x45'))};_0x1253fb[_0xf34d('0x43')]=_[_0xf34d('0x33')](_0x1253fb[_0xf34d('0x43')],_0x34d09a);}_0x1253fb=_['merge']({},_0x1253fb,_0x22bf80['options']);return db[_0xf34d('0x46')][_0xf34d('0x17')]({'where':_0x1253fb[_0xf34d('0x43')]})['then'](function(_0x5684ea){_0x34c0a2[_0xf34d('0x17')]=_0x5684ea;if(_0x22bf80[_0xf34d('0x2e')][_0xf34d('0x47')]){_0x1253fb[_0xf34d('0x32')]=[{'all':!![]}];}return db[_0xf34d('0x46')]['findAll'](_0x1253fb);})['then'](function(_0x26577c){if(_0x22bf80[_0xf34d('0x2e')][_0xf34d('0x48')]===_0xf34d('0x49')){for(var _0x1342f1=0x0;_0x1342f1<_0x26577c[_0xf34d('0x3c')];_0x1342f1++){_0x26577c[_0x1342f1][_0xf34d('0x37')]=juice(_0x26577c[_0x1342f1][_0xf34d('0x37')]);}}_0x34c0a2['rows']=_0x26577c;return _0x34c0a2;});}})[_0xf34d('0x1d')](respondWithFilteredResult(_0x589bf4,_0x1253fb))[_0xf34d('0x29')](handleError(_0x589bf4,null));};exports[_0xf34d('0x4a')]=function(_0x4be4e8,_0x372358){return db[_0xf34d('0x21')]['find']({'where':{'id':_0x4be4e8['params']['id']}})['then'](handleEntityNotFound(_0x372358,null))['then'](function(_0x49a92a){if(_0x49a92a){return _0x49a92a['setTags'](_0x4be4e8['body']['ids'],_[_0xf34d('0x3a')](_0x4be4e8[_0xf34d('0x37')],['ids','id'])||{})['spread'](function(){return db[_0xf34d('0x4b')][_0xf34d('0x27')]({'attributes':['id','name',_0xf34d('0x4c')],'where':{'id':_0x4be4e8[_0xf34d('0x37')][_0xf34d('0x39')]}});})[_0xf34d('0x1d')](function(_0x3469c0){socket[_0xf34d('0x4d')]('mailInteractionTags:save',{'id':Number(_0x4be4e8[_0xf34d('0x2b')]['id']),'tags':_0x3469c0||[]});return{'id':Number(_0x4be4e8[_0xf34d('0x2b')]['id']),'tags':_0x3469c0||[]};});}})[_0xf34d('0x1d')](respondWithResult(_0x372358,null))[_0xf34d('0x29')](handleError(_0x372358,null));};exports[_0xf34d('0x4e')]=function(_0x1ce5c5,_0x18b3aa){return db[_0xf34d('0x21')][_0xf34d('0x35')]({'where':{'id':_0x1ce5c5[_0xf34d('0x2b')]['id']}})['then'](handleEntityNotFound(_0x18b3aa,null))['then'](function(_0x39890a){if(_0x39890a){return _0x39890a[_0xf34d('0x4e')](_0x1ce5c5[_0xf34d('0x2e')][_0xf34d('0x39')]);}})[_0xf34d('0x1d')](respondWithStatusCode(_0x18b3aa,null))['catch'](handleError(_0x18b3aa,null));};exports[_0xf34d('0x4f')]=function(_0x2718dc,_0x458ece){var _0xd5fb40=moment()[_0xf34d('0x50')]()['toString']();var _0x3910c9=path['join'](config[_0xf34d('0x51')],_0xf34d('0x52'),'files',_0xf34d('0x53'));var _0x56d026=path[_0xf34d('0x54')](config[_0xf34d('0x51')],'server','files','attachments');var _0x47ae44=path[_0xf34d('0x54')](_0x3910c9,_0xd5fb40);var _0x92daed=util[_0xf34d('0x55')]('transcript-%d-%s.zip',_0x2718dc[_0xf34d('0x2b')]['id'],_0xd5fb40);var _0x559f45=path['join'](_0x3910c9,_0x92daed);var _0x3a48f9=[];if(_0x2718dc[_0xf34d('0x2e')]['attachments']){_0x3a48f9[_0xf34d('0x56')]({'model':db['Attachment'],'as':_0xf34d('0x57'),'raw':!![]});}var _0x94a97f=[{'model':db[_0xf34d('0x46')],'as':_0xf34d('0x58'),'attributes':['id',_0xf34d('0x37'),'from','to','cc','bcc',_0xf34d('0x59'),_0xf34d('0x5a')],'where':{'secret':![]},'order':qs[_0xf34d('0x40')]('id'),'include':_0x3a48f9}];return db[_0xf34d('0x21')][_0xf34d('0x35')]({'where':{'id':_0x2718dc[_0xf34d('0x2b')]['id']},'include':_0x94a97f})[_0xf34d('0x1d')](handleEntityNotFound(_0x458ece,null))[_0xf34d('0x1d')](function(_0x62470b){if(_0x62470b&&_0x62470b[_0xf34d('0x58')]){var _0x34f3d0=_0x62470b['get']({'plain':!![]});fs[_0xf34d('0x5b')](_0x47ae44);return BPromise[_0xf34d('0x5c')](_0x34f3d0[_0xf34d('0x58')],function(_0x410d38,_0x4b1132){var _0x3c44b8={'from':_0x410d38[_0xf34d('0x5d')],'to':_0x410d38['to']||'missing.recipient@your.company.com','subject':_0x410d38[_0xf34d('0x59')],'html':htmlEntities[_0xf34d('0x5e')](_0x410d38[_0xf34d('0x37')]),'headers':{'Date':moment(_0x410d38[_0xf34d('0x5a')])[_0xf34d('0x55')]('ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ')},'attachments':[]};if(_0x410d38['cc']){_0x3c44b8[_0xf34d('0x5f')]['Cc']=_0x410d38['cc'];}if(_0x410d38[_0xf34d('0x60')]){_0x3c44b8['headers'][_0xf34d('0x61')]=_0x410d38['bcc'];}return new BPromise(function(_0x52503c,_0x196f07){if(_0x410d38[_0xf34d('0x57')]){for(var _0x1bc9d0=0x0;_0x1bc9d0<_0x410d38[_0xf34d('0x57')][_0xf34d('0x3c')];_0x1bc9d0++){var _0x595d15=_0x410d38[_0xf34d('0x57')][_0x1bc9d0];var _0x78664f=path[_0xf34d('0x54')](_0x56d026,_0x595d15[_0xf34d('0x62')]);if(fs[_0xf34d('0x63')](_0x78664f)){_0x3c44b8['attachments'][_0xf34d('0x56')]({'name':_0x595d15[_0xf34d('0x64')],'contentType':_0x595d15[_0xf34d('0x24')],'data':fs[_0xf34d('0x65')](_0x78664f)});}}}emlformat[_0xf34d('0x66')](_0x3c44b8,function(_0x3d8a3f,_0x4a0394){if(_0x3d8a3f)return _0x196f07(_0x3d8a3f);fs['writeFileSync'](path[_0xf34d('0x54')](_0x47ae44,util[_0xf34d('0x55')](_0xf34d('0x67'),_0x4b1132)),_0x4a0394);return _0x52503c(_0x4a0394);});});})[_0xf34d('0x1d')](function(){return new BPromise(function(_0x40875e,_0x4eeed5){zipdir(_0x47ae44,{'saveTo':_0x559f45},function(_0x2aab55,_0x5369cb){if(_0x2aab55)return _0x4eeed5(_0x2aab55);return _0x40875e(_0x5369cb);});})[_0xf34d('0x1d')](function(){return new BPromise(function(_0x4c5e4a,_0x182b00){rimraf(_0x47ae44,function(_0x25f06f){if(_0x25f06f)_0x182b00(_0x25f06f);return _0x4c5e4a();});});})['then'](function(){return _0x458ece['download'](_0x559f45,_0x92daed,function(_0x57506b){if(!_0x57506b)fs[_0xf34d('0x68')](_0x559f45);});});});}else{return _0x458ece['sendStatus'](0xc8);}})['catch'](handleError(_0x458ece,null));};
\ No newline at end of file
+var _0x9e2f=['index','map','MailInteraction','fieldName','type','getOptions','findAll','mail','query','user','catch','show','params','model','keys','rawAttributes','intersection','fields','attributes','length','includeAll','include','merge','options','find','create','body','describe','addMessage','ids','omit','getMessages','findOne','filters','nolimit','order','sort','where','pick','MailInteractionId','filter','$gte','split','format','YYYY-MM-DD\x20HH:mm:ss','MailMessage','inlineCss','addTags','setTags','spread','color','emit','removeTags','download','unix','toString','join','files','tmp','root','server','attachments','push','Attachment','Attachments','Messages','bcc','subject','get','mkdirSync','from','headers','Bcc','basename','existsSync','readFileSync','build','writeFileSync','message%d.eml','unlinkSync','eml-format','zip-dir','moment','bluebird','path','juice','ioredis','../../components/interaction/service','api','../../config/environment','../../mysqldb','html-entities','redis','localhost','socket.io-emitter','./mailInteraction.socket','register','sendStatus','status','end','json','offset','undefined','limit','count','set','Content-Range','update','then','destroy','error','name','send'];(function(_0x24199d,_0x1f9109){var _0x4f9b30=function(_0x5a24d9){while(--_0x5a24d9){_0x24199d['push'](_0x24199d['shift']());}};_0x4f9b30(++_0x1f9109);}(_0x9e2f,0xc1));var _0xf9e2=function(_0x32265a,_0x3851df){_0x32265a=_0x32265a-0x0;var _0x1fc938=_0x9e2f[_0x32265a];return _0x1fc938;};'use strict';var emlformat=require(_0xf9e2('0x0'));var rimraf=require('rimraf');var zipdir=require(_0xf9e2('0x1'));var moment=require(_0xf9e2('0x2'));var BPromise=require(_0xf9e2('0x3'));var util=require('util');var path=require(_0xf9e2('0x4'));var fs=require('fs');var _=require('lodash');var juice=require(_0xf9e2('0x5'));var Redis=require(_0xf9e2('0x6'));var interaction=require(_0xf9e2('0x7'));var qs=require('../../components/parsers/qs');var logger=require('../../config/logger')(_0xf9e2('0x8'));var config=require(_0xf9e2('0x9'));var db=require(_0xf9e2('0xa'))['db'];var htmlEntities=require(_0xf9e2('0xb'));config[_0xf9e2('0xc')]=_['defaults'](config['redis'],{'host':_0xf9e2('0xd'),'port':0x18eb});var socket=require(_0xf9e2('0xe'))(new Redis(config[_0xf9e2('0xc')]));require(_0xf9e2('0xf'))[_0xf9e2('0x10')](socket);function respondWithStatusCode(_0x5e90b4,_0x50c0b7){_0x50c0b7=_0x50c0b7||0xcc;return function(_0x551800){if(_0x551800){return _0x5e90b4[_0xf9e2('0x11')](_0x50c0b7);}return _0x5e90b4[_0xf9e2('0x12')](_0x50c0b7)[_0xf9e2('0x13')]();};}function respondWithResult(_0x4d5c39,_0x5b07d2){_0x5b07d2=_0x5b07d2||0xc8;return function(_0x3b3907){if(_0x3b3907){return _0x4d5c39[_0xf9e2('0x12')](_0x5b07d2)[_0xf9e2('0x14')](_0x3b3907);}};}function respondWithFilteredResult(_0x568884,_0x1cc42d){return function(_0x1f9280){if(_0x1f9280){var _0x2878ac=typeof _0x1cc42d[_0xf9e2('0x15')]===_0xf9e2('0x16')&&typeof _0x1cc42d[_0xf9e2('0x17')]===_0xf9e2('0x16');var _0x361dd2=_0x1f9280[_0xf9e2('0x18')];var _0x2a2750=_0x2878ac?0x0:_0x1cc42d['offset'];var _0x52aa63=_0x2878ac?_0x1f9280[_0xf9e2('0x18')]:_0x1cc42d[_0xf9e2('0x15')]+_0x1cc42d[_0xf9e2('0x17')];var _0x1f9097;if(_0x52aa63>=_0x361dd2){_0x52aa63=_0x361dd2;_0x1f9097=0xc8;}else{_0x1f9097=0xce;}_0x568884[_0xf9e2('0x12')](_0x1f9097);return _0x568884[_0xf9e2('0x19')](_0xf9e2('0x1a'),_0x2a2750+'-'+_0x52aa63+'/'+_0x361dd2)[_0xf9e2('0x14')](_0x1f9280);}return null;};}function saveUpdates(_0x45c440){return function(_0x4aba06){if(_0x4aba06){return _0x4aba06[_0xf9e2('0x1b')](_0x45c440)[_0xf9e2('0x1c')](function(_0xc671be){return _0xc671be;});}return null;};}function removeEntity(_0x11f0da){return function(_0x25577a){if(_0x25577a){return _0x25577a[_0xf9e2('0x1d')]()[_0xf9e2('0x1c')](function(){_0x11f0da[_0xf9e2('0x12')](0xcc)[_0xf9e2('0x13')]();});}};}function handleEntityNotFound(_0x3a69fb){return function(_0x3898d5){if(!_0x3898d5){_0x3a69fb[_0xf9e2('0x11')](0x194);}return _0x3898d5;};}function handleError(_0x253b13,_0x785000){_0x785000=_0x785000||0x1f4;return function(_0x36eb35){logger[_0xf9e2('0x1e')](_0x36eb35['stack']);if(_0x36eb35[_0xf9e2('0x1f')]){delete _0x36eb35[_0xf9e2('0x1f')];}_0x253b13[_0xf9e2('0x12')](_0x785000)[_0xf9e2('0x20')](_0x36eb35);};}exports[_0xf9e2('0x21')]=function(_0x361e01,_0x1e0a6f){var _0x36bf24={};var _0x3ae8e9=_[_0xf9e2('0x22')](db[_0xf9e2('0x23')]['rawAttributes'],function(_0x5ab23f){return{'name':_0x5ab23f[_0xf9e2('0x24')],'type':_0x5ab23f[_0xf9e2('0x25')]['key']};});_0x36bf24=qs[_0xf9e2('0x26')](_0x3ae8e9,_0x361e01);return interaction[_0xf9e2('0x27')](_0xf9e2('0x28'),_0x361e01[_0xf9e2('0x29')],_0x361e01[_0xf9e2('0x2a')],_0x36bf24,_0x3ae8e9)[_0xf9e2('0x1c')](respondWithFilteredResult(_0x1e0a6f,_0x36bf24))[_0xf9e2('0x2b')](handleError(_0x1e0a6f,null));};exports[_0xf9e2('0x2c')]=function(_0xd2b704,_0x1fcb7f){var _0x462660={'raw':![],'where':{'id':_0xd2b704[_0xf9e2('0x2d')]['id']}},_0x45b4e3={};_0x45b4e3[_0xf9e2('0x2e')]=_[_0xf9e2('0x2f')](db[_0xf9e2('0x23')][_0xf9e2('0x30')]);_0x45b4e3[_0xf9e2('0x29')]=_['keys'](_0xd2b704[_0xf9e2('0x29')]);_0x45b4e3['filters']=_['intersection'](_0x45b4e3[_0xf9e2('0x2e')],_0x45b4e3[_0xf9e2('0x29')]);_0x462660['attributes']=_[_0xf9e2('0x31')](_0x45b4e3[_0xf9e2('0x2e')],qs[_0xf9e2('0x32')](_0xd2b704[_0xf9e2('0x29')][_0xf9e2('0x32')]));_0x462660[_0xf9e2('0x33')]=_0x462660[_0xf9e2('0x33')][_0xf9e2('0x34')]?_0x462660['attributes']:_0x45b4e3[_0xf9e2('0x2e')];if(_0xd2b704[_0xf9e2('0x29')][_0xf9e2('0x35')]){_0x462660[_0xf9e2('0x36')]=[{'all':!![]}];}_0x462660=_[_0xf9e2('0x37')]({},_0x462660,_0xd2b704[_0xf9e2('0x38')]);return db['MailInteraction'][_0xf9e2('0x39')](_0x462660)[_0xf9e2('0x1c')](handleEntityNotFound(_0x1fcb7f,null))[_0xf9e2('0x1c')](respondWithResult(_0x1fcb7f,null))[_0xf9e2('0x2b')](handleError(_0x1fcb7f,null));};exports[_0xf9e2('0x3a')]=function(_0x1946ad,_0x3ff4ba){return db[_0xf9e2('0x23')][_0xf9e2('0x3a')](_0x1946ad[_0xf9e2('0x3b')],{})['then'](respondWithResult(_0x3ff4ba,0xc9))[_0xf9e2('0x2b')](handleError(_0x3ff4ba,null));};exports[_0xf9e2('0x1b')]=function(_0x5d3d14,_0x5554ba){if(_0x5d3d14[_0xf9e2('0x3b')]['id']){delete _0x5d3d14[_0xf9e2('0x3b')]['id'];}return db[_0xf9e2('0x23')][_0xf9e2('0x39')]({'where':{'id':_0x5d3d14['params']['id']}})[_0xf9e2('0x1c')](handleEntityNotFound(_0x5554ba,null))['then'](saveUpdates(_0x5d3d14['body'],null))[_0xf9e2('0x1c')](respondWithResult(_0x5554ba,null))['catch'](handleError(_0x5554ba,null));};exports['destroy']=function(_0x2902a3,_0x318f11){return db[_0xf9e2('0x23')][_0xf9e2('0x39')]({'where':{'id':_0x2902a3['params']['id']}})[_0xf9e2('0x1c')](handleEntityNotFound(_0x318f11,null))[_0xf9e2('0x1c')](removeEntity(_0x318f11,null))[_0xf9e2('0x2b')](handleError(_0x318f11,null));};exports[_0xf9e2('0x3c')]=function(_0x5151a2,_0x42667c){return db[_0xf9e2('0x23')][_0xf9e2('0x3c')]()[_0xf9e2('0x1c')](respondWithResult(_0x42667c,null))['catch'](handleError(_0x42667c,null));};exports[_0xf9e2('0x3d')]=function(_0x20de6e,_0x18f653){return db['MailMessage'][_0xf9e2('0x39')]({'where':{'id':_0x20de6e[_0xf9e2('0x2d')]['id']}})[_0xf9e2('0x1c')](handleEntityNotFound(_0x18f653,null))[_0xf9e2('0x1c')](function(_0x97653e){if(_0x97653e){return _0x97653e[_0xf9e2('0x3d')](_0x20de6e[_0xf9e2('0x3b')][_0xf9e2('0x3e')],_[_0xf9e2('0x3f')](_0x20de6e['body'],[_0xf9e2('0x3e'),'id'])||{});}})[_0xf9e2('0x1c')](respondWithResult(_0x18f653,null))[_0xf9e2('0x2b')](handleError(_0x18f653,null));};exports[_0xf9e2('0x40')]=function(_0x1b791f,_0x364887){var _0x17a0de={'raw':![],'where':{}};var _0x4ac64f={};var _0x124fff={'count':0x0,'rows':[]};return db[_0xf9e2('0x23')][_0xf9e2('0x41')]({'where':{'id':_0x1b791f[_0xf9e2('0x2d')]['id']}})[_0xf9e2('0x1c')](handleEntityNotFound(_0x364887,null))[_0xf9e2('0x1c')](function(_0x556fd1){if(_0x556fd1){_0x4ac64f[_0xf9e2('0x2e')]=_[_0xf9e2('0x2f')](db['MailMessage'][_0xf9e2('0x30')]);_0x4ac64f[_0xf9e2('0x29')]=_[_0xf9e2('0x2f')](_0x1b791f[_0xf9e2('0x29')]);_0x4ac64f[_0xf9e2('0x42')]=_[_0xf9e2('0x31')](_0x4ac64f[_0xf9e2('0x2e')],_0x4ac64f[_0xf9e2('0x29')]);_0x17a0de['attributes']=_[_0xf9e2('0x31')](_0x4ac64f['model'],qs[_0xf9e2('0x32')](_0x1b791f[_0xf9e2('0x29')][_0xf9e2('0x32')]));_0x17a0de[_0xf9e2('0x33')]=_0x17a0de[_0xf9e2('0x33')]['length']?_0x17a0de[_0xf9e2('0x33')]:_0x4ac64f[_0xf9e2('0x2e')];if(!_0x1b791f[_0xf9e2('0x29')]['hasOwnProperty'](_0xf9e2('0x43'))){_0x17a0de[_0xf9e2('0x17')]=qs[_0xf9e2('0x17')](_0x1b791f[_0xf9e2('0x29')][_0xf9e2('0x17')]);_0x17a0de[_0xf9e2('0x15')]=qs[_0xf9e2('0x15')](_0x1b791f['query'][_0xf9e2('0x15')]);}_0x17a0de[_0xf9e2('0x44')]=qs['sort'](_0x1b791f['query'][_0xf9e2('0x45')]);_0x17a0de[_0xf9e2('0x46')]=qs[_0xf9e2('0x42')](_[_0xf9e2('0x47')](_0x1b791f[_0xf9e2('0x29')],_0x4ac64f[_0xf9e2('0x42')]));_0x17a0de[_0xf9e2('0x46')][_0xf9e2('0x48')]=_0x556fd1['id'];if(_0x1b791f[_0xf9e2('0x29')][_0xf9e2('0x49')]){_0x17a0de['where']=_[_0xf9e2('0x37')](_0x17a0de[_0xf9e2('0x46')],{'$or':_['map'](_0x17a0de[_0xf9e2('0x33')],function(_0x1db2b6){var _0x3a11b9={};_0x3a11b9[_0x1db2b6]={'$like':'%'+_0x1b791f[_0xf9e2('0x29')][_0xf9e2('0x49')]+'%'};return _0x3a11b9;})});}if(_0x1b791f['query'][_0xf9e2('0x4a')]){var _0x2916c1=_0x1b791f[_0xf9e2('0x29')]['$gte'][_0xf9e2('0x4b')](',');var _0x273827={};_0x273827[_0x2916c1[0x0]]={'$gte':moment(_0x2916c1[0x1])[_0xf9e2('0x4c')](_0xf9e2('0x4d'))};_0x17a0de[_0xf9e2('0x46')]=_[_0xf9e2('0x37')](_0x17a0de[_0xf9e2('0x46')],_0x273827);}_0x17a0de=_['merge']({},_0x17a0de,_0x1b791f[_0xf9e2('0x38')]);return db[_0xf9e2('0x4e')][_0xf9e2('0x18')]({'where':_0x17a0de[_0xf9e2('0x46')]})[_0xf9e2('0x1c')](function(_0x387c49){_0x124fff[_0xf9e2('0x18')]=_0x387c49;if(_0x1b791f[_0xf9e2('0x29')]['includeAll']){_0x17a0de['include']=[{'all':!![]}];}return db['MailMessage'][_0xf9e2('0x27')](_0x17a0de);})['then'](function(_0x1b7646){if(_0x1b791f[_0xf9e2('0x29')][_0xf9e2('0x4f')]==='true'){for(var _0x5c4752=0x0;_0x5c4752<_0x1b7646[_0xf9e2('0x34')];_0x5c4752++){_0x1b7646[_0x5c4752][_0xf9e2('0x3b')]=juice(_0x1b7646[_0x5c4752][_0xf9e2('0x3b')]);}}_0x124fff['rows']=_0x1b7646;return _0x124fff;});}})[_0xf9e2('0x1c')](respondWithFilteredResult(_0x364887,_0x17a0de))[_0xf9e2('0x2b')](handleError(_0x364887,null));};exports[_0xf9e2('0x50')]=function(_0x1d618a,_0x2387c0){return db[_0xf9e2('0x23')][_0xf9e2('0x39')]({'where':{'id':_0x1d618a[_0xf9e2('0x2d')]['id']}})['then'](handleEntityNotFound(_0x2387c0,null))[_0xf9e2('0x1c')](function(_0x19b6b3){if(_0x19b6b3){return _0x19b6b3[_0xf9e2('0x51')](_0x1d618a[_0xf9e2('0x3b')]['ids'],_[_0xf9e2('0x3f')](_0x1d618a[_0xf9e2('0x3b')],[_0xf9e2('0x3e'),'id'])||{})[_0xf9e2('0x52')](function(){return db['Tag'][_0xf9e2('0x27')]({'attributes':['id','name',_0xf9e2('0x53')],'where':{'id':_0x1d618a[_0xf9e2('0x3b')]['ids']}});})[_0xf9e2('0x1c')](function(_0x3cc189){socket[_0xf9e2('0x54')]('mailInteractionTags:save',{'id':Number(_0x1d618a['params']['id']),'tags':_0x3cc189||[]});return{'id':Number(_0x1d618a[_0xf9e2('0x2d')]['id']),'tags':_0x3cc189||[]};});}})[_0xf9e2('0x1c')](respondWithResult(_0x2387c0,null))[_0xf9e2('0x2b')](handleError(_0x2387c0,null));};exports[_0xf9e2('0x55')]=function(_0x461d40,_0x3e9faf){return db[_0xf9e2('0x23')][_0xf9e2('0x39')]({'where':{'id':_0x461d40[_0xf9e2('0x2d')]['id']}})[_0xf9e2('0x1c')](handleEntityNotFound(_0x3e9faf,null))['then'](function(_0x2e2f3a){if(_0x2e2f3a){return _0x2e2f3a['removeTags'](_0x461d40[_0xf9e2('0x29')][_0xf9e2('0x3e')]);}})[_0xf9e2('0x1c')](respondWithStatusCode(_0x3e9faf,null))[_0xf9e2('0x2b')](handleError(_0x3e9faf,null));};exports[_0xf9e2('0x56')]=function(_0x758abd,_0x52f4c2){var _0x4c888b=moment()[_0xf9e2('0x57')]()[_0xf9e2('0x58')]();var _0x5afddb=path[_0xf9e2('0x59')](config['root'],'server',_0xf9e2('0x5a'),_0xf9e2('0x5b'));var _0x81808a=path['join'](config[_0xf9e2('0x5c')],_0xf9e2('0x5d'),_0xf9e2('0x5a'),_0xf9e2('0x5e'));var _0x414b73=path[_0xf9e2('0x59')](_0x5afddb,_0x4c888b);var _0x3d30dd=util[_0xf9e2('0x4c')]('transcript-%d-%s.zip',_0x758abd[_0xf9e2('0x2d')]['id'],_0x4c888b);var _0x2ff0ea=path['join'](_0x5afddb,_0x3d30dd);var _0x4d19de=[];if(_0x758abd[_0xf9e2('0x29')][_0xf9e2('0x5e')]){_0x4d19de[_0xf9e2('0x5f')]({'model':db[_0xf9e2('0x60')],'as':_0xf9e2('0x61'),'raw':!![]});}var _0x2c63c9=[{'model':db[_0xf9e2('0x4e')],'as':_0xf9e2('0x62'),'attributes':['id',_0xf9e2('0x3b'),'from','to','cc',_0xf9e2('0x63'),_0xf9e2('0x64'),'createdAt'],'where':{'secret':![]},'order':qs['sort']('id'),'include':_0x4d19de}];return db[_0xf9e2('0x23')][_0xf9e2('0x39')]({'where':{'id':_0x758abd[_0xf9e2('0x2d')]['id']},'include':_0x2c63c9})[_0xf9e2('0x1c')](handleEntityNotFound(_0x52f4c2,null))[_0xf9e2('0x1c')](function(_0x404788){if(_0x404788&&_0x404788['Messages']){var _0x3262ef=_0x404788[_0xf9e2('0x65')]({'plain':!![]});fs[_0xf9e2('0x66')](_0x414b73);return BPromise['each'](_0x3262ef[_0xf9e2('0x62')],function(_0x3081cc,_0x491227){var _0x2747c4={'from':_0x3081cc[_0xf9e2('0x67')],'to':_0x3081cc['to']||'missing.recipient@your.company.com','subject':_0x3081cc[_0xf9e2('0x64')],'html':htmlEntities['decode'](_0x3081cc[_0xf9e2('0x3b')]),'headers':{'Date':moment(_0x3081cc['createdAt'])[_0xf9e2('0x4c')]('ddd,\x20DD\x20MMM\x20YYYY\x20HH:mm:ss\x20ZZ')},'attachments':[]};if(_0x3081cc['cc']){_0x2747c4[_0xf9e2('0x68')]['Cc']=_0x3081cc['cc'];}if(_0x3081cc[_0xf9e2('0x63')]){_0x2747c4['headers'][_0xf9e2('0x69')]=_0x3081cc['bcc'];}return new BPromise(function(_0x2aab7b,_0x242c93){if(_0x3081cc[_0xf9e2('0x61')]){for(var _0x274de=0x0;_0x274de<_0x3081cc[_0xf9e2('0x61')][_0xf9e2('0x34')];_0x274de++){var _0x18aece=_0x3081cc[_0xf9e2('0x61')][_0x274de];var _0x2551b1=path[_0xf9e2('0x59')](_0x81808a,_0x18aece[_0xf9e2('0x6a')]);if(fs[_0xf9e2('0x6b')](_0x2551b1)){_0x2747c4[_0xf9e2('0x5e')][_0xf9e2('0x5f')]({'name':_0x18aece['name'],'contentType':_0x18aece[_0xf9e2('0x25')],'data':fs[_0xf9e2('0x6c')](_0x2551b1)});}}}emlformat[_0xf9e2('0x6d')](_0x2747c4,function(_0x4ac691,_0x584cd9){if(_0x4ac691)return _0x242c93(_0x4ac691);fs[_0xf9e2('0x6e')](path[_0xf9e2('0x59')](_0x414b73,util[_0xf9e2('0x4c')](_0xf9e2('0x6f'),_0x491227)),_0x584cd9);return _0x2aab7b(_0x584cd9);});});})[_0xf9e2('0x1c')](function(){return new BPromise(function(_0x5f930c,_0x5a56a9){zipdir(_0x414b73,{'saveTo':_0x2ff0ea},function(_0x13fc0d,_0x53b905){if(_0x13fc0d)return _0x5a56a9(_0x13fc0d);return _0x5f930c(_0x53b905);});})[_0xf9e2('0x1c')](function(){return new BPromise(function(_0x569dbc,_0xe00906){rimraf(_0x414b73,function(_0x1231fc){if(_0x1231fc)_0xe00906(_0x1231fc);return _0x569dbc();});});})[_0xf9e2('0x1c')](function(){return _0x52f4c2[_0xf9e2('0x56')](_0x2ff0ea,_0x3d30dd,function(_0x1d856d){if(!_0x1d856d)fs[_0xf9e2('0x70')](_0x2ff0ea);});});});}else{return _0x52f4c2[_0xf9e2('0x11')](0xc8);}})[_0xf9e2('0x2b')](handleError(_0x52f4c2,null));};
\ No newline at end of file