Built motion from commit 9d0783e6.|2.6.13
[motion2.git] / server / api / cmList / cmList.controller.js
1 // *************************************************************************
2 // *                                                                       *
3 // * xCALLY Motion -  The Omnichannel Contact Center                       *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
5 // *                                                                       *
6 // *************************************************************************
7 // *                                                                       *
8 // * Email: info@xcally.com                                                *
9 // * Website: https://www.xcally.com                                       *
10 // *                                                                       *
11 // *************************************************************************
12 // *                                                                       *
13 // * The SOFTWARE PRODUCT is protected by copyright laws and international *
14 // * copyright treaties, as well as other intellectual property laws and   *
15 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                         *
16 // *                                                                       *
17 // *************************************************************************
18 var _0x7921=['offset','undefined','limit','count','set','Content-Range','apply','update','destroy','then','get','Lists','UserProfileResource','error','stack','name','send','index','map','rawAttributes','fieldName','type','key','model','keys','filters','query','attributes','intersection','fields','length','hasOwnProperty','nolimit','order','sort','filter','where','merge','VIRTUAL','options','CmList','includeAll','include','findAll','catch','show','params','create','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','find','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','describe','addDisposition','Disposition','getDispositions','findOne','pick','ListId','rows','addContacts','CmContact','tags','join','isArray','push','each','ids','success','dataValues','errors','Malformed\x20request\x20syntax','getContacts','CmCustomField','CustomFields','concat','raw','getContactsCsv','ContactItemType','OrderBy','alias','cm_contacts','c.deletedAt\x20is\x20null','c.cf_','field','item','from','cm_contact_has_items','ItemTypeId\x20=\x20?','CmContactId\x20=\x20c.id','select','description','description_additionalPhone_','toString','now','writeFileSync','format','/tmp/list_%d_%s.csv','attachment;\x20filename=','list_%d_%s.csv','text/csv','addCustomField','sequelize','transaction','addCustomFields','Sequelize','TEXT','text','number','INTEGER','switch','defaultValue','queryInterface','addColumn','cf_%s','findAndCountAll','getGlobalCustomFields','spread','emit','userCmList:save','removeAgents','userCmList:remove','getAgents','info','message','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','sox','lodash','squel','crypto','jsforce','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','redis','defaults','localhost','socket.io-emitter','./cmList.socket','register','sendStatus','status','end','json'];(function(_0x1b880b,_0x258000){var _0x2fcfa7=function(_0x55d934){while(--_0x55d934){_0x1b880b['push'](_0x1b880b['shift']());}};_0x2fcfa7(++_0x258000);}(_0x7921,0x82));var _0x1792=function(_0x10020f,_0x52eda9){_0x10020f=_0x10020f-0x0;var _0x35fdc2=_0x7921[_0x10020f];return _0x35fdc2;};'use strict';var emlformat=require(_0x1792('0x0'));var rimraf=require(_0x1792('0x1'));var zipdir=require(_0x1792('0x2'));var jsonpatch=require(_0x1792('0x3'));var rp=require(_0x1792('0x4'));var moment=require(_0x1792('0x5'));var BPromise=require(_0x1792('0x6'));var Mustache=require(_0x1792('0x7'));var util=require(_0x1792('0x8'));var path=require('path');var sox=require(_0x1792('0x9'));var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x1792('0xa'));var squel=require(_0x1792('0xb'));var crypto=require(_0x1792('0xc'));var jsforce=require(_0x1792('0xd'));var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require(_0x1792('0xe'));var Papa=require(_0x1792('0xf'));var Redis=require('ioredis');var authService=require(_0x1792('0x10'));var qs=require(_0x1792('0x11'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x1792('0x12'));var logger=require('../../config/logger')(_0x1792('0x13'));var utils=require(_0x1792('0x14'));var config=require(_0x1792('0x15'));var licenseUtil=require(_0x1792('0x16'));var db=require(_0x1792('0x17'))['db'];var csv_results;config[_0x1792('0x18')]=_[_0x1792('0x19')](config[_0x1792('0x18')],{'host':_0x1792('0x1a'),'port':0x18eb});var socket=require(_0x1792('0x1b'))(new Redis(config['redis']));require(_0x1792('0x1c'))[_0x1792('0x1d')](socket);function respondWithStatusCode(_0xd930ef,_0x5cf690){_0x5cf690=_0x5cf690||0xcc;return function(_0x595cf2){if(_0x595cf2){return _0xd930ef[_0x1792('0x1e')](_0x5cf690);}return _0xd930ef[_0x1792('0x1f')](_0x5cf690)[_0x1792('0x20')]();};}function respondWithResult(_0xc95725,_0x4f64ca){_0x4f64ca=_0x4f64ca||0xc8;return function(_0xf3a64c){if(_0xf3a64c){return _0xc95725[_0x1792('0x1f')](_0x4f64ca)[_0x1792('0x21')](_0xf3a64c);}};}function respondWithFilteredResult(_0x1e7b42,_0x188999){return function(_0x351041){if(_0x351041){var _0x27ccc2=typeof _0x188999[_0x1792('0x22')]===_0x1792('0x23')&&typeof _0x188999[_0x1792('0x24')]===_0x1792('0x23');var _0xf9316=_0x351041[_0x1792('0x25')];var _0x239799=_0x27ccc2?0x0:_0x188999['offset'];var _0x2f29bc=_0x27ccc2?_0x351041[_0x1792('0x25')]:_0x188999[_0x1792('0x22')]+_0x188999[_0x1792('0x24')];var _0x35693f;if(_0x2f29bc>=_0xf9316){_0x2f29bc=_0xf9316;_0x35693f=0xc8;}else{_0x35693f=0xce;}_0x1e7b42['status'](_0x35693f);return _0x1e7b42[_0x1792('0x26')](_0x1792('0x27'),_0x239799+'-'+_0x2f29bc+'/'+_0xf9316)[_0x1792('0x21')](_0x351041);}return null;};}function patchUpdates(_0x54c88f){return function(_0x3d8450){try{jsonpatch[_0x1792('0x28')](_0x3d8450,_0x54c88f,!![]);}catch(_0x375493){return BPromise['reject'](_0x375493);}return _0x3d8450['save']();};}function saveUpdates(_0x48f6f4,_0x106d46){return function(_0x30bddf){if(_0x30bddf){return _0x30bddf[_0x1792('0x29')](_0x48f6f4)['then'](function(_0x467aa8){return _0x467aa8;});}return null;};}function removeEntity(_0x290145,_0x32970a){return function(_0x132d1e){if(_0x132d1e){return _0x132d1e[_0x1792('0x2a')]()[_0x1792('0x2b')](function(){var _0x45c5fa=_0x132d1e[_0x1792('0x2c')]({'plain':!![]});var _0x3a29fd=_0x1792('0x2d');return db[_0x1792('0x2e')][_0x1792('0x2a')]({'where':{'type':_0x3a29fd,'resourceId':_0x45c5fa['id']}})[_0x1792('0x2b')](function(){return _0x132d1e;});})['then'](function(){_0x290145[_0x1792('0x1f')](0xcc)[_0x1792('0x20')]();});}};}function handleEntityNotFound(_0x4bbdfb,_0x4444e9){return function(_0x44328d){if(!_0x44328d){_0x4bbdfb[_0x1792('0x1e')](0x194);}return _0x44328d;};}function handleError(_0x5d8c1c,_0x113965){_0x113965=_0x113965||0x1f4;return function(_0x15da0a){logger[_0x1792('0x2f')](_0x15da0a[_0x1792('0x30')]);if(_0x15da0a[_0x1792('0x31')]){delete _0x15da0a[_0x1792('0x31')];}_0x5d8c1c['status'](_0x113965)[_0x1792('0x32')](_0x15da0a);};}exports[_0x1792('0x33')]=function(_0x45093e,_0xe6c80b){var _0x449962={},_0x5414ce={},_0xad9e28={'count':0x0,'rows':[]};var _0x17e05a=_[_0x1792('0x34')](db['CmList'][_0x1792('0x35')],function(_0x568cce){return{'name':_0x568cce[_0x1792('0x36')],'type':_0x568cce[_0x1792('0x37')][_0x1792('0x38')]};});_0x5414ce[_0x1792('0x39')]=_[_0x1792('0x34')](_0x17e05a,_0x1792('0x31'));_0x5414ce['query']=_[_0x1792('0x3a')](_0x45093e['query']);_0x5414ce[_0x1792('0x3b')]=_['intersection'](_0x5414ce[_0x1792('0x39')],_0x5414ce[_0x1792('0x3c')]);_0x449962[_0x1792('0x3d')]=_[_0x1792('0x3e')](_0x5414ce[_0x1792('0x39')],qs['fields'](_0x45093e[_0x1792('0x3c')][_0x1792('0x3f')]));_0x449962[_0x1792('0x3d')]=_0x449962[_0x1792('0x3d')][_0x1792('0x40')]?_0x449962[_0x1792('0x3d')]:_0x5414ce[_0x1792('0x39')];if(!_0x45093e[_0x1792('0x3c')][_0x1792('0x41')](_0x1792('0x42'))){_0x449962['limit']=qs['limit'](_0x45093e[_0x1792('0x3c')][_0x1792('0x24')]);_0x449962[_0x1792('0x22')]=qs[_0x1792('0x22')](_0x45093e[_0x1792('0x3c')][_0x1792('0x22')]);}_0x449962[_0x1792('0x43')]=qs[_0x1792('0x44')](_0x45093e[_0x1792('0x3c')][_0x1792('0x44')]);_0x449962['where']=qs['filters'](_['pick'](_0x45093e['query'],_0x5414ce[_0x1792('0x3b')]),_0x17e05a);if(_0x45093e[_0x1792('0x3c')][_0x1792('0x45')]){_0x449962[_0x1792('0x46')]=_[_0x1792('0x47')](_0x449962[_0x1792('0x46')],{'$or':_[_0x1792('0x34')](_0x17e05a,function(_0x587bf3){if(_0x587bf3['type']!==_0x1792('0x48')){var _0x5c54f6={};_0x5c54f6[_0x587bf3[_0x1792('0x31')]]={'$like':'%'+_0x45093e[_0x1792('0x3c')][_0x1792('0x45')]+'%'};return _0x5c54f6;}})});}_0x449962=_[_0x1792('0x47')]({},_0x449962,_0x45093e[_0x1792('0x49')]);var _0x4827c6={'where':_0x449962[_0x1792('0x46')]};return db[_0x1792('0x4a')]['count'](_0x4827c6)[_0x1792('0x2b')](function(_0x4d1837){_0xad9e28['count']=_0x4d1837;if(_0x45093e[_0x1792('0x3c')][_0x1792('0x4b')]){_0x449962[_0x1792('0x4c')]=[{'all':!![]}];}return db[_0x1792('0x4a')][_0x1792('0x4d')](_0x449962);})[_0x1792('0x2b')](function(_0x1ae23b){_0xad9e28['rows']=_0x1ae23b;return _0xad9e28;})[_0x1792('0x2b')](respondWithFilteredResult(_0xe6c80b,_0x449962))[_0x1792('0x4e')](handleError(_0xe6c80b,null));};exports[_0x1792('0x4f')]=function(_0x22657a,_0xf5aec5){var _0x3ea84d={'raw':![],'where':{'id':_0x22657a[_0x1792('0x50')]['id']}},_0x4f2abe={};_0x4f2abe[_0x1792('0x39')]=_['keys'](db[_0x1792('0x4a')][_0x1792('0x35')]);_0x4f2abe[_0x1792('0x3c')]=_[_0x1792('0x3a')](_0x22657a[_0x1792('0x3c')]);_0x4f2abe[_0x1792('0x3b')]=_['intersection'](_0x4f2abe[_0x1792('0x39')],_0x4f2abe[_0x1792('0x3c')]);_0x3ea84d['attributes']=_[_0x1792('0x3e')](_0x4f2abe[_0x1792('0x39')],qs[_0x1792('0x3f')](_0x22657a[_0x1792('0x3c')][_0x1792('0x3f')]));_0x3ea84d[_0x1792('0x3d')]=_0x3ea84d[_0x1792('0x3d')][_0x1792('0x40')]?_0x3ea84d[_0x1792('0x3d')]:_0x4f2abe[_0x1792('0x39')];if(_0x22657a[_0x1792('0x3c')]['includeAll']){_0x3ea84d[_0x1792('0x4c')]=[{'all':!![]}];}_0x3ea84d=_[_0x1792('0x47')]({},_0x3ea84d,_0x22657a[_0x1792('0x49')]);return db[_0x1792('0x4a')]['find'](_0x3ea84d)[_0x1792('0x2b')](handleEntityNotFound(_0xf5aec5,null))[_0x1792('0x2b')](respondWithResult(_0xf5aec5,null))[_0x1792('0x4e')](handleError(_0xf5aec5,null));};exports['create']=function(_0x5435a0,_0x1f263b){return db[_0x1792('0x4a')][_0x1792('0x51')](_0x5435a0[_0x1792('0x52')],{})[_0x1792('0x2b')](function(_0x1b8585){var _0xad3439=_0x5435a0[_0x1792('0x53')][_0x1792('0x2c')]({'plain':!![]});if(!_0xad3439)throw new Error(_0x1792('0x54'));if(_0xad3439[_0x1792('0x55')]===_0x1792('0x53')){var _0x2be304=_0x1b8585[_0x1792('0x2c')]({'plain':!![]});var _0x1fba58=_0x1792('0x2d');return db[_0x1792('0x56')][_0x1792('0x57')]({'where':{'name':_0x1fba58,'userProfileId':_0xad3439[_0x1792('0x58')]},'raw':!![]})[_0x1792('0x2b')](function(_0x1bb477){if(_0x1bb477&&_0x1bb477[_0x1792('0x59')]===0x0){return db['UserProfileResource'][_0x1792('0x51')]({'name':_0x2be304[_0x1792('0x31')],'resourceId':_0x2be304['id'],'type':_0x1bb477[_0x1792('0x31')],'sectionId':_0x1bb477['id']},{})['then'](function(){return _0x1b8585;});}else{return _0x1b8585;}})['catch'](function(_0x3d0ffc){logger[_0x1792('0x2f')](_0x1792('0x5a'),_0x3d0ffc);throw _0x3d0ffc;});}return _0x1b8585;})['then'](respondWithResult(_0x1f263b,0xc9))['catch'](handleError(_0x1f263b,null));};exports['update']=function(_0x22421e,_0x155b67){if(_0x22421e['body']['id']){delete _0x22421e['body']['id'];}return db[_0x1792('0x4a')]['find']({'where':{'id':_0x22421e['params']['id']}})[_0x1792('0x2b')](handleEntityNotFound(_0x155b67,null))[_0x1792('0x2b')](saveUpdates(_0x22421e['body'],null))[_0x1792('0x2b')](respondWithResult(_0x155b67,null))['catch'](handleError(_0x155b67,null));};exports['destroy']=function(_0x1879aa,_0x503653){return db['CmList'][_0x1792('0x57')]({'where':{'id':_0x1879aa[_0x1792('0x50')]['id']}})[_0x1792('0x2b')](handleEntityNotFound(_0x503653,null))['then'](removeEntity(_0x503653,null))[_0x1792('0x4e')](handleError(_0x503653,null));};exports[_0x1792('0x5b')]=function(_0x59995d,_0x1f8ac5){return db[_0x1792('0x4a')][_0x1792('0x5b')]()[_0x1792('0x2b')](respondWithResult(_0x1f8ac5,null))['catch'](handleError(_0x1f8ac5,null));};exports[_0x1792('0x5c')]=function(_0x341e63,_0x573147,_0x42199b){if(_0x341e63['body']['id']){delete _0x341e63[_0x1792('0x52')]['id'];}return db['CmList'][_0x1792('0x57')]({'where':{'id':_0x341e63[_0x1792('0x50')]['id']}})['then'](handleEntityNotFound(_0x573147,null))[_0x1792('0x2b')](function(_0x5cc081){if(_0x5cc081){_0x341e63[_0x1792('0x52')]['ListId']=_0x5cc081['id'];return db[_0x1792('0x5d')][_0x1792('0x51')](_0x341e63[_0x1792('0x52')]);}})['then'](respondWithResult(_0x573147,null))['catch'](handleError(_0x573147,null));};exports[_0x1792('0x5e')]=function(_0x30cbfd,_0x50dec1,_0x3ee421){var _0x263390={'raw':![],'where':{}};var _0x4dd74e={};var _0x3b68aa={'count':0x0,'rows':[]};return db[_0x1792('0x4a')][_0x1792('0x5f')]({'where':{'id':_0x30cbfd['params']['id']}})[_0x1792('0x2b')](handleEntityNotFound(_0x50dec1,null))[_0x1792('0x2b')](function(_0x422ea9){if(_0x422ea9){_0x4dd74e[_0x1792('0x39')]=_[_0x1792('0x3a')](db[_0x1792('0x5d')]['rawAttributes']);_0x4dd74e[_0x1792('0x3c')]=_[_0x1792('0x3a')](_0x30cbfd[_0x1792('0x3c')]);_0x4dd74e[_0x1792('0x3b')]=_[_0x1792('0x3e')](_0x4dd74e[_0x1792('0x39')],_0x4dd74e[_0x1792('0x3c')]);_0x263390[_0x1792('0x3d')]=_[_0x1792('0x3e')](_0x4dd74e[_0x1792('0x39')],qs[_0x1792('0x3f')](_0x30cbfd[_0x1792('0x3c')]['fields']));_0x263390['attributes']=_0x263390['attributes'][_0x1792('0x40')]?_0x263390[_0x1792('0x3d')]:_0x4dd74e[_0x1792('0x39')];if(!_0x30cbfd[_0x1792('0x3c')][_0x1792('0x41')]('nolimit')){_0x263390['limit']=qs['limit'](_0x30cbfd['query'][_0x1792('0x24')]);_0x263390['offset']=qs[_0x1792('0x22')](_0x30cbfd[_0x1792('0x3c')][_0x1792('0x22')]);}_0x263390['order']=qs[_0x1792('0x44')](_0x30cbfd[_0x1792('0x3c')][_0x1792('0x44')]);_0x263390[_0x1792('0x46')]=qs[_0x1792('0x3b')](_[_0x1792('0x60')](_0x30cbfd['query'],_0x4dd74e[_0x1792('0x3b')]));_0x263390[_0x1792('0x46')][_0x1792('0x61')]=_0x422ea9['id'];if(_0x30cbfd[_0x1792('0x3c')][_0x1792('0x45')]){_0x263390['where']=_[_0x1792('0x47')](_0x263390['where'],{'$or':_['map'](_0x263390[_0x1792('0x3d')],function(_0x19a12f){var _0x28b689={};_0x28b689[_0x19a12f]={'$like':'%'+_0x30cbfd[_0x1792('0x3c')][_0x1792('0x45')]+'%'};return _0x28b689;})});}_0x263390=_[_0x1792('0x47')]({},_0x263390,_0x30cbfd[_0x1792('0x49')]);return db[_0x1792('0x5d')][_0x1792('0x25')]({'where':_0x263390[_0x1792('0x46')]})['then'](function(_0x3b3194){_0x3b68aa[_0x1792('0x25')]=_0x3b3194;if(_0x30cbfd['query'][_0x1792('0x4b')]){_0x263390[_0x1792('0x4c')]=[{'all':!![]}];}return db[_0x1792('0x5d')][_0x1792('0x4d')](_0x263390);})[_0x1792('0x2b')](function(_0x4f0f74){_0x3b68aa[_0x1792('0x62')]=_0x4f0f74;return _0x3b68aa;});}})[_0x1792('0x2b')](respondWithFilteredResult(_0x50dec1,_0x263390))[_0x1792('0x4e')](handleError(_0x50dec1,null));};exports['removeDispositions']=function(_0x73780e,_0x28925d,_0x3c98e6){return db[_0x1792('0x4a')][_0x1792('0x57')]({'where':{'id':_0x73780e['params']['id']}})[_0x1792('0x2b')](handleEntityNotFound(_0x28925d,null))[_0x1792('0x2b')](function(_0x24fd7d){if(_0x24fd7d){return _0x24fd7d['removeDispositions'](_0x73780e[_0x1792('0x3c')]['ids']);}})[_0x1792('0x2b')](respondWithStatusCode(_0x28925d,null))['catch'](handleError(_0x28925d,null));};exports[_0x1792('0x63')]=function(_0x17dde3,_0x254769,_0x402dfb){return db[_0x1792('0x4a')][_0x1792('0x57')]({'where':{'id':_0x17dde3[_0x1792('0x50')]['id']}})[_0x1792('0x2b')](handleEntityNotFound(_0x254769,null))[_0x1792('0x2b')](function(_0x3b1729){if(_0x3b1729){var _0x50bc6b=[];var _0x3a2854={'success':[],'errors':[]};return db[_0x1792('0x64')][_0x1792('0x5b')]()[_0x1792('0x2b')](function(_0x29cb10){if(_0x17dde3[_0x1792('0x52')][_0x1792('0x65')]&&_['isArray'](_0x17dde3[_0x1792('0x52')][_0x1792('0x65')])){if(_0x17dde3[_0x1792('0x52')][_0x1792('0x65')]['length']){_0x17dde3['body'][_0x1792('0x65')]=_0x17dde3[_0x1792('0x52')]['tags'][_0x1792('0x66')](';')+';';}else{_0x17dde3[_0x1792('0x52')]['tags']=null;}}else{_0x17dde3[_0x1792('0x52')]['tags']=null;}if(_0x17dde3['body']&&_[_0x1792('0x67')](_0x17dde3['body'])){for(var _0x16eba7=0x0;_0x16eba7<_0x17dde3[_0x1792('0x52')][_0x1792('0x40')];_0x16eba7+=0x1){_0x17dde3['body'][_0x16eba7][_0x1792('0x61')]=_0x17dde3[_0x1792('0x50')]['id'];_0x50bc6b[_0x1792('0x68')](_0x17dde3[_0x1792('0x52')][_0x16eba7]);}return BPromise[_0x1792('0x69')](_0x50bc6b,function(_0x5b6efe){return db['CmContact']['create'](_['omit'](_0x5b6efe,[_0x1792('0x6a'),'id'])||{},{'fields':_[_0x1792('0x3a')](_0x29cb10),'raw':!![]})[_0x1792('0x2b')](function(_0x1f3514){_0x3a2854[_0x1792('0x6b')]['push'](_0x1f3514[_0x1792('0x6c')]);})['catch'](function(_0x46ec0a){_0x3a2854[_0x1792('0x6d')][_0x1792('0x68')]({'data':_0x5b6efe,'error':_0x46ec0a['message']});});})[_0x1792('0x2b')](function(_0x2b194c){return _0x3a2854;})[_0x1792('0x4e')](function(_0x1230a9){return _0x1230a9;});}else{_0x254769[_0x1792('0x1f')](0x190)[_0x1792('0x21')]({'message':_0x1792('0x6e')});}});}})[_0x1792('0x2b')](respondWithResult(_0x254769,null))[_0x1792('0x4e')](handleError(_0x254769,null));};exports[_0x1792('0x6f')]=function(_0x43c330,_0x5069a3,_0x31c4a3){var _0xdfd7af;return db[_0x1792('0x4a')][_0x1792('0x57')]({'where':{'id':_0x43c330[_0x1792('0x50')]['id']},'include':[{'model':db[_0x1792('0x70')],'as':_0x1792('0x71')}]})[_0x1792('0x2b')](handleEntityNotFound(_0x5069a3,null))[_0x1792('0x2b')](function(_0x34196b){if(_0x34196b){_0xdfd7af=_0x34196b;return db['CmContact']['rawAttributes'];}})[_0x1792('0x2b')](function(_0x5dd8a9){if(_0x5dd8a9){var _0x5d99af={};var _0x37b8b4={};_0x37b8b4['model']=_[_0x1792('0x72')](_[_0x1792('0x3a')](_0x5dd8a9),_[_0x1792('0x34')](_0xdfd7af[_0x1792('0x71')],function(_0x14dc5c){return util['format']('cf_%d',_0x14dc5c['id']);}));_0x37b8b4[_0x1792('0x3c')]=_[_0x1792('0x3a')](_0x43c330[_0x1792('0x3c')]);_0x37b8b4['filters']=_['intersection'](_0x37b8b4['model'],_0x37b8b4[_0x1792('0x3c')]);_0x5d99af[_0x1792('0x3d')]=_[_0x1792('0x3e')](_0x37b8b4['model'],qs['fields'](_0x43c330['query'][_0x1792('0x3f')]));_0x5d99af[_0x1792('0x3d')]=_0x5d99af[_0x1792('0x3d')][_0x1792('0x40')]?_0x5d99af[_0x1792('0x3d')]:_0x37b8b4['model'];if(!_0x43c330[_0x1792('0x3c')][_0x1792('0x41')](_0x1792('0x42'))){_0x5d99af[_0x1792('0x24')]=qs[_0x1792('0x24')](_0x43c330[_0x1792('0x3c')][_0x1792('0x24')]);_0x5d99af[_0x1792('0x22')]=qs['offset'](_0x43c330[_0x1792('0x3c')][_0x1792('0x22')]);}_0x5d99af[_0x1792('0x43')]=qs['sort'](_0x43c330[_0x1792('0x3c')][_0x1792('0x44')]);_0x5d99af[_0x1792('0x46')]=qs[_0x1792('0x3b')](_['pick'](_0x43c330[_0x1792('0x3c')],_0x37b8b4[_0x1792('0x3b')]));_0x5d99af[_0x1792('0x73')]=!![];if(_0x43c330[_0x1792('0x3c')][_0x1792('0x45')]){_0x5d99af[_0x1792('0x46')]=_[_0x1792('0x47')](_0x5d99af['where'],{'$or':_['map'](_0x5d99af[_0x1792('0x3d')],function(_0x10d4d8){var _0x2ad6ae={};_0x2ad6ae[_0x10d4d8]={'$like':'%'+_0x43c330[_0x1792('0x3c')][_0x1792('0x45')]+'%'};return _0x2ad6ae;})});}_0x5d99af=_['merge']({},_0x5d99af,_0x43c330[_0x1792('0x49')]);return _0xdfd7af[_0x1792('0x6f')](_0x5d99af);}})[_0x1792('0x2b')](respondWithResult(_0x5069a3,null))[_0x1792('0x4e')](handleError(_0x5069a3,null));};exports[_0x1792('0x74')]=function(_0x22699e,_0x52b186,_0x22b4fa){var _0x51c77;var _0x2deddc;var _0x46f2c1;var _0xa41164=_0x22699e[_0x1792('0x50')]['id'];csv_results=[];return db[_0x1792('0x75')][_0x1792('0x4d')]({'attributes':['id',_0x1792('0x31')],'raw':!![],'order':[_0x1792('0x76')]})['then'](function(_0x4ad13f){_0x51c77=_0x4ad13f;var _0xb52060=_[_0x1792('0x3a')](db['CmContact'][_0x1792('0x35')]);return db['CmCustomField'][_0x1792('0x4d')]({'raw':!![],'attributes':['id',_0x1792('0x77')]})[_0x1792('0x2b')](function(_0x288ca5){_0x2deddc=_0x288ca5;var _0x3974ab=squel['select']()['fields'](_0xb52060)['from'](_0x1792('0x78'),'c')[_0x1792('0x46')]('c.ListId\x20=\x20?',_0xa41164)['where'](_0x1792('0x79'))['distinct']();for(var _0x2bbc=0x0;_0x2bbc<_0x2deddc[_0x1792('0x40')];_0x2bbc++){_0x3974ab['field'](_0x1792('0x7a')+_0x2deddc[_0x2bbc]['id'],'customField_'+_0x2deddc[_0x2bbc][_0x1792('0x77')]);}for(var _0x2bbc=0x0;_0x2bbc<_0x51c77[_0x1792('0x40')];_0x2bbc++){_0x3974ab[_0x1792('0x7b')](squel['select']()[_0x1792('0x7b')](_0x1792('0x7c'))[_0x1792('0x7d')](_0x1792('0x7e'))['where'](_0x1792('0x7f'),_0x51c77[_0x2bbc]['id'])[_0x1792('0x46')](_0x1792('0x80')),'additionalPhone_'+_0x51c77[_0x2bbc][_0x1792('0x31')]);_0x3974ab[_0x1792('0x7b')](squel[_0x1792('0x81')]()[_0x1792('0x7b')](_0x1792('0x82'))[_0x1792('0x7d')]('cm_contact_has_items')['where'](_0x1792('0x7f'),_0x51c77[_0x2bbc]['id'])[_0x1792('0x46')](_0x1792('0x80')),_0x1792('0x83')+_0x51c77[_0x2bbc][_0x1792('0x31')]);}var _0x1eed1d=[];_0x1eed1d[_0x1792('0x68')](_0x3974ab[_0x1792('0x84')]());BPromise['each'](_0x1eed1d,handleQuery)[_0x1792('0x2b')](function(_0x1691a7){handleQuery(_0x3974ab[_0x1792('0x84')]());var _0x2edd19=csv_results[0x0];if(!_['isEmpty'](_0x2edd19)){var _0x28379c=toCsv(_0x2edd19);var _0x5a0744=Date[_0x1792('0x85')]();fs[_0x1792('0x86')](util[_0x1792('0x87')](_0x1792('0x88'),_0xa41164,_0x5a0744),_0x28379c);_0x52b186['setHeader']('Content-disposition',_0x1792('0x89')+util[_0x1792('0x87')](_0x1792('0x8a'),_0xa41164,_0x5a0744));_0x52b186['setHeader']('Content-type',_0x1792('0x8b'));return _0x52b186['download'](util['format']('/tmp/list_%d_%s.csv',_0xa41164,_0x5a0744));}else{return _0x52b186[_0x1792('0x1e')](0xcc);}});});});};exports[_0x1792('0x8c')]=function(_0x1973cf,_0x1b4d31,_0x1ebc4b){var _0x47a498;delete _0x1973cf[_0x1792('0x52')]['id'];return db[_0x1792('0x4a')][_0x1792('0x5f')]({'where':{'id':_0x1973cf['params']['id']}})[_0x1792('0x2b')](handleEntityNotFound(_0x1b4d31,null))['then'](function(_0x1d8bc1){if(_0x1d8bc1){return db[_0x1792('0x8d')][_0x1792('0x8e')](function(_0xeefd2c){return db[_0x1792('0x70')][_0x1792('0x51')](_0x1973cf[_0x1792('0x52')],{'transaction':_0xeefd2c})['then'](function(_0x3d4eda){_0x47a498=_0x3d4eda;return _0x1d8bc1[_0x1792('0x8f')](_0x3d4eda,{'transaction':_0xeefd2c});})[_0x1792('0x2b')](function(){var _0x3bf68a={'type':db[_0x1792('0x90')][_0x1792('0x91')],'transaction':_0xeefd2c};switch(_0x1973cf['body'][_0x1792('0x37')]){case _0x1792('0x92'):_0x3bf68a[_0x1792('0x37')]=db[_0x1792('0x90')]['TEXT'];break;case _0x1792('0x93'):_0x3bf68a['type']=db['Sequelize'][_0x1792('0x94')];break;case _0x1792('0x95'):_0x3bf68a[_0x1792('0x37')]=db[_0x1792('0x90')]['BOOLEAN'];_0x3bf68a[_0x1792('0x96')]=![];break;default:}return db['sequelize'][_0x1792('0x97')][_0x1792('0x98')]('cm_contacts',util[_0x1792('0x87')](_0x1792('0x99'),_0x47a498['id']),_0x3bf68a);})[_0x1792('0x2b')](function(){return _0x47a498;});});}})['then'](respondWithResult(_0x1b4d31,null))[_0x1792('0x4e')](handleError(_0x1b4d31,null));};exports['getCustomFields']=function(_0x5cc688,_0x4cb4e1,_0x52269c){var _0x9e5f5d={};var _0x36fa7d={};var _0xe3aec3;var _0x1d113c;return db[_0x1792('0x4a')]['findOne']({'where':{'id':_0x5cc688[_0x1792('0x50')]['id']}})[_0x1792('0x2b')](handleEntityNotFound(_0x4cb4e1,null))['then'](function(_0xdb8d2b){if(_0xdb8d2b){_0xe3aec3=_0xdb8d2b;_0x36fa7d[_0x1792('0x39')]=_['keys'](db[_0x1792('0x70')][_0x1792('0x35')]);_0x36fa7d[_0x1792('0x3c')]=_[_0x1792('0x3a')](_0x5cc688[_0x1792('0x3c')]);_0x36fa7d[_0x1792('0x3b')]=_[_0x1792('0x3e')](_0x36fa7d[_0x1792('0x39')],_0x36fa7d[_0x1792('0x3c')]);_0x9e5f5d[_0x1792('0x3d')]=_[_0x1792('0x3e')](_0x36fa7d[_0x1792('0x39')],qs[_0x1792('0x3f')](_0x5cc688[_0x1792('0x3c')]['fields']));_0x9e5f5d[_0x1792('0x3d')]=_0x9e5f5d['attributes'][_0x1792('0x40')]?_0x9e5f5d['attributes']:_0x36fa7d[_0x1792('0x39')];_0x9e5f5d[_0x1792('0x43')]=qs[_0x1792('0x44')](_0x5cc688['query'][_0x1792('0x44')]);_0x9e5f5d[_0x1792('0x46')]=qs['filters'](_[_0x1792('0x60')](_0x5cc688[_0x1792('0x3c')],_0x36fa7d['filters']));_0x9e5f5d[_0x1792('0x46')]=_[_0x1792('0x47')](_0x9e5f5d['where'],{'$or':[{'ListId':_0xdb8d2b['id']},{'ListId':null}]});if(_0x5cc688[_0x1792('0x3c')][_0x1792('0x45')]){_0x9e5f5d[_0x1792('0x46')]=_[_0x1792('0x47')](_0x9e5f5d[_0x1792('0x46')],{'$or':_[_0x1792('0x34')](_0x9e5f5d[_0x1792('0x3d')],function(_0x482276){var _0x33768b={};_0x33768b[_0x482276]={'$like':'%'+_0x5cc688[_0x1792('0x3c')][_0x1792('0x45')]+'%'};return _0x33768b;})});}_0x9e5f5d=_['merge']({},_0x9e5f5d,_0x5cc688[_0x1792('0x49')]);return db['CmCustomField'][_0x1792('0x9a')](_0x9e5f5d);}})[_0x1792('0x2b')](respondWithResult(_0x4cb4e1,null))[_0x1792('0x4e')](handleError(_0x4cb4e1,null));};exports[_0x1792('0x9b')]=function(_0x196142,_0x3df176){return db[_0x1792('0x70')][_0x1792('0x9a')]({'where':{'ListId':null}})['then'](handleEntityNotFound(_0x3df176,null))[_0x1792('0x2b')](function(_0x212b6c){return _0x212b6c;})['then'](respondWithResult(_0x3df176,null))[_0x1792('0x4e')](handleError(_0x3df176,null));};exports['addAgents']=function(_0x3e5d20,_0x284117,_0x5a031c){return db[_0x1792('0x4a')][_0x1792('0x57')]({'where':{'id':_0x3e5d20['params']['id']}})[_0x1792('0x2b')](handleEntityNotFound(_0x284117,null))['then'](function(_0xf0f1fe){if(_0xf0f1fe){return _0xf0f1fe['addAgents'](_0x3e5d20[_0x1792('0x52')][_0x1792('0x6a')],_['omit'](_0x3e5d20[_0x1792('0x52')],[_0x1792('0x6a'),'id'])||{})[_0x1792('0x9c')](function(_0xf01aed){for(var _0x4805c8=0x0;_0x4805c8<_0x3e5d20['body']['ids']['length'];_0x4805c8+=0x1){socket[_0x1792('0x9d')](_0x1792('0x9e'),{'UserId':Number(_0x3e5d20[_0x1792('0x52')][_0x1792('0x6a')][_0x4805c8]),'CmListId':Number(_0x3e5d20[_0x1792('0x50')]['id'])});}return _0xf01aed;});}})[_0x1792('0x2b')](respondWithResult(_0x284117,null))[_0x1792('0x4e')](handleError(_0x284117,null));};exports[_0x1792('0x9f')]=function(_0x2dd02e,_0x102476,_0x19945a){return db[_0x1792('0x4a')][_0x1792('0x57')]({'where':{'id':_0x2dd02e[_0x1792('0x50')]['id']}})[_0x1792('0x2b')](handleEntityNotFound(_0x102476,null))['then'](function(_0x5dc146){if(_0x5dc146){return _0x5dc146[_0x1792('0x9f')](_0x2dd02e[_0x1792('0x3c')][_0x1792('0x6a')])[_0x1792('0x2b')](function(){if(_[_0x1792('0x67')](_0x2dd02e[_0x1792('0x3c')][_0x1792('0x6a')])){for(var _0x28602d=0x0;_0x28602d<_0x2dd02e[_0x1792('0x3c')]['ids']['length'];_0x28602d+=0x1){socket[_0x1792('0x9d')](_0x1792('0xa0'),{'UserId':Number(_0x2dd02e[_0x1792('0x3c')][_0x1792('0x6a')][_0x28602d]),'CmListId':Number(_0x2dd02e[_0x1792('0x50')]['id'])});}}else{socket['emit'](_0x1792('0xa0'),{'UserId':Number(_0x2dd02e[_0x1792('0x3c')][_0x1792('0x6a')]),'CmListId':Number(_0x2dd02e['params']['id'])});}});}})[_0x1792('0x2b')](respondWithStatusCode(_0x102476,null))[_0x1792('0x4e')](handleError(_0x102476,null));};exports[_0x1792('0xa1')]=function(_0xc51975,_0x2713a7,_0x4c8092){var _0x637f4e={};var _0x17b624={};var _0x2ab8fa;var _0xc3bdf1;return db['CmList'][_0x1792('0x5f')]({'where':{'id':_0xc51975[_0x1792('0x50')]['id']}})[_0x1792('0x2b')](handleEntityNotFound(_0x2713a7,null))['then'](function(_0x2bf8ab){if(_0x2bf8ab){_0x2ab8fa=_0x2bf8ab;_0x17b624[_0x1792('0x39')]=_[_0x1792('0x3a')](db['User'][_0x1792('0x35')]);_0x17b624[_0x1792('0x3c')]=_['keys'](_0xc51975[_0x1792('0x3c')]);_0x17b624['filters']=_[_0x1792('0x3e')](_0x17b624[_0x1792('0x39')],_0x17b624['query']);_0x637f4e['attributes']=_['intersection'](_0x17b624[_0x1792('0x39')],qs[_0x1792('0x3f')](_0xc51975['query'][_0x1792('0x3f')]));_0x637f4e[_0x1792('0x3d')]=_0x637f4e['attributes']['length']?_0x637f4e[_0x1792('0x3d')]:_0x17b624[_0x1792('0x39')];_0x637f4e[_0x1792('0x43')]=qs[_0x1792('0x44')](_0xc51975[_0x1792('0x3c')][_0x1792('0x44')]);_0x637f4e[_0x1792('0x46')]=qs[_0x1792('0x3b')](_[_0x1792('0x60')](_0xc51975[_0x1792('0x3c')],_0x17b624[_0x1792('0x3b')]));if(_0xc51975[_0x1792('0x3c')][_0x1792('0x45')]){_0x637f4e[_0x1792('0x46')]=_[_0x1792('0x47')](_0x637f4e[_0x1792('0x46')],{'$or':_[_0x1792('0x34')](_0x637f4e[_0x1792('0x3d')],function(_0x1ab498){var _0x47ca19={};_0x47ca19[_0x1ab498]={'$like':'%'+_0xc51975['query'][_0x1792('0x45')]+'%'};return _0x47ca19;})});}_0x637f4e=_[_0x1792('0x47')]({},_0x637f4e,_0xc51975[_0x1792('0x49')]);return _0x2ab8fa[_0x1792('0xa1')](_0x637f4e);}})[_0x1792('0x2b')](function(_0x3bfb41){if(_0x3bfb41){_0xc3bdf1=_0x3bfb41['length'];if(!_0xc51975[_0x1792('0x3c')][_0x1792('0x41')](_0x1792('0x42'))){_0x637f4e[_0x1792('0x24')]=qs[_0x1792('0x24')](_0xc51975[_0x1792('0x3c')][_0x1792('0x24')]);_0x637f4e['offset']=qs[_0x1792('0x22')](_0xc51975[_0x1792('0x3c')][_0x1792('0x22')]);}return _0x2ab8fa[_0x1792('0xa1')](_0x637f4e);}})[_0x1792('0x2b')](function(_0x1925a5){if(_0x1925a5){return _0x1925a5?{'count':_0xc3bdf1,'rows':_0x1925a5}:null;}})['then'](respondWithResult(_0x2713a7,null))[_0x1792('0x4e')](handleError(_0x2713a7,null));};function handleQuery(_0x542132){logger[_0x1792('0xa2')](_0x542132);return db[_0x1792('0x8d')][_0x1792('0x3c')](_0x542132)[_0x1792('0x9c')](function(_0x188416){csv_results['push'](_0x188416);})[_0x1792('0x4e')](function(_0x8d72fc){logger[_0x1792('0x2f')](_0x8d72fc[_0x1792('0xa3')]);});}