Built motion from commit 39adb707.|2.6.14
[motion2.git] / server / components / import / cm / csvUpdates.js
index fbd2099..421b0c9 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x49db=['find','trim','replace','scheduledat','isValid','isNumber','includes','agent\x20not\x20exists','email','email\x20wrong\x20format','YYYY-MM-DD','\x20not\x20specified','hasOwnProperty','itemTypeId','description','SystemRow','appendFileSync','contact:import:','SystemError','step','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','contact','contactId','contactTypeId','DROP\x20TABLE\x20','finish','affectedRows','emit','exit','argv','arguments\x20<filename>\x20<parameters>\x20<agents>','file\x20doesn\x27t\x20exists','parse','binding\x20doesn\x27t\x20exists','ListId\x20is\x20mandatory','map','No\x20agent\x20available','SIGINT','uncaughtException','path','lodash','papaparse','util','bluebird','squel','ioredis','../../../mysqldb','../../../config/logger','defaults','redis','localhost','format','YYYY-MM-DD\x20HH:mm:ss','cm_contacts_temp_','YYYYMMDDHHmmss','select','field','phone','from','.id\x20=\x20','where','\x20=\x20','join','sequelize','query','select\x20*\x20from\x20','spread','isNil','push','all','then','catch','message','AdditionalPhones','split','length','filter','findOne','CmContactHasItem','update','create','PHONE','inserted','CmContact','cm_contacts.scheduledat','cm_contacts.id','cm_contacts.createdAt','cm_contacts.updatedAt','cm_contacts.priority','insert','into','cm_hopper','updatedAt','priority','UserId','recallme','cm_contacts','cm_contacts.ListId\x20=\x20','.CmListId','.CmListId\x20=\x20?','cm_contacts.createdAt\x20=\x20?','\x22always\x22','\x22onlyIfOpen\x22','cm_contacts.phone\x20NOT\x20IN\x20(?)','cm_contacts.phone','cm_contacts.ListId','cm_hopper_black','fromQuery','ContactId','createdAt','ListId\x20=\x20?','\x20=\x20?','toString','cm_hopper.id','cm_contact_has_items.item','cm_contact_has_items.OrderBy','cm_contact_has_items.createdAt','cm_hopper_additional_phones','CmHopperId','OrderBy','fields','cm_contacts.id\x20=\x20cm_hopper.ContactId','cm_hopper.ListId\x20=\x20?','concat','keys','ListId','CompanyId',')\x20NOT\x20IN\x20?','MIN(id)','min_id','group','info','errors','code','error','main','stringify','start','binding','clone','root','.csv','body','ContactItemType','findAll','name','_description','header','writeFileSync','createReadStream','data','rows'];(function(_0x44edc8,_0x41e0a7){var _0x214264=function(_0x59f6a0){while(--_0x59f6a0){_0x44edc8['push'](_0x44edc8['shift']());}};_0x214264(++_0x41e0a7);}(_0x49db,0xc5));var _0xb49d=function(_0x275f36,_0x31cde2){_0x275f36=_0x275f36-0x0;var _0x479ba9=_0x49db[_0x275f36];return _0x479ba9;};'use strict';var fs=require('fs');var path=require(_0xb49d('0x0'));var _=require(_0xb49d('0x1'));var Papa=require(_0xb49d('0x2'));var util=require(_0xb49d('0x3'));var BPromise=require(_0xb49d('0x4'));var moment=require('moment');var squel=require(_0xb49d('0x5'));var Redis=require(_0xb49d('0x6'));var db=require(_0xb49d('0x7'))['db'];var config=require('../../../config/environment');var logger=require(_0xb49d('0x8'))('import');config['redis']=_[_0xb49d('0x9')](config[_0xb49d('0xa')],{'host':_0xb49d('0xb'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0xb49d('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()[_0xb49d('0xc')](_0xb49d('0xd'));var tempTableName=_0xb49d('0xe')+moment()[_0xb49d('0xc')](_0xb49d('0xf'));var contactItemTypes=[];var phoneDescriptions=[];var hasAdditionalPhones=![];function isEmail(_0x54f285){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))*$/['test'](_0x54f285);}function selectNotIn(_0x3f21e3,_0x3422e0,_0x3e9e6d,_0x3259e5,_0x2c9c16){return squel[_0xb49d('0x10')]()[_0xb49d('0x11')](_0xb49d('0x12'))[_0xb49d('0x13')](_0x3259e5)['join'](_0x3422e0,null,_0x3422e0+_0xb49d('0x14')+_0x3259e5+'.'+_0x3e9e6d)[_0xb49d('0x15')](_0x3259e5+'.'+_0x3e9e6d+_0xb49d('0x16')+_0x3f21e3+'.'+_0x3e9e6d)[_0xb49d('0x15')](_0x3422e0+'.dialCheckDuplicateType\x20IN\x20('+_0x2c9c16[_0xb49d('0x17')]()+')');}function handleAdditionalPhones(){return new Promise(function(_0x2c0b41,_0x4ddeb5){promisesAdditionalPhones=[];promisesContact=[];return db[_0xb49d('0x18')][_0xb49d('0x19')](_0xb49d('0x1a')+tempTableName)[_0xb49d('0x1b')](function(_0x1491fb){if(_0x1491fb!==null){var _0x270298=[];for(var _0x1dba19=0x0;_0x1dba19<_0x1491fb['length'];_0x1dba19++){var _0x1da77c=_0x1491fb[_0x1dba19];if(!_[_0xb49d('0x1c')](_0x1da77c[_0xb49d('0x12')])){if(!_[_0xb49d('0x1c')](_0x1da77c['AdditionalPhones']))_0x270298['push'](insertAdditionalPhones(_0x1da77c));promisesContact[_0xb49d('0x1d')]({'contact':_0x1da77c});}}}Promise[_0xb49d('0x1e')](_0x270298)[_0xb49d('0x1f')](function(){_0x2c0b41({'val':0x1});});})[_0xb49d('0x20')](function(_0x5b24b9){logger['error'](_0x5b24b9[_0xb49d('0x21')]);});});}function insertAdditionalPhones(_0x47626f){return new Promise(function(_0x3bf7a2,_0x263c62){var _0x22ad15=_0x47626f[_0xb49d('0x22')];if(_[_0xb49d('0x1c')](_0x22ad15))_0x263c62({'val':0x0});else{var _0x35f82b=_0x22ad15[_0xb49d('0x23')](';');var _0x38be04=[];orderBy=0x0;for(var _0x19ead9=0x0;_0x19ead9<_0x35f82b[_0xb49d('0x24')];_0x19ead9++){_0x38be04[_0xb49d('0x1d')](splitAdditionalPhone(_0x47626f['id'],_0x35f82b[_0x19ead9]));}Promise[_0xb49d('0x1e')](_0x38be04)[_0xb49d('0x1f')](function(){_0x3bf7a2({'val':_0x35f82b[_0xb49d('0x24')]});});}});}function splitAdditionalPhone(_0x26db55,_0x21c0e1){return new Promise(function(_0x165ec2,_0x1ae086){var _0xb3d5=_0x21c0e1[_0xb49d('0x23')](':');var _0x5a6cbe=_0xb3d5[0x0];var _0x227305=_0xb3d5[0x1];if(_0x227305!==''){var _0x4b7134=_0x227305[_0xb49d('0x23')]('|');var _0x3b7fee=[];for(var _0x56163c=0x0;_0x56163c<_0x4b7134[_0xb49d('0x24')];_0x56163c++){if(_0x4b7134[_0x56163c]!==''){var _0x1cd841=_[_0xb49d('0x25')](promisesAdditionalPhones,{'contactId':_0x26db55,'phone':_0x4b7134[_0x56163c]});if(_0x1cd841[_0xb49d('0x24')]==0x0){orderBy++;promisesAdditionalPhones[_0xb49d('0x1d')]({'contactId':_0x26db55,'contactTypeId':_0x5a6cbe,'phone':_0x4b7134[_0x56163c],'orderBy':orderBy});}}}_0x165ec2({'ok':0x1});}else _0x165ec2({'res':0x0});});}function createAdditionalPhone(_0x2276ba,_0x5d7323,_0x3930fe,_0xf734e1){var _0x2b5e5d='';var _0x37901b='';var _0x420e63=_0x3930fe[_0xb49d('0x23')]('§');_0x2b5e5d=_0x420e63[0x0];if(_0x420e63[_0xb49d('0x24')]==0x2)_0x37901b=_0x420e63[0x1];return new Promise(function(_0x588529,_0x3f1796){return db['CmContactHasItem'][_0xb49d('0x26')]({'where':{'CmContactId':_0x2276ba,'item':_0x2b5e5d}})[_0xb49d('0x1f')](function(_0x978e19){if(_0x978e19){return db[_0xb49d('0x27')][_0xb49d('0x28')]({'ItemTypeId':_0x5d7323,'description':_0x37901b,'OrderBy':_0xf734e1},{'where':{'CmContactId':_0x2276ba,'item':_0x2b5e5d}})[_0xb49d('0x1f')](function(_0xd6d0b){_0x588529({'res':'updated'});});}else{return db[_0xb49d('0x27')][_0xb49d('0x29')]({'CmContactId':_0x2276ba,'item':_0x2b5e5d,'ItemTypeId':_0x5d7323,'description':_0x37901b,'OrderBy':_0xf734e1,'ItemClass':_0xb49d('0x2a')})['then'](function(_0x5cc4e5){_0x588529({'res':_0xb49d('0x2b')});});}});});}function updateContact(_0x12abb6){return new Promise(function(_0x208967,_0xbb8e0f){var _0x3fd75e=_0x12abb6['id'];delete _0x12abb6['id'];return db[_0xb49d('0x2c')][_0xb49d('0x28')](_0x12abb6,{'where':{'id':_0x3fd75e}})[_0xb49d('0x1f')](function(_0x594dcb){updatedRows+=0x1;return db['CmHopper'][_0xb49d('0x28')]({'phone':_0x12abb6['phone']},{'where':{'ContactId':_0x3fd75e}})['then'](function(_0x4b790e){_0x208967({'ret':'OK'});});});});}function insertCmHopper(_0x423399,_0x4235ad,_0x3964ec,_0x33f922,_0x1e90a7){var _0x2a90ee=['cm_contacts.phone',_0xb49d('0x2d'),_0xb49d('0x2e'),'cm_contacts.ListId',_0x4235ad+'.'+_0x33f922,_0xb49d('0x2f'),_0xb49d('0x30'),_0xb49d('0x31'),'cm_contacts.UserId','\x22'+_0x1e90a7+'\x22'];return squel[_0xb49d('0x32')]()[_0xb49d('0x33')](_0xb49d('0x34'))['fromQuery']([_0xb49d('0x12'),'scheduledat','ContactId','ListId',_0x33f922,'createdAt',_0xb49d('0x35'),_0xb49d('0x36'),_0xb49d('0x37'),_0xb49d('0x38')],squel['select']()['fields'](_0x2a90ee)[_0xb49d('0x13')](_0x4235ad)[_0xb49d('0x17')](_0xb49d('0x39'),null,_0xb49d('0x3a')+_0x4235ad+_0xb49d('0x3b'))['join'](_0x3964ec,null,_0x3964ec+'.id\x20=\x20'+_0x4235ad+'.'+_0x33f922)[_0xb49d('0x15')](_0x4235ad+_0xb49d('0x3c'),_0x423399)[_0xb49d('0x15')](_0xb49d('0x3d'),NOW)[_0xb49d('0x15')]('cm_contacts.phone\x20NOT\x20IN\x20(?)',selectNotIn(_0x4235ad,_0x3964ec,_0x33f922,_0xb49d('0x34'),[_0xb49d('0x3e'),_0xb49d('0x3f')]))[_0xb49d('0x15')](_0xb49d('0x40'),selectNotIn(_0x4235ad,_0x3964ec,_0x33f922,_0xb49d('0x34'),[_0xb49d('0x3e')])))['toString']();}function insertCmHopperBlack(_0x2f9481,_0x586968,_0x5db393,_0x3f394f){var _0x308407=[_0xb49d('0x41'),'cm_contacts.id',_0xb49d('0x42'),_0x586968+'.'+_0x3f394f,_0xb49d('0x2f'),_0xb49d('0x30')];return squel['insert']()['into'](_0xb49d('0x43'))[_0xb49d('0x44')]([_0xb49d('0x12'),_0xb49d('0x45'),'ListId',_0x3f394f,_0xb49d('0x46'),_0xb49d('0x35')],squel[_0xb49d('0x10')]()['fields'](_0x308407)[_0xb49d('0x13')](_0x586968)[_0xb49d('0x17')](_0xb49d('0x39'),null,_0xb49d('0x3a')+_0x586968+_0xb49d('0x3b'))[_0xb49d('0x17')](_0x5db393,null,_0x5db393+_0xb49d('0x14')+_0x586968+'.'+_0x3f394f)[_0xb49d('0x15')](_0x586968+'.CmListId\x20=\x20?',_0x2f9481)['where']('cm_contacts.createdAt\x20=\x20?',NOW)[_0xb49d('0x15')](_0xb49d('0x40'),squel[_0xb49d('0x10')]()[_0xb49d('0x11')]('phone')['from']('cm_hopper_black')[_0xb49d('0x15')](_0xb49d('0x47'),_0x2f9481)[_0xb49d('0x15')](_0x3f394f+_0xb49d('0x48'),_0x586968+'.'+_0x3f394f)))[_0xb49d('0x49')]();}function insertCmHopperAdditionalPhones(_0x4f58fa){var _0x2de03d=[_0xb49d('0x4a'),_0xb49d('0x4b'),_0xb49d('0x4c'),_0xb49d('0x4d'),'cm_contact_has_items.updatedAt'];return squel[_0xb49d('0x32')]()[_0xb49d('0x33')](_0xb49d('0x4e'))[_0xb49d('0x44')]([_0xb49d('0x4f'),_0xb49d('0x12'),_0xb49d('0x50'),'createdAt',_0xb49d('0x35')],squel['select']()[_0xb49d('0x51')](_0x2de03d)[_0xb49d('0x13')](_0xb49d('0x34'))[_0xb49d('0x17')](_0xb49d('0x39'),null,_0xb49d('0x52'))[_0xb49d('0x17')]('cm_contact_has_items',null,'cm_contacts.id\x20=\x20cm_contact_has_items.CmContactId')['where'](_0xb49d('0x53'),_0x4f58fa)[_0xb49d('0x15')]('cm_contacts.createdAt\x20=\x20?',NOW))[_0xb49d('0x49')]();}function insertCmContact(_0x14624f,_0x1cfc5a,_0x4057b7,_0x33ba3e){var _0x3ae388=_[_0xb49d('0x54')](_[_0xb49d('0x55')](_0x33ba3e),[_0xb49d('0x56'),_0xb49d('0x57'),'createdAt',_0xb49d('0x35')]);return squel[_0xb49d('0x32')]()[_0xb49d('0x33')](_0xb49d('0x39'))[_0xb49d('0x44')](_0x3ae388,squel[_0xb49d('0x10')]()[_0xb49d('0x51')](_0x3ae388)[_0xb49d('0x13')](_0x1cfc5a)[_0xb49d('0x15')]('('+_0x4057b7[_0xb49d('0x17')](',')+_0xb49d('0x58'),squel[_0xb49d('0x10')]()[_0xb49d('0x51')](_0x4057b7)['from'](_0xb49d('0x39'))[_0xb49d('0x15')](_0xb49d('0x47'),_0x14624f))[_0xb49d('0x15')]('id\x20IN\x20?',squel[_0xb49d('0x10')]()[_0xb49d('0x11')](_0xb49d('0x59'),_0xb49d('0x5a'))[_0xb49d('0x13')](_0x1cfc5a)[_0xb49d('0x5b')](_0x4057b7[_0xb49d('0x17')](','))))['toString']();}function handleStop(){logger[_0xb49d('0x5c')]('Received\x20SIGINT');stopped=!![];}function handleUncaughtException(_0xe81ea2){logger['error'](_0xe81ea2[_0xb49d('0x21')]);process['exit'](0x1);}function handleError(_0x916de2,_0x2da6a1){stats[_0xb49d('0x5d')]['push']({'name':_0x2da6a1[_0xb49d('0x5e')],'message':_0x2da6a1['message'],'row':_0x916de2});}function handleQuery(_0x53c6c4){logger[_0xb49d('0x5c')](_0x53c6c4);return db[_0xb49d('0x18')][_0xb49d('0x19')](_0x53c6c4)[_0xb49d('0x1b')](function(_0x15e06d){results[_0xb49d('0x1d')](_0x15e06d);})['catch'](function(_0x5ac526){logger[_0xb49d('0x5f')](_0x5ac526[_0xb49d('0x21')]);});}function main(_0x16b956,_0x55c75a,_0x280689,_0x314c5d){logger['info'](_0xb49d('0x60'),_0x16b956,JSON[_0xb49d('0x61')](_0x55c75a));process['send'](_0xb49d('0x62'));var _0x2d8271=_0x55c75a[_0xb49d('0x63')];var _0x1201b1=_[_0xb49d('0x64')](_0x2d8271);var _0x264605=_0x55c75a['socket_timestamp'];var _0x24884d=path[_0xb49d('0x17')](config[_0xb49d('0x65')],'server/files/tmp',_0x264605+_0xb49d('0x66'));logger[_0xb49d('0x5c')](_0xb49d('0x67'),_0x55c75a);db[_0xb49d('0x68')][_0xb49d('0x69')]({'raw':!![],'attributes':['id',_0xb49d('0x6a')]})['then'](function(_0x8a266c){for(var _0x10d3cf=0x0;_0x10d3cf<_0x8a266c[_0xb49d('0x24')];_0x10d3cf++){if(_0x8a266c[_0x10d3cf][_0xb49d('0x6a')]in _0x2d8271){contactItemTypes[_0xb49d('0x1d')](_0x8a266c[_0x10d3cf]);delete _0x1201b1[_0x8a266c[_0x10d3cf][_0xb49d('0x6a')]];hasAdditionalPhones=!![];}for(var _0x11934a in _0x2d8271){if(_0x8a266c[_0x10d3cf][_0xb49d('0x6a')]+_0xb49d('0x6b')===_0x11934a){phoneDescriptions[_0xb49d('0x1d')]({'itemTypeId':_0x8a266c[_0x10d3cf]['id'],'description':_0x11934a});delete _0x1201b1[_0x11934a];}}}if(hasAdditionalPhones)_0x1201b1[_0xb49d('0x22')]='';var _0x162c46=_['keys'](_0x1201b1)[_0xb49d('0x17')]();logger['info'](_0xb49d('0x6c'),_0x162c46);fs[_0xb49d('0x6d')](_0x24884d,_0x162c46+'\x0a');Papa['parse'](fs[_0xb49d('0x6e')](_0x16b956),{'header':!![],'skipEmptyLines':!![],'step':function(_0x55603f,_0x2cdcc2){try{for(var _0x595052=0x0,_0x2d2d9c=[];_0x595052<_0x55603f[_0xb49d('0x6f')][_0xb49d('0x24')];_0x595052++){stats[_0xb49d('0x70')]+=0x1;if(_0x55603f[_0xb49d('0x5d')][_0x595052]){handleError(_0x55603f['data'][_0x595052],_0x55603f[_0xb49d('0x5d')][_0x595052]);}else{var _0x5adf36=[];var _0x2d7f16=[];var _0xf0a753={};for(var _0x3ded9a in _0x2d8271){let _0x44f848=contactItemTypes[_0xb49d('0x71')](_0x1c1175=>_0x1c1175[_0xb49d('0x6a')]===_0x3ded9a);let _0x35aa38=contactItemTypes['find'](_0x258ce9=>_0x258ce9[_0xb49d('0x6a')]+'_description'===_0x3ded9a);if(_[_0xb49d('0x1c')](_0x44f848)&&_['isNil'](_0x35aa38)){if(_0x2d8271['hasOwnProperty'](_0x3ded9a)){if(_0x55603f['data'][_0x595052][_0x2d8271[_0x3ded9a]]){var _0x50bb6c=_[_0xb49d('0x72')](_0x55603f[_0xb49d('0x6f')][_0x595052][_0x2d8271[_0x3ded9a]][_0xb49d('0x73')](/"/g,'\x27'));switch(_0x3ded9a){case _0xb49d('0x74'):var _0x59a570=moment(_0x50bb6c,_0xb49d('0xd'),!![]);if(_0x59a570[_0xb49d('0x75')]()){_0x2d2d9c[_0xb49d('0x1d')]('\x22'+_0x50bb6c+'\x22');}else{_0x5adf36[_0xb49d('0x1d')]('scheduledat\x20wrong\x20format\x20(YYYY-MM-DD\x20HH:mm:ss)');}break;case _0xb49d('0x36'):var _0x1463e4=parseInt(_0x50bb6c);_0x50bb6c=_['isNaN'](_0x1463e4)||_0x1463e4<0x0||_0x1463e4>0x4?_0x314c5d?0x3:0x2:_0x1463e4;_0x2d2d9c[_0xb49d('0x1d')]('\x22'+_0x50bb6c+'\x22');break;case _0xb49d('0x37'):var _0x48accb=parseInt(_0x50bb6c);if(_[_0xb49d('0x76')](_0x48accb)&&_[_0xb49d('0x77')](_0x280689,_0x48accb)){_0x2d2d9c['push']('\x22'+_0x48accb+'\x22');}else{_0x5adf36['push'](_0xb49d('0x78'));}break;case _0xb49d('0x79'):if(isEmail(_0x50bb6c)){_0x2d2d9c[_0xb49d('0x1d')]('\x22'+_0x50bb6c+'\x22');}else{_0x5adf36[_0xb49d('0x1d')](_0xb49d('0x7a'));}break;case'dateOfBirth':var _0x1ab7e7=moment(_0x50bb6c,_0xb49d('0x7b'),!![]);if(_0x1ab7e7[_0xb49d('0x75')]()){_0x2d2d9c['push']('\x22'+_0x50bb6c+'\x22');}else{_0x5adf36[_0xb49d('0x1d')]('dateOfBirth\x20wrong\x20format\x20(YYYY-MM-DD)');}break;default:_0x2d2d9c[_0xb49d('0x1d')]('\x22'+_0x50bb6c+'\x22');}}else{switch(_0x3ded9a){case'firstName':case _0xb49d('0x12'):_0x5adf36[_0xb49d('0x1d')](_0x3ded9a+_0xb49d('0x7c'));break;default:_0x2d2d9c[_0xb49d('0x1d')]('\x22\x22');}}}}else{var _0x214078='';if(!_['isNil'](_0x44f848)){if(!_0xf0a753[_0xb49d('0x7d')](_0x44f848['id'])){for(var _0x5b98a4=0x0;_0x5b98a4<_0x2d8271[_0x3ded9a][_0xb49d('0x24')];_0x5b98a4++){var _0x50bb6c=_[_0xb49d('0x72')](_0x55603f[_0xb49d('0x6f')][_0x595052][_0x2d8271[_0x3ded9a][_0x5b98a4]][_0xb49d('0x73')](/"/g,'\x27'));var _0x3619e3=phoneDescriptions[_0xb49d('0x71')](_0x39a8ef=>_0x39a8ef[_0xb49d('0x7e')]===_0x44f848['id']);if(!_['isNil'](_0x3619e3)){var _0x4c1dc6=_['trim'](_0x55603f[_0xb49d('0x6f')][_0x595052][_0x2d8271[_0x3619e3[_0xb49d('0x7f')]][0x0]][_0xb49d('0x73')](/"/g,'\x27'));if(!_[_0xb49d('0x1c')](_0x4c1dc6))_0x50bb6c=_0x50bb6c+'§'+_0x4c1dc6;}if(_0x214078=='')_0x214078=_0x50bb6c;else _0x214078+='|'+_0x50bb6c;}_0x2d7f16[_0xb49d('0x1d')](_0x44f848['id']+':'+_0x214078);_0xf0a753[_0x44f848['id']]=0x1;}}}}if(hasAdditionalPhones){_0x2d2d9c[_0xb49d('0x1d')]('\x22'+_0x2d7f16[_0xb49d('0x17')](';')+'\x22');}if(_0x5adf36[_0xb49d('0x24')]){handleError(_0x55603f[_0xb49d('0x6f')][_0x595052],{'code':_0xb49d('0x80'),'message':_0x5adf36[_0xb49d('0x17')]()});}else{fs[_0xb49d('0x81')](_0x24884d,_0x2d2d9c[_0xb49d('0x17')]()+'\x0a');}_0x2d2d9c=[];}if(!(stats[_0xb49d('0x70')]%0xc8)){socket['emit'](_0xb49d('0x82')+_0x264605,stats);stats['errors']=[];}}if(stopped){logger[_0xb49d('0x5c')]('Abort\x20parser');_0x2cdcc2['abort']();}}catch(_0x2c29ba){handleError(_0x55603f[_0xb49d('0x6f')][_0x595052],{'code':_0xb49d('0x83'),'message':_0x2c29ba['message']});logger['error'](_0xb49d('0x84'),_0x2c29ba[_0xb49d('0x21')]);}},'complete':function(){try{var _0x212ad0=[];var _0x453694=tempTableName;_0x212ad0[_0xb49d('0x1d')]('CREATE\x20TABLE\x20'+_0x453694+'\x20LIKE\x20cm_contacts;');logger['info'](_0xb49d('0x85'),contactItemTypes[_0xb49d('0x24')]);var _0x70cf7b=util['format'](_0xb49d('0x86'),_0x24884d,_0x453694,_0x162c46,_0x55c75a[_0xb49d('0x56')],_0x55c75a[_0xb49d('0x57')]||null,NOW,NOW);if(_[_0xb49d('0x1c')](_0x2d8271[_0xb49d('0x74')])){_0x70cf7b+=_0xb49d('0x87');}_0x212ad0['push'](_0x70cf7b);BPromise[_0xb49d('0x88')](_0x212ad0,handleQuery)[_0xb49d('0x1f')](function(_0x221092){BPromise[_0xb49d('0x1e')]([handleAdditionalPhones()])['then'](function(){_0x212ad0=[];for(var _0x15cf10=0x0;_0x15cf10<promisesContact[_0xb49d('0x24')];_0x15cf10++){_0x212ad0[_0xb49d('0x1d')](updateContact(promisesContact[_0x15cf10][_0xb49d('0x89')]));}BPromise[_0xb49d('0x1e')](_0x212ad0)[_0xb49d('0x1f')](function(){_0x212ad0=[];for(var _0x33bbb4=0x0;_0x33bbb4<promisesAdditionalPhones[_0xb49d('0x24')];_0x33bbb4++){_0x212ad0['push'](createAdditionalPhone(promisesAdditionalPhones[_0x33bbb4][_0xb49d('0x8a')],promisesAdditionalPhones[_0x33bbb4][_0xb49d('0x8b')],promisesAdditionalPhones[_0x33bbb4][_0xb49d('0x12')],promisesAdditionalPhones[_0x33bbb4]['orderBy']));}BPromise[_0xb49d('0x1e')](_0x212ad0)['then'](function(){_0x212ad0=[];_0x212ad0['push'](insertCmHopperAdditionalPhones(_0x55c75a[_0xb49d('0x56')]));_0x212ad0[_0xb49d('0x1d')](_0xb49d('0x8c')+_0x453694+';');BPromise[_0xb49d('0x88')](_0x212ad0,handleQuery)[_0xb49d('0x1f')](function(_0x4bdf27){stats[_0xb49d('0x8d')]=!![];stats[_0xb49d('0x8e')]=updatedRows;socket[_0xb49d('0x8f')](_0xb49d('0x82')+_0x264605,stats);fs['unlink'](_0x16b956);fs['unlink'](_0x24884d);process[_0xb49d('0x90')](0x0);})[_0xb49d('0x20')](function(_0x361795){logger['error'](_0x361795[_0xb49d('0x21')]);process['exit'](0x1);});});});});})[_0xb49d('0x20')](function(_0x2ddc5d){logger[_0xb49d('0x5f')](_0x2ddc5d[_0xb49d('0x21')]);process[_0xb49d('0x90')](0x1);});}catch(_0x5e8583){logger[_0xb49d('0x5f')]('complete',_0x5e8583['message']);process[_0xb49d('0x90')](0x1);}},'error':function(_0x3c5448,_0xccde3d,_0xdbf39,_0x25c525){throw new Error(_0x25c525);}});});}function validate(){if(process[_0xb49d('0x91')]&&process['argv'][_0xb49d('0x24')]<0x4){throw new Error(_0xb49d('0x92'));}var _0x3aa190=path[_0xb49d('0x17')](config[_0xb49d('0x65')],'server/files/tmp',process[_0xb49d('0x91')][0x2]);if(!fs['existsSync'](_0x3aa190)){throw new Error(_0xb49d('0x93'));}var _0x3edc21={};try{_0x3edc21=JSON[_0xb49d('0x94')](process[_0xb49d('0x91')][0x3]);if(!_0x3edc21['binding']){throw new Error(_0xb49d('0x95'));}var _0x164fb8=0x0;if(_0x3edc21['binding']['UserId']){_0x164fb8=0x1;}if(!_0x3edc21[_0xb49d('0x56')]){throw new Error(_0xb49d('0x96'));}}catch(_0x7a07b4){throw new Error('body\x20id\x20mandatory');}var _0x46ea96=[];try{_0x46ea96=_[_0xb49d('0x97')](JSON[_0xb49d('0x94')](process[_0xb49d('0x91')][0x4]),'id');}catch(_0x57b8c7){logger[_0xb49d('0x5c')](_0xb49d('0x98'));}main(_0x3aa190,_0x3edc21,_0x46ea96,_0x164fb8);}validate();process['on'](_0xb49d('0x99'),handleStop);process['on'](_0xb49d('0x9a'),handleUncaughtException);
\ No newline at end of file
+var _0x5360=['step','CREATE\x20TABLE\x20','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','contact','contactTypeId','orderBy','DROP\x20TABLE\x20','finish','affectedRows','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','SIGINT','uncaughtException','path','lodash','papaparse','util','squel','../../../mysqldb','../../../config/environment','defaults','redis','localhost','socket.io-emitter','format','YYYY-MM-DD\x20HH:mm:ss','cm_contacts_temp_','YYYYMMDDHHmmss','select','field','phone','from','join','.id\x20=\x20','where','\x20=\x20','.dialCheckDuplicateType\x20IN\x20(','sequelize','query','select\x20*\x20from\x20','length','isNil','AdditionalPhones','all','then','error','message','split','push','filter','findOne','CmContactHasItem','update','updated','PHONE','inserted','CmContact','CmHopper','cm_contacts.phone','cm_contacts.id','cm_contacts.ListId','cm_contacts.createdAt','cm_contacts.updatedAt','cm_contacts.priority','insert','cm_hopper','fromQuery','ContactId','ListId','createdAt','updatedAt','UserId','recallme','fields','cm_contacts','cm_contacts.ListId\x20=\x20','.CmListId','.CmListId\x20=\x20?','cm_contacts.phone\x20NOT\x20IN\x20(?)','\x22always\x22','toString','into','cm_hopper_black','cm_contacts.createdAt\x20=\x20?','ListId\x20=\x20?','cm_hopper.id','cm_contact_has_items.item','cm_contact_has_items.OrderBy','cm_contact_has_items.createdAt','cm_contact_has_items.updatedAt','cm_hopper_additional_phones','CmHopperId','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','CompanyId',')\x20NOT\x20IN\x20?','MIN(id)','group','info','exit','code','spread','main','send','start','binding','clone','server/files/tmp','.csv','body','ContactItemType','name','_description','header','createReadStream','rows','data','errors','find','trim','scheduledat','isValid','scheduledat\x20wrong\x20format\x20(YYYY-MM-DD\x20HH:mm:ss)','isNaN','includes','agent\x20not\x20exists','email','email\x20wrong\x20format','dateOfBirth','dateOfBirth\x20wrong\x20format\x20(YYYY-MM-DD)','firstName','\x20not\x20specified','hasOwnProperty','replace','itemTypeId','description','SystemRow','appendFileSync','emit','contact:import:','Abort\x20parser','abort','SystemError'];(function(_0x24304c,_0x5c5332){var _0x457533=function(_0x340cdf){while(--_0x340cdf){_0x24304c['push'](_0x24304c['shift']());}};_0x457533(++_0x5c5332);}(_0x5360,0x157));var _0x0536=function(_0x4b0ea1,_0xaee1ba){_0x4b0ea1=_0x4b0ea1-0x0;var _0x5a6615=_0x5360[_0x4b0ea1];return _0x5a6615;};'use strict';var fs=require('fs');var path=require(_0x0536('0x0'));var _=require(_0x0536('0x1'));var Papa=require(_0x0536('0x2'));var util=require(_0x0536('0x3'));var BPromise=require('bluebird');var moment=require('moment');var squel=require(_0x0536('0x4'));var Redis=require('ioredis');var db=require(_0x0536('0x5'))['db'];var config=require(_0x0536('0x6'));var logger=require('../../../config/logger')('import');config['redis']=_[_0x0536('0x7')](config[_0x0536('0x8')],{'host':_0x0536('0x9'),'port':0x18eb});var socket=require(_0x0536('0xa'))(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()[_0x0536('0xb')](_0x0536('0xc'));var tempTableName=_0x0536('0xd')+moment()['format'](_0x0536('0xe'));var contactItemTypes=[];var phoneDescriptions=[];var hasAdditionalPhones=![];function isEmail(_0x53d6fd){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))*$/['test'](_0x53d6fd);}function selectNotIn(_0x5548ba,_0x532ab9,_0x2e0a00,_0x33a809,_0x25b060){return squel[_0x0536('0xf')]()[_0x0536('0x10')](_0x0536('0x11'))[_0x0536('0x12')](_0x33a809)[_0x0536('0x13')](_0x532ab9,null,_0x532ab9+_0x0536('0x14')+_0x33a809+'.'+_0x2e0a00)[_0x0536('0x15')](_0x33a809+'.'+_0x2e0a00+_0x0536('0x16')+_0x5548ba+'.'+_0x2e0a00)[_0x0536('0x15')](_0x532ab9+_0x0536('0x17')+_0x25b060['join']()+')');}function handleAdditionalPhones(){return new Promise(function(_0x29123b,_0x114f64){promisesAdditionalPhones=[];promisesContact=[];return db[_0x0536('0x18')][_0x0536('0x19')](_0x0536('0x1a')+tempTableName)['spread'](function(_0x3d6b68){if(_0x3d6b68!==null){var _0x3785ba=[];for(var _0x1ea9db=0x0;_0x1ea9db<_0x3d6b68[_0x0536('0x1b')];_0x1ea9db++){var _0x52f170=_0x3d6b68[_0x1ea9db];if(!_['isNil'](_0x52f170[_0x0536('0x11')])){if(!_[_0x0536('0x1c')](_0x52f170[_0x0536('0x1d')]))_0x3785ba['push'](insertAdditionalPhones(_0x52f170));promisesContact['push']({'contact':_0x52f170});}}}Promise[_0x0536('0x1e')](_0x3785ba)[_0x0536('0x1f')](function(){_0x29123b({'val':0x1});});})['catch'](function(_0x643c08){logger[_0x0536('0x20')](_0x643c08[_0x0536('0x21')]);});});}function insertAdditionalPhones(_0x43730f){return new Promise(function(_0x3e1d66,_0x52bcd8){var _0x173414=_0x43730f['AdditionalPhones'];if(_['isNil'](_0x173414))_0x52bcd8({'val':0x0});else{var _0x21f3ae=_0x173414[_0x0536('0x22')](';');var _0x21c094=[];orderBy=0x0;for(var _0x2f5ebd=0x0;_0x2f5ebd<_0x21f3ae[_0x0536('0x1b')];_0x2f5ebd++){_0x21c094[_0x0536('0x23')](splitAdditionalPhone(_0x43730f['id'],_0x21f3ae[_0x2f5ebd]));}Promise[_0x0536('0x1e')](_0x21c094)['then'](function(){_0x3e1d66({'val':_0x21f3ae[_0x0536('0x1b')]});});}});}function splitAdditionalPhone(_0x3e3542,_0x5a52b0){return new Promise(function(_0x3294da,_0x794bd1){var _0x310a67=_0x5a52b0['split'](':');var _0x32a0d6=_0x310a67[0x0];var _0x290701=_0x310a67[0x1];if(_0x290701!==''){var _0x20a909=_0x290701['split']('|');var _0x122cc5=[];for(var _0x334b46=0x0;_0x334b46<_0x20a909[_0x0536('0x1b')];_0x334b46++){if(_0x20a909[_0x334b46]!==''){var _0x24c2ed=_[_0x0536('0x24')](promisesAdditionalPhones,{'contactId':_0x3e3542,'phone':_0x20a909[_0x334b46]});if(_0x24c2ed[_0x0536('0x1b')]==0x0){orderBy++;promisesAdditionalPhones[_0x0536('0x23')]({'contactId':_0x3e3542,'contactTypeId':_0x32a0d6,'phone':_0x20a909[_0x334b46],'orderBy':orderBy});}}}_0x3294da({'ok':0x1});}else _0x3294da({'res':0x0});});}function createAdditionalPhone(_0x1fe89a,_0x11cfef,_0x2e3ab1,_0x5f4b92){var _0x2ab6dd='';var _0x36d4d7='';var _0x4d8c31=_0x2e3ab1[_0x0536('0x22')]('§');_0x2ab6dd=_0x4d8c31[0x0];if(_0x4d8c31[_0x0536('0x1b')]==0x2)_0x36d4d7=_0x4d8c31[0x1];return new Promise(function(_0x3f99a0,_0x2ebde8){return db['CmContactHasItem'][_0x0536('0x25')]({'where':{'CmContactId':_0x1fe89a,'item':_0x2ab6dd}})['then'](function(_0x4a74d3){if(_0x4a74d3){return db[_0x0536('0x26')][_0x0536('0x27')]({'ItemTypeId':_0x11cfef,'description':_0x36d4d7,'OrderBy':_0x5f4b92},{'where':{'CmContactId':_0x1fe89a,'item':_0x2ab6dd}})[_0x0536('0x1f')](function(_0x32e2f5){_0x3f99a0({'res':_0x0536('0x28')});});}else{return db[_0x0536('0x26')]['create']({'CmContactId':_0x1fe89a,'item':_0x2ab6dd,'ItemTypeId':_0x11cfef,'description':_0x36d4d7,'OrderBy':_0x5f4b92,'ItemClass':_0x0536('0x29')})[_0x0536('0x1f')](function(_0x5e3b1e){_0x3f99a0({'res':_0x0536('0x2a')});});}});});}function updateContact(_0x5bcdd8){return new Promise(function(_0x12118e,_0x2e2614){var _0x112f77=_0x5bcdd8['id'];delete _0x5bcdd8['id'];return db[_0x0536('0x2b')][_0x0536('0x27')](_0x5bcdd8,{'where':{'id':_0x112f77}})[_0x0536('0x1f')](function(_0x4a07f5){updatedRows+=0x1;return db[_0x0536('0x2c')]['update']({'phone':_0x5bcdd8['phone']},{'where':{'ContactId':_0x112f77}})[_0x0536('0x1f')](function(_0x35fe7c){_0x12118e({'ret':'OK'});});});});}function insertCmHopper(_0x931a3a,_0x5f3442,_0x3eaba7,_0xc9a3ec,_0xc46c8b){var _0xee339=[_0x0536('0x2d'),'cm_contacts.scheduledat',_0x0536('0x2e'),_0x0536('0x2f'),_0x5f3442+'.'+_0xc9a3ec,_0x0536('0x30'),_0x0536('0x31'),_0x0536('0x32'),'cm_contacts.UserId','\x22'+_0xc46c8b+'\x22'];return squel[_0x0536('0x33')]()['into'](_0x0536('0x34'))[_0x0536('0x35')]([_0x0536('0x11'),'scheduledat',_0x0536('0x36'),_0x0536('0x37'),_0xc9a3ec,_0x0536('0x38'),_0x0536('0x39'),'priority',_0x0536('0x3a'),_0x0536('0x3b')],squel['select']()[_0x0536('0x3c')](_0xee339)['from'](_0x5f3442)['join'](_0x0536('0x3d'),null,_0x0536('0x3e')+_0x5f3442+_0x0536('0x3f'))['join'](_0x3eaba7,null,_0x3eaba7+'.id\x20=\x20'+_0x5f3442+'.'+_0xc9a3ec)['where'](_0x5f3442+_0x0536('0x40'),_0x931a3a)[_0x0536('0x15')]('cm_contacts.createdAt\x20=\x20?',NOW)[_0x0536('0x15')](_0x0536('0x41'),selectNotIn(_0x5f3442,_0x3eaba7,_0xc9a3ec,_0x0536('0x34'),[_0x0536('0x42'),'\x22onlyIfOpen\x22']))[_0x0536('0x15')](_0x0536('0x41'),selectNotIn(_0x5f3442,_0x3eaba7,_0xc9a3ec,_0x0536('0x34'),[_0x0536('0x42')])))[_0x0536('0x43')]();}function insertCmHopperBlack(_0x267e82,_0x413e20,_0x2560c0,_0x5e4580){var _0x325432=[_0x0536('0x2d'),_0x0536('0x2e'),'cm_contacts.ListId',_0x413e20+'.'+_0x5e4580,_0x0536('0x30'),_0x0536('0x31')];return squel[_0x0536('0x33')]()[_0x0536('0x44')](_0x0536('0x45'))['fromQuery']([_0x0536('0x11'),_0x0536('0x36'),'ListId',_0x5e4580,_0x0536('0x38'),_0x0536('0x39')],squel[_0x0536('0xf')]()[_0x0536('0x3c')](_0x325432)[_0x0536('0x12')](_0x413e20)[_0x0536('0x13')](_0x0536('0x3d'),null,'cm_contacts.ListId\x20=\x20'+_0x413e20+'.CmListId')[_0x0536('0x13')](_0x2560c0,null,_0x2560c0+_0x0536('0x14')+_0x413e20+'.'+_0x5e4580)[_0x0536('0x15')](_0x413e20+_0x0536('0x40'),_0x267e82)[_0x0536('0x15')](_0x0536('0x46'),NOW)[_0x0536('0x15')](_0x0536('0x41'),squel['select']()[_0x0536('0x10')](_0x0536('0x11'))['from'](_0x0536('0x45'))['where'](_0x0536('0x47'),_0x267e82)[_0x0536('0x15')](_0x5e4580+'\x20=\x20?',_0x413e20+'.'+_0x5e4580)))['toString']();}function insertCmHopperAdditionalPhones(_0x20b2b7){var _0x2eb58c=[_0x0536('0x48'),_0x0536('0x49'),_0x0536('0x4a'),_0x0536('0x4b'),_0x0536('0x4c')];return squel[_0x0536('0x33')]()[_0x0536('0x44')](_0x0536('0x4d'))[_0x0536('0x35')]([_0x0536('0x4e'),_0x0536('0x11'),'OrderBy',_0x0536('0x38'),_0x0536('0x39')],squel[_0x0536('0xf')]()['fields'](_0x2eb58c)[_0x0536('0x12')](_0x0536('0x34'))[_0x0536('0x13')](_0x0536('0x3d'),null,_0x0536('0x4f'))['join'](_0x0536('0x50'),null,_0x0536('0x51'))[_0x0536('0x15')](_0x0536('0x52'),_0x20b2b7)[_0x0536('0x15')](_0x0536('0x46'),NOW))[_0x0536('0x43')]();}function insertCmContact(_0x572b25,_0x18553f,_0x12172a,_0x5d318f){var _0x50b8af=_[_0x0536('0x53')](_[_0x0536('0x54')](_0x5d318f),[_0x0536('0x37'),_0x0536('0x55'),_0x0536('0x38'),'updatedAt']);return squel[_0x0536('0x33')]()['into'](_0x0536('0x3d'))[_0x0536('0x35')](_0x50b8af,squel[_0x0536('0xf')]()[_0x0536('0x3c')](_0x50b8af)[_0x0536('0x12')](_0x18553f)[_0x0536('0x15')]('('+_0x12172a[_0x0536('0x13')](',')+_0x0536('0x56'),squel[_0x0536('0xf')]()[_0x0536('0x3c')](_0x12172a)[_0x0536('0x12')](_0x0536('0x3d'))[_0x0536('0x15')](_0x0536('0x47'),_0x572b25))['where']('id\x20IN\x20?',squel['select']()['field'](_0x0536('0x57'),'min_id')['from'](_0x18553f)[_0x0536('0x58')](_0x12172a[_0x0536('0x13')](','))))[_0x0536('0x43')]();}function handleStop(){logger[_0x0536('0x59')]('Received\x20SIGINT');stopped=!![];}function handleUncaughtException(_0x418daa){logger[_0x0536('0x20')](_0x418daa[_0x0536('0x21')]);process[_0x0536('0x5a')](0x1);}function handleError(_0x5787bf,_0x1097a8){stats['errors']['push']({'name':_0x1097a8[_0x0536('0x5b')],'message':_0x1097a8[_0x0536('0x21')],'row':_0x5787bf});}function handleQuery(_0x2f6670){logger[_0x0536('0x59')](_0x2f6670);return db[_0x0536('0x18')][_0x0536('0x19')](_0x2f6670)[_0x0536('0x5c')](function(_0xbc7916){results[_0x0536('0x23')](_0xbc7916);})['catch'](function(_0x2041c7){logger[_0x0536('0x20')](_0x2041c7[_0x0536('0x21')]);});}function main(_0x152c58,_0x236d1a,_0x275039,_0x2f8e24){logger[_0x0536('0x59')](_0x0536('0x5d'),_0x152c58,JSON['stringify'](_0x236d1a));process[_0x0536('0x5e')](_0x0536('0x5f'));var _0x12ee54=_0x236d1a[_0x0536('0x60')];var _0x245927=_[_0x0536('0x61')](_0x12ee54);var _0x40e938=_0x236d1a['socket_timestamp'];var _0x400843=path[_0x0536('0x13')](config['root'],_0x0536('0x62'),_0x40e938+_0x0536('0x63'));logger['info'](_0x0536('0x64'),_0x236d1a);db[_0x0536('0x65')]['findAll']({'raw':!![],'attributes':['id','name']})[_0x0536('0x1f')](function(_0x2a955a){for(var _0x6de5f9=0x0;_0x6de5f9<_0x2a955a[_0x0536('0x1b')];_0x6de5f9++){if(_0x2a955a[_0x6de5f9]['name']in _0x12ee54){contactItemTypes[_0x0536('0x23')](_0x2a955a[_0x6de5f9]);delete _0x245927[_0x2a955a[_0x6de5f9][_0x0536('0x66')]];hasAdditionalPhones=!![];}for(var _0x50a8bd in _0x12ee54){if(_0x2a955a[_0x6de5f9][_0x0536('0x66')]+_0x0536('0x67')===_0x50a8bd){phoneDescriptions[_0x0536('0x23')]({'itemTypeId':_0x2a955a[_0x6de5f9]['id'],'description':_0x50a8bd});delete _0x245927[_0x50a8bd];}}}if(hasAdditionalPhones)_0x245927[_0x0536('0x1d')]='';var _0x1d7fbe=_[_0x0536('0x54')](_0x245927)[_0x0536('0x13')]();logger[_0x0536('0x59')](_0x0536('0x68'),_0x1d7fbe);fs['writeFileSync'](_0x400843,_0x1d7fbe+'\x0a');Papa['parse'](fs[_0x0536('0x69')](_0x152c58),{'header':!![],'skipEmptyLines':!![],'step':function(_0x584d6b,_0x21ceba){try{for(var _0x4445fb=0x0,_0x56a8b9=[];_0x4445fb<_0x584d6b['data'][_0x0536('0x1b')];_0x4445fb++){stats[_0x0536('0x6a')]+=0x1;if(_0x584d6b['errors'][_0x4445fb]){handleError(_0x584d6b[_0x0536('0x6b')][_0x4445fb],_0x584d6b[_0x0536('0x6c')][_0x4445fb]);}else{var _0x3fe30b=[];var _0xdafe66=[];var _0x5c7117={};for(var _0x3b3283 in _0x12ee54){let _0x3c7f64=contactItemTypes[_0x0536('0x6d')](_0x4c0796=>_0x4c0796[_0x0536('0x66')]===_0x3b3283);let _0x183619=contactItemTypes[_0x0536('0x6d')](_0x4ed051=>_0x4ed051[_0x0536('0x66')]+_0x0536('0x67')===_0x3b3283);if(_[_0x0536('0x1c')](_0x3c7f64)&&_[_0x0536('0x1c')](_0x183619)){if(_0x12ee54['hasOwnProperty'](_0x3b3283)){if(_0x584d6b['data'][_0x4445fb][_0x12ee54[_0x3b3283]]){var _0x5a216b=_[_0x0536('0x6e')](_0x584d6b['data'][_0x4445fb][_0x12ee54[_0x3b3283]]['replace'](/"/g,'\x27'));switch(_0x3b3283){case _0x0536('0x6f'):var _0x13afae=moment(_0x5a216b,'YYYY-MM-DD\x20HH:mm:ss',!![]);if(_0x13afae[_0x0536('0x70')]()){_0x56a8b9[_0x0536('0x23')]('\x22'+_0x5a216b+'\x22');}else{_0x3fe30b[_0x0536('0x23')](_0x0536('0x71'));}break;case'priority':var _0xf5b305=parseInt(_0x5a216b);_0x5a216b=_[_0x0536('0x72')](_0xf5b305)||_0xf5b305<0x0||_0xf5b305>0x4?_0x2f8e24?0x3:0x2:_0xf5b305;_0x56a8b9[_0x0536('0x23')]('\x22'+_0x5a216b+'\x22');break;case _0x0536('0x3a'):var _0x35c5d1=parseInt(_0x5a216b);if(_['isNumber'](_0x35c5d1)&&_[_0x0536('0x73')](_0x275039,_0x35c5d1)){_0x56a8b9[_0x0536('0x23')]('\x22'+_0x35c5d1+'\x22');}else{_0x3fe30b[_0x0536('0x23')](_0x0536('0x74'));}break;case _0x0536('0x75'):if(isEmail(_0x5a216b)){_0x56a8b9[_0x0536('0x23')]('\x22'+_0x5a216b+'\x22');}else{_0x3fe30b['push'](_0x0536('0x76'));}break;case _0x0536('0x77'):var _0x29b467=moment(_0x5a216b,'YYYY-MM-DD',!![]);if(_0x29b467['isValid']()){_0x56a8b9[_0x0536('0x23')]('\x22'+_0x5a216b+'\x22');}else{_0x3fe30b[_0x0536('0x23')](_0x0536('0x78'));}break;default:_0x56a8b9[_0x0536('0x23')]('\x22'+_0x5a216b+'\x22');}}else{switch(_0x3b3283){case _0x0536('0x79'):case _0x0536('0x11'):_0x3fe30b[_0x0536('0x23')](_0x3b3283+_0x0536('0x7a'));break;default:_0x56a8b9[_0x0536('0x23')]('\x22\x22');}}}}else{var _0x1363ca='';if(!_[_0x0536('0x1c')](_0x3c7f64)){if(!_0x5c7117[_0x0536('0x7b')](_0x3c7f64['id'])){for(var _0x1e503b=0x0;_0x1e503b<_0x12ee54[_0x3b3283][_0x0536('0x1b')];_0x1e503b++){var _0x5a216b=_[_0x0536('0x6e')](_0x584d6b[_0x0536('0x6b')][_0x4445fb][_0x12ee54[_0x3b3283][_0x1e503b]][_0x0536('0x7c')](/"/g,'\x27'));var _0xadc090=phoneDescriptions[_0x0536('0x6d')](_0x4ce84b=>_0x4ce84b[_0x0536('0x7d')]===_0x3c7f64['id']);if(!_['isNil'](_0xadc090)){var _0x3a7fbf=_[_0x0536('0x6e')](_0x584d6b[_0x0536('0x6b')][_0x4445fb][_0x12ee54[_0xadc090[_0x0536('0x7e')]][0x0]][_0x0536('0x7c')](/"/g,'\x27'));if(!_[_0x0536('0x1c')](_0x3a7fbf))_0x5a216b=_0x5a216b+'§'+_0x3a7fbf;}if(_0x1363ca=='')_0x1363ca=_0x5a216b;else _0x1363ca+='|'+_0x5a216b;}_0xdafe66[_0x0536('0x23')](_0x3c7f64['id']+':'+_0x1363ca);_0x5c7117[_0x3c7f64['id']]=0x1;}}}}if(hasAdditionalPhones){_0x56a8b9[_0x0536('0x23')]('\x22'+_0xdafe66[_0x0536('0x13')](';')+'\x22');}if(_0x3fe30b[_0x0536('0x1b')]){handleError(_0x584d6b['data'][_0x4445fb],{'code':_0x0536('0x7f'),'message':_0x3fe30b['join']()});}else{fs[_0x0536('0x80')](_0x400843,_0x56a8b9[_0x0536('0x13')]()+'\x0a');}_0x56a8b9=[];}if(!(stats[_0x0536('0x6a')]%0xc8)){socket[_0x0536('0x81')](_0x0536('0x82')+_0x40e938,stats);stats[_0x0536('0x6c')]=[];}}if(stopped){logger[_0x0536('0x59')](_0x0536('0x83'));_0x21ceba[_0x0536('0x84')]();}}catch(_0x4ae9f4){handleError(_0x584d6b[_0x0536('0x6b')][_0x4445fb],{'code':_0x0536('0x85'),'message':_0x4ae9f4[_0x0536('0x21')]});logger['error'](_0x0536('0x86'),_0x4ae9f4[_0x0536('0x21')]);}},'complete':function(){try{var _0x22c900=[];var _0xa4e4a=tempTableName;_0x22c900[_0x0536('0x23')](_0x0536('0x87')+_0xa4e4a+'\x20LIKE\x20cm_contacts;');logger[_0x0536('0x59')](_0x0536('0x88'),contactItemTypes['length']);var _0xcf7892=util[_0x0536('0xb')](_0x0536('0x89'),_0x400843,_0xa4e4a,_0x1d7fbe,_0x236d1a['ListId'],_0x236d1a[_0x0536('0x55')]||null,NOW,NOW);if(_[_0x0536('0x1c')](_0x12ee54[_0x0536('0x6f')])){_0xcf7892+=_0x0536('0x8a');}_0x22c900[_0x0536('0x23')](_0xcf7892);BPromise[_0x0536('0x8b')](_0x22c900,handleQuery)['then'](function(_0x15eeb4){BPromise[_0x0536('0x1e')]([handleAdditionalPhones()])[_0x0536('0x1f')](function(){_0x22c900=[];for(var _0x452288=0x0;_0x452288<promisesContact[_0x0536('0x1b')];_0x452288++){_0x22c900[_0x0536('0x23')](updateContact(promisesContact[_0x452288][_0x0536('0x8c')]));}BPromise['all'](_0x22c900)['then'](function(){_0x22c900=[];for(var _0x2ce85a=0x0;_0x2ce85a<promisesAdditionalPhones[_0x0536('0x1b')];_0x2ce85a++){_0x22c900[_0x0536('0x23')](createAdditionalPhone(promisesAdditionalPhones[_0x2ce85a]['contactId'],promisesAdditionalPhones[_0x2ce85a][_0x0536('0x8d')],promisesAdditionalPhones[_0x2ce85a][_0x0536('0x11')],promisesAdditionalPhones[_0x2ce85a][_0x0536('0x8e')]));}BPromise['all'](_0x22c900)['then'](function(){_0x22c900=[];_0x22c900[_0x0536('0x23')](insertCmHopperAdditionalPhones(_0x236d1a[_0x0536('0x37')]));_0x22c900['push'](_0x0536('0x8f')+_0xa4e4a+';');BPromise['each'](_0x22c900,handleQuery)['then'](function(_0x303f34){stats[_0x0536('0x90')]=!![];stats[_0x0536('0x91')]=updatedRows;socket[_0x0536('0x81')](_0x0536('0x82')+_0x40e938,stats);fs[_0x0536('0x92')](_0x152c58);fs[_0x0536('0x92')](_0x400843);process[_0x0536('0x5a')](0x0);})[_0x0536('0x93')](function(_0x2d92df){logger['error'](_0x2d92df[_0x0536('0x21')]);process[_0x0536('0x5a')](0x1);});});});});})[_0x0536('0x93')](function(_0x150e2d){logger[_0x0536('0x20')](_0x150e2d['message']);process[_0x0536('0x5a')](0x1);});}catch(_0x82dcae){logger['error'](_0x0536('0x94'),_0x82dcae['message']);process[_0x0536('0x5a')](0x1);}},'error':function(_0x4f45d4,_0x3470f3,_0x32215a,_0x8eacd6){throw new Error(_0x8eacd6);}});});}function validate(){if(process[_0x0536('0x95')]&&process['argv']['length']<0x4){throw new Error(_0x0536('0x96'));}var _0x2388f0=path[_0x0536('0x13')](config['root'],_0x0536('0x62'),process[_0x0536('0x95')][0x2]);if(!fs[_0x0536('0x97')](_0x2388f0)){throw new Error(_0x0536('0x98'));}var _0x28b1b2={};try{_0x28b1b2=JSON[_0x0536('0x99')](process[_0x0536('0x95')][0x3]);if(!_0x28b1b2[_0x0536('0x60')]){throw new Error(_0x0536('0x9a'));}var _0x3abdb0=0x0;if(_0x28b1b2[_0x0536('0x60')][_0x0536('0x3a')]){_0x3abdb0=0x1;}if(!_0x28b1b2[_0x0536('0x37')]){throw new Error(_0x0536('0x9b'));}}catch(_0x161baf){throw new Error(_0x0536('0x9c'));}var _0x1082fb=[];try{_0x1082fb=_['map'](JSON[_0x0536('0x99')](process[_0x0536('0x95')][0x4]),'id');}catch(_0x4eafc4){logger[_0x0536('0x59')]('No\x20agent\x20available');}main(_0x2388f0,_0x28b1b2,_0x1082fb,_0x3abdb0);}validate();process['on'](_0x0536('0x9d'),handleStop);process['on'](_0x0536('0x9e'),handleUncaughtException);
\ No newline at end of file