Built motion from commit (unavailable).|2.4.17
[motion2.git] / server / api / cmContact / cmContact.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 _0xd7d8=['jsforce','desk.js','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','redis','defaults','localhost','socket.io-emitter','register','sendStatus','status','json','offset','limit','set','Content-Range','apply','save','update','then','destroy','end','error','name','send','CmContact','describe','keys','length','startsWith','cf_','push','CmCustomField','trimStart','all','fieldType','type','filters','intersection','model','query','attributes','fields','hasOwnProperty','nolimit','sort','select','field','color','from','tools_tags','left_join','cm_user_has_contacts','uc.CmContactId\x20=\x20c.id','cm_contact_has_tags','ct.CmContactId\x20=\x20c.id','t.id\x20=\x20ct.TagId','expr','search','parseSearch','sqlOperator','conditions','find','Tag','value','split','map','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','union','User','and','uc.UserId\x20=\x20?','datetime','DATE','text','filter','isNil','Contact','forEach','ListId','where','c.ListId\x20IN\x20?','concat','\x20=\x20?','tag','isArray','replace','\x27\x27\x27\x27','MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','getFullTextValue','isNumeric','c.phone\x20LIKE\x20?','c.fax\x20LIKE\x20?','isEmail','c.email\x20LIKE\x20?','c.firstName\x20LIKE\x20?','c.lastName\x20LIKE\x20?','c.id','Sequelize','QueryTypes','SELECT','clone','order','DESC','isEmpty','having','t.id\x20IN\x20?','some','getLists','c.ListId\x20IS\x20NULL','sequelize','toString','count','merge','c.firstName','c.lastName','c.email','c.ListId','TagIds','Tags','params','catch','tags','columnName','displayName','alias','body','findAll','get','mergeWith','join','info','[CmContact][merge]\x20to\x20%s\x20from\x20%s','[CmContact][merge][destroy][CmHopper],\x20%s','[CmContact][merge][destroy][CmHopperBlack],\x20%s','create','ChatInteraction','ChatMessage','ChatOfflineMessage','MailInteraction','MailMessage','SmsInteraction','SmsMessage','OpenchannelInteraction','CmHopperFinal','CmHopperHistory','ReportAgentPreview','VoiceCallReport','ChatQueueReport','FaxQueueReport','MailQueueReport','OpenchannelQueueReport','SmsQueueReport','JscriptySessionReport','bulkCreate','duplicates','findOrCreate','spread','show','omit','cf_%d','pickBy','format','cm_contacts','setFields','toParam','phone','getTags','findOne','pick','options','setTags','ids','getHoppers','CmHopper','rawAttributes','ContactId','includeAll','include','getHopperHistories','rows','getJscriptySessions','uploadCsv','No\x20ListId\x20specified','binding_keys','No\x20association\x20keys\x20specified!','binding_values','socket_timestamp','Unable\x20to\x20synchronize\x20socket,\x20no\x20timestamp\x20passed','Incorrect\x20binding\x20parameters\x20passed!','zipObject','No\x20phone\x20column\x20specified','No\x20firstName\x20column\x20specified','root','server/files/tmp','file','child_process','../../components/import/cm/csv','CompanyId','File\x20uploaded\x20correctly!','pid','upload','path','meta','import','agent','binding','fork','../../components/import/cm/csv2','stringify','message','exit','error\x20child\x20process','html-pdf','eml-format','rimraf','fast-json-patch','request-promise','moment','bluebird','mustache','util','sox','to-csv','ejs','lodash','crypto'];(function(_0x82129b,_0x484ae9){var _0x2ae5dc=function(_0x299e34){while(--_0x299e34){_0x82129b['push'](_0x82129b['shift']());}};_0x2ae5dc(++_0x484ae9);}(_0xd7d8,0x1c8));var _0x8d7d=function(_0x26fbe0,_0x401cb9){_0x26fbe0=_0x26fbe0-0x0;var _0x5ce614=_0xd7d8[_0x26fbe0];return _0x5ce614;};'use strict';var pdf=require(_0x8d7d('0x0'));var emlformat=require(_0x8d7d('0x1'));var rimraf=require(_0x8d7d('0x2'));var zipdir=require('zip-dir');var jsonpatch=require(_0x8d7d('0x3'));var rp=require(_0x8d7d('0x4'));var moment=require(_0x8d7d('0x5'));var BPromise=require(_0x8d7d('0x6'));var Mustache=require(_0x8d7d('0x7'));var util=require(_0x8d7d('0x8'));var path=require('path');var sox=require(_0x8d7d('0x9'));var csv=require(_0x8d7d('0xa'));var ejs=require(_0x8d7d('0xb'));var fs=require('fs');var _=require(_0x8d7d('0xc'));var squel=require('squel');var crypto=require(_0x8d7d('0xd'));var jsforce=require(_0x8d7d('0xe'));var deskjs=require(_0x8d7d('0xf'));var toCsv=require(_0x8d7d('0xa'));var querystring=require('querystring');var Papa=require(_0x8d7d('0x10'));var Redis=require(_0x8d7d('0x11'));var authService=require(_0x8d7d('0x12'));var qs=require(_0x8d7d('0x13'));var as=require(_0x8d7d('0x14'));var hardwareService=require(_0x8d7d('0x15'));var logger=require(_0x8d7d('0x16'))(_0x8d7d('0x17'));var utils=require(_0x8d7d('0x18'));var config=require(_0x8d7d('0x19'));var db=require('../../mysqldb')['db'];config[_0x8d7d('0x1a')]=_[_0x8d7d('0x1b')](config[_0x8d7d('0x1a')],{'host':_0x8d7d('0x1c'),'port':0x18eb});var socket=require(_0x8d7d('0x1d'))(new Redis(config[_0x8d7d('0x1a')]));require('./cmContact.socket')[_0x8d7d('0x1e')](socket);function respondWithStatusCode(_0xb84f99,_0x2bb46f){_0x2bb46f=_0x2bb46f||0xcc;return function(_0x588d9d){if(_0x588d9d){return _0xb84f99[_0x8d7d('0x1f')](_0x2bb46f);}return _0xb84f99[_0x8d7d('0x20')](_0x2bb46f)['end']();};}function respondWithResult(_0x329e3a,_0x246b2e){_0x246b2e=_0x246b2e||0xc8;return function(_0x184608){if(_0x184608){return _0x329e3a[_0x8d7d('0x20')](_0x246b2e)[_0x8d7d('0x21')](_0x184608);}};}function respondWithFilteredResult(_0x4884ef,_0x420410){return function(_0x1dfc21){if(_0x1dfc21){var _0x3c6760=_0x1dfc21['count'],_0x390943=_0x420410['offset'],_0x2efbe0=_0x420410[_0x8d7d('0x22')]+_0x420410[_0x8d7d('0x23')],_0xdf1952;if(_0x2efbe0>=_0x3c6760){_0x2efbe0=_0x3c6760;_0xdf1952=0xc8;}else{_0xdf1952=0xce;}_0x4884ef['status'](_0xdf1952);return _0x4884ef[_0x8d7d('0x24')](_0x8d7d('0x25'),_0x390943+'-'+_0x2efbe0+'/'+_0x3c6760)[_0x8d7d('0x21')](_0x1dfc21);}return null;};}function patchUpdates(_0x9a3d8a){return function(_0x22fb1d){try{jsonpatch[_0x8d7d('0x26')](_0x22fb1d,_0x9a3d8a,!![]);}catch(_0x21f383){return BPromise['reject'](_0x21f383);}return _0x22fb1d[_0x8d7d('0x27')]();};}function saveUpdates(_0x18820c,_0x4d79c4){return function(_0xee3278){if(_0xee3278){return _0xee3278[_0x8d7d('0x28')](_0x18820c)[_0x8d7d('0x29')](function(_0x31802c){return _0x31802c;});}return null;};}function removeEntity(_0x64c9b0,_0x24a810){return function(_0x3b3c98){if(_0x3b3c98){return _0x3b3c98[_0x8d7d('0x2a')]()[_0x8d7d('0x29')](function(){_0x64c9b0['status'](0xcc)[_0x8d7d('0x2b')]();});}};}function handleEntityNotFound(_0x3e2553,_0xdf5d8f){return function(_0x169efd){if(!_0x169efd){_0x3e2553[_0x8d7d('0x1f')](0x194);}return _0x169efd;};}function handleError(_0x4fee4c,_0x44d516){_0x44d516=_0x44d516||0x1f4;return function(_0xcd53d7){logger[_0x8d7d('0x2c')](_0xcd53d7['stack']);if(_0xcd53d7['name']){delete _0xcd53d7[_0x8d7d('0x2d')];}_0x4fee4c[_0x8d7d('0x20')](_0x44d516)[_0x8d7d('0x2e')](_0xcd53d7);};}exports['index']=function(_0x52f8fa,_0xbfc201){var _0x26fb46={},_0x173c9f={},_0xc53704={'count':0x0,'rows':[]};return db[_0x8d7d('0x2f')][_0x8d7d('0x30')]()[_0x8d7d('0x29')](function(_0x4ee1ea){var _0x40f85f=[];for(var _0x5f4ed5=0x0;_0x5f4ed5<Object[_0x8d7d('0x31')](_0x4ee1ea)[_0x8d7d('0x32')];_0x5f4ed5++){var _0xe65c62=Object[_0x8d7d('0x31')](_0x4ee1ea)[_0x5f4ed5];if(_[_0x8d7d('0x33')](_0xe65c62,_0x8d7d('0x34'))){_0x40f85f[_0x8d7d('0x35')](db[_0x8d7d('0x36')]['findOne']({'where':{'id':_[_0x8d7d('0x37')](_0xe65c62,'cf_')},'raw':!![]}));}}return BPromise[_0x8d7d('0x38')](_0x40f85f)[_0x8d7d('0x29')](function(_0x31b177){for(var _0x637142=0x0;_0x637142<_0x31b177[_0x8d7d('0x32')];_0x637142++){if(_0x31b177[_0x637142]){var _0x553a5d=_0x8d7d('0x34')+_0x31b177[_0x637142]['id'];var _0x41c9ed=_0x4ee1ea[_0x553a5d];_0x41c9ed[_0x8d7d('0x39')]=_0x31b177[_0x637142][_0x8d7d('0x3a')];}}return _0x4ee1ea;});})[_0x8d7d('0x29')](function(_0x16a245){_0x173c9f['model']=_[_0x8d7d('0x31')](_0x16a245);_0x173c9f['query']=_[_0x8d7d('0x31')](_0x52f8fa['query']);_0x173c9f[_0x8d7d('0x3b')]=_[_0x8d7d('0x3c')](_0x173c9f[_0x8d7d('0x3d')],_0x173c9f[_0x8d7d('0x3e')]);_0x26fb46[_0x8d7d('0x3f')]=_[_0x8d7d('0x3c')](_0x173c9f[_0x8d7d('0x3d')],qs[_0x8d7d('0x40')](_0x52f8fa['query'][_0x8d7d('0x40')]));_0x26fb46[_0x8d7d('0x3f')]=_0x26fb46[_0x8d7d('0x3f')][_0x8d7d('0x32')]?_0x26fb46['attributes']:_0x173c9f[_0x8d7d('0x3d')];if(!_0x52f8fa[_0x8d7d('0x3e')][_0x8d7d('0x41')](_0x8d7d('0x42'))){_0x26fb46[_0x8d7d('0x23')]=qs['limit'](_0x52f8fa[_0x8d7d('0x3e')][_0x8d7d('0x23')]);_0x26fb46[_0x8d7d('0x22')]=qs[_0x8d7d('0x22')](_0x52f8fa['query']['offset']);}_0x26fb46['order']=qs[_0x8d7d('0x43')](_0x52f8fa['query'][_0x8d7d('0x43')]);_0x26fb46['where']=qs[_0x8d7d('0x3b')](_['pick'](_0x52f8fa['query'],_0x173c9f[_0x8d7d('0x3b')]));var _0x3eba1a=[];var _0x11e39a=squel[_0x8d7d('0x44')]()['field']('id')['field'](_0x8d7d('0x2d'))[_0x8d7d('0x45')](_0x8d7d('0x46'))[_0x8d7d('0x47')](_0x8d7d('0x48'));var _0x4892b3=squel[_0x8d7d('0x44')]()[_0x8d7d('0x47')]('cm_contacts','c')[_0x8d7d('0x49')](_0x8d7d('0x4a'),'uc',_0x8d7d('0x4b'))[_0x8d7d('0x49')](_0x8d7d('0x4c'),'ct',_0x8d7d('0x4d'))[_0x8d7d('0x49')](_0x8d7d('0x48'),'t',_0x8d7d('0x4e'))['where']('c.deletedAt\x20IS\x20NULL');var _0x9af822=squel[_0x8d7d('0x4f')]();var _0x1a0f50=[];var _0x347657=squel['expr']();var _0x1b2f6e;if(_0x52f8fa[_0x8d7d('0x3e')][_0x8d7d('0x50')]){_0x1b2f6e=as[_0x8d7d('0x51')](_0x52f8fa[_0x8d7d('0x3e')][_0x8d7d('0x50')]);var _0x32e744=_0x1b2f6e[_0x8d7d('0x52')];for(var _0x729f5f=0x0;_0x729f5f<_0x1b2f6e[_0x8d7d('0x53')][_0x8d7d('0x32')];_0x729f5f++){var _0x1a0b05=_0x1b2f6e[_0x8d7d('0x53')][_0x729f5f];var _0x4de6ca='c';var _0x307b2b=_(_0x16a245)[_0x8d7d('0x31')]()[_0x8d7d('0x54')](function(_0x2240dd){return _0x2240dd===_0x1a0b05[_0x8d7d('0x45')];});if(_0x307b2b)_0x307b2b=_0x16a245[_0x1a0b05['field']];if(!_0x307b2b){if(_0x1a0b05[_0x8d7d('0x45')]===_0x8d7d('0x55')){var _0x3dd099=_0x1a0b05[_0x8d7d('0x56')][_0x8d7d('0x57')](',')[_0x8d7d('0x58')](function(_0x2685a0){return Number(_0x2685a0);});_0x3dd099['forEach'](function(_0x51872b){_0x347657['or'](_0x8d7d('0x59'),'%,'+_0x51872b+',%');});_0x1a0f50=_[_0x8d7d('0x5a')](_0x1a0f50,_0x3dd099);}else if(_0x1a0b05[_0x8d7d('0x45')]===_0x8d7d('0x5b')){_0x9af822[_0x8d7d('0x5c')](_0x8d7d('0x5d'),_0x1a0b05[_0x8d7d('0x56')]);}}else{if(_0x1a0b05['field']==='dateOfBirth'||_0x307b2b['fieldType']===_0x8d7d('0x5e'))_0x1a0b05['castTo']=_0x8d7d('0x5f');var _0x5ee14b=as['buildExpression'](_0x4de6ca,_0x307b2b[_0x8d7d('0x3a')],_0x1a0b05);_0x9af822[_0x32e744](_0x5ee14b[_0x8d7d('0x60')],_0x5ee14b[_0x8d7d('0x56')]['start'],_0x5ee14b[_0x8d7d('0x56')][_0x8d7d('0x2b')]);}}}else{var _0x370df0=_(Object[_0x8d7d('0x31')](_0x52f8fa[_0x8d7d('0x3e')]))[_0x8d7d('0x58')](function(_0x7e3fb4){return _0x16a245[_0x8d7d('0x41')](_0x7e3fb4)?_0x7e3fb4:undefined;})[_0x8d7d('0x61')](function(_0x29ef7c){return!_[_0x8d7d('0x62')](_0x29ef7c);})[_0x8d7d('0x56')]();if(_0x52f8fa[_0x8d7d('0x3e')][_0x8d7d('0x63')])_0x370df0[_0x8d7d('0x35')](_0x8d7d('0x63'));if(!_['isEmpty'](_0x370df0)){_0x370df0[_0x8d7d('0x64')](function(_0x4c8d25){if(_0x4c8d25===_0x8d7d('0x65')){_0x4892b3[_0x8d7d('0x66')](_0x8d7d('0x67'),[][_0x8d7d('0x68')](_0x52f8fa[_0x8d7d('0x3e')][_0x4c8d25]));}else if(_0x4c8d25===_0x8d7d('0x63')){var _0x1df357='%'+_0x52f8fa[_0x8d7d('0x3e')][_0x4c8d25]+'%';_0x4892b3[_0x8d7d('0x66')]('CONCAT_WS(\x27\x20\x27,\x20c.firstName,\x20c.lastName,\x20c.email)\x20LIKE\x20?',_0x1df357);}else{_0x4892b3[_0x8d7d('0x66')]('c.'+_0x4c8d25+_0x8d7d('0x69'),_0x52f8fa['query'][_0x4c8d25]);}});}if(_0x52f8fa['query'][_0x8d7d('0x6a')]){_0x1a0f50=_[_0x8d7d('0x6b')](_0x52f8fa['query']['tag'])?_0x52f8fa[_0x8d7d('0x3e')][_0x8d7d('0x6a')]:new Array(_0x52f8fa['query'][_0x8d7d('0x6a')]);_0x1a0f50[_0x8d7d('0x64')](function(_0x33e227){_0x347657['or'](_0x8d7d('0x59'),'%,'+_0x33e227+',%');});}if(_0x52f8fa['query']['filter']){var _0x3bc2ed=_0x52f8fa[_0x8d7d('0x3e')][_0x8d7d('0x61')][_0x8d7d('0x6c')]('\x5c','\x5c\x5c')['replace']('\x27\x27',_0x8d7d('0x6d'));if(_0x3bc2ed[_0x8d7d('0x57')]('\x20')[_0x8d7d('0x32')]>0x1){_0x9af822['or'](_0x8d7d('0x6e'),qs[_0x8d7d('0x6f')](_0x3bc2ed),null);}else{if(qs[_0x8d7d('0x70')](_0x3bc2ed)){_0x9af822['or']('c.id\x20LIKE\x20?',_0x3bc2ed+'%');_0x9af822['or'](_0x8d7d('0x71'),_0x3bc2ed+'%');_0x9af822['or']('c.mobile\x20LIKE\x20?',_0x3bc2ed+'%');_0x9af822['or'](_0x8d7d('0x72'),_0x3bc2ed+'%');}else if(qs[_0x8d7d('0x73')](_0x3bc2ed)){_0x9af822['or'](_0x8d7d('0x74'),_0x3bc2ed+'%');}else{_0x9af822['or'](_0x8d7d('0x75'),'%'+_0x3bc2ed+'%');_0x9af822['or'](_0x8d7d('0x76'),'%'+_0x3bc2ed+'%');_0x9af822['or'](_0x8d7d('0x74'),'%'+_0x3bc2ed+'%');}}}}_0x4892b3[_0x8d7d('0x66')](_0x9af822);_0x4892b3['group'](_0x8d7d('0x77'));var _0x44107b={'type':db[_0x8d7d('0x78')][_0x8d7d('0x79')][_0x8d7d('0x7a')],'raw':!![]};var _0x4ced1b=_0x4892b3[_0x8d7d('0x7b')]()['field'](_0x8d7d('0x77'));if(_0x26fb46[_0x8d7d('0x7c')]){_0x26fb46[_0x8d7d('0x7c')][_0x8d7d('0x64')](function(_0x153764){_0x4892b3[_0x8d7d('0x7c')]('c.'+_0x153764[0x0],_0x153764[0x1]===_0x8d7d('0x7d')?![]:!![]);});}if(!_[_0x8d7d('0x7e')](_0x1a0f50)){_0x4892b3[_0x8d7d('0x7f')](_0x347657);_0x4ced1b[_0x8d7d('0x66')](_0x8d7d('0x80'),_0x1a0f50);}BPromise['resolve']()['then'](function(){if(_0x1b2f6e&&!_[_0x8d7d('0x81')](_0x1b2f6e[_0x8d7d('0x53')],[_0x8d7d('0x45'),_0x8d7d('0x5b')])){return _0x52f8fa['user'][_0x8d7d('0x82')]({'attributes':['id'],'raw':!![]})[_0x8d7d('0x29')](function(_0x24650c){if(_[_0x8d7d('0x7e')](_0x24650c)){_0x4ced1b[_0x8d7d('0x66')](_0x8d7d('0x83'));_0x4892b3['where'](_0x8d7d('0x83'));}else{_0x4ced1b[_0x8d7d('0x66')](_0x8d7d('0x67'),_[_0x8d7d('0x58')](_0x24650c,'id'));_0x4892b3[_0x8d7d('0x66')](_0x8d7d('0x67'),_['map'](_0x24650c,'id'));}});}else{return;}})[_0x8d7d('0x29')](function(){db[_0x8d7d('0x84')][_0x8d7d('0x3e')](_0x4ced1b[_0x8d7d('0x85')](),_0x44107b)[_0x8d7d('0x29')](function(_0x22601a){_0xc53704[_0x8d7d('0x86')]=_0x22601a['length'];if(_0xc53704[_0x8d7d('0x86')]===0x0)return[];return db[_0x8d7d('0x84')]['query'](_0x11e39a[_0x8d7d('0x85')](),_0x44107b);})[_0x8d7d('0x29')](function(_0x47b4b5){_0x3eba1a=_['keyBy'](_0x47b4b5,'id');_0x44107b=_[_0x8d7d('0x87')](_0x44107b,{'model':db[_0x8d7d('0x2f')],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x52f8fa['query'][_0x8d7d('0x40')]){_0x26fb46['attributes'][_0x8d7d('0x64')](function(_0x340727){_0x4892b3[_0x8d7d('0x45')]('c.'+_0x340727);});}else{_0x4892b3[_0x8d7d('0x45')](_0x8d7d('0x77'));_0x4892b3[_0x8d7d('0x45')](_0x8d7d('0x88'));_0x4892b3['field'](_0x8d7d('0x89'));_0x4892b3['field']('c.phone');_0x4892b3[_0x8d7d('0x45')]('c.mobile');_0x4892b3[_0x8d7d('0x45')]('c.fax');_0x4892b3[_0x8d7d('0x45')](_0x8d7d('0x8a'));_0x4892b3[_0x8d7d('0x45')](_0x8d7d('0x8b'));_0x4892b3[_0x8d7d('0x45')]('c.deletedAt');_0x4892b3[_0x8d7d('0x45')]('GROUP_CONCAT(DISTINCT\x20t.id)',_0x8d7d('0x8c'));}if(_0x26fb46[_0x8d7d('0x23')])_0x4892b3[_0x8d7d('0x23')](_0x26fb46[_0x8d7d('0x23')]);if(_0x26fb46[_0x8d7d('0x22')])_0x4892b3[_0x8d7d('0x22')](_0x26fb46[_0x8d7d('0x22')]);return db['sequelize'][_0x8d7d('0x3e')](_0x4892b3['toString'](),_0x44107b);})[_0x8d7d('0x29')](function(_0x5ed328){_0x5ed328[_0x8d7d('0x64')](function(_0x458552){if(_0x458552['TagIds']){_0x458552[_0x8d7d('0x8d')]=[];_0x458552['TagIds'][_0x8d7d('0x57')](',')['forEach'](function(_0x51a9d1){_0x458552[_0x8d7d('0x8d')][_0x8d7d('0x35')](_0x3eba1a[_0x51a9d1]);});}delete _0x458552['TagIds'];});_0xc53704['rows']=_0x5ed328;return _0xc53704;})['then'](respondWithFilteredResult(_0xbfc201,_0x26fb46));});})['catch'](handleError(_0xbfc201,null));};exports['destroy']=function(_0x4fadcd,_0x243385){return db[_0x8d7d('0x2f')][_0x8d7d('0x54')]({'where':{'id':_0x4fadcd[_0x8d7d('0x8e')]['id']}})[_0x8d7d('0x29')](handleEntityNotFound(_0x243385,null))['then'](removeEntity(_0x243385,null))[_0x8d7d('0x8f')](handleError(_0x243385,null));};exports[_0x8d7d('0x30')]=function(_0x507492,_0x4bb648){return db['CmContact'][_0x8d7d('0x30')]()['then'](function(_0x18f744){delete _0x18f744[_0x8d7d('0x90')];for(var _0x414c3f=0x0;_0x414c3f<Object[_0x8d7d('0x31')](_0x18f744)[_0x8d7d('0x32')];_0x414c3f++){var _0x223cc4=Object[_0x8d7d('0x31')](_0x18f744)[_0x414c3f];if(!_['startsWith'](_0x223cc4,_0x8d7d('0x34'))){_0x18f744[_0x223cc4][_0x8d7d('0x91')]=_0x223cc4;_0x18f744[_0x223cc4]['displayName']=_0x223cc4;}}return _0x18f744;})[_0x8d7d('0x29')](function(_0x5b227b){var _0x75c831={'where':{'$or':[{'ListId':_0x507492[_0x8d7d('0x3e')]['id']},{'ListId':null}]},'raw':!![]};return db['CmCustomField']['findAll'](_0x75c831)[_0x8d7d('0x29')](function(_0x2aa01f){for(var _0x3d8604=0x0;_0x3d8604<_0x2aa01f['length'];_0x3d8604++){var _0x4a26dc=_0x8d7d('0x34')+_0x2aa01f[_0x3d8604]['id'];_0x5b227b[_0x4a26dc][_0x8d7d('0x91')]=_0x4a26dc;_0x5b227b[_0x4a26dc][_0x8d7d('0x92')]=_0x2aa01f[_0x3d8604][_0x8d7d('0x93')];_0x5b227b[_0x4a26dc]['custom']={'type':_0x2aa01f[_0x3d8604]['type'],'values':_0x2aa01f[_0x3d8604]['values']};}Object[_0x8d7d('0x31')](_0x5b227b)[_0x8d7d('0x64')](function(_0x574829){if(!_0x5b227b[_0x574829][_0x8d7d('0x41')](_0x8d7d('0x91'))){delete _0x5b227b[_0x574829];}});return _0x5b227b;});})[_0x8d7d('0x29')](respondWithResult(_0x4bb648,null))['catch'](handleError(_0x4bb648,null));};exports['merge']=function(_0x566905,_0x18a703){var _0x151500;var _0x427c5a;var _0x3c2000;if(_0x566905['body']['id']){delete _0x566905[_0x8d7d('0x94')]['id'];}return db[_0x8d7d('0x2f')][_0x8d7d('0x95')]({'where':{'id':[_0x566905['body']['to'],_0x566905['body'][_0x8d7d('0x47')]]}})['then'](function(_0x143e5f){if(_0x143e5f){if(_0x143e5f[_0x8d7d('0x32')]!==0x2){return null;}_0x143e5f[0x0]=_0x143e5f[0x0][_0x8d7d('0x96')]({'plain':!![]});_0x143e5f[0x1]=_0x143e5f[0x1][_0x8d7d('0x96')]({'plain':!![]});delete _0x143e5f[0x0]['id'];delete _0x143e5f[0x1]['id'];return _[_0x8d7d('0x97')](_0x143e5f[0x0],_0x143e5f[0x1],function(_0x18fcde,_0x555938){if(Array[_0x8d7d('0x6b')](_0x555938)&&!_0x555938[_0x8d7d('0x32')]){return _0x18fcde;}else if(!_0x555938){return _0x18fcde;}});}})[_0x8d7d('0x29')](handleEntityNotFound(_0x18a703,null))[_0x8d7d('0x29')](function(_0x2ac8fc){if(_0x2ac8fc){if(_0x2ac8fc[_0x8d7d('0x90')]&&_[_0x8d7d('0x6b')](_0x2ac8fc[_0x8d7d('0x90')])){_0x2ac8fc['tags']=_0x2ac8fc[_0x8d7d('0x90')][_0x8d7d('0x98')]();}logger[_0x8d7d('0x99')](_0x8d7d('0x9a'),_0x566905[_0x8d7d('0x94')]['to'],_0x566905['body'][_0x8d7d('0x47')]);return db['CmHopper'][_0x8d7d('0x2a')]({'where':{'ContactId':[_0x566905[_0x8d7d('0x94')]['to'],_0x566905[_0x8d7d('0x94')][_0x8d7d('0x47')]]}})[_0x8d7d('0x29')](function(_0x71fdfe){logger[_0x8d7d('0x99')](_0x8d7d('0x9b'),_0x71fdfe);return db['CmHopperBlack'][_0x8d7d('0x2a')]({'where':{'ContactId':[_0x566905['body']['to'],_0x566905[_0x8d7d('0x94')]['from']]}})[_0x8d7d('0x29')](function(_0xa48783){logger[_0x8d7d('0x99')](_0x8d7d('0x9c'),_0xa48783);return db['CmContact'][_0x8d7d('0x9d')](_0x2ac8fc);});});}})[_0x8d7d('0x29')](function(_0x1ba622){if(_0x1ba622){_0x151500=_0x1ba622;_0x427c5a={'ContactId':_0x151500['id']};_0x3c2000={'where':{'ContactId':[_0x566905[_0x8d7d('0x94')]['to'],_0x566905[_0x8d7d('0x94')][_0x8d7d('0x47')]]}};return db[_0x8d7d('0x9e')][_0x8d7d('0x28')](_0x427c5a,_0x3c2000);}})[_0x8d7d('0x29')](function(){if(_0x151500){return db[_0x8d7d('0x9f')][_0x8d7d('0x28')](_0x427c5a,_0x3c2000);}})[_0x8d7d('0x29')](function(){if(_0x151500){return db[_0x8d7d('0xa0')]['update'](_0x427c5a,_0x3c2000);}})[_0x8d7d('0x29')](function(){if(_0x151500){return db[_0x8d7d('0xa1')][_0x8d7d('0x28')](_0x427c5a,_0x3c2000);}})[_0x8d7d('0x29')](function(){if(_0x151500){return db[_0x8d7d('0xa2')][_0x8d7d('0x28')](_0x427c5a,_0x3c2000);}})[_0x8d7d('0x29')](function(){if(_0x151500){return db[_0x8d7d('0xa1')][_0x8d7d('0x28')](_0x427c5a,_0x3c2000);}})[_0x8d7d('0x29')](function(){if(_0x151500){return db[_0x8d7d('0xa2')][_0x8d7d('0x28')](_0x427c5a,_0x3c2000);}})[_0x8d7d('0x29')](function(){if(_0x151500){return db[_0x8d7d('0xa3')]['update'](_0x427c5a,_0x3c2000);}})[_0x8d7d('0x29')](function(){if(_0x151500){return db[_0x8d7d('0xa4')]['update'](_0x427c5a,_0x3c2000);}})[_0x8d7d('0x29')](function(){if(_0x151500){return db['FaxInteraction'][_0x8d7d('0x28')](_0x427c5a,_0x3c2000);}})[_0x8d7d('0x29')](function(){if(_0x151500){return db['FaxMessage'][_0x8d7d('0x28')](_0x427c5a,_0x3c2000);}})[_0x8d7d('0x29')](function(){if(_0x151500){return db[_0x8d7d('0xa5')][_0x8d7d('0x28')](_0x427c5a,_0x3c2000);}})['then'](function(){if(_0x151500){return db['OpenchannelMessage'][_0x8d7d('0x28')](_0x427c5a,_0x3c2000);}})[_0x8d7d('0x29')](function(){if(_0x151500){return db[_0x8d7d('0xa6')][_0x8d7d('0x28')](_0x427c5a,_0x3c2000);}})[_0x8d7d('0x29')](function(){if(_0x151500){return db[_0x8d7d('0xa7')][_0x8d7d('0x28')](_0x427c5a,_0x3c2000);}})[_0x8d7d('0x29')](function(){if(_0x151500){return db[_0x8d7d('0xa8')][_0x8d7d('0x28')](_0x427c5a,_0x3c2000);}})['then'](function(){if(_0x151500){return db[_0x8d7d('0xa9')]['update'](_0x427c5a,_0x3c2000);}})['then'](function(){if(_0x151500){return db[_0x8d7d('0xaa')][_0x8d7d('0x28')](_0x427c5a,_0x3c2000);}})[_0x8d7d('0x29')](function(){if(_0x151500){return db[_0x8d7d('0xab')][_0x8d7d('0x28')](_0x427c5a,_0x3c2000);}})['then'](function(){if(_0x151500){return db[_0x8d7d('0xac')][_0x8d7d('0x28')](_0x427c5a,_0x3c2000);}})[_0x8d7d('0x29')](function(){if(_0x151500){return db[_0x8d7d('0xad')][_0x8d7d('0x28')](_0x427c5a,_0x3c2000);}})[_0x8d7d('0x29')](function(){if(_0x151500){return db[_0x8d7d('0xae')][_0x8d7d('0x28')](_0x427c5a,_0x3c2000);}})['then'](function(){if(_0x151500){return db[_0x8d7d('0xaf')]['update'](_0x427c5a,_0x3c2000);}})[_0x8d7d('0x29')](function(){if(_0x151500){return db[_0x8d7d('0x2f')][_0x8d7d('0x2a')]({'where':{'id':[_0x566905[_0x8d7d('0x94')]['to'],_0x566905[_0x8d7d('0x94')][_0x8d7d('0x47')]]}});}})[_0x8d7d('0x29')](function(){if(_0x151500){return _0x151500;}})[_0x8d7d('0x29')](respondWithResult(_0x18a703,null))[_0x8d7d('0x8f')](handleError(_0x18a703,null));};exports[_0x8d7d('0x9d')]=function(_0x1632d2,_0x5c1804){return db[_0x8d7d('0x2f')][_0x8d7d('0x30')]()[_0x8d7d('0x29')](function(_0x2d9333){if(_0x1632d2[_0x8d7d('0x94')]['tags']&&_[_0x8d7d('0x6b')](_0x1632d2[_0x8d7d('0x94')][_0x8d7d('0x90')])){if(_0x1632d2[_0x8d7d('0x94')][_0x8d7d('0x90')][_0x8d7d('0x32')]){_0x1632d2['body']['tags']=_0x1632d2[_0x8d7d('0x94')][_0x8d7d('0x90')][_0x8d7d('0x98')](';')+';';}else{_0x1632d2[_0x8d7d('0x94')]['tags']=null;}}else{_0x1632d2[_0x8d7d('0x94')][_0x8d7d('0x90')]=null;}return db[_0x8d7d('0x2f')][_0x8d7d('0x9d')](_0x1632d2[_0x8d7d('0x94')],{'fields':_[_0x8d7d('0x31')](_0x2d9333),'raw':!![]});})[_0x8d7d('0x29')](respondWithResult(_0x5c1804,0xc9))[_0x8d7d('0x8f')](handleError(_0x5c1804,null));};exports[_0x8d7d('0xb0')]=function(_0x3874d2,_0x5f08ae){var _0x3a43a1=[];var _0x5041b7=0x0;var _0x14ecb7=0x0;var _0x5bbe13=0x0;return db[_0x8d7d('0x2f')][_0x8d7d('0x30')]()[_0x8d7d('0x29')](function(_0x45c228){return BPromise['each'](_0x3874d2['body'],function(_0x26136a){var _0x2f13e3={'where':{'$or':[]},'defaults':_0x26136a,'fields':_[_0x8d7d('0x31')](_0x45c228),'raw':!![]};if(_0x26136a[_0x8d7d('0xb1')]){for(var _0x5406b3=0x0;_0x5406b3<_0x26136a[_0x8d7d('0xb1')][_0x8d7d('0x32')];_0x5406b3++){var _0x370ca={};_0x370ca[_0x26136a[_0x8d7d('0xb1')][_0x5406b3]]=_0x26136a[_0x26136a['duplicates'][_0x5406b3]];_0x2f13e3[_0x8d7d('0x66')]['$or'][_0x8d7d('0x35')](_0x370ca);}_0x2f13e3['where'][_0x8d7d('0x65')]=_0x26136a['ListId'];}return db['CmContact'][_0x8d7d('0xb2')](_0x2f13e3)[_0x8d7d('0xb3')](function(_0x3d6d6a,_0x2e748b){if(_0x2e748b){_0x5041b7++;}else{_0x5bbe13++;}})['catch'](function(_0x55fc0e){console['error'](_0x55fc0e);_0x14ecb7++;});});})[_0x8d7d('0x29')](function(_0x34e45f){if(_0x34e45f){return{'success':_0x5041b7,'failure':_0x14ecb7,'duplicates':_0x5bbe13};}})[_0x8d7d('0x29')](respondWithResult(_0x5f08ae,0xc9))['catch'](handleError(_0x5f08ae,null));};exports[_0x8d7d('0xb4')]=function(_0x455012,_0x4654a0,_0xdfa1dd){var _0x342cea;return db['CmContact'][_0x8d7d('0x30')]()['then'](function(_0x302398){return db[_0x8d7d('0x2f')][_0x8d7d('0x54')]({'where':{'id':_0x455012[_0x8d7d('0x8e')]['id']},'include':[{'model':db[_0x8d7d('0x55')],'as':_0x8d7d('0x8d'),'attributes':['id',_0x8d7d('0x2d'),_0x8d7d('0x46')],'required':_0x455012[_0x8d7d('0x3e')]['tag']?!![]:![]}],'attributes':_[_0x8d7d('0x31')](_0x302398)});})['then'](function(_0x27b444){_0x342cea=_0x27b444[_0x8d7d('0x96')]({'plain':!![]});var _0x49eb36={'where':{'$and':[{'ListId':{'$ne':null}}]}};if(_0x27b444&&_0x27b444[_0x8d7d('0x65')]){if(_0x27b444[_0x8d7d('0x65')]){_0x49eb36[_0x8d7d('0x66')]['$and']['push']({'ListId':{'$ne':_0x27b444[_0x8d7d('0x65')]}});}}return db[_0x8d7d('0x36')][_0x8d7d('0x95')](_0x49eb36);})[_0x8d7d('0x29')](function(_0x27f4ac){return _[_0x8d7d('0xb5')](_0x342cea,_[_0x8d7d('0x58')](_0x27f4ac,function(_0x24bb6c){return util['format'](_0x8d7d('0xb6'),_0x24bb6c['id']);}));})[_0x8d7d('0x29')](handleEntityNotFound(_0x4654a0,null))[_0x8d7d('0x29')](respondWithResult(_0x4654a0,null))['catch'](handleError(_0x4654a0,null));};exports[_0x8d7d('0x28')]=function(_0x52d592,_0x5baf5c){var _0x55f4d1;if(_0x52d592[_0x8d7d('0x94')]['id']){delete _0x52d592['body']['id'];}return db[_0x8d7d('0x2f')][_0x8d7d('0x54')]({'where':{'id':_0x52d592[_0x8d7d('0x8e')]['id']}})['then'](handleEntityNotFound(_0x5baf5c,null))['then'](saveUpdates(_0x52d592[_0x8d7d('0x94')],null))[_0x8d7d('0x29')](function(_0x389f30){_0x55f4d1=_0x389f30;var _0x20437d={'where':{'$and':[{'ListId':{'$ne':null}}]}};if(_0x389f30&&_0x389f30[_0x8d7d('0x65')]){if(_0x389f30[_0x8d7d('0x65')]){_0x20437d[_0x8d7d('0x66')]['$and'][_0x8d7d('0x35')]({'ListId':{'$ne':_0x389f30['ListId']}});}}return db[_0x8d7d('0x36')]['findAll'](_0x20437d);})[_0x8d7d('0x29')](function(_0x16bce3){if(_0x16bce3){return _[_0x8d7d('0xb5')](_[_0x8d7d('0xb7')](_0x52d592['body'],function(_0x453584,_0x351a60){return _[_0x8d7d('0x33')](_0x351a60,_0x8d7d('0x34'));}),_[_0x8d7d('0x58')](_0x16bce3,function(_0x5a126d){return util[_0x8d7d('0xb8')](_0x8d7d('0xb6'),_0x5a126d['id']);}));}})[_0x8d7d('0x29')](function(_0x104557){if(_0x104557&&!_[_0x8d7d('0x7e')](_0x104557)){var _0x1a9a42=squel[_0x8d7d('0x28')]()['table'](_0x8d7d('0xb9'))[_0x8d7d('0xba')](_0x104557)[_0x8d7d('0x66')]('id\x20=\x20?',_0x52d592['params']['id'])[_0x8d7d('0xbb')]();return db['sequelize'][_0x8d7d('0x3e')](_0x1a9a42[_0x8d7d('0x60')],{'replacements':_0x1a9a42['values']});}})[_0x8d7d('0x29')](function(){if(_0x52d592['body'][_0x8d7d('0xbc')]&&_0x55f4d1){return db['CmHopper'][_0x8d7d('0x28')]({'phone':_0x52d592[_0x8d7d('0x94')]['phone']},{'where':{'ContactId':_0x55f4d1['id']}});}})[_0x8d7d('0x29')](function(){return _0x55f4d1;})[_0x8d7d('0x29')](respondWithResult(_0x5baf5c,null))['catch'](handleError(_0x5baf5c,null));};exports[_0x8d7d('0xbd')]=function(_0x54fdb6,_0x48a3bc,_0x43f7f7){var _0x48e131={};var _0xfbe1cd={};var _0x523892;var _0x307150;return db[_0x8d7d('0x2f')][_0x8d7d('0xbe')]({'where':{'id':_0x54fdb6[_0x8d7d('0x8e')]['id']}})[_0x8d7d('0x29')](handleEntityNotFound(_0x48a3bc,null))[_0x8d7d('0x29')](function(_0x1d5c1d){if(_0x1d5c1d){_0x523892=_0x1d5c1d;_0xfbe1cd[_0x8d7d('0x3d')]=_['keys'](db[_0x8d7d('0x55')]['rawAttributes']);_0xfbe1cd[_0x8d7d('0x3e')]=_[_0x8d7d('0x31')](_0x54fdb6[_0x8d7d('0x3e')]);_0xfbe1cd[_0x8d7d('0x3b')]=_[_0x8d7d('0x3c')](_0xfbe1cd[_0x8d7d('0x3d')],_0xfbe1cd[_0x8d7d('0x3e')]);_0x48e131[_0x8d7d('0x3f')]=_[_0x8d7d('0x3c')](_0xfbe1cd['model'],qs['fields'](_0x54fdb6[_0x8d7d('0x3e')][_0x8d7d('0x40')]));_0x48e131[_0x8d7d('0x3f')]=_0x48e131[_0x8d7d('0x3f')][_0x8d7d('0x32')]?_0x48e131[_0x8d7d('0x3f')]:_0xfbe1cd[_0x8d7d('0x3d')];_0x48e131[_0x8d7d('0x7c')]=qs['sort'](_0x54fdb6[_0x8d7d('0x3e')][_0x8d7d('0x43')]);_0x48e131[_0x8d7d('0x66')]=qs[_0x8d7d('0x3b')](_[_0x8d7d('0xbf')](_0x54fdb6[_0x8d7d('0x3e')],_0xfbe1cd['filters']));if(_0x54fdb6[_0x8d7d('0x3e')][_0x8d7d('0x61')]){_0x48e131[_0x8d7d('0x66')]=_[_0x8d7d('0x87')](_0x48e131[_0x8d7d('0x66')],{'$or':_[_0x8d7d('0x58')](_0x48e131[_0x8d7d('0x3f')],function(_0x5aff85){var _0x52adb4={};_0x52adb4[_0x5aff85]={'$like':'%'+_0x54fdb6[_0x8d7d('0x3e')][_0x8d7d('0x61')]+'%'};return _0x52adb4;})});}_0x48e131=_['merge']({},_0x48e131,_0x54fdb6[_0x8d7d('0xc0')]);return _0x523892['getTags'](_0x48e131);}})[_0x8d7d('0x29')](function(_0x559d9b){if(_0x559d9b){_0x307150=_0x559d9b[_0x8d7d('0x32')];if(!_0x54fdb6[_0x8d7d('0x3e')][_0x8d7d('0x41')](_0x8d7d('0x42'))){_0x48e131[_0x8d7d('0x23')]=qs['limit'](_0x54fdb6['query'][_0x8d7d('0x23')]);_0x48e131['offset']=qs[_0x8d7d('0x22')](_0x54fdb6[_0x8d7d('0x3e')][_0x8d7d('0x22')]);}return _0x523892[_0x8d7d('0xbd')](_0x48e131);}})[_0x8d7d('0x29')](function(_0x456278){if(_0x456278){return _0x456278?{'count':_0x307150,'rows':_0x456278}:null;}})[_0x8d7d('0x29')](respondWithResult(_0x48a3bc,null))[_0x8d7d('0x8f')](handleError(_0x48a3bc,null));};exports[_0x8d7d('0xc1')]=function(_0x48bb38,_0x35b87b,_0x418ceb){if(_0x48bb38[_0x8d7d('0x94')]['id']){delete _0x48bb38[_0x8d7d('0x94')]['id'];}return db[_0x8d7d('0x2f')][_0x8d7d('0xbe')]({'where':{'id':_0x48bb38['params']['id']}})[_0x8d7d('0x29')](handleEntityNotFound(_0x35b87b,null))[_0x8d7d('0x29')](function(_0x33935e){if(_0x33935e){return _0x33935e[_0x8d7d('0xc1')](_0x48bb38['body'][_0x8d7d('0xc2')]||[]);}return null;})[_0x8d7d('0x29')](respondWithResult(_0x35b87b,null))['catch'](handleError(_0x35b87b,null));};exports[_0x8d7d('0xc3')]=function(_0x4502ed,_0x280afe,_0x44bac4){var _0x42bb3f={'raw':![],'where':{}};var _0x268ff7={};var _0x2fa309={'count':0x0,'rows':[]};return db['CmContact'][_0x8d7d('0xbe')]({'where':{'id':_0x4502ed[_0x8d7d('0x8e')]['id']}})['then'](handleEntityNotFound(_0x280afe,null))['then'](function(_0x40cd62){if(_0x40cd62){_0x268ff7[_0x8d7d('0x3d')]=_[_0x8d7d('0x31')](db[_0x8d7d('0xc4')][_0x8d7d('0xc5')]);_0x268ff7[_0x8d7d('0x3e')]=_[_0x8d7d('0x31')](_0x4502ed[_0x8d7d('0x3e')]);_0x268ff7[_0x8d7d('0x3b')]=_['intersection'](_0x268ff7[_0x8d7d('0x3d')],_0x268ff7[_0x8d7d('0x3e')]);_0x42bb3f[_0x8d7d('0x3f')]=_[_0x8d7d('0x3c')](_0x268ff7[_0x8d7d('0x3d')],qs[_0x8d7d('0x40')](_0x4502ed[_0x8d7d('0x3e')][_0x8d7d('0x40')]));_0x42bb3f[_0x8d7d('0x3f')]=_0x42bb3f[_0x8d7d('0x3f')][_0x8d7d('0x32')]?_0x42bb3f[_0x8d7d('0x3f')]:_0x268ff7['model'];if(!_0x4502ed['query'][_0x8d7d('0x41')]('nolimit')){_0x42bb3f[_0x8d7d('0x23')]=qs[_0x8d7d('0x23')](_0x4502ed[_0x8d7d('0x3e')][_0x8d7d('0x23')]);_0x42bb3f[_0x8d7d('0x22')]=qs[_0x8d7d('0x22')](_0x4502ed[_0x8d7d('0x3e')][_0x8d7d('0x22')]);}_0x42bb3f[_0x8d7d('0x7c')]=qs[_0x8d7d('0x43')](_0x4502ed['query'][_0x8d7d('0x43')]);_0x42bb3f[_0x8d7d('0x66')]=qs[_0x8d7d('0x3b')](_['pick'](_0x4502ed[_0x8d7d('0x3e')],_0x268ff7[_0x8d7d('0x3b')]));_0x42bb3f[_0x8d7d('0x66')][_0x8d7d('0xc6')]=_0x40cd62['id'];if(_0x4502ed[_0x8d7d('0x3e')][_0x8d7d('0x61')]){_0x42bb3f['where']=_['merge'](_0x42bb3f[_0x8d7d('0x66')],{'$or':_[_0x8d7d('0x58')](_0x42bb3f['attributes'],function(_0x29ef29){var _0x26d5aa={};_0x26d5aa[_0x29ef29]={'$like':'%'+_0x4502ed[_0x8d7d('0x3e')][_0x8d7d('0x61')]+'%'};return _0x26d5aa;})});}_0x42bb3f=_[_0x8d7d('0x87')]({},_0x42bb3f,_0x4502ed[_0x8d7d('0xc0')]);return db[_0x8d7d('0xc4')][_0x8d7d('0x86')]({'where':_0x42bb3f[_0x8d7d('0x66')]})['then'](function(_0x13230e){_0x2fa309[_0x8d7d('0x86')]=_0x13230e;if(_0x4502ed['query'][_0x8d7d('0xc7')]){_0x42bb3f[_0x8d7d('0xc8')]=[{'all':!![]}];}return db['CmHopper'][_0x8d7d('0x95')](_0x42bb3f);})[_0x8d7d('0x29')](function(_0x35b9d4){_0x2fa309['rows']=_0x35b9d4;return _0x2fa309;});}})[_0x8d7d('0x29')](respondWithFilteredResult(_0x280afe,_0x42bb3f))['catch'](handleError(_0x280afe,null));};exports[_0x8d7d('0xc9')]=function(_0x134f69,_0x3ceebd,_0xc7f2cd){var _0x1fe4e1={'raw':!![],'where':{}};var _0x47db4d={};var _0x48419e={'count':0x0,'rows':[]};return db[_0x8d7d('0x2f')][_0x8d7d('0xbe')]({'where':{'id':_0x134f69[_0x8d7d('0x8e')]['id']}})[_0x8d7d('0x29')](handleEntityNotFound(_0x3ceebd,null))[_0x8d7d('0x29')](function(_0x192ec6){if(_0x192ec6){_0x47db4d[_0x8d7d('0x3d')]=_[_0x8d7d('0x31')](db['CmHopperHistory'][_0x8d7d('0xc5')]);_0x47db4d[_0x8d7d('0x3e')]=_[_0x8d7d('0x31')](_0x134f69['query']);_0x47db4d['filters']=_[_0x8d7d('0x3c')](_0x47db4d['model'],_0x47db4d[_0x8d7d('0x3e')]);_0x1fe4e1[_0x8d7d('0x3f')]=_[_0x8d7d('0x3c')](_0x47db4d[_0x8d7d('0x3d')],qs[_0x8d7d('0x40')](_0x134f69[_0x8d7d('0x3e')][_0x8d7d('0x40')]));_0x1fe4e1[_0x8d7d('0x3f')]=_0x1fe4e1['attributes'][_0x8d7d('0x32')]?_0x1fe4e1[_0x8d7d('0x3f')]:_0x47db4d[_0x8d7d('0x3d')];if(!_0x134f69['query']['hasOwnProperty'](_0x8d7d('0x42'))){_0x1fe4e1[_0x8d7d('0x23')]=qs[_0x8d7d('0x23')](_0x134f69[_0x8d7d('0x3e')][_0x8d7d('0x23')]);_0x1fe4e1[_0x8d7d('0x22')]=qs[_0x8d7d('0x22')](_0x134f69[_0x8d7d('0x3e')][_0x8d7d('0x22')]);}_0x1fe4e1[_0x8d7d('0x7c')]=qs['sort'](_0x134f69[_0x8d7d('0x3e')]['sort']);_0x1fe4e1['where']=qs[_0x8d7d('0x3b')](_['pick'](_0x134f69[_0x8d7d('0x3e')],_0x47db4d['filters']));_0x1fe4e1[_0x8d7d('0x66')]['ContactId']=_0x192ec6['id'];if(_0x134f69[_0x8d7d('0x3e')][_0x8d7d('0x61')]){_0x1fe4e1['where']=_[_0x8d7d('0x87')](_0x1fe4e1[_0x8d7d('0x66')],{'$or':_['map'](_0x1fe4e1['attributes'],function(_0x3494de){var _0x55256d={};_0x55256d[_0x3494de]={'$like':'%'+_0x134f69[_0x8d7d('0x3e')]['filter']+'%'};return _0x55256d;})});}_0x1fe4e1=_[_0x8d7d('0x87')]({},_0x1fe4e1,_0x134f69[_0x8d7d('0xc0')]);return db[_0x8d7d('0xa7')][_0x8d7d('0x86')]({'where':_0x1fe4e1[_0x8d7d('0x66')]})[_0x8d7d('0x29')](function(_0x4d83f){_0x48419e['count']=_0x4d83f;if(_0x134f69[_0x8d7d('0x3e')][_0x8d7d('0xc7')]){_0x1fe4e1[_0x8d7d('0xc8')]=[{'all':!![]}];}return db[_0x8d7d('0xa7')][_0x8d7d('0x95')](_0x1fe4e1);})[_0x8d7d('0x29')](function(_0x1faf1b){_0x48419e['rows']=_0x1faf1b;return _0x48419e;});}})[_0x8d7d('0x29')](respondWithFilteredResult(_0x3ceebd,_0x1fe4e1))['catch'](handleError(_0x3ceebd,null));};exports['getHopperFinals']=function(_0x548b99,_0x3a3603,_0x1e71b7){var _0x1fa0ff={'raw':!![],'where':{}};var _0x59bf6a={};var _0xe0815e={'count':0x0,'rows':[]};return db['CmContact'][_0x8d7d('0xbe')]({'where':{'id':_0x548b99[_0x8d7d('0x8e')]['id']}})[_0x8d7d('0x29')](handleEntityNotFound(_0x3a3603,null))[_0x8d7d('0x29')](function(_0x1ea297){if(_0x1ea297){_0x59bf6a['model']=_[_0x8d7d('0x31')](db['CmHopperFinal']['rawAttributes']);_0x59bf6a[_0x8d7d('0x3e')]=_[_0x8d7d('0x31')](_0x548b99[_0x8d7d('0x3e')]);_0x59bf6a[_0x8d7d('0x3b')]=_[_0x8d7d('0x3c')](_0x59bf6a['model'],_0x59bf6a[_0x8d7d('0x3e')]);_0x1fa0ff['attributes']=_[_0x8d7d('0x3c')](_0x59bf6a[_0x8d7d('0x3d')],qs[_0x8d7d('0x40')](_0x548b99[_0x8d7d('0x3e')][_0x8d7d('0x40')]));_0x1fa0ff[_0x8d7d('0x3f')]=_0x1fa0ff[_0x8d7d('0x3f')]['length']?_0x1fa0ff['attributes']:_0x59bf6a[_0x8d7d('0x3d')];if(!_0x548b99[_0x8d7d('0x3e')]['hasOwnProperty'](_0x8d7d('0x42'))){_0x1fa0ff[_0x8d7d('0x23')]=qs[_0x8d7d('0x23')](_0x548b99[_0x8d7d('0x3e')]['limit']);_0x1fa0ff[_0x8d7d('0x22')]=qs[_0x8d7d('0x22')](_0x548b99[_0x8d7d('0x3e')]['offset']);}_0x1fa0ff[_0x8d7d('0x7c')]=qs['sort'](_0x548b99['query'][_0x8d7d('0x43')]);_0x1fa0ff[_0x8d7d('0x66')]=qs[_0x8d7d('0x3b')](_['pick'](_0x548b99['query'],_0x59bf6a['filters']));_0x1fa0ff[_0x8d7d('0x66')][_0x8d7d('0xc6')]=_0x1ea297['id'];if(_0x548b99[_0x8d7d('0x3e')][_0x8d7d('0x61')]){_0x1fa0ff[_0x8d7d('0x66')]=_[_0x8d7d('0x87')](_0x1fa0ff['where'],{'$or':_[_0x8d7d('0x58')](_0x1fa0ff['attributes'],function(_0x5aed1e){var _0x189dd1={};_0x189dd1[_0x5aed1e]={'$like':'%'+_0x548b99[_0x8d7d('0x3e')][_0x8d7d('0x61')]+'%'};return _0x189dd1;})});}_0x1fa0ff=_['merge']({},_0x1fa0ff,_0x548b99[_0x8d7d('0xc0')]);return db['CmHopperFinal'][_0x8d7d('0x86')]({'where':_0x1fa0ff['where']})[_0x8d7d('0x29')](function(_0x3ba4c8){_0xe0815e[_0x8d7d('0x86')]=_0x3ba4c8;if(_0x548b99[_0x8d7d('0x3e')]['includeAll']){_0x1fa0ff[_0x8d7d('0xc8')]=[{'all':!![]}];}return db[_0x8d7d('0xa6')][_0x8d7d('0x95')](_0x1fa0ff);})[_0x8d7d('0x29')](function(_0x226b0b){_0xe0815e[_0x8d7d('0xca')]=_0x226b0b;return _0xe0815e;});}})[_0x8d7d('0x29')](respondWithFilteredResult(_0x3a3603,_0x1fa0ff))[_0x8d7d('0x8f')](handleError(_0x3a3603,null));};exports[_0x8d7d('0xcb')]=function(_0x2d9399,_0x324228,_0x3a67e7){var _0x3d9a13={'raw':!![],'where':{}};var _0x354544={};var _0x30f428={'count':0x0,'rows':[]};return db[_0x8d7d('0x2f')][_0x8d7d('0xbe')]({'where':{'id':_0x2d9399[_0x8d7d('0x8e')]['id']}})[_0x8d7d('0x29')](handleEntityNotFound(_0x324228,null))['then'](function(_0x1b5e7c){if(_0x1b5e7c){_0x354544['model']=_[_0x8d7d('0x31')](db[_0x8d7d('0xaf')][_0x8d7d('0xc5')]);_0x354544['query']=_[_0x8d7d('0x31')](_0x2d9399[_0x8d7d('0x3e')]);_0x354544[_0x8d7d('0x3b')]=_[_0x8d7d('0x3c')](_0x354544['model'],_0x354544[_0x8d7d('0x3e')]);_0x3d9a13['attributes']=_['intersection'](_0x354544[_0x8d7d('0x3d')],qs[_0x8d7d('0x40')](_0x2d9399['query'][_0x8d7d('0x40')]));_0x3d9a13['attributes']=_0x3d9a13['attributes'][_0x8d7d('0x32')]?_0x3d9a13[_0x8d7d('0x3f')]:_0x354544[_0x8d7d('0x3d')];if(!_0x2d9399[_0x8d7d('0x3e')]['hasOwnProperty'](_0x8d7d('0x42'))){_0x3d9a13[_0x8d7d('0x23')]=qs[_0x8d7d('0x23')](_0x2d9399[_0x8d7d('0x3e')][_0x8d7d('0x23')]);_0x3d9a13['offset']=qs['offset'](_0x2d9399[_0x8d7d('0x3e')][_0x8d7d('0x22')]);}_0x3d9a13[_0x8d7d('0x7c')]=qs['sort'](_0x2d9399['query'][_0x8d7d('0x43')]);_0x3d9a13[_0x8d7d('0x66')]=qs[_0x8d7d('0x3b')](_['pick'](_0x2d9399[_0x8d7d('0x3e')],_0x354544['filters']));_0x3d9a13[_0x8d7d('0x66')][_0x8d7d('0xc6')]=_0x1b5e7c['id'];if(_0x2d9399['query'][_0x8d7d('0x61')]){_0x3d9a13[_0x8d7d('0x66')]=_[_0x8d7d('0x87')](_0x3d9a13[_0x8d7d('0x66')],{'$or':_['map'](_0x3d9a13[_0x8d7d('0x3f')],function(_0x35b99f){var _0x102d9f={};_0x102d9f[_0x35b99f]={'$like':'%'+_0x2d9399['query'][_0x8d7d('0x61')]+'%'};return _0x102d9f;})});}_0x3d9a13=_['merge']({},_0x3d9a13,_0x2d9399[_0x8d7d('0xc0')]);return db[_0x8d7d('0xaf')][_0x8d7d('0x86')]({'where':_0x3d9a13[_0x8d7d('0x66')]})[_0x8d7d('0x29')](function(_0x223a03){_0x30f428[_0x8d7d('0x86')]=_0x223a03;if(_0x2d9399['query'][_0x8d7d('0xc7')]){_0x3d9a13['include']=[{'all':!![]}];}return db[_0x8d7d('0xaf')]['findAll'](_0x3d9a13);})[_0x8d7d('0x29')](function(_0x20f567){_0x30f428[_0x8d7d('0xca')]=_0x20f567;return _0x30f428;});}})[_0x8d7d('0x29')](respondWithFilteredResult(_0x324228,_0x3d9a13))[_0x8d7d('0x8f')](handleError(_0x324228,null));};exports[_0x8d7d('0xcc')]=function(_0x11e8ac,_0x2542ab,_0x4e5ea7){try{if(!_0x11e8ac[_0x8d7d('0x94')][_0x8d7d('0x65')]){throw new Error(_0x8d7d('0xcd'));}if(!_0x11e8ac['body'][_0x8d7d('0xce')]){throw new Error(_0x8d7d('0xcf'));}if(!_0x11e8ac[_0x8d7d('0x94')][_0x8d7d('0xd0')]){throw new Error('No\x20association\x20values\x20specified!');}if(!_0x11e8ac[_0x8d7d('0x94')][_0x8d7d('0xd1')]){throw new Error(_0x8d7d('0xd2'));}var _0x16451b=_0x11e8ac['body']['binding_keys'][_0x8d7d('0x57')](',');var _0x2f58a7=_0x11e8ac['body'][_0x8d7d('0xd0')][_0x8d7d('0x57')](',');if(!_0x16451b['length']||!_0x2f58a7['length']||_0x16451b[_0x8d7d('0x32')]!==_0x2f58a7[_0x8d7d('0x32')]){throw new Error(_0x8d7d('0xd3'));}_0x11e8ac[_0x8d7d('0x94')]['fields']=_[_0x8d7d('0xd4')](_0x16451b,_0x2f58a7);if(!_0x11e8ac[_0x8d7d('0x94')][_0x8d7d('0x40')]['phone']){throw new Error(_0x8d7d('0xd5'));}if(!_0x11e8ac['body'][_0x8d7d('0x40')]['firstName']){throw new Error(_0x8d7d('0xd6'));}var _0x4e9396=path['join'](config[_0x8d7d('0xd7')],_0x8d7d('0xd8'),_0x11e8ac[_0x8d7d('0xd9')]['filename']);fs['chmodSync'](_0x4e9396,parseInt('0777',0x8));var _0x25b74a=require(_0x8d7d('0xda'))['fork'](path[_0x8d7d('0x98')](__dirname,_0x8d7d('0xdb')),[_0x4e9396,_0x11e8ac[_0x8d7d('0x94')][_0x8d7d('0xce')],_0x11e8ac[_0x8d7d('0x94')][_0x8d7d('0xd0')],_0x11e8ac[_0x8d7d('0x94')]['ListId'],_0x11e8ac[_0x8d7d('0x94')][_0x8d7d('0xdc')],_0x11e8ac[_0x8d7d('0x94')][_0x8d7d('0xb1')],_0x11e8ac[_0x8d7d('0x94')][_0x8d7d('0xd1')]]);return _0x2542ab[_0x8d7d('0x20')](0xc8)[_0x8d7d('0x21')]({'message':_0x8d7d('0xdd'),'pid':_0x25b74a[_0x8d7d('0xde')]});}catch(_0x392890){return _0x2542ab['status'](0x1f4)[_0x8d7d('0x2e')](_0x392890);}};exports[_0x8d7d('0xdf')]=function(_0xf7b207,_0x362601,_0x335ecc){var _0x4d9075=fs['createReadStream'](_0xf7b207[_0x8d7d('0xd9')][_0x8d7d('0xe0')]);Papa['parse'](_0x4d9075,{'header':!![],'skipEmptyLines':!![],'preview':0x1,'complete':function(_0x56111d){return _0x362601[_0x8d7d('0x20')](0xc8)[_0x8d7d('0x21')]({'file':_0xf7b207['file'],'fields':_0x56111d[_0x8d7d('0xe1')][_0x8d7d('0x40')]});}});};exports[_0x8d7d('0xe2')]=function(_0x4f843c,_0x22a6d6,_0x588c45){return db[_0x8d7d('0x5b')]['findAll']({'raw':!![],'attributes':['id'],'where':{'role':_0x8d7d('0xe3')}})[_0x8d7d('0x29')](function(_0x568746){var _0x2bfb48=![];if(!_0x4f843c['body']['ListId']){throw new Error('No\x20ListId\x20specified');}if(!_0x4f843c[_0x8d7d('0x94')]['binding']['phone']){throw new Error('No\x20phone\x20column\x20specified');}if(!_0x4f843c[_0x8d7d('0x94')][_0x8d7d('0xe4')]['firstName']){throw new Error(_0x8d7d('0xd6'));}if(!_0x4f843c[_0x8d7d('0x94')][_0x8d7d('0xd1')]){throw new Error(_0x8d7d('0xd2'));}var _0xb37a1f=require(_0x8d7d('0xda'))[_0x8d7d('0xe5')](path[_0x8d7d('0x98')](__dirname,_0x8d7d('0xe6')),[_0x4f843c['params']['id'],JSON[_0x8d7d('0xe7')](_0x4f843c[_0x8d7d('0x94')]),JSON[_0x8d7d('0xe7')](_0x568746)]);_0xb37a1f['on'](_0x8d7d('0xe8'),function(_0x12e4cd){_0x2bfb48=!![];return _0x22a6d6[_0x8d7d('0x20')](0xc8)[_0x8d7d('0x21')]({'message':'start\x20child\x20process\x20correctly!','pid':_0xb37a1f['pid']});});_0xb37a1f['on'](_0x8d7d('0xe9'),function(_0x2ca62a){if(_0x2ca62a&&!_0x2bfb48){return _0x22a6d6[_0x8d7d('0x20')](0x1f4)[_0x8d7d('0x21')]({'message':_0x8d7d('0xea'),'pid':_0xb37a1f[_0x8d7d('0xde')]});}});})[_0x8d7d('0x8f')](handleError(_0x22a6d6,null));};