Built motion from commit (unavailable).|2.5.13
[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 _0x07dc=['Contact','isEmpty','c.ListId\x20IN\x20?','concat','CONCAT_WS(\x27\x20\x27,\x20c.firstName,\x20c.lastName,\x20c.email)\x20LIKE\x20?','tag','isArray','replace','MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','getFullTextValue','isNumeric','c.id\x20LIKE\x20?','c.phone\x20LIKE\x20?','c.fax\x20LIKE\x20?','isEmail','c.email\x20LIKE\x20?','c.firstName\x20LIKE\x20?','QueryTypes','clone','having','t.id\x20IN\x20?','resolve','user','role','some','getLists','c.ListId\x20IS\x20NULL','ListId','sequelize','toString','keyBy','merge','c.id','c.firstName','c.phone','c.fax','c.ListId','c.createdAt','c.deletedAt','TagIds','Tags','catch','find','params','tags','columnName','displayName','findAll','custom','values','body','get','mergeWith','join','info','[CmContact][merge]\x20to\x20%s\x20from\x20%s','[CmContact][merge][destroy][CmHopper],\x20%s','CmHopperBlack','[CmContact][merge][destroy][CmHopperBlack],\x20%s','create','ChatInteraction','ChatMessage','MailInteraction','MailMessage','SmsMessage','FaxInteraction','FaxMessage','OpenchannelInteraction','OpenchannelMessage','CmHopperFinal','CmHopperHistory','VoiceCallReport','ChatQueueReport','FaxQueueReport','MailQueueReport','OpenchannelQueueReport','SmsQueueReport','JscriptySessionReport','bulkCreate','each','duplicates','$or','findOrCreate','show','omit','cf_%d','$and','pickBy','format','cm_contacts','setFields','toParam','text','phone','getTags','rawAttributes','intersection','setTags','CmHopper','options','includeAll','getHopperHistories','ContactId','include','rows','getHopperFinals','uploadCsv','No\x20ListId\x20specified','No\x20association\x20keys\x20specified!','binding_values','No\x20association\x20values\x20specified!','socket_timestamp','Unable\x20to\x20synchronize\x20socket,\x20no\x20timestamp\x20passed','binding_keys','zipObject','firstName','server/files/tmp','file','filename','chmodSync','0777','fork','../../components/import/cm/csv','File\x20uploaded\x20correctly!','pid','createReadStream','path','parse','meta','import','agent','binding','No\x20firstName\x20column\x20specified','child_process','../../components/import/cm/csv2','stringify','message','start\x20child\x20process\x20correctly!','exit','eml-format','fast-json-patch','moment','util','sox','to-csv','ejs','lodash','squel','crypto','jsforce','querystring','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','defaults','redis','localhost','socket.io-emitter','./cmContact.socket','register','status','json','count','limit','set','Content-Range','reject','update','then','destroy','end','error','stack','name','send','index','CmContact','describe','length','startsWith','push','CmCustomField','findOne','cf_','fieldType','type','model','keys','query','filters','attributes','fields','hasOwnProperty','nolimit','offset','order','sort','where','pick','select','field','color','from','left_join','cm_user_has_contacts','uc.CmContactId\x20=\x20c.id','t.id\x20=\x20ct.TagId','c.deletedAt\x20IS\x20NULL','expr','search','parseSearch','sqlOperator','conditions','Tag','split','map','forEach','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','union','User','and','uc.UserId\x20=\x20?','value','dateOfBirth','datetime','castTo','start','filter'];(function(_0x51986b,_0x2776b5){var _0x561d1a=function(_0x5b2119){while(--_0x5b2119){_0x51986b['push'](_0x51986b['shift']());}};_0x561d1a(++_0x2776b5);}(_0x07dc,0x174));var _0xc07d=function(_0x138adb,_0x193fee){_0x138adb=_0x138adb-0x0;var _0x1b27f2=_0x07dc[_0x138adb];return _0x1b27f2;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0xc07d('0x0'));var rimraf=require('rimraf');var zipdir=require('zip-dir');var jsonpatch=require(_0xc07d('0x1'));var rp=require('request-promise');var moment=require(_0xc07d('0x2'));var BPromise=require('bluebird');var Mustache=require('mustache');var util=require(_0xc07d('0x3'));var path=require('path');var sox=require(_0xc07d('0x4'));var csv=require(_0xc07d('0x5'));var ejs=require(_0xc07d('0x6'));var fs=require('fs');var _=require(_0xc07d('0x7'));var squel=require(_0xc07d('0x8'));var crypto=require(_0xc07d('0x9'));var jsforce=require(_0xc07d('0xa'));var deskjs=require('desk.js');var toCsv=require(_0xc07d('0x5'));var querystring=require(_0xc07d('0xb'));var Papa=require('papaparse');var Redis=require('ioredis');var authService=require(_0xc07d('0xc'));var qs=require(_0xc07d('0xd'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xc07d('0xe'));var logger=require(_0xc07d('0xf'))(_0xc07d('0x10'));var utils=require(_0xc07d('0x11'));var config=require(_0xc07d('0x12'));var licenseUtil=require('../../config/license/util');var db=require(_0xc07d('0x13'))['db'];config['redis']=_[_0xc07d('0x14')](config[_0xc07d('0x15')],{'host':_0xc07d('0x16'),'port':0x18eb});var socket=require(_0xc07d('0x17'))(new Redis(config['redis']));require(_0xc07d('0x18'))[_0xc07d('0x19')](socket);function respondWithStatusCode(_0x2ac3b6,_0x476071){_0x476071=_0x476071||0xcc;return function(_0x1067a0){if(_0x1067a0){return _0x2ac3b6['sendStatus'](_0x476071);}return _0x2ac3b6[_0xc07d('0x1a')](_0x476071)['end']();};}function respondWithResult(_0x474938,_0x418440){_0x418440=_0x418440||0xc8;return function(_0x3d409b){if(_0x3d409b){return _0x474938['status'](_0x418440)[_0xc07d('0x1b')](_0x3d409b);}};}function respondWithFilteredResult(_0x5f2d4a,_0x5dd122){return function(_0x2da1ea){if(_0x2da1ea){var _0x19cd1c=_0x2da1ea[_0xc07d('0x1c')],_0x19e766=_0x5dd122['offset'],_0x45b371=_0x5dd122['offset']+_0x5dd122[_0xc07d('0x1d')],_0x4a855a;if(_0x45b371>=_0x19cd1c){_0x45b371=_0x19cd1c;_0x4a855a=0xc8;}else{_0x4a855a=0xce;}_0x5f2d4a['status'](_0x4a855a);return _0x5f2d4a[_0xc07d('0x1e')](_0xc07d('0x1f'),_0x19e766+'-'+_0x45b371+'/'+_0x19cd1c)[_0xc07d('0x1b')](_0x2da1ea);}return null;};}function patchUpdates(_0x3c2fd3){return function(_0x48ad80){try{jsonpatch['apply'](_0x48ad80,_0x3c2fd3,!![]);}catch(_0x2b22cc){return BPromise[_0xc07d('0x20')](_0x2b22cc);}return _0x48ad80['save']();};}function saveUpdates(_0x2a2502,_0x4bf3bc){return function(_0x3dff42){if(_0x3dff42){return _0x3dff42[_0xc07d('0x21')](_0x2a2502)[_0xc07d('0x22')](function(_0x1f554e){return _0x1f554e;});}return null;};}function removeEntity(_0x68e966,_0x5ca831){return function(_0x32ecb5){if(_0x32ecb5){return _0x32ecb5[_0xc07d('0x23')]()['then'](function(){_0x68e966[_0xc07d('0x1a')](0xcc)[_0xc07d('0x24')]();});}};}function handleEntityNotFound(_0x48e9b7,_0x34d1f0){return function(_0x389ee4){if(!_0x389ee4){_0x48e9b7['sendStatus'](0x194);}return _0x389ee4;};}function handleError(_0x2c21ba,_0x376f26){_0x376f26=_0x376f26||0x1f4;return function(_0xb3be4d){logger[_0xc07d('0x25')](_0xb3be4d[_0xc07d('0x26')]);if(_0xb3be4d['name']){delete _0xb3be4d[_0xc07d('0x27')];}_0x2c21ba['status'](_0x376f26)[_0xc07d('0x28')](_0xb3be4d);};}exports[_0xc07d('0x29')]=function(_0x4569a6,_0x442921){var _0x3a5404={},_0x1e7204={},_0x9bb800={'count':0x0,'rows':[]};return db[_0xc07d('0x2a')][_0xc07d('0x2b')]()['then'](function(_0x40c098){var _0x5b6f0f=[];for(var _0x5585c1=0x0;_0x5585c1<Object['keys'](_0x40c098)[_0xc07d('0x2c')];_0x5585c1++){var _0x47eebc=Object['keys'](_0x40c098)[_0x5585c1];if(_[_0xc07d('0x2d')](_0x47eebc,'cf_')){_0x5b6f0f[_0xc07d('0x2e')](db[_0xc07d('0x2f')][_0xc07d('0x30')]({'where':{'id':_['trimStart'](_0x47eebc,_0xc07d('0x31'))},'raw':!![]}));}}return BPromise['all'](_0x5b6f0f)[_0xc07d('0x22')](function(_0x32775f){for(var _0x117655=0x0;_0x117655<_0x32775f[_0xc07d('0x2c')];_0x117655++){if(_0x32775f[_0x117655]){var _0x1c0399=_0xc07d('0x31')+_0x32775f[_0x117655]['id'];var _0x2c9988=_0x40c098[_0x1c0399];_0x2c9988[_0xc07d('0x32')]=_0x32775f[_0x117655][_0xc07d('0x33')];}}return _0x40c098;});})[_0xc07d('0x22')](function(_0x77e870){_0x1e7204[_0xc07d('0x34')]=_[_0xc07d('0x35')](_0x77e870);_0x1e7204[_0xc07d('0x36')]=_[_0xc07d('0x35')](_0x4569a6['query']);_0x1e7204[_0xc07d('0x37')]=_['intersection'](_0x1e7204[_0xc07d('0x34')],_0x1e7204['query']);_0x3a5404[_0xc07d('0x38')]=_['intersection'](_0x1e7204[_0xc07d('0x34')],qs[_0xc07d('0x39')](_0x4569a6[_0xc07d('0x36')][_0xc07d('0x39')]));_0x3a5404[_0xc07d('0x38')]=_0x3a5404[_0xc07d('0x38')][_0xc07d('0x2c')]?_0x3a5404[_0xc07d('0x38')]:_0x1e7204[_0xc07d('0x34')];if(!_0x4569a6[_0xc07d('0x36')][_0xc07d('0x3a')](_0xc07d('0x3b'))){_0x3a5404[_0xc07d('0x1d')]=qs[_0xc07d('0x1d')](_0x4569a6[_0xc07d('0x36')][_0xc07d('0x1d')]);_0x3a5404[_0xc07d('0x3c')]=qs[_0xc07d('0x3c')](_0x4569a6[_0xc07d('0x36')][_0xc07d('0x3c')]);}_0x3a5404[_0xc07d('0x3d')]=qs['sort'](_0x4569a6[_0xc07d('0x36')][_0xc07d('0x3e')]);_0x3a5404[_0xc07d('0x3f')]=qs[_0xc07d('0x37')](_[_0xc07d('0x40')](_0x4569a6['query'],_0x1e7204[_0xc07d('0x37')]),_0x77e870);var _0x4d651c=[];var _0x467c75=squel[_0xc07d('0x41')]()[_0xc07d('0x42')]('id')['field'](_0xc07d('0x27'))[_0xc07d('0x42')](_0xc07d('0x43'))[_0xc07d('0x44')]('tools_tags');var _0x268865=squel[_0xc07d('0x41')]()[_0xc07d('0x44')]('cm_contacts','c')[_0xc07d('0x45')](_0xc07d('0x46'),'uc',_0xc07d('0x47'))[_0xc07d('0x45')]('cm_contact_has_tags','ct','ct.CmContactId\x20=\x20c.id')[_0xc07d('0x45')]('tools_tags','t',_0xc07d('0x48'))[_0xc07d('0x3f')](_0xc07d('0x49'));var _0x4b9206=squel[_0xc07d('0x4a')]();var _0x586cea=[];var _0x3f1432=squel[_0xc07d('0x4a')]();var _0x1b9401;if(_0x4569a6['query'][_0xc07d('0x4b')]){_0x1b9401=as[_0xc07d('0x4c')](_0x4569a6[_0xc07d('0x36')][_0xc07d('0x4b')]);var _0x22128d=_0x1b9401[_0xc07d('0x4d')];for(var _0x5aaa8f=0x0;_0x5aaa8f<_0x1b9401[_0xc07d('0x4e')][_0xc07d('0x2c')];_0x5aaa8f++){var _0x1b226d=_0x1b9401[_0xc07d('0x4e')][_0x5aaa8f];var _0x1f939c='c';var _0x155906=_(_0x77e870)[_0xc07d('0x35')]()['find'](function(_0x53395a){return _0x53395a===_0x1b226d[_0xc07d('0x42')];});if(_0x155906)_0x155906=_0x77e870[_0x1b226d[_0xc07d('0x42')]];if(!_0x155906){if(_0x1b226d[_0xc07d('0x42')]===_0xc07d('0x4f')){var _0x2a7a49=_0x1b226d['value'][_0xc07d('0x50')](',')[_0xc07d('0x51')](function(_0x1d5fb8){return Number(_0x1d5fb8);});_0x2a7a49[_0xc07d('0x52')](function(_0x5c7750){_0x3f1432['or'](_0xc07d('0x53'),'%,'+_0x5c7750+',%');});_0x586cea=_[_0xc07d('0x54')](_0x586cea,_0x2a7a49);}else if(_0x1b226d[_0xc07d('0x42')]===_0xc07d('0x55')){_0x4b9206[_0xc07d('0x56')](_0xc07d('0x57'),_0x1b226d[_0xc07d('0x58')]);}}else{if(_0x1b226d['field']===_0xc07d('0x59')||_0x155906[_0xc07d('0x32')]===_0xc07d('0x5a'))_0x1b226d[_0xc07d('0x5b')]='DATE';var _0x398505=as['buildExpression'](_0x1f939c,_0x155906[_0xc07d('0x33')],_0x1b226d);_0x4b9206[_0x22128d](_0x398505['text'],_0x398505[_0xc07d('0x58')][_0xc07d('0x5c')],_0x398505[_0xc07d('0x58')]['end']);}}}else{var _0x206668=_(Object['keys'](_0x4569a6[_0xc07d('0x36')]))[_0xc07d('0x51')](function(_0x413c5b){return _0x77e870[_0xc07d('0x3a')](_0x413c5b)?_0x413c5b:undefined;})[_0xc07d('0x5d')](function(_0xd3999f){return!_['isNil'](_0xd3999f);})[_0xc07d('0x58')]();if(_0x4569a6[_0xc07d('0x36')]['Contact'])_0x206668['push'](_0xc07d('0x5e'));if(!_[_0xc07d('0x5f')](_0x206668)){_0x206668[_0xc07d('0x52')](function(_0x5f4ae7){if(_0x5f4ae7==='ListId'){_0x268865['where'](_0xc07d('0x60'),[][_0xc07d('0x61')](_0x4569a6['query'][_0x5f4ae7]));}else if(_0x5f4ae7===_0xc07d('0x5e')){var _0x21b221='%'+_0x4569a6[_0xc07d('0x36')][_0x5f4ae7]+'%';_0x268865['where'](_0xc07d('0x62'),_0x21b221);}else{_0x268865[_0xc07d('0x3f')]('c.'+_0x5f4ae7+'\x20=\x20?',_0x4569a6[_0xc07d('0x36')][_0x5f4ae7]);}});}if(_0x4569a6[_0xc07d('0x36')][_0xc07d('0x63')]){_0x586cea=_[_0xc07d('0x64')](_0x4569a6[_0xc07d('0x36')]['tag'])?_0x4569a6[_0xc07d('0x36')]['tag']:new Array(_0x4569a6[_0xc07d('0x36')][_0xc07d('0x63')]);_0x586cea['forEach'](function(_0x13d848){_0x3f1432['or'](_0xc07d('0x53'),'%,'+_0x13d848+',%');});}if(_0x4569a6[_0xc07d('0x36')][_0xc07d('0x5d')]){var _0xa7d6e2=_0x4569a6[_0xc07d('0x36')][_0xc07d('0x5d')][_0xc07d('0x65')]('\x5c','\x5c\x5c')['replace'](/'/g,'\x27\x27');if(_0xa7d6e2[_0xc07d('0x50')]('\x20')[_0xc07d('0x2c')]>0x1){_0x4b9206['or'](_0xc07d('0x66'),qs[_0xc07d('0x67')](_0xa7d6e2),null);}else{if(qs[_0xc07d('0x68')](_0xa7d6e2)){_0x4b9206['or'](_0xc07d('0x69'),_0xa7d6e2+'%');_0x4b9206['or'](_0xc07d('0x6a'),_0xa7d6e2+'%');_0x4b9206['or']('c.mobile\x20LIKE\x20?',_0xa7d6e2+'%');_0x4b9206['or'](_0xc07d('0x6b'),_0xa7d6e2+'%');}else if(qs[_0xc07d('0x6c')](_0xa7d6e2)){_0x4b9206['or'](_0xc07d('0x6d'),_0xa7d6e2+'%');}else{_0x4b9206['or'](_0xc07d('0x6e'),'%'+_0xa7d6e2+'%');_0x4b9206['or']('c.lastName\x20LIKE\x20?','%'+_0xa7d6e2+'%');_0x4b9206['or'](_0xc07d('0x6d'),'%'+_0xa7d6e2+'%');}}}}_0x268865[_0xc07d('0x3f')](_0x4b9206);_0x268865['group']('c.id');var _0xcc3ad9={'type':db['Sequelize'][_0xc07d('0x6f')]['SELECT'],'raw':!![]};var _0x4b35d1=_0x268865[_0xc07d('0x70')]()[_0xc07d('0x42')]('c.id');if(_0x3a5404[_0xc07d('0x3d')]){_0x3a5404[_0xc07d('0x3d')][_0xc07d('0x52')](function(_0x544f75){_0x268865[_0xc07d('0x3d')]('c.'+_0x544f75[0x0],_0x544f75[0x1]==='DESC'?![]:!![]);});}if(!_[_0xc07d('0x5f')](_0x586cea)){_0x268865[_0xc07d('0x71')](_0x3f1432);_0x4b35d1['where'](_0xc07d('0x72'),_0x586cea);}BPromise[_0xc07d('0x73')]()[_0xc07d('0x22')](function(){if(!_0x1b9401)return;if(_0x4569a6[_0xc07d('0x74')][_0xc07d('0x75')]!=='agent')return;if(!_[_0xc07d('0x76')](_0x1b9401[_0xc07d('0x4e')],[_0xc07d('0x42'),_0xc07d('0x55')])){return _0x4569a6[_0xc07d('0x74')][_0xc07d('0x77')]({'attributes':['id'],'raw':!![]})['then'](function(_0x111b55){if(_[_0xc07d('0x5f')](_0x111b55)){_0x4b35d1[_0xc07d('0x3f')](_0xc07d('0x78'));_0x268865[_0xc07d('0x3f')](_0xc07d('0x78'));}else{_0x4b35d1[_0xc07d('0x3f')](_0xc07d('0x60'),_[_0xc07d('0x51')](_0x111b55,'id'));_0x268865[_0xc07d('0x3f')](_0xc07d('0x60'),_[_0xc07d('0x51')](_0x111b55,'id'));}});}})[_0xc07d('0x22')](function(){if(_0x4569a6[_0xc07d('0x74')]['role']==='agent'&&!_0x1b9401&&!_0x4569a6[_0xc07d('0x36')][_0xc07d('0x79')])return[];return db[_0xc07d('0x7a')][_0xc07d('0x36')](_0x4b35d1[_0xc07d('0x7b')](),_0xcc3ad9);})[_0xc07d('0x22')](function(_0x29cb55){_0x9bb800[_0xc07d('0x1c')]=_0x29cb55['length'];if(_0x9bb800['count']===0x0)return[];return db[_0xc07d('0x7a')]['query'](_0x467c75[_0xc07d('0x7b')](),_0xcc3ad9)[_0xc07d('0x22')](function(_0xefe4d0){_0x4d651c=_[_0xc07d('0x7c')](_0xefe4d0,'id');_0xcc3ad9=_[_0xc07d('0x7d')](_0xcc3ad9,{'model':db[_0xc07d('0x2a')],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x4569a6[_0xc07d('0x36')][_0xc07d('0x39')]){_0x3a5404[_0xc07d('0x38')]['forEach'](function(_0x38b38d){_0x268865[_0xc07d('0x42')]('c.'+_0x38b38d);});}else{_0x268865[_0xc07d('0x42')](_0xc07d('0x7e'));_0x268865[_0xc07d('0x42')](_0xc07d('0x7f'));_0x268865[_0xc07d('0x42')]('c.lastName');_0x268865[_0xc07d('0x42')](_0xc07d('0x80'));_0x268865[_0xc07d('0x42')]('c.mobile');_0x268865['field'](_0xc07d('0x81'));_0x268865[_0xc07d('0x42')]('c.email');_0x268865[_0xc07d('0x42')](_0xc07d('0x82'));_0x268865[_0xc07d('0x42')](_0xc07d('0x83'));_0x268865[_0xc07d('0x42')](_0xc07d('0x84'));_0x268865[_0xc07d('0x42')]('c.CompanyId');_0x268865['field']('GROUP_CONCAT(DISTINCT\x20t.id)',_0xc07d('0x85'));}if(_0x3a5404['limit'])_0x268865[_0xc07d('0x1d')](_0x3a5404['limit']);if(_0x3a5404[_0xc07d('0x3c')])_0x268865['offset'](_0x3a5404[_0xc07d('0x3c')]);return db[_0xc07d('0x7a')][_0xc07d('0x36')](_0x268865[_0xc07d('0x7b')](),_0xcc3ad9);});})[_0xc07d('0x22')](function(_0x5e2cc1){_0x5e2cc1[_0xc07d('0x52')](function(_0x43649c){if(_0x43649c['TagIds']){_0x43649c[_0xc07d('0x86')]=[];_0x43649c[_0xc07d('0x85')][_0xc07d('0x50')](',')[_0xc07d('0x52')](function(_0x66f9f0){_0x43649c['Tags'][_0xc07d('0x2e')](_0x4d651c[_0x66f9f0]);});}delete _0x43649c[_0xc07d('0x85')];});_0x9bb800['rows']=_0x5e2cc1;return _0x9bb800;})[_0xc07d('0x22')](respondWithFilteredResult(_0x442921,_0x3a5404));})[_0xc07d('0x87')](handleError(_0x442921,null));};exports[_0xc07d('0x23')]=function(_0x2d411a,_0x39d8ff){return db['CmContact'][_0xc07d('0x88')]({'where':{'id':_0x2d411a[_0xc07d('0x89')]['id']}})['then'](handleEntityNotFound(_0x39d8ff,null))[_0xc07d('0x22')](removeEntity(_0x39d8ff,null))[_0xc07d('0x87')](handleError(_0x39d8ff,null));};exports[_0xc07d('0x2b')]=function(_0x1bf600,_0x1b01e2){return db['CmContact']['describe']()[_0xc07d('0x22')](function(_0x357554){delete _0x357554[_0xc07d('0x8a')];for(var _0x87764d=0x0;_0x87764d<Object[_0xc07d('0x35')](_0x357554)[_0xc07d('0x2c')];_0x87764d++){var _0x475989=Object['keys'](_0x357554)[_0x87764d];if(!_['startsWith'](_0x475989,_0xc07d('0x31'))){_0x357554[_0x475989][_0xc07d('0x8b')]=_0x475989;_0x357554[_0x475989][_0xc07d('0x8c')]=_0x475989;}}return _0x357554;})[_0xc07d('0x22')](function(_0xd0f7c4){var _0x540a3e={'where':{'$or':[{'ListId':_0x1bf600[_0xc07d('0x36')]['id']},{'ListId':null}]},'raw':!![]};return db[_0xc07d('0x2f')][_0xc07d('0x8d')](_0x540a3e)[_0xc07d('0x22')](function(_0x3615e1){for(var _0x53f28b=0x0;_0x53f28b<_0x3615e1[_0xc07d('0x2c')];_0x53f28b++){var _0x30b06f=_0xc07d('0x31')+_0x3615e1[_0x53f28b]['id'];_0xd0f7c4[_0x30b06f][_0xc07d('0x8b')]=_0x30b06f;_0xd0f7c4[_0x30b06f][_0xc07d('0x8c')]=_0x3615e1[_0x53f28b]['alias'];_0xd0f7c4[_0x30b06f][_0xc07d('0x8e')]={'type':_0x3615e1[_0x53f28b][_0xc07d('0x33')],'values':_0x3615e1[_0x53f28b][_0xc07d('0x8f')]};}Object[_0xc07d('0x35')](_0xd0f7c4)[_0xc07d('0x52')](function(_0x3750d8){if(!_0xd0f7c4[_0x3750d8][_0xc07d('0x3a')](_0xc07d('0x8b'))){delete _0xd0f7c4[_0x3750d8];}});return _0xd0f7c4;});})[_0xc07d('0x22')](respondWithResult(_0x1b01e2,null))['catch'](handleError(_0x1b01e2,null));};exports[_0xc07d('0x7d')]=function(_0x379b5a,_0x28e4e2){var _0x5ebe45;var _0x3d5b5d;var _0xc9970b;if(_0x379b5a[_0xc07d('0x90')]['id']){delete _0x379b5a[_0xc07d('0x90')]['id'];}return db[_0xc07d('0x2a')][_0xc07d('0x8d')]({'where':{'id':[_0x379b5a[_0xc07d('0x90')]['to'],_0x379b5a[_0xc07d('0x90')]['from']]}})[_0xc07d('0x22')](function(_0xe036ee){if(_0xe036ee){if(_0xe036ee[_0xc07d('0x2c')]!==0x2){return null;}_0xe036ee[0x0]=_0xe036ee[0x0][_0xc07d('0x91')]({'plain':!![]});_0xe036ee[0x1]=_0xe036ee[0x1][_0xc07d('0x91')]({'plain':!![]});delete _0xe036ee[0x0]['id'];delete _0xe036ee[0x1]['id'];return _[_0xc07d('0x92')](_0xe036ee[0x0],_0xe036ee[0x1],function(_0x42f250,_0x49dfa9){if(Array[_0xc07d('0x64')](_0x49dfa9)&&!_0x49dfa9[_0xc07d('0x2c')]){return _0x42f250;}else if(!_0x49dfa9){return _0x42f250;}});}})[_0xc07d('0x22')](handleEntityNotFound(_0x28e4e2,null))[_0xc07d('0x22')](function(_0x4ea9a2){if(_0x4ea9a2){if(_0x4ea9a2[_0xc07d('0x8a')]&&_['isArray'](_0x4ea9a2['tags'])){_0x4ea9a2[_0xc07d('0x8a')]=_0x4ea9a2['tags'][_0xc07d('0x93')]();}logger[_0xc07d('0x94')](_0xc07d('0x95'),_0x379b5a['body']['to'],_0x379b5a[_0xc07d('0x90')]['from']);return db['CmHopper'][_0xc07d('0x23')]({'where':{'ContactId':[_0x379b5a['body']['to'],_0x379b5a[_0xc07d('0x90')][_0xc07d('0x44')]]}})['then'](function(_0x289914){logger['info'](_0xc07d('0x96'),_0x289914);return db[_0xc07d('0x97')][_0xc07d('0x23')]({'where':{'ContactId':[_0x379b5a[_0xc07d('0x90')]['to'],_0x379b5a[_0xc07d('0x90')][_0xc07d('0x44')]]}})[_0xc07d('0x22')](function(_0xcc944e){logger[_0xc07d('0x94')](_0xc07d('0x98'),_0xcc944e);return db[_0xc07d('0x2a')][_0xc07d('0x99')](_0x4ea9a2);});});}})[_0xc07d('0x22')](function(_0x267636){if(_0x267636){_0x5ebe45=_0x267636;_0x3d5b5d={'ContactId':_0x5ebe45['id']};_0xc9970b={'where':{'ContactId':[_0x379b5a[_0xc07d('0x90')]['to'],_0x379b5a[_0xc07d('0x90')]['from']]}};return db[_0xc07d('0x9a')][_0xc07d('0x21')](_0x3d5b5d,_0xc9970b);}})[_0xc07d('0x22')](function(){if(_0x5ebe45){return db[_0xc07d('0x9b')][_0xc07d('0x21')](_0x3d5b5d,_0xc9970b);}})[_0xc07d('0x22')](function(){if(_0x5ebe45){return db['ChatOfflineMessage'][_0xc07d('0x21')](_0x3d5b5d,_0xc9970b);}})[_0xc07d('0x22')](function(){if(_0x5ebe45){return db[_0xc07d('0x9c')][_0xc07d('0x21')](_0x3d5b5d,_0xc9970b);}})[_0xc07d('0x22')](function(){if(_0x5ebe45){return db[_0xc07d('0x9d')][_0xc07d('0x21')](_0x3d5b5d,_0xc9970b);}})[_0xc07d('0x22')](function(){if(_0x5ebe45){return db[_0xc07d('0x9c')][_0xc07d('0x21')](_0x3d5b5d,_0xc9970b);}})[_0xc07d('0x22')](function(){if(_0x5ebe45){return db['MailMessage'][_0xc07d('0x21')](_0x3d5b5d,_0xc9970b);}})[_0xc07d('0x22')](function(){if(_0x5ebe45){return db['SmsInteraction']['update'](_0x3d5b5d,_0xc9970b);}})[_0xc07d('0x22')](function(){if(_0x5ebe45){return db[_0xc07d('0x9e')][_0xc07d('0x21')](_0x3d5b5d,_0xc9970b);}})[_0xc07d('0x22')](function(){if(_0x5ebe45){return db[_0xc07d('0x9f')][_0xc07d('0x21')](_0x3d5b5d,_0xc9970b);}})[_0xc07d('0x22')](function(){if(_0x5ebe45){return db[_0xc07d('0xa0')][_0xc07d('0x21')](_0x3d5b5d,_0xc9970b);}})[_0xc07d('0x22')](function(){if(_0x5ebe45){return db[_0xc07d('0xa1')][_0xc07d('0x21')](_0x3d5b5d,_0xc9970b);}})[_0xc07d('0x22')](function(){if(_0x5ebe45){return db[_0xc07d('0xa2')][_0xc07d('0x21')](_0x3d5b5d,_0xc9970b);}})[_0xc07d('0x22')](function(){if(_0x5ebe45){return db[_0xc07d('0xa3')]['update'](_0x3d5b5d,_0xc9970b);}})[_0xc07d('0x22')](function(){if(_0x5ebe45){return db[_0xc07d('0xa4')]['update'](_0x3d5b5d,_0xc9970b);}})[_0xc07d('0x22')](function(){if(_0x5ebe45){return db['ReportAgentPreview'][_0xc07d('0x21')](_0x3d5b5d,_0xc9970b);}})[_0xc07d('0x22')](function(){if(_0x5ebe45){return db[_0xc07d('0xa5')][_0xc07d('0x21')](_0x3d5b5d,_0xc9970b);}})[_0xc07d('0x22')](function(){if(_0x5ebe45){return db[_0xc07d('0xa6')]['update'](_0x3d5b5d,_0xc9970b);}})[_0xc07d('0x22')](function(){if(_0x5ebe45){return db[_0xc07d('0xa7')]['update'](_0x3d5b5d,_0xc9970b);}})['then'](function(){if(_0x5ebe45){return db[_0xc07d('0xa8')]['update'](_0x3d5b5d,_0xc9970b);}})[_0xc07d('0x22')](function(){if(_0x5ebe45){return db[_0xc07d('0xa9')]['update'](_0x3d5b5d,_0xc9970b);}})[_0xc07d('0x22')](function(){if(_0x5ebe45){return db[_0xc07d('0xaa')][_0xc07d('0x21')](_0x3d5b5d,_0xc9970b);}})[_0xc07d('0x22')](function(){if(_0x5ebe45){return db[_0xc07d('0xab')][_0xc07d('0x21')](_0x3d5b5d,_0xc9970b);}})[_0xc07d('0x22')](function(){if(_0x5ebe45){return db['CmContact'][_0xc07d('0x23')]({'where':{'id':[_0x379b5a[_0xc07d('0x90')]['to'],_0x379b5a[_0xc07d('0x90')][_0xc07d('0x44')]]}});}})[_0xc07d('0x22')](function(){if(_0x5ebe45){return _0x5ebe45;}})[_0xc07d('0x22')](respondWithResult(_0x28e4e2,null))[_0xc07d('0x87')](handleError(_0x28e4e2,null));};exports[_0xc07d('0x99')]=function(_0x35c178,_0x18860c){return db[_0xc07d('0x2a')][_0xc07d('0x2b')]()['then'](function(_0x257b2d){if(_0x35c178['body'][_0xc07d('0x8a')]&&_[_0xc07d('0x64')](_0x35c178['body'][_0xc07d('0x8a')])){if(_0x35c178['body']['tags'][_0xc07d('0x2c')]){_0x35c178[_0xc07d('0x90')][_0xc07d('0x8a')]=_0x35c178['body'][_0xc07d('0x8a')][_0xc07d('0x93')](';')+';';}else{_0x35c178['body'][_0xc07d('0x8a')]=null;}}else{_0x35c178[_0xc07d('0x90')][_0xc07d('0x8a')]=null;}return db[_0xc07d('0x2a')]['create'](_0x35c178['body'],{'fields':_[_0xc07d('0x35')](_0x257b2d),'raw':!![]});})[_0xc07d('0x22')](respondWithResult(_0x18860c,0xc9))[_0xc07d('0x87')](handleError(_0x18860c,null));};exports[_0xc07d('0xac')]=function(_0x26488d,_0xd71fd1){var _0x3fbf25=[];var _0x368d02=0x0;var _0x2018f6=0x0;var _0x23310=0x0;return db[_0xc07d('0x2a')][_0xc07d('0x2b')]()[_0xc07d('0x22')](function(_0x4f22af){return BPromise[_0xc07d('0xad')](_0x26488d[_0xc07d('0x90')],function(_0x5e376f){var _0x5c5c21={'where':{'$or':[]},'defaults':_0x5e376f,'fields':_[_0xc07d('0x35')](_0x4f22af),'raw':!![]};if(_0x5e376f[_0xc07d('0xae')]){for(var _0x9682bd=0x0;_0x9682bd<_0x5e376f[_0xc07d('0xae')][_0xc07d('0x2c')];_0x9682bd++){var _0x4fef4b={};_0x4fef4b[_0x5e376f[_0xc07d('0xae')][_0x9682bd]]=_0x5e376f[_0x5e376f[_0xc07d('0xae')][_0x9682bd]];_0x5c5c21[_0xc07d('0x3f')][_0xc07d('0xaf')][_0xc07d('0x2e')](_0x4fef4b);}_0x5c5c21[_0xc07d('0x3f')][_0xc07d('0x79')]=_0x5e376f['ListId'];}return db['CmContact'][_0xc07d('0xb0')](_0x5c5c21)['spread'](function(_0x2f3f87,_0x2eb9fe){if(_0x2eb9fe){_0x368d02++;}else{_0x23310++;}})[_0xc07d('0x87')](function(_0x7753b9){console[_0xc07d('0x25')](_0x7753b9);_0x2018f6++;});});})['then'](function(_0x423388){if(_0x423388){return{'success':_0x368d02,'failure':_0x2018f6,'duplicates':_0x23310};}})['then'](respondWithResult(_0xd71fd1,0xc9))['catch'](handleError(_0xd71fd1,null));};exports[_0xc07d('0xb1')]=function(_0x233009,_0x5b4006,_0x5b0c97){var _0x4cfbe0;return db[_0xc07d('0x2a')]['describe']()['then'](function(_0x24612f){return db['CmContact'][_0xc07d('0x88')]({'where':{'id':_0x233009[_0xc07d('0x89')]['id']},'include':[{'model':db['Tag'],'as':_0xc07d('0x86'),'attributes':['id',_0xc07d('0x27'),_0xc07d('0x43')],'required':_0x233009[_0xc07d('0x36')][_0xc07d('0x63')]?!![]:![]}],'attributes':_[_0xc07d('0x35')](_0x24612f)});})[_0xc07d('0x22')](function(_0x3e5f60){_0x4cfbe0=_0x3e5f60[_0xc07d('0x91')]({'plain':!![]});var _0x31d82a={'where':{'$and':[{'ListId':{'$ne':null}}]}};if(_0x3e5f60&&_0x3e5f60[_0xc07d('0x79')]){if(_0x3e5f60[_0xc07d('0x79')]){_0x31d82a[_0xc07d('0x3f')]['$and'][_0xc07d('0x2e')]({'ListId':{'$ne':_0x3e5f60[_0xc07d('0x79')]}});}}return db[_0xc07d('0x2f')][_0xc07d('0x8d')](_0x31d82a);})[_0xc07d('0x22')](function(_0x1c3c14){return _[_0xc07d('0xb2')](_0x4cfbe0,_[_0xc07d('0x51')](_0x1c3c14,function(_0x75aa06){return util['format'](_0xc07d('0xb3'),_0x75aa06['id']);}));})[_0xc07d('0x22')](handleEntityNotFound(_0x5b4006,null))[_0xc07d('0x22')](respondWithResult(_0x5b4006,null))[_0xc07d('0x87')](handleError(_0x5b4006,null));};exports[_0xc07d('0x21')]=function(_0x3da050,_0x584701){var _0x2cec34;if(_0x3da050[_0xc07d('0x90')]['id']){delete _0x3da050[_0xc07d('0x90')]['id'];}return db[_0xc07d('0x2a')][_0xc07d('0x88')]({'where':{'id':_0x3da050[_0xc07d('0x89')]['id']}})['then'](handleEntityNotFound(_0x584701,null))[_0xc07d('0x22')](saveUpdates(_0x3da050[_0xc07d('0x90')],null))[_0xc07d('0x22')](function(_0x1fc141){_0x2cec34=_0x1fc141;var _0x5c17ca={'where':{'$and':[{'ListId':{'$ne':null}}]}};if(_0x1fc141&&_0x1fc141['ListId']){if(_0x1fc141[_0xc07d('0x79')]){_0x5c17ca[_0xc07d('0x3f')][_0xc07d('0xb4')][_0xc07d('0x2e')]({'ListId':{'$ne':_0x1fc141['ListId']}});}}return db[_0xc07d('0x2f')][_0xc07d('0x8d')](_0x5c17ca);})['then'](function(_0x2c6366){if(_0x2c6366){return _[_0xc07d('0xb2')](_[_0xc07d('0xb5')](_0x3da050[_0xc07d('0x90')],function(_0x3d344e,_0x2f6dd0){return _[_0xc07d('0x2d')](_0x2f6dd0,'cf_');}),_[_0xc07d('0x51')](_0x2c6366,function(_0x56a289){return util[_0xc07d('0xb6')]('cf_%d',_0x56a289['id']);}));}})[_0xc07d('0x22')](function(_0x5b204a){if(_0x5b204a&&!_[_0xc07d('0x5f')](_0x5b204a)){var _0x5b1ce4=squel[_0xc07d('0x21')]()['table'](_0xc07d('0xb7'))[_0xc07d('0xb8')](_0x5b204a)[_0xc07d('0x3f')]('id\x20=\x20?',_0x3da050[_0xc07d('0x89')]['id'])[_0xc07d('0xb9')]();return db[_0xc07d('0x7a')][_0xc07d('0x36')](_0x5b1ce4[_0xc07d('0xba')],{'replacements':_0x5b1ce4[_0xc07d('0x8f')]});}})[_0xc07d('0x22')](function(){if(_0x3da050['body']['phone']&&_0x2cec34){return db['CmHopper'][_0xc07d('0x21')]({'phone':_0x3da050['body'][_0xc07d('0xbb')]},{'where':{'ContactId':_0x2cec34['id']}});}})['then'](function(){return _0x2cec34;})[_0xc07d('0x22')](respondWithResult(_0x584701,null))[_0xc07d('0x87')](handleError(_0x584701,null));};exports[_0xc07d('0xbc')]=function(_0x5b1a7c,_0x56d013,_0x37f404){var _0x1534c5={};var _0x572b66={};var _0x2a59f1;var _0x230790;return db[_0xc07d('0x2a')][_0xc07d('0x30')]({'where':{'id':_0x5b1a7c[_0xc07d('0x89')]['id']}})[_0xc07d('0x22')](handleEntityNotFound(_0x56d013,null))[_0xc07d('0x22')](function(_0x456cad){if(_0x456cad){_0x2a59f1=_0x456cad;_0x572b66['model']=_[_0xc07d('0x35')](db[_0xc07d('0x4f')][_0xc07d('0xbd')]);_0x572b66[_0xc07d('0x36')]=_['keys'](_0x5b1a7c['query']);_0x572b66['filters']=_[_0xc07d('0xbe')](_0x572b66[_0xc07d('0x34')],_0x572b66[_0xc07d('0x36')]);_0x1534c5[_0xc07d('0x38')]=_[_0xc07d('0xbe')](_0x572b66['model'],qs['fields'](_0x5b1a7c[_0xc07d('0x36')][_0xc07d('0x39')]));_0x1534c5[_0xc07d('0x38')]=_0x1534c5[_0xc07d('0x38')][_0xc07d('0x2c')]?_0x1534c5[_0xc07d('0x38')]:_0x572b66[_0xc07d('0x34')];_0x1534c5[_0xc07d('0x3d')]=qs[_0xc07d('0x3e')](_0x5b1a7c[_0xc07d('0x36')][_0xc07d('0x3e')]);_0x1534c5[_0xc07d('0x3f')]=qs[_0xc07d('0x37')](_[_0xc07d('0x40')](_0x5b1a7c[_0xc07d('0x36')],_0x572b66[_0xc07d('0x37')]));if(_0x5b1a7c[_0xc07d('0x36')][_0xc07d('0x5d')]){_0x1534c5[_0xc07d('0x3f')]=_[_0xc07d('0x7d')](_0x1534c5[_0xc07d('0x3f')],{'$or':_[_0xc07d('0x51')](_0x1534c5['attributes'],function(_0x3171d0){var _0x1bb045={};_0x1bb045[_0x3171d0]={'$like':'%'+_0x5b1a7c[_0xc07d('0x36')][_0xc07d('0x5d')]+'%'};return _0x1bb045;})});}_0x1534c5=_['merge']({},_0x1534c5,_0x5b1a7c['options']);return _0x2a59f1[_0xc07d('0xbc')](_0x1534c5);}})[_0xc07d('0x22')](function(_0x2d1263){if(_0x2d1263){_0x230790=_0x2d1263[_0xc07d('0x2c')];if(!_0x5b1a7c[_0xc07d('0x36')]['hasOwnProperty'](_0xc07d('0x3b'))){_0x1534c5[_0xc07d('0x1d')]=qs[_0xc07d('0x1d')](_0x5b1a7c[_0xc07d('0x36')][_0xc07d('0x1d')]);_0x1534c5[_0xc07d('0x3c')]=qs[_0xc07d('0x3c')](_0x5b1a7c['query']['offset']);}return _0x2a59f1['getTags'](_0x1534c5);}})[_0xc07d('0x22')](function(_0xc7f82b){if(_0xc7f82b){return _0xc7f82b?{'count':_0x230790,'rows':_0xc7f82b}:null;}})[_0xc07d('0x22')](respondWithResult(_0x56d013,null))['catch'](handleError(_0x56d013,null));};exports['setTags']=function(_0x588583,_0x1771f6,_0x522251){if(_0x588583[_0xc07d('0x90')]['id']){delete _0x588583[_0xc07d('0x90')]['id'];}return db[_0xc07d('0x2a')][_0xc07d('0x30')]({'where':{'id':_0x588583[_0xc07d('0x89')]['id']}})['then'](handleEntityNotFound(_0x1771f6,null))['then'](function(_0x396a26){if(_0x396a26){return _0x396a26[_0xc07d('0xbf')](_0x588583[_0xc07d('0x90')]['ids']||[]);}return null;})['then'](respondWithResult(_0x1771f6,null))[_0xc07d('0x87')](handleError(_0x1771f6,null));};exports['getHoppers']=function(_0x4193a6,_0x1a0861,_0x387c27){var _0x219e61={'raw':![],'where':{}};var _0x55eaa3={};var _0x4eae1c={'count':0x0,'rows':[]};return db[_0xc07d('0x2a')][_0xc07d('0x30')]({'where':{'id':_0x4193a6['params']['id']}})[_0xc07d('0x22')](handleEntityNotFound(_0x1a0861,null))[_0xc07d('0x22')](function(_0x39be06){if(_0x39be06){_0x55eaa3[_0xc07d('0x34')]=_['keys'](db[_0xc07d('0xc0')][_0xc07d('0xbd')]);_0x55eaa3[_0xc07d('0x36')]=_[_0xc07d('0x35')](_0x4193a6[_0xc07d('0x36')]);_0x55eaa3[_0xc07d('0x37')]=_['intersection'](_0x55eaa3['model'],_0x55eaa3[_0xc07d('0x36')]);_0x219e61[_0xc07d('0x38')]=_[_0xc07d('0xbe')](_0x55eaa3[_0xc07d('0x34')],qs[_0xc07d('0x39')](_0x4193a6['query'][_0xc07d('0x39')]));_0x219e61[_0xc07d('0x38')]=_0x219e61[_0xc07d('0x38')][_0xc07d('0x2c')]?_0x219e61[_0xc07d('0x38')]:_0x55eaa3['model'];if(!_0x4193a6[_0xc07d('0x36')]['hasOwnProperty'](_0xc07d('0x3b'))){_0x219e61[_0xc07d('0x1d')]=qs[_0xc07d('0x1d')](_0x4193a6[_0xc07d('0x36')]['limit']);_0x219e61[_0xc07d('0x3c')]=qs[_0xc07d('0x3c')](_0x4193a6[_0xc07d('0x36')]['offset']);}_0x219e61[_0xc07d('0x3d')]=qs['sort'](_0x4193a6[_0xc07d('0x36')][_0xc07d('0x3e')]);_0x219e61[_0xc07d('0x3f')]=qs[_0xc07d('0x37')](_[_0xc07d('0x40')](_0x4193a6[_0xc07d('0x36')],_0x55eaa3[_0xc07d('0x37')]));_0x219e61[_0xc07d('0x3f')]['ContactId']=_0x39be06['id'];if(_0x4193a6[_0xc07d('0x36')][_0xc07d('0x5d')]){_0x219e61[_0xc07d('0x3f')]=_['merge'](_0x219e61[_0xc07d('0x3f')],{'$or':_[_0xc07d('0x51')](_0x219e61[_0xc07d('0x38')],function(_0x37cd56){var _0x30834e={};_0x30834e[_0x37cd56]={'$like':'%'+_0x4193a6[_0xc07d('0x36')][_0xc07d('0x5d')]+'%'};return _0x30834e;})});}_0x219e61=_[_0xc07d('0x7d')]({},_0x219e61,_0x4193a6[_0xc07d('0xc1')]);return db[_0xc07d('0xc0')][_0xc07d('0x1c')]({'where':_0x219e61['where']})[_0xc07d('0x22')](function(_0x326b17){_0x4eae1c['count']=_0x326b17;if(_0x4193a6[_0xc07d('0x36')][_0xc07d('0xc2')]){_0x219e61['include']=[{'all':!![]}];}return db['CmHopper'][_0xc07d('0x8d')](_0x219e61);})[_0xc07d('0x22')](function(_0x20fe8e){_0x4eae1c['rows']=_0x20fe8e;return _0x4eae1c;});}})['then'](respondWithFilteredResult(_0x1a0861,_0x219e61))[_0xc07d('0x87')](handleError(_0x1a0861,null));};exports[_0xc07d('0xc3')]=function(_0x1de0cc,_0xfd6805,_0x359bb8){var _0x1749bf={'raw':!![],'where':{}};var _0x2c73d7={};var _0x482731={'count':0x0,'rows':[]};return db[_0xc07d('0x2a')][_0xc07d('0x30')]({'where':{'id':_0x1de0cc[_0xc07d('0x89')]['id']}})[_0xc07d('0x22')](handleEntityNotFound(_0xfd6805,null))['then'](function(_0x266a23){if(_0x266a23){_0x2c73d7[_0xc07d('0x34')]=_['keys'](db[_0xc07d('0xa4')][_0xc07d('0xbd')]);_0x2c73d7[_0xc07d('0x36')]=_[_0xc07d('0x35')](_0x1de0cc[_0xc07d('0x36')]);_0x2c73d7[_0xc07d('0x37')]=_['intersection'](_0x2c73d7[_0xc07d('0x34')],_0x2c73d7[_0xc07d('0x36')]);_0x1749bf[_0xc07d('0x38')]=_['intersection'](_0x2c73d7['model'],qs[_0xc07d('0x39')](_0x1de0cc[_0xc07d('0x36')][_0xc07d('0x39')]));_0x1749bf[_0xc07d('0x38')]=_0x1749bf[_0xc07d('0x38')][_0xc07d('0x2c')]?_0x1749bf[_0xc07d('0x38')]:_0x2c73d7[_0xc07d('0x34')];if(!_0x1de0cc[_0xc07d('0x36')][_0xc07d('0x3a')]('nolimit')){_0x1749bf[_0xc07d('0x1d')]=qs[_0xc07d('0x1d')](_0x1de0cc[_0xc07d('0x36')][_0xc07d('0x1d')]);_0x1749bf[_0xc07d('0x3c')]=qs[_0xc07d('0x3c')](_0x1de0cc[_0xc07d('0x36')][_0xc07d('0x3c')]);}_0x1749bf[_0xc07d('0x3d')]=qs[_0xc07d('0x3e')](_0x1de0cc[_0xc07d('0x36')][_0xc07d('0x3e')]);_0x1749bf[_0xc07d('0x3f')]=qs[_0xc07d('0x37')](_[_0xc07d('0x40')](_0x1de0cc[_0xc07d('0x36')],_0x2c73d7['filters']));_0x1749bf['where'][_0xc07d('0xc4')]=_0x266a23['id'];if(_0x1de0cc['query'][_0xc07d('0x5d')]){_0x1749bf[_0xc07d('0x3f')]=_[_0xc07d('0x7d')](_0x1749bf[_0xc07d('0x3f')],{'$or':_[_0xc07d('0x51')](_0x1749bf['attributes'],function(_0x1f637b){var _0x5980be={};_0x5980be[_0x1f637b]={'$like':'%'+_0x1de0cc[_0xc07d('0x36')]['filter']+'%'};return _0x5980be;})});}_0x1749bf=_['merge']({},_0x1749bf,_0x1de0cc['options']);return db['CmHopperHistory']['count']({'where':_0x1749bf[_0xc07d('0x3f')]})[_0xc07d('0x22')](function(_0x333af9){_0x482731[_0xc07d('0x1c')]=_0x333af9;if(_0x1de0cc[_0xc07d('0x36')][_0xc07d('0xc2')]){_0x1749bf[_0xc07d('0xc5')]=[{'all':!![]}];}return db[_0xc07d('0xa4')]['findAll'](_0x1749bf);})['then'](function(_0x4ce312){_0x482731[_0xc07d('0xc6')]=_0x4ce312;return _0x482731;});}})[_0xc07d('0x22')](respondWithFilteredResult(_0xfd6805,_0x1749bf))[_0xc07d('0x87')](handleError(_0xfd6805,null));};exports[_0xc07d('0xc7')]=function(_0x311904,_0x1e82fe,_0x2dd1ae){var _0x3dc865={'raw':!![],'where':{}};var _0x5ce965={};var _0x463b37={'count':0x0,'rows':[]};return db['CmContact']['findOne']({'where':{'id':_0x311904['params']['id']}})['then'](handleEntityNotFound(_0x1e82fe,null))[_0xc07d('0x22')](function(_0x11b43a){if(_0x11b43a){_0x5ce965[_0xc07d('0x34')]=_[_0xc07d('0x35')](db[_0xc07d('0xa3')][_0xc07d('0xbd')]);_0x5ce965[_0xc07d('0x36')]=_[_0xc07d('0x35')](_0x311904[_0xc07d('0x36')]);_0x5ce965[_0xc07d('0x37')]=_[_0xc07d('0xbe')](_0x5ce965['model'],_0x5ce965[_0xc07d('0x36')]);_0x3dc865[_0xc07d('0x38')]=_[_0xc07d('0xbe')](_0x5ce965[_0xc07d('0x34')],qs['fields'](_0x311904[_0xc07d('0x36')][_0xc07d('0x39')]));_0x3dc865[_0xc07d('0x38')]=_0x3dc865[_0xc07d('0x38')][_0xc07d('0x2c')]?_0x3dc865[_0xc07d('0x38')]:_0x5ce965[_0xc07d('0x34')];if(!_0x311904[_0xc07d('0x36')][_0xc07d('0x3a')](_0xc07d('0x3b'))){_0x3dc865['limit']=qs[_0xc07d('0x1d')](_0x311904[_0xc07d('0x36')][_0xc07d('0x1d')]);_0x3dc865['offset']=qs[_0xc07d('0x3c')](_0x311904['query'][_0xc07d('0x3c')]);}_0x3dc865[_0xc07d('0x3d')]=qs[_0xc07d('0x3e')](_0x311904[_0xc07d('0x36')][_0xc07d('0x3e')]);_0x3dc865[_0xc07d('0x3f')]=qs[_0xc07d('0x37')](_[_0xc07d('0x40')](_0x311904['query'],_0x5ce965[_0xc07d('0x37')]));_0x3dc865[_0xc07d('0x3f')][_0xc07d('0xc4')]=_0x11b43a['id'];if(_0x311904[_0xc07d('0x36')][_0xc07d('0x5d')]){_0x3dc865[_0xc07d('0x3f')]=_[_0xc07d('0x7d')](_0x3dc865[_0xc07d('0x3f')],{'$or':_[_0xc07d('0x51')](_0x3dc865[_0xc07d('0x38')],function(_0x353cb){var _0x34f286={};_0x34f286[_0x353cb]={'$like':'%'+_0x311904['query']['filter']+'%'};return _0x34f286;})});}_0x3dc865=_[_0xc07d('0x7d')]({},_0x3dc865,_0x311904[_0xc07d('0xc1')]);return db[_0xc07d('0xa3')]['count']({'where':_0x3dc865[_0xc07d('0x3f')]})[_0xc07d('0x22')](function(_0xdcc21e){_0x463b37['count']=_0xdcc21e;if(_0x311904[_0xc07d('0x36')][_0xc07d('0xc2')]){_0x3dc865['include']=[{'all':!![]}];}return db[_0xc07d('0xa3')][_0xc07d('0x8d')](_0x3dc865);})[_0xc07d('0x22')](function(_0x32ed5c){_0x463b37[_0xc07d('0xc6')]=_0x32ed5c;return _0x463b37;});}})[_0xc07d('0x22')](respondWithFilteredResult(_0x1e82fe,_0x3dc865))[_0xc07d('0x87')](handleError(_0x1e82fe,null));};exports['getJscriptySessions']=function(_0x56e312,_0x17d800,_0x3bd019){var _0x3b0f2e={'raw':!![],'where':{}};var _0x5e5be0={};var _0xbc5436={'count':0x0,'rows':[]};return db[_0xc07d('0x2a')][_0xc07d('0x30')]({'where':{'id':_0x56e312[_0xc07d('0x89')]['id']}})[_0xc07d('0x22')](handleEntityNotFound(_0x17d800,null))[_0xc07d('0x22')](function(_0x4dd0e0){if(_0x4dd0e0){_0x5e5be0['model']=_['keys'](db[_0xc07d('0xab')][_0xc07d('0xbd')]);_0x5e5be0[_0xc07d('0x36')]=_[_0xc07d('0x35')](_0x56e312['query']);_0x5e5be0[_0xc07d('0x37')]=_['intersection'](_0x5e5be0['model'],_0x5e5be0['query']);_0x3b0f2e['attributes']=_[_0xc07d('0xbe')](_0x5e5be0[_0xc07d('0x34')],qs['fields'](_0x56e312[_0xc07d('0x36')][_0xc07d('0x39')]));_0x3b0f2e[_0xc07d('0x38')]=_0x3b0f2e[_0xc07d('0x38')][_0xc07d('0x2c')]?_0x3b0f2e[_0xc07d('0x38')]:_0x5e5be0[_0xc07d('0x34')];if(!_0x56e312[_0xc07d('0x36')][_0xc07d('0x3a')](_0xc07d('0x3b'))){_0x3b0f2e['limit']=qs[_0xc07d('0x1d')](_0x56e312['query']['limit']);_0x3b0f2e[_0xc07d('0x3c')]=qs['offset'](_0x56e312[_0xc07d('0x36')][_0xc07d('0x3c')]);}_0x3b0f2e[_0xc07d('0x3d')]=qs['sort'](_0x56e312['query']['sort']);_0x3b0f2e[_0xc07d('0x3f')]=qs[_0xc07d('0x37')](_[_0xc07d('0x40')](_0x56e312[_0xc07d('0x36')],_0x5e5be0[_0xc07d('0x37')]));_0x3b0f2e[_0xc07d('0x3f')]['ContactId']=_0x4dd0e0['id'];if(_0x56e312['query'][_0xc07d('0x5d')]){_0x3b0f2e[_0xc07d('0x3f')]=_[_0xc07d('0x7d')](_0x3b0f2e[_0xc07d('0x3f')],{'$or':_['map'](_0x3b0f2e[_0xc07d('0x38')],function(_0x37cd92){var _0x5d3cb6={};_0x5d3cb6[_0x37cd92]={'$like':'%'+_0x56e312['query'][_0xc07d('0x5d')]+'%'};return _0x5d3cb6;})});}_0x3b0f2e=_[_0xc07d('0x7d')]({},_0x3b0f2e,_0x56e312[_0xc07d('0xc1')]);return db[_0xc07d('0xab')][_0xc07d('0x1c')]({'where':_0x3b0f2e[_0xc07d('0x3f')]})[_0xc07d('0x22')](function(_0x56f03e){_0xbc5436[_0xc07d('0x1c')]=_0x56f03e;if(_0x56e312[_0xc07d('0x36')][_0xc07d('0xc2')]){_0x3b0f2e['include']=[{'all':!![]}];}return db[_0xc07d('0xab')]['findAll'](_0x3b0f2e);})['then'](function(_0x15d57d){_0xbc5436[_0xc07d('0xc6')]=_0x15d57d;return _0xbc5436;});}})['then'](respondWithFilteredResult(_0x17d800,_0x3b0f2e))[_0xc07d('0x87')](handleError(_0x17d800,null));};exports[_0xc07d('0xc8')]=function(_0x15ea59,_0xcb6c1f,_0x4ac851){try{if(!_0x15ea59[_0xc07d('0x90')]['ListId']){throw new Error(_0xc07d('0xc9'));}if(!_0x15ea59[_0xc07d('0x90')]['binding_keys']){throw new Error(_0xc07d('0xca'));}if(!_0x15ea59[_0xc07d('0x90')][_0xc07d('0xcb')]){throw new Error(_0xc07d('0xcc'));}if(!_0x15ea59[_0xc07d('0x90')][_0xc07d('0xcd')]){throw new Error(_0xc07d('0xce'));}var _0x3e68f5=_0x15ea59['body'][_0xc07d('0xcf')]['split'](',');var _0x4f2ee1=_0x15ea59[_0xc07d('0x90')][_0xc07d('0xcb')]['split'](',');if(!_0x3e68f5['length']||!_0x4f2ee1[_0xc07d('0x2c')]||_0x3e68f5[_0xc07d('0x2c')]!==_0x4f2ee1[_0xc07d('0x2c')]){throw new Error('Incorrect\x20binding\x20parameters\x20passed!');}_0x15ea59['body'][_0xc07d('0x39')]=_[_0xc07d('0xd0')](_0x3e68f5,_0x4f2ee1);if(!_0x15ea59['body'][_0xc07d('0x39')][_0xc07d('0xbb')]){throw new Error('No\x20phone\x20column\x20specified');}if(!_0x15ea59[_0xc07d('0x90')][_0xc07d('0x39')][_0xc07d('0xd1')]){throw new Error('No\x20firstName\x20column\x20specified');}var _0x54a6f4=path[_0xc07d('0x93')](config['root'],_0xc07d('0xd2'),_0x15ea59[_0xc07d('0xd3')][_0xc07d('0xd4')]);fs[_0xc07d('0xd5')](_0x54a6f4,parseInt(_0xc07d('0xd6'),0x8));var _0x28a565=require('child_process')[_0xc07d('0xd7')](path[_0xc07d('0x93')](__dirname,_0xc07d('0xd8')),[_0x54a6f4,_0x15ea59[_0xc07d('0x90')][_0xc07d('0xcf')],_0x15ea59[_0xc07d('0x90')][_0xc07d('0xcb')],_0x15ea59[_0xc07d('0x90')][_0xc07d('0x79')],_0x15ea59[_0xc07d('0x90')]['CompanyId'],_0x15ea59[_0xc07d('0x90')][_0xc07d('0xae')],_0x15ea59[_0xc07d('0x90')][_0xc07d('0xcd')]]);return _0xcb6c1f[_0xc07d('0x1a')](0xc8)[_0xc07d('0x1b')]({'message':_0xc07d('0xd9'),'pid':_0x28a565[_0xc07d('0xda')]});}catch(_0x32d437){return _0xcb6c1f[_0xc07d('0x1a')](0x1f4)[_0xc07d('0x28')](_0x32d437);}};exports['upload']=function(_0x45d387,_0x55ecdf,_0x299cb7){var _0x22f658=fs[_0xc07d('0xdb')](_0x45d387[_0xc07d('0xd3')][_0xc07d('0xdc')]);Papa[_0xc07d('0xdd')](_0x22f658,{'header':!![],'skipEmptyLines':!![],'preview':0x1,'complete':function(_0x63e832){return _0x55ecdf['status'](0xc8)[_0xc07d('0x1b')]({'file':_0x45d387[_0xc07d('0xd3')],'fields':_0x63e832[_0xc07d('0xde')][_0xc07d('0x39')]});}});};exports[_0xc07d('0xdf')]=function(_0x548a34,_0x88db3d,_0x17c98a){return db[_0xc07d('0x55')]['findAll']({'raw':!![],'attributes':['id'],'where':{'role':_0xc07d('0xe0')}})['then'](function(_0x505e27){var _0x5d830c=![];if(!_0x548a34[_0xc07d('0x90')][_0xc07d('0x79')]){throw new Error('No\x20ListId\x20specified');}if(!_0x548a34[_0xc07d('0x90')][_0xc07d('0xe1')]['phone']){throw new Error('No\x20phone\x20column\x20specified');}if(!_0x548a34[_0xc07d('0x90')][_0xc07d('0xe1')][_0xc07d('0xd1')]){throw new Error(_0xc07d('0xe2'));}if(!_0x548a34['body'][_0xc07d('0xcd')]){throw new Error(_0xc07d('0xce'));}var _0x57efb9=require(_0xc07d('0xe3'))[_0xc07d('0xd7')](path[_0xc07d('0x93')](__dirname,_0xc07d('0xe4')),[_0x548a34[_0xc07d('0x89')]['id'],JSON[_0xc07d('0xe5')](_0x548a34[_0xc07d('0x90')]),JSON['stringify'](_0x505e27)]);_0x57efb9['on'](_0xc07d('0xe6'),function(_0x138476){_0x5d830c=!![];return _0x88db3d['status'](0xc8)['json']({'message':_0xc07d('0xe7'),'pid':_0x57efb9[_0xc07d('0xda')]});});_0x57efb9['on'](_0xc07d('0xe8'),function(_0x5e0cba){if(_0x5e0cba&&!_0x5d830c){return _0x88db3d[_0xc07d('0x1a')](0x1f4)[_0xc07d('0x1b')]({'message':'error\x20child\x20process','pid':_0x57efb9['pid']});}});})[_0xc07d('0x87')](handleError(_0x88db3d,null));};