Built motion from commit (unavailable).|2.5.31
[motion2.git] / server / components / import / cm / csvUpdates.js
index b0c198d..3c2f53d 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xedd9=['ContactId','ListId','updatedAt','UserId','fields','cm_contacts','cm_contacts.ListId\x20=\x20','.CmListId','.CmListId\x20=\x20?','cm_contacts.phone\x20NOT\x20IN\x20(?)','\x22always\x22','cm_contacts.updatedAt','cm_hopper_black','createdAt','cm_contacts.createdAt\x20=\x20?','\x20=\x20?','toString','cm_hopper.id','cm_contact_has_items.OrderBy','cm_contact_has_items.createdAt','CmHopperId','cm_contact_has_items','concat','keys',')\x20NOT\x20IN\x20?','ListId\x20=\x20?','id\x20IN\x20?','MIN(id)','Received\x20SIGINT','exit','errors','code','info','message','main','stringify','start','binding','clone','socket_timestamp','root','server/files/tmp','body','ContactItemType','name','_description','header','writeFileSync','createReadStream','data','rows','find','hasOwnProperty','replace','priority','includes','agent\x20not\x20exists','email','isValid','dateOfBirth\x20wrong\x20format\x20(YYYY-MM-DD)','firstName','\x20not\x20specified','trim','itemTypeId','SystemRow','appendFileSync','contact:import:','Abort\x20parser','abort','SystemError','step','CREATE\x20TABLE\x20','\x20LIKE\x20cm_contacts;','CIS\x20len',',\x20scheduledAt\x20=\x20NOW()','contact','contactId','DROP\x20TABLE\x20','each','finish','affectedRows','emit','unlink','catch','complete','argv','arguments\x20<filename>\x20<parameters>\x20<agents>','existsSync','file\x20doesn\x27t\x20exists','parse','binding\x20doesn\x27t\x20exists','ListId\x20is\x20mandatory','body\x20id\x20mandatory','map','No\x20agent\x20available','uncaughtException','lodash','papaparse','util','bluebird','moment','squel','ioredis','../../../mysqldb','../../../config/logger','import','redis','defaults','localhost','format','YYYY-MM-DD\x20HH:mm:ss','cm_contacts_temp_','YYYYMMDDHHmmss','test','select','field','phone','from','join','.id\x20=\x20','where','\x20=\x20','.dialCheckDuplicateType\x20IN\x20(','sequelize','query','select\x20*\x20from\x20','spread','length','isNil','push','all','then','error','AdditionalPhones','split','CmContactHasItem','findOne','update','updated','create','PHONE','inserted','CmContact','CmHopper','cm_contacts.phone','cm_contacts.scheduledat','cm_contacts.id','cm_contacts.ListId','cm_contacts.createdAt','cm_contacts.priority','cm_contacts.UserId','insert','into','cm_hopper','fromQuery','scheduledat'];(function(_0x4afac5,_0x1ab4ed){var _0x2404b3=function(_0x5c700b){while(--_0x5c700b){_0x4afac5['push'](_0x4afac5['shift']());}};_0x2404b3(++_0x1ab4ed);}(_0xedd9,0xfc));var _0x9edd=function(_0x28823a,_0x126453){_0x28823a=_0x28823a-0x0;var _0x285b16=_0xedd9[_0x28823a];return _0x285b16;};'use strict';var fs=require('fs');var path=require('path');var _=require(_0x9edd('0x0'));var Papa=require(_0x9edd('0x1'));var util=require(_0x9edd('0x2'));var BPromise=require(_0x9edd('0x3'));var moment=require(_0x9edd('0x4'));var squel=require(_0x9edd('0x5'));var Redis=require(_0x9edd('0x6'));var db=require(_0x9edd('0x7'))['db'];var config=require('../../../config/environment');var logger=require(_0x9edd('0x8'))(_0x9edd('0x9'));config[_0x9edd('0xa')]=_[_0x9edd('0xb')](config['redis'],{'host':_0x9edd('0xc'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x9edd('0xa')]));var stats={'finish':![],'errors':[],'rows':0x0,'affectedRows':0x0};var results=[];var promisesAdditionalPhones=[];var promisesContact=[];var orderBy=0x0;var updatedRows=0x0;var stopped=![];var NOW=moment()[_0x9edd('0xd')](_0x9edd('0xe'));var tempTableName=_0x9edd('0xf')+moment()['format'](_0x9edd('0x10'));var contactItemTypes=[];var phoneDescriptions=[];var hasAdditionalPhones=![];function isEmail(_0x5d2f90){return/^([^\x00-\x20\x22\x28\x29\x2c\x2e\x3a-\x3c\x3e\x40\x5b-\x5d\x7f-\xff]+|\x22([^\x0d\x22\x5c\x80-\xff]|\x5c[\x00-\x7f])*\x22)(\x2e([^\x00-\x20\x22\x28\x29\x2c\x2e\x3a-\x3c\x3e\x40\x5b-\x5d\x7f-\xff]+|\x22([^\x0d\x22\x5c\x80-\xff]|\x5c[\x00-\x7f])*\x22))*\x40([^\x00-\x20\x22\x28\x29\x2c\x2e\x3a-\x3c\x3e\x40\x5b-\x5d\x7f-\xff]+|\x5b([^\x0d\x5b-\x5d\x80-\xff]|\x5c[\x00-\x7f])*\x5d)(\x2e([^\x00-\x20\x22\x28\x29\x2c\x2e\x3a-\x3c\x3e\x40\x5b-\x5d\x7f-\xff]+|\x5b([^\x0d\x5b-\x5d\x80-\xff]|\x5c[\x00-\x7f])*\x5d))*$/[_0x9edd('0x11')](_0x5d2f90);}function selectNotIn(_0x138767,_0x523026,_0xbf9da6,_0x13dc4f,_0x5b6c00){return squel[_0x9edd('0x12')]()[_0x9edd('0x13')](_0x9edd('0x14'))[_0x9edd('0x15')](_0x13dc4f)[_0x9edd('0x16')](_0x523026,null,_0x523026+_0x9edd('0x17')+_0x13dc4f+'.'+_0xbf9da6)[_0x9edd('0x18')](_0x13dc4f+'.'+_0xbf9da6+_0x9edd('0x19')+_0x138767+'.'+_0xbf9da6)['where'](_0x523026+_0x9edd('0x1a')+_0x5b6c00[_0x9edd('0x16')]()+')');}function handleAdditionalPhones(){return new Promise(function(_0x891832,_0x4d9a7){promisesAdditionalPhones=[];promisesContact=[];return db[_0x9edd('0x1b')][_0x9edd('0x1c')](_0x9edd('0x1d')+tempTableName)[_0x9edd('0x1e')](function(_0x4ea60f){if(_0x4ea60f!==null){var _0x5f5bf4=[];for(var _0x448996=0x0;_0x448996<_0x4ea60f[_0x9edd('0x1f')];_0x448996++){var _0x5acf65=_0x4ea60f[_0x448996];if(!_[_0x9edd('0x20')](_0x5acf65[_0x9edd('0x14')])){if(!_[_0x9edd('0x20')](_0x5acf65['AdditionalPhones']))_0x5f5bf4[_0x9edd('0x21')](insertAdditionalPhones(_0x5acf65));promisesContact['push']({'contact':_0x5acf65});}}}Promise[_0x9edd('0x22')](_0x5f5bf4)[_0x9edd('0x23')](function(){_0x891832({'val':0x1});});})['catch'](function(_0x498977){logger[_0x9edd('0x24')](_0x498977['message']);});});}function insertAdditionalPhones(_0x27a95a){return new Promise(function(_0x54a03f,_0x535f37){var _0x356751=_0x27a95a[_0x9edd('0x25')];if(_['isNil'](_0x356751))_0x535f37({'val':0x0});else{var _0x5823bc=_0x356751[_0x9edd('0x26')](';');var _0x186186=[];orderBy=0x0;for(var _0x477878=0x0;_0x477878<_0x5823bc['length'];_0x477878++){_0x186186[_0x9edd('0x21')](splitAdditionalPhone(_0x27a95a['id'],_0x5823bc[_0x477878]));}Promise[_0x9edd('0x22')](_0x186186)[_0x9edd('0x23')](function(){_0x54a03f({'val':_0x5823bc[_0x9edd('0x1f')]});});}});}function splitAdditionalPhone(_0x339a0d,_0x4c75d2){return new Promise(function(_0x46c383,_0xeaf55a){var _0x3a1ea5=_0x4c75d2[_0x9edd('0x26')](':');var _0x310a4d=_0x3a1ea5[0x0];var _0x4d507f=_0x3a1ea5[0x1];if(_0x4d507f!==''){var _0x4b3d1b=_0x4d507f[_0x9edd('0x26')]('|');var _0xfeca7b=[];for(var _0x8d67aa=0x0;_0x8d67aa<_0x4b3d1b[_0x9edd('0x1f')];_0x8d67aa++){if(_0x4b3d1b[_0x8d67aa]!==''){var _0x3c2227=_['filter'](promisesAdditionalPhones,{'contactId':_0x339a0d,'phone':_0x4b3d1b[_0x8d67aa]});if(_0x3c2227['length']==0x0){orderBy++;promisesAdditionalPhones[_0x9edd('0x21')]({'contactId':_0x339a0d,'contactTypeId':_0x310a4d,'phone':_0x4b3d1b[_0x8d67aa],'orderBy':orderBy});}}}_0x46c383({'ok':0x1});}else _0x46c383({'res':0x0});});}function createAdditionalPhone(_0x257a26,_0x1c762c,_0x52746a,_0x238b22){var _0x28cfae='';var _0x2ae8dd='';var _0x41af53=_0x52746a['split']('§');_0x28cfae=_0x41af53[0x0];if(_0x41af53[_0x9edd('0x1f')]==0x2)_0x2ae8dd=_0x41af53[0x1];return new Promise(function(_0x3fb556,_0xbe87e1){return db[_0x9edd('0x27')][_0x9edd('0x28')]({'where':{'CmContactId':_0x257a26,'item':_0x28cfae}})[_0x9edd('0x23')](function(_0x209aba){if(_0x209aba){return db[_0x9edd('0x27')][_0x9edd('0x29')]({'ItemTypeId':_0x1c762c,'description':_0x2ae8dd,'OrderBy':_0x238b22},{'where':{'CmContactId':_0x257a26,'item':_0x28cfae}})[_0x9edd('0x23')](function(_0x4fd03f){_0x3fb556({'res':_0x9edd('0x2a')});});}else{return db[_0x9edd('0x27')][_0x9edd('0x2b')]({'CmContactId':_0x257a26,'item':_0x28cfae,'ItemTypeId':_0x1c762c,'description':_0x2ae8dd,'OrderBy':_0x238b22,'ItemClass':_0x9edd('0x2c')})['then'](function(_0x1453d2){_0x3fb556({'res':_0x9edd('0x2d')});});}});});}function updateContact(_0x267c74){return new Promise(function(_0x5d1707,_0x2d2f88){var _0x3990fb=_0x267c74['id'];delete _0x267c74['id'];return db[_0x9edd('0x2e')][_0x9edd('0x29')](_0x267c74,{'where':{'id':_0x3990fb}})[_0x9edd('0x23')](function(_0x2bc4ed){updatedRows+=0x1;return db[_0x9edd('0x2f')][_0x9edd('0x29')]({'phone':_0x267c74[_0x9edd('0x14')]},{'where':{'ContactId':_0x3990fb}})[_0x9edd('0x23')](function(_0x29e789){_0x5d1707({'ret':'OK'});});});});}function insertCmHopper(_0x42c1d9,_0x27eb7e,_0x14f780,_0x5757fc,_0x37fcb2){var _0x5ed62d=[_0x9edd('0x30'),_0x9edd('0x31'),_0x9edd('0x32'),_0x9edd('0x33'),_0x27eb7e+'.'+_0x5757fc,_0x9edd('0x34'),'cm_contacts.updatedAt',_0x9edd('0x35'),_0x9edd('0x36'),'\x22'+_0x37fcb2+'\x22'];return squel[_0x9edd('0x37')]()[_0x9edd('0x38')](_0x9edd('0x39'))[_0x9edd('0x3a')]([_0x9edd('0x14'),_0x9edd('0x3b'),_0x9edd('0x3c'),_0x9edd('0x3d'),_0x5757fc,'createdAt',_0x9edd('0x3e'),'priority',_0x9edd('0x3f'),'recallme'],squel[_0x9edd('0x12')]()[_0x9edd('0x40')](_0x5ed62d)[_0x9edd('0x15')](_0x27eb7e)['join'](_0x9edd('0x41'),null,_0x9edd('0x42')+_0x27eb7e+_0x9edd('0x43'))['join'](_0x14f780,null,_0x14f780+_0x9edd('0x17')+_0x27eb7e+'.'+_0x5757fc)['where'](_0x27eb7e+_0x9edd('0x44'),_0x42c1d9)[_0x9edd('0x18')]('cm_contacts.createdAt\x20=\x20?',NOW)[_0x9edd('0x18')](_0x9edd('0x45'),selectNotIn(_0x27eb7e,_0x14f780,_0x5757fc,_0x9edd('0x39'),[_0x9edd('0x46'),'\x22onlyIfOpen\x22']))[_0x9edd('0x18')]('cm_contacts.phone\x20NOT\x20IN\x20(?)',selectNotIn(_0x27eb7e,_0x14f780,_0x5757fc,_0x9edd('0x39'),[_0x9edd('0x46')])))['toString']();}function insertCmHopperBlack(_0x318757,_0x49a128,_0x548299,_0x369b69){var _0x9cab86=[_0x9edd('0x30'),_0x9edd('0x32'),_0x9edd('0x33'),_0x49a128+'.'+_0x369b69,_0x9edd('0x34'),_0x9edd('0x47')];return squel[_0x9edd('0x37')]()[_0x9edd('0x38')](_0x9edd('0x48'))[_0x9edd('0x3a')]([_0x9edd('0x14'),_0x9edd('0x3c'),_0x9edd('0x3d'),_0x369b69,_0x9edd('0x49'),'updatedAt'],squel[_0x9edd('0x12')]()[_0x9edd('0x40')](_0x9cab86)[_0x9edd('0x15')](_0x49a128)[_0x9edd('0x16')](_0x9edd('0x41'),null,_0x9edd('0x42')+_0x49a128+_0x9edd('0x43'))['join'](_0x548299,null,_0x548299+'.id\x20=\x20'+_0x49a128+'.'+_0x369b69)['where'](_0x49a128+_0x9edd('0x44'),_0x318757)['where'](_0x9edd('0x4a'),NOW)[_0x9edd('0x18')](_0x9edd('0x45'),squel[_0x9edd('0x12')]()[_0x9edd('0x13')]('phone')[_0x9edd('0x15')](_0x9edd('0x48'))[_0x9edd('0x18')]('ListId\x20=\x20?',_0x318757)[_0x9edd('0x18')](_0x369b69+_0x9edd('0x4b'),_0x49a128+'.'+_0x369b69)))[_0x9edd('0x4c')]();}function insertCmHopperAdditionalPhones(_0x293b03){var _0x1d78c4=[_0x9edd('0x4d'),'cm_contact_has_items.item',_0x9edd('0x4e'),_0x9edd('0x4f'),'cm_contact_has_items.updatedAt'];return squel[_0x9edd('0x37')]()[_0x9edd('0x38')]('cm_hopper_additional_phones')[_0x9edd('0x3a')]([_0x9edd('0x50'),_0x9edd('0x14'),'OrderBy',_0x9edd('0x49'),_0x9edd('0x3e')],squel[_0x9edd('0x12')]()[_0x9edd('0x40')](_0x1d78c4)['from'](_0x9edd('0x39'))[_0x9edd('0x16')](_0x9edd('0x41'),null,'cm_contacts.id\x20=\x20cm_hopper.ContactId')[_0x9edd('0x16')](_0x9edd('0x51'),null,'cm_contacts.id\x20=\x20cm_contact_has_items.CmContactId')[_0x9edd('0x18')]('cm_hopper.ListId\x20=\x20?',_0x293b03)[_0x9edd('0x18')](_0x9edd('0x4a'),NOW))[_0x9edd('0x4c')]();}function insertCmContact(_0x3fcdf5,_0x1e3c19,_0x18548e,_0x2334d4){var _0x14dd27=_[_0x9edd('0x52')](_[_0x9edd('0x53')](_0x2334d4),[_0x9edd('0x3d'),'CompanyId',_0x9edd('0x49'),_0x9edd('0x3e')]);return squel[_0x9edd('0x37')]()['into'](_0x9edd('0x41'))['fromQuery'](_0x14dd27,squel['select']()['fields'](_0x14dd27)[_0x9edd('0x15')](_0x1e3c19)[_0x9edd('0x18')]('('+_0x18548e[_0x9edd('0x16')](',')+_0x9edd('0x54'),squel['select']()['fields'](_0x18548e)['from'](_0x9edd('0x41'))[_0x9edd('0x18')](_0x9edd('0x55'),_0x3fcdf5))[_0x9edd('0x18')](_0x9edd('0x56'),squel[_0x9edd('0x12')]()[_0x9edd('0x13')](_0x9edd('0x57'),'min_id')[_0x9edd('0x15')](_0x1e3c19)['group'](_0x18548e[_0x9edd('0x16')](','))))[_0x9edd('0x4c')]();}function handleStop(){logger['info'](_0x9edd('0x58'));stopped=!![];}function handleUncaughtException(_0x322359){logger[_0x9edd('0x24')](_0x322359['message']);process[_0x9edd('0x59')](0x1);}function handleError(_0x2e1ce3,_0x430eb4){stats[_0x9edd('0x5a')][_0x9edd('0x21')]({'name':_0x430eb4[_0x9edd('0x5b')],'message':_0x430eb4['message'],'row':_0x2e1ce3});}function handleQuery(_0x4aa337){logger[_0x9edd('0x5c')](_0x4aa337);return db['sequelize'][_0x9edd('0x1c')](_0x4aa337)[_0x9edd('0x1e')](function(_0x439083){results[_0x9edd('0x21')](_0x439083);})['catch'](function(_0x21ead2){logger['error'](_0x21ead2[_0x9edd('0x5d')]);});}function main(_0x344692,_0xc6bde6,_0x5ca123,_0x2651a2){logger['info'](_0x9edd('0x5e'),_0x344692,JSON[_0x9edd('0x5f')](_0xc6bde6));process['send'](_0x9edd('0x60'));var _0x4a72d0=_0xc6bde6[_0x9edd('0x61')];var _0x134c9c=_[_0x9edd('0x62')](_0x4a72d0);var _0x50f4fc=_0xc6bde6[_0x9edd('0x63')];var _0x321485=path[_0x9edd('0x16')](config[_0x9edd('0x64')],_0x9edd('0x65'),_0x50f4fc+'.csv');logger['info'](_0x9edd('0x66'),_0xc6bde6);db[_0x9edd('0x67')]['findAll']({'raw':!![],'attributes':['id','name']})['then'](function(_0x1bc89b){for(var _0x4e003a=0x0;_0x4e003a<_0x1bc89b['length'];_0x4e003a++){if(_0x1bc89b[_0x4e003a][_0x9edd('0x68')]in _0x4a72d0){contactItemTypes[_0x9edd('0x21')](_0x1bc89b[_0x4e003a]);delete _0x134c9c[_0x1bc89b[_0x4e003a]['name']];hasAdditionalPhones=!![];}for(var _0xb9ebeb in _0x4a72d0){if(_0x1bc89b[_0x4e003a][_0x9edd('0x68')]+_0x9edd('0x69')===_0xb9ebeb){phoneDescriptions['push']({'itemTypeId':_0x1bc89b[_0x4e003a]['id'],'description':_0xb9ebeb});delete _0x134c9c[_0xb9ebeb];}}}if(hasAdditionalPhones)_0x134c9c[_0x9edd('0x25')]='';var _0x57695c=_[_0x9edd('0x53')](_0x134c9c)[_0x9edd('0x16')]();logger['info'](_0x9edd('0x6a'),_0x57695c);fs[_0x9edd('0x6b')](_0x321485,_0x57695c+'\x0a');Papa['parse'](fs[_0x9edd('0x6c')](_0x344692),{'header':!![],'skipEmptyLines':!![],'step':function(_0x475dc3,_0x460a92){try{for(var _0x1d9536=0x0,_0x5ce70b=[];_0x1d9536<_0x475dc3[_0x9edd('0x6d')]['length'];_0x1d9536++){stats[_0x9edd('0x6e')]+=0x1;if(_0x475dc3[_0x9edd('0x5a')][_0x1d9536]){handleError(_0x475dc3[_0x9edd('0x6d')][_0x1d9536],_0x475dc3['errors'][_0x1d9536]);}else{var _0x106a67=[];var _0x286593=[];var _0x130dba={};for(var _0x383cb9 in _0x4a72d0){let _0x25626a=contactItemTypes[_0x9edd('0x6f')](_0x3fa4a9=>_0x3fa4a9['name']===_0x383cb9);let _0x5e29d0=contactItemTypes[_0x9edd('0x6f')](_0x3c7874=>_0x3c7874[_0x9edd('0x68')]+_0x9edd('0x69')===_0x383cb9);if(_[_0x9edd('0x20')](_0x25626a)&&_['isNil'](_0x5e29d0)){if(_0x4a72d0[_0x9edd('0x70')](_0x383cb9)){if(_0x475dc3[_0x9edd('0x6d')][_0x1d9536][_0x4a72d0[_0x383cb9]]){var _0x3e284d=_['trim'](_0x475dc3[_0x9edd('0x6d')][_0x1d9536][_0x4a72d0[_0x383cb9]][_0x9edd('0x71')](/"/g,'\x27'));switch(_0x383cb9){case'scheduledat':var _0x3f3093=moment(_0x3e284d,_0x9edd('0xe'),!![]);if(_0x3f3093['isValid']()){_0x5ce70b[_0x9edd('0x21')]('\x22'+_0x3e284d+'\x22');}else{_0x106a67[_0x9edd('0x21')]('scheduledat\x20wrong\x20format\x20(YYYY-MM-DD\x20HH:mm:ss)');}break;case _0x9edd('0x72'):var _0x4b8cbc=parseInt(_0x3e284d);_0x3e284d=_['isNaN'](_0x4b8cbc)||_0x4b8cbc<0x0||_0x4b8cbc>0x4?_0x2651a2?0x3:0x2:_0x4b8cbc;_0x5ce70b[_0x9edd('0x21')]('\x22'+_0x3e284d+'\x22');break;case _0x9edd('0x3f'):var _0x44b426=parseInt(_0x3e284d);if(_['isNumber'](_0x44b426)&&_[_0x9edd('0x73')](_0x5ca123,_0x44b426)){_0x5ce70b[_0x9edd('0x21')]('\x22'+_0x44b426+'\x22');}else{_0x106a67['push'](_0x9edd('0x74'));}break;case _0x9edd('0x75'):if(isEmail(_0x3e284d)){_0x5ce70b[_0x9edd('0x21')]('\x22'+_0x3e284d+'\x22');}else{_0x106a67[_0x9edd('0x21')]('email\x20wrong\x20format');}break;case'dateOfBirth':var _0x1129b7=moment(_0x3e284d,'YYYY-MM-DD',!![]);if(_0x1129b7[_0x9edd('0x76')]()){_0x5ce70b[_0x9edd('0x21')]('\x22'+_0x3e284d+'\x22');}else{_0x106a67[_0x9edd('0x21')](_0x9edd('0x77'));}break;default:_0x5ce70b[_0x9edd('0x21')]('\x22'+_0x3e284d+'\x22');}}else{switch(_0x383cb9){case _0x9edd('0x78'):case _0x9edd('0x14'):_0x106a67[_0x9edd('0x21')](_0x383cb9+_0x9edd('0x79'));break;default:_0x5ce70b['push']('\x22\x22');}}}}else{var _0x1f66fa='';if(!_[_0x9edd('0x20')](_0x25626a)){if(!_0x130dba[_0x9edd('0x70')](_0x25626a['id'])){for(var _0x8cc956=0x0;_0x8cc956<_0x4a72d0[_0x383cb9][_0x9edd('0x1f')];_0x8cc956++){var _0x3e284d=_[_0x9edd('0x7a')](_0x475dc3['data'][_0x1d9536][_0x4a72d0[_0x383cb9][_0x8cc956]][_0x9edd('0x71')](/"/g,'\x27'));var _0x454992=phoneDescriptions['find'](_0x26c11a=>_0x26c11a[_0x9edd('0x7b')]===_0x25626a['id']);if(!_['isNil'](_0x454992)){var _0x304e56=_[_0x9edd('0x7a')](_0x475dc3[_0x9edd('0x6d')][_0x1d9536][_0x4a72d0[_0x454992['description']][0x0]][_0x9edd('0x71')](/"/g,'\x27'));if(!_[_0x9edd('0x20')](_0x304e56))_0x3e284d=_0x3e284d+'§'+_0x304e56;}if(_0x1f66fa=='')_0x1f66fa=_0x3e284d;else _0x1f66fa+='|'+_0x3e284d;}_0x286593[_0x9edd('0x21')](_0x25626a['id']+':'+_0x1f66fa);_0x130dba[_0x25626a['id']]=0x1;}}}}if(hasAdditionalPhones){_0x5ce70b['push']('\x22'+_0x286593['join'](';')+'\x22');}if(_0x106a67['length']){handleError(_0x475dc3['data'][_0x1d9536],{'code':_0x9edd('0x7c'),'message':_0x106a67[_0x9edd('0x16')]()});}else{fs[_0x9edd('0x7d')](_0x321485,_0x5ce70b['join']()+'\x0a');}_0x5ce70b=[];}if(!(stats['rows']%0xc8)){socket['emit'](_0x9edd('0x7e')+_0x50f4fc,stats);stats[_0x9edd('0x5a')]=[];}}if(stopped){logger[_0x9edd('0x5c')](_0x9edd('0x7f'));_0x460a92[_0x9edd('0x80')]();}}catch(_0x18b25e){handleError(_0x475dc3[_0x9edd('0x6d')][_0x1d9536],{'code':_0x9edd('0x81'),'message':_0x18b25e[_0x9edd('0x5d')]});logger[_0x9edd('0x24')](_0x9edd('0x82'),_0x18b25e[_0x9edd('0x5d')]);}},'complete':function(){try{var _0x4cfa99=[];var _0x367fc6=tempTableName;_0x4cfa99[_0x9edd('0x21')](_0x9edd('0x83')+_0x367fc6+_0x9edd('0x84'));logger[_0x9edd('0x5c')](_0x9edd('0x85'),contactItemTypes[_0x9edd('0x1f')]);var _0x16b69c=util['format']('LOAD\x20DATA\x20LOCAL\x20INFILE\x20\x27%s\x27\x20INTO\x20TABLE\x20%s\x20CHARACTER\x20SET\x20UTF8\x20FIELDS\x20TERMINATED\x20BY\x20\x27,\x27\x20ENCLOSED\x20BY\x20\x27\x22\x27\x20LINES\x20TERMINATED\x20BY\x20\x27\x0a\x27\x20IGNORE\x201\x20ROWS\x20(%s)\x20SET\x20ListId\x20=\x20%s,\x20CompanyId\x20=\x20%s,\x20createdAt\x20=\x20\x27%s\x27,\x20updatedAt\x20=\x20\x27%s\x27',_0x321485,_0x367fc6,_0x57695c,_0xc6bde6[_0x9edd('0x3d')],_0xc6bde6['CompanyId']||null,NOW,NOW);if(_[_0x9edd('0x20')](_0x4a72d0['scheduledat'])){_0x16b69c+=_0x9edd('0x86');}_0x4cfa99[_0x9edd('0x21')](_0x16b69c);BPromise['each'](_0x4cfa99,handleQuery)[_0x9edd('0x23')](function(_0x411134){BPromise['all']([handleAdditionalPhones()])[_0x9edd('0x23')](function(){_0x4cfa99=[];for(var _0x3d1294=0x0;_0x3d1294<promisesContact[_0x9edd('0x1f')];_0x3d1294++){_0x4cfa99[_0x9edd('0x21')](updateContact(promisesContact[_0x3d1294][_0x9edd('0x87')]));}BPromise['all'](_0x4cfa99)[_0x9edd('0x23')](function(){_0x4cfa99=[];for(var _0x3ff07e=0x0;_0x3ff07e<promisesAdditionalPhones[_0x9edd('0x1f')];_0x3ff07e++){_0x4cfa99[_0x9edd('0x21')](createAdditionalPhone(promisesAdditionalPhones[_0x3ff07e][_0x9edd('0x88')],promisesAdditionalPhones[_0x3ff07e]['contactTypeId'],promisesAdditionalPhones[_0x3ff07e]['phone'],promisesAdditionalPhones[_0x3ff07e]['orderBy']));}BPromise['all'](_0x4cfa99)['then'](function(){_0x4cfa99=[];_0x4cfa99[_0x9edd('0x21')](insertCmHopperAdditionalPhones(_0xc6bde6['ListId']));_0x4cfa99['push'](_0x9edd('0x89')+_0x367fc6+';');BPromise[_0x9edd('0x8a')](_0x4cfa99,handleQuery)[_0x9edd('0x23')](function(_0x10e427){stats[_0x9edd('0x8b')]=!![];stats[_0x9edd('0x8c')]=updatedRows;socket[_0x9edd('0x8d')](_0x9edd('0x7e')+_0x50f4fc,stats);fs[_0x9edd('0x8e')](_0x344692);fs[_0x9edd('0x8e')](_0x321485);process['exit'](0x0);})[_0x9edd('0x8f')](function(_0x2fb1c2){logger[_0x9edd('0x24')](_0x2fb1c2[_0x9edd('0x5d')]);process[_0x9edd('0x59')](0x1);});});});});})[_0x9edd('0x8f')](function(_0x1d5906){logger[_0x9edd('0x24')](_0x1d5906['message']);process['exit'](0x1);});}catch(_0x401ad3){logger[_0x9edd('0x24')](_0x9edd('0x90'),_0x401ad3[_0x9edd('0x5d')]);process[_0x9edd('0x59')](0x1);}},'error':function(_0x3d15b5,_0x3e1d46,_0x22590d,_0x93fef1){throw new Error(_0x93fef1);}});});}function validate(){if(process[_0x9edd('0x91')]&&process[_0x9edd('0x91')][_0x9edd('0x1f')]<0x4){throw new Error(_0x9edd('0x92'));}var _0xf418d=path['join'](config[_0x9edd('0x64')],_0x9edd('0x65'),process['argv'][0x2]);if(!fs[_0x9edd('0x93')](_0xf418d)){throw new Error(_0x9edd('0x94'));}var _0x22959a={};try{_0x22959a=JSON[_0x9edd('0x95')](process['argv'][0x3]);if(!_0x22959a[_0x9edd('0x61')]){throw new Error(_0x9edd('0x96'));}var _0xbb5202=0x0;if(_0x22959a[_0x9edd('0x61')][_0x9edd('0x3f')]){_0xbb5202=0x1;}if(!_0x22959a['ListId']){throw new Error(_0x9edd('0x97'));}}catch(_0x1c21d5){throw new Error(_0x9edd('0x98'));}var _0x4633eb=[];try{_0x4633eb=_[_0x9edd('0x99')](JSON['parse'](process['argv'][0x4]),'id');}catch(_0x2f8ce1){logger['info'](_0x9edd('0x9a'));}main(_0xf418d,_0x22959a,_0x4633eb,_0xbb5202);}validate();process['on']('SIGINT',handleStop);process['on'](_0x9edd('0x9b'),handleUncaughtException);
\ No newline at end of file
+var _0xa9e0=['error','message','split','CmContactHasItem','findOne','update','updated','create','PHONE','CmContact','CmHopper','cm_contacts.phone','cm_contacts.scheduledat','cm_contacts.ListId','cm_contacts.createdAt','cm_contacts.updatedAt','cm_contacts.priority','into','fromQuery','scheduledat','ContactId','createdAt','updatedAt','priority','recallme','select','fields','cm_contacts','cm_contacts.ListId\x20=\x20','.CmListId\x20=\x20?','cm_contacts.phone\x20NOT\x20IN\x20(?)','\x22always\x22','\x22onlyIfOpen\x22','cm_hopper','toString','cm_contacts.id','insert','ListId','.CmListId','cm_contacts.createdAt\x20=\x20?','cm_hopper_black','ListId\x20=\x20?','\x20=\x20?','cm_hopper.id','cm_contact_has_items.item','cm_contact_has_items.OrderBy','cm_contact_has_items.updatedAt','cm_hopper_additional_phones','CmHopperId','OrderBy','cm_contacts.id\x20=\x20cm_hopper.ContactId','cm_contact_has_items','cm_contacts.id\x20=\x20cm_contact_has_items.CmContactId','cm_hopper.ListId\x20=\x20?','concat','keys','id\x20IN\x20?','min_id','group','info','Received\x20SIGINT','errors','code','spread','main','stringify','start','binding','clone','socket_timestamp','root','.csv','ContactItemType','findAll','name','header','writeFileSync','parse','createReadStream','data','rows','find','hasOwnProperty','trim','replace','YYYY-MM-DD\x20HH:mm:ss','isValid','scheduledat\x20wrong\x20format\x20(YYYY-MM-DD\x20HH:mm:ss)','isNaN','UserId','isNumber','includes','agent\x20not\x20exists','email','email\x20wrong\x20format','dateOfBirth','YYYY-MM-DD','dateOfBirth\x20wrong\x20format\x20(YYYY-MM-DD)','firstName','\x20not\x20specified','itemTypeId','description','SystemRow','appendFileSync','emit','Abort\x20parser','abort','SystemError','CIS\x20len','LOAD\x20DATA\x20LOCAL\x20INFILE\x20\x27%s\x27\x20INTO\x20TABLE\x20%s\x20CHARACTER\x20SET\x20UTF8\x20FIELDS\x20TERMINATED\x20BY\x20\x27,\x27\x20ENCLOSED\x20BY\x20\x27\x22\x27\x20LINES\x20TERMINATED\x20BY\x20\x27\x0a\x27\x20IGNORE\x201\x20ROWS\x20(%s)\x20SET\x20ListId\x20=\x20%s,\x20CompanyId\x20=\x20%s,\x20createdAt\x20=\x20\x27%s\x27,\x20updatedAt\x20=\x20\x27%s\x27','each','contactId','contactTypeId','DROP\x20TABLE\x20','finish','affectedRows','contact:import:','unlink','exit','complete','argv','arguments\x20<filename>\x20<parameters>\x20<agents>','server/files/tmp','existsSync','file\x20doesn\x27t\x20exists','binding\x20doesn\x27t\x20exists','ListId\x20is\x20mandatory','body\x20id\x20mandatory','map','No\x20agent\x20available','path','lodash','papaparse','moment','ioredis','../../../mysqldb','../../../config/environment','../../../config/logger','import','defaults','redis','localhost','format','YYYYMMDDHHmmss','test','field','phone','from','join','.id\x20=\x20','where','.dialCheckDuplicateType\x20IN\x20(','sequelize','select\x20*\x20from\x20','length','isNil','AdditionalPhones','push','all','then','catch'];(function(_0x2f1cd1,_0x1d69eb){var _0xfe5c3e=function(_0x13a44a){while(--_0x13a44a){_0x2f1cd1['push'](_0x2f1cd1['shift']());}};_0xfe5c3e(++_0x1d69eb);}(_0xa9e0,0x123));var _0x0a9e=function(_0x37bd26,_0x5ad346){_0x37bd26=_0x37bd26-0x0;var _0xe83dc4=_0xa9e0[_0x37bd26];return _0xe83dc4;};'use strict';var fs=require('fs');var path=require(_0x0a9e('0x0'));var _=require(_0x0a9e('0x1'));var Papa=require(_0x0a9e('0x2'));var util=require('util');var BPromise=require('bluebird');var moment=require(_0x0a9e('0x3'));var squel=require('squel');var Redis=require(_0x0a9e('0x4'));var db=require(_0x0a9e('0x5'))['db'];var config=require(_0x0a9e('0x6'));var logger=require(_0x0a9e('0x7'))(_0x0a9e('0x8'));config['redis']=_[_0x0a9e('0x9')](config[_0x0a9e('0xa')],{'host':_0x0a9e('0xb'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config['redis']));var stats={'finish':![],'errors':[],'rows':0x0,'affectedRows':0x0};var results=[];var promisesAdditionalPhones=[];var promisesContact=[];var orderBy=0x0;var updatedRows=0x0;var stopped=![];var NOW=moment()[_0x0a9e('0xc')]('YYYY-MM-DD\x20HH:mm:ss');var tempTableName='cm_contacts_temp_'+moment()[_0x0a9e('0xc')](_0x0a9e('0xd'));var contactItemTypes=[];var phoneDescriptions=[];var hasAdditionalPhones=![];function isEmail(_0x307b3e){return/^([^\x00-\x20\x22\x28\x29\x2c\x2e\x3a-\x3c\x3e\x40\x5b-\x5d\x7f-\xff]+|\x22([^\x0d\x22\x5c\x80-\xff]|\x5c[\x00-\x7f])*\x22)(\x2e([^\x00-\x20\x22\x28\x29\x2c\x2e\x3a-\x3c\x3e\x40\x5b-\x5d\x7f-\xff]+|\x22([^\x0d\x22\x5c\x80-\xff]|\x5c[\x00-\x7f])*\x22))*\x40([^\x00-\x20\x22\x28\x29\x2c\x2e\x3a-\x3c\x3e\x40\x5b-\x5d\x7f-\xff]+|\x5b([^\x0d\x5b-\x5d\x80-\xff]|\x5c[\x00-\x7f])*\x5d)(\x2e([^\x00-\x20\x22\x28\x29\x2c\x2e\x3a-\x3c\x3e\x40\x5b-\x5d\x7f-\xff]+|\x5b([^\x0d\x5b-\x5d\x80-\xff]|\x5c[\x00-\x7f])*\x5d))*$/[_0x0a9e('0xe')](_0x307b3e);}function selectNotIn(_0xfeb75b,_0xbd1168,_0x4a4c56,_0x50dfb2,_0x527cdd){return squel['select']()[_0x0a9e('0xf')](_0x0a9e('0x10'))[_0x0a9e('0x11')](_0x50dfb2)[_0x0a9e('0x12')](_0xbd1168,null,_0xbd1168+_0x0a9e('0x13')+_0x50dfb2+'.'+_0x4a4c56)[_0x0a9e('0x14')](_0x50dfb2+'.'+_0x4a4c56+'\x20=\x20'+_0xfeb75b+'.'+_0x4a4c56)[_0x0a9e('0x14')](_0xbd1168+_0x0a9e('0x15')+_0x527cdd[_0x0a9e('0x12')]()+')');}function handleAdditionalPhones(){return new Promise(function(_0x281129,_0x44dcfd){promisesAdditionalPhones=[];promisesContact=[];return db[_0x0a9e('0x16')]['query'](_0x0a9e('0x17')+tempTableName)['spread'](function(_0x1985b6){if(_0x1985b6!==null){var _0x519dfd=[];for(var _0x16033c=0x0;_0x16033c<_0x1985b6[_0x0a9e('0x18')];_0x16033c++){var _0x48f32d=_0x1985b6[_0x16033c];if(!_[_0x0a9e('0x19')](_0x48f32d['phone'])){if(!_[_0x0a9e('0x19')](_0x48f32d[_0x0a9e('0x1a')]))_0x519dfd[_0x0a9e('0x1b')](insertAdditionalPhones(_0x48f32d));promisesContact[_0x0a9e('0x1b')]({'contact':_0x48f32d});}}}Promise[_0x0a9e('0x1c')](_0x519dfd)[_0x0a9e('0x1d')](function(){_0x281129({'val':0x1});});})[_0x0a9e('0x1e')](function(_0x20559e){logger[_0x0a9e('0x1f')](_0x20559e[_0x0a9e('0x20')]);});});}function insertAdditionalPhones(_0x1c696a){return new Promise(function(_0x105080,_0x4bb1e3){var _0x2c3407=_0x1c696a[_0x0a9e('0x1a')];if(_['isNil'](_0x2c3407))_0x4bb1e3({'val':0x0});else{var _0x20f109=_0x2c3407['split'](';');var _0x588269=[];orderBy=0x0;for(var _0x3a02e1=0x0;_0x3a02e1<_0x20f109[_0x0a9e('0x18')];_0x3a02e1++){_0x588269[_0x0a9e('0x1b')](splitAdditionalPhone(_0x1c696a['id'],_0x20f109[_0x3a02e1]));}Promise[_0x0a9e('0x1c')](_0x588269)['then'](function(){_0x105080({'val':_0x20f109[_0x0a9e('0x18')]});});}});}function splitAdditionalPhone(_0x2fb0e4,_0x3b45bc){return new Promise(function(_0x4d00e6,_0x370d86){var _0x42ac8f=_0x3b45bc[_0x0a9e('0x21')](':');var _0x5ea472=_0x42ac8f[0x0];var _0x59181e=_0x42ac8f[0x1];if(_0x59181e!==''){var _0x197ec0=_0x59181e[_0x0a9e('0x21')]('|');var _0x40c424=[];for(var _0x33161b=0x0;_0x33161b<_0x197ec0['length'];_0x33161b++){if(_0x197ec0[_0x33161b]!==''){var _0x384319=_['filter'](promisesAdditionalPhones,{'contactId':_0x2fb0e4,'phone':_0x197ec0[_0x33161b]});if(_0x384319[_0x0a9e('0x18')]==0x0){orderBy++;promisesAdditionalPhones['push']({'contactId':_0x2fb0e4,'contactTypeId':_0x5ea472,'phone':_0x197ec0[_0x33161b],'orderBy':orderBy});}}}_0x4d00e6({'ok':0x1});}else _0x4d00e6({'res':0x0});});}function createAdditionalPhone(_0x1dc186,_0x34dc65,_0x25fba9,_0x14433c){var _0x140511='';var _0x1538a4='';var _0x11c3b6=_0x25fba9[_0x0a9e('0x21')]('§');_0x140511=_0x11c3b6[0x0];if(_0x11c3b6['length']==0x2)_0x1538a4=_0x11c3b6[0x1];return new Promise(function(_0x3652a7,_0x468813){return db[_0x0a9e('0x22')][_0x0a9e('0x23')]({'where':{'CmContactId':_0x1dc186,'item':_0x140511}})['then'](function(_0x15b200){if(_0x15b200){return db[_0x0a9e('0x22')][_0x0a9e('0x24')]({'ItemTypeId':_0x34dc65,'description':_0x1538a4,'OrderBy':_0x14433c},{'where':{'CmContactId':_0x1dc186,'item':_0x140511}})[_0x0a9e('0x1d')](function(_0x58b06f){_0x3652a7({'res':_0x0a9e('0x25')});});}else{return db[_0x0a9e('0x22')][_0x0a9e('0x26')]({'CmContactId':_0x1dc186,'item':_0x140511,'ItemTypeId':_0x34dc65,'description':_0x1538a4,'OrderBy':_0x14433c,'ItemClass':_0x0a9e('0x27')})['then'](function(_0x426950){_0x3652a7({'res':'inserted'});});}});});}function updateContact(_0x2407f9){return new Promise(function(_0x3ae878,_0x1122db){var _0x33bdb7=_0x2407f9['id'];delete _0x2407f9['id'];return db[_0x0a9e('0x28')]['update'](_0x2407f9,{'where':{'id':_0x33bdb7}})[_0x0a9e('0x1d')](function(_0x46f0a5){updatedRows+=0x1;return db[_0x0a9e('0x29')][_0x0a9e('0x24')]({'phone':_0x2407f9[_0x0a9e('0x10')]},{'where':{'ContactId':_0x33bdb7}})[_0x0a9e('0x1d')](function(_0x332d35){_0x3ae878({'ret':'OK'});});});});}function insertCmHopper(_0x39e565,_0x5583a4,_0x44295a,_0x5e7238,_0x2cc7a0){var _0x14b13f=[_0x0a9e('0x2a'),_0x0a9e('0x2b'),'cm_contacts.id',_0x0a9e('0x2c'),_0x5583a4+'.'+_0x5e7238,_0x0a9e('0x2d'),_0x0a9e('0x2e'),_0x0a9e('0x2f'),'cm_contacts.UserId','\x22'+_0x2cc7a0+'\x22'];return squel['insert']()[_0x0a9e('0x30')]('cm_hopper')[_0x0a9e('0x31')]([_0x0a9e('0x10'),_0x0a9e('0x32'),_0x0a9e('0x33'),'ListId',_0x5e7238,_0x0a9e('0x34'),_0x0a9e('0x35'),_0x0a9e('0x36'),'UserId',_0x0a9e('0x37')],squel[_0x0a9e('0x38')]()[_0x0a9e('0x39')](_0x14b13f)['from'](_0x5583a4)['join'](_0x0a9e('0x3a'),null,_0x0a9e('0x3b')+_0x5583a4+'.CmListId')[_0x0a9e('0x12')](_0x44295a,null,_0x44295a+_0x0a9e('0x13')+_0x5583a4+'.'+_0x5e7238)[_0x0a9e('0x14')](_0x5583a4+_0x0a9e('0x3c'),_0x39e565)['where']('cm_contacts.createdAt\x20=\x20?',NOW)[_0x0a9e('0x14')](_0x0a9e('0x3d'),selectNotIn(_0x5583a4,_0x44295a,_0x5e7238,'cm_hopper',[_0x0a9e('0x3e'),_0x0a9e('0x3f')]))[_0x0a9e('0x14')]('cm_contacts.phone\x20NOT\x20IN\x20(?)',selectNotIn(_0x5583a4,_0x44295a,_0x5e7238,_0x0a9e('0x40'),[_0x0a9e('0x3e')])))[_0x0a9e('0x41')]();}function insertCmHopperBlack(_0x43dd5b,_0x13cb1f,_0xeaa5e5,_0x2881b3){var _0x45a9b8=[_0x0a9e('0x2a'),_0x0a9e('0x42'),_0x0a9e('0x2c'),_0x13cb1f+'.'+_0x2881b3,_0x0a9e('0x2d'),_0x0a9e('0x2e')];return squel[_0x0a9e('0x43')]()[_0x0a9e('0x30')]('cm_hopper_black')['fromQuery']([_0x0a9e('0x10'),_0x0a9e('0x33'),_0x0a9e('0x44'),_0x2881b3,_0x0a9e('0x34'),_0x0a9e('0x35')],squel[_0x0a9e('0x38')]()[_0x0a9e('0x39')](_0x45a9b8)[_0x0a9e('0x11')](_0x13cb1f)[_0x0a9e('0x12')](_0x0a9e('0x3a'),null,_0x0a9e('0x3b')+_0x13cb1f+_0x0a9e('0x45'))['join'](_0xeaa5e5,null,_0xeaa5e5+_0x0a9e('0x13')+_0x13cb1f+'.'+_0x2881b3)[_0x0a9e('0x14')](_0x13cb1f+_0x0a9e('0x3c'),_0x43dd5b)[_0x0a9e('0x14')](_0x0a9e('0x46'),NOW)[_0x0a9e('0x14')](_0x0a9e('0x3d'),squel[_0x0a9e('0x38')]()['field'](_0x0a9e('0x10'))['from'](_0x0a9e('0x47'))[_0x0a9e('0x14')](_0x0a9e('0x48'),_0x43dd5b)['where'](_0x2881b3+_0x0a9e('0x49'),_0x13cb1f+'.'+_0x2881b3)))[_0x0a9e('0x41')]();}function insertCmHopperAdditionalPhones(_0x4774f4){var _0x34aa5a=[_0x0a9e('0x4a'),_0x0a9e('0x4b'),_0x0a9e('0x4c'),'cm_contact_has_items.createdAt',_0x0a9e('0x4d')];return squel[_0x0a9e('0x43')]()[_0x0a9e('0x30')](_0x0a9e('0x4e'))[_0x0a9e('0x31')]([_0x0a9e('0x4f'),_0x0a9e('0x10'),_0x0a9e('0x50'),_0x0a9e('0x34'),'updatedAt'],squel[_0x0a9e('0x38')]()[_0x0a9e('0x39')](_0x34aa5a)['from']('cm_hopper')['join'](_0x0a9e('0x3a'),null,_0x0a9e('0x51'))[_0x0a9e('0x12')](_0x0a9e('0x52'),null,_0x0a9e('0x53'))[_0x0a9e('0x14')](_0x0a9e('0x54'),_0x4774f4)[_0x0a9e('0x14')]('cm_contacts.createdAt\x20=\x20?',NOW))['toString']();}function insertCmContact(_0x53975a,_0x39d77d,_0x204173,_0x14d602){var _0x5bb3ed=_[_0x0a9e('0x55')](_[_0x0a9e('0x56')](_0x14d602),['ListId','CompanyId',_0x0a9e('0x34'),'updatedAt']);return squel[_0x0a9e('0x43')]()['into'](_0x0a9e('0x3a'))[_0x0a9e('0x31')](_0x5bb3ed,squel[_0x0a9e('0x38')]()['fields'](_0x5bb3ed)[_0x0a9e('0x11')](_0x39d77d)[_0x0a9e('0x14')]('('+_0x204173['join'](',')+')\x20NOT\x20IN\x20?',squel[_0x0a9e('0x38')]()[_0x0a9e('0x39')](_0x204173)['from'](_0x0a9e('0x3a'))['where'](_0x0a9e('0x48'),_0x53975a))['where'](_0x0a9e('0x57'),squel['select']()['field']('MIN(id)',_0x0a9e('0x58'))['from'](_0x39d77d)[_0x0a9e('0x59')](_0x204173[_0x0a9e('0x12')](','))))[_0x0a9e('0x41')]();}function handleStop(){logger[_0x0a9e('0x5a')](_0x0a9e('0x5b'));stopped=!![];}function handleUncaughtException(_0x272738){logger[_0x0a9e('0x1f')](_0x272738[_0x0a9e('0x20')]);process['exit'](0x1);}function handleError(_0x1c693e,_0x121cef){stats[_0x0a9e('0x5c')][_0x0a9e('0x1b')]({'name':_0x121cef[_0x0a9e('0x5d')],'message':_0x121cef[_0x0a9e('0x20')],'row':_0x1c693e});}function handleQuery(_0x5d86e9){logger[_0x0a9e('0x5a')](_0x5d86e9);return db[_0x0a9e('0x16')]['query'](_0x5d86e9)[_0x0a9e('0x5e')](function(_0x5cc8fb){results[_0x0a9e('0x1b')](_0x5cc8fb);})['catch'](function(_0x4b3c1a){logger['error'](_0x4b3c1a[_0x0a9e('0x20')]);});}function main(_0x49d231,_0x2244d6,_0x1fc70e,_0x261adb){logger[_0x0a9e('0x5a')](_0x0a9e('0x5f'),_0x49d231,JSON[_0x0a9e('0x60')](_0x2244d6));process['send'](_0x0a9e('0x61'));var _0x5854cc=_0x2244d6[_0x0a9e('0x62')];var _0x1f07cb=_[_0x0a9e('0x63')](_0x5854cc);var _0x5adf8f=_0x2244d6[_0x0a9e('0x64')];var _0x156f1c=path[_0x0a9e('0x12')](config[_0x0a9e('0x65')],'server/files/tmp',_0x5adf8f+_0x0a9e('0x66'));logger[_0x0a9e('0x5a')]('body',_0x2244d6);db[_0x0a9e('0x67')][_0x0a9e('0x68')]({'raw':!![],'attributes':['id',_0x0a9e('0x69')]})[_0x0a9e('0x1d')](function(_0x401837){for(var _0x4d4a35=0x0;_0x4d4a35<_0x401837[_0x0a9e('0x18')];_0x4d4a35++){if(_0x401837[_0x4d4a35][_0x0a9e('0x69')]in _0x5854cc){contactItemTypes[_0x0a9e('0x1b')](_0x401837[_0x4d4a35]);delete _0x1f07cb[_0x401837[_0x4d4a35]['name']];hasAdditionalPhones=!![];}for(var _0x3528b7 in _0x5854cc){if(_0x401837[_0x4d4a35]['name']+'_description'===_0x3528b7){phoneDescriptions[_0x0a9e('0x1b')]({'itemTypeId':_0x401837[_0x4d4a35]['id'],'description':_0x3528b7});delete _0x1f07cb[_0x3528b7];}}}if(hasAdditionalPhones)_0x1f07cb[_0x0a9e('0x1a')]='';var _0x9375fb=_[_0x0a9e('0x56')](_0x1f07cb)[_0x0a9e('0x12')]();logger[_0x0a9e('0x5a')](_0x0a9e('0x6a'),_0x9375fb);fs[_0x0a9e('0x6b')](_0x156f1c,_0x9375fb+'\x0a');Papa[_0x0a9e('0x6c')](fs[_0x0a9e('0x6d')](_0x49d231),{'header':!![],'skipEmptyLines':!![],'step':function(_0x2e89b7,_0x19012b){try{for(var _0x2bbb86=0x0,_0x2b8192=[];_0x2bbb86<_0x2e89b7[_0x0a9e('0x6e')][_0x0a9e('0x18')];_0x2bbb86++){stats[_0x0a9e('0x6f')]+=0x1;if(_0x2e89b7[_0x0a9e('0x5c')][_0x2bbb86]){handleError(_0x2e89b7['data'][_0x2bbb86],_0x2e89b7[_0x0a9e('0x5c')][_0x2bbb86]);}else{var _0x295763=[];var _0x243d12=[];var _0x4edbb0={};for(var _0x1148a1 in _0x5854cc){let _0x30944e=contactItemTypes['find'](_0x83f0b2=>_0x83f0b2[_0x0a9e('0x69')]===_0x1148a1);let _0x3ef315=contactItemTypes[_0x0a9e('0x70')](_0x13b5c0=>_0x13b5c0['name']+'_description'===_0x1148a1);if(_['isNil'](_0x30944e)&&_[_0x0a9e('0x19')](_0x3ef315)){if(_0x5854cc[_0x0a9e('0x71')](_0x1148a1)){if(_0x2e89b7[_0x0a9e('0x6e')][_0x2bbb86][_0x5854cc[_0x1148a1]]){var _0x5b35db=_[_0x0a9e('0x72')](_0x2e89b7[_0x0a9e('0x6e')][_0x2bbb86][_0x5854cc[_0x1148a1]][_0x0a9e('0x73')](/"/g,'\x27'));switch(_0x1148a1){case _0x0a9e('0x32'):var _0x5512d1=moment(_0x5b35db,_0x0a9e('0x74'),!![]);if(_0x5512d1[_0x0a9e('0x75')]()){_0x2b8192[_0x0a9e('0x1b')]('\x22'+_0x5b35db+'\x22');}else{_0x295763['push'](_0x0a9e('0x76'));}break;case'priority':var _0x4437ff=parseInt(_0x5b35db);_0x5b35db=_[_0x0a9e('0x77')](_0x4437ff)||_0x4437ff<0x0||_0x4437ff>0x4?_0x261adb?0x3:0x2:_0x4437ff;_0x2b8192['push']('\x22'+_0x5b35db+'\x22');break;case _0x0a9e('0x78'):var _0x75912a=parseInt(_0x5b35db);if(_[_0x0a9e('0x79')](_0x75912a)&&_[_0x0a9e('0x7a')](_0x1fc70e,_0x75912a)){_0x2b8192['push']('\x22'+_0x75912a+'\x22');}else{_0x295763[_0x0a9e('0x1b')](_0x0a9e('0x7b'));}break;case _0x0a9e('0x7c'):if(isEmail(_0x5b35db)){_0x2b8192[_0x0a9e('0x1b')]('\x22'+_0x5b35db+'\x22');}else{_0x295763['push'](_0x0a9e('0x7d'));}break;case _0x0a9e('0x7e'):var _0x2d5506=moment(_0x5b35db,_0x0a9e('0x7f'),!![]);if(_0x2d5506['isValid']()){_0x2b8192[_0x0a9e('0x1b')]('\x22'+_0x5b35db+'\x22');}else{_0x295763[_0x0a9e('0x1b')](_0x0a9e('0x80'));}break;default:_0x2b8192[_0x0a9e('0x1b')]('\x22'+_0x5b35db+'\x22');}}else{switch(_0x1148a1){case _0x0a9e('0x81'):case _0x0a9e('0x10'):_0x295763[_0x0a9e('0x1b')](_0x1148a1+_0x0a9e('0x82'));break;default:_0x2b8192[_0x0a9e('0x1b')]('\x22\x22');}}}}else{var _0x336dc3='';if(!_[_0x0a9e('0x19')](_0x30944e)){if(!_0x4edbb0[_0x0a9e('0x71')](_0x30944e['id'])){for(var _0x25744a=0x0;_0x25744a<_0x5854cc[_0x1148a1][_0x0a9e('0x18')];_0x25744a++){var _0x5b35db=_[_0x0a9e('0x72')](_0x2e89b7[_0x0a9e('0x6e')][_0x2bbb86][_0x5854cc[_0x1148a1][_0x25744a]][_0x0a9e('0x73')](/"/g,'\x27'));var _0x563627=phoneDescriptions[_0x0a9e('0x70')](_0x33dda0=>_0x33dda0[_0x0a9e('0x83')]===_0x30944e['id']);if(!_[_0x0a9e('0x19')](_0x563627)){var _0x56d650=_['trim'](_0x2e89b7[_0x0a9e('0x6e')][_0x2bbb86][_0x5854cc[_0x563627[_0x0a9e('0x84')]][0x0]]['replace'](/"/g,'\x27'));if(!_[_0x0a9e('0x19')](_0x56d650))_0x5b35db=_0x5b35db+'§'+_0x56d650;}if(_0x336dc3=='')_0x336dc3=_0x5b35db;else _0x336dc3+='|'+_0x5b35db;}_0x243d12['push'](_0x30944e['id']+':'+_0x336dc3);_0x4edbb0[_0x30944e['id']]=0x1;}}}}if(hasAdditionalPhones){_0x2b8192[_0x0a9e('0x1b')]('\x22'+_0x243d12[_0x0a9e('0x12')](';')+'\x22');}if(_0x295763['length']){handleError(_0x2e89b7[_0x0a9e('0x6e')][_0x2bbb86],{'code':_0x0a9e('0x85'),'message':_0x295763[_0x0a9e('0x12')]()});}else{fs[_0x0a9e('0x86')](_0x156f1c,_0x2b8192[_0x0a9e('0x12')]()+'\x0a');}_0x2b8192=[];}if(!(stats[_0x0a9e('0x6f')]%0xc8)){socket[_0x0a9e('0x87')]('contact:import:'+_0x5adf8f,stats);stats[_0x0a9e('0x5c')]=[];}}if(stopped){logger[_0x0a9e('0x5a')](_0x0a9e('0x88'));_0x19012b[_0x0a9e('0x89')]();}}catch(_0x492543){handleError(_0x2e89b7[_0x0a9e('0x6e')][_0x2bbb86],{'code':_0x0a9e('0x8a'),'message':_0x492543['message']});logger[_0x0a9e('0x1f')]('step',_0x492543[_0x0a9e('0x20')]);}},'complete':function(){try{var _0x2bb25a=[];var _0x3003eb=tempTableName;_0x2bb25a[_0x0a9e('0x1b')]('CREATE\x20TABLE\x20'+_0x3003eb+'\x20LIKE\x20cm_contacts;');logger[_0x0a9e('0x5a')](_0x0a9e('0x8b'),contactItemTypes[_0x0a9e('0x18')]);var _0x5ac73d=util[_0x0a9e('0xc')](_0x0a9e('0x8c'),_0x156f1c,_0x3003eb,_0x9375fb,_0x2244d6['ListId'],_0x2244d6['CompanyId']||null,NOW,NOW);if(_[_0x0a9e('0x19')](_0x5854cc['scheduledat'])){_0x5ac73d+=',\x20scheduledAt\x20=\x20NOW()';}_0x2bb25a['push'](_0x5ac73d);BPromise[_0x0a9e('0x8d')](_0x2bb25a,handleQuery)[_0x0a9e('0x1d')](function(_0x9044fe){BPromise[_0x0a9e('0x1c')]([handleAdditionalPhones()])[_0x0a9e('0x1d')](function(){_0x2bb25a=[];for(var _0x2600de=0x0;_0x2600de<promisesContact['length'];_0x2600de++){_0x2bb25a[_0x0a9e('0x1b')](updateContact(promisesContact[_0x2600de]['contact']));}BPromise[_0x0a9e('0x1c')](_0x2bb25a)[_0x0a9e('0x1d')](function(){_0x2bb25a=[];for(var _0x18ad56=0x0;_0x18ad56<promisesAdditionalPhones[_0x0a9e('0x18')];_0x18ad56++){_0x2bb25a['push'](createAdditionalPhone(promisesAdditionalPhones[_0x18ad56][_0x0a9e('0x8e')],promisesAdditionalPhones[_0x18ad56][_0x0a9e('0x8f')],promisesAdditionalPhones[_0x18ad56][_0x0a9e('0x10')],promisesAdditionalPhones[_0x18ad56]['orderBy']));}BPromise[_0x0a9e('0x1c')](_0x2bb25a)[_0x0a9e('0x1d')](function(){_0x2bb25a=[];_0x2bb25a[_0x0a9e('0x1b')](insertCmHopperAdditionalPhones(_0x2244d6[_0x0a9e('0x44')]));_0x2bb25a[_0x0a9e('0x1b')](_0x0a9e('0x90')+_0x3003eb+';');BPromise[_0x0a9e('0x8d')](_0x2bb25a,handleQuery)[_0x0a9e('0x1d')](function(_0x509efe){stats[_0x0a9e('0x91')]=!![];stats[_0x0a9e('0x92')]=updatedRows;socket['emit'](_0x0a9e('0x93')+_0x5adf8f,stats);fs[_0x0a9e('0x94')](_0x49d231);fs[_0x0a9e('0x94')](_0x156f1c);process['exit'](0x0);})[_0x0a9e('0x1e')](function(_0x52ec10){logger[_0x0a9e('0x1f')](_0x52ec10[_0x0a9e('0x20')]);process[_0x0a9e('0x95')](0x1);});});});});})[_0x0a9e('0x1e')](function(_0x842d6f){logger[_0x0a9e('0x1f')](_0x842d6f[_0x0a9e('0x20')]);process[_0x0a9e('0x95')](0x1);});}catch(_0x501050){logger[_0x0a9e('0x1f')](_0x0a9e('0x96'),_0x501050[_0x0a9e('0x20')]);process[_0x0a9e('0x95')](0x1);}},'error':function(_0x28e60a,_0x3df9e4,_0x6803d6,_0x33f0c9){throw new Error(_0x33f0c9);}});});}function validate(){if(process[_0x0a9e('0x97')]&&process[_0x0a9e('0x97')][_0x0a9e('0x18')]<0x4){throw new Error(_0x0a9e('0x98'));}var _0x18273f=path['join'](config[_0x0a9e('0x65')],_0x0a9e('0x99'),process[_0x0a9e('0x97')][0x2]);if(!fs[_0x0a9e('0x9a')](_0x18273f)){throw new Error(_0x0a9e('0x9b'));}var _0x5d9ddb={};try{_0x5d9ddb=JSON[_0x0a9e('0x6c')](process[_0x0a9e('0x97')][0x3]);if(!_0x5d9ddb['binding']){throw new Error(_0x0a9e('0x9c'));}var _0x5e725e=0x0;if(_0x5d9ddb[_0x0a9e('0x62')][_0x0a9e('0x78')]){_0x5e725e=0x1;}if(!_0x5d9ddb[_0x0a9e('0x44')]){throw new Error(_0x0a9e('0x9d'));}}catch(_0x4f4d2d){throw new Error(_0x0a9e('0x9e'));}var _0x4cf72d=[];try{_0x4cf72d=_[_0x0a9e('0x9f')](JSON[_0x0a9e('0x6c')](process['argv'][0x4]),'id');}catch(_0x231c6a){logger[_0x0a9e('0x5a')](_0x0a9e('0xa0'));}main(_0x18273f,_0x5d9ddb,_0x4cf72d,_0x5e725e);}validate();process['on']('SIGINT',handleStop);process['on']('uncaughtException',handleUncaughtException);
\ No newline at end of file