60d684a8e9470d651702a7c81799f54e22f6d3cc
[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 _0xaebc=['show','params','$and','omit','format','cf_%d','table','setFields','toParam','phone','getTags','rawAttributes','setTags','ids','getHoppers','ContactId','includeAll','getHopperHistories','options','include','CmHopperFinal','uploadCsv','No\x20ListId\x20specified','binding_keys','No\x20association\x20keys\x20specified!','No\x20association\x20values\x20specified!','socket_timestamp','Unable\x20to\x20synchronize\x20socket,\x20no\x20timestamp\x20passed','binding_values','zipObject','No\x20phone\x20column\x20specified','firstName','root','file','chmodSync','0777','child_process','fork','CompanyId','File\x20uploaded\x20correctly!','pid','createReadStream','parse','meta','binding','No\x20firstName\x20column\x20specified','../../components/import/cm/csv2','stringify','message','start\x20child\x20process\x20correctly!','exit','error\x20child\x20process','getJourney','mail','chat','sms','openchannel','fax','voice','-createdAt','channel','includes','Invalid\x20channel','range','isValid','Invalid\x20date\x20for\x20range\x20from\x20filter','Invalid\x20date\x20for\x20range\x20to\x20filter','Invalid\x20createdAt\x20filter','uniqueid','source','callerid','starttime','endtime','duration','note','createdAt','userDisposition','userSecondDisposition','userThirdDisposition','UserId','fullname','DESC','findAndCountAll','Website','Account','closed','closedAt','disposition','secondDisposition','key','Owner','browserName','customerIp','customerPort','deviceModel','osName','ratingMessage','ratingValue','referer','subject','substatus','threadId','startCase','Interaction','flatten','sortBy','reverse','slice','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','path','fs-extra','lodash','squel','jsforce','desk.js','to-csv','querystring','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/environment','../../config/license/util','../../mysqldb','redis','defaults','./cmContact.socket','register','sendStatus','end','json','offset','undefined','count','limit','status','set','Content-Range','apply','save','update','then','destroy','error','stack','name','send','CmContact','describe','length','cf_','CmCustomField','findOne','trimStart','all','fieldType','keys','query','filters','model','attributes','intersection','fields','hasOwnProperty','nolimit','order','sort','where','pick','field','color','tools_tags','select','from','cm_contacts','left_join','uc.CmContactId\x20=\x20c.id','cm_contact_has_tags','ct.CmContactId\x20=\x20c.id','t.id\x20=\x20ct.TagId','c.deletedAt\x20IS\x20NULL','expr','search','sqlOperator','conditions','Tag','value','split','map','forEach','CONCAT(\x27,\x27,\x20`TagIds`,\x20\x27,\x27)\x20LIKE\x20?','union','User','and','buildExpression','text','start','filter','Contact','push','isEmpty','ListId','c.ListId\x20IN\x20?','tag','isArray','replace','MATCH\x20(c.firstName,\x20c.lastName,\x20c.phone,\x20c.mobile,\x20c.fax,\x20c.email)\x20AGAINST\x20(?\x20IN\x20BOOLEAN\x20MODE)','getFullTextValue','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?','group','c.id','Sequelize','QueryTypes','SELECT','clone','having','resolve','user','role','agent','getLists','c.ListId\x20IS\x20NULL','sequelize','toString','keyBy','merge','c.firstName','c.lastName','c.phone','c.mobile','c.email','c.ListId','c.createdAt','c.deletedAt','c.CompanyId','TagIds','Tags','rows','find','catch','tags','startsWith','displayName','findAll','columnName','alias','custom','type','values','body','get','mergeWith','join','info','CmHopper','[CmContact][merge][destroy][CmHopper],\x20%s','CmHopperBlack','[CmContact][merge][destroy][CmHopperBlack],\x20%s','create','ChatInteraction','ChatMessage','ChatOfflineMessage','MailInteraction','MailMessage','SmsInteraction','FaxInteraction','FaxMessage','OpenchannelMessage','CmHopperHistory','ReportAgentPreview','VoiceCallReport','FaxQueueReport','MailQueueReport','OpenchannelQueueReport','SmsQueueReport','JscriptySessionReport','bulkCreate','each','duplicates','spread'];(function(_0x4f73d3,_0x2dee65){var _0x163f9c=function(_0x5b5faa){while(--_0x5b5faa){_0x4f73d3['push'](_0x4f73d3['shift']());}};_0x163f9c(++_0x2dee65);}(_0xaebc,0x6c));var _0xcaeb=function(_0x3b90ab,_0x174a22){_0x3b90ab=_0x3b90ab-0x0;var _0x206e92=_0xaebc[_0x3b90ab];return _0x206e92;};'use strict';var emlformat=require(_0xcaeb('0x0'));var rimraf=require(_0xcaeb('0x1'));var zipdir=require(_0xcaeb('0x2'));var jsonpatch=require(_0xcaeb('0x3'));var rp=require(_0xcaeb('0x4'));var moment=require(_0xcaeb('0x5'));var BPromise=require(_0xcaeb('0x6'));var Mustache=require(_0xcaeb('0x7'));var util=require('util');var path=require(_0xcaeb('0x8'));var sox=require('sox');var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0xcaeb('0x9'));var _=require(_0xcaeb('0xa'));var squel=require(_0xcaeb('0xb'));var crypto=require('crypto');var jsforce=require(_0xcaeb('0xc'));var deskjs=require(_0xcaeb('0xd'));var toCsv=require(_0xcaeb('0xe'));var querystring=require(_0xcaeb('0xf'));var Papa=require('papaparse');var Redis=require('ioredis');var authService=require(_0xcaeb('0x10'));var qs=require(_0xcaeb('0x11'));var as=require(_0xcaeb('0x12'));var hardwareService=require(_0xcaeb('0x13'));var logger=require(_0xcaeb('0x14'))(_0xcaeb('0x15'));var utils=require('../../config/utils');var config=require(_0xcaeb('0x16'));var licenseUtil=require(_0xcaeb('0x17'));var db=require(_0xcaeb('0x18'))['db'];config[_0xcaeb('0x19')]=_[_0xcaeb('0x1a')](config[_0xcaeb('0x19')],{'host':'localhost','port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0xcaeb('0x19')]));require(_0xcaeb('0x1b'))[_0xcaeb('0x1c')](socket);function respondWithStatusCode(_0x51f6eb,_0x49d93e){_0x49d93e=_0x49d93e||0xcc;return function(_0x446ea1){if(_0x446ea1){return _0x51f6eb[_0xcaeb('0x1d')](_0x49d93e);}return _0x51f6eb['status'](_0x49d93e)[_0xcaeb('0x1e')]();};}function respondWithResult(_0x48ebac,_0x3d67bc){_0x3d67bc=_0x3d67bc||0xc8;return function(_0x4e3cce){if(_0x4e3cce){return _0x48ebac['status'](_0x3d67bc)[_0xcaeb('0x1f')](_0x4e3cce);}};}function respondWithFilteredResult(_0x26eabe,_0x1cd0c7){return function(_0x2fbec9){if(_0x2fbec9){var _0x5f4e68=typeof _0x1cd0c7[_0xcaeb('0x20')]===_0xcaeb('0x21')&&typeof _0x1cd0c7['limit']===_0xcaeb('0x21');var _0x4de1e0=_0x2fbec9[_0xcaeb('0x22')];var _0x220cbd=_0x5f4e68?0x0:_0x1cd0c7[_0xcaeb('0x20')];var _0x32f38a=_0x5f4e68?_0x2fbec9['count']:_0x1cd0c7[_0xcaeb('0x20')]+_0x1cd0c7[_0xcaeb('0x23')];var _0x3fbef3;if(_0x32f38a>=_0x4de1e0){_0x32f38a=_0x4de1e0;_0x3fbef3=0xc8;}else{_0x3fbef3=0xce;}_0x26eabe[_0xcaeb('0x24')](_0x3fbef3);return _0x26eabe[_0xcaeb('0x25')](_0xcaeb('0x26'),_0x220cbd+'-'+_0x32f38a+'/'+_0x4de1e0)[_0xcaeb('0x1f')](_0x2fbec9);}return null;};}function patchUpdates(_0x33e9b3){return function(_0x59ee2d){try{jsonpatch[_0xcaeb('0x27')](_0x59ee2d,_0x33e9b3,!![]);}catch(_0x1f97b1){return BPromise['reject'](_0x1f97b1);}return _0x59ee2d[_0xcaeb('0x28')]();};}function saveUpdates(_0x567fc5,_0xf3a27d){return function(_0x56a1ce){if(_0x56a1ce){return _0x56a1ce[_0xcaeb('0x29')](_0x567fc5)[_0xcaeb('0x2a')](function(_0x2b7216){return _0x2b7216;});}return null;};}function removeEntity(_0x19be81,_0x57f8b6){return function(_0x1cac33){if(_0x1cac33){return _0x1cac33[_0xcaeb('0x2b')]()[_0xcaeb('0x2a')](function(){_0x19be81[_0xcaeb('0x24')](0xcc)[_0xcaeb('0x1e')]();});}};}function handleEntityNotFound(_0x1a79ba,_0x1ff992){return function(_0x16b94a){if(!_0x16b94a){_0x1a79ba[_0xcaeb('0x1d')](0x194);}return _0x16b94a;};}function handleError(_0x3ab0db,_0x545b9e){_0x545b9e=_0x545b9e||0x1f4;return function(_0x408130){logger[_0xcaeb('0x2c')](_0x408130[_0xcaeb('0x2d')]);if(_0x408130[_0xcaeb('0x2e')]){delete _0x408130[_0xcaeb('0x2e')];}_0x3ab0db[_0xcaeb('0x24')](_0x545b9e)[_0xcaeb('0x2f')](_0x408130);};}exports['index']=function(_0x118296,_0x2fa9aa){var _0x59020a={},_0x30a6cd={},_0x1118c0={'count':0x0,'rows':[]};return db[_0xcaeb('0x30')][_0xcaeb('0x31')]()[_0xcaeb('0x2a')](function(_0x26d69e){var _0x3f9f5f=[];for(var _0x330bf2=0x0;_0x330bf2<Object['keys'](_0x26d69e)[_0xcaeb('0x32')];_0x330bf2++){var _0x855404=Object['keys'](_0x26d69e)[_0x330bf2];if(_['startsWith'](_0x855404,_0xcaeb('0x33'))){_0x3f9f5f['push'](db[_0xcaeb('0x34')][_0xcaeb('0x35')]({'where':{'id':_[_0xcaeb('0x36')](_0x855404,_0xcaeb('0x33'))},'raw':!![]}));}}return BPromise[_0xcaeb('0x37')](_0x3f9f5f)['then'](function(_0xafe0){for(var _0x164eb7=0x0;_0x164eb7<_0xafe0[_0xcaeb('0x32')];_0x164eb7++){if(_0xafe0[_0x164eb7]){var _0x58c765=_0xcaeb('0x33')+_0xafe0[_0x164eb7]['id'];var _0x2c25d9=_0x26d69e[_0x58c765];_0x2c25d9[_0xcaeb('0x38')]=_0xafe0[_0x164eb7]['type'];}}return _0x26d69e;});})[_0xcaeb('0x2a')](function(_0x264d7c){_0x30a6cd['model']=_[_0xcaeb('0x39')](_0x264d7c);_0x30a6cd[_0xcaeb('0x3a')]=_[_0xcaeb('0x39')](_0x118296[_0xcaeb('0x3a')]);_0x30a6cd[_0xcaeb('0x3b')]=_['intersection'](_0x30a6cd[_0xcaeb('0x3c')],_0x30a6cd[_0xcaeb('0x3a')]);_0x59020a[_0xcaeb('0x3d')]=_[_0xcaeb('0x3e')](_0x30a6cd[_0xcaeb('0x3c')],qs['fields'](_0x118296['query'][_0xcaeb('0x3f')]));_0x59020a[_0xcaeb('0x3d')]=_0x59020a[_0xcaeb('0x3d')][_0xcaeb('0x32')]?_0x59020a[_0xcaeb('0x3d')]:_0x30a6cd[_0xcaeb('0x3c')];if(!_0x118296['query'][_0xcaeb('0x40')](_0xcaeb('0x41'))){_0x59020a[_0xcaeb('0x23')]=qs[_0xcaeb('0x23')](_0x118296[_0xcaeb('0x3a')][_0xcaeb('0x23')]);_0x59020a[_0xcaeb('0x20')]=qs[_0xcaeb('0x20')](_0x118296[_0xcaeb('0x3a')][_0xcaeb('0x20')]);}_0x59020a[_0xcaeb('0x42')]=qs[_0xcaeb('0x43')](_0x118296[_0xcaeb('0x3a')][_0xcaeb('0x43')]);_0x59020a[_0xcaeb('0x44')]=qs[_0xcaeb('0x3b')](_[_0xcaeb('0x45')](_0x118296[_0xcaeb('0x3a')],_0x30a6cd[_0xcaeb('0x3b')]),_0x264d7c);var _0x10d182=[];var _0x3a4878=squel['select']()[_0xcaeb('0x46')]('id')[_0xcaeb('0x46')](_0xcaeb('0x2e'))[_0xcaeb('0x46')](_0xcaeb('0x47'))['from'](_0xcaeb('0x48'));var _0x2983f0=squel[_0xcaeb('0x49')]()[_0xcaeb('0x4a')](_0xcaeb('0x4b'),'c')[_0xcaeb('0x4c')]('cm_user_has_contacts','uc',_0xcaeb('0x4d'))[_0xcaeb('0x4c')](_0xcaeb('0x4e'),'ct',_0xcaeb('0x4f'))[_0xcaeb('0x4c')](_0xcaeb('0x48'),'t',_0xcaeb('0x50'))[_0xcaeb('0x44')](_0xcaeb('0x51'));var _0x13c8d8=squel[_0xcaeb('0x52')]();var _0x3d5235=[];var _0x4e8395=squel[_0xcaeb('0x52')]();var _0x31fe13;if(_0x118296[_0xcaeb('0x3a')][_0xcaeb('0x53')]){_0x31fe13=as['parseSearch'](_0x118296[_0xcaeb('0x3a')]['search']);var _0x3df3bd=_0x31fe13[_0xcaeb('0x54')];for(var _0x34071a=0x0;_0x34071a<_0x31fe13[_0xcaeb('0x55')][_0xcaeb('0x32')];_0x34071a++){var _0x283bbf=_0x31fe13['conditions'][_0x34071a];var _0x4816c1='c';var _0xc61653=_(_0x264d7c)[_0xcaeb('0x39')]()['find'](function(_0x366c4c){return _0x366c4c===_0x283bbf[_0xcaeb('0x46')];});if(_0xc61653)_0xc61653=_0x264d7c[_0x283bbf['field']];if(!_0xc61653){if(_0x283bbf['field']===_0xcaeb('0x56')){var _0x1b19a6=_0x283bbf[_0xcaeb('0x57')][_0xcaeb('0x58')](',')[_0xcaeb('0x59')](function(_0xdbdbf7){return Number(_0xdbdbf7);});_0x1b19a6[_0xcaeb('0x5a')](function(_0x3f4bb8){_0x4e8395['or'](_0xcaeb('0x5b'),'%,'+_0x3f4bb8+',%');});_0x3d5235=_[_0xcaeb('0x5c')](_0x3d5235,_0x1b19a6);}else if(_0x283bbf[_0xcaeb('0x46')]===_0xcaeb('0x5d')){_0x13c8d8[_0xcaeb('0x5e')]('uc.UserId\x20=\x20?',_0x283bbf[_0xcaeb('0x57')]);}}else{if(_0x283bbf[_0xcaeb('0x46')]==='dateOfBirth'||_0xc61653[_0xcaeb('0x38')]==='datetime')_0x283bbf['castTo']='DATE';var _0x3244c3=as[_0xcaeb('0x5f')](_0x4816c1,_0xc61653['type'],_0x283bbf);_0x13c8d8[_0x3df3bd](_0x3244c3[_0xcaeb('0x60')],_0x3244c3[_0xcaeb('0x57')][_0xcaeb('0x61')],_0x3244c3[_0xcaeb('0x57')]['end']);}}}else{var _0x5763ac=_(Object[_0xcaeb('0x39')](_0x118296[_0xcaeb('0x3a')]))[_0xcaeb('0x59')](function(_0x3beff4){return _0x264d7c[_0xcaeb('0x40')](_0x3beff4)?_0x3beff4:undefined;})[_0xcaeb('0x62')](function(_0x5868de){return!_['isNil'](_0x5868de);})['value']();if(_0x118296[_0xcaeb('0x3a')][_0xcaeb('0x63')])_0x5763ac[_0xcaeb('0x64')](_0xcaeb('0x63'));if(!_[_0xcaeb('0x65')](_0x5763ac)){_0x5763ac[_0xcaeb('0x5a')](function(_0x52a9d1){if(_0x52a9d1===_0xcaeb('0x66')){_0x2983f0[_0xcaeb('0x44')](_0xcaeb('0x67'),[]['concat'](_0x118296[_0xcaeb('0x3a')][_0x52a9d1]));}else if(_0x52a9d1===_0xcaeb('0x63')){var _0x486257='%'+_0x118296[_0xcaeb('0x3a')][_0x52a9d1]+'%';_0x2983f0['where']('CONCAT_WS(\x27\x20\x27,\x20c.firstName,\x20c.lastName,\x20c.email)\x20LIKE\x20?',_0x486257);}else{_0x2983f0[_0xcaeb('0x44')]('c.'+_0x52a9d1+'\x20=\x20?',_0x118296[_0xcaeb('0x3a')][_0x52a9d1]);}});}if(_0x118296[_0xcaeb('0x3a')][_0xcaeb('0x68')]){_0x3d5235=_[_0xcaeb('0x69')](_0x118296[_0xcaeb('0x3a')][_0xcaeb('0x68')])?_0x118296['query']['tag']:new Array(_0x118296['query']['tag']);_0x3d5235['forEach'](function(_0x8f5954){_0x4e8395['or'](_0xcaeb('0x5b'),'%,'+_0x8f5954+',%');});}if(_0x118296['query']['filter']){var _0x1106f1=_0x118296[_0xcaeb('0x3a')]['filter'][_0xcaeb('0x6a')]('\x5c','\x5c\x5c')[_0xcaeb('0x6a')](/'/g,'\x27\x27');if(_0x1106f1[_0xcaeb('0x58')]('\x20')[_0xcaeb('0x32')]>0x1){_0x13c8d8['or'](_0xcaeb('0x6b'),qs[_0xcaeb('0x6c')](_0x1106f1),null);}else{if(qs['isNumeric'](_0x1106f1)){_0x13c8d8['or'](_0xcaeb('0x6d'),_0x1106f1+'%');_0x13c8d8['or'](_0xcaeb('0x6e'),_0x1106f1+'%');_0x13c8d8['or'](_0xcaeb('0x6f'),_0x1106f1+'%');_0x13c8d8['or']('c.fax\x20LIKE\x20?',_0x1106f1+'%');}else if(qs[_0xcaeb('0x70')](_0x1106f1)){_0x13c8d8['or'](_0xcaeb('0x71'),_0x1106f1+'%');}else{_0x13c8d8['or'](_0xcaeb('0x72'),'%'+_0x1106f1+'%');_0x13c8d8['or'](_0xcaeb('0x73'),'%'+_0x1106f1+'%');_0x13c8d8['or']('c.email\x20LIKE\x20?','%'+_0x1106f1+'%');}}}}_0x2983f0['where'](_0x13c8d8);_0x2983f0[_0xcaeb('0x74')](_0xcaeb('0x75'));var _0x39c43c={'type':db[_0xcaeb('0x76')][_0xcaeb('0x77')][_0xcaeb('0x78')],'raw':!![]};var _0x4c5947=_0x2983f0[_0xcaeb('0x79')]()[_0xcaeb('0x46')](_0xcaeb('0x75'));if(_0x59020a[_0xcaeb('0x42')]){_0x59020a[_0xcaeb('0x42')][_0xcaeb('0x5a')](function(_0x51d24d){_0x2983f0[_0xcaeb('0x42')]('c.'+_0x51d24d[0x0],_0x51d24d[0x1]==='DESC'?![]:!![]);});}if(!_[_0xcaeb('0x65')](_0x3d5235)){_0x2983f0[_0xcaeb('0x7a')](_0x4e8395);_0x4c5947[_0xcaeb('0x44')]('t.id\x20IN\x20?',_0x3d5235);}BPromise[_0xcaeb('0x7b')]()[_0xcaeb('0x2a')](function(){if(!_0x31fe13)return;if(_0x118296[_0xcaeb('0x7c')][_0xcaeb('0x7d')]!==_0xcaeb('0x7e'))return;if(!_['some'](_0x31fe13[_0xcaeb('0x55')],[_0xcaeb('0x46'),_0xcaeb('0x5d')])){return _0x118296[_0xcaeb('0x7c')][_0xcaeb('0x7f')]({'attributes':['id'],'raw':!![]})['then'](function(_0x344962){if(_[_0xcaeb('0x65')](_0x344962)){_0x4c5947['where']('c.ListId\x20IS\x20NULL');_0x2983f0[_0xcaeb('0x44')](_0xcaeb('0x80'));}else{_0x4c5947[_0xcaeb('0x44')](_0xcaeb('0x67'),_[_0xcaeb('0x59')](_0x344962,'id'));_0x2983f0['where'](_0xcaeb('0x67'),_[_0xcaeb('0x59')](_0x344962,'id'));}});}})['then'](function(){if(_0x118296[_0xcaeb('0x7c')]['role']===_0xcaeb('0x7e')&&!_0x31fe13&&!_0x118296[_0xcaeb('0x3a')][_0xcaeb('0x66')])return[];return db[_0xcaeb('0x81')][_0xcaeb('0x3a')](_0x4c5947[_0xcaeb('0x82')](),_0x39c43c);})[_0xcaeb('0x2a')](function(_0x1d8708){_0x1118c0['count']=_0x1d8708[_0xcaeb('0x32')];if(_0x1118c0[_0xcaeb('0x22')]===0x0)return[];return db['sequelize'][_0xcaeb('0x3a')](_0x3a4878[_0xcaeb('0x82')](),_0x39c43c)[_0xcaeb('0x2a')](function(_0x1a8a5c){_0x10d182=_[_0xcaeb('0x83')](_0x1a8a5c,'id');_0x39c43c=_[_0xcaeb('0x84')](_0x39c43c,{'model':db[_0xcaeb('0x30')],'mapToModel':!![],'raw':!![],'nest':!![]});if(_0x118296[_0xcaeb('0x3a')][_0xcaeb('0x3f')]){_0x59020a[_0xcaeb('0x3d')]['forEach'](function(_0xc90b44){_0x2983f0[_0xcaeb('0x46')]('c.'+_0xc90b44);});}else{_0x2983f0[_0xcaeb('0x46')]('c.id');_0x2983f0[_0xcaeb('0x46')](_0xcaeb('0x85'));_0x2983f0[_0xcaeb('0x46')](_0xcaeb('0x86'));_0x2983f0[_0xcaeb('0x46')](_0xcaeb('0x87'));_0x2983f0[_0xcaeb('0x46')](_0xcaeb('0x88'));_0x2983f0[_0xcaeb('0x46')]('c.fax');_0x2983f0['field'](_0xcaeb('0x89'));_0x2983f0[_0xcaeb('0x46')](_0xcaeb('0x8a'));_0x2983f0[_0xcaeb('0x46')](_0xcaeb('0x8b'));_0x2983f0[_0xcaeb('0x46')](_0xcaeb('0x8c'));_0x2983f0['field'](_0xcaeb('0x8d'));_0x2983f0[_0xcaeb('0x46')]('GROUP_CONCAT(DISTINCT\x20t.id)',_0xcaeb('0x8e'));}if(_0x59020a['limit'])_0x2983f0[_0xcaeb('0x23')](_0x59020a[_0xcaeb('0x23')]);if(_0x59020a[_0xcaeb('0x20')])_0x2983f0['offset'](_0x59020a[_0xcaeb('0x20')]);return db['sequelize'][_0xcaeb('0x3a')](_0x2983f0[_0xcaeb('0x82')](),_0x39c43c);});})[_0xcaeb('0x2a')](function(_0x2e386a){_0x2e386a[_0xcaeb('0x5a')](function(_0x213dfe){if(_0x213dfe[_0xcaeb('0x8e')]){_0x213dfe[_0xcaeb('0x8f')]=[];_0x213dfe[_0xcaeb('0x8e')][_0xcaeb('0x58')](',')[_0xcaeb('0x5a')](function(_0x1d5778){_0x213dfe[_0xcaeb('0x8f')][_0xcaeb('0x64')](_0x10d182[_0x1d5778]);});}delete _0x213dfe['TagIds'];});_0x1118c0[_0xcaeb('0x90')]=_0x2e386a;return _0x1118c0;})[_0xcaeb('0x2a')](respondWithFilteredResult(_0x2fa9aa,_0x59020a));})['catch'](handleError(_0x2fa9aa,null));};exports[_0xcaeb('0x2b')]=function(_0x473230,_0x4892bf){return db[_0xcaeb('0x30')][_0xcaeb('0x91')]({'where':{'id':_0x473230['params']['id']}})[_0xcaeb('0x2a')](handleEntityNotFound(_0x4892bf,null))[_0xcaeb('0x2a')](removeEntity(_0x4892bf,null))[_0xcaeb('0x92')](handleError(_0x4892bf,null));};exports[_0xcaeb('0x31')]=function(_0x6a43ca,_0x24f882){return db['CmContact'][_0xcaeb('0x31')]()['then'](function(_0x238f3c){delete _0x238f3c[_0xcaeb('0x93')];for(var _0x31b756=0x0;_0x31b756<Object[_0xcaeb('0x39')](_0x238f3c)['length'];_0x31b756++){var _0x139569=Object['keys'](_0x238f3c)[_0x31b756];if(!_[_0xcaeb('0x94')](_0x139569,'cf_')){_0x238f3c[_0x139569]['columnName']=_0x139569;_0x238f3c[_0x139569][_0xcaeb('0x95')]=_0x139569;}}return _0x238f3c;})[_0xcaeb('0x2a')](function(_0x534ad8){var _0x4a9c31={'where':{'$or':[{'ListId':_0x6a43ca[_0xcaeb('0x3a')]['id']},{'ListId':null}]},'raw':!![]};return db[_0xcaeb('0x34')][_0xcaeb('0x96')](_0x4a9c31)[_0xcaeb('0x2a')](function(_0x2f58a7){for(var _0x2938d7=0x0;_0x2938d7<_0x2f58a7[_0xcaeb('0x32')];_0x2938d7++){var _0x7af74b='cf_'+_0x2f58a7[_0x2938d7]['id'];_0x534ad8[_0x7af74b][_0xcaeb('0x97')]=_0x7af74b;_0x534ad8[_0x7af74b][_0xcaeb('0x95')]=_0x2f58a7[_0x2938d7][_0xcaeb('0x98')];_0x534ad8[_0x7af74b][_0xcaeb('0x99')]={'type':_0x2f58a7[_0x2938d7][_0xcaeb('0x9a')],'values':_0x2f58a7[_0x2938d7][_0xcaeb('0x9b')]};}Object[_0xcaeb('0x39')](_0x534ad8)[_0xcaeb('0x5a')](function(_0x26f0c9){if(!_0x534ad8[_0x26f0c9][_0xcaeb('0x40')](_0xcaeb('0x97'))){delete _0x534ad8[_0x26f0c9];}});return _0x534ad8;});})['then'](respondWithResult(_0x24f882,null))[_0xcaeb('0x92')](handleError(_0x24f882,null));};exports[_0xcaeb('0x84')]=function(_0x557b3a,_0x76501f){var _0x104613;var _0x53b36f;var _0x5c183f;if(_0x557b3a[_0xcaeb('0x9c')]['id']){delete _0x557b3a[_0xcaeb('0x9c')]['id'];}return db[_0xcaeb('0x30')][_0xcaeb('0x96')]({'where':{'id':[_0x557b3a[_0xcaeb('0x9c')]['to'],_0x557b3a[_0xcaeb('0x9c')][_0xcaeb('0x4a')]]}})[_0xcaeb('0x2a')](function(_0x1bb84f){if(_0x1bb84f){if(_0x1bb84f[_0xcaeb('0x32')]!==0x2){return null;}_0x1bb84f[0x0]=_0x1bb84f[0x0][_0xcaeb('0x9d')]({'plain':!![]});_0x1bb84f[0x1]=_0x1bb84f[0x1]['get']({'plain':!![]});delete _0x1bb84f[0x0]['id'];delete _0x1bb84f[0x1]['id'];return _[_0xcaeb('0x9e')](_0x1bb84f[0x0],_0x1bb84f[0x1],function(_0x1ce8a0,_0x506a8c){if(Array[_0xcaeb('0x69')](_0x506a8c)&&!_0x506a8c[_0xcaeb('0x32')]){return _0x1ce8a0;}else if(!_0x506a8c){return _0x1ce8a0;}});}})[_0xcaeb('0x2a')](handleEntityNotFound(_0x76501f,null))[_0xcaeb('0x2a')](function(_0x2cffa1){if(_0x2cffa1){if(_0x2cffa1[_0xcaeb('0x93')]&&_['isArray'](_0x2cffa1[_0xcaeb('0x93')])){_0x2cffa1['tags']=_0x2cffa1[_0xcaeb('0x93')][_0xcaeb('0x9f')]();}logger[_0xcaeb('0xa0')]('[CmContact][merge]\x20to\x20%s\x20from\x20%s',_0x557b3a[_0xcaeb('0x9c')]['to'],_0x557b3a['body'][_0xcaeb('0x4a')]);return db[_0xcaeb('0xa1')][_0xcaeb('0x2b')]({'where':{'ContactId':[_0x557b3a['body']['to'],_0x557b3a['body']['from']]}})[_0xcaeb('0x2a')](function(_0x595435){logger[_0xcaeb('0xa0')](_0xcaeb('0xa2'),_0x595435);return db[_0xcaeb('0xa3')][_0xcaeb('0x2b')]({'where':{'ContactId':[_0x557b3a['body']['to'],_0x557b3a['body'][_0xcaeb('0x4a')]]}})[_0xcaeb('0x2a')](function(_0x5f4856){logger[_0xcaeb('0xa0')](_0xcaeb('0xa4'),_0x5f4856);return db['CmContact'][_0xcaeb('0xa5')](_0x2cffa1);});});}})[_0xcaeb('0x2a')](function(_0xa47f90){if(_0xa47f90){_0x104613=_0xa47f90;_0x53b36f={'ContactId':_0x104613['id']};_0x5c183f={'where':{'ContactId':[_0x557b3a[_0xcaeb('0x9c')]['to'],_0x557b3a[_0xcaeb('0x9c')]['from']]}};return db[_0xcaeb('0xa6')][_0xcaeb('0x29')](_0x53b36f,_0x5c183f);}})['then'](function(){if(_0x104613){return db[_0xcaeb('0xa7')][_0xcaeb('0x29')](_0x53b36f,_0x5c183f);}})[_0xcaeb('0x2a')](function(){if(_0x104613){return db[_0xcaeb('0xa8')][_0xcaeb('0x29')](_0x53b36f,_0x5c183f);}})[_0xcaeb('0x2a')](function(){if(_0x104613){return db[_0xcaeb('0xa9')]['update'](_0x53b36f,_0x5c183f);}})['then'](function(){if(_0x104613){return db[_0xcaeb('0xaa')]['update'](_0x53b36f,_0x5c183f);}})[_0xcaeb('0x2a')](function(){if(_0x104613){return db['MailInteraction'][_0xcaeb('0x29')](_0x53b36f,_0x5c183f);}})[_0xcaeb('0x2a')](function(){if(_0x104613){return db[_0xcaeb('0xaa')][_0xcaeb('0x29')](_0x53b36f,_0x5c183f);}})[_0xcaeb('0x2a')](function(){if(_0x104613){return db[_0xcaeb('0xab')][_0xcaeb('0x29')](_0x53b36f,_0x5c183f);}})[_0xcaeb('0x2a')](function(){if(_0x104613){return db['SmsMessage']['update'](_0x53b36f,_0x5c183f);}})[_0xcaeb('0x2a')](function(){if(_0x104613){return db[_0xcaeb('0xac')][_0xcaeb('0x29')](_0x53b36f,_0x5c183f);}})[_0xcaeb('0x2a')](function(){if(_0x104613){return db[_0xcaeb('0xad')][_0xcaeb('0x29')](_0x53b36f,_0x5c183f);}})[_0xcaeb('0x2a')](function(){if(_0x104613){return db['OpenchannelInteraction'][_0xcaeb('0x29')](_0x53b36f,_0x5c183f);}})[_0xcaeb('0x2a')](function(){if(_0x104613){return db[_0xcaeb('0xae')]['update'](_0x53b36f,_0x5c183f);}})['then'](function(){if(_0x104613){return db['CmHopperFinal'][_0xcaeb('0x29')](_0x53b36f,_0x5c183f);}})[_0xcaeb('0x2a')](function(){if(_0x104613){return db[_0xcaeb('0xaf')][_0xcaeb('0x29')](_0x53b36f,_0x5c183f);}})[_0xcaeb('0x2a')](function(){if(_0x104613){return db[_0xcaeb('0xb0')][_0xcaeb('0x29')](_0x53b36f,_0x5c183f);}})['then'](function(){if(_0x104613){return db[_0xcaeb('0xb1')][_0xcaeb('0x29')](_0x53b36f,_0x5c183f);}})[_0xcaeb('0x2a')](function(){if(_0x104613){return db['ChatQueueReport'][_0xcaeb('0x29')](_0x53b36f,_0x5c183f);}})[_0xcaeb('0x2a')](function(){if(_0x104613){return db[_0xcaeb('0xb2')][_0xcaeb('0x29')](_0x53b36f,_0x5c183f);}})['then'](function(){if(_0x104613){return db[_0xcaeb('0xb3')][_0xcaeb('0x29')](_0x53b36f,_0x5c183f);}})[_0xcaeb('0x2a')](function(){if(_0x104613){return db[_0xcaeb('0xb4')][_0xcaeb('0x29')](_0x53b36f,_0x5c183f);}})['then'](function(){if(_0x104613){return db[_0xcaeb('0xb5')][_0xcaeb('0x29')](_0x53b36f,_0x5c183f);}})[_0xcaeb('0x2a')](function(){if(_0x104613){return db[_0xcaeb('0xb6')][_0xcaeb('0x29')](_0x53b36f,_0x5c183f);}})[_0xcaeb('0x2a')](function(){if(_0x104613){return db['WhatsappInteraction'][_0xcaeb('0x29')](_0x53b36f,_0x5c183f);}})[_0xcaeb('0x2a')](function(){if(_0x104613){return db['WhatsappMessage']['update'](_0x53b36f,_0x5c183f);}})['then'](function(){if(_0x104613){return db['WhatsappQueueReport'][_0xcaeb('0x29')](_0x53b36f,_0x5c183f);}})[_0xcaeb('0x2a')](function(){if(_0x104613){return db[_0xcaeb('0x30')][_0xcaeb('0x2b')]({'where':{'id':[_0x557b3a[_0xcaeb('0x9c')]['to'],_0x557b3a['body'][_0xcaeb('0x4a')]]}});}})[_0xcaeb('0x2a')](function(){if(_0x104613){return _0x104613;}})[_0xcaeb('0x2a')](respondWithResult(_0x76501f,null))[_0xcaeb('0x92')](handleError(_0x76501f,null));};exports[_0xcaeb('0xa5')]=function(_0x50f82a,_0x2943f9){return db[_0xcaeb('0x30')][_0xcaeb('0x31')]()['then'](function(_0x2ff871){if(_0x50f82a['body']['tags']&&_['isArray'](_0x50f82a[_0xcaeb('0x9c')][_0xcaeb('0x93')])){if(_0x50f82a[_0xcaeb('0x9c')][_0xcaeb('0x93')][_0xcaeb('0x32')]){_0x50f82a[_0xcaeb('0x9c')][_0xcaeb('0x93')]=_0x50f82a[_0xcaeb('0x9c')][_0xcaeb('0x93')][_0xcaeb('0x9f')](';')+';';}else{_0x50f82a['body'][_0xcaeb('0x93')]=null;}}else{_0x50f82a[_0xcaeb('0x9c')][_0xcaeb('0x93')]=null;}return db[_0xcaeb('0x30')][_0xcaeb('0xa5')](_0x50f82a['body'],{'fields':_['keys'](_0x2ff871),'raw':!![]});})['then'](respondWithResult(_0x2943f9,0xc9))[_0xcaeb('0x92')](handleError(_0x2943f9,null));};exports[_0xcaeb('0xb7')]=function(_0x2b6397,_0x4348a0){var _0x2e46b7=[];var _0x2e23fe=0x0;var _0x523333=0x0;var _0x41bab7=0x0;return db['CmContact'][_0xcaeb('0x31')]()['then'](function(_0x64d8b1){return BPromise[_0xcaeb('0xb8')](_0x2b6397[_0xcaeb('0x9c')],function(_0x2e2d34){var _0x81cecd={'where':{'$or':[]},'defaults':_0x2e2d34,'fields':_['keys'](_0x64d8b1),'raw':!![]};if(_0x2e2d34['duplicates']){for(var _0x1e227b=0x0;_0x1e227b<_0x2e2d34[_0xcaeb('0xb9')][_0xcaeb('0x32')];_0x1e227b++){var _0x3f45d2={};_0x3f45d2[_0x2e2d34[_0xcaeb('0xb9')][_0x1e227b]]=_0x2e2d34[_0x2e2d34['duplicates'][_0x1e227b]];_0x81cecd['where']['$or']['push'](_0x3f45d2);}_0x81cecd[_0xcaeb('0x44')][_0xcaeb('0x66')]=_0x2e2d34[_0xcaeb('0x66')];}return db[_0xcaeb('0x30')]['findOrCreate'](_0x81cecd)[_0xcaeb('0xba')](function(_0x12a67c,_0x215f9c){if(_0x215f9c){_0x2e23fe++;}else{_0x41bab7++;}})[_0xcaeb('0x92')](function(_0x4e6b7b){console[_0xcaeb('0x2c')](_0x4e6b7b);_0x523333++;});});})['then'](function(_0x4d0d4d){if(_0x4d0d4d){return{'success':_0x2e23fe,'failure':_0x523333,'duplicates':_0x41bab7};}})['then'](respondWithResult(_0x4348a0,0xc9))[_0xcaeb('0x92')](handleError(_0x4348a0,null));};exports[_0xcaeb('0xbb')]=function(_0x50d31a,_0x109ec1,_0xc1454a){var _0xfdc122;return db[_0xcaeb('0x30')][_0xcaeb('0x31')]()[_0xcaeb('0x2a')](function(_0x2775f2){return db[_0xcaeb('0x30')][_0xcaeb('0x91')]({'where':{'id':_0x50d31a[_0xcaeb('0xbc')]['id']},'include':[{'model':db[_0xcaeb('0x56')],'as':'Tags','attributes':['id',_0xcaeb('0x2e'),_0xcaeb('0x47')],'required':_0x50d31a[_0xcaeb('0x3a')]['tag']?!![]:![]}],'attributes':_[_0xcaeb('0x39')](_0x2775f2)});})[_0xcaeb('0x2a')](function(_0x2a4fae){_0xfdc122=_0x2a4fae[_0xcaeb('0x9d')]({'plain':!![]});var _0x38bc8a={'where':{'$and':[{'ListId':{'$ne':null}}]}};if(_0x2a4fae&&_0x2a4fae[_0xcaeb('0x66')]){if(_0x2a4fae[_0xcaeb('0x66')]){_0x38bc8a[_0xcaeb('0x44')][_0xcaeb('0xbd')][_0xcaeb('0x64')]({'ListId':{'$ne':_0x2a4fae[_0xcaeb('0x66')]}});}}return db[_0xcaeb('0x34')][_0xcaeb('0x96')](_0x38bc8a);})[_0xcaeb('0x2a')](function(_0x1bb560){return _[_0xcaeb('0xbe')](_0xfdc122,_[_0xcaeb('0x59')](_0x1bb560,function(_0xbc621f){return util[_0xcaeb('0xbf')](_0xcaeb('0xc0'),_0xbc621f['id']);}));})[_0xcaeb('0x2a')](handleEntityNotFound(_0x109ec1,null))['then'](respondWithResult(_0x109ec1,null))['catch'](handleError(_0x109ec1,null));};exports[_0xcaeb('0x29')]=function(_0x424276,_0x67d342){var _0x1b2381;if(_0x424276[_0xcaeb('0x9c')]['id']){delete _0x424276[_0xcaeb('0x9c')]['id'];}return db[_0xcaeb('0x30')][_0xcaeb('0x91')]({'where':{'id':_0x424276[_0xcaeb('0xbc')]['id']}})['then'](handleEntityNotFound(_0x67d342,null))[_0xcaeb('0x2a')](saveUpdates(_0x424276[_0xcaeb('0x9c')],null))['then'](function(_0x520012){_0x1b2381=_0x520012;var _0x4f6d14={'where':{'$and':[{'ListId':{'$ne':null}}]}};if(_0x520012&&_0x520012[_0xcaeb('0x66')]){if(_0x520012[_0xcaeb('0x66')]){_0x4f6d14[_0xcaeb('0x44')]['$and'][_0xcaeb('0x64')]({'ListId':{'$ne':_0x520012[_0xcaeb('0x66')]}});}}return db['CmCustomField']['findAll'](_0x4f6d14);})[_0xcaeb('0x2a')](function(_0x24d08d){if(_0x24d08d){return _[_0xcaeb('0xbe')](_['pickBy'](_0x424276[_0xcaeb('0x9c')],function(_0xaed6b3,_0x23494f){return _[_0xcaeb('0x94')](_0x23494f,_0xcaeb('0x33'));}),_[_0xcaeb('0x59')](_0x24d08d,function(_0x4347e4){return util[_0xcaeb('0xbf')](_0xcaeb('0xc0'),_0x4347e4['id']);}));}})[_0xcaeb('0x2a')](function(_0x479230){if(_0x479230&&!_[_0xcaeb('0x65')](_0x479230)){var _0x3ba6d4=squel['update']()[_0xcaeb('0xc1')]('cm_contacts')[_0xcaeb('0xc2')](_0x479230)[_0xcaeb('0x44')]('id\x20=\x20?',_0x424276['params']['id'])[_0xcaeb('0xc3')]();return db[_0xcaeb('0x81')]['query'](_0x3ba6d4[_0xcaeb('0x60')],{'replacements':_0x3ba6d4[_0xcaeb('0x9b')]});}})['then'](function(){if(_0x424276['body'][_0xcaeb('0xc4')]&&_0x1b2381){return db[_0xcaeb('0xa1')][_0xcaeb('0x29')]({'phone':_0x424276[_0xcaeb('0x9c')]['phone']},{'where':{'ContactId':_0x1b2381['id']}});}})[_0xcaeb('0x2a')](function(){return _0x1b2381;})[_0xcaeb('0x2a')](respondWithResult(_0x67d342,null))[_0xcaeb('0x92')](handleError(_0x67d342,null));};exports[_0xcaeb('0xc5')]=function(_0x210000,_0x371bb4,_0x5702fb){var _0x114090={};var _0x2708f6={};var _0x163128;var _0x3ea1ec;return db[_0xcaeb('0x30')][_0xcaeb('0x35')]({'where':{'id':_0x210000['params']['id']}})[_0xcaeb('0x2a')](handleEntityNotFound(_0x371bb4,null))[_0xcaeb('0x2a')](function(_0x166c8f){if(_0x166c8f){_0x163128=_0x166c8f;_0x2708f6[_0xcaeb('0x3c')]=_[_0xcaeb('0x39')](db['Tag'][_0xcaeb('0xc6')]);_0x2708f6['query']=_['keys'](_0x210000[_0xcaeb('0x3a')]);_0x2708f6['filters']=_[_0xcaeb('0x3e')](_0x2708f6[_0xcaeb('0x3c')],_0x2708f6[_0xcaeb('0x3a')]);_0x114090[_0xcaeb('0x3d')]=_['intersection'](_0x2708f6[_0xcaeb('0x3c')],qs['fields'](_0x210000[_0xcaeb('0x3a')][_0xcaeb('0x3f')]));_0x114090[_0xcaeb('0x3d')]=_0x114090[_0xcaeb('0x3d')]['length']?_0x114090[_0xcaeb('0x3d')]:_0x2708f6[_0xcaeb('0x3c')];_0x114090[_0xcaeb('0x42')]=qs[_0xcaeb('0x43')](_0x210000[_0xcaeb('0x3a')]['sort']);_0x114090[_0xcaeb('0x44')]=qs['filters'](_[_0xcaeb('0x45')](_0x210000[_0xcaeb('0x3a')],_0x2708f6[_0xcaeb('0x3b')]));if(_0x210000[_0xcaeb('0x3a')][_0xcaeb('0x62')]){_0x114090[_0xcaeb('0x44')]=_[_0xcaeb('0x84')](_0x114090[_0xcaeb('0x44')],{'$or':_[_0xcaeb('0x59')](_0x114090[_0xcaeb('0x3d')],function(_0x3947d4){var _0x46e8da={};_0x46e8da[_0x3947d4]={'$like':'%'+_0x210000[_0xcaeb('0x3a')][_0xcaeb('0x62')]+'%'};return _0x46e8da;})});}_0x114090=_[_0xcaeb('0x84')]({},_0x114090,_0x210000['options']);return _0x163128[_0xcaeb('0xc5')](_0x114090);}})[_0xcaeb('0x2a')](function(_0x25a762){if(_0x25a762){_0x3ea1ec=_0x25a762[_0xcaeb('0x32')];if(!_0x210000['query'][_0xcaeb('0x40')]('nolimit')){_0x114090[_0xcaeb('0x23')]=qs[_0xcaeb('0x23')](_0x210000['query'][_0xcaeb('0x23')]);_0x114090[_0xcaeb('0x20')]=qs['offset'](_0x210000[_0xcaeb('0x3a')][_0xcaeb('0x20')]);}return _0x163128[_0xcaeb('0xc5')](_0x114090);}})[_0xcaeb('0x2a')](function(_0xc5e704){if(_0xc5e704){return _0xc5e704?{'count':_0x3ea1ec,'rows':_0xc5e704}:null;}})[_0xcaeb('0x2a')](respondWithResult(_0x371bb4,null))['catch'](handleError(_0x371bb4,null));};exports[_0xcaeb('0xc7')]=function(_0x2ef1f2,_0x43e5fc,_0x183642){if(_0x2ef1f2[_0xcaeb('0x9c')]['id']){delete _0x2ef1f2[_0xcaeb('0x9c')]['id'];}return db[_0xcaeb('0x30')]['findOne']({'where':{'id':_0x2ef1f2[_0xcaeb('0xbc')]['id']}})['then'](handleEntityNotFound(_0x43e5fc,null))['then'](function(_0x209c9b){if(_0x209c9b){return _0x209c9b[_0xcaeb('0xc7')](_0x2ef1f2[_0xcaeb('0x9c')][_0xcaeb('0xc8')]||[]);}return null;})[_0xcaeb('0x2a')](respondWithResult(_0x43e5fc,null))[_0xcaeb('0x92')](handleError(_0x43e5fc,null));};exports[_0xcaeb('0xc9')]=function(_0x49ef52,_0x2a14f2,_0x38a413){var _0x425553={'raw':![],'where':{}};var _0x42a1a5={};var _0x22ff2a={'count':0x0,'rows':[]};return db[_0xcaeb('0x30')][_0xcaeb('0x35')]({'where':{'id':_0x49ef52['params']['id']}})[_0xcaeb('0x2a')](handleEntityNotFound(_0x2a14f2,null))[_0xcaeb('0x2a')](function(_0x301658){if(_0x301658){_0x42a1a5[_0xcaeb('0x3c')]=_[_0xcaeb('0x39')](db[_0xcaeb('0xa1')][_0xcaeb('0xc6')]);_0x42a1a5[_0xcaeb('0x3a')]=_['keys'](_0x49ef52[_0xcaeb('0x3a')]);_0x42a1a5[_0xcaeb('0x3b')]=_[_0xcaeb('0x3e')](_0x42a1a5[_0xcaeb('0x3c')],_0x42a1a5[_0xcaeb('0x3a')]);_0x425553[_0xcaeb('0x3d')]=_[_0xcaeb('0x3e')](_0x42a1a5[_0xcaeb('0x3c')],qs[_0xcaeb('0x3f')](_0x49ef52['query'][_0xcaeb('0x3f')]));_0x425553[_0xcaeb('0x3d')]=_0x425553[_0xcaeb('0x3d')]['length']?_0x425553[_0xcaeb('0x3d')]:_0x42a1a5['model'];if(!_0x49ef52[_0xcaeb('0x3a')][_0xcaeb('0x40')](_0xcaeb('0x41'))){_0x425553[_0xcaeb('0x23')]=qs[_0xcaeb('0x23')](_0x49ef52[_0xcaeb('0x3a')][_0xcaeb('0x23')]);_0x425553['offset']=qs[_0xcaeb('0x20')](_0x49ef52['query']['offset']);}_0x425553[_0xcaeb('0x42')]=qs['sort'](_0x49ef52['query']['sort']);_0x425553[_0xcaeb('0x44')]=qs[_0xcaeb('0x3b')](_[_0xcaeb('0x45')](_0x49ef52[_0xcaeb('0x3a')],_0x42a1a5[_0xcaeb('0x3b')]));_0x425553[_0xcaeb('0x44')][_0xcaeb('0xca')]=_0x301658['id'];if(_0x49ef52['query'][_0xcaeb('0x62')]){_0x425553[_0xcaeb('0x44')]=_['merge'](_0x425553[_0xcaeb('0x44')],{'$or':_[_0xcaeb('0x59')](_0x425553[_0xcaeb('0x3d')],function(_0x4099aa){var _0x481b39={};_0x481b39[_0x4099aa]={'$like':'%'+_0x49ef52[_0xcaeb('0x3a')][_0xcaeb('0x62')]+'%'};return _0x481b39;})});}_0x425553=_[_0xcaeb('0x84')]({},_0x425553,_0x49ef52['options']);return db[_0xcaeb('0xa1')][_0xcaeb('0x22')]({'where':_0x425553[_0xcaeb('0x44')]})[_0xcaeb('0x2a')](function(_0x4e3f6f){_0x22ff2a[_0xcaeb('0x22')]=_0x4e3f6f;if(_0x49ef52[_0xcaeb('0x3a')][_0xcaeb('0xcb')]){_0x425553['include']=[{'all':!![]}];}return db['CmHopper']['findAll'](_0x425553);})[_0xcaeb('0x2a')](function(_0x3f20a4){_0x22ff2a[_0xcaeb('0x90')]=_0x3f20a4;return _0x22ff2a;});}})[_0xcaeb('0x2a')](respondWithFilteredResult(_0x2a14f2,_0x425553))[_0xcaeb('0x92')](handleError(_0x2a14f2,null));};exports[_0xcaeb('0xcc')]=function(_0x3f0482,_0xc0c5b8,_0x189aa7){var _0x7fdad7={'raw':!![],'where':{}};var _0x221be6={};var _0x16aa35={'count':0x0,'rows':[]};return db['CmContact'][_0xcaeb('0x35')]({'where':{'id':_0x3f0482['params']['id']}})[_0xcaeb('0x2a')](handleEntityNotFound(_0xc0c5b8,null))[_0xcaeb('0x2a')](function(_0x18bcdc){if(_0x18bcdc){_0x221be6[_0xcaeb('0x3c')]=_[_0xcaeb('0x39')](db['CmHopperHistory'][_0xcaeb('0xc6')]);_0x221be6['query']=_[_0xcaeb('0x39')](_0x3f0482[_0xcaeb('0x3a')]);_0x221be6[_0xcaeb('0x3b')]=_['intersection'](_0x221be6[_0xcaeb('0x3c')],_0x221be6[_0xcaeb('0x3a')]);_0x7fdad7['attributes']=_[_0xcaeb('0x3e')](_0x221be6[_0xcaeb('0x3c')],qs[_0xcaeb('0x3f')](_0x3f0482[_0xcaeb('0x3a')][_0xcaeb('0x3f')]));_0x7fdad7[_0xcaeb('0x3d')]=_0x7fdad7[_0xcaeb('0x3d')][_0xcaeb('0x32')]?_0x7fdad7['attributes']:_0x221be6[_0xcaeb('0x3c')];if(!_0x3f0482[_0xcaeb('0x3a')][_0xcaeb('0x40')](_0xcaeb('0x41'))){_0x7fdad7[_0xcaeb('0x23')]=qs['limit'](_0x3f0482[_0xcaeb('0x3a')]['limit']);_0x7fdad7['offset']=qs[_0xcaeb('0x20')](_0x3f0482[_0xcaeb('0x3a')][_0xcaeb('0x20')]);}_0x7fdad7[_0xcaeb('0x42')]=qs[_0xcaeb('0x43')](_0x3f0482[_0xcaeb('0x3a')][_0xcaeb('0x43')]);_0x7fdad7[_0xcaeb('0x44')]=qs[_0xcaeb('0x3b')](_[_0xcaeb('0x45')](_0x3f0482[_0xcaeb('0x3a')],_0x221be6[_0xcaeb('0x3b')]));_0x7fdad7[_0xcaeb('0x44')]['ContactId']=_0x18bcdc['id'];if(_0x3f0482['query'][_0xcaeb('0x62')]){_0x7fdad7[_0xcaeb('0x44')]=_[_0xcaeb('0x84')](_0x7fdad7[_0xcaeb('0x44')],{'$or':_['map'](_0x7fdad7['attributes'],function(_0x81ec9){var _0x56aa79={};_0x56aa79[_0x81ec9]={'$like':'%'+_0x3f0482['query']['filter']+'%'};return _0x56aa79;})});}_0x7fdad7=_[_0xcaeb('0x84')]({},_0x7fdad7,_0x3f0482[_0xcaeb('0xcd')]);return db[_0xcaeb('0xaf')]['count']({'where':_0x7fdad7[_0xcaeb('0x44')]})[_0xcaeb('0x2a')](function(_0x49d9a0){_0x16aa35[_0xcaeb('0x22')]=_0x49d9a0;if(_0x3f0482[_0xcaeb('0x3a')][_0xcaeb('0xcb')]){_0x7fdad7[_0xcaeb('0xce')]=[{'all':!![]}];}return db['CmHopperHistory'][_0xcaeb('0x96')](_0x7fdad7);})[_0xcaeb('0x2a')](function(_0x419ab6){_0x16aa35['rows']=_0x419ab6;return _0x16aa35;});}})[_0xcaeb('0x2a')](respondWithFilteredResult(_0xc0c5b8,_0x7fdad7))[_0xcaeb('0x92')](handleError(_0xc0c5b8,null));};exports['getHopperFinals']=function(_0xc06fd0,_0xc7bad,_0x4456ae){var _0x49ca19={'raw':!![],'where':{}};var _0x5adafa={};var _0x154e90={'count':0x0,'rows':[]};return db['CmContact'][_0xcaeb('0x35')]({'where':{'id':_0xc06fd0[_0xcaeb('0xbc')]['id']}})[_0xcaeb('0x2a')](handleEntityNotFound(_0xc7bad,null))['then'](function(_0x33b61a){if(_0x33b61a){_0x5adafa[_0xcaeb('0x3c')]=_[_0xcaeb('0x39')](db[_0xcaeb('0xcf')][_0xcaeb('0xc6')]);_0x5adafa[_0xcaeb('0x3a')]=_[_0xcaeb('0x39')](_0xc06fd0[_0xcaeb('0x3a')]);_0x5adafa[_0xcaeb('0x3b')]=_['intersection'](_0x5adafa[_0xcaeb('0x3c')],_0x5adafa['query']);_0x49ca19[_0xcaeb('0x3d')]=_[_0xcaeb('0x3e')](_0x5adafa[_0xcaeb('0x3c')],qs[_0xcaeb('0x3f')](_0xc06fd0['query']['fields']));_0x49ca19[_0xcaeb('0x3d')]=_0x49ca19[_0xcaeb('0x3d')][_0xcaeb('0x32')]?_0x49ca19[_0xcaeb('0x3d')]:_0x5adafa[_0xcaeb('0x3c')];if(!_0xc06fd0[_0xcaeb('0x3a')][_0xcaeb('0x40')](_0xcaeb('0x41'))){_0x49ca19[_0xcaeb('0x23')]=qs[_0xcaeb('0x23')](_0xc06fd0['query'][_0xcaeb('0x23')]);_0x49ca19[_0xcaeb('0x20')]=qs[_0xcaeb('0x20')](_0xc06fd0[_0xcaeb('0x3a')][_0xcaeb('0x20')]);}_0x49ca19[_0xcaeb('0x42')]=qs[_0xcaeb('0x43')](_0xc06fd0[_0xcaeb('0x3a')][_0xcaeb('0x43')]);_0x49ca19[_0xcaeb('0x44')]=qs[_0xcaeb('0x3b')](_[_0xcaeb('0x45')](_0xc06fd0[_0xcaeb('0x3a')],_0x5adafa[_0xcaeb('0x3b')]));_0x49ca19[_0xcaeb('0x44')]['ContactId']=_0x33b61a['id'];if(_0xc06fd0[_0xcaeb('0x3a')][_0xcaeb('0x62')]){_0x49ca19[_0xcaeb('0x44')]=_[_0xcaeb('0x84')](_0x49ca19[_0xcaeb('0x44')],{'$or':_[_0xcaeb('0x59')](_0x49ca19['attributes'],function(_0x254e46){var _0x452c92={};_0x452c92[_0x254e46]={'$like':'%'+_0xc06fd0[_0xcaeb('0x3a')][_0xcaeb('0x62')]+'%'};return _0x452c92;})});}_0x49ca19=_['merge']({},_0x49ca19,_0xc06fd0[_0xcaeb('0xcd')]);return db[_0xcaeb('0xcf')][_0xcaeb('0x22')]({'where':_0x49ca19['where']})[_0xcaeb('0x2a')](function(_0x3e5444){_0x154e90[_0xcaeb('0x22')]=_0x3e5444;if(_0xc06fd0[_0xcaeb('0x3a')][_0xcaeb('0xcb')]){_0x49ca19[_0xcaeb('0xce')]=[{'all':!![]}];}return db['CmHopperFinal'][_0xcaeb('0x96')](_0x49ca19);})['then'](function(_0x200fd9){_0x154e90[_0xcaeb('0x90')]=_0x200fd9;return _0x154e90;});}})[_0xcaeb('0x2a')](respondWithFilteredResult(_0xc7bad,_0x49ca19))[_0xcaeb('0x92')](handleError(_0xc7bad,null));};exports['getJscriptySessions']=function(_0x31a8f1,_0x472b69,_0x42c336){var _0x450e48={'raw':!![],'where':{}};var _0x2da987={};var _0x2febf1={'count':0x0,'rows':[]};return db[_0xcaeb('0x30')]['findOne']({'where':{'id':_0x31a8f1[_0xcaeb('0xbc')]['id']}})['then'](handleEntityNotFound(_0x472b69,null))['then'](function(_0x31c9d6){if(_0x31c9d6){_0x2da987['model']=_[_0xcaeb('0x39')](db[_0xcaeb('0xb6')][_0xcaeb('0xc6')]);_0x2da987[_0xcaeb('0x3a')]=_['keys'](_0x31a8f1[_0xcaeb('0x3a')]);_0x2da987[_0xcaeb('0x3b')]=_['intersection'](_0x2da987[_0xcaeb('0x3c')],_0x2da987[_0xcaeb('0x3a')]);_0x450e48['attributes']=_[_0xcaeb('0x3e')](_0x2da987[_0xcaeb('0x3c')],qs[_0xcaeb('0x3f')](_0x31a8f1[_0xcaeb('0x3a')]['fields']));_0x450e48[_0xcaeb('0x3d')]=_0x450e48[_0xcaeb('0x3d')][_0xcaeb('0x32')]?_0x450e48[_0xcaeb('0x3d')]:_0x2da987[_0xcaeb('0x3c')];if(!_0x31a8f1[_0xcaeb('0x3a')]['hasOwnProperty'](_0xcaeb('0x41'))){_0x450e48[_0xcaeb('0x23')]=qs[_0xcaeb('0x23')](_0x31a8f1[_0xcaeb('0x3a')][_0xcaeb('0x23')]);_0x450e48['offset']=qs[_0xcaeb('0x20')](_0x31a8f1[_0xcaeb('0x3a')][_0xcaeb('0x20')]);}_0x450e48['order']=qs[_0xcaeb('0x43')](_0x31a8f1[_0xcaeb('0x3a')][_0xcaeb('0x43')]);_0x450e48['where']=qs['filters'](_[_0xcaeb('0x45')](_0x31a8f1['query'],_0x2da987[_0xcaeb('0x3b')]));_0x450e48[_0xcaeb('0x44')][_0xcaeb('0xca')]=_0x31c9d6['id'];if(_0x31a8f1[_0xcaeb('0x3a')][_0xcaeb('0x62')]){_0x450e48[_0xcaeb('0x44')]=_[_0xcaeb('0x84')](_0x450e48['where'],{'$or':_['map'](_0x450e48[_0xcaeb('0x3d')],function(_0x5e8443){var _0x1183b6={};_0x1183b6[_0x5e8443]={'$like':'%'+_0x31a8f1[_0xcaeb('0x3a')][_0xcaeb('0x62')]+'%'};return _0x1183b6;})});}_0x450e48=_[_0xcaeb('0x84')]({},_0x450e48,_0x31a8f1[_0xcaeb('0xcd')]);return db[_0xcaeb('0xb6')][_0xcaeb('0x22')]({'where':_0x450e48[_0xcaeb('0x44')]})[_0xcaeb('0x2a')](function(_0x47af91){_0x2febf1[_0xcaeb('0x22')]=_0x47af91;if(_0x31a8f1[_0xcaeb('0x3a')][_0xcaeb('0xcb')]){_0x450e48[_0xcaeb('0xce')]=[{'all':!![]}];}return db['JscriptySessionReport']['findAll'](_0x450e48);})[_0xcaeb('0x2a')](function(_0x129710){_0x2febf1[_0xcaeb('0x90')]=_0x129710;return _0x2febf1;});}})[_0xcaeb('0x2a')](respondWithFilteredResult(_0x472b69,_0x450e48))['catch'](handleError(_0x472b69,null));};exports[_0xcaeb('0xd0')]=function(_0x3fae2a,_0x5b0da5,_0x5adc09){try{if(!_0x3fae2a[_0xcaeb('0x9c')][_0xcaeb('0x66')]){throw new Error(_0xcaeb('0xd1'));}if(!_0x3fae2a[_0xcaeb('0x9c')][_0xcaeb('0xd2')]){throw new Error(_0xcaeb('0xd3'));}if(!_0x3fae2a[_0xcaeb('0x9c')]['binding_values']){throw new Error(_0xcaeb('0xd4'));}if(!_0x3fae2a['body'][_0xcaeb('0xd5')]){throw new Error(_0xcaeb('0xd6'));}var _0x35fc68=_0x3fae2a[_0xcaeb('0x9c')][_0xcaeb('0xd2')][_0xcaeb('0x58')](',');var _0xa5c0be=_0x3fae2a[_0xcaeb('0x9c')][_0xcaeb('0xd7')][_0xcaeb('0x58')](',');if(!_0x35fc68['length']||!_0xa5c0be['length']||_0x35fc68[_0xcaeb('0x32')]!==_0xa5c0be[_0xcaeb('0x32')]){throw new Error('Incorrect\x20binding\x20parameters\x20passed!');}_0x3fae2a[_0xcaeb('0x9c')][_0xcaeb('0x3f')]=_[_0xcaeb('0xd8')](_0x35fc68,_0xa5c0be);if(!_0x3fae2a[_0xcaeb('0x9c')][_0xcaeb('0x3f')][_0xcaeb('0xc4')]){throw new Error(_0xcaeb('0xd9'));}if(!_0x3fae2a[_0xcaeb('0x9c')][_0xcaeb('0x3f')][_0xcaeb('0xda')]){throw new Error('No\x20firstName\x20column\x20specified');}var _0x587fc6=path['join'](config[_0xcaeb('0xdb')],'server/files/tmp',_0x3fae2a[_0xcaeb('0xdc')]['filename']);fs[_0xcaeb('0xdd')](_0x587fc6,parseInt(_0xcaeb('0xde'),0x8));var _0x376c93=require(_0xcaeb('0xdf'))[_0xcaeb('0xe0')](path['join'](__dirname,'../../components/import/cm/csv'),[_0x587fc6,_0x3fae2a['body'][_0xcaeb('0xd2')],_0x3fae2a[_0xcaeb('0x9c')][_0xcaeb('0xd7')],_0x3fae2a[_0xcaeb('0x9c')][_0xcaeb('0x66')],_0x3fae2a[_0xcaeb('0x9c')][_0xcaeb('0xe1')],_0x3fae2a[_0xcaeb('0x9c')][_0xcaeb('0xb9')],_0x3fae2a['body'][_0xcaeb('0xd5')]]);return _0x5b0da5[_0xcaeb('0x24')](0xc8)['json']({'message':_0xcaeb('0xe2'),'pid':_0x376c93[_0xcaeb('0xe3')]});}catch(_0x4e5a28){return _0x5b0da5[_0xcaeb('0x24')](0x1f4)[_0xcaeb('0x2f')](_0x4e5a28);}};exports['upload']=function(_0x549389,_0x3e713c,_0x4657a0){var _0x1304c4=fs[_0xcaeb('0xe4')](_0x549389[_0xcaeb('0xdc')][_0xcaeb('0x8')]);Papa[_0xcaeb('0xe5')](_0x1304c4,{'header':!![],'skipEmptyLines':!![],'preview':0x1,'complete':function(_0x2312a8){return _0x3e713c[_0xcaeb('0x24')](0xc8)[_0xcaeb('0x1f')]({'file':_0x549389[_0xcaeb('0xdc')],'fields':_0x2312a8[_0xcaeb('0xe6')][_0xcaeb('0x3f')]});}});};exports['import']=function(_0x8fd884,_0x13235b,_0x5f075a){return db[_0xcaeb('0x5d')][_0xcaeb('0x96')]({'raw':!![],'attributes':['id'],'where':{'role':_0xcaeb('0x7e')}})[_0xcaeb('0x2a')](function(_0x582955){var _0x4fc89e=![];if(!_0x8fd884[_0xcaeb('0x9c')][_0xcaeb('0x66')]){throw new Error(_0xcaeb('0xd1'));}if(!_0x8fd884['body'][_0xcaeb('0xe7')][_0xcaeb('0xc4')]){throw new Error(_0xcaeb('0xd9'));}if(!_0x8fd884[_0xcaeb('0x9c')]['binding'][_0xcaeb('0xda')]){throw new Error(_0xcaeb('0xe8'));}if(!_0x8fd884['body']['socket_timestamp']){throw new Error('Unable\x20to\x20synchronize\x20socket,\x20no\x20timestamp\x20passed');}var _0x40fa3b=require(_0xcaeb('0xdf'))[_0xcaeb('0xe0')](path['join'](__dirname,_0xcaeb('0xe9')),[_0x8fd884[_0xcaeb('0xbc')]['id'],JSON[_0xcaeb('0xea')](_0x8fd884[_0xcaeb('0x9c')]),JSON[_0xcaeb('0xea')](_0x582955)]);_0x40fa3b['on'](_0xcaeb('0xeb'),function(_0x212d3c){_0x4fc89e=!![];return _0x13235b[_0xcaeb('0x24')](0xc8)[_0xcaeb('0x1f')]({'message':_0xcaeb('0xec'),'pid':_0x40fa3b['pid']});});_0x40fa3b['on'](_0xcaeb('0xed'),function(_0x3aa687){if(_0x3aa687&&!_0x4fc89e){return _0x13235b['status'](0x1f4)['json']({'message':_0xcaeb('0xee'),'pid':_0x40fa3b[_0xcaeb('0xe3')]});}});})[_0xcaeb('0x92')](handleError(_0x13235b,null));};exports[_0xcaeb('0xef')]=function(_0x33b749,_0x2b1e61){var _0xa96fb4=[_0xcaeb('0xf0'),_0xcaeb('0xf1'),_0xcaeb('0xf2'),_0xcaeb('0xf3'),_0xcaeb('0xf4'),'whatsapp',_0xcaeb('0xf5')];var _0x52e610={'offset':0x0,'order':qs[_0xcaeb('0x43')](_0xcaeb('0xf6'))},_0x108f2c={'count':0x0,'rows':[]};Promise['resolve']()[_0xcaeb('0x2a')](function(){if(_0x33b749['query'][_0xcaeb('0xf7')]){if(!_[_0xcaeb('0xf8')](_0xa96fb4,_0x33b749[_0xcaeb('0x3a')][_0xcaeb('0xf7')]['toLowerCase']())){throw new Error(_0xcaeb('0xf9'));}_0xa96fb4=[_0x33b749[_0xcaeb('0x3a')][_0xcaeb('0xf7')]['toLowerCase']()];}if(_0x33b749[_0xcaeb('0x3a')][_0xcaeb('0xfa')]){try{var _0xcb8435=JSON[_0xcaeb('0xe5')](_0x33b749[_0xcaeb('0x3a')][_0xcaeb('0xfa')]);if(!moment(_0xcb8435['from'])[_0xcaeb('0xfb')]()){throw new Error(_0xcaeb('0xfc'));}if(!moment(_0xcb8435['to'])[_0xcaeb('0xfb')]()){throw new Error(_0xcaeb('0xfd'));}}catch(_0x2105fc){throw new Error(_0xcaeb('0xfe'));}}if(!_0x33b749[_0xcaeb('0x3a')]['hasOwnProperty'](_0xcaeb('0x41'))){_0x52e610[_0xcaeb('0x23')]=qs[_0xcaeb('0x23')](_0x33b749['query'][_0xcaeb('0x23')]||0xa);_0x52e610[_0xcaeb('0x20')]=qs['offset'](_0x33b749[_0xcaeb('0x3a')][_0xcaeb('0x20')]);}var _0x29cea1=_0xa96fb4[_0xcaeb('0x59')](function(_0x3c4614){if(_0x3c4614==='voice'){var _0x4babaf={'attributes':['id',_0xcaeb('0xff'),'type',_0xcaeb('0x100'),'destination',_0xcaeb('0x101'),_0xcaeb('0x102'),_0xcaeb('0x103'),_0xcaeb('0x104'),_0xcaeb('0x105'),_0xcaeb('0x106'),_0xcaeb('0x107'),_0xcaeb('0x108'),_0xcaeb('0x109'),_0xcaeb('0x10a')],'where':{'ContactId':_0x33b749[_0xcaeb('0xbc')]['id']},'include':[{'model':db[_0xcaeb('0x5d')],'as':_0xcaeb('0x5d'),'attributes':['id',_0xcaeb('0x2e'),_0xcaeb('0x10b'),_0xcaeb('0x98')]}],'order':[['createdAt',_0xcaeb('0x10c')]]};if(_0x33b749[_0xcaeb('0x3a')][_0xcaeb('0xfa')]){_0x4babaf[_0xcaeb('0x44')]['createdAt']={'$gte':_0xcb8435[_0xcaeb('0x4a')],'$lte':_0xcb8435['to']};}return db['VoiceCallReport'][_0xcaeb('0x10d')](_0x4babaf)[_0xcaeb('0x2a')](function(_0x3c90e7){_0x108f2c['count']+=_0x3c90e7[_0xcaeb('0x22')];return _['map'](_0x3c90e7[_0xcaeb('0x90')],function(_0x58558c){var _0x223137=_0x58558c[_0xcaeb('0x9d')]({'plain':!![]});_0x223137[_0xcaeb('0xf7')]=_0x3c4614;if(_0x223137[_0xcaeb('0x5d')]){_0x223137[_0xcaeb('0x5d')]={'id':_0x223137[_0xcaeb('0x5d')]['id'],'name':_0x223137[_0xcaeb('0x5d')][_0xcaeb('0x2e')],'fullname':_0x223137[_0xcaeb('0x5d')][_0xcaeb('0x10b')],'alias':_0x223137[_0xcaeb('0x5d')][_0xcaeb('0x98')]};}return _0x223137;});});}else{var _0x2458d9=_['startCase'](_0x3c4614)+(_0x3c4614===_0xcaeb('0xf1')?_0xcaeb('0x10e'):_0xcaeb('0x10f'));var _0x4fc773={'attributes':['id',_0xcaeb('0x110'),_0xcaeb('0x111'),'createdAt',_0xcaeb('0x105'),_0xcaeb('0x112'),_0xcaeb('0x113'),'thirdDisposition',_0xcaeb('0x10a'),_0x2458d9+'Id'],'where':{'ContactId':_0x33b749[_0xcaeb('0xbc')]['id']},'include':[{'model':db[_0x2458d9],'as':_0xcaeb('0x10f'),'attributes':['id',_0xcaeb('0x2e'),_0xcaeb('0x114')]},{'model':db[_0xcaeb('0x5d')],'as':_0xcaeb('0x115'),'attributes':['id','name',_0xcaeb('0x10b')]},{'model':db[_0xcaeb('0x56')],'as':_0xcaeb('0x8f'),'attributes':['id',_0xcaeb('0x2e'),_0xcaeb('0x47')],'through':{'attributes':[]}}],'order':[[_0xcaeb('0x106'),_0xcaeb('0x10c')]]};if(_0x33b749['query']['range']){_0x4fc773[_0xcaeb('0x44')][_0xcaeb('0x106')]={'$gte':_0xcb8435[_0xcaeb('0x4a')],'$lte':_0xcb8435['to']};}switch(_0x3c4614){case _0xcaeb('0xf1'):_0x4fc773[_0xcaeb('0x3d')][_0xcaeb('0x64')](_0xcaeb('0x116'),_0xcaeb('0x117'),_0xcaeb('0x118'),_0xcaeb('0x119'),_0xcaeb('0x11a'),_0xcaeb('0x11b'),'ratingType',_0xcaeb('0x11c'),_0xcaeb('0x11d'));break;case _0xcaeb('0xf0'):_0x4fc773[_0xcaeb('0x3d')]['push'](_0xcaeb('0x11e'),_0xcaeb('0x11f'));break;case _0xcaeb('0xf3'):_0x4fc773[_0xcaeb('0x3d')][_0xcaeb('0x64')]('externalUrl',_0xcaeb('0x120'));break;}return db[_[_0xcaeb('0x121')](_0x3c4614)+_0xcaeb('0x122')][_0xcaeb('0x10d')](_0x4fc773)[_0xcaeb('0x2a')](function(_0x7f62ab){_0x108f2c['count']+=_0x7f62ab[_0xcaeb('0x22')];return _[_0xcaeb('0x59')](_0x7f62ab[_0xcaeb('0x90')],function(_0x31ecd3){var _0x5ea022=_0x31ecd3[_0xcaeb('0x9d')]({'plain':!![]});_0x5ea022[_0xcaeb('0xf7')]=_0x3c4614;if(_0x5ea022[_0xcaeb('0x115')]){_0x5ea022[_0xcaeb('0x115')]={'id':_0x5ea022['Owner']['id'],'name':_0x5ea022[_0xcaeb('0x115')][_0xcaeb('0x2e')],'fullname':_0x5ea022[_0xcaeb('0x115')][_0xcaeb('0x10b')]};}return _0x5ea022;});});}});return Promise[_0xcaeb('0x37')](_0x29cea1);})[_0xcaeb('0x2a')](function(_0x4a53df){return _(_0x4a53df)[_0xcaeb('0x123')]()[_0xcaeb('0x124')](_0xcaeb('0x106'))[_0xcaeb('0x125')]()[_0xcaeb('0x57')]();})[_0xcaeb('0x2a')](function(_0x3ca37b){_0x108f2c['rows']=_0x52e610['limit']?_0x3ca37b[_0xcaeb('0x126')](_0x52e610[_0xcaeb('0x20')],_0x52e610[_0xcaeb('0x20')]+_0x52e610[_0xcaeb('0x23')]):_0x3ca37b;return _0x108f2c;})[_0xcaeb('0x2a')](respondWithFilteredResult(_0x2b1e61,_0x52e610))['catch'](handleError(_0x2b1e61,null));};