Built motion from commit (unavailable).|2.5.24
[motion2.git] / server / api / faxInteraction / faxInteraction.controller.js
1 // *************************************************************************
2 // *                                                                       *
3 // * xCALLY Motion -  The Omnichannel Contact Center                       *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
5 // *                                                                       *
6 // *************************************************************************
7 // *                                                                       *
8 // * Email: info@xcally.com                                                *
9 // * Website: https://www.xcally.com                                       *
10 // *                                                                       *
11 // *************************************************************************
12 // *                                                                       *
13 // * The SOFTWARE PRODUCT is protected by copyright laws and international *
14 // * copyright treaties, as well as other intellectual property laws and   *
15 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                         *
16 // *                                                                       *
17 // *************************************************************************
18 var _0x7495=['UserId','buildExpression','body','some','compact','isEmpty','i.FaxAccountId\x20IN\x20?','concat','createdAt','$gte','$lte','null','\x20IS\x20NULL','\x20=\x20?','read','`unreadMessages`\x20=\x200','tag','replace','isNumeric','i.fax\x20LIKE\x20?','CONCAT(c.firstName,\x20\x27\x20\x27,\x20c.lastName)\x20LIKE\x20?','group','i.id','QueryTypes','SELECT','SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)','unreadMessages','contactName','DESC','t.id\x20IN\x20?','resolve','FaxAccountId','i.FaxAccountId\x20IS\x20NOT\x20NULL','user','role','agent','getFaxAccounts','i.FaxAccountId\x20IS\x20NULL','toString','sequelize','keyBy','a.key','Account.key','a.mandatoryDisposition','Account.mandatoryDisposition','i.*','c.firstName','Contact.firstName','c.lastName','Contact.lastName','c.email','Contact.email','c.phone','Contact.mobile','c.fax','Contact.fax','o.fullname','Owner.fullname','o.internal','Owner.internal','GROUP_CONCAT(DISTINCT\x20t.id)','groupBy','push','all','rows','show','includeAll','include','create','params','describe','addMessage','FaxMessage','ids','omit','getMessages','findOne','hasOwnProperty','FaxInteractionId','filter','merge','options','findAll','addTags','setTags','faxInteractionTags:save','removeTags','download','server','files','join','root','attachments','format','transcript-%d-%s.zip','Attachment','Messages','get','mkdirSync','basename','existsSync','createReadStream','pipe','createWriteStream','log','err','unlinkSync','html-pdf','eml-format','request-promise','moment','mustache','util','sox','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','redis','localhost','socket.io-emitter','./faxInteraction.socket','sendStatus','status','end','json','count','offset','limit','set','Content-Range','reject','update','then','destroy','stack','name','Users','fullname','TagIds','Tags','forEach','catch','index','FaxInteraction','rawAttributes','type','key','model','map','query','keys','filters','intersection','fields','attributes','length','nolimit','order','sort','where','pick','select','field','color','from','tools_tags','ui.FaxInteractionId','user_has_fax_interactions','left_join','users','u.id\x20=\x20ui.UserId','fax_interactions','o.id\x20=\x20i.UserId','fax_accounts','fax_messages','me.FaxInteractionId\x20=\x20i.id','t.id\x20=\x20it.TagId','expr','search','parseSearch','sqlOperator','conditions','having','`\x20=\x200','`\x20>\x200','Contact','operator','$substring','value','MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','getFullTextValue','c.firstName\x20LIKE\x20?\x20OR\x20c.lastName\x20LIKE\x20?\x20OR\x20c.email\x20LIKE\x20?','find','ContactId','text','start','Tag','split','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','User','CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?'];(function(_0x45201a,_0x4266d2){var _0x13374c=function(_0x3eac3f){while(--_0x3eac3f){_0x45201a['push'](_0x45201a['shift']());}};_0x13374c(++_0x4266d2);}(_0x7495,0x143));var _0x5749=function(_0x590a38,_0x2bc65c){_0x590a38=_0x590a38-0x0;var _0xf36626=_0x7495[_0x590a38];return _0xf36626;};'use strict';var pdf=require(_0x5749('0x0'));var emlformat=require(_0x5749('0x1'));var rimraf=require('rimraf');var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require(_0x5749('0x2'));var moment=require(_0x5749('0x3'));var BPromise=require('bluebird');var Mustache=require(_0x5749('0x4'));var util=require(_0x5749('0x5'));var path=require('path');var sox=require(_0x5749('0x6'));var csv=require(_0x5749('0x7'));var ejs=require(_0x5749('0x8'));var fs=require('fs');var _=require(_0x5749('0x9'));var squel=require(_0x5749('0xa'));var crypto=require(_0x5749('0xb'));var jsforce=require(_0x5749('0xc'));var deskjs=require(_0x5749('0xd'));var toCsv=require(_0x5749('0x7'));var querystring=require(_0x5749('0xe'));var Papa=require(_0x5749('0xf'));var Redis=require(_0x5749('0x10'));var authService=require(_0x5749('0x11'));var qs=require('../../components/parsers/qs');var as=require(_0x5749('0x12'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x5749('0x13'))(_0x5749('0x14'));var utils=require(_0x5749('0x15'));var config=require(_0x5749('0x16'));var licenseUtil=require(_0x5749('0x17'));var db=require(_0x5749('0x18'))['db'];config[_0x5749('0x19')]=_['defaults'](config[_0x5749('0x19')],{'host':_0x5749('0x1a'),'port':0x18eb});var socket=require(_0x5749('0x1b'))(new Redis(config[_0x5749('0x19')]));require(_0x5749('0x1c'))['register'](socket);function respondWithStatusCode(_0x2d1477,_0x5e32fd){_0x5e32fd=_0x5e32fd||0xcc;return function(_0x5aac53){if(_0x5aac53){return _0x2d1477[_0x5749('0x1d')](_0x5e32fd);}return _0x2d1477[_0x5749('0x1e')](_0x5e32fd)[_0x5749('0x1f')]();};}function respondWithResult(_0xdd393e,_0x293c28){_0x293c28=_0x293c28||0xc8;return function(_0x73df79){if(_0x73df79){return _0xdd393e[_0x5749('0x1e')](_0x293c28)[_0x5749('0x20')](_0x73df79);}};}function respondWithFilteredResult(_0x22ffb4,_0x4de713){return function(_0xfdeb67){if(_0xfdeb67){var _0x2992f3=_0xfdeb67[_0x5749('0x21')],_0x5b487f=_0x4de713[_0x5749('0x22')],_0x48f93d=_0x4de713['offset']+_0x4de713[_0x5749('0x23')],_0x4bd683;if(_0x48f93d>=_0x2992f3){_0x48f93d=_0x2992f3;_0x4bd683=0xc8;}else{_0x4bd683=0xce;}_0x22ffb4[_0x5749('0x1e')](_0x4bd683);return _0x22ffb4[_0x5749('0x24')](_0x5749('0x25'),_0x5b487f+'-'+_0x48f93d+'/'+_0x2992f3)[_0x5749('0x20')](_0xfdeb67);}return null;};}function patchUpdates(_0x3af9dc){return function(_0x526985){try{jsonpatch['apply'](_0x526985,_0x3af9dc,!![]);}catch(_0x21e6a9){return BPromise[_0x5749('0x26')](_0x21e6a9);}return _0x526985['save']();};}function saveUpdates(_0x5f32b7,_0x5098bd){return function(_0x1dae57){if(_0x1dae57){return _0x1dae57[_0x5749('0x27')](_0x5f32b7)[_0x5749('0x28')](function(_0x7acbbb){return _0x7acbbb;});}return null;};}function removeEntity(_0x3615c2,_0x167d9f){return function(_0x5cbb14){if(_0x5cbb14){return _0x5cbb14[_0x5749('0x29')]()[_0x5749('0x28')](function(){_0x3615c2['status'](0xcc)[_0x5749('0x1f')]();});}};}function handleEntityNotFound(_0x419667,_0x288699){return function(_0x1fc732){if(!_0x1fc732){_0x419667[_0x5749('0x1d')](0x194);}return _0x1fc732;};}function handleError(_0x936225,_0x424931){_0x424931=_0x424931||0x1f4;return function(_0x226ed2){logger['error'](_0x226ed2[_0x5749('0x2a')]);if(_0x226ed2['name']){delete _0x226ed2[_0x5749('0x2b')];}_0x936225[_0x5749('0x1e')](_0x424931)['send'](_0x226ed2);};}function getInteractionUsers(_0x3dafd3,_0x335a68){return new BPromise(function(_0x492730,_0x830faf){try{if(_0x335a68[_0x3dafd3['id']]){_0x3dafd3[_0x5749('0x2c')]=_['map'](_0x335a68[_0x3dafd3['id']],function(_0xe7343c){return{'id':_0xe7343c['id'],'fullname':_0xe7343c[_0x5749('0x2d')]};});}}catch(_0x996620){_0x830faf(_0x996620);}_0x492730(_0x3dafd3);});}function getInteractionTags(_0xcd0909,_0x500ed5){return new BPromise(function(_0xaef5c,_0x1c512f){try{if(_0xcd0909[_0x5749('0x2e')]){_0xcd0909[_0x5749('0x2f')]=[];_0xcd0909[_0x5749('0x2e')]['split'](',')[_0x5749('0x30')](function(_0x42d2dc){_0xcd0909[_0x5749('0x2f')]['push'](_0x500ed5[_0x42d2dc]);});}delete _0xcd0909['TagIds'];}catch(_0x322fd9){_0x1c512f(_0x322fd9);}_0xaef5c(_0xcd0909);});}function updateFaxInteraction(_0x2bbfee,_0x414128,_0xae7f31){return new BPromise(function(_0x3d0258,_0x544f01){return getInteractionUsers(_0x2bbfee,_0xae7f31)[_0x5749('0x28')](function(_0x30b82c){return getInteractionTags(_0x30b82c,_0x414128);})[_0x5749('0x28')](function(_0x28f692){_0x3d0258(_0x28f692);})[_0x5749('0x31')](function(_0x20717d){_0x544f01(_0x20717d);});});}exports[_0x5749('0x32')]=function(_0x5431bc,_0x287639){var _0x512aae={},_0x19789c={},_0x49a6d6={'count':0x0,'rows':[]};var _0x7adc43=_['map'](db[_0x5749('0x33')][_0x5749('0x34')],function(_0x26da0b){return{'name':_0x26da0b['fieldName'],'type':_0x26da0b[_0x5749('0x35')][_0x5749('0x36')]};});_0x19789c[_0x5749('0x37')]=_[_0x5749('0x38')](_0x7adc43,_0x5749('0x2b'));_0x19789c[_0x5749('0x39')]=_[_0x5749('0x3a')](_0x5431bc[_0x5749('0x39')]);_0x19789c[_0x5749('0x3b')]=_[_0x5749('0x3c')](_0x19789c[_0x5749('0x37')],_0x19789c[_0x5749('0x39')]);_0x512aae['attributes']=_['intersection'](_0x19789c[_0x5749('0x37')],qs['fields'](_0x5431bc[_0x5749('0x39')][_0x5749('0x3d')]));_0x512aae['attributes']=_0x512aae[_0x5749('0x3e')][_0x5749('0x3f')]?_0x512aae[_0x5749('0x3e')]:_0x19789c[_0x5749('0x37')];if(!_0x5431bc[_0x5749('0x39')]['hasOwnProperty'](_0x5749('0x40'))){_0x512aae['limit']=qs[_0x5749('0x23')](_0x5431bc['query'][_0x5749('0x23')]);_0x512aae[_0x5749('0x22')]=qs['offset'](_0x5431bc[_0x5749('0x39')][_0x5749('0x22')]);}_0x512aae[_0x5749('0x41')]=qs[_0x5749('0x42')](_0x5431bc['query'][_0x5749('0x42')]);_0x512aae[_0x5749('0x43')]=qs[_0x5749('0x3b')](_[_0x5749('0x44')](_0x5431bc[_0x5749('0x39')],_0x19789c['filters']),_0x7adc43);var _0x9e387b=[];var _0x175ef6=squel[_0x5749('0x45')]()[_0x5749('0x46')]('id')[_0x5749('0x46')](_0x5749('0x2b'))[_0x5749('0x46')](_0x5749('0x47'))[_0x5749('0x48')](_0x5749('0x49'));var _0x4e2484=squel['select']()['field']('u.id')[_0x5749('0x46')]('u.fullname')[_0x5749('0x46')](_0x5749('0x4a'))['from'](_0x5749('0x4b'),'ui')[_0x5749('0x4c')](_0x5749('0x4d'),'u',_0x5749('0x4e'));var _0x4998f8=squel['select']()[_0x5749('0x48')](_0x5749('0x4f'),'i')[_0x5749('0x4c')]('cm_contacts','c','c.id\x20=\x20i.ContactId\x20AND\x20c.deletedAt\x20IS\x20NULL')['left_join'](_0x5749('0x4d'),'o',_0x5749('0x50'))[_0x5749('0x4c')](_0x5749('0x51'),'a','a.id\x20=\x20i.FaxAccountId')[_0x5749('0x4c')](_0x5749('0x52'),'me',_0x5749('0x53'))[_0x5749('0x4c')]('fax_interaction_has_tags','it','it.FaxInteractionId\x20=\x20i.id')[_0x5749('0x4c')](_0x5749('0x49'),'t',_0x5749('0x54'));var _0x1b7996=squel[_0x5749('0x55')]();var _0x36b581=[];var _0x298025=squel[_0x5749('0x55')]();var _0x137fae;if(_0x5431bc[_0x5749('0x39')][_0x5749('0x56')]){_0x137fae=as[_0x5749('0x57')](_0x5431bc[_0x5749('0x39')][_0x5749('0x56')]);var _0x5a14e4=_0x137fae[_0x5749('0x58')];for(var _0x4b5d3d=0x0;_0x4b5d3d<_0x137fae[_0x5749('0x59')][_0x5749('0x3f')];_0x4b5d3d++){var _0x5b9b56=_0x137fae['conditions'][_0x4b5d3d];var _0x34beb8='i';var _0x36d0b8=_['find'](_0x7adc43,[_0x5749('0x2b'),_0x5b9b56[_0x5749('0x46')]]);if(!_0x36d0b8){switch(_0x5b9b56[_0x5749('0x46')]){case'unreadMessages':if(_0x5b9b56['value']==0x1){_0x4998f8[_0x5749('0x5a')]('`'+_0x5b9b56[_0x5749('0x46')]+_0x5749('0x5b'));}else{_0x4998f8['having']('`'+_0x5b9b56['field']+_0x5749('0x5c'));}break;case _0x5749('0x5d'):if(_0x5b9b56[_0x5749('0x5e')]===_0x5749('0x5f')){if(_0x5b9b56[_0x5749('0x60')]['split']('\x20')[_0x5749('0x3f')]>0x1){_0x1b7996[_0x5a14e4](_0x5749('0x61'),qs[_0x5749('0x62')](_0x5b9b56[_0x5749('0x60')]),null);}else{var _0x4d9e5c='%'+_0x5b9b56['value']+'%';_0x1b7996[_0x5a14e4](_0x5749('0x63'),_0x4d9e5c,_0x4d9e5c,_0x4d9e5c);}}else{_0x36d0b8=_[_0x5749('0x64')](_0x7adc43,[_0x5749('0x2b'),_0x5749('0x65')]);_0x5b9b56[_0x5749('0x46')]='ContactId';_0xcfdc67=as['buildExpression'](_0x34beb8,_0x36d0b8[_0x5749('0x35')],_0x5b9b56);_0x1b7996[_0x5a14e4](_0xcfdc67[_0x5749('0x66')],_0xcfdc67['value'][_0x5749('0x67')],_0xcfdc67['value'][_0x5749('0x1f')]);}break;case _0x5749('0x68'):var _0x49a037=_0x5b9b56[_0x5749('0x60')][_0x5749('0x69')](',')[_0x5749('0x38')](function(_0x54508b){return Number(_0x54508b);});_0x49a037['forEach'](function(_0x4eda2e){_0x298025['or'](_0x5749('0x6a'),'%,'+_0x4eda2e+',%');});_0x36b581=_['union'](_0x36b581,_0x49a037);break;case _0x5749('0x6b'):if(_0x5b9b56[_0x5749('0x5e')]==='$substring'){_0x1b7996[_0x5a14e4](_0x5749('0x6c'),'%'+_0x5b9b56[_0x5749('0x60')]+'%',null);}else{_0x36d0b8=_['find'](_0x7adc43,[_0x5749('0x2b'),_0x5749('0x6d')]);_0x5b9b56[_0x5749('0x46')]='UserId';_0xcfdc67=as[_0x5749('0x6e')](_0x34beb8,_0x36d0b8[_0x5749('0x35')],_0x5b9b56);_0x1b7996[_0x5a14e4](_0xcfdc67['text'],_0xcfdc67[_0x5749('0x60')]['start'],_0xcfdc67[_0x5749('0x60')][_0x5749('0x1f')]);}break;case _0x5749('0x6f'):_0xcfdc67=as[_0x5749('0x6e')]('me',null,_0x5b9b56);_0x1b7996[_0x5a14e4](_0xcfdc67['text'],_0xcfdc67[_0x5749('0x60')]['start'],_0xcfdc67[_0x5749('0x60')][_0x5749('0x1f')]);break;}}else{var _0xcfdc67=as['buildExpression'](_0x34beb8,_0x36d0b8[_0x5749('0x35')],_0x5b9b56);_0x1b7996[_0x5a14e4](_0xcfdc67['text'],_0xcfdc67[_0x5749('0x60')][_0x5749('0x67')],_0xcfdc67[_0x5749('0x60')][_0x5749('0x1f')]);}}}else{var _0x4c18d7=_(_0x5431bc[_0x5749('0x39')])[_0x5749('0x3a')]()[_0x5749('0x38')](function(_0x5d748f){return _[_0x5749('0x70')](_0x7adc43,[_0x5749('0x2b'),_0x5d748f])?_0x5d748f:undefined;})[_0x5749('0x71')]()[_0x5749('0x60')]();if(!_[_0x5749('0x72')](_0x4c18d7)){_0x4c18d7[_0x5749('0x30')](function(_0x14c3e8){if(_0x14c3e8==='FaxAccountId'){_0x4998f8[_0x5749('0x43')](_0x5749('0x73'),[][_0x5749('0x74')](_0x5431bc[_0x5749('0x39')][_0x14c3e8]));}else if(_0x14c3e8===_0x5749('0x75')){var _0x3d6e76=JSON['parse'](_0x5431bc[_0x5749('0x39')][_0x14c3e8])[_0x5749('0x76')];var _0xaafb39=JSON['parse'](_0x5431bc[_0x5749('0x39')][_0x14c3e8])[_0x5749('0x77')];_0x4998f8['where']('i.createdAt\x20BETWEEN\x20?\x20AND\x20?',_0x3d6e76,_0xaafb39);}else{if(_0x5431bc[_0x5749('0x39')][_0x14c3e8]===_0x5749('0x78')){_0x4998f8['where']('i.'+_0x14c3e8+_0x5749('0x79'));}else{_0x4998f8[_0x5749('0x43')]('i.'+_0x14c3e8+_0x5749('0x7a'),_0x5431bc[_0x5749('0x39')][_0x14c3e8]);}}});}if(_0x5431bc[_0x5749('0x39')][_0x5749('0x7b')]){if(_0x5431bc[_0x5749('0x39')]['read']==0x1){_0x4998f8[_0x5749('0x5a')](_0x5749('0x7c'));}else{_0x4998f8[_0x5749('0x5a')]('`unreadMessages`\x20>\x200');}}if(_0x5431bc[_0x5749('0x39')]['tag']){_0x36b581=_['isArray'](_0x5431bc[_0x5749('0x39')]['tag'])?_0x5431bc[_0x5749('0x39')][_0x5749('0x7d')]:new Array(_0x5431bc[_0x5749('0x39')][_0x5749('0x7d')]);_0x36b581[_0x5749('0x30')](function(_0x1ac1a3){_0x298025['or']('CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','%,'+_0x1ac1a3+',%');});}if(_0x5431bc[_0x5749('0x39')]['filter']){var _0x2ebf69=_0x5431bc[_0x5749('0x39')]['filter'][_0x5749('0x7e')]('\x5c','\x5c\x5c')[_0x5749('0x7e')](/'/g,'\x27\x27');if(qs[_0x5749('0x7f')](_0x2ebf69)){_0x1b7996['or']('i.id\x20LIKE\x20?',_0x2ebf69+'%')['or'](_0x5749('0x80'),_0x2ebf69+'%');}_0x1b7996['or'](_0x5749('0x81'),_0x2ebf69+'%');}}_0x4998f8[_0x5749('0x43')](_0x1b7996);_0x4998f8[_0x5749('0x82')](_0x5749('0x83'));var _0x4aec0a={'type':db['Sequelize'][_0x5749('0x84')][_0x5749('0x85')],'raw':!![]};var _0x17b3be=_0x4998f8['clone']();_0x17b3be[_0x5749('0x46')](_0x5749('0x83'));_0x17b3be['field'](_0x5749('0x86'),_0x5749('0x87'));if(_0x512aae[_0x5749('0x41')]){_0x512aae[_0x5749('0x41')][_0x5749('0x30')](function(_0x3a3493){var _0x2a2c1c=_0x3a3493[0x0]===_0x5749('0x88')?_0x3a3493[0x0]:'i.'+_0x3a3493[0x0];_0x4998f8['order'](_0x2a2c1c,_0x3a3493[0x1]===_0x5749('0x89')?![]:!![]);});}if(!_[_0x5749('0x72')](_0x36b581)){_0x4998f8['having'](_0x298025);_0x17b3be[_0x5749('0x43')](_0x5749('0x8a'),_0x36b581);}BPromise[_0x5749('0x8b')]()['then'](function(){if(!_0x137fae){if(_0x5431bc[_0x5749('0x39')][_0x5749('0x8c')])return;_0x17b3be['where'](_0x5749('0x8d'));_0x4998f8[_0x5749('0x43')](_0x5749('0x8d'));return;}if(_0x5431bc[_0x5749('0x8e')][_0x5749('0x8f')]!==_0x5749('0x90'))return;return _0x5431bc[_0x5749('0x8e')][_0x5749('0x91')]({'attributes':['id'],'raw':!![]})[_0x5749('0x28')](function(_0x399dd4){if(_[_0x5749('0x72')](_0x399dd4)){_0x17b3be[_0x5749('0x43')](_0x5749('0x92'));_0x4998f8[_0x5749('0x43')]('i.FaxAccountId\x20IS\x20NULL');}else{_0x17b3be['where'](_0x5749('0x73'),_[_0x5749('0x38')](_0x399dd4,'id'));_0x4998f8[_0x5749('0x43')](_0x5749('0x73'),_[_0x5749('0x38')](_0x399dd4,'id'));}});})[_0x5749('0x28')](function(){if(_0x5431bc['user'][_0x5749('0x8f')]==='agent'&&!_0x137fae&&!_0x5431bc[_0x5749('0x39')][_0x5749('0x8c')])return[];return db['sequelize']['query'](_0x17b3be[_0x5749('0x93')](),_0x4aec0a);})['then'](function(_0xf3095e){_0x49a6d6[_0x5749('0x21')]=_0xf3095e[_0x5749('0x3f')];if(_0x49a6d6[_0x5749('0x21')]===0x0)return[];return db[_0x5749('0x94')][_0x5749('0x39')](_0x175ef6[_0x5749('0x93')](),_0x4aec0a)[_0x5749('0x28')](function(_0x334375){_0x9e387b=_[_0x5749('0x95')](_0x334375,'id');_0x4aec0a=_['merge'](_0x4aec0a,{'model':db[_0x5749('0x33')],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x5431bc[_0x5749('0x39')]['fields']){_0x512aae[_0x5749('0x3e')][_0x5749('0x30')](function(_0x5c2877){_0x4998f8['field']('i.'+_0x5c2877);});}else{_0x4998f8['field']('SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)',_0x5749('0x87'));_0x4998f8[_0x5749('0x46')](_0x5749('0x96'),_0x5749('0x97'));_0x4998f8[_0x5749('0x46')](_0x5749('0x98'),_0x5749('0x99'));_0x4998f8['field']('CASE\x20WHEN\x20(c.firstName\x20IS\x20NOT\x20NULL\x20AND\x20c.firstName\x20<>\x20\x27\x27)\x20OR\x20(c.lastName\x20IS\x20NOT\x20NULL\x20AND\x20c.lastName\x20<>\x20\x27\x27)\x20THEN\x20CONCAT(IFNULL(c.firstName,\x20\x27\x27),\x20\x27\x20\x27,\x20IFNULL(c.lastName,\x20\x27\x27))\x20ELSE\x20\x27Unknown\x27\x20END',_0x5749('0x88'));_0x4998f8['field'](_0x5749('0x9a'));_0x4998f8[_0x5749('0x46')](_0x5749('0x9b'),_0x5749('0x9c'));_0x4998f8[_0x5749('0x46')](_0x5749('0x9d'),_0x5749('0x9e'));_0x4998f8[_0x5749('0x46')](_0x5749('0x9f'),_0x5749('0xa0'));_0x4998f8['field'](_0x5749('0xa1'),'Contact.phone');_0x4998f8[_0x5749('0x46')]('c.mobile',_0x5749('0xa2'));_0x4998f8[_0x5749('0x46')](_0x5749('0xa3'),_0x5749('0xa4'));_0x4998f8['field'](_0x5749('0xa5'),_0x5749('0xa6'));_0x4998f8[_0x5749('0x46')](_0x5749('0xa7'),_0x5749('0xa8'));_0x4998f8[_0x5749('0x46')](_0x5749('0xa9'),_0x5749('0x2e'));}if(_0x512aae[_0x5749('0x23')])_0x4998f8['limit'](_0x512aae[_0x5749('0x23')]);if(_0x512aae[_0x5749('0x22')])_0x4998f8['offset'](_0x512aae['offset']);return db[_0x5749('0x94')][_0x5749('0x39')](_0x4998f8[_0x5749('0x93')](),_0x4aec0a);})[_0x5749('0x28')](function(_0x1d11d7){_0x4e2484[_0x5749('0x43')]('ui.FaxInteractionId\x20IN\x20?',_[_0x5749('0x38')](_0x1d11d7,'id'));return db[_0x5749('0x94')]['query'](_0x4e2484[_0x5749('0x93')](),_0x4aec0a)[_0x5749('0x28')](function(_0xd0ba13){var _0x137af4=_[_0x5749('0xaa')](_0xd0ba13,'FaxInteractionId');var _0x516ea7=[];_0x1d11d7[_0x5749('0x30')](function(_0x488e76){_0x516ea7[_0x5749('0xab')](updateFaxInteraction(_0x488e76,_0x9e387b,_0x137af4));});return BPromise[_0x5749('0xac')](_0x516ea7);});});})['then'](function(_0x4cb22c){_0x49a6d6[_0x5749('0xad')]=_0x4cb22c;return _0x49a6d6;})['then'](respondWithFilteredResult(_0x287639,_0x512aae))[_0x5749('0x31')](handleError(_0x287639,null));};exports[_0x5749('0xae')]=function(_0xa42090,_0x3d2b85){var _0x2778a5={'raw':![],'where':{'id':_0xa42090['params']['id']}},_0xc683fa={};_0xc683fa[_0x5749('0x37')]=_['keys'](db[_0x5749('0x33')][_0x5749('0x34')]);_0xc683fa[_0x5749('0x39')]=_[_0x5749('0x3a')](_0xa42090[_0x5749('0x39')]);_0xc683fa[_0x5749('0x3b')]=_['intersection'](_0xc683fa[_0x5749('0x37')],_0xc683fa[_0x5749('0x39')]);_0x2778a5[_0x5749('0x3e')]=_[_0x5749('0x3c')](_0xc683fa[_0x5749('0x37')],qs[_0x5749('0x3d')](_0xa42090[_0x5749('0x39')][_0x5749('0x3d')]));_0x2778a5[_0x5749('0x3e')]=_0x2778a5[_0x5749('0x3e')][_0x5749('0x3f')]?_0x2778a5[_0x5749('0x3e')]:_0xc683fa['model'];if(_0xa42090[_0x5749('0x39')][_0x5749('0xaf')]){_0x2778a5[_0x5749('0xb0')]=[{'all':!![]}];}_0x2778a5=_['merge']({},_0x2778a5,_0xa42090['options']);return db[_0x5749('0x33')][_0x5749('0x64')](_0x2778a5)[_0x5749('0x28')](handleEntityNotFound(_0x3d2b85,null))[_0x5749('0x28')](respondWithResult(_0x3d2b85,null))[_0x5749('0x31')](handleError(_0x3d2b85,null));};exports[_0x5749('0xb1')]=function(_0x4ec105,_0xf95b0d){return db[_0x5749('0x33')][_0x5749('0xb1')](_0x4ec105['body'],{})['then'](respondWithResult(_0xf95b0d,0xc9))['catch'](handleError(_0xf95b0d,null));};exports[_0x5749('0x27')]=function(_0x514ca3,_0xe3874b){if(_0x514ca3[_0x5749('0x6f')]['id']){delete _0x514ca3[_0x5749('0x6f')]['id'];}return db[_0x5749('0x33')]['find']({'where':{'id':_0x514ca3[_0x5749('0xb2')]['id']}})['then'](handleEntityNotFound(_0xe3874b,null))['then'](saveUpdates(_0x514ca3['body'],null))['then'](respondWithResult(_0xe3874b,null))[_0x5749('0x31')](handleError(_0xe3874b,null));};exports[_0x5749('0x29')]=function(_0x502619,_0x3be3b1){return db[_0x5749('0x33')]['find']({'where':{'id':_0x502619[_0x5749('0xb2')]['id']}})['then'](handleEntityNotFound(_0x3be3b1,null))['then'](removeEntity(_0x3be3b1,null))[_0x5749('0x31')](handleError(_0x3be3b1,null));};exports[_0x5749('0xb3')]=function(_0x92705e,_0x3a0603){return db[_0x5749('0x33')][_0x5749('0xb3')]()[_0x5749('0x28')](respondWithResult(_0x3a0603,null))[_0x5749('0x31')](handleError(_0x3a0603,null));};exports[_0x5749('0xb4')]=function(_0x143a78,_0x5d2e64,_0x2b08bf){return db[_0x5749('0xb5')]['find']({'where':{'id':_0x143a78[_0x5749('0xb2')]['id']}})[_0x5749('0x28')](handleEntityNotFound(_0x5d2e64,null))[_0x5749('0x28')](function(_0x227125){if(_0x227125){return _0x227125[_0x5749('0xb4')](_0x143a78['body'][_0x5749('0xb6')],_[_0x5749('0xb7')](_0x143a78[_0x5749('0x6f')],[_0x5749('0xb6'),'id'])||{});}})[_0x5749('0x28')](respondWithResult(_0x5d2e64,null))[_0x5749('0x31')](handleError(_0x5d2e64,null));};exports[_0x5749('0xb8')]=function(_0x5179a9,_0x2f5a21,_0x3f6647){var _0x246141={'raw':![],'where':{}};var _0x5e8e42={};var _0xf6e31a={'count':0x0,'rows':[]};return db[_0x5749('0x33')][_0x5749('0xb9')]({'where':{'id':_0x5179a9[_0x5749('0xb2')]['id']}})[_0x5749('0x28')](handleEntityNotFound(_0x2f5a21,null))[_0x5749('0x28')](function(_0x51c0d1){if(_0x51c0d1){_0x5e8e42['model']=_[_0x5749('0x3a')](db['FaxMessage']['rawAttributes']);_0x5e8e42[_0x5749('0x39')]=_[_0x5749('0x3a')](_0x5179a9['query']);_0x5e8e42[_0x5749('0x3b')]=_[_0x5749('0x3c')](_0x5e8e42[_0x5749('0x37')],_0x5e8e42[_0x5749('0x39')]);_0x246141[_0x5749('0x3e')]=_['intersection'](_0x5e8e42[_0x5749('0x37')],qs[_0x5749('0x3d')](_0x5179a9[_0x5749('0x39')][_0x5749('0x3d')]));_0x246141[_0x5749('0x3e')]=_0x246141[_0x5749('0x3e')][_0x5749('0x3f')]?_0x246141[_0x5749('0x3e')]:_0x5e8e42[_0x5749('0x37')];if(!_0x5179a9[_0x5749('0x39')][_0x5749('0xba')](_0x5749('0x40'))){_0x246141[_0x5749('0x23')]=qs['limit'](_0x5179a9['query'][_0x5749('0x23')]);_0x246141[_0x5749('0x22')]=qs[_0x5749('0x22')](_0x5179a9['query'][_0x5749('0x22')]);}_0x246141['order']=qs['sort'](_0x5179a9[_0x5749('0x39')][_0x5749('0x42')]);_0x246141[_0x5749('0x43')]=qs[_0x5749('0x3b')](_['pick'](_0x5179a9[_0x5749('0x39')],_0x5e8e42[_0x5749('0x3b')]));_0x246141[_0x5749('0x43')][_0x5749('0xbb')]=_0x51c0d1['id'];if(_0x5179a9['query'][_0x5749('0xbc')]){_0x246141['where']=_['merge'](_0x246141['where'],{'$or':_[_0x5749('0x38')](_0x246141[_0x5749('0x3e')],function(_0x473c31){var _0x439394={};_0x439394[_0x473c31]={'$like':'%'+_0x5179a9[_0x5749('0x39')]['filter']+'%'};return _0x439394;})});}if(_0x5179a9[_0x5749('0x39')]['$gte']){var _0x3d634d=_0x5179a9[_0x5749('0x39')]['$gte'][_0x5749('0x69')](',');var _0x341fac={};_0x341fac[_0x3d634d[0x0]]={'$gte':moment(_0x3d634d[0x1])['format']('YYYY-MM-DD\x20HH:mm:ss')};_0x246141[_0x5749('0x43')]=_[_0x5749('0xbd')](_0x246141['where'],_0x341fac);}_0x246141=_['merge']({},_0x246141,_0x5179a9[_0x5749('0xbe')]);return db[_0x5749('0xb5')][_0x5749('0x21')]({'where':_0x246141[_0x5749('0x43')]})[_0x5749('0x28')](function(_0x4fa89c){_0xf6e31a['count']=_0x4fa89c;if(_0x5179a9[_0x5749('0x39')][_0x5749('0xaf')]){_0x246141['include']=[{'all':!![]}];}return db[_0x5749('0xb5')][_0x5749('0xbf')](_0x246141);})[_0x5749('0x28')](function(_0x4f3574){_0xf6e31a[_0x5749('0xad')]=_0x4f3574;return _0xf6e31a;});}})[_0x5749('0x28')](respondWithFilteredResult(_0x2f5a21,_0x246141))[_0x5749('0x31')](handleError(_0x2f5a21,null));};exports[_0x5749('0xc0')]=function(_0x254d2c,_0x311a7f,_0x5bcaaf){return db[_0x5749('0x33')]['find']({'where':{'id':_0x254d2c[_0x5749('0xb2')]['id']}})[_0x5749('0x28')](handleEntityNotFound(_0x311a7f,null))[_0x5749('0x28')](function(_0x46eb56){if(_0x46eb56){return _0x46eb56[_0x5749('0xc1')](_0x254d2c['body']['ids'],_[_0x5749('0xb7')](_0x254d2c[_0x5749('0x6f')],[_0x5749('0xb6'),'id'])||{})['spread'](function(){return db[_0x5749('0x68')][_0x5749('0xbf')]({'attributes':['id',_0x5749('0x2b'),_0x5749('0x47')],'where':{'id':_0x254d2c[_0x5749('0x6f')]['ids']}});})[_0x5749('0x28')](function(_0x28d442){socket['emit'](_0x5749('0xc2'),{'id':Number(_0x254d2c[_0x5749('0xb2')]['id']),'tags':_0x28d442||[]});return{'id':Number(_0x254d2c[_0x5749('0xb2')]['id']),'tags':_0x28d442||[]};});}})[_0x5749('0x28')](respondWithResult(_0x311a7f,null))[_0x5749('0x31')](handleError(_0x311a7f,null));};exports[_0x5749('0xc3')]=function(_0xd64fc1,_0x206f31,_0x2fb267){return db['FaxInteraction'][_0x5749('0x64')]({'where':{'id':_0xd64fc1[_0x5749('0xb2')]['id']}})['then'](handleEntityNotFound(_0x206f31,null))[_0x5749('0x28')](function(_0x3d2920){if(_0x3d2920){return _0x3d2920[_0x5749('0xc3')](_0xd64fc1[_0x5749('0x39')][_0x5749('0xb6')]);}})[_0x5749('0x28')](respondWithStatusCode(_0x206f31,null))['catch'](handleError(_0x206f31,null));};exports[_0x5749('0xc4')]=function(_0x4e067f,_0x1afb6b){var _0x5a8384=moment()['unix']()['toString']();var _0x12d4bd=path['join'](config['root'],_0x5749('0xc5'),_0x5749('0xc6'),'tmp');var _0x3c8a10=path[_0x5749('0xc7')](config[_0x5749('0xc8')],_0x5749('0xc5'),_0x5749('0xc6'),_0x5749('0xc9'));var _0xe4bb1a=path[_0x5749('0xc7')](_0x12d4bd,_0x5a8384);var _0x482def=util[_0x5749('0xca')](_0x5749('0xcb'),_0x4e067f[_0x5749('0xb2')]['id'],_0x5a8384);var _0x45761b=path['join'](_0x12d4bd,_0x482def);var _0x5081e5=[];_0x5081e5[_0x5749('0xab')]({'model':db['Attachment'],'as':_0x5749('0xcc'),'raw':!![]});var _0x4f46f7=[{'model':db[_0x5749('0xb5')],'as':_0x5749('0xcd'),'attributes':['id',_0x5749('0x6f'),_0x5749('0x75')],'include':_0x5081e5}];return db[_0x5749('0x33')][_0x5749('0x64')]({'where':{'id':_0x4e067f[_0x5749('0xb2')]['id']},'include':_0x4f46f7})['then'](handleEntityNotFound(_0x1afb6b,null))[_0x5749('0x28')](function(_0x5894b6){if(_0x5894b6&&_0x5894b6[_0x5749('0xcd')]){var _0x13b170=_0x5894b6[_0x5749('0xce')]({'plain':!![]});fs[_0x5749('0xcf')](_0xe4bb1a);for(var _0x182169=0x0;_0x182169<_0x13b170[_0x5749('0xcd')][_0x5749('0x3f')];_0x182169++){var _0x299343=_0x13b170['Messages'][_0x182169][_0x5749('0xcc')];if(_0x299343){var _0x252780=path['join'](_0x3c8a10,_0x299343[_0x5749('0xd0')]);if(fs[_0x5749('0xd1')](_0x252780)){fs[_0x5749('0xd2')](_0x252780)[_0x5749('0xd3')](fs[_0x5749('0xd4')](path['join'](_0xe4bb1a,_0x299343[_0x5749('0xd0')])));}}}return BPromise[_0x5749('0x8b')]()[_0x5749('0x28')](function(){return new BPromise(function(_0x2d6c04,_0x3e3b70){zipdir(_0xe4bb1a,{'saveTo':_0x45761b},function(_0x721245,_0x42d729){if(_0x721245)return _0x3e3b70(_0x721245);return _0x2d6c04(_0x42d729);});})[_0x5749('0x28')](function(){return new BPromise(function(_0x284ebd,_0x16acaa){rimraf(_0xe4bb1a,function(_0x552a49){if(_0x552a49)_0x16acaa(_0x552a49);return _0x284ebd();});});})[_0x5749('0x28')](function(){return _0x1afb6b[_0x5749('0xc4')](_0x45761b,_0x482def,function(_0x17207a){if(_0x17207a){console[_0x5749('0xd5')](_0x5749('0xd6'),_0x17207a);}else{fs[_0x5749('0xd7')](_0x45761b);}});});});}else{return _0x1afb6b['sendStatus'](0xc8);}})[_0x5749('0x31')](handleError(_0x1afb6b,null));};