Built motion from commit 3d3e98f2.|2.6.29
[motion2.git] / server / components / import / cm / csvUpdates.js
index 04d1e09..4746af1 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x110f=['file\x20doesn\x27t\x20exists','ListId\x20is\x20mandatory','body\x20id\x20mandatory','map','No\x20agent\x20available','SIGINT','path','lodash','moment','ioredis','../../../mysqldb','../../../config/environment','import','redis','defaults','localhost','socket.io-emitter','YYYY-MM-DD\x20HH:mm:ss','cm_contacts_temp_','format','test','field','phone','from','join','where','\x20=\x20','sequelize','query','select\x20*\x20from\x20','spread','length','isNil','AdditionalPhones','push','then','catch','error','message','split','filter','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.updatedAt','cm_contacts.priority','cm_contacts.UserId','into','cm_hopper','fromQuery','scheduledat','ContactId','ListId','createdAt','updatedAt','priority','UserId','recallme','cm_contacts','cm_contacts.ListId\x20=\x20','.CmListId','.id\x20=\x20','.CmListId\x20=\x20?','cm_contacts.phone\x20NOT\x20IN\x20(?)','\x22always\x22','\x22onlyIfOpen\x22','insert','cm_hopper_black','fields','cm_contacts.createdAt\x20=\x20?','select','cm_hopper.id','cm_contact_has_items.OrderBy','cm_contact_has_items.createdAt','cm_contact_has_items.updatedAt','cm_hopper_additional_phones','CmHopperId','OrderBy','cm_contact_has_items','cm_contacts.id\x20=\x20cm_contact_has_items.CmContactId','cm_hopper.ListId\x20=\x20?','concat','keys','CompanyId',')\x20NOT\x20IN\x20?','ListId\x20=\x20?','id\x20IN\x20?','MIN(id)','min_id','toString','info','Received\x20SIGINT','errors','code','stringify','start','binding','clone','root','server/files/tmp','.csv','ContactItemType','findAll','name','_description','parse','createReadStream','data','find','hasOwnProperty','trim','replace','isValid','isNaN','isNumber','includes','agent\x20not\x20exists','email','email\x20wrong\x20format','YYYY-MM-DD','firstName','\x20not\x20specified','description','SystemRow','appendFileSync','rows','emit','contact:import:','Abort\x20parser','SystemError','step','\x20LIKE\x20cm_contacts;','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',',\x20scheduledAt\x20=\x20NOW()','each','all','contact','contactId','contactTypeId','orderBy','DROP\x20TABLE\x20','finish','affectedRows','unlink','exit','argv','arguments\x20<filename>\x20<parameters>\x20<agents>','existsSync'];(function(_0x2b48ac,_0x29442a){var _0x20ab20=function(_0x3c19ee){while(--_0x3c19ee){_0x2b48ac['push'](_0x2b48ac['shift']());}};_0x20ab20(++_0x29442a);}(_0x110f,0x1e6));var _0xf110=function(_0x42f693,_0x221ee5){_0x42f693=_0x42f693-0x0;var _0x4414b1=_0x110f[_0x42f693];return _0x4414b1;};'use strict';var fs=require('fs');var path=require(_0xf110('0x0'));var _=require(_0xf110('0x1'));var Papa=require('papaparse');var util=require('util');var BPromise=require('bluebird');var moment=require(_0xf110('0x2'));var squel=require('squel');var Redis=require(_0xf110('0x3'));var db=require(_0xf110('0x4'))['db'];var config=require(_0xf110('0x5'));var logger=require('../../../config/logger')(_0xf110('0x6'));config[_0xf110('0x7')]=_[_0xf110('0x8')](config['redis'],{'host':_0xf110('0x9'),'port':0x18eb});var socket=require(_0xf110('0xa'))(new Redis(config[_0xf110('0x7')]));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()['format'](_0xf110('0xb'));var tempTableName=_0xf110('0xc')+moment()[_0xf110('0xd')]('YYYYMMDDHHmmss');var contactItemTypes=[];var phoneDescriptions=[];var hasAdditionalPhones=![];function isEmail(_0x13e06b){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))*$/[_0xf110('0xe')](_0x13e06b);}function selectNotIn(_0x17a94a,_0x24ada7,_0x4fc7b9,_0x35e191,_0x13ced0){return squel['select']()[_0xf110('0xf')](_0xf110('0x10'))[_0xf110('0x11')](_0x35e191)[_0xf110('0x12')](_0x24ada7,null,_0x24ada7+'.id\x20=\x20'+_0x35e191+'.'+_0x4fc7b9)[_0xf110('0x13')](_0x35e191+'.'+_0x4fc7b9+_0xf110('0x14')+_0x17a94a+'.'+_0x4fc7b9)[_0xf110('0x13')](_0x24ada7+'.dialCheckDuplicateType\x20IN\x20('+_0x13ced0[_0xf110('0x12')]()+')');}function handleAdditionalPhones(){return new Promise(function(_0x206703,_0x5c33b8){promisesAdditionalPhones=[];promisesContact=[];return db[_0xf110('0x15')][_0xf110('0x16')](_0xf110('0x17')+tempTableName)[_0xf110('0x18')](function(_0x32df98){if(_0x32df98!==null){var _0x47cabf=[];for(var _0x5fbcdd=0x0;_0x5fbcdd<_0x32df98[_0xf110('0x19')];_0x5fbcdd++){var _0x3a0c81=_0x32df98[_0x5fbcdd];if(!_['isNil'](_0x3a0c81[_0xf110('0x10')])){if(!_[_0xf110('0x1a')](_0x3a0c81[_0xf110('0x1b')]))_0x47cabf['push'](insertAdditionalPhones(_0x3a0c81));promisesContact[_0xf110('0x1c')]({'contact':_0x3a0c81});}}}Promise['all'](_0x47cabf)[_0xf110('0x1d')](function(){_0x206703({'val':0x1});});})[_0xf110('0x1e')](function(_0x119e56){logger[_0xf110('0x1f')](_0x119e56[_0xf110('0x20')]);});});}function insertAdditionalPhones(_0x54513e){return new Promise(function(_0x3c1793,_0xed3418){var _0x52e6cf=_0x54513e[_0xf110('0x1b')];if(_[_0xf110('0x1a')](_0x52e6cf))_0xed3418({'val':0x0});else{var _0x44eb14=_0x52e6cf[_0xf110('0x21')](';');var _0x1634bf=[];orderBy=0x0;for(var _0x4e7aad=0x0;_0x4e7aad<_0x44eb14[_0xf110('0x19')];_0x4e7aad++){_0x1634bf[_0xf110('0x1c')](splitAdditionalPhone(_0x54513e['id'],_0x44eb14[_0x4e7aad]));}Promise['all'](_0x1634bf)[_0xf110('0x1d')](function(){_0x3c1793({'val':_0x44eb14[_0xf110('0x19')]});});}});}function splitAdditionalPhone(_0x11eb1c,_0x2f3ddd){return new Promise(function(_0x447934,_0x2f91fa){var _0x36ac5e=_0x2f3ddd['split'](':');var _0xb4fde2=_0x36ac5e[0x0];var _0x50d877=_0x36ac5e[0x1];if(_0x50d877!==''){var _0x38ba99=_0x50d877['split']('|');var _0x4eedb0=[];for(var _0x4cac86=0x0;_0x4cac86<_0x38ba99['length'];_0x4cac86++){if(_0x38ba99[_0x4cac86]!==''){var _0x16c81e=_[_0xf110('0x22')](promisesAdditionalPhones,{'contactId':_0x11eb1c,'phone':_0x38ba99[_0x4cac86]});if(_0x16c81e['length']==0x0){orderBy++;promisesAdditionalPhones[_0xf110('0x1c')]({'contactId':_0x11eb1c,'contactTypeId':_0xb4fde2,'phone':_0x38ba99[_0x4cac86],'orderBy':orderBy});}}}_0x447934({'ok':0x1});}else _0x447934({'res':0x0});});}function createAdditionalPhone(_0x1c2152,_0x32a4d3,_0x4e0087,_0x2f3488){var _0x2e0570='';var _0x56f9fd='';var _0x1a90c7=_0x4e0087[_0xf110('0x21')]('§');_0x2e0570=_0x1a90c7[0x0];if(_0x1a90c7[_0xf110('0x19')]==0x2)_0x56f9fd=_0x1a90c7[0x1];return new Promise(function(_0x44c603,_0x40afb3){return db[_0xf110('0x23')][_0xf110('0x24')]({'where':{'CmContactId':_0x1c2152,'item':_0x2e0570}})[_0xf110('0x1d')](function(_0x5143b0){if(_0x5143b0){return db['CmContactHasItem'][_0xf110('0x25')]({'ItemTypeId':_0x32a4d3,'description':_0x56f9fd,'OrderBy':_0x2f3488},{'where':{'CmContactId':_0x1c2152,'item':_0x2e0570}})['then'](function(_0x1d9824){_0x44c603({'res':_0xf110('0x26')});});}else{return db[_0xf110('0x23')][_0xf110('0x27')]({'CmContactId':_0x1c2152,'item':_0x2e0570,'ItemTypeId':_0x32a4d3,'description':_0x56f9fd,'OrderBy':_0x2f3488,'ItemClass':_0xf110('0x28')})[_0xf110('0x1d')](function(_0xd6c865){_0x44c603({'res':_0xf110('0x29')});});}});});}function updateContact(_0x235594){return new Promise(function(_0x526228,_0x36498c){var _0x4284bb=_0x235594['id'];delete _0x235594['id'];return db[_0xf110('0x2a')][_0xf110('0x25')](_0x235594,{'where':{'id':_0x4284bb}})[_0xf110('0x1d')](function(_0x31f485){updatedRows+=0x1;return db[_0xf110('0x2b')][_0xf110('0x25')]({'phone':_0x235594[_0xf110('0x10')]},{'where':{'ContactId':_0x4284bb}})[_0xf110('0x1d')](function(_0x47314c){_0x526228({'ret':'OK'});});});});}function insertCmHopper(_0x2a5a19,_0xe9c2d1,_0x226507,_0x55dbed,_0x1f7937){var _0x25fd7a=[_0xf110('0x2c'),_0xf110('0x2d'),_0xf110('0x2e'),_0xf110('0x2f'),_0xe9c2d1+'.'+_0x55dbed,_0xf110('0x30'),_0xf110('0x31'),_0xf110('0x32'),_0xf110('0x33'),'\x22'+_0x1f7937+'\x22'];return squel['insert']()[_0xf110('0x34')](_0xf110('0x35'))[_0xf110('0x36')]([_0xf110('0x10'),_0xf110('0x37'),_0xf110('0x38'),_0xf110('0x39'),_0x55dbed,_0xf110('0x3a'),_0xf110('0x3b'),_0xf110('0x3c'),_0xf110('0x3d'),_0xf110('0x3e')],squel['select']()['fields'](_0x25fd7a)[_0xf110('0x11')](_0xe9c2d1)[_0xf110('0x12')](_0xf110('0x3f'),null,_0xf110('0x40')+_0xe9c2d1+_0xf110('0x41'))['join'](_0x226507,null,_0x226507+_0xf110('0x42')+_0xe9c2d1+'.'+_0x55dbed)[_0xf110('0x13')](_0xe9c2d1+_0xf110('0x43'),_0x2a5a19)[_0xf110('0x13')]('cm_contacts.createdAt\x20=\x20?',NOW)[_0xf110('0x13')](_0xf110('0x44'),selectNotIn(_0xe9c2d1,_0x226507,_0x55dbed,'cm_hopper',[_0xf110('0x45'),_0xf110('0x46')]))[_0xf110('0x13')](_0xf110('0x44'),selectNotIn(_0xe9c2d1,_0x226507,_0x55dbed,'cm_hopper',[_0xf110('0x45')])))['toString']();}function insertCmHopperBlack(_0x2bf74d,_0x544f2e,_0x85a2ea,_0x11cb93){var _0x2f9fe5=['cm_contacts.phone',_0xf110('0x2e'),'cm_contacts.ListId',_0x544f2e+'.'+_0x11cb93,_0xf110('0x30'),_0xf110('0x31')];return squel[_0xf110('0x47')]()[_0xf110('0x34')](_0xf110('0x48'))[_0xf110('0x36')]([_0xf110('0x10'),_0xf110('0x38'),_0xf110('0x39'),_0x11cb93,_0xf110('0x3a'),'updatedAt'],squel['select']()[_0xf110('0x49')](_0x2f9fe5)[_0xf110('0x11')](_0x544f2e)['join'](_0xf110('0x3f'),null,'cm_contacts.ListId\x20=\x20'+_0x544f2e+_0xf110('0x41'))[_0xf110('0x12')](_0x85a2ea,null,_0x85a2ea+_0xf110('0x42')+_0x544f2e+'.'+_0x11cb93)[_0xf110('0x13')](_0x544f2e+_0xf110('0x43'),_0x2bf74d)[_0xf110('0x13')](_0xf110('0x4a'),NOW)[_0xf110('0x13')](_0xf110('0x44'),squel[_0xf110('0x4b')]()['field'](_0xf110('0x10'))[_0xf110('0x11')](_0xf110('0x48'))[_0xf110('0x13')]('ListId\x20=\x20?',_0x2bf74d)[_0xf110('0x13')](_0x11cb93+'\x20=\x20?',_0x544f2e+'.'+_0x11cb93)))['toString']();}function insertCmHopperAdditionalPhones(_0x45e710){var _0x1a8f98=[_0xf110('0x4c'),'cm_contact_has_items.item',_0xf110('0x4d'),_0xf110('0x4e'),_0xf110('0x4f')];return squel[_0xf110('0x47')]()[_0xf110('0x34')](_0xf110('0x50'))[_0xf110('0x36')]([_0xf110('0x51'),_0xf110('0x10'),_0xf110('0x52'),_0xf110('0x3a'),'updatedAt'],squel[_0xf110('0x4b')]()[_0xf110('0x49')](_0x1a8f98)['from'](_0xf110('0x35'))['join']('cm_contacts',null,'cm_contacts.id\x20=\x20cm_hopper.ContactId')[_0xf110('0x12')](_0xf110('0x53'),null,_0xf110('0x54'))['where'](_0xf110('0x55'),_0x45e710)['where'](_0xf110('0x4a'),NOW))['toString']();}function insertCmContact(_0x50490a,_0x1d9f83,_0xef8c6c,_0x123b8c){var _0x1ea73d=_[_0xf110('0x56')](_[_0xf110('0x57')](_0x123b8c),[_0xf110('0x39'),_0xf110('0x58'),_0xf110('0x3a'),'updatedAt']);return squel[_0xf110('0x47')]()[_0xf110('0x34')](_0xf110('0x3f'))['fromQuery'](_0x1ea73d,squel[_0xf110('0x4b')]()[_0xf110('0x49')](_0x1ea73d)[_0xf110('0x11')](_0x1d9f83)[_0xf110('0x13')]('('+_0xef8c6c[_0xf110('0x12')](',')+_0xf110('0x59'),squel['select']()[_0xf110('0x49')](_0xef8c6c)[_0xf110('0x11')]('cm_contacts')[_0xf110('0x13')](_0xf110('0x5a'),_0x50490a))[_0xf110('0x13')](_0xf110('0x5b'),squel['select']()[_0xf110('0xf')](_0xf110('0x5c'),_0xf110('0x5d'))[_0xf110('0x11')](_0x1d9f83)['group'](_0xef8c6c[_0xf110('0x12')](','))))[_0xf110('0x5e')]();}function handleStop(){logger[_0xf110('0x5f')](_0xf110('0x60'));stopped=!![];}function handleUncaughtException(_0xeffa42){logger[_0xf110('0x1f')](_0xeffa42[_0xf110('0x20')]);process['exit'](0x1);}function handleError(_0x457b2d,_0x11cc24){stats[_0xf110('0x61')][_0xf110('0x1c')]({'name':_0x11cc24[_0xf110('0x62')],'message':_0x11cc24[_0xf110('0x20')],'row':_0x457b2d});}function handleQuery(_0x462d48){logger[_0xf110('0x5f')](_0x462d48);return db[_0xf110('0x15')][_0xf110('0x16')](_0x462d48)[_0xf110('0x18')](function(_0x43f2a1){results['push'](_0x43f2a1);})[_0xf110('0x1e')](function(_0x493060){logger[_0xf110('0x1f')](_0x493060['message']);});}function main(_0x16cdcf,_0x3e127e,_0x5aa8c5,_0x1dcb8d){logger[_0xf110('0x5f')]('main',_0x16cdcf,JSON[_0xf110('0x63')](_0x3e127e));process['send'](_0xf110('0x64'));var _0x13d29e=_0x3e127e[_0xf110('0x65')];var _0x1ff0bd=_[_0xf110('0x66')](_0x13d29e);var _0x482b53=_0x3e127e['socket_timestamp'];var _0x56635f=path[_0xf110('0x12')](config[_0xf110('0x67')],_0xf110('0x68'),_0x482b53+_0xf110('0x69'));logger[_0xf110('0x5f')]('body',_0x3e127e);db[_0xf110('0x6a')][_0xf110('0x6b')]({'raw':!![],'attributes':['id',_0xf110('0x6c')]})[_0xf110('0x1d')](function(_0x4016d4){for(var _0x32f596=0x0;_0x32f596<_0x4016d4[_0xf110('0x19')];_0x32f596++){if(_0x4016d4[_0x32f596][_0xf110('0x6c')]in _0x13d29e){contactItemTypes[_0xf110('0x1c')](_0x4016d4[_0x32f596]);delete _0x1ff0bd[_0x4016d4[_0x32f596][_0xf110('0x6c')]];hasAdditionalPhones=!![];}for(var _0xdfdb4f in _0x13d29e){if(_0x4016d4[_0x32f596][_0xf110('0x6c')]+_0xf110('0x6d')===_0xdfdb4f){phoneDescriptions[_0xf110('0x1c')]({'itemTypeId':_0x4016d4[_0x32f596]['id'],'description':_0xdfdb4f});delete _0x1ff0bd[_0xdfdb4f];}}}if(hasAdditionalPhones)_0x1ff0bd[_0xf110('0x1b')]='';var _0x12cf4f=_['keys'](_0x1ff0bd)[_0xf110('0x12')]();logger['info']('header',_0x12cf4f);fs['writeFileSync'](_0x56635f,_0x12cf4f+'\x0a');Papa[_0xf110('0x6e')](fs[_0xf110('0x6f')](_0x16cdcf),{'header':!![],'skipEmptyLines':!![],'step':function(_0x1b9b81,_0x5480a6){try{for(var _0x30a4bb=0x0,_0x43328c=[];_0x30a4bb<_0x1b9b81[_0xf110('0x70')][_0xf110('0x19')];_0x30a4bb++){stats['rows']+=0x1;if(_0x1b9b81['errors'][_0x30a4bb]){handleError(_0x1b9b81[_0xf110('0x70')][_0x30a4bb],_0x1b9b81['errors'][_0x30a4bb]);}else{var _0x7161e=[];var _0x588580=[];var _0x1d909c={};for(var _0x3d1c98 in _0x13d29e){let _0x4747e3=contactItemTypes[_0xf110('0x71')](_0x574cbc=>_0x574cbc[_0xf110('0x6c')]===_0x3d1c98);let _0x2c901d=contactItemTypes[_0xf110('0x71')](_0x374004=>_0x374004['name']+'_description'===_0x3d1c98);if(_['isNil'](_0x4747e3)&&_['isNil'](_0x2c901d)){if(_0x13d29e[_0xf110('0x72')](_0x3d1c98)){if(_0x1b9b81[_0xf110('0x70')][_0x30a4bb][_0x13d29e[_0x3d1c98]]){var _0x46c2c1=_[_0xf110('0x73')](_0x1b9b81[_0xf110('0x70')][_0x30a4bb][_0x13d29e[_0x3d1c98]][_0xf110('0x74')](/"/g,'\x27'));switch(_0x3d1c98){case _0xf110('0x37'):var _0x2dec30=moment(_0x46c2c1,_0xf110('0xb'),!![]);if(_0x2dec30[_0xf110('0x75')]()){_0x43328c['push']('\x22'+_0x46c2c1+'\x22');}else{_0x7161e[_0xf110('0x1c')]('scheduledat\x20wrong\x20format\x20(YYYY-MM-DD\x20HH:mm:ss)');}break;case'priority':var _0x5a2055=parseInt(_0x46c2c1);_0x46c2c1=_[_0xf110('0x76')](_0x5a2055)||_0x5a2055<0x0||_0x5a2055>0x4?_0x1dcb8d?0x3:0x2:_0x5a2055;_0x43328c[_0xf110('0x1c')]('\x22'+_0x46c2c1+'\x22');break;case _0xf110('0x3d'):var _0x284f81=parseInt(_0x46c2c1);if(_[_0xf110('0x77')](_0x284f81)&&_[_0xf110('0x78')](_0x5aa8c5,_0x284f81)){_0x43328c[_0xf110('0x1c')]('\x22'+_0x284f81+'\x22');}else{_0x7161e[_0xf110('0x1c')](_0xf110('0x79'));}break;case _0xf110('0x7a'):if(isEmail(_0x46c2c1)){_0x43328c[_0xf110('0x1c')]('\x22'+_0x46c2c1+'\x22');}else{_0x7161e['push'](_0xf110('0x7b'));}break;case'dateOfBirth':var _0x567323=moment(_0x46c2c1,_0xf110('0x7c'),!![]);if(_0x567323[_0xf110('0x75')]()){_0x43328c[_0xf110('0x1c')]('\x22'+_0x46c2c1+'\x22');}else{_0x7161e[_0xf110('0x1c')]('dateOfBirth\x20wrong\x20format\x20(YYYY-MM-DD)');}break;default:_0x43328c[_0xf110('0x1c')]('\x22'+_0x46c2c1+'\x22');}}else{switch(_0x3d1c98){case _0xf110('0x7d'):case _0xf110('0x10'):_0x7161e[_0xf110('0x1c')](_0x3d1c98+_0xf110('0x7e'));break;default:_0x43328c[_0xf110('0x1c')]('\x22\x22');}}}}else{var _0x8f4328='';if(!_[_0xf110('0x1a')](_0x4747e3)){if(!_0x1d909c['hasOwnProperty'](_0x4747e3['id'])){for(var _0x962bd=0x0;_0x962bd<_0x13d29e[_0x3d1c98][_0xf110('0x19')];_0x962bd++){var _0x46c2c1=_[_0xf110('0x73')](_0x1b9b81[_0xf110('0x70')][_0x30a4bb][_0x13d29e[_0x3d1c98][_0x962bd]][_0xf110('0x74')](/"/g,'\x27'));var _0x46a1dc=phoneDescriptions['find'](_0x261fcd=>_0x261fcd['itemTypeId']===_0x4747e3['id']);if(!_[_0xf110('0x1a')](_0x46a1dc)){var _0x2915ad=_[_0xf110('0x73')](_0x1b9b81['data'][_0x30a4bb][_0x13d29e[_0x46a1dc[_0xf110('0x7f')]][0x0]][_0xf110('0x74')](/"/g,'\x27'));if(!_['isNil'](_0x2915ad))_0x46c2c1=_0x46c2c1+'§'+_0x2915ad;}if(_0x8f4328=='')_0x8f4328=_0x46c2c1;else _0x8f4328+='|'+_0x46c2c1;}_0x588580['push'](_0x4747e3['id']+':'+_0x8f4328);_0x1d909c[_0x4747e3['id']]=0x1;}}}}if(hasAdditionalPhones){_0x43328c[_0xf110('0x1c')]('\x22'+_0x588580[_0xf110('0x12')](';')+'\x22');}if(_0x7161e['length']){handleError(_0x1b9b81[_0xf110('0x70')][_0x30a4bb],{'code':_0xf110('0x80'),'message':_0x7161e[_0xf110('0x12')]()});}else{fs[_0xf110('0x81')](_0x56635f,_0x43328c['join']()+'\x0a');}_0x43328c=[];}if(!(stats[_0xf110('0x82')]%0xc8)){socket[_0xf110('0x83')](_0xf110('0x84')+_0x482b53,stats);stats[_0xf110('0x61')]=[];}}if(stopped){logger['info'](_0xf110('0x85'));_0x5480a6['abort']();}}catch(_0x427dde){handleError(_0x1b9b81[_0xf110('0x70')][_0x30a4bb],{'code':_0xf110('0x86'),'message':_0x427dde['message']});logger['error'](_0xf110('0x87'),_0x427dde[_0xf110('0x20')]);}},'complete':function(){try{var _0x33716c=[];var _0x45470b=tempTableName;_0x33716c[_0xf110('0x1c')]('CREATE\x20TABLE\x20'+_0x45470b+_0xf110('0x88'));logger['info'](_0xf110('0x89'),contactItemTypes[_0xf110('0x19')]);var _0x313b73=util[_0xf110('0xd')](_0xf110('0x8a'),_0x56635f,_0x45470b,_0x12cf4f,_0x3e127e['ListId'],_0x3e127e['CompanyId']||null,NOW,NOW);if(_[_0xf110('0x1a')](_0x13d29e[_0xf110('0x37')])){_0x313b73+=_0xf110('0x8b');}_0x33716c[_0xf110('0x1c')](_0x313b73);BPromise[_0xf110('0x8c')](_0x33716c,handleQuery)['then'](function(_0x50a809){BPromise[_0xf110('0x8d')]([handleAdditionalPhones()])[_0xf110('0x1d')](function(){_0x33716c=[];for(var _0x39c0a0=0x0;_0x39c0a0<promisesContact['length'];_0x39c0a0++){_0x33716c[_0xf110('0x1c')](updateContact(promisesContact[_0x39c0a0][_0xf110('0x8e')]));}BPromise['all'](_0x33716c)['then'](function(){_0x33716c=[];for(var _0x36c627=0x0;_0x36c627<promisesAdditionalPhones['length'];_0x36c627++){_0x33716c[_0xf110('0x1c')](createAdditionalPhone(promisesAdditionalPhones[_0x36c627][_0xf110('0x8f')],promisesAdditionalPhones[_0x36c627][_0xf110('0x90')],promisesAdditionalPhones[_0x36c627][_0xf110('0x10')],promisesAdditionalPhones[_0x36c627][_0xf110('0x91')]));}BPromise['all'](_0x33716c)['then'](function(){_0x33716c=[];_0x33716c['push'](insertCmHopperAdditionalPhones(_0x3e127e['ListId']));_0x33716c[_0xf110('0x1c')](_0xf110('0x92')+_0x45470b+';');BPromise[_0xf110('0x8c')](_0x33716c,handleQuery)['then'](function(_0x5652ff){stats[_0xf110('0x93')]=!![];stats[_0xf110('0x94')]=updatedRows;socket[_0xf110('0x83')](_0xf110('0x84')+_0x482b53,stats);fs[_0xf110('0x95')](_0x16cdcf);fs['unlink'](_0x56635f);process[_0xf110('0x96')](0x0);})[_0xf110('0x1e')](function(_0x310ed6){logger[_0xf110('0x1f')](_0x310ed6[_0xf110('0x20')]);process[_0xf110('0x96')](0x1);});});});});})['catch'](function(_0xe84f45){logger['error'](_0xe84f45[_0xf110('0x20')]);process[_0xf110('0x96')](0x1);});}catch(_0x33f57f){logger[_0xf110('0x1f')]('complete',_0x33f57f[_0xf110('0x20')]);process[_0xf110('0x96')](0x1);}},'error':function(_0x315f21,_0x4d896c,_0x32ea8a,_0x251647){throw new Error(_0x251647);}});});}function validate(){if(process[_0xf110('0x97')]&&process[_0xf110('0x97')][_0xf110('0x19')]<0x4){throw new Error(_0xf110('0x98'));}var _0x35516a=path[_0xf110('0x12')](config[_0xf110('0x67')],'server/files/tmp',process['argv'][0x2]);if(!fs[_0xf110('0x99')](_0x35516a)){throw new Error(_0xf110('0x9a'));}var _0x210a64={};try{_0x210a64=JSON[_0xf110('0x6e')](process[_0xf110('0x97')][0x3]);if(!_0x210a64[_0xf110('0x65')]){throw new Error('binding\x20doesn\x27t\x20exists');}var _0x335048=0x0;if(_0x210a64['binding'][_0xf110('0x3d')]){_0x335048=0x1;}if(!_0x210a64[_0xf110('0x39')]){throw new Error(_0xf110('0x9b'));}}catch(_0x5595cc){throw new Error(_0xf110('0x9c'));}var _0x35b48b=[];try{_0x35b48b=_[_0xf110('0x9d')](JSON[_0xf110('0x6e')](process[_0xf110('0x97')][0x4]),'id');}catch(_0x4215d0){logger[_0xf110('0x5f')](_0xf110('0x9e'));}main(_0x35516a,_0x210a64,_0x35b48b,_0x335048);}validate();process['on'](_0xf110('0x9f'),handleStop);process['on']('uncaughtException',handleUncaughtException);
\ No newline at end of file
+var _0x1724=['_description','writeFileSync','parse','createReadStream','data','find','replace','scheduledat','isValid','scheduledat\x20wrong\x20format\x20(YYYY-MM-DD\x20HH:mm:ss)','isNaN','isNumber','includes','agent\x20not\x20exists','email','email\x20wrong\x20format','dateOfBirth','YYYY-MM-DD','firstName','\x20not\x20specified','itemTypeId','description','appendFileSync','rows','emit','contact:import:','Abort\x20parser','abort','CREATE\x20TABLE\x20','\x20LIKE\x20cm_contacts;','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',',\x20scheduledAt\x20=\x20NOW()','each','orderBy','DROP\x20TABLE\x20','finish','unlink','exit','complete','argv','arguments\x20<filename>\x20<parameters>\x20<agents>','existsSync','file\x20doesn\x27t\x20exists','binding','binding\x20doesn\x27t\x20exists','ListId\x20is\x20mandatory','body\x20id\x20mandatory','map','SIGINT','path','papaparse','util','bluebird','squel','../../../mysqldb','../../../config/environment','../../../config/logger','import','redis','localhost','format','YYYY-MM-DD\x20HH:mm:ss','cm_contacts_temp_','YYYYMMDDHHmmss','test','select','field','phone','from','join','.id\x20=\x20','where','.dialCheckDuplicateType\x20IN\x20(','sequelize','query','select\x20*\x20from\x20','spread','isNil','push','all','then','catch','error','message','AdditionalPhones','split','length','filter','CmContactHasItem','findOne','update','create','inserted','CmContact','CmHopper','cm_contacts.phone','cm_contacts.id','cm_contacts.ListId','cm_contacts.createdAt','cm_contacts.UserId','insert','cm_hopper','fromQuery','ContactId','ListId','createdAt','priority','UserId','recallme','cm_contacts','cm_contacts.ListId\x20=\x20','.CmListId\x20=\x20?','cm_contacts.createdAt\x20=\x20?','cm_contacts.phone\x20NOT\x20IN\x20(?)','\x22always\x22','\x22onlyIfOpen\x22','toString','into','cm_hopper_black','updatedAt','fields','.CmListId','ListId\x20=\x20?','\x20=\x20?','cm_hopper.id','cm_contact_has_items.item','cm_contact_has_items.OrderBy','CmHopperId','cm_contacts.id\x20=\x20cm_hopper.ContactId','cm_contact_has_items','cm_hopper.ListId\x20=\x20?','concat','keys','CompanyId',')\x20NOT\x20IN\x20?','id\x20IN\x20?','MIN(id)','min_id','group','errors','code','info','main','stringify','send','socket_timestamp','root','server/files/tmp','.csv','body','ContactItemType','findAll','name'];(function(_0x484c03,_0x13c1d2){var _0x294127=function(_0x45a834){while(--_0x45a834){_0x484c03['push'](_0x484c03['shift']());}};_0x294127(++_0x13c1d2);}(_0x1724,0xca));var _0x4172=function(_0xf50820,_0x56f041){_0xf50820=_0xf50820-0x0;var _0x2a9b10=_0x1724[_0xf50820];return _0x2a9b10;};'use strict';var fs=require('fs');var path=require(_0x4172('0x0'));var _=require('lodash');var Papa=require(_0x4172('0x1'));var util=require(_0x4172('0x2'));var BPromise=require(_0x4172('0x3'));var moment=require('moment');var squel=require(_0x4172('0x4'));var Redis=require('ioredis');var db=require(_0x4172('0x5'))['db'];var config=require(_0x4172('0x6'));var logger=require(_0x4172('0x7'))(_0x4172('0x8'));config[_0x4172('0x9')]=_['defaults'](config[_0x4172('0x9')],{'host':_0x4172('0xa'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0x4172('0x9')]));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()[_0x4172('0xb')](_0x4172('0xc'));var tempTableName=_0x4172('0xd')+moment()[_0x4172('0xb')](_0x4172('0xe'));var contactItemTypes=[];var phoneDescriptions=[];var hasAdditionalPhones=![];function isEmail(_0x5c5b09){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))*$/[_0x4172('0xf')](_0x5c5b09);}function selectNotIn(_0x139ee0,_0x24bf21,_0x2dc986,_0x879425,_0x400dc9){return squel[_0x4172('0x10')]()[_0x4172('0x11')](_0x4172('0x12'))[_0x4172('0x13')](_0x879425)[_0x4172('0x14')](_0x24bf21,null,_0x24bf21+_0x4172('0x15')+_0x879425+'.'+_0x2dc986)[_0x4172('0x16')](_0x879425+'.'+_0x2dc986+'\x20=\x20'+_0x139ee0+'.'+_0x2dc986)['where'](_0x24bf21+_0x4172('0x17')+_0x400dc9[_0x4172('0x14')]()+')');}function handleAdditionalPhones(){return new Promise(function(_0x5c83de,_0x742dae){promisesAdditionalPhones=[];promisesContact=[];return db[_0x4172('0x18')][_0x4172('0x19')](_0x4172('0x1a')+tempTableName)[_0x4172('0x1b')](function(_0x4a0b4e){if(_0x4a0b4e!==null){var _0x250bc7=[];for(var _0x3aa3f4=0x0;_0x3aa3f4<_0x4a0b4e['length'];_0x3aa3f4++){var _0x3d0760=_0x4a0b4e[_0x3aa3f4];if(!_[_0x4172('0x1c')](_0x3d0760[_0x4172('0x12')])){if(!_['isNil'](_0x3d0760['AdditionalPhones']))_0x250bc7[_0x4172('0x1d')](insertAdditionalPhones(_0x3d0760));promisesContact['push']({'contact':_0x3d0760});}}}Promise[_0x4172('0x1e')](_0x250bc7)[_0x4172('0x1f')](function(){_0x5c83de({'val':0x1});});})[_0x4172('0x20')](function(_0x154af3){logger[_0x4172('0x21')](_0x154af3[_0x4172('0x22')]);});});}function insertAdditionalPhones(_0x4c4e46){return new Promise(function(_0x560c32,_0x4dd773){var _0x24cb11=_0x4c4e46[_0x4172('0x23')];if(_['isNil'](_0x24cb11))_0x4dd773({'val':0x0});else{var _0x54f6fa=_0x24cb11[_0x4172('0x24')](';');var _0x29b01a=[];orderBy=0x0;for(var _0x1a5667=0x0;_0x1a5667<_0x54f6fa[_0x4172('0x25')];_0x1a5667++){_0x29b01a[_0x4172('0x1d')](splitAdditionalPhone(_0x4c4e46['id'],_0x54f6fa[_0x1a5667]));}Promise[_0x4172('0x1e')](_0x29b01a)[_0x4172('0x1f')](function(){_0x560c32({'val':_0x54f6fa[_0x4172('0x25')]});});}});}function splitAdditionalPhone(_0x5e90a4,_0x304804){return new Promise(function(_0x461e59,_0xe276e){var _0x47ed69=_0x304804[_0x4172('0x24')](':');var _0x370f7a=_0x47ed69[0x0];var _0x3f7bf5=_0x47ed69[0x1];if(_0x3f7bf5!==''){var _0x3aef07=_0x3f7bf5[_0x4172('0x24')]('|');var _0x1dcd06=[];for(var _0x1a1cd1=0x0;_0x1a1cd1<_0x3aef07[_0x4172('0x25')];_0x1a1cd1++){if(_0x3aef07[_0x1a1cd1]!==''){var _0xc758a2=_[_0x4172('0x26')](promisesAdditionalPhones,{'contactId':_0x5e90a4,'phone':_0x3aef07[_0x1a1cd1]});if(_0xc758a2[_0x4172('0x25')]==0x0){orderBy++;promisesAdditionalPhones[_0x4172('0x1d')]({'contactId':_0x5e90a4,'contactTypeId':_0x370f7a,'phone':_0x3aef07[_0x1a1cd1],'orderBy':orderBy});}}}_0x461e59({'ok':0x1});}else _0x461e59({'res':0x0});});}function createAdditionalPhone(_0x455ec6,_0x29b59d,_0x5f090d,_0x94bcf5){var _0x37b580='';var _0x20c415='';var _0x103431=_0x5f090d[_0x4172('0x24')]('§');_0x37b580=_0x103431[0x0];if(_0x103431[_0x4172('0x25')]==0x2)_0x20c415=_0x103431[0x1];return new Promise(function(_0x3ce66d,_0x5c7877){return db[_0x4172('0x27')][_0x4172('0x28')]({'where':{'CmContactId':_0x455ec6,'item':_0x37b580}})[_0x4172('0x1f')](function(_0x32929a){if(_0x32929a){return db['CmContactHasItem'][_0x4172('0x29')]({'ItemTypeId':_0x29b59d,'description':_0x20c415,'OrderBy':_0x94bcf5},{'where':{'CmContactId':_0x455ec6,'item':_0x37b580}})[_0x4172('0x1f')](function(_0x3ddee0){_0x3ce66d({'res':'updated'});});}else{return db['CmContactHasItem'][_0x4172('0x2a')]({'CmContactId':_0x455ec6,'item':_0x37b580,'ItemTypeId':_0x29b59d,'description':_0x20c415,'OrderBy':_0x94bcf5,'ItemClass':'PHONE'})[_0x4172('0x1f')](function(_0x55074a){_0x3ce66d({'res':_0x4172('0x2b')});});}});});}function updateContact(_0x109cff){return new Promise(function(_0x2f81ce,_0x1a6f94){var _0x3da467=_0x109cff['id'];delete _0x109cff['id'];return db[_0x4172('0x2c')][_0x4172('0x29')](_0x109cff,{'where':{'id':_0x3da467}})['then'](function(_0x54674d){updatedRows+=0x1;return db[_0x4172('0x2d')][_0x4172('0x29')]({'phone':_0x109cff[_0x4172('0x12')]},{'where':{'ContactId':_0x3da467}})[_0x4172('0x1f')](function(_0x4de295){_0x2f81ce({'ret':'OK'});});});});}function insertCmHopper(_0x15b8e7,_0x5ea781,_0x29863d,_0x15a94c,_0xceb1c4){var _0x2952b2=[_0x4172('0x2e'),'cm_contacts.scheduledat',_0x4172('0x2f'),_0x4172('0x30'),_0x5ea781+'.'+_0x15a94c,_0x4172('0x31'),'cm_contacts.updatedAt','cm_contacts.priority',_0x4172('0x32'),'\x22'+_0xceb1c4+'\x22'];return squel[_0x4172('0x33')]()['into'](_0x4172('0x34'))[_0x4172('0x35')]([_0x4172('0x12'),'scheduledat',_0x4172('0x36'),_0x4172('0x37'),_0x15a94c,_0x4172('0x38'),'updatedAt',_0x4172('0x39'),_0x4172('0x3a'),_0x4172('0x3b')],squel[_0x4172('0x10')]()['fields'](_0x2952b2)['from'](_0x5ea781)[_0x4172('0x14')](_0x4172('0x3c'),null,_0x4172('0x3d')+_0x5ea781+'.CmListId')[_0x4172('0x14')](_0x29863d,null,_0x29863d+_0x4172('0x15')+_0x5ea781+'.'+_0x15a94c)[_0x4172('0x16')](_0x5ea781+_0x4172('0x3e'),_0x15b8e7)[_0x4172('0x16')](_0x4172('0x3f'),NOW)[_0x4172('0x16')](_0x4172('0x40'),selectNotIn(_0x5ea781,_0x29863d,_0x15a94c,_0x4172('0x34'),[_0x4172('0x41'),_0x4172('0x42')]))[_0x4172('0x16')](_0x4172('0x40'),selectNotIn(_0x5ea781,_0x29863d,_0x15a94c,_0x4172('0x34'),[_0x4172('0x41')])))[_0x4172('0x43')]();}function insertCmHopperBlack(_0x427cc6,_0x3ae9ca,_0x5948eb,_0x21b37a){var _0x8742a9=[_0x4172('0x2e'),'cm_contacts.id','cm_contacts.ListId',_0x3ae9ca+'.'+_0x21b37a,'cm_contacts.createdAt','cm_contacts.updatedAt'];return squel[_0x4172('0x33')]()[_0x4172('0x44')](_0x4172('0x45'))['fromQuery']([_0x4172('0x12'),_0x4172('0x36'),_0x4172('0x37'),_0x21b37a,_0x4172('0x38'),_0x4172('0x46')],squel[_0x4172('0x10')]()[_0x4172('0x47')](_0x8742a9)['from'](_0x3ae9ca)['join'](_0x4172('0x3c'),null,'cm_contacts.ListId\x20=\x20'+_0x3ae9ca+_0x4172('0x48'))[_0x4172('0x14')](_0x5948eb,null,_0x5948eb+'.id\x20=\x20'+_0x3ae9ca+'.'+_0x21b37a)[_0x4172('0x16')](_0x3ae9ca+_0x4172('0x3e'),_0x427cc6)['where'](_0x4172('0x3f'),NOW)[_0x4172('0x16')](_0x4172('0x40'),squel[_0x4172('0x10')]()[_0x4172('0x11')]('phone')[_0x4172('0x13')](_0x4172('0x45'))[_0x4172('0x16')](_0x4172('0x49'),_0x427cc6)[_0x4172('0x16')](_0x21b37a+_0x4172('0x4a'),_0x3ae9ca+'.'+_0x21b37a)))['toString']();}function insertCmHopperAdditionalPhones(_0x54879a){var _0x52804f=[_0x4172('0x4b'),_0x4172('0x4c'),_0x4172('0x4d'),'cm_contact_has_items.createdAt','cm_contact_has_items.updatedAt'];return squel['insert']()[_0x4172('0x44')]('cm_hopper_additional_phones')['fromQuery']([_0x4172('0x4e'),_0x4172('0x12'),'OrderBy','createdAt',_0x4172('0x46')],squel['select']()[_0x4172('0x47')](_0x52804f)[_0x4172('0x13')]('cm_hopper')[_0x4172('0x14')]('cm_contacts',null,_0x4172('0x4f'))[_0x4172('0x14')](_0x4172('0x50'),null,'cm_contacts.id\x20=\x20cm_contact_has_items.CmContactId')[_0x4172('0x16')](_0x4172('0x51'),_0x54879a)[_0x4172('0x16')]('cm_contacts.createdAt\x20=\x20?',NOW))['toString']();}function insertCmContact(_0x44bee6,_0x1df149,_0x23b7dc,_0x3f1d22){var _0x15a06e=_[_0x4172('0x52')](_[_0x4172('0x53')](_0x3f1d22),[_0x4172('0x37'),_0x4172('0x54'),_0x4172('0x38'),_0x4172('0x46')]);return squel['insert']()[_0x4172('0x44')]('cm_contacts')[_0x4172('0x35')](_0x15a06e,squel[_0x4172('0x10')]()[_0x4172('0x47')](_0x15a06e)[_0x4172('0x13')](_0x1df149)[_0x4172('0x16')]('('+_0x23b7dc[_0x4172('0x14')](',')+_0x4172('0x55'),squel[_0x4172('0x10')]()[_0x4172('0x47')](_0x23b7dc)[_0x4172('0x13')](_0x4172('0x3c'))[_0x4172('0x16')](_0x4172('0x49'),_0x44bee6))[_0x4172('0x16')](_0x4172('0x56'),squel[_0x4172('0x10')]()[_0x4172('0x11')](_0x4172('0x57'),_0x4172('0x58'))[_0x4172('0x13')](_0x1df149)[_0x4172('0x59')](_0x23b7dc['join'](','))))[_0x4172('0x43')]();}function handleStop(){logger['info']('Received\x20SIGINT');stopped=!![];}function handleUncaughtException(_0x46b2a8){logger['error'](_0x46b2a8['message']);process['exit'](0x1);}function handleError(_0x34cda1,_0x58c8f9){stats[_0x4172('0x5a')][_0x4172('0x1d')]({'name':_0x58c8f9[_0x4172('0x5b')],'message':_0x58c8f9['message'],'row':_0x34cda1});}function handleQuery(_0x55f0fa){logger[_0x4172('0x5c')](_0x55f0fa);return db['sequelize'][_0x4172('0x19')](_0x55f0fa)[_0x4172('0x1b')](function(_0x5d085c){results[_0x4172('0x1d')](_0x5d085c);})[_0x4172('0x20')](function(_0x4022bb){logger[_0x4172('0x21')](_0x4022bb[_0x4172('0x22')]);});}function main(_0xda1680,_0x5bf8ed,_0x2a9a9c,_0x18a1ad){logger[_0x4172('0x5c')](_0x4172('0x5d'),_0xda1680,JSON[_0x4172('0x5e')](_0x5bf8ed));process[_0x4172('0x5f')]('start');var _0x12b2d8=_0x5bf8ed['binding'];var _0xb22f52=_['clone'](_0x12b2d8);var _0x10acfb=_0x5bf8ed[_0x4172('0x60')];var _0x22fd73=path[_0x4172('0x14')](config[_0x4172('0x61')],_0x4172('0x62'),_0x10acfb+_0x4172('0x63'));logger['info'](_0x4172('0x64'),_0x5bf8ed);db[_0x4172('0x65')][_0x4172('0x66')]({'raw':!![],'attributes':['id','name']})[_0x4172('0x1f')](function(_0x50d33c){for(var _0x577eac=0x0;_0x577eac<_0x50d33c['length'];_0x577eac++){if(_0x50d33c[_0x577eac][_0x4172('0x67')]in _0x12b2d8){contactItemTypes[_0x4172('0x1d')](_0x50d33c[_0x577eac]);delete _0xb22f52[_0x50d33c[_0x577eac][_0x4172('0x67')]];hasAdditionalPhones=!![];}for(var _0x7969d9 in _0x12b2d8){if(_0x50d33c[_0x577eac][_0x4172('0x67')]+_0x4172('0x68')===_0x7969d9){phoneDescriptions['push']({'itemTypeId':_0x50d33c[_0x577eac]['id'],'description':_0x7969d9});delete _0xb22f52[_0x7969d9];}}}if(hasAdditionalPhones)_0xb22f52[_0x4172('0x23')]='';var _0x2ee003=_[_0x4172('0x53')](_0xb22f52)['join']();logger[_0x4172('0x5c')]('header',_0x2ee003);fs[_0x4172('0x69')](_0x22fd73,_0x2ee003+'\x0a');Papa[_0x4172('0x6a')](fs[_0x4172('0x6b')](_0xda1680),{'header':!![],'skipEmptyLines':!![],'step':function(_0xf4ed1b,_0x2a2faf){try{for(var _0x5a459e=0x0,_0x11fa24=[];_0x5a459e<_0xf4ed1b['data'][_0x4172('0x25')];_0x5a459e++){stats['rows']+=0x1;if(_0xf4ed1b['errors'][_0x5a459e]){handleError(_0xf4ed1b[_0x4172('0x6c')][_0x5a459e],_0xf4ed1b[_0x4172('0x5a')][_0x5a459e]);}else{var _0x2ef626=[];var _0x537bf6=[];var _0x328635={};for(var _0x30b85a in _0x12b2d8){let _0x3d5b67=contactItemTypes['find'](_0x18e2bc=>_0x18e2bc[_0x4172('0x67')]===_0x30b85a);let _0x2907c1=contactItemTypes[_0x4172('0x6d')](_0x27cffa=>_0x27cffa[_0x4172('0x67')]+'_description'===_0x30b85a);if(_[_0x4172('0x1c')](_0x3d5b67)&&_[_0x4172('0x1c')](_0x2907c1)){if(_0x12b2d8['hasOwnProperty'](_0x30b85a)){if(_0xf4ed1b[_0x4172('0x6c')][_0x5a459e][_0x12b2d8[_0x30b85a]]){var _0x59b114=_['trim'](_0xf4ed1b[_0x4172('0x6c')][_0x5a459e][_0x12b2d8[_0x30b85a]][_0x4172('0x6e')](/"/g,'\x27'));switch(_0x30b85a){case _0x4172('0x6f'):var _0x48be3a=moment(_0x59b114,'YYYY-MM-DD\x20HH:mm:ss',!![]);if(_0x48be3a[_0x4172('0x70')]()){_0x11fa24['push']('\x22'+_0x59b114+'\x22');}else{_0x2ef626['push'](_0x4172('0x71'));}break;case _0x4172('0x39'):var _0x1b37e0=parseInt(_0x59b114);_0x59b114=_[_0x4172('0x72')](_0x1b37e0)||_0x1b37e0<0x0||_0x1b37e0>0x4?_0x18a1ad?0x3:0x2:_0x1b37e0;_0x11fa24[_0x4172('0x1d')]('\x22'+_0x59b114+'\x22');break;case'UserId':var _0x317a3f=parseInt(_0x59b114);if(_[_0x4172('0x73')](_0x317a3f)&&_[_0x4172('0x74')](_0x2a9a9c,_0x317a3f)){_0x11fa24[_0x4172('0x1d')]('\x22'+_0x317a3f+'\x22');}else{_0x2ef626['push'](_0x4172('0x75'));}break;case _0x4172('0x76'):if(isEmail(_0x59b114)){_0x11fa24[_0x4172('0x1d')]('\x22'+_0x59b114+'\x22');}else{_0x2ef626[_0x4172('0x1d')](_0x4172('0x77'));}break;case _0x4172('0x78'):var _0x22c44a=moment(_0x59b114,_0x4172('0x79'),!![]);if(_0x22c44a['isValid']()){_0x11fa24[_0x4172('0x1d')]('\x22'+_0x59b114+'\x22');}else{_0x2ef626[_0x4172('0x1d')]('dateOfBirth\x20wrong\x20format\x20(YYYY-MM-DD)');}break;default:_0x11fa24[_0x4172('0x1d')]('\x22'+_0x59b114+'\x22');}}else{switch(_0x30b85a){case _0x4172('0x7a'):case _0x4172('0x12'):_0x2ef626['push'](_0x30b85a+_0x4172('0x7b'));break;default:_0x11fa24[_0x4172('0x1d')]('\x22\x22');}}}}else{var _0x34765c='';if(!_[_0x4172('0x1c')](_0x3d5b67)){if(!_0x328635['hasOwnProperty'](_0x3d5b67['id'])){for(var _0x3927e2=0x0;_0x3927e2<_0x12b2d8[_0x30b85a][_0x4172('0x25')];_0x3927e2++){var _0x59b114=_['trim'](_0xf4ed1b[_0x4172('0x6c')][_0x5a459e][_0x12b2d8[_0x30b85a][_0x3927e2]][_0x4172('0x6e')](/"/g,'\x27'));var _0xb586a2=phoneDescriptions[_0x4172('0x6d')](_0x4d02e3=>_0x4d02e3[_0x4172('0x7c')]===_0x3d5b67['id']);if(!_[_0x4172('0x1c')](_0xb586a2)){var _0x5ca8b5=_['trim'](_0xf4ed1b['data'][_0x5a459e][_0x12b2d8[_0xb586a2[_0x4172('0x7d')]][0x0]]['replace'](/"/g,'\x27'));if(!_[_0x4172('0x1c')](_0x5ca8b5))_0x59b114=_0x59b114+'§'+_0x5ca8b5;}if(_0x34765c=='')_0x34765c=_0x59b114;else _0x34765c+='|'+_0x59b114;}_0x537bf6[_0x4172('0x1d')](_0x3d5b67['id']+':'+_0x34765c);_0x328635[_0x3d5b67['id']]=0x1;}}}}if(hasAdditionalPhones){_0x11fa24[_0x4172('0x1d')]('\x22'+_0x537bf6[_0x4172('0x14')](';')+'\x22');}if(_0x2ef626[_0x4172('0x25')]){handleError(_0xf4ed1b[_0x4172('0x6c')][_0x5a459e],{'code':'SystemRow','message':_0x2ef626[_0x4172('0x14')]()});}else{fs[_0x4172('0x7e')](_0x22fd73,_0x11fa24[_0x4172('0x14')]()+'\x0a');}_0x11fa24=[];}if(!(stats[_0x4172('0x7f')]%0xc8)){socket[_0x4172('0x80')](_0x4172('0x81')+_0x10acfb,stats);stats[_0x4172('0x5a')]=[];}}if(stopped){logger[_0x4172('0x5c')](_0x4172('0x82'));_0x2a2faf[_0x4172('0x83')]();}}catch(_0x2fc5d7){handleError(_0xf4ed1b[_0x4172('0x6c')][_0x5a459e],{'code':'SystemError','message':_0x2fc5d7[_0x4172('0x22')]});logger[_0x4172('0x21')]('step',_0x2fc5d7[_0x4172('0x22')]);}},'complete':function(){try{var _0x5b6909=[];var _0x2097d5=tempTableName;_0x5b6909[_0x4172('0x1d')](_0x4172('0x84')+_0x2097d5+_0x4172('0x85'));logger[_0x4172('0x5c')]('CIS\x20len',contactItemTypes[_0x4172('0x25')]);var _0x4d61c2=util[_0x4172('0xb')](_0x4172('0x86'),_0x22fd73,_0x2097d5,_0x2ee003,_0x5bf8ed[_0x4172('0x37')],_0x5bf8ed[_0x4172('0x54')]||null,NOW,NOW);if(_[_0x4172('0x1c')](_0x12b2d8[_0x4172('0x6f')])){_0x4d61c2+=_0x4172('0x87');}_0x5b6909[_0x4172('0x1d')](_0x4d61c2);BPromise[_0x4172('0x88')](_0x5b6909,handleQuery)[_0x4172('0x1f')](function(_0x2495a4){BPromise[_0x4172('0x1e')]([handleAdditionalPhones()])[_0x4172('0x1f')](function(){_0x5b6909=[];for(var _0x1748d6=0x0;_0x1748d6<promisesContact[_0x4172('0x25')];_0x1748d6++){_0x5b6909[_0x4172('0x1d')](updateContact(promisesContact[_0x1748d6]['contact']));}BPromise[_0x4172('0x1e')](_0x5b6909)[_0x4172('0x1f')](function(){_0x5b6909=[];for(var _0x14df14=0x0;_0x14df14<promisesAdditionalPhones[_0x4172('0x25')];_0x14df14++){_0x5b6909['push'](createAdditionalPhone(promisesAdditionalPhones[_0x14df14]['contactId'],promisesAdditionalPhones[_0x14df14]['contactTypeId'],promisesAdditionalPhones[_0x14df14][_0x4172('0x12')],promisesAdditionalPhones[_0x14df14][_0x4172('0x89')]));}BPromise[_0x4172('0x1e')](_0x5b6909)['then'](function(){_0x5b6909=[];_0x5b6909[_0x4172('0x1d')](insertCmHopperAdditionalPhones(_0x5bf8ed[_0x4172('0x37')]));_0x5b6909['push'](_0x4172('0x8a')+_0x2097d5+';');BPromise['each'](_0x5b6909,handleQuery)[_0x4172('0x1f')](function(_0xadc9bf){stats[_0x4172('0x8b')]=!![];stats['affectedRows']=updatedRows;socket[_0x4172('0x80')](_0x4172('0x81')+_0x10acfb,stats);fs[_0x4172('0x8c')](_0xda1680);fs['unlink'](_0x22fd73);process[_0x4172('0x8d')](0x0);})['catch'](function(_0x2715e1){logger[_0x4172('0x21')](_0x2715e1[_0x4172('0x22')]);process[_0x4172('0x8d')](0x1);});});});});})[_0x4172('0x20')](function(_0x36d994){logger['error'](_0x36d994[_0x4172('0x22')]);process['exit'](0x1);});}catch(_0x5cd7d9){logger['error'](_0x4172('0x8e'),_0x5cd7d9[_0x4172('0x22')]);process[_0x4172('0x8d')](0x1);}},'error':function(_0x52b15c,_0x24ee32,_0x4ca324,_0x2f60a0){throw new Error(_0x2f60a0);}});});}function validate(){if(process[_0x4172('0x8f')]&&process[_0x4172('0x8f')][_0x4172('0x25')]<0x4){throw new Error(_0x4172('0x90'));}var _0x2789de=path[_0x4172('0x14')](config[_0x4172('0x61')],_0x4172('0x62'),process[_0x4172('0x8f')][0x2]);if(!fs[_0x4172('0x91')](_0x2789de)){throw new Error(_0x4172('0x92'));}var _0xe6c413={};try{_0xe6c413=JSON['parse'](process[_0x4172('0x8f')][0x3]);if(!_0xe6c413[_0x4172('0x93')]){throw new Error(_0x4172('0x94'));}var _0x452a81=0x0;if(_0xe6c413['binding'][_0x4172('0x3a')]){_0x452a81=0x1;}if(!_0xe6c413[_0x4172('0x37')]){throw new Error(_0x4172('0x95'));}}catch(_0x530aa6){throw new Error(_0x4172('0x96'));}var _0x475577=[];try{_0x475577=_[_0x4172('0x97')](JSON[_0x4172('0x6a')](process['argv'][0x4]),'id');}catch(_0x32ec50){logger[_0x4172('0x5c')]('No\x20agent\x20available');}main(_0x2789de,_0xe6c413,_0x475577,_0x452a81);}validate();process['on'](_0x4172('0x98'),handleStop);process['on']('uncaughtException',handleUncaughtException);
\ No newline at end of file