Built motion from commit (unavailable).|2.5.23
[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 _0x1ebe=['text','start','union','User','CONCAT_WS(\x27\x20\x27,\x20o.name,\x20o.fullname)\x20LIKE\x20?','find','body','some','isEmpty','FaxAccountId','i.FaxAccountId\x20IN\x20?','concat','createdAt','$gte','parse','i.createdAt\x20BETWEEN\x20?\x20AND\x20?','\x20IS\x20NULL','\x20=\x20?','read','`unreadMessages`\x20=\x200','`unreadMessages`\x20>\x200','isArray','tag','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','filter','replace','isNumeric','CONCAT(c.firstName,\x20\x27\x20\x27,\x20c.lastName)\x20LIKE\x20?','group','i.id','Sequelize','QueryTypes','SELECT','clone','unreadMessages','contactName','DESC','t.id\x20IN\x20?','resolve','i.FaxAccountId\x20IS\x20NOT\x20NULL','user','agent','getFaxAccounts','i.FaxAccountId\x20IS\x20NULL','role','sequelize','toString','keyBy','merge','FaxInteraction','a.key','Account.key','a.mandatoryDisposition','Account.mandatoryDisposition','i.*','Contact.firstName','Contact.lastName','c.email','Contact.email','c.phone','Contact.phone','c.mobile','Contact.mobile','c.fax','Contact.fax','o.fullname','Owner.fullname','Owner.internal','GROUP_CONCAT(DISTINCT\x20t.id)','FaxInteractionId','push','all','rows','show','params','includeAll','include','create','update','describe','addMessage','FaxMessage','ids','omit','getMessages','nolimit','options','findAll','addTags','setTags','spread','Tag','faxInteractionTags:save','removeTags','join','root','server','tmp','files','attachments','transcript-%d-%s.zip','Attachment','Messages','get','mkdirSync','basename','createReadStream','pipe','log','err','html-pdf','eml-format','rimraf','moment','bluebird','util','path','sox','to-csv','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','redis','defaults','socket.io-emitter','./faxInteraction.socket','register','sendStatus','status','count','offset','limit','Content-Range','json','apply','reject','save','then','destroy','end','stack','name','send','map','fullname','Tags','split','forEach','TagIds','catch','rawAttributes','fieldName','type','key','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','order','sort','where','pick','select','field','color','from','tools_tags','u.id','u.fullname','ui.FaxInteractionId','user_has_fax_interactions','left_join','users','u.id\x20=\x20ui.UserId','fax_interactions','cm_contacts','c.id\x20=\x20i.ContactId\x20AND\x20c.deletedAt\x20IS\x20NULL','o.id\x20=\x20i.UserId','fax_accounts','a.id\x20=\x20i.FaxAccountId','me.FaxInteractionId\x20=\x20i.id','it.FaxInteractionId\x20=\x20i.id','t.id\x20=\x20it.TagId','expr','search','conditions','value','having','Contact','operator','$substring','c.firstName\x20LIKE\x20?\x20OR\x20c.lastName\x20LIKE\x20?\x20OR\x20c.email\x20LIKE\x20?','ContactId','buildExpression'];(function(_0x190da7,_0x343c35){var _0x371875=function(_0x2c73df){while(--_0x2c73df){_0x190da7['push'](_0x190da7['shift']());}};_0x371875(++_0x343c35);}(_0x1ebe,0x143));var _0xe1eb=function(_0x2ede31,_0xde7431){_0x2ede31=_0x2ede31-0x0;var _0x5d8121=_0x1ebe[_0x2ede31];return _0x5d8121;};'use strict';var pdf=require(_0xe1eb('0x0'));var emlformat=require(_0xe1eb('0x1'));var rimraf=require(_0xe1eb('0x2'));var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require(_0xe1eb('0x3'));var BPromise=require(_0xe1eb('0x4'));var Mustache=require('mustache');var util=require(_0xe1eb('0x5'));var path=require(_0xe1eb('0x6'));var sox=require(_0xe1eb('0x7'));var csv=require(_0xe1eb('0x8'));var ejs=require('ejs');var fs=require('fs');var _=require('lodash');var squel=require(_0xe1eb('0x9'));var crypto=require(_0xe1eb('0xa'));var jsforce=require(_0xe1eb('0xb'));var deskjs=require(_0xe1eb('0xc'));var toCsv=require(_0xe1eb('0x8'));var querystring=require(_0xe1eb('0xd'));var Papa=require(_0xe1eb('0xe'));var Redis=require(_0xe1eb('0xf'));var authService=require(_0xe1eb('0x10'));var qs=require(_0xe1eb('0x11'));var as=require(_0xe1eb('0x12'));var hardwareService=require(_0xe1eb('0x13'));var logger=require(_0xe1eb('0x14'))(_0xe1eb('0x15'));var utils=require(_0xe1eb('0x16'));var config=require(_0xe1eb('0x17'));var licenseUtil=require(_0xe1eb('0x18'));var db=require(_0xe1eb('0x19'))['db'];config[_0xe1eb('0x1a')]=_[_0xe1eb('0x1b')](config[_0xe1eb('0x1a')],{'host':'localhost','port':0x18eb});var socket=require(_0xe1eb('0x1c'))(new Redis(config['redis']));require(_0xe1eb('0x1d'))[_0xe1eb('0x1e')](socket);function respondWithStatusCode(_0x23ca90,_0x3a0e3d){_0x3a0e3d=_0x3a0e3d||0xcc;return function(_0x338b23){if(_0x338b23){return _0x23ca90[_0xe1eb('0x1f')](_0x3a0e3d);}return _0x23ca90['status'](_0x3a0e3d)['end']();};}function respondWithResult(_0x321c76,_0x11cef3){_0x11cef3=_0x11cef3||0xc8;return function(_0x466185){if(_0x466185){return _0x321c76[_0xe1eb('0x20')](_0x11cef3)['json'](_0x466185);}};}function respondWithFilteredResult(_0x3f7b29,_0x356c7a){return function(_0x597078){if(_0x597078){var _0x4b6a7b=_0x597078[_0xe1eb('0x21')],_0x234cd0=_0x356c7a[_0xe1eb('0x22')],_0x36a553=_0x356c7a['offset']+_0x356c7a[_0xe1eb('0x23')],_0x5adebc;if(_0x36a553>=_0x4b6a7b){_0x36a553=_0x4b6a7b;_0x5adebc=0xc8;}else{_0x5adebc=0xce;}_0x3f7b29[_0xe1eb('0x20')](_0x5adebc);return _0x3f7b29['set'](_0xe1eb('0x24'),_0x234cd0+'-'+_0x36a553+'/'+_0x4b6a7b)[_0xe1eb('0x25')](_0x597078);}return null;};}function patchUpdates(_0x18f14e){return function(_0x5d4e65){try{jsonpatch[_0xe1eb('0x26')](_0x5d4e65,_0x18f14e,!![]);}catch(_0x10a3cf){return BPromise[_0xe1eb('0x27')](_0x10a3cf);}return _0x5d4e65[_0xe1eb('0x28')]();};}function saveUpdates(_0x4e9c2,_0x56475a){return function(_0x42b065){if(_0x42b065){return _0x42b065['update'](_0x4e9c2)[_0xe1eb('0x29')](function(_0x36ddac){return _0x36ddac;});}return null;};}function removeEntity(_0x4aa31d,_0x29fd39){return function(_0x4ca273){if(_0x4ca273){return _0x4ca273[_0xe1eb('0x2a')]()[_0xe1eb('0x29')](function(){_0x4aa31d[_0xe1eb('0x20')](0xcc)[_0xe1eb('0x2b')]();});}};}function handleEntityNotFound(_0x1c71c8,_0x4ca721){return function(_0xcd415e){if(!_0xcd415e){_0x1c71c8[_0xe1eb('0x1f')](0x194);}return _0xcd415e;};}function handleError(_0x2bf554,_0xf208e7){_0xf208e7=_0xf208e7||0x1f4;return function(_0x200f7c){logger['error'](_0x200f7c[_0xe1eb('0x2c')]);if(_0x200f7c[_0xe1eb('0x2d')]){delete _0x200f7c[_0xe1eb('0x2d')];}_0x2bf554[_0xe1eb('0x20')](_0xf208e7)[_0xe1eb('0x2e')](_0x200f7c);};}function getInteractionUsers(_0x205ae2,_0xe175d3){return new BPromise(function(_0x457ab7,_0x5df59f){try{if(_0xe175d3[_0x205ae2['id']]){_0x205ae2['Users']=_[_0xe1eb('0x2f')](_0xe175d3[_0x205ae2['id']],function(_0x4d5349){return{'id':_0x4d5349['id'],'fullname':_0x4d5349[_0xe1eb('0x30')]};});}}catch(_0x1de4b2){_0x5df59f(_0x1de4b2);}_0x457ab7(_0x205ae2);});}function getInteractionTags(_0x47c815,_0x58b86c){return new BPromise(function(_0x1f75f5,_0x58643d){try{if(_0x47c815['TagIds']){_0x47c815[_0xe1eb('0x31')]=[];_0x47c815['TagIds'][_0xe1eb('0x32')](',')[_0xe1eb('0x33')](function(_0x25dd0f){_0x47c815[_0xe1eb('0x31')]['push'](_0x58b86c[_0x25dd0f]);});}delete _0x47c815[_0xe1eb('0x34')];}catch(_0x49be2a){_0x58643d(_0x49be2a);}_0x1f75f5(_0x47c815);});}function updateFaxInteraction(_0x223ecb,_0x3f49ba,_0x565e7c){return new BPromise(function(_0x5398de,_0x21de5a){return getInteractionUsers(_0x223ecb,_0x565e7c)[_0xe1eb('0x29')](function(_0x354bf1){return getInteractionTags(_0x354bf1,_0x3f49ba);})[_0xe1eb('0x29')](function(_0x28f482){_0x5398de(_0x28f482);})[_0xe1eb('0x35')](function(_0x42952c){_0x21de5a(_0x42952c);});});}exports['index']=function(_0xd2c9fa,_0x14e252){var _0x4d7807={},_0x42f79f={},_0x36e798={'count':0x0,'rows':[]};var _0x55699a=_[_0xe1eb('0x2f')](db['FaxInteraction'][_0xe1eb('0x36')],function(_0x2ac599){return{'name':_0x2ac599[_0xe1eb('0x37')],'type':_0x2ac599[_0xe1eb('0x38')][_0xe1eb('0x39')]};});_0x42f79f[_0xe1eb('0x3a')]=_['map'](_0x55699a,_0xe1eb('0x2d'));_0x42f79f[_0xe1eb('0x3b')]=_[_0xe1eb('0x3c')](_0xd2c9fa[_0xe1eb('0x3b')]);_0x42f79f[_0xe1eb('0x3d')]=_[_0xe1eb('0x3e')](_0x42f79f[_0xe1eb('0x3a')],_0x42f79f[_0xe1eb('0x3b')]);_0x4d7807[_0xe1eb('0x3f')]=_[_0xe1eb('0x3e')](_0x42f79f['model'],qs[_0xe1eb('0x40')](_0xd2c9fa[_0xe1eb('0x3b')]['fields']));_0x4d7807[_0xe1eb('0x3f')]=_0x4d7807[_0xe1eb('0x3f')][_0xe1eb('0x41')]?_0x4d7807[_0xe1eb('0x3f')]:_0x42f79f['model'];if(!_0xd2c9fa[_0xe1eb('0x3b')][_0xe1eb('0x42')]('nolimit')){_0x4d7807[_0xe1eb('0x23')]=qs['limit'](_0xd2c9fa[_0xe1eb('0x3b')]['limit']);_0x4d7807['offset']=qs[_0xe1eb('0x22')](_0xd2c9fa[_0xe1eb('0x3b')][_0xe1eb('0x22')]);}_0x4d7807[_0xe1eb('0x43')]=qs[_0xe1eb('0x44')](_0xd2c9fa[_0xe1eb('0x3b')][_0xe1eb('0x44')]);_0x4d7807[_0xe1eb('0x45')]=qs[_0xe1eb('0x3d')](_[_0xe1eb('0x46')](_0xd2c9fa[_0xe1eb('0x3b')],_0x42f79f['filters']),_0x55699a);var _0x169442=[];var _0x4961f1=squel[_0xe1eb('0x47')]()[_0xe1eb('0x48')]('id')[_0xe1eb('0x48')](_0xe1eb('0x2d'))[_0xe1eb('0x48')](_0xe1eb('0x49'))[_0xe1eb('0x4a')](_0xe1eb('0x4b'));var _0x4bde0e=squel[_0xe1eb('0x47')]()[_0xe1eb('0x48')](_0xe1eb('0x4c'))[_0xe1eb('0x48')](_0xe1eb('0x4d'))['field'](_0xe1eb('0x4e'))[_0xe1eb('0x4a')](_0xe1eb('0x4f'),'ui')[_0xe1eb('0x50')](_0xe1eb('0x51'),'u',_0xe1eb('0x52'));var _0x21146b=squel[_0xe1eb('0x47')]()[_0xe1eb('0x4a')](_0xe1eb('0x53'),'i')[_0xe1eb('0x50')](_0xe1eb('0x54'),'c',_0xe1eb('0x55'))[_0xe1eb('0x50')](_0xe1eb('0x51'),'o',_0xe1eb('0x56'))['left_join'](_0xe1eb('0x57'),'a',_0xe1eb('0x58'))[_0xe1eb('0x50')]('fax_messages','me',_0xe1eb('0x59'))['left_join']('fax_interaction_has_tags','it',_0xe1eb('0x5a'))[_0xe1eb('0x50')](_0xe1eb('0x4b'),'t',_0xe1eb('0x5b'));var _0x54f785=squel[_0xe1eb('0x5c')]();var _0x2dbeb4=[];var _0x4c5d6d=squel[_0xe1eb('0x5c')]();var _0xa40575;if(_0xd2c9fa[_0xe1eb('0x3b')]['search']){_0xa40575=as['parseSearch'](_0xd2c9fa[_0xe1eb('0x3b')][_0xe1eb('0x5d')]);var _0x3a78b5=_0xa40575['sqlOperator'];for(var _0x17c7f8=0x0;_0x17c7f8<_0xa40575[_0xe1eb('0x5e')][_0xe1eb('0x41')];_0x17c7f8++){var _0x4707dd=_0xa40575['conditions'][_0x17c7f8];var _0x37c4fc='i';var _0x306c92=_['find'](_0x55699a,[_0xe1eb('0x2d'),_0x4707dd['field']]);if(!_0x306c92){switch(_0x4707dd['field']){case'unreadMessages':if(_0x4707dd[_0xe1eb('0x5f')]==0x1){_0x21146b[_0xe1eb('0x60')]('`'+_0x4707dd[_0xe1eb('0x48')]+'`\x20=\x200');}else{_0x21146b[_0xe1eb('0x60')]('`'+_0x4707dd[_0xe1eb('0x48')]+'`\x20>\x200');}break;case _0xe1eb('0x61'):if(_0x4707dd[_0xe1eb('0x62')]===_0xe1eb('0x63')){if(_0x4707dd['value'][_0xe1eb('0x32')]('\x20')[_0xe1eb('0x41')]>0x1){_0x54f785[_0x3a78b5]('MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)',qs['getFullTextValue'](_0x4707dd[_0xe1eb('0x5f')]),null);}else{var _0x2c5608='%'+_0x4707dd[_0xe1eb('0x5f')]+'%';_0x54f785[_0x3a78b5](_0xe1eb('0x64'),_0x2c5608,_0x2c5608,_0x2c5608);}}else{_0x306c92=_['find'](_0x55699a,[_0xe1eb('0x2d'),_0xe1eb('0x65')]);_0x4707dd[_0xe1eb('0x48')]=_0xe1eb('0x65');_0x1b44bf=as[_0xe1eb('0x66')](_0x37c4fc,_0x306c92[_0xe1eb('0x38')],_0x4707dd);_0x54f785[_0x3a78b5](_0x1b44bf[_0xe1eb('0x67')],_0x1b44bf[_0xe1eb('0x5f')][_0xe1eb('0x68')],_0x1b44bf[_0xe1eb('0x5f')][_0xe1eb('0x2b')]);}break;case'Tag':var _0x1ba0a1=_0x4707dd[_0xe1eb('0x5f')][_0xe1eb('0x32')](',')[_0xe1eb('0x2f')](function(_0x1e65c1){return Number(_0x1e65c1);});_0x1ba0a1[_0xe1eb('0x33')](function(_0x1589ad){_0x4c5d6d['or']('CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','%,'+_0x1589ad+',%');});_0x2dbeb4=_[_0xe1eb('0x69')](_0x2dbeb4,_0x1ba0a1);break;case _0xe1eb('0x6a'):if(_0x4707dd[_0xe1eb('0x62')]===_0xe1eb('0x63')){_0x54f785[_0x3a78b5](_0xe1eb('0x6b'),'%'+_0x4707dd[_0xe1eb('0x5f')]+'%',null);}else{_0x306c92=_[_0xe1eb('0x6c')](_0x55699a,[_0xe1eb('0x2d'),'UserId']);_0x4707dd[_0xe1eb('0x48')]='UserId';_0x1b44bf=as[_0xe1eb('0x66')](_0x37c4fc,_0x306c92['type'],_0x4707dd);_0x54f785[_0x3a78b5](_0x1b44bf[_0xe1eb('0x67')],_0x1b44bf[_0xe1eb('0x5f')][_0xe1eb('0x68')],_0x1b44bf[_0xe1eb('0x5f')]['end']);}break;case _0xe1eb('0x6d'):_0x1b44bf=as[_0xe1eb('0x66')]('me',null,_0x4707dd);_0x54f785[_0x3a78b5](_0x1b44bf[_0xe1eb('0x67')],_0x1b44bf['value'][_0xe1eb('0x68')],_0x1b44bf[_0xe1eb('0x5f')][_0xe1eb('0x2b')]);break;}}else{var _0x1b44bf=as[_0xe1eb('0x66')](_0x37c4fc,_0x306c92[_0xe1eb('0x38')],_0x4707dd);_0x54f785[_0x3a78b5](_0x1b44bf[_0xe1eb('0x67')],_0x1b44bf[_0xe1eb('0x5f')][_0xe1eb('0x68')],_0x1b44bf[_0xe1eb('0x5f')]['end']);}}}else{var _0x28ba69=_(_0xd2c9fa['query'])[_0xe1eb('0x3c')]()[_0xe1eb('0x2f')](function(_0x106897){return _[_0xe1eb('0x6e')](_0x55699a,[_0xe1eb('0x2d'),_0x106897])?_0x106897:undefined;})['compact']()['value']();if(!_[_0xe1eb('0x6f')](_0x28ba69)){_0x28ba69['forEach'](function(_0xf8ca64){if(_0xf8ca64===_0xe1eb('0x70')){_0x21146b['where'](_0xe1eb('0x71'),[][_0xe1eb('0x72')](_0xd2c9fa[_0xe1eb('0x3b')][_0xf8ca64]));}else if(_0xf8ca64===_0xe1eb('0x73')){var _0x2718c1=JSON['parse'](_0xd2c9fa[_0xe1eb('0x3b')][_0xf8ca64])[_0xe1eb('0x74')];var _0x534ed7=JSON[_0xe1eb('0x75')](_0xd2c9fa[_0xe1eb('0x3b')][_0xf8ca64])['$lte'];_0x21146b[_0xe1eb('0x45')](_0xe1eb('0x76'),_0x2718c1,_0x534ed7);}else{if(_0xd2c9fa[_0xe1eb('0x3b')][_0xf8ca64]==='null'){_0x21146b['where']('i.'+_0xf8ca64+_0xe1eb('0x77'));}else{_0x21146b[_0xe1eb('0x45')]('i.'+_0xf8ca64+_0xe1eb('0x78'),_0xd2c9fa[_0xe1eb('0x3b')][_0xf8ca64]);}}});}if(_0xd2c9fa[_0xe1eb('0x3b')][_0xe1eb('0x79')]){if(_0xd2c9fa[_0xe1eb('0x3b')][_0xe1eb('0x79')]==0x1){_0x21146b['having'](_0xe1eb('0x7a'));}else{_0x21146b[_0xe1eb('0x60')](_0xe1eb('0x7b'));}}if(_0xd2c9fa[_0xe1eb('0x3b')]['tag']){_0x2dbeb4=_[_0xe1eb('0x7c')](_0xd2c9fa[_0xe1eb('0x3b')][_0xe1eb('0x7d')])?_0xd2c9fa[_0xe1eb('0x3b')][_0xe1eb('0x7d')]:new Array(_0xd2c9fa['query']['tag']);_0x2dbeb4[_0xe1eb('0x33')](function(_0x57547d){_0x4c5d6d['or'](_0xe1eb('0x7e'),'%,'+_0x57547d+',%');});}if(_0xd2c9fa['query'][_0xe1eb('0x7f')]){var _0x166de6=_0xd2c9fa[_0xe1eb('0x3b')]['filter'][_0xe1eb('0x80')]('\x5c','\x5c\x5c')['replace'](/'/g,'\x27\x27');if(qs[_0xe1eb('0x81')](_0x166de6)){_0x54f785['or']('i.id\x20LIKE\x20?',_0x166de6+'%')['or']('i.fax\x20LIKE\x20?',_0x166de6+'%');}_0x54f785['or'](_0xe1eb('0x82'),_0x166de6+'%');}}_0x21146b[_0xe1eb('0x45')](_0x54f785);_0x21146b[_0xe1eb('0x83')](_0xe1eb('0x84'));var _0xdec44c={'type':db[_0xe1eb('0x85')][_0xe1eb('0x86')][_0xe1eb('0x87')],'raw':!![]};var _0x5cd22b=_0x21146b[_0xe1eb('0x88')]();_0x5cd22b[_0xe1eb('0x48')](_0xe1eb('0x84'));_0x5cd22b[_0xe1eb('0x48')]('SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)',_0xe1eb('0x89'));if(_0x4d7807['order']){_0x4d7807[_0xe1eb('0x43')]['forEach'](function(_0x5fe464){var _0x3a8709=_0x5fe464[0x0]===_0xe1eb('0x8a')?_0x5fe464[0x0]:'i.'+_0x5fe464[0x0];_0x21146b[_0xe1eb('0x43')](_0x3a8709,_0x5fe464[0x1]===_0xe1eb('0x8b')?![]:!![]);});}if(!_['isEmpty'](_0x2dbeb4)){_0x21146b['having'](_0x4c5d6d);_0x5cd22b[_0xe1eb('0x45')](_0xe1eb('0x8c'),_0x2dbeb4);}BPromise[_0xe1eb('0x8d')]()[_0xe1eb('0x29')](function(){if(!_0xa40575){if(_0xd2c9fa[_0xe1eb('0x3b')][_0xe1eb('0x70')])return;_0x5cd22b[_0xe1eb('0x45')](_0xe1eb('0x8e'));_0x21146b[_0xe1eb('0x45')](_0xe1eb('0x8e'));return;}if(_0xd2c9fa[_0xe1eb('0x8f')]['role']!==_0xe1eb('0x90'))return;return _0xd2c9fa[_0xe1eb('0x8f')][_0xe1eb('0x91')]({'attributes':['id'],'raw':!![]})[_0xe1eb('0x29')](function(_0x310636){if(_[_0xe1eb('0x6f')](_0x310636)){_0x5cd22b[_0xe1eb('0x45')]('i.FaxAccountId\x20IS\x20NULL');_0x21146b[_0xe1eb('0x45')](_0xe1eb('0x92'));}else{_0x5cd22b[_0xe1eb('0x45')]('i.FaxAccountId\x20IN\x20?',_['map'](_0x310636,'id'));_0x21146b[_0xe1eb('0x45')](_0xe1eb('0x71'),_[_0xe1eb('0x2f')](_0x310636,'id'));}});})[_0xe1eb('0x29')](function(){if(_0xd2c9fa['user'][_0xe1eb('0x93')]===_0xe1eb('0x90')&&!_0xa40575&&!_0xd2c9fa['query'][_0xe1eb('0x70')])return[];return db[_0xe1eb('0x94')][_0xe1eb('0x3b')](_0x5cd22b[_0xe1eb('0x95')](),_0xdec44c);})[_0xe1eb('0x29')](function(_0x257633){_0x36e798[_0xe1eb('0x21')]=_0x257633['length'];if(_0x36e798['count']===0x0)return[];return db[_0xe1eb('0x94')]['query'](_0x4961f1[_0xe1eb('0x95')](),_0xdec44c)['then'](function(_0x2c80f3){_0x169442=_[_0xe1eb('0x96')](_0x2c80f3,'id');_0xdec44c=_[_0xe1eb('0x97')](_0xdec44c,{'model':db[_0xe1eb('0x98')],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0xd2c9fa[_0xe1eb('0x3b')]['fields']){_0x4d7807[_0xe1eb('0x3f')]['forEach'](function(_0x49bafc){_0x21146b[_0xe1eb('0x48')]('i.'+_0x49bafc);});}else{_0x21146b[_0xe1eb('0x48')]('SUM(me.read\x20=\x200\x20AND\x20me.direction\x20=\x20\x27in\x27)',_0xe1eb('0x89'));_0x21146b['field'](_0xe1eb('0x99'),_0xe1eb('0x9a'));_0x21146b[_0xe1eb('0x48')](_0xe1eb('0x9b'),_0xe1eb('0x9c'));_0x21146b['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',_0xe1eb('0x8a'));_0x21146b[_0xe1eb('0x48')](_0xe1eb('0x9d'));_0x21146b['field']('c.firstName',_0xe1eb('0x9e'));_0x21146b[_0xe1eb('0x48')]('c.lastName',_0xe1eb('0x9f'));_0x21146b[_0xe1eb('0x48')](_0xe1eb('0xa0'),_0xe1eb('0xa1'));_0x21146b[_0xe1eb('0x48')](_0xe1eb('0xa2'),_0xe1eb('0xa3'));_0x21146b[_0xe1eb('0x48')](_0xe1eb('0xa4'),_0xe1eb('0xa5'));_0x21146b[_0xe1eb('0x48')](_0xe1eb('0xa6'),_0xe1eb('0xa7'));_0x21146b[_0xe1eb('0x48')](_0xe1eb('0xa8'),_0xe1eb('0xa9'));_0x21146b[_0xe1eb('0x48')]('o.internal',_0xe1eb('0xaa'));_0x21146b[_0xe1eb('0x48')](_0xe1eb('0xab'),_0xe1eb('0x34'));}if(_0x4d7807[_0xe1eb('0x23')])_0x21146b[_0xe1eb('0x23')](_0x4d7807[_0xe1eb('0x23')]);if(_0x4d7807['offset'])_0x21146b['offset'](_0x4d7807[_0xe1eb('0x22')]);return db[_0xe1eb('0x94')][_0xe1eb('0x3b')](_0x21146b[_0xe1eb('0x95')](),_0xdec44c);})[_0xe1eb('0x29')](function(_0x287e06){_0x4bde0e[_0xe1eb('0x45')]('ui.FaxInteractionId\x20IN\x20?',_[_0xe1eb('0x2f')](_0x287e06,'id'));return db[_0xe1eb('0x94')][_0xe1eb('0x3b')](_0x4bde0e[_0xe1eb('0x95')](),_0xdec44c)[_0xe1eb('0x29')](function(_0x2cfc14){var _0x2789a4=_['groupBy'](_0x2cfc14,_0xe1eb('0xac'));var _0x203aa4=[];_0x287e06['forEach'](function(_0x337754){_0x203aa4[_0xe1eb('0xad')](updateFaxInteraction(_0x337754,_0x169442,_0x2789a4));});return BPromise[_0xe1eb('0xae')](_0x203aa4);});});})[_0xe1eb('0x29')](function(_0x16363c){_0x36e798[_0xe1eb('0xaf')]=_0x16363c;return _0x36e798;})[_0xe1eb('0x29')](respondWithFilteredResult(_0x14e252,_0x4d7807))[_0xe1eb('0x35')](handleError(_0x14e252,null));};exports[_0xe1eb('0xb0')]=function(_0x20f7a5,_0x34d12b){var _0x1714fb={'raw':![],'where':{'id':_0x20f7a5[_0xe1eb('0xb1')]['id']}},_0x2e9065={};_0x2e9065[_0xe1eb('0x3a')]=_[_0xe1eb('0x3c')](db['FaxInteraction']['rawAttributes']);_0x2e9065[_0xe1eb('0x3b')]=_['keys'](_0x20f7a5['query']);_0x2e9065[_0xe1eb('0x3d')]=_['intersection'](_0x2e9065['model'],_0x2e9065[_0xe1eb('0x3b')]);_0x1714fb[_0xe1eb('0x3f')]=_[_0xe1eb('0x3e')](_0x2e9065['model'],qs[_0xe1eb('0x40')](_0x20f7a5[_0xe1eb('0x3b')][_0xe1eb('0x40')]));_0x1714fb[_0xe1eb('0x3f')]=_0x1714fb[_0xe1eb('0x3f')]['length']?_0x1714fb[_0xe1eb('0x3f')]:_0x2e9065[_0xe1eb('0x3a')];if(_0x20f7a5[_0xe1eb('0x3b')][_0xe1eb('0xb2')]){_0x1714fb[_0xe1eb('0xb3')]=[{'all':!![]}];}_0x1714fb=_[_0xe1eb('0x97')]({},_0x1714fb,_0x20f7a5['options']);return db[_0xe1eb('0x98')][_0xe1eb('0x6c')](_0x1714fb)[_0xe1eb('0x29')](handleEntityNotFound(_0x34d12b,null))[_0xe1eb('0x29')](respondWithResult(_0x34d12b,null))[_0xe1eb('0x35')](handleError(_0x34d12b,null));};exports['create']=function(_0x2de424,_0x33a4df){return db['FaxInteraction'][_0xe1eb('0xb4')](_0x2de424['body'],{})[_0xe1eb('0x29')](respondWithResult(_0x33a4df,0xc9))['catch'](handleError(_0x33a4df,null));};exports[_0xe1eb('0xb5')]=function(_0x19b53f,_0x4f073a){if(_0x19b53f['body']['id']){delete _0x19b53f[_0xe1eb('0x6d')]['id'];}return db['FaxInteraction']['find']({'where':{'id':_0x19b53f[_0xe1eb('0xb1')]['id']}})[_0xe1eb('0x29')](handleEntityNotFound(_0x4f073a,null))[_0xe1eb('0x29')](saveUpdates(_0x19b53f[_0xe1eb('0x6d')],null))[_0xe1eb('0x29')](respondWithResult(_0x4f073a,null))[_0xe1eb('0x35')](handleError(_0x4f073a,null));};exports[_0xe1eb('0x2a')]=function(_0x855e14,_0x52f748){return db[_0xe1eb('0x98')][_0xe1eb('0x6c')]({'where':{'id':_0x855e14[_0xe1eb('0xb1')]['id']}})['then'](handleEntityNotFound(_0x52f748,null))['then'](removeEntity(_0x52f748,null))[_0xe1eb('0x35')](handleError(_0x52f748,null));};exports[_0xe1eb('0xb6')]=function(_0x524a9c,_0x47b8fd){return db[_0xe1eb('0x98')][_0xe1eb('0xb6')]()[_0xe1eb('0x29')](respondWithResult(_0x47b8fd,null))['catch'](handleError(_0x47b8fd,null));};exports[_0xe1eb('0xb7')]=function(_0x1e53d1,_0x2c2742,_0x3ebae9){return db[_0xe1eb('0xb8')]['find']({'where':{'id':_0x1e53d1[_0xe1eb('0xb1')]['id']}})[_0xe1eb('0x29')](handleEntityNotFound(_0x2c2742,null))[_0xe1eb('0x29')](function(_0x1cde69){if(_0x1cde69){return _0x1cde69[_0xe1eb('0xb7')](_0x1e53d1[_0xe1eb('0x6d')][_0xe1eb('0xb9')],_[_0xe1eb('0xba')](_0x1e53d1['body'],['ids','id'])||{});}})[_0xe1eb('0x29')](respondWithResult(_0x2c2742,null))[_0xe1eb('0x35')](handleError(_0x2c2742,null));};exports[_0xe1eb('0xbb')]=function(_0x27ac83,_0x2c96c1,_0x5e244c){var _0x12336e={'raw':![],'where':{}};var _0x27272a={};var _0x5e8008={'count':0x0,'rows':[]};return db[_0xe1eb('0x98')]['findOne']({'where':{'id':_0x27ac83[_0xe1eb('0xb1')]['id']}})[_0xe1eb('0x29')](handleEntityNotFound(_0x2c96c1,null))['then'](function(_0x3990e1){if(_0x3990e1){_0x27272a[_0xe1eb('0x3a')]=_['keys'](db[_0xe1eb('0xb8')][_0xe1eb('0x36')]);_0x27272a[_0xe1eb('0x3b')]=_[_0xe1eb('0x3c')](_0x27ac83[_0xe1eb('0x3b')]);_0x27272a[_0xe1eb('0x3d')]=_[_0xe1eb('0x3e')](_0x27272a['model'],_0x27272a['query']);_0x12336e[_0xe1eb('0x3f')]=_['intersection'](_0x27272a[_0xe1eb('0x3a')],qs[_0xe1eb('0x40')](_0x27ac83[_0xe1eb('0x3b')][_0xe1eb('0x40')]));_0x12336e[_0xe1eb('0x3f')]=_0x12336e[_0xe1eb('0x3f')][_0xe1eb('0x41')]?_0x12336e['attributes']:_0x27272a[_0xe1eb('0x3a')];if(!_0x27ac83[_0xe1eb('0x3b')]['hasOwnProperty'](_0xe1eb('0xbc'))){_0x12336e[_0xe1eb('0x23')]=qs[_0xe1eb('0x23')](_0x27ac83[_0xe1eb('0x3b')][_0xe1eb('0x23')]);_0x12336e[_0xe1eb('0x22')]=qs[_0xe1eb('0x22')](_0x27ac83['query'][_0xe1eb('0x22')]);}_0x12336e[_0xe1eb('0x43')]=qs[_0xe1eb('0x44')](_0x27ac83[_0xe1eb('0x3b')][_0xe1eb('0x44')]);_0x12336e['where']=qs[_0xe1eb('0x3d')](_[_0xe1eb('0x46')](_0x27ac83[_0xe1eb('0x3b')],_0x27272a[_0xe1eb('0x3d')]));_0x12336e[_0xe1eb('0x45')][_0xe1eb('0xac')]=_0x3990e1['id'];if(_0x27ac83['query'][_0xe1eb('0x7f')]){_0x12336e['where']=_[_0xe1eb('0x97')](_0x12336e[_0xe1eb('0x45')],{'$or':_[_0xe1eb('0x2f')](_0x12336e['attributes'],function(_0x47ed55){var _0x36eba2={};_0x36eba2[_0x47ed55]={'$like':'%'+_0x27ac83[_0xe1eb('0x3b')][_0xe1eb('0x7f')]+'%'};return _0x36eba2;})});}if(_0x27ac83[_0xe1eb('0x3b')][_0xe1eb('0x74')]){var _0x5df427=_0x27ac83[_0xe1eb('0x3b')][_0xe1eb('0x74')][_0xe1eb('0x32')](',');var _0x1a2dfe={};_0x1a2dfe[_0x5df427[0x0]]={'$gte':moment(_0x5df427[0x1])['format']('YYYY-MM-DD\x20HH:mm:ss')};_0x12336e[_0xe1eb('0x45')]=_[_0xe1eb('0x97')](_0x12336e['where'],_0x1a2dfe);}_0x12336e=_[_0xe1eb('0x97')]({},_0x12336e,_0x27ac83[_0xe1eb('0xbd')]);return db[_0xe1eb('0xb8')][_0xe1eb('0x21')]({'where':_0x12336e[_0xe1eb('0x45')]})[_0xe1eb('0x29')](function(_0x1cb236){_0x5e8008[_0xe1eb('0x21')]=_0x1cb236;if(_0x27ac83['query'][_0xe1eb('0xb2')]){_0x12336e[_0xe1eb('0xb3')]=[{'all':!![]}];}return db['FaxMessage'][_0xe1eb('0xbe')](_0x12336e);})[_0xe1eb('0x29')](function(_0x20cc6d){_0x5e8008['rows']=_0x20cc6d;return _0x5e8008;});}})[_0xe1eb('0x29')](respondWithFilteredResult(_0x2c96c1,_0x12336e))[_0xe1eb('0x35')](handleError(_0x2c96c1,null));};exports[_0xe1eb('0xbf')]=function(_0x418e8c,_0x10fbf1,_0x263a6f){return db['FaxInteraction'][_0xe1eb('0x6c')]({'where':{'id':_0x418e8c[_0xe1eb('0xb1')]['id']}})[_0xe1eb('0x29')](handleEntityNotFound(_0x10fbf1,null))[_0xe1eb('0x29')](function(_0x21d54e){if(_0x21d54e){return _0x21d54e[_0xe1eb('0xc0')](_0x418e8c['body'][_0xe1eb('0xb9')],_['omit'](_0x418e8c[_0xe1eb('0x6d')],['ids','id'])||{})[_0xe1eb('0xc1')](function(){return db[_0xe1eb('0xc2')][_0xe1eb('0xbe')]({'attributes':['id','name',_0xe1eb('0x49')],'where':{'id':_0x418e8c['body']['ids']}});})[_0xe1eb('0x29')](function(_0x48ba24){socket['emit'](_0xe1eb('0xc3'),{'id':Number(_0x418e8c['params']['id']),'tags':_0x48ba24||[]});return{'id':Number(_0x418e8c['params']['id']),'tags':_0x48ba24||[]};});}})[_0xe1eb('0x29')](respondWithResult(_0x10fbf1,null))[_0xe1eb('0x35')](handleError(_0x10fbf1,null));};exports[_0xe1eb('0xc4')]=function(_0x25aae0,_0x5bcb15,_0x233a36){return db[_0xe1eb('0x98')][_0xe1eb('0x6c')]({'where':{'id':_0x25aae0[_0xe1eb('0xb1')]['id']}})['then'](handleEntityNotFound(_0x5bcb15,null))[_0xe1eb('0x29')](function(_0x2df1f7){if(_0x2df1f7){return _0x2df1f7[_0xe1eb('0xc4')](_0x25aae0[_0xe1eb('0x3b')][_0xe1eb('0xb9')]);}})['then'](respondWithStatusCode(_0x5bcb15,null))[_0xe1eb('0x35')](handleError(_0x5bcb15,null));};exports['download']=function(_0x134d55,_0x510ce1){var _0x3a771d=moment()['unix']()[_0xe1eb('0x95')]();var _0x11f600=path[_0xe1eb('0xc5')](config[_0xe1eb('0xc6')],_0xe1eb('0xc7'),'files',_0xe1eb('0xc8'));var _0x1b732d=path[_0xe1eb('0xc5')](config['root'],_0xe1eb('0xc7'),_0xe1eb('0xc9'),_0xe1eb('0xca'));var _0x3d6087=path[_0xe1eb('0xc5')](_0x11f600,_0x3a771d);var _0x4ca115=util['format'](_0xe1eb('0xcb'),_0x134d55[_0xe1eb('0xb1')]['id'],_0x3a771d);var _0x37c14a=path[_0xe1eb('0xc5')](_0x11f600,_0x4ca115);var _0x3d77e7=[];_0x3d77e7[_0xe1eb('0xad')]({'model':db[_0xe1eb('0xcc')],'as':_0xe1eb('0xcc'),'raw':!![]});var _0x1fce4a=[{'model':db['FaxMessage'],'as':_0xe1eb('0xcd'),'attributes':['id',_0xe1eb('0x6d'),'createdAt'],'include':_0x3d77e7}];return db[_0xe1eb('0x98')][_0xe1eb('0x6c')]({'where':{'id':_0x134d55[_0xe1eb('0xb1')]['id']},'include':_0x1fce4a})['then'](handleEntityNotFound(_0x510ce1,null))[_0xe1eb('0x29')](function(_0x2a6a9f){if(_0x2a6a9f&&_0x2a6a9f['Messages']){var _0x3fe679=_0x2a6a9f[_0xe1eb('0xce')]({'plain':!![]});fs[_0xe1eb('0xcf')](_0x3d6087);for(var _0x555a56=0x0;_0x555a56<_0x3fe679['Messages'][_0xe1eb('0x41')];_0x555a56++){var _0x12961e=_0x3fe679['Messages'][_0x555a56][_0xe1eb('0xcc')];if(_0x12961e){var _0x22ad53=path['join'](_0x1b732d,_0x12961e[_0xe1eb('0xd0')]);if(fs['existsSync'](_0x22ad53)){fs[_0xe1eb('0xd1')](_0x22ad53)[_0xe1eb('0xd2')](fs['createWriteStream'](path[_0xe1eb('0xc5')](_0x3d6087,_0x12961e[_0xe1eb('0xd0')])));}}}return BPromise[_0xe1eb('0x8d')]()[_0xe1eb('0x29')](function(){return new BPromise(function(_0x146e16,_0x2a8900){zipdir(_0x3d6087,{'saveTo':_0x37c14a},function(_0x4e699e,_0x38ca69){if(_0x4e699e)return _0x2a8900(_0x4e699e);return _0x146e16(_0x38ca69);});})[_0xe1eb('0x29')](function(){return new BPromise(function(_0x502568,_0x125deb){rimraf(_0x3d6087,function(_0x4e35c4){if(_0x4e35c4)_0x125deb(_0x4e35c4);return _0x502568();});});})[_0xe1eb('0x29')](function(){return _0x510ce1['download'](_0x37c14a,_0x4ca115,function(_0x10fce2){if(_0x10fce2){console[_0xe1eb('0xd3')](_0xe1eb('0xd4'),_0x10fce2);}else{fs['unlinkSync'](_0x37c14a);}});});});}else{return _0x510ce1[_0xe1eb('0x1f')](0xc8);}})[_0xe1eb('0x35')](handleError(_0x510ce1,null));};