219dda56224b78a6b831f37f38a9d1860dc94096
[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 _0x3b5c=['start','map','hasOwnProperty','filter','isNil','Contact','push','isEmpty','forEach','c.ListId\x20IN\x20?','concat','CONCAT_WS(\x27\x20\x27,\x20c.firstName,\x20c.lastName,\x20c.email)\x20LIKE\x20?','\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.id\x20LIKE\x20?','c.phone\x20LIKE\x20?','c.mobile\x20LIKE\x20?','isEmail','c.email\x20LIKE\x20?','c.firstName\x20LIKE\x20?','c.lastName\x20LIKE\x20?','c.id','SELECT','clone','having','t.id\x20IN\x20?','resolve','user','c.ListId\x20IS\x20NULL','sequelize','toString','count','keyBy','merge','c.firstName','c.lastName','c.mobile','c.fax','c.email','c.ListId','c.deletedAt','GROUP_CONCAT(DISTINCT\x20t.id)','TagIds','Tags','split','params','tags','columnName','displayName','custom','values','body','findAll','get','mergeWith','join','info','CmHopper','CmHopperBlack','[CmContact][merge][destroy][CmHopperBlack],\x20%s','create','ChatInteraction','ChatOfflineMessage','MailMessage','SmsInteraction','FaxMessage','OpenchannelInteraction','CmHopperHistory','ReportAgentPreview','ChatQueueReport','FaxQueueReport','MailQueueReport','OpenchannelQueueReport','SmsQueueReport','JscriptySessionReport','catch','each','duplicates','ListId','$and','omit','format','cf_%d','pickBy','table','setFields','id\x20=\x20?','toParam','phone','getTags','rawAttributes','pick','options','setTags','ids','ContactId','includeAll','include','rows','getHopperHistories','getHopperFinals','CmHopperFinal','getJscriptySessions','uploadCsv','No\x20ListId\x20specified','No\x20association\x20keys\x20specified!','binding_values','No\x20association\x20values\x20specified!','Unable\x20to\x20synchronize\x20socket,\x20no\x20timestamp\x20passed','binding_keys','Incorrect\x20binding\x20parameters\x20passed!','zipObject','No\x20phone\x20column\x20specified','firstName','root','filename','chmodSync','0777','child_process','fork','socket_timestamp','pid','createReadStream','parse','meta','import','User','binding','No\x20firstName\x20column\x20specified','../../components/import/cm/csv2','stringify','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','path','sox','to-csv','ejs','lodash','squel','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','../../config/utils','../../config/environment','redis','defaults','localhost','socket.io-emitter','./cmContact.socket','sendStatus','status','end','json','Content-Range','apply','reject','save','update','then','destroy','error','stack','name','send','index','CmContact','describe','keys','length','startsWith','cf_','CmCustomField','findOne','trimStart','all','fieldType','type','query','filters','intersection','attributes','fields','model','nolimit','limit','offset','order','sort','where','select','field','color','from','tools_tags','cm_contacts','left_join','cm_user_has_contacts','cm_contact_has_tags','ct.CmContactId\x20=\x20c.id','c.deletedAt\x20IS\x20NULL','expr','search','parseSearch','sqlOperator','conditions','find','Tag','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','union','and','datetime','castTo','DATE','text','value'];(function(_0x56f7e2,_0x145392){var _0x36240b=function(_0x216ff7){while(--_0x216ff7){_0x56f7e2['push'](_0x56f7e2['shift']());}};_0x36240b(++_0x145392);}(_0x3b5c,0x89));var _0xc3b5=function(_0x77e65c,_0x5cb8d2){_0x77e65c=_0x77e65c-0x0;var _0x55483c=_0x3b5c[_0x77e65c];return _0x55483c;};'use strict';var pdf=require(_0xc3b5('0x0'));var emlformat=require(_0xc3b5('0x1'));var rimraf=require(_0xc3b5('0x2'));var zipdir=require(_0xc3b5('0x3'));var jsonpatch=require(_0xc3b5('0x4'));var rp=require(_0xc3b5('0x5'));var moment=require(_0xc3b5('0x6'));var BPromise=require(_0xc3b5('0x7'));var Mustache=require(_0xc3b5('0x8'));var util=require('util');var path=require(_0xc3b5('0x9'));var sox=require(_0xc3b5('0xa'));var csv=require(_0xc3b5('0xb'));var ejs=require(_0xc3b5('0xc'));var fs=require('fs');var _=require(_0xc3b5('0xd'));var squel=require(_0xc3b5('0xe'));var crypto=require('crypto');var jsforce=require(_0xc3b5('0xf'));var deskjs=require(_0xc3b5('0x10'));var toCsv=require(_0xc3b5('0xb'));var querystring=require(_0xc3b5('0x11'));var Papa=require(_0xc3b5('0x12'));var Redis=require(_0xc3b5('0x13'));var authService=require(_0xc3b5('0x14'));var qs=require(_0xc3b5('0x15'));var as=require(_0xc3b5('0x16'));var hardwareService=require('../../config/license/hardware');var logger=require(_0xc3b5('0x17'))(_0xc3b5('0x18'));var utils=require(_0xc3b5('0x19'));var config=require(_0xc3b5('0x1a'));var db=require('../../mysqldb')['db'];config[_0xc3b5('0x1b')]=_[_0xc3b5('0x1c')](config[_0xc3b5('0x1b')],{'host':_0xc3b5('0x1d'),'port':0x18eb});var socket=require(_0xc3b5('0x1e'))(new Redis(config[_0xc3b5('0x1b')]));require(_0xc3b5('0x1f'))['register'](socket);function respondWithStatusCode(_0x37842a,_0x5cfc7e){_0x5cfc7e=_0x5cfc7e||0xcc;return function(_0x2761b2){if(_0x2761b2){return _0x37842a[_0xc3b5('0x20')](_0x5cfc7e);}return _0x37842a[_0xc3b5('0x21')](_0x5cfc7e)[_0xc3b5('0x22')]();};}function respondWithResult(_0x3e8630,_0x5dd61b){_0x5dd61b=_0x5dd61b||0xc8;return function(_0x162c7f){if(_0x162c7f){return _0x3e8630[_0xc3b5('0x21')](_0x5dd61b)[_0xc3b5('0x23')](_0x162c7f);}};}function respondWithFilteredResult(_0x4df02b,_0x1abc38){return function(_0x279aa6){if(_0x279aa6){var _0x487443=_0x279aa6['count'],_0x421a33=_0x1abc38['offset'],_0x51c474=_0x1abc38['offset']+_0x1abc38['limit'],_0x6e9f54;if(_0x51c474>=_0x487443){_0x51c474=_0x487443;_0x6e9f54=0xc8;}else{_0x6e9f54=0xce;}_0x4df02b['status'](_0x6e9f54);return _0x4df02b['set'](_0xc3b5('0x24'),_0x421a33+'-'+_0x51c474+'/'+_0x487443)[_0xc3b5('0x23')](_0x279aa6);}return null;};}function patchUpdates(_0x3486da){return function(_0x2a70e7){try{jsonpatch[_0xc3b5('0x25')](_0x2a70e7,_0x3486da,!![]);}catch(_0x32dc06){return BPromise[_0xc3b5('0x26')](_0x32dc06);}return _0x2a70e7[_0xc3b5('0x27')]();};}function saveUpdates(_0x1c0a67,_0x1e8841){return function(_0x1db7cb){if(_0x1db7cb){return _0x1db7cb[_0xc3b5('0x28')](_0x1c0a67)[_0xc3b5('0x29')](function(_0x3b4b92){return _0x3b4b92;});}return null;};}function removeEntity(_0x325088,_0x1eeb2c){return function(_0x552925){if(_0x552925){return _0x552925[_0xc3b5('0x2a')]()[_0xc3b5('0x29')](function(){_0x325088[_0xc3b5('0x21')](0xcc)[_0xc3b5('0x22')]();});}};}function handleEntityNotFound(_0x291aa8,_0x23309f){return function(_0x4d4a84){if(!_0x4d4a84){_0x291aa8[_0xc3b5('0x20')](0x194);}return _0x4d4a84;};}function handleError(_0x1078c5,_0x18af12){_0x18af12=_0x18af12||0x1f4;return function(_0x30bc01){logger[_0xc3b5('0x2b')](_0x30bc01[_0xc3b5('0x2c')]);if(_0x30bc01[_0xc3b5('0x2d')]){delete _0x30bc01[_0xc3b5('0x2d')];}_0x1078c5[_0xc3b5('0x21')](_0x18af12)[_0xc3b5('0x2e')](_0x30bc01);};}exports[_0xc3b5('0x2f')]=function(_0x10eb8b,_0x413c24){var _0x39f69a={},_0x1e4181={},_0x59b6a3={'count':0x0,'rows':[]};return db[_0xc3b5('0x30')][_0xc3b5('0x31')]()['then'](function(_0xefedeb){var _0x14ed57=[];for(var _0x32582d=0x0;_0x32582d<Object[_0xc3b5('0x32')](_0xefedeb)[_0xc3b5('0x33')];_0x32582d++){var _0x2b6070=Object['keys'](_0xefedeb)[_0x32582d];if(_[_0xc3b5('0x34')](_0x2b6070,_0xc3b5('0x35'))){_0x14ed57['push'](db[_0xc3b5('0x36')][_0xc3b5('0x37')]({'where':{'id':_[_0xc3b5('0x38')](_0x2b6070,_0xc3b5('0x35'))},'raw':!![]}));}}return BPromise[_0xc3b5('0x39')](_0x14ed57)[_0xc3b5('0x29')](function(_0x4276f4){for(var _0x4700f8=0x0;_0x4700f8<_0x4276f4[_0xc3b5('0x33')];_0x4700f8++){if(_0x4276f4[_0x4700f8]){var _0x2a40e5=_0xc3b5('0x35')+_0x4276f4[_0x4700f8]['id'];var _0x498fbb=_0xefedeb[_0x2a40e5];_0x498fbb[_0xc3b5('0x3a')]=_0x4276f4[_0x4700f8][_0xc3b5('0x3b')];}}return _0xefedeb;});})[_0xc3b5('0x29')](function(_0x19190f){_0x1e4181['model']=_[_0xc3b5('0x32')](_0x19190f);_0x1e4181[_0xc3b5('0x3c')]=_[_0xc3b5('0x32')](_0x10eb8b[_0xc3b5('0x3c')]);_0x1e4181[_0xc3b5('0x3d')]=_[_0xc3b5('0x3e')](_0x1e4181['model'],_0x1e4181['query']);_0x39f69a[_0xc3b5('0x3f')]=_[_0xc3b5('0x3e')](_0x1e4181['model'],qs[_0xc3b5('0x40')](_0x10eb8b[_0xc3b5('0x3c')][_0xc3b5('0x40')]));_0x39f69a[_0xc3b5('0x3f')]=_0x39f69a['attributes'][_0xc3b5('0x33')]?_0x39f69a[_0xc3b5('0x3f')]:_0x1e4181[_0xc3b5('0x41')];if(!_0x10eb8b[_0xc3b5('0x3c')]['hasOwnProperty'](_0xc3b5('0x42'))){_0x39f69a[_0xc3b5('0x43')]=qs['limit'](_0x10eb8b[_0xc3b5('0x3c')][_0xc3b5('0x43')]);_0x39f69a['offset']=qs[_0xc3b5('0x44')](_0x10eb8b['query'][_0xc3b5('0x44')]);}_0x39f69a[_0xc3b5('0x45')]=qs[_0xc3b5('0x46')](_0x10eb8b[_0xc3b5('0x3c')][_0xc3b5('0x46')]);_0x39f69a[_0xc3b5('0x47')]=qs[_0xc3b5('0x3d')](_['pick'](_0x10eb8b[_0xc3b5('0x3c')],_0x1e4181['filters']),_0x19190f);var _0x1ab3c9=[];var _0x316619=squel[_0xc3b5('0x48')]()['field']('id')[_0xc3b5('0x49')]('name')['field'](_0xc3b5('0x4a'))[_0xc3b5('0x4b')](_0xc3b5('0x4c'));var _0x160148=squel[_0xc3b5('0x48')]()[_0xc3b5('0x4b')](_0xc3b5('0x4d'),'c')[_0xc3b5('0x4e')](_0xc3b5('0x4f'),'uc','uc.CmContactId\x20=\x20c.id')[_0xc3b5('0x4e')](_0xc3b5('0x50'),'ct',_0xc3b5('0x51'))[_0xc3b5('0x4e')]('tools_tags','t','t.id\x20=\x20ct.TagId')[_0xc3b5('0x47')](_0xc3b5('0x52'));var _0x3c231e=squel[_0xc3b5('0x53')]();var _0x2c9f1e=[];var _0x1160df=squel[_0xc3b5('0x53')]();var _0xda2763;if(_0x10eb8b['query'][_0xc3b5('0x54')]){_0xda2763=as[_0xc3b5('0x55')](_0x10eb8b[_0xc3b5('0x3c')][_0xc3b5('0x54')]);var _0x4e4586=_0xda2763[_0xc3b5('0x56')];for(var _0x28ad74=0x0;_0x28ad74<_0xda2763['conditions'][_0xc3b5('0x33')];_0x28ad74++){var _0x2a4511=_0xda2763[_0xc3b5('0x57')][_0x28ad74];var _0x3888e6='c';var _0x3c6cd7=_(_0x19190f)[_0xc3b5('0x32')]()[_0xc3b5('0x58')](function(_0x5475ea){return _0x5475ea===_0x2a4511[_0xc3b5('0x49')];});if(_0x3c6cd7)_0x3c6cd7=_0x19190f[_0x2a4511[_0xc3b5('0x49')]];if(!_0x3c6cd7){if(_0x2a4511[_0xc3b5('0x49')]===_0xc3b5('0x59')){var _0x40aadd=_0x2a4511['value']['split'](',')['map'](function(_0x4c03bf){return Number(_0x4c03bf);});_0x40aadd['forEach'](function(_0x4a3643){_0x1160df['or'](_0xc3b5('0x5a'),'%,'+_0x4a3643+',%');});_0x2c9f1e=_[_0xc3b5('0x5b')](_0x2c9f1e,_0x40aadd);}else if(_0x2a4511[_0xc3b5('0x49')]==='User'){_0x3c231e[_0xc3b5('0x5c')]('uc.UserId\x20=\x20?',_0x2a4511['value']);}}else{if(_0x2a4511[_0xc3b5('0x49')]==='dateOfBirth'||_0x3c6cd7[_0xc3b5('0x3a')]===_0xc3b5('0x5d'))_0x2a4511[_0xc3b5('0x5e')]=_0xc3b5('0x5f');var _0x1d87a4=as['buildExpression'](_0x3888e6,_0x3c6cd7[_0xc3b5('0x3b')],_0x2a4511);_0x3c231e[_0x4e4586](_0x1d87a4[_0xc3b5('0x60')],_0x1d87a4[_0xc3b5('0x61')][_0xc3b5('0x62')],_0x1d87a4['value'][_0xc3b5('0x22')]);}}}else{var _0x76810e=_(Object[_0xc3b5('0x32')](_0x10eb8b[_0xc3b5('0x3c')]))[_0xc3b5('0x63')](function(_0x539a17){return _0x19190f[_0xc3b5('0x64')](_0x539a17)?_0x539a17:undefined;})[_0xc3b5('0x65')](function(_0x187dfa){return!_[_0xc3b5('0x66')](_0x187dfa);})[_0xc3b5('0x61')]();if(_0x10eb8b['query'][_0xc3b5('0x67')])_0x76810e[_0xc3b5('0x68')](_0xc3b5('0x67'));if(!_[_0xc3b5('0x69')](_0x76810e)){_0x76810e[_0xc3b5('0x6a')](function(_0x51fb60){if(_0x51fb60==='ListId'){_0x160148[_0xc3b5('0x47')](_0xc3b5('0x6b'),[][_0xc3b5('0x6c')](_0x10eb8b[_0xc3b5('0x3c')][_0x51fb60]));}else if(_0x51fb60===_0xc3b5('0x67')){var _0x4d7586='%'+_0x10eb8b['query'][_0x51fb60]+'%';_0x160148[_0xc3b5('0x47')](_0xc3b5('0x6d'),_0x4d7586);}else{_0x160148[_0xc3b5('0x47')]('c.'+_0x51fb60+_0xc3b5('0x6e'),_0x10eb8b[_0xc3b5('0x3c')][_0x51fb60]);}});}if(_0x10eb8b[_0xc3b5('0x3c')][_0xc3b5('0x6f')]){_0x2c9f1e=_[_0xc3b5('0x70')](_0x10eb8b['query'][_0xc3b5('0x6f')])?_0x10eb8b[_0xc3b5('0x3c')]['tag']:new Array(_0x10eb8b[_0xc3b5('0x3c')][_0xc3b5('0x6f')]);_0x2c9f1e['forEach'](function(_0x106151){_0x1160df['or'](_0xc3b5('0x5a'),'%,'+_0x106151+',%');});}if(_0x10eb8b[_0xc3b5('0x3c')][_0xc3b5('0x65')]){var _0x109770=_0x10eb8b[_0xc3b5('0x3c')][_0xc3b5('0x65')][_0xc3b5('0x71')]('\x5c','\x5c\x5c')['replace']('\x27\x27',_0xc3b5('0x72'));if(_0x109770['split']('\x20')['length']>0x1){_0x3c231e['or'](_0xc3b5('0x73'),qs[_0xc3b5('0x74')](_0x109770),null);}else{if(qs[_0xc3b5('0x75')](_0x109770)){_0x3c231e['or'](_0xc3b5('0x76'),_0x109770+'%');_0x3c231e['or'](_0xc3b5('0x77'),_0x109770+'%');_0x3c231e['or'](_0xc3b5('0x78'),_0x109770+'%');_0x3c231e['or']('c.fax\x20LIKE\x20?',_0x109770+'%');}else if(qs[_0xc3b5('0x79')](_0x109770)){_0x3c231e['or'](_0xc3b5('0x7a'),_0x109770+'%');}else{_0x3c231e['or'](_0xc3b5('0x7b'),'%'+_0x109770+'%');_0x3c231e['or'](_0xc3b5('0x7c'),'%'+_0x109770+'%');_0x3c231e['or'](_0xc3b5('0x7a'),'%'+_0x109770+'%');}}}}_0x160148['where'](_0x3c231e);_0x160148['group'](_0xc3b5('0x7d'));var _0x30c861={'type':db['Sequelize']['QueryTypes'][_0xc3b5('0x7e')],'raw':!![]};var _0x4c7078=_0x160148[_0xc3b5('0x7f')]()[_0xc3b5('0x49')](_0xc3b5('0x7d'));if(_0x39f69a[_0xc3b5('0x45')]){_0x39f69a['order'][_0xc3b5('0x6a')](function(_0x5ec97c){_0x160148[_0xc3b5('0x45')]('c.'+_0x5ec97c[0x0],_0x5ec97c[0x1]==='DESC'?![]:!![]);});}if(!_[_0xc3b5('0x69')](_0x2c9f1e)){_0x160148[_0xc3b5('0x80')](_0x1160df);_0x4c7078[_0xc3b5('0x47')](_0xc3b5('0x81'),_0x2c9f1e);}BPromise[_0xc3b5('0x82')]()['then'](function(){if(_0xda2763&&!_['some'](_0xda2763[_0xc3b5('0x57')],['field','User'])){return _0x10eb8b[_0xc3b5('0x83')]['getLists']({'attributes':['id'],'raw':!![]})[_0xc3b5('0x29')](function(_0x74c8ba){if(_[_0xc3b5('0x69')](_0x74c8ba)){_0x4c7078['where'](_0xc3b5('0x84'));_0x160148[_0xc3b5('0x47')](_0xc3b5('0x84'));}else{_0x4c7078[_0xc3b5('0x47')](_0xc3b5('0x6b'),_[_0xc3b5('0x63')](_0x74c8ba,'id'));_0x160148['where'](_0xc3b5('0x6b'),_[_0xc3b5('0x63')](_0x74c8ba,'id'));}});}else{return;}})[_0xc3b5('0x29')](function(){db[_0xc3b5('0x85')][_0xc3b5('0x3c')](_0x4c7078[_0xc3b5('0x86')](),_0x30c861)[_0xc3b5('0x29')](function(_0x388289){_0x59b6a3[_0xc3b5('0x87')]=_0x388289[_0xc3b5('0x33')];if(_0x59b6a3[_0xc3b5('0x87')]===0x0)return[];return db[_0xc3b5('0x85')][_0xc3b5('0x3c')](_0x316619[_0xc3b5('0x86')](),_0x30c861);})['then'](function(_0x798c20){_0x1ab3c9=_[_0xc3b5('0x88')](_0x798c20,'id');_0x30c861=_[_0xc3b5('0x89')](_0x30c861,{'model':db[_0xc3b5('0x30')],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x10eb8b[_0xc3b5('0x3c')]['fields']){_0x39f69a[_0xc3b5('0x3f')]['forEach'](function(_0x55a871){_0x160148['field']('c.'+_0x55a871);});}else{_0x160148[_0xc3b5('0x49')]('c.id');_0x160148[_0xc3b5('0x49')](_0xc3b5('0x8a'));_0x160148[_0xc3b5('0x49')](_0xc3b5('0x8b'));_0x160148[_0xc3b5('0x49')]('c.phone');_0x160148['field'](_0xc3b5('0x8c'));_0x160148['field'](_0xc3b5('0x8d'));_0x160148[_0xc3b5('0x49')](_0xc3b5('0x8e'));_0x160148[_0xc3b5('0x49')](_0xc3b5('0x8f'));_0x160148['field'](_0xc3b5('0x90'));_0x160148['field'](_0xc3b5('0x91'),'TagIds');}if(_0x39f69a[_0xc3b5('0x43')])_0x160148[_0xc3b5('0x43')](_0x39f69a['limit']);if(_0x39f69a[_0xc3b5('0x44')])_0x160148[_0xc3b5('0x44')](_0x39f69a[_0xc3b5('0x44')]);return db[_0xc3b5('0x85')][_0xc3b5('0x3c')](_0x160148[_0xc3b5('0x86')](),_0x30c861);})[_0xc3b5('0x29')](function(_0x3dbe14){_0x3dbe14[_0xc3b5('0x6a')](function(_0x3fd96c){if(_0x3fd96c[_0xc3b5('0x92')]){_0x3fd96c[_0xc3b5('0x93')]=[];_0x3fd96c[_0xc3b5('0x92')][_0xc3b5('0x94')](',')['forEach'](function(_0x472940){_0x3fd96c[_0xc3b5('0x93')]['push'](_0x1ab3c9[_0x472940]);});}delete _0x3fd96c[_0xc3b5('0x92')];});_0x59b6a3['rows']=_0x3dbe14;return _0x59b6a3;})[_0xc3b5('0x29')](respondWithFilteredResult(_0x413c24,_0x39f69a));});})['catch'](handleError(_0x413c24,null));};exports[_0xc3b5('0x2a')]=function(_0x317c5d,_0x3f572f){return db[_0xc3b5('0x30')][_0xc3b5('0x58')]({'where':{'id':_0x317c5d[_0xc3b5('0x95')]['id']}})[_0xc3b5('0x29')](handleEntityNotFound(_0x3f572f,null))['then'](removeEntity(_0x3f572f,null))['catch'](handleError(_0x3f572f,null));};exports[_0xc3b5('0x31')]=function(_0xca050d,_0x2583f6){return db[_0xc3b5('0x30')]['describe']()[_0xc3b5('0x29')](function(_0x273f50){delete _0x273f50[_0xc3b5('0x96')];for(var _0x383e17=0x0;_0x383e17<Object[_0xc3b5('0x32')](_0x273f50)[_0xc3b5('0x33')];_0x383e17++){var _0xac35ef=Object[_0xc3b5('0x32')](_0x273f50)[_0x383e17];if(!_[_0xc3b5('0x34')](_0xac35ef,_0xc3b5('0x35'))){_0x273f50[_0xac35ef][_0xc3b5('0x97')]=_0xac35ef;_0x273f50[_0xac35ef]['displayName']=_0xac35ef;}}return _0x273f50;})[_0xc3b5('0x29')](function(_0x4a052e){var _0x41af39={'where':{'$or':[{'ListId':_0xca050d[_0xc3b5('0x3c')]['id']},{'ListId':null}]},'raw':!![]};return db['CmCustomField']['findAll'](_0x41af39)[_0xc3b5('0x29')](function(_0xcc5a21){for(var _0x3e989b=0x0;_0x3e989b<_0xcc5a21[_0xc3b5('0x33')];_0x3e989b++){var _0x9ad203=_0xc3b5('0x35')+_0xcc5a21[_0x3e989b]['id'];_0x4a052e[_0x9ad203]['columnName']=_0x9ad203;_0x4a052e[_0x9ad203][_0xc3b5('0x98')]=_0xcc5a21[_0x3e989b]['alias'];_0x4a052e[_0x9ad203][_0xc3b5('0x99')]={'type':_0xcc5a21[_0x3e989b][_0xc3b5('0x3b')],'values':_0xcc5a21[_0x3e989b][_0xc3b5('0x9a')]};}Object[_0xc3b5('0x32')](_0x4a052e)[_0xc3b5('0x6a')](function(_0x59b0bc){if(!_0x4a052e[_0x59b0bc][_0xc3b5('0x64')](_0xc3b5('0x97'))){delete _0x4a052e[_0x59b0bc];}});return _0x4a052e;});})[_0xc3b5('0x29')](respondWithResult(_0x2583f6,null))['catch'](handleError(_0x2583f6,null));};exports['merge']=function(_0x204a35,_0x3d9f59){var _0x51e338;var _0x1d4ba4;var _0x4068f5;if(_0x204a35[_0xc3b5('0x9b')]['id']){delete _0x204a35[_0xc3b5('0x9b')]['id'];}return db[_0xc3b5('0x30')][_0xc3b5('0x9c')]({'where':{'id':[_0x204a35[_0xc3b5('0x9b')]['to'],_0x204a35[_0xc3b5('0x9b')][_0xc3b5('0x4b')]]}})[_0xc3b5('0x29')](function(_0x451f42){if(_0x451f42){if(_0x451f42['length']!==0x2){return null;}_0x451f42[0x0]=_0x451f42[0x0][_0xc3b5('0x9d')]({'plain':!![]});_0x451f42[0x1]=_0x451f42[0x1]['get']({'plain':!![]});delete _0x451f42[0x0]['id'];delete _0x451f42[0x1]['id'];return _[_0xc3b5('0x9e')](_0x451f42[0x0],_0x451f42[0x1],function(_0x5a0366,_0x47c1c7){if(Array[_0xc3b5('0x70')](_0x47c1c7)&&!_0x47c1c7[_0xc3b5('0x33')]){return _0x5a0366;}else if(!_0x47c1c7){return _0x5a0366;}});}})[_0xc3b5('0x29')](handleEntityNotFound(_0x3d9f59,null))['then'](function(_0x4b79dc){if(_0x4b79dc){if(_0x4b79dc[_0xc3b5('0x96')]&&_['isArray'](_0x4b79dc[_0xc3b5('0x96')])){_0x4b79dc[_0xc3b5('0x96')]=_0x4b79dc[_0xc3b5('0x96')][_0xc3b5('0x9f')]();}logger[_0xc3b5('0xa0')]('[CmContact][merge]\x20to\x20%s\x20from\x20%s',_0x204a35[_0xc3b5('0x9b')]['to'],_0x204a35[_0xc3b5('0x9b')]['from']);return db[_0xc3b5('0xa1')][_0xc3b5('0x2a')]({'where':{'ContactId':[_0x204a35[_0xc3b5('0x9b')]['to'],_0x204a35[_0xc3b5('0x9b')]['from']]}})[_0xc3b5('0x29')](function(_0xa9e0f4){logger[_0xc3b5('0xa0')]('[CmContact][merge][destroy][CmHopper],\x20%s',_0xa9e0f4);return db[_0xc3b5('0xa2')][_0xc3b5('0x2a')]({'where':{'ContactId':[_0x204a35[_0xc3b5('0x9b')]['to'],_0x204a35[_0xc3b5('0x9b')][_0xc3b5('0x4b')]]}})['then'](function(_0x33012a){logger[_0xc3b5('0xa0')](_0xc3b5('0xa3'),_0x33012a);return db[_0xc3b5('0x30')][_0xc3b5('0xa4')](_0x4b79dc);});});}})[_0xc3b5('0x29')](function(_0x2baaef){if(_0x2baaef){_0x51e338=_0x2baaef;_0x1d4ba4={'ContactId':_0x51e338['id']};_0x4068f5={'where':{'ContactId':[_0x204a35[_0xc3b5('0x9b')]['to'],_0x204a35[_0xc3b5('0x9b')][_0xc3b5('0x4b')]]}};return db[_0xc3b5('0xa5')][_0xc3b5('0x28')](_0x1d4ba4,_0x4068f5);}})[_0xc3b5('0x29')](function(){if(_0x51e338){return db['ChatMessage']['update'](_0x1d4ba4,_0x4068f5);}})[_0xc3b5('0x29')](function(){if(_0x51e338){return db[_0xc3b5('0xa6')]['update'](_0x1d4ba4,_0x4068f5);}})[_0xc3b5('0x29')](function(){if(_0x51e338){return db['MailInteraction'][_0xc3b5('0x28')](_0x1d4ba4,_0x4068f5);}})[_0xc3b5('0x29')](function(){if(_0x51e338){return db[_0xc3b5('0xa7')]['update'](_0x1d4ba4,_0x4068f5);}})[_0xc3b5('0x29')](function(){if(_0x51e338){return db['MailInteraction'][_0xc3b5('0x28')](_0x1d4ba4,_0x4068f5);}})[_0xc3b5('0x29')](function(){if(_0x51e338){return db[_0xc3b5('0xa7')][_0xc3b5('0x28')](_0x1d4ba4,_0x4068f5);}})[_0xc3b5('0x29')](function(){if(_0x51e338){return db[_0xc3b5('0xa8')][_0xc3b5('0x28')](_0x1d4ba4,_0x4068f5);}})[_0xc3b5('0x29')](function(){if(_0x51e338){return db['SmsMessage'][_0xc3b5('0x28')](_0x1d4ba4,_0x4068f5);}})[_0xc3b5('0x29')](function(){if(_0x51e338){return db['FaxInteraction'][_0xc3b5('0x28')](_0x1d4ba4,_0x4068f5);}})[_0xc3b5('0x29')](function(){if(_0x51e338){return db[_0xc3b5('0xa9')][_0xc3b5('0x28')](_0x1d4ba4,_0x4068f5);}})[_0xc3b5('0x29')](function(){if(_0x51e338){return db[_0xc3b5('0xaa')][_0xc3b5('0x28')](_0x1d4ba4,_0x4068f5);}})[_0xc3b5('0x29')](function(){if(_0x51e338){return db['OpenchannelMessage'][_0xc3b5('0x28')](_0x1d4ba4,_0x4068f5);}})[_0xc3b5('0x29')](function(){if(_0x51e338){return db['CmHopperFinal']['update'](_0x1d4ba4,_0x4068f5);}})[_0xc3b5('0x29')](function(){if(_0x51e338){return db[_0xc3b5('0xab')]['update'](_0x1d4ba4,_0x4068f5);}})['then'](function(){if(_0x51e338){return db[_0xc3b5('0xac')][_0xc3b5('0x28')](_0x1d4ba4,_0x4068f5);}})['then'](function(){if(_0x51e338){return db['VoiceCallReport'][_0xc3b5('0x28')](_0x1d4ba4,_0x4068f5);}})[_0xc3b5('0x29')](function(){if(_0x51e338){return db[_0xc3b5('0xad')][_0xc3b5('0x28')](_0x1d4ba4,_0x4068f5);}})['then'](function(){if(_0x51e338){return db[_0xc3b5('0xae')][_0xc3b5('0x28')](_0x1d4ba4,_0x4068f5);}})[_0xc3b5('0x29')](function(){if(_0x51e338){return db[_0xc3b5('0xaf')][_0xc3b5('0x28')](_0x1d4ba4,_0x4068f5);}})[_0xc3b5('0x29')](function(){if(_0x51e338){return db[_0xc3b5('0xb0')][_0xc3b5('0x28')](_0x1d4ba4,_0x4068f5);}})[_0xc3b5('0x29')](function(){if(_0x51e338){return db[_0xc3b5('0xb1')][_0xc3b5('0x28')](_0x1d4ba4,_0x4068f5);}})[_0xc3b5('0x29')](function(){if(_0x51e338){return db[_0xc3b5('0xb2')][_0xc3b5('0x28')](_0x1d4ba4,_0x4068f5);}})['then'](function(){if(_0x51e338){return db[_0xc3b5('0x30')][_0xc3b5('0x2a')]({'where':{'id':[_0x204a35[_0xc3b5('0x9b')]['to'],_0x204a35[_0xc3b5('0x9b')][_0xc3b5('0x4b')]]}});}})[_0xc3b5('0x29')](function(){if(_0x51e338){return _0x51e338;}})['then'](respondWithResult(_0x3d9f59,null))[_0xc3b5('0xb3')](handleError(_0x3d9f59,null));};exports[_0xc3b5('0xa4')]=function(_0x862b09,_0x157d2c){return db[_0xc3b5('0x30')]['describe']()[_0xc3b5('0x29')](function(_0x5b5ed1){if(_0x862b09[_0xc3b5('0x9b')][_0xc3b5('0x96')]&&_[_0xc3b5('0x70')](_0x862b09[_0xc3b5('0x9b')][_0xc3b5('0x96')])){if(_0x862b09['body'][_0xc3b5('0x96')][_0xc3b5('0x33')]){_0x862b09[_0xc3b5('0x9b')][_0xc3b5('0x96')]=_0x862b09[_0xc3b5('0x9b')][_0xc3b5('0x96')][_0xc3b5('0x9f')](';')+';';}else{_0x862b09[_0xc3b5('0x9b')][_0xc3b5('0x96')]=null;}}else{_0x862b09[_0xc3b5('0x9b')][_0xc3b5('0x96')]=null;}return db[_0xc3b5('0x30')][_0xc3b5('0xa4')](_0x862b09['body'],{'fields':_[_0xc3b5('0x32')](_0x5b5ed1),'raw':!![]});})[_0xc3b5('0x29')](respondWithResult(_0x157d2c,0xc9))['catch'](handleError(_0x157d2c,null));};exports['bulkCreate']=function(_0x344f1b,_0x5a010c){var _0x4c7288=[];var _0x5c6b9f=0x0;var _0x55aef8=0x0;var _0x553e16=0x0;return db[_0xc3b5('0x30')][_0xc3b5('0x31')]()['then'](function(_0x451a5c){return BPromise[_0xc3b5('0xb4')](_0x344f1b[_0xc3b5('0x9b')],function(_0x55bd3a){var _0x9d1169={'where':{'$or':[]},'defaults':_0x55bd3a,'fields':_[_0xc3b5('0x32')](_0x451a5c),'raw':!![]};if(_0x55bd3a[_0xc3b5('0xb5')]){for(var _0x1550b3=0x0;_0x1550b3<_0x55bd3a[_0xc3b5('0xb5')][_0xc3b5('0x33')];_0x1550b3++){var _0x58d4e1={};_0x58d4e1[_0x55bd3a['duplicates'][_0x1550b3]]=_0x55bd3a[_0x55bd3a[_0xc3b5('0xb5')][_0x1550b3]];_0x9d1169[_0xc3b5('0x47')]['$or'][_0xc3b5('0x68')](_0x58d4e1);}_0x9d1169[_0xc3b5('0x47')][_0xc3b5('0xb6')]=_0x55bd3a[_0xc3b5('0xb6')];}return db[_0xc3b5('0x30')]['findOrCreate'](_0x9d1169)['spread'](function(_0x4fab74,_0x3629f8){if(_0x3629f8){_0x5c6b9f++;}else{_0x553e16++;}})[_0xc3b5('0xb3')](function(_0x551e35){console[_0xc3b5('0x2b')](_0x551e35);_0x55aef8++;});});})[_0xc3b5('0x29')](function(_0x122b67){if(_0x122b67){return{'success':_0x5c6b9f,'failure':_0x55aef8,'duplicates':_0x553e16};}})['then'](respondWithResult(_0x5a010c,0xc9))[_0xc3b5('0xb3')](handleError(_0x5a010c,null));};exports['show']=function(_0x776e8,_0x4e0a68,_0x5e254d){var _0x582c2f;return db[_0xc3b5('0x30')][_0xc3b5('0x31')]()[_0xc3b5('0x29')](function(_0x12751c){return db[_0xc3b5('0x30')][_0xc3b5('0x58')]({'where':{'id':_0x776e8['params']['id']},'include':[{'model':db['Tag'],'as':'Tags','attributes':['id','name',_0xc3b5('0x4a')],'required':_0x776e8[_0xc3b5('0x3c')][_0xc3b5('0x6f')]?!![]:![]}],'attributes':_[_0xc3b5('0x32')](_0x12751c)});})[_0xc3b5('0x29')](function(_0x3760e8){_0x582c2f=_0x3760e8[_0xc3b5('0x9d')]({'plain':!![]});var _0x84035={'where':{'$and':[{'ListId':{'$ne':null}}]}};if(_0x3760e8&&_0x3760e8[_0xc3b5('0xb6')]){if(_0x3760e8[_0xc3b5('0xb6')]){_0x84035[_0xc3b5('0x47')][_0xc3b5('0xb7')][_0xc3b5('0x68')]({'ListId':{'$ne':_0x3760e8[_0xc3b5('0xb6')]}});}}return db['CmCustomField'][_0xc3b5('0x9c')](_0x84035);})['then'](function(_0x334d99){return _[_0xc3b5('0xb8')](_0x582c2f,_[_0xc3b5('0x63')](_0x334d99,function(_0x4305d3){return util[_0xc3b5('0xb9')](_0xc3b5('0xba'),_0x4305d3['id']);}));})[_0xc3b5('0x29')](handleEntityNotFound(_0x4e0a68,null))['then'](respondWithResult(_0x4e0a68,null))['catch'](handleError(_0x4e0a68,null));};exports[_0xc3b5('0x28')]=function(_0x14fcab,_0x37d8c8){var _0x33adf8;if(_0x14fcab[_0xc3b5('0x9b')]['id']){delete _0x14fcab[_0xc3b5('0x9b')]['id'];}return db[_0xc3b5('0x30')][_0xc3b5('0x58')]({'where':{'id':_0x14fcab[_0xc3b5('0x95')]['id']}})[_0xc3b5('0x29')](handleEntityNotFound(_0x37d8c8,null))[_0xc3b5('0x29')](saveUpdates(_0x14fcab[_0xc3b5('0x9b')],null))[_0xc3b5('0x29')](function(_0xa961cd){_0x33adf8=_0xa961cd;var _0x1c83b7={'where':{'$and':[{'ListId':{'$ne':null}}]}};if(_0xa961cd&&_0xa961cd[_0xc3b5('0xb6')]){if(_0xa961cd[_0xc3b5('0xb6')]){_0x1c83b7[_0xc3b5('0x47')][_0xc3b5('0xb7')][_0xc3b5('0x68')]({'ListId':{'$ne':_0xa961cd['ListId']}});}}return db[_0xc3b5('0x36')][_0xc3b5('0x9c')](_0x1c83b7);})['then'](function(_0x5907b2){if(_0x5907b2){return _['omit'](_[_0xc3b5('0xbb')](_0x14fcab[_0xc3b5('0x9b')],function(_0x3622dd,_0x5eadac){return _['startsWith'](_0x5eadac,_0xc3b5('0x35'));}),_['map'](_0x5907b2,function(_0x2db503){return util['format'](_0xc3b5('0xba'),_0x2db503['id']);}));}})['then'](function(_0x2c2e06){if(_0x2c2e06&&!_[_0xc3b5('0x69')](_0x2c2e06)){var _0x2bd58c=squel[_0xc3b5('0x28')]()[_0xc3b5('0xbc')](_0xc3b5('0x4d'))[_0xc3b5('0xbd')](_0x2c2e06)['where'](_0xc3b5('0xbe'),_0x14fcab['params']['id'])[_0xc3b5('0xbf')]();return db[_0xc3b5('0x85')][_0xc3b5('0x3c')](_0x2bd58c[_0xc3b5('0x60')],{'replacements':_0x2bd58c[_0xc3b5('0x9a')]});}})[_0xc3b5('0x29')](function(){if(_0x14fcab[_0xc3b5('0x9b')][_0xc3b5('0xc0')]&&_0x33adf8){return db['CmHopper'][_0xc3b5('0x28')]({'phone':_0x14fcab[_0xc3b5('0x9b')][_0xc3b5('0xc0')]},{'where':{'ContactId':_0x33adf8['id']}});}})['then'](function(){return _0x33adf8;})[_0xc3b5('0x29')](respondWithResult(_0x37d8c8,null))['catch'](handleError(_0x37d8c8,null));};exports[_0xc3b5('0xc1')]=function(_0x4d9901,_0x43e8c2,_0x2d3ff2){var _0x3f5562={};var _0x20d9af={};var _0x26b24f;var _0x73d7ab;return db[_0xc3b5('0x30')]['findOne']({'where':{'id':_0x4d9901[_0xc3b5('0x95')]['id']}})['then'](handleEntityNotFound(_0x43e8c2,null))[_0xc3b5('0x29')](function(_0x5d6bab){if(_0x5d6bab){_0x26b24f=_0x5d6bab;_0x20d9af[_0xc3b5('0x41')]=_[_0xc3b5('0x32')](db[_0xc3b5('0x59')][_0xc3b5('0xc2')]);_0x20d9af[_0xc3b5('0x3c')]=_[_0xc3b5('0x32')](_0x4d9901[_0xc3b5('0x3c')]);_0x20d9af[_0xc3b5('0x3d')]=_['intersection'](_0x20d9af['model'],_0x20d9af[_0xc3b5('0x3c')]);_0x3f5562[_0xc3b5('0x3f')]=_['intersection'](_0x20d9af[_0xc3b5('0x41')],qs[_0xc3b5('0x40')](_0x4d9901[_0xc3b5('0x3c')][_0xc3b5('0x40')]));_0x3f5562[_0xc3b5('0x3f')]=_0x3f5562[_0xc3b5('0x3f')][_0xc3b5('0x33')]?_0x3f5562[_0xc3b5('0x3f')]:_0x20d9af[_0xc3b5('0x41')];_0x3f5562[_0xc3b5('0x45')]=qs[_0xc3b5('0x46')](_0x4d9901[_0xc3b5('0x3c')][_0xc3b5('0x46')]);_0x3f5562[_0xc3b5('0x47')]=qs['filters'](_[_0xc3b5('0xc3')](_0x4d9901[_0xc3b5('0x3c')],_0x20d9af['filters']));if(_0x4d9901[_0xc3b5('0x3c')][_0xc3b5('0x65')]){_0x3f5562[_0xc3b5('0x47')]=_[_0xc3b5('0x89')](_0x3f5562[_0xc3b5('0x47')],{'$or':_[_0xc3b5('0x63')](_0x3f5562['attributes'],function(_0x58f9bf){var _0x160bc5={};_0x160bc5[_0x58f9bf]={'$like':'%'+_0x4d9901[_0xc3b5('0x3c')]['filter']+'%'};return _0x160bc5;})});}_0x3f5562=_[_0xc3b5('0x89')]({},_0x3f5562,_0x4d9901[_0xc3b5('0xc4')]);return _0x26b24f[_0xc3b5('0xc1')](_0x3f5562);}})[_0xc3b5('0x29')](function(_0x4fe9f9){if(_0x4fe9f9){_0x73d7ab=_0x4fe9f9['length'];if(!_0x4d9901[_0xc3b5('0x3c')][_0xc3b5('0x64')]('nolimit')){_0x3f5562[_0xc3b5('0x43')]=qs[_0xc3b5('0x43')](_0x4d9901[_0xc3b5('0x3c')][_0xc3b5('0x43')]);_0x3f5562[_0xc3b5('0x44')]=qs[_0xc3b5('0x44')](_0x4d9901[_0xc3b5('0x3c')][_0xc3b5('0x44')]);}return _0x26b24f[_0xc3b5('0xc1')](_0x3f5562);}})[_0xc3b5('0x29')](function(_0x4f8a9d){if(_0x4f8a9d){return _0x4f8a9d?{'count':_0x73d7ab,'rows':_0x4f8a9d}:null;}})[_0xc3b5('0x29')](respondWithResult(_0x43e8c2,null))[_0xc3b5('0xb3')](handleError(_0x43e8c2,null));};exports['setTags']=function(_0x186257,_0x4702af,_0x512551){if(_0x186257[_0xc3b5('0x9b')]['id']){delete _0x186257[_0xc3b5('0x9b')]['id'];}return db[_0xc3b5('0x30')][_0xc3b5('0x37')]({'where':{'id':_0x186257[_0xc3b5('0x95')]['id']}})[_0xc3b5('0x29')](handleEntityNotFound(_0x4702af,null))[_0xc3b5('0x29')](function(_0x5571f1){if(_0x5571f1){return _0x5571f1[_0xc3b5('0xc5')](_0x186257[_0xc3b5('0x9b')][_0xc3b5('0xc6')]||[]);}return null;})['then'](respondWithResult(_0x4702af,null))[_0xc3b5('0xb3')](handleError(_0x4702af,null));};exports['getHoppers']=function(_0x57b12c,_0x85caba,_0x3e9b3f){var _0x1954db={'raw':![],'where':{}};var _0x6c0e90={};var _0x17fcd5={'count':0x0,'rows':[]};return db['CmContact']['findOne']({'where':{'id':_0x57b12c[_0xc3b5('0x95')]['id']}})[_0xc3b5('0x29')](handleEntityNotFound(_0x85caba,null))[_0xc3b5('0x29')](function(_0x45ce96){if(_0x45ce96){_0x6c0e90[_0xc3b5('0x41')]=_[_0xc3b5('0x32')](db[_0xc3b5('0xa1')][_0xc3b5('0xc2')]);_0x6c0e90['query']=_[_0xc3b5('0x32')](_0x57b12c[_0xc3b5('0x3c')]);_0x6c0e90[_0xc3b5('0x3d')]=_[_0xc3b5('0x3e')](_0x6c0e90[_0xc3b5('0x41')],_0x6c0e90[_0xc3b5('0x3c')]);_0x1954db[_0xc3b5('0x3f')]=_[_0xc3b5('0x3e')](_0x6c0e90[_0xc3b5('0x41')],qs[_0xc3b5('0x40')](_0x57b12c[_0xc3b5('0x3c')][_0xc3b5('0x40')]));_0x1954db['attributes']=_0x1954db[_0xc3b5('0x3f')][_0xc3b5('0x33')]?_0x1954db[_0xc3b5('0x3f')]:_0x6c0e90[_0xc3b5('0x41')];if(!_0x57b12c[_0xc3b5('0x3c')][_0xc3b5('0x64')]('nolimit')){_0x1954db[_0xc3b5('0x43')]=qs[_0xc3b5('0x43')](_0x57b12c['query'][_0xc3b5('0x43')]);_0x1954db[_0xc3b5('0x44')]=qs[_0xc3b5('0x44')](_0x57b12c['query']['offset']);}_0x1954db[_0xc3b5('0x45')]=qs[_0xc3b5('0x46')](_0x57b12c[_0xc3b5('0x3c')]['sort']);_0x1954db[_0xc3b5('0x47')]=qs[_0xc3b5('0x3d')](_[_0xc3b5('0xc3')](_0x57b12c[_0xc3b5('0x3c')],_0x6c0e90[_0xc3b5('0x3d')]));_0x1954db[_0xc3b5('0x47')][_0xc3b5('0xc7')]=_0x45ce96['id'];if(_0x57b12c[_0xc3b5('0x3c')][_0xc3b5('0x65')]){_0x1954db[_0xc3b5('0x47')]=_[_0xc3b5('0x89')](_0x1954db[_0xc3b5('0x47')],{'$or':_[_0xc3b5('0x63')](_0x1954db['attributes'],function(_0x2f3480){var _0x4f36f4={};_0x4f36f4[_0x2f3480]={'$like':'%'+_0x57b12c[_0xc3b5('0x3c')]['filter']+'%'};return _0x4f36f4;})});}_0x1954db=_['merge']({},_0x1954db,_0x57b12c[_0xc3b5('0xc4')]);return db[_0xc3b5('0xa1')][_0xc3b5('0x87')]({'where':_0x1954db['where']})[_0xc3b5('0x29')](function(_0x1f4e87){_0x17fcd5[_0xc3b5('0x87')]=_0x1f4e87;if(_0x57b12c[_0xc3b5('0x3c')][_0xc3b5('0xc8')]){_0x1954db[_0xc3b5('0xc9')]=[{'all':!![]}];}return db[_0xc3b5('0xa1')][_0xc3b5('0x9c')](_0x1954db);})['then'](function(_0x154d63){_0x17fcd5[_0xc3b5('0xca')]=_0x154d63;return _0x17fcd5;});}})['then'](respondWithFilteredResult(_0x85caba,_0x1954db))[_0xc3b5('0xb3')](handleError(_0x85caba,null));};exports[_0xc3b5('0xcb')]=function(_0x3aa131,_0x4b068b,_0x466f15){var _0x51b01d={'raw':!![],'where':{}};var _0x4b3861={};var _0x1aeb05={'count':0x0,'rows':[]};return db[_0xc3b5('0x30')][_0xc3b5('0x37')]({'where':{'id':_0x3aa131[_0xc3b5('0x95')]['id']}})[_0xc3b5('0x29')](handleEntityNotFound(_0x4b068b,null))[_0xc3b5('0x29')](function(_0x5c5d1e){if(_0x5c5d1e){_0x4b3861[_0xc3b5('0x41')]=_[_0xc3b5('0x32')](db[_0xc3b5('0xab')]['rawAttributes']);_0x4b3861[_0xc3b5('0x3c')]=_[_0xc3b5('0x32')](_0x3aa131[_0xc3b5('0x3c')]);_0x4b3861[_0xc3b5('0x3d')]=_[_0xc3b5('0x3e')](_0x4b3861[_0xc3b5('0x41')],_0x4b3861[_0xc3b5('0x3c')]);_0x51b01d[_0xc3b5('0x3f')]=_['intersection'](_0x4b3861[_0xc3b5('0x41')],qs[_0xc3b5('0x40')](_0x3aa131[_0xc3b5('0x3c')]['fields']));_0x51b01d[_0xc3b5('0x3f')]=_0x51b01d[_0xc3b5('0x3f')][_0xc3b5('0x33')]?_0x51b01d[_0xc3b5('0x3f')]:_0x4b3861[_0xc3b5('0x41')];if(!_0x3aa131['query']['hasOwnProperty']('nolimit')){_0x51b01d['limit']=qs['limit'](_0x3aa131[_0xc3b5('0x3c')]['limit']);_0x51b01d['offset']=qs[_0xc3b5('0x44')](_0x3aa131[_0xc3b5('0x3c')][_0xc3b5('0x44')]);}_0x51b01d[_0xc3b5('0x45')]=qs[_0xc3b5('0x46')](_0x3aa131[_0xc3b5('0x3c')][_0xc3b5('0x46')]);_0x51b01d[_0xc3b5('0x47')]=qs[_0xc3b5('0x3d')](_[_0xc3b5('0xc3')](_0x3aa131['query'],_0x4b3861[_0xc3b5('0x3d')]));_0x51b01d['where'][_0xc3b5('0xc7')]=_0x5c5d1e['id'];if(_0x3aa131['query'][_0xc3b5('0x65')]){_0x51b01d[_0xc3b5('0x47')]=_['merge'](_0x51b01d[_0xc3b5('0x47')],{'$or':_['map'](_0x51b01d[_0xc3b5('0x3f')],function(_0x362cf4){var _0x405da9={};_0x405da9[_0x362cf4]={'$like':'%'+_0x3aa131['query']['filter']+'%'};return _0x405da9;})});}_0x51b01d=_[_0xc3b5('0x89')]({},_0x51b01d,_0x3aa131[_0xc3b5('0xc4')]);return db['CmHopperHistory'][_0xc3b5('0x87')]({'where':_0x51b01d[_0xc3b5('0x47')]})[_0xc3b5('0x29')](function(_0x39010c){_0x1aeb05['count']=_0x39010c;if(_0x3aa131[_0xc3b5('0x3c')][_0xc3b5('0xc8')]){_0x51b01d['include']=[{'all':!![]}];}return db[_0xc3b5('0xab')][_0xc3b5('0x9c')](_0x51b01d);})[_0xc3b5('0x29')](function(_0x40d79a){_0x1aeb05[_0xc3b5('0xca')]=_0x40d79a;return _0x1aeb05;});}})[_0xc3b5('0x29')](respondWithFilteredResult(_0x4b068b,_0x51b01d))['catch'](handleError(_0x4b068b,null));};exports[_0xc3b5('0xcc')]=function(_0x25f14e,_0x1f7cab,_0x3730aa){var _0x4bbd19={'raw':!![],'where':{}};var _0x33f1c0={};var _0x337aac={'count':0x0,'rows':[]};return db[_0xc3b5('0x30')][_0xc3b5('0x37')]({'where':{'id':_0x25f14e[_0xc3b5('0x95')]['id']}})['then'](handleEntityNotFound(_0x1f7cab,null))['then'](function(_0x1fa44f){if(_0x1fa44f){_0x33f1c0[_0xc3b5('0x41')]=_['keys'](db['CmHopperFinal'][_0xc3b5('0xc2')]);_0x33f1c0['query']=_[_0xc3b5('0x32')](_0x25f14e[_0xc3b5('0x3c')]);_0x33f1c0[_0xc3b5('0x3d')]=_['intersection'](_0x33f1c0[_0xc3b5('0x41')],_0x33f1c0['query']);_0x4bbd19['attributes']=_[_0xc3b5('0x3e')](_0x33f1c0[_0xc3b5('0x41')],qs[_0xc3b5('0x40')](_0x25f14e[_0xc3b5('0x3c')]['fields']));_0x4bbd19['attributes']=_0x4bbd19[_0xc3b5('0x3f')][_0xc3b5('0x33')]?_0x4bbd19[_0xc3b5('0x3f')]:_0x33f1c0['model'];if(!_0x25f14e[_0xc3b5('0x3c')][_0xc3b5('0x64')]('nolimit')){_0x4bbd19['limit']=qs[_0xc3b5('0x43')](_0x25f14e[_0xc3b5('0x3c')][_0xc3b5('0x43')]);_0x4bbd19[_0xc3b5('0x44')]=qs[_0xc3b5('0x44')](_0x25f14e['query'][_0xc3b5('0x44')]);}_0x4bbd19[_0xc3b5('0x45')]=qs[_0xc3b5('0x46')](_0x25f14e[_0xc3b5('0x3c')][_0xc3b5('0x46')]);_0x4bbd19[_0xc3b5('0x47')]=qs[_0xc3b5('0x3d')](_[_0xc3b5('0xc3')](_0x25f14e['query'],_0x33f1c0[_0xc3b5('0x3d')]));_0x4bbd19[_0xc3b5('0x47')][_0xc3b5('0xc7')]=_0x1fa44f['id'];if(_0x25f14e[_0xc3b5('0x3c')][_0xc3b5('0x65')]){_0x4bbd19['where']=_[_0xc3b5('0x89')](_0x4bbd19[_0xc3b5('0x47')],{'$or':_[_0xc3b5('0x63')](_0x4bbd19[_0xc3b5('0x3f')],function(_0x25d03e){var _0x4abfd1={};_0x4abfd1[_0x25d03e]={'$like':'%'+_0x25f14e[_0xc3b5('0x3c')][_0xc3b5('0x65')]+'%'};return _0x4abfd1;})});}_0x4bbd19=_[_0xc3b5('0x89')]({},_0x4bbd19,_0x25f14e[_0xc3b5('0xc4')]);return db[_0xc3b5('0xcd')][_0xc3b5('0x87')]({'where':_0x4bbd19['where']})[_0xc3b5('0x29')](function(_0xc2a001){_0x337aac['count']=_0xc2a001;if(_0x25f14e[_0xc3b5('0x3c')][_0xc3b5('0xc8')]){_0x4bbd19[_0xc3b5('0xc9')]=[{'all':!![]}];}return db[_0xc3b5('0xcd')][_0xc3b5('0x9c')](_0x4bbd19);})['then'](function(_0x2498f9){_0x337aac[_0xc3b5('0xca')]=_0x2498f9;return _0x337aac;});}})[_0xc3b5('0x29')](respondWithFilteredResult(_0x1f7cab,_0x4bbd19))[_0xc3b5('0xb3')](handleError(_0x1f7cab,null));};exports[_0xc3b5('0xce')]=function(_0x3f671b,_0x4a11d4,_0x3bc5f7){var _0x4dbeed={'raw':!![],'where':{}};var _0x2396c2={};var _0x244f0a={'count':0x0,'rows':[]};return db['CmContact']['findOne']({'where':{'id':_0x3f671b[_0xc3b5('0x95')]['id']}})[_0xc3b5('0x29')](handleEntityNotFound(_0x4a11d4,null))[_0xc3b5('0x29')](function(_0x1f1d05){if(_0x1f1d05){_0x2396c2['model']=_[_0xc3b5('0x32')](db[_0xc3b5('0xb2')][_0xc3b5('0xc2')]);_0x2396c2[_0xc3b5('0x3c')]=_[_0xc3b5('0x32')](_0x3f671b['query']);_0x2396c2[_0xc3b5('0x3d')]=_[_0xc3b5('0x3e')](_0x2396c2[_0xc3b5('0x41')],_0x2396c2['query']);_0x4dbeed[_0xc3b5('0x3f')]=_[_0xc3b5('0x3e')](_0x2396c2['model'],qs[_0xc3b5('0x40')](_0x3f671b[_0xc3b5('0x3c')]['fields']));_0x4dbeed[_0xc3b5('0x3f')]=_0x4dbeed[_0xc3b5('0x3f')][_0xc3b5('0x33')]?_0x4dbeed[_0xc3b5('0x3f')]:_0x2396c2[_0xc3b5('0x41')];if(!_0x3f671b[_0xc3b5('0x3c')][_0xc3b5('0x64')](_0xc3b5('0x42'))){_0x4dbeed[_0xc3b5('0x43')]=qs[_0xc3b5('0x43')](_0x3f671b[_0xc3b5('0x3c')][_0xc3b5('0x43')]);_0x4dbeed[_0xc3b5('0x44')]=qs[_0xc3b5('0x44')](_0x3f671b[_0xc3b5('0x3c')]['offset']);}_0x4dbeed[_0xc3b5('0x45')]=qs['sort'](_0x3f671b[_0xc3b5('0x3c')]['sort']);_0x4dbeed[_0xc3b5('0x47')]=qs[_0xc3b5('0x3d')](_[_0xc3b5('0xc3')](_0x3f671b['query'],_0x2396c2[_0xc3b5('0x3d')]));_0x4dbeed['where'][_0xc3b5('0xc7')]=_0x1f1d05['id'];if(_0x3f671b[_0xc3b5('0x3c')]['filter']){_0x4dbeed[_0xc3b5('0x47')]=_[_0xc3b5('0x89')](_0x4dbeed[_0xc3b5('0x47')],{'$or':_[_0xc3b5('0x63')](_0x4dbeed[_0xc3b5('0x3f')],function(_0xae7843){var _0x3e62fb={};_0x3e62fb[_0xae7843]={'$like':'%'+_0x3f671b[_0xc3b5('0x3c')][_0xc3b5('0x65')]+'%'};return _0x3e62fb;})});}_0x4dbeed=_[_0xc3b5('0x89')]({},_0x4dbeed,_0x3f671b['options']);return db['JscriptySessionReport'][_0xc3b5('0x87')]({'where':_0x4dbeed[_0xc3b5('0x47')]})[_0xc3b5('0x29')](function(_0x222a6b){_0x244f0a[_0xc3b5('0x87')]=_0x222a6b;if(_0x3f671b['query'][_0xc3b5('0xc8')]){_0x4dbeed['include']=[{'all':!![]}];}return db[_0xc3b5('0xb2')]['findAll'](_0x4dbeed);})['then'](function(_0x58fbe0){_0x244f0a[_0xc3b5('0xca')]=_0x58fbe0;return _0x244f0a;});}})[_0xc3b5('0x29')](respondWithFilteredResult(_0x4a11d4,_0x4dbeed))[_0xc3b5('0xb3')](handleError(_0x4a11d4,null));};exports[_0xc3b5('0xcf')]=function(_0x3ce6f5,_0x4dba5a,_0x52af30){try{if(!_0x3ce6f5[_0xc3b5('0x9b')]['ListId']){throw new Error(_0xc3b5('0xd0'));}if(!_0x3ce6f5[_0xc3b5('0x9b')]['binding_keys']){throw new Error(_0xc3b5('0xd1'));}if(!_0x3ce6f5[_0xc3b5('0x9b')][_0xc3b5('0xd2')]){throw new Error(_0xc3b5('0xd3'));}if(!_0x3ce6f5[_0xc3b5('0x9b')]['socket_timestamp']){throw new Error(_0xc3b5('0xd4'));}var _0x553464=_0x3ce6f5[_0xc3b5('0x9b')][_0xc3b5('0xd5')][_0xc3b5('0x94')](',');var _0x4248ec=_0x3ce6f5[_0xc3b5('0x9b')][_0xc3b5('0xd2')]['split'](',');if(!_0x553464[_0xc3b5('0x33')]||!_0x4248ec[_0xc3b5('0x33')]||_0x553464[_0xc3b5('0x33')]!==_0x4248ec['length']){throw new Error(_0xc3b5('0xd6'));}_0x3ce6f5['body']['fields']=_[_0xc3b5('0xd7')](_0x553464,_0x4248ec);if(!_0x3ce6f5['body']['fields'][_0xc3b5('0xc0')]){throw new Error(_0xc3b5('0xd8'));}if(!_0x3ce6f5[_0xc3b5('0x9b')][_0xc3b5('0x40')][_0xc3b5('0xd9')]){throw new Error('No\x20firstName\x20column\x20specified');}var _0x1ff9dd=path[_0xc3b5('0x9f')](config[_0xc3b5('0xda')],'server/files/tmp',_0x3ce6f5['file'][_0xc3b5('0xdb')]);fs[_0xc3b5('0xdc')](_0x1ff9dd,parseInt(_0xc3b5('0xdd'),0x8));var _0x1199da=require(_0xc3b5('0xde'))[_0xc3b5('0xdf')](path[_0xc3b5('0x9f')](__dirname,'../../components/import/cm/csv'),[_0x1ff9dd,_0x3ce6f5['body']['binding_keys'],_0x3ce6f5['body']['binding_values'],_0x3ce6f5[_0xc3b5('0x9b')][_0xc3b5('0xb6')],_0x3ce6f5[_0xc3b5('0x9b')]['CompanyId'],_0x3ce6f5[_0xc3b5('0x9b')][_0xc3b5('0xb5')],_0x3ce6f5['body'][_0xc3b5('0xe0')]]);return _0x4dba5a[_0xc3b5('0x21')](0xc8)['json']({'message':'File\x20uploaded\x20correctly!','pid':_0x1199da[_0xc3b5('0xe1')]});}catch(_0xd6408b){return _0x4dba5a['status'](0x1f4)[_0xc3b5('0x2e')](_0xd6408b);}};exports['upload']=function(_0x393b92,_0x4cc780,_0x440114){var _0x270449=fs[_0xc3b5('0xe2')](_0x393b92['file'][_0xc3b5('0x9')]);Papa[_0xc3b5('0xe3')](_0x270449,{'header':!![],'skipEmptyLines':!![],'preview':0x1,'complete':function(_0xf8b7b1){return _0x4cc780[_0xc3b5('0x21')](0xc8)[_0xc3b5('0x23')]({'file':_0x393b92['file'],'fields':_0xf8b7b1[_0xc3b5('0xe4')]['fields']});}});};exports[_0xc3b5('0xe5')]=function(_0xf6fc12,_0x4c63dd,_0x2db666){return db[_0xc3b5('0xe6')]['findAll']({'raw':!![],'attributes':['id'],'where':{'role':'agent'}})[_0xc3b5('0x29')](function(_0x57b078){var _0x525435=![];if(!_0xf6fc12['body'][_0xc3b5('0xb6')]){throw new Error(_0xc3b5('0xd0'));}if(!_0xf6fc12[_0xc3b5('0x9b')][_0xc3b5('0xe7')][_0xc3b5('0xc0')]){throw new Error(_0xc3b5('0xd8'));}if(!_0xf6fc12[_0xc3b5('0x9b')][_0xc3b5('0xe7')][_0xc3b5('0xd9')]){throw new Error(_0xc3b5('0xe8'));}if(!_0xf6fc12[_0xc3b5('0x9b')][_0xc3b5('0xe0')]){throw new Error('Unable\x20to\x20synchronize\x20socket,\x20no\x20timestamp\x20passed');}var _0x17d574=require(_0xc3b5('0xde'))[_0xc3b5('0xdf')](path[_0xc3b5('0x9f')](__dirname,_0xc3b5('0xe9')),[_0xf6fc12[_0xc3b5('0x95')]['id'],JSON[_0xc3b5('0xea')](_0xf6fc12['body']),JSON[_0xc3b5('0xea')](_0x57b078)]);_0x17d574['on']('message',function(_0x380f7c){_0x525435=!![];return _0x4c63dd[_0xc3b5('0x21')](0xc8)[_0xc3b5('0x23')]({'message':'start\x20child\x20process\x20correctly!','pid':_0x17d574['pid']});});_0x17d574['on']('exit',function(_0x4ed96d){if(_0x4ed96d&&!_0x525435){return _0x4c63dd[_0xc3b5('0x21')](0x1f4)['json']({'message':'error\x20child\x20process','pid':_0x17d574[_0xc3b5('0xe1')]});}});})[_0xc3b5('0xb3')](handleError(_0x4c63dd,null));};