Built motion from commit 449495f6.|2.6.27
[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 _0xe54b=['download','/tmp/list_%d_%s.csv','addCustomField','sequelize','transaction','addCustomFields','Sequelize','TEXT','number','INTEGER','switch','BOOLEAN','defaultValue','addColumn','cm_contacts','cf_%s','getCustomFields','findAndCountAll','getGlobalCustomFields','addAgents','spread','emit','removeAgents','userCmList:remove','getAgents','info','message','eml-format','rimraf','zip-dir','bluebird','util','path','sox','to-csv','ejs','fs-extra','lodash','squel','crypto','desk.js','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','localhost','socket.io-emitter','redis','register','sendStatus','status','end','json','limit','undefined','count','offset','Content-Range','apply','reject','save','update','then','destroy','get','UserProfileResource','error','stack','name','send','index','map','CmList','rawAttributes','fieldName','type','model','keys','filters','intersection','query','attributes','fields','length','hasOwnProperty','nolimit','order','sort','pick','filter','where','merge','VIRTUAL','includeAll','show','params','include','options','find','catch','create','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','Lists','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','describe','addDisposition','Disposition','getDispositions','findOne','ListId','findAll','rows','removeDispositions','ids','addContacts','tags','isArray','push','each','CmContact','omit','dataValues','errors','CmCustomField','CustomFields','concat','cf_%d','raw','getContacts','getContactsCsv','ContactItemType','OrderBy','alias','select','from','c.ListId\x20=\x20?','c.deletedAt\x20is\x20null','field','c.cf_','customField_','cm_contact_has_items','CmContactId\x20=\x20c.id','additionalPhone_','description','toString','now','setHeader','Content-disposition','attachment;\x20filename=','format','list_%d_%s.csv','Content-type','text/csv'];(function(_0x551189,_0xfa580c){var _0x9517da=function(_0x36141c){while(--_0x36141c){_0x551189['push'](_0x551189['shift']());}};_0x9517da(++_0xfa580c);}(_0xe54b,0x167));var _0xbe54=function(_0x281ded,_0x4c3a7c){_0x281ded=_0x281ded-0x0;var _0x1ed025=_0xe54b[_0x281ded];return _0x1ed025;};'use strict';var emlformat=require(_0xbe54('0x0'));var rimraf=require(_0xbe54('0x1'));var zipdir=require(_0xbe54('0x2'));var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require('moment');var BPromise=require(_0xbe54('0x3'));var Mustache=require('mustache');var util=require(_0xbe54('0x4'));var path=require(_0xbe54('0x5'));var sox=require(_0xbe54('0x6'));var csv=require(_0xbe54('0x7'));var ejs=require(_0xbe54('0x8'));var fs=require('fs');var fs_extra=require(_0xbe54('0x9'));var _=require(_0xbe54('0xa'));var squel=require(_0xbe54('0xb'));var crypto=require(_0xbe54('0xc'));var jsforce=require('jsforce');var deskjs=require(_0xbe54('0xd'));var toCsv=require(_0xbe54('0x7'));var querystring=require('querystring');var Papa=require(_0xbe54('0xe'));var Redis=require(_0xbe54('0xf'));var authService=require(_0xbe54('0x10'));var qs=require(_0xbe54('0x11'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xbe54('0x12'));var logger=require(_0xbe54('0x13'))(_0xbe54('0x14'));var utils=require(_0xbe54('0x15'));var config=require(_0xbe54('0x16'));var licenseUtil=require(_0xbe54('0x17'));var db=require(_0xbe54('0x18'))['db'];var csv_results;config['redis']=_['defaults'](config['redis'],{'host':_0xbe54('0x19'),'port':0x18eb});var socket=require(_0xbe54('0x1a'))(new Redis(config[_0xbe54('0x1b')]));require('./cmList.socket')[_0xbe54('0x1c')](socket);function respondWithStatusCode(_0x19b75,_0x334be3){_0x334be3=_0x334be3||0xcc;return function(_0x2b5a99){if(_0x2b5a99){return _0x19b75[_0xbe54('0x1d')](_0x334be3);}return _0x19b75[_0xbe54('0x1e')](_0x334be3)[_0xbe54('0x1f')]();};}function respondWithResult(_0x2bb253,_0x579b64){_0x579b64=_0x579b64||0xc8;return function(_0x2e911f){if(_0x2e911f){return _0x2bb253[_0xbe54('0x1e')](_0x579b64)[_0xbe54('0x20')](_0x2e911f);}};}function respondWithFilteredResult(_0x396049,_0x355298){return function(_0x4ac1b5){if(_0x4ac1b5){var _0x5bfe27=typeof _0x355298['offset']==='undefined'&&typeof _0x355298[_0xbe54('0x21')]===_0xbe54('0x22');var _0x213c0b=_0x4ac1b5[_0xbe54('0x23')];var _0x294289=_0x5bfe27?0x0:_0x355298[_0xbe54('0x24')];var _0x54becc=_0x5bfe27?_0x4ac1b5[_0xbe54('0x23')]:_0x355298[_0xbe54('0x24')]+_0x355298['limit'];var _0x201a77;if(_0x54becc>=_0x213c0b){_0x54becc=_0x213c0b;_0x201a77=0xc8;}else{_0x201a77=0xce;}_0x396049[_0xbe54('0x1e')](_0x201a77);return _0x396049['set'](_0xbe54('0x25'),_0x294289+'-'+_0x54becc+'/'+_0x213c0b)[_0xbe54('0x20')](_0x4ac1b5);}return null;};}function patchUpdates(_0x54e9b9){return function(_0x54274c){try{jsonpatch[_0xbe54('0x26')](_0x54274c,_0x54e9b9,!![]);}catch(_0x46d42b){return BPromise[_0xbe54('0x27')](_0x46d42b);}return _0x54274c[_0xbe54('0x28')]();};}function saveUpdates(_0x2d3ea1,_0x4906a9){return function(_0x2ed0c7){if(_0x2ed0c7){return _0x2ed0c7[_0xbe54('0x29')](_0x2d3ea1)[_0xbe54('0x2a')](function(_0x56b765){return _0x56b765;});}return null;};}function removeEntity(_0x1b2d33,_0x3d1c94){return function(_0x14e576){if(_0x14e576){return _0x14e576[_0xbe54('0x2b')]()['then'](function(){var _0x108230=_0x14e576[_0xbe54('0x2c')]({'plain':!![]});var _0x4f71e7='Lists';return db[_0xbe54('0x2d')][_0xbe54('0x2b')]({'where':{'type':_0x4f71e7,'resourceId':_0x108230['id']}})[_0xbe54('0x2a')](function(){return _0x14e576;});})[_0xbe54('0x2a')](function(){_0x1b2d33[_0xbe54('0x1e')](0xcc)['end']();});}};}function handleEntityNotFound(_0x224f0d,_0x4cabe3){return function(_0xaf606a){if(!_0xaf606a){_0x224f0d[_0xbe54('0x1d')](0x194);}return _0xaf606a;};}function handleError(_0x16116b,_0x5d70c5){_0x5d70c5=_0x5d70c5||0x1f4;return function(_0x218d33){logger[_0xbe54('0x2e')](_0x218d33[_0xbe54('0x2f')]);if(_0x218d33['name']){delete _0x218d33[_0xbe54('0x30')];}_0x16116b['status'](_0x5d70c5)[_0xbe54('0x31')](_0x218d33);};}exports[_0xbe54('0x32')]=function(_0x3d1c45,_0x49541f){var _0x4eccba={},_0x51ea28={},_0x14f508={'count':0x0,'rows':[]};var _0x28504b=_[_0xbe54('0x33')](db[_0xbe54('0x34')][_0xbe54('0x35')],function(_0x3cae6b){return{'name':_0x3cae6b[_0xbe54('0x36')],'type':_0x3cae6b[_0xbe54('0x37')]['key']};});_0x51ea28[_0xbe54('0x38')]=_[_0xbe54('0x33')](_0x28504b,_0xbe54('0x30'));_0x51ea28['query']=_[_0xbe54('0x39')](_0x3d1c45['query']);_0x51ea28[_0xbe54('0x3a')]=_[_0xbe54('0x3b')](_0x51ea28[_0xbe54('0x38')],_0x51ea28[_0xbe54('0x3c')]);_0x4eccba[_0xbe54('0x3d')]=_[_0xbe54('0x3b')](_0x51ea28[_0xbe54('0x38')],qs[_0xbe54('0x3e')](_0x3d1c45[_0xbe54('0x3c')][_0xbe54('0x3e')]));_0x4eccba['attributes']=_0x4eccba[_0xbe54('0x3d')][_0xbe54('0x3f')]?_0x4eccba[_0xbe54('0x3d')]:_0x51ea28[_0xbe54('0x38')];if(!_0x3d1c45[_0xbe54('0x3c')][_0xbe54('0x40')](_0xbe54('0x41'))){_0x4eccba['limit']=qs['limit'](_0x3d1c45[_0xbe54('0x3c')][_0xbe54('0x21')]);_0x4eccba['offset']=qs[_0xbe54('0x24')](_0x3d1c45[_0xbe54('0x3c')][_0xbe54('0x24')]);}_0x4eccba[_0xbe54('0x42')]=qs[_0xbe54('0x43')](_0x3d1c45[_0xbe54('0x3c')][_0xbe54('0x43')]);_0x4eccba['where']=qs[_0xbe54('0x3a')](_[_0xbe54('0x44')](_0x3d1c45[_0xbe54('0x3c')],_0x51ea28[_0xbe54('0x3a')]),_0x28504b);if(_0x3d1c45[_0xbe54('0x3c')][_0xbe54('0x45')]){_0x4eccba[_0xbe54('0x46')]=_[_0xbe54('0x47')](_0x4eccba[_0xbe54('0x46')],{'$or':_[_0xbe54('0x33')](_0x28504b,function(_0x23d006){if(_0x23d006[_0xbe54('0x37')]!==_0xbe54('0x48')){var _0x419ddb={};_0x419ddb[_0x23d006[_0xbe54('0x30')]]={'$like':'%'+_0x3d1c45[_0xbe54('0x3c')]['filter']+'%'};return _0x419ddb;}})});}_0x4eccba=_[_0xbe54('0x47')]({},_0x4eccba,_0x3d1c45['options']);var _0x2692a4={'where':_0x4eccba[_0xbe54('0x46')]};return db['CmList'][_0xbe54('0x23')](_0x2692a4)[_0xbe54('0x2a')](function(_0x110655){_0x14f508['count']=_0x110655;if(_0x3d1c45[_0xbe54('0x3c')][_0xbe54('0x49')]){_0x4eccba['include']=[{'all':!![]}];}return db[_0xbe54('0x34')]['findAll'](_0x4eccba);})[_0xbe54('0x2a')](function(_0x5725c4){_0x14f508['rows']=_0x5725c4;return _0x14f508;})[_0xbe54('0x2a')](respondWithFilteredResult(_0x49541f,_0x4eccba))['catch'](handleError(_0x49541f,null));};exports[_0xbe54('0x4a')]=function(_0x1fdcd9,_0x54950d){var _0x4a7bd0={'raw':![],'where':{'id':_0x1fdcd9[_0xbe54('0x4b')]['id']}},_0x3cbacd={};_0x3cbacd[_0xbe54('0x38')]=_[_0xbe54('0x39')](db[_0xbe54('0x34')][_0xbe54('0x35')]);_0x3cbacd['query']=_[_0xbe54('0x39')](_0x1fdcd9['query']);_0x3cbacd[_0xbe54('0x3a')]=_['intersection'](_0x3cbacd['model'],_0x3cbacd['query']);_0x4a7bd0[_0xbe54('0x3d')]=_[_0xbe54('0x3b')](_0x3cbacd[_0xbe54('0x38')],qs[_0xbe54('0x3e')](_0x1fdcd9[_0xbe54('0x3c')][_0xbe54('0x3e')]));_0x4a7bd0['attributes']=_0x4a7bd0['attributes'][_0xbe54('0x3f')]?_0x4a7bd0[_0xbe54('0x3d')]:_0x3cbacd[_0xbe54('0x38')];if(_0x1fdcd9[_0xbe54('0x3c')]['includeAll']){_0x4a7bd0[_0xbe54('0x4c')]=[{'all':!![]}];}_0x4a7bd0=_[_0xbe54('0x47')]({},_0x4a7bd0,_0x1fdcd9[_0xbe54('0x4d')]);return db[_0xbe54('0x34')][_0xbe54('0x4e')](_0x4a7bd0)[_0xbe54('0x2a')](handleEntityNotFound(_0x54950d,null))[_0xbe54('0x2a')](respondWithResult(_0x54950d,null))[_0xbe54('0x4f')](handleError(_0x54950d,null));};exports[_0xbe54('0x50')]=function(_0x3caa2b,_0xd161bd){return db['CmList'][_0xbe54('0x50')](_0x3caa2b[_0xbe54('0x51')],{})['then'](function(_0x38045a){var _0x230bde=_0x3caa2b[_0xbe54('0x52')]['get']({'plain':!![]});if(!_0x230bde)throw new Error(_0xbe54('0x53'));if(_0x230bde[_0xbe54('0x54')]===_0xbe54('0x52')){var _0xc43493=_0x38045a[_0xbe54('0x2c')]({'plain':!![]});var _0x169e99=_0xbe54('0x55');return db[_0xbe54('0x56')][_0xbe54('0x4e')]({'where':{'name':_0x169e99,'userProfileId':_0x230bde[_0xbe54('0x57')]},'raw':!![]})[_0xbe54('0x2a')](function(_0xe227ea){if(_0xe227ea&&_0xe227ea[_0xbe54('0x58')]===0x0){return db[_0xbe54('0x2d')][_0xbe54('0x50')]({'name':_0xc43493['name'],'resourceId':_0xc43493['id'],'type':_0xe227ea[_0xbe54('0x30')],'sectionId':_0xe227ea['id']},{})['then'](function(){return _0x38045a;});}else{return _0x38045a;}})[_0xbe54('0x4f')](function(_0x403440){logger[_0xbe54('0x2e')](_0xbe54('0x59'),_0x403440);throw _0x403440;});}return _0x38045a;})[_0xbe54('0x2a')](respondWithResult(_0xd161bd,0xc9))[_0xbe54('0x4f')](handleError(_0xd161bd,null));};exports[_0xbe54('0x29')]=function(_0x231070,_0x533ca5){if(_0x231070[_0xbe54('0x51')]['id']){delete _0x231070[_0xbe54('0x51')]['id'];}return db['CmList'][_0xbe54('0x4e')]({'where':{'id':_0x231070['params']['id']}})[_0xbe54('0x2a')](handleEntityNotFound(_0x533ca5,null))[_0xbe54('0x2a')](saveUpdates(_0x231070['body'],null))['then'](respondWithResult(_0x533ca5,null))['catch'](handleError(_0x533ca5,null));};exports[_0xbe54('0x2b')]=function(_0x5e6008,_0x37f959){return db[_0xbe54('0x34')]['find']({'where':{'id':_0x5e6008['params']['id']}})['then'](handleEntityNotFound(_0x37f959,null))[_0xbe54('0x2a')](removeEntity(_0x37f959,null))['catch'](handleError(_0x37f959,null));};exports[_0xbe54('0x5a')]=function(_0x130a92,_0x246424){return db[_0xbe54('0x34')][_0xbe54('0x5a')]()[_0xbe54('0x2a')](respondWithResult(_0x246424,null))['catch'](handleError(_0x246424,null));};exports[_0xbe54('0x5b')]=function(_0x3476ba,_0x52ae55,_0x40eb92){if(_0x3476ba[_0xbe54('0x51')]['id']){delete _0x3476ba['body']['id'];}return db['CmList'][_0xbe54('0x4e')]({'where':{'id':_0x3476ba['params']['id']}})[_0xbe54('0x2a')](handleEntityNotFound(_0x52ae55,null))['then'](function(_0x48cd3f){if(_0x48cd3f){_0x3476ba['body']['ListId']=_0x48cd3f['id'];return db[_0xbe54('0x5c')][_0xbe54('0x50')](_0x3476ba[_0xbe54('0x51')]);}})['then'](respondWithResult(_0x52ae55,null))['catch'](handleError(_0x52ae55,null));};exports[_0xbe54('0x5d')]=function(_0x2e7c4f,_0x9829db,_0x51c70a){var _0x81d29={'raw':![],'where':{}};var _0x18db9d={};var _0x44467b={'count':0x0,'rows':[]};return db['CmList'][_0xbe54('0x5e')]({'where':{'id':_0x2e7c4f['params']['id']}})[_0xbe54('0x2a')](handleEntityNotFound(_0x9829db,null))[_0xbe54('0x2a')](function(_0x3de0ca){if(_0x3de0ca){_0x18db9d[_0xbe54('0x38')]=_[_0xbe54('0x39')](db[_0xbe54('0x5c')][_0xbe54('0x35')]);_0x18db9d[_0xbe54('0x3c')]=_[_0xbe54('0x39')](_0x2e7c4f[_0xbe54('0x3c')]);_0x18db9d['filters']=_[_0xbe54('0x3b')](_0x18db9d[_0xbe54('0x38')],_0x18db9d[_0xbe54('0x3c')]);_0x81d29[_0xbe54('0x3d')]=_[_0xbe54('0x3b')](_0x18db9d[_0xbe54('0x38')],qs[_0xbe54('0x3e')](_0x2e7c4f['query'][_0xbe54('0x3e')]));_0x81d29[_0xbe54('0x3d')]=_0x81d29[_0xbe54('0x3d')][_0xbe54('0x3f')]?_0x81d29[_0xbe54('0x3d')]:_0x18db9d[_0xbe54('0x38')];if(!_0x2e7c4f[_0xbe54('0x3c')][_0xbe54('0x40')](_0xbe54('0x41'))){_0x81d29['limit']=qs[_0xbe54('0x21')](_0x2e7c4f[_0xbe54('0x3c')][_0xbe54('0x21')]);_0x81d29[_0xbe54('0x24')]=qs[_0xbe54('0x24')](_0x2e7c4f['query'][_0xbe54('0x24')]);}_0x81d29[_0xbe54('0x42')]=qs[_0xbe54('0x43')](_0x2e7c4f[_0xbe54('0x3c')][_0xbe54('0x43')]);_0x81d29[_0xbe54('0x46')]=qs[_0xbe54('0x3a')](_['pick'](_0x2e7c4f[_0xbe54('0x3c')],_0x18db9d[_0xbe54('0x3a')]));_0x81d29[_0xbe54('0x46')][_0xbe54('0x5f')]=_0x3de0ca['id'];if(_0x2e7c4f[_0xbe54('0x3c')]['filter']){_0x81d29[_0xbe54('0x46')]=_[_0xbe54('0x47')](_0x81d29['where'],{'$or':_[_0xbe54('0x33')](_0x81d29[_0xbe54('0x3d')],function(_0x407975){var _0x5118ed={};_0x5118ed[_0x407975]={'$like':'%'+_0x2e7c4f[_0xbe54('0x3c')][_0xbe54('0x45')]+'%'};return _0x5118ed;})});}_0x81d29=_['merge']({},_0x81d29,_0x2e7c4f[_0xbe54('0x4d')]);return db[_0xbe54('0x5c')][_0xbe54('0x23')]({'where':_0x81d29[_0xbe54('0x46')]})[_0xbe54('0x2a')](function(_0x213a5a){_0x44467b[_0xbe54('0x23')]=_0x213a5a;if(_0x2e7c4f[_0xbe54('0x3c')][_0xbe54('0x49')]){_0x81d29['include']=[{'all':!![]}];}return db['Disposition'][_0xbe54('0x60')](_0x81d29);})[_0xbe54('0x2a')](function(_0x11f20d){_0x44467b[_0xbe54('0x61')]=_0x11f20d;return _0x44467b;});}})[_0xbe54('0x2a')](respondWithFilteredResult(_0x9829db,_0x81d29))[_0xbe54('0x4f')](handleError(_0x9829db,null));};exports[_0xbe54('0x62')]=function(_0x160944,_0x2ea080,_0x292555){return db[_0xbe54('0x34')]['find']({'where':{'id':_0x160944[_0xbe54('0x4b')]['id']}})[_0xbe54('0x2a')](handleEntityNotFound(_0x2ea080,null))['then'](function(_0x38bc49){if(_0x38bc49){return _0x38bc49[_0xbe54('0x62')](_0x160944[_0xbe54('0x3c')][_0xbe54('0x63')]);}})[_0xbe54('0x2a')](respondWithStatusCode(_0x2ea080,null))[_0xbe54('0x4f')](handleError(_0x2ea080,null));};exports[_0xbe54('0x64')]=function(_0x3404eb,_0x4a521c,_0x43cd9a){return db[_0xbe54('0x34')][_0xbe54('0x4e')]({'where':{'id':_0x3404eb['params']['id']}})[_0xbe54('0x2a')](handleEntityNotFound(_0x4a521c,null))[_0xbe54('0x2a')](function(_0x1f4e41){if(_0x1f4e41){var _0x461843=[];var _0x1f8ffb={'success':[],'errors':[]};return db['CmContact'][_0xbe54('0x5a')]()[_0xbe54('0x2a')](function(_0x11a06f){if(_0x3404eb[_0xbe54('0x51')][_0xbe54('0x65')]&&_['isArray'](_0x3404eb[_0xbe54('0x51')][_0xbe54('0x65')])){if(_0x3404eb['body'][_0xbe54('0x65')]['length']){_0x3404eb[_0xbe54('0x51')][_0xbe54('0x65')]=_0x3404eb[_0xbe54('0x51')][_0xbe54('0x65')]['join'](';')+';';}else{_0x3404eb[_0xbe54('0x51')]['tags']=null;}}else{_0x3404eb['body'][_0xbe54('0x65')]=null;}if(_0x3404eb[_0xbe54('0x51')]&&_[_0xbe54('0x66')](_0x3404eb[_0xbe54('0x51')])){for(var _0x285f2f=0x0;_0x285f2f<_0x3404eb[_0xbe54('0x51')][_0xbe54('0x3f')];_0x285f2f+=0x1){_0x3404eb[_0xbe54('0x51')][_0x285f2f]['ListId']=_0x3404eb[_0xbe54('0x4b')]['id'];_0x461843[_0xbe54('0x67')](_0x3404eb[_0xbe54('0x51')][_0x285f2f]);}return BPromise[_0xbe54('0x68')](_0x461843,function(_0x9707cb){return db[_0xbe54('0x69')][_0xbe54('0x50')](_[_0xbe54('0x6a')](_0x9707cb,[_0xbe54('0x63'),'id'])||{},{'fields':_['keys'](_0x11a06f),'raw':!![]})['then'](function(_0xf5c245){_0x1f8ffb['success'][_0xbe54('0x67')](_0xf5c245[_0xbe54('0x6b')]);})['catch'](function(_0x5a2aad){_0x1f8ffb[_0xbe54('0x6c')][_0xbe54('0x67')]({'data':_0x9707cb,'error':_0x5a2aad['message']});});})[_0xbe54('0x2a')](function(_0x47ab85){return _0x1f8ffb;})['catch'](function(_0x43f0ac){return _0x43f0ac;});}else{_0x4a521c[_0xbe54('0x1e')](0x190)['json']({'message':'Malformed\x20request\x20syntax'});}});}})[_0xbe54('0x2a')](respondWithResult(_0x4a521c,null))[_0xbe54('0x4f')](handleError(_0x4a521c,null));};exports['getContacts']=function(_0x5ca75d,_0x7746b0,_0x67c73b){var _0x5c40d4;return db[_0xbe54('0x34')][_0xbe54('0x4e')]({'where':{'id':_0x5ca75d[_0xbe54('0x4b')]['id']},'include':[{'model':db[_0xbe54('0x6d')],'as':_0xbe54('0x6e')}]})[_0xbe54('0x2a')](handleEntityNotFound(_0x7746b0,null))[_0xbe54('0x2a')](function(_0x189ba6){if(_0x189ba6){_0x5c40d4=_0x189ba6;return db[_0xbe54('0x69')][_0xbe54('0x35')];}})[_0xbe54('0x2a')](function(_0x4592e6){if(_0x4592e6){var _0x357794={};var _0x554221={};_0x554221[_0xbe54('0x38')]=_[_0xbe54('0x6f')](_[_0xbe54('0x39')](_0x4592e6),_[_0xbe54('0x33')](_0x5c40d4[_0xbe54('0x6e')],function(_0x56dce9){return util['format'](_0xbe54('0x70'),_0x56dce9['id']);}));_0x554221[_0xbe54('0x3c')]=_[_0xbe54('0x39')](_0x5ca75d[_0xbe54('0x3c')]);_0x554221[_0xbe54('0x3a')]=_[_0xbe54('0x3b')](_0x554221[_0xbe54('0x38')],_0x554221[_0xbe54('0x3c')]);_0x357794[_0xbe54('0x3d')]=_[_0xbe54('0x3b')](_0x554221[_0xbe54('0x38')],qs[_0xbe54('0x3e')](_0x5ca75d[_0xbe54('0x3c')]['fields']));_0x357794[_0xbe54('0x3d')]=_0x357794[_0xbe54('0x3d')][_0xbe54('0x3f')]?_0x357794['attributes']:_0x554221[_0xbe54('0x38')];if(!_0x5ca75d[_0xbe54('0x3c')]['hasOwnProperty'](_0xbe54('0x41'))){_0x357794[_0xbe54('0x21')]=qs['limit'](_0x5ca75d[_0xbe54('0x3c')][_0xbe54('0x21')]);_0x357794[_0xbe54('0x24')]=qs[_0xbe54('0x24')](_0x5ca75d[_0xbe54('0x3c')][_0xbe54('0x24')]);}_0x357794[_0xbe54('0x42')]=qs[_0xbe54('0x43')](_0x5ca75d[_0xbe54('0x3c')][_0xbe54('0x43')]);_0x357794[_0xbe54('0x46')]=qs[_0xbe54('0x3a')](_[_0xbe54('0x44')](_0x5ca75d['query'],_0x554221[_0xbe54('0x3a')]));_0x357794[_0xbe54('0x71')]=!![];if(_0x5ca75d[_0xbe54('0x3c')]['filter']){_0x357794[_0xbe54('0x46')]=_['merge'](_0x357794['where'],{'$or':_['map'](_0x357794[_0xbe54('0x3d')],function(_0x5b176f){var _0x257733={};_0x257733[_0x5b176f]={'$like':'%'+_0x5ca75d[_0xbe54('0x3c')][_0xbe54('0x45')]+'%'};return _0x257733;})});}_0x357794=_[_0xbe54('0x47')]({},_0x357794,_0x5ca75d[_0xbe54('0x4d')]);return _0x5c40d4[_0xbe54('0x72')](_0x357794);}})[_0xbe54('0x2a')](respondWithResult(_0x7746b0,null))[_0xbe54('0x4f')](handleError(_0x7746b0,null));};exports[_0xbe54('0x73')]=function(_0xee62a3,_0x5dd74c,_0xb947bf){var _0x40b2b6;var _0x50a9dc;var _0x2fde88;var _0x84f04f=_0xee62a3['params']['id'];csv_results=[];return db[_0xbe54('0x74')]['findAll']({'attributes':['id',_0xbe54('0x30')],'raw':!![],'order':[_0xbe54('0x75')]})['then'](function(_0x5cdf26){_0x40b2b6=_0x5cdf26;var _0x3d0722=_['keys'](db[_0xbe54('0x69')][_0xbe54('0x35')]);return db[_0xbe54('0x6d')]['findAll']({'raw':!![],'attributes':['id',_0xbe54('0x76')]})[_0xbe54('0x2a')](function(_0x53bf04){_0x50a9dc=_0x53bf04;var _0x2fb238=squel[_0xbe54('0x77')]()[_0xbe54('0x3e')](_0x3d0722)[_0xbe54('0x78')]('cm_contacts','c')[_0xbe54('0x46')](_0xbe54('0x79'),_0x84f04f)[_0xbe54('0x46')](_0xbe54('0x7a'))['distinct']();for(var _0x545626=0x0;_0x545626<_0x50a9dc[_0xbe54('0x3f')];_0x545626++){_0x2fb238[_0xbe54('0x7b')](_0xbe54('0x7c')+_0x50a9dc[_0x545626]['id'],_0xbe54('0x7d')+_0x50a9dc[_0x545626][_0xbe54('0x76')]);}for(var _0x545626=0x0;_0x545626<_0x40b2b6['length'];_0x545626++){_0x2fb238['field'](squel[_0xbe54('0x77')]()[_0xbe54('0x7b')]('item')[_0xbe54('0x78')](_0xbe54('0x7e'))[_0xbe54('0x46')]('ItemTypeId\x20=\x20?',_0x40b2b6[_0x545626]['id'])['where'](_0xbe54('0x7f')),_0xbe54('0x80')+_0x40b2b6[_0x545626][_0xbe54('0x30')]);_0x2fb238['field'](squel[_0xbe54('0x77')]()[_0xbe54('0x7b')](_0xbe54('0x81'))['from'](_0xbe54('0x7e'))[_0xbe54('0x46')]('ItemTypeId\x20=\x20?',_0x40b2b6[_0x545626]['id'])['where'](_0xbe54('0x7f')),'description_additionalPhone_'+_0x40b2b6[_0x545626][_0xbe54('0x30')]);}var _0x1aa00d=[];_0x1aa00d[_0xbe54('0x67')](_0x2fb238[_0xbe54('0x82')]());BPromise[_0xbe54('0x68')](_0x1aa00d,handleQuery)['then'](function(_0xf767a1){handleQuery(_0x2fb238[_0xbe54('0x82')]());var _0x564f8b=csv_results[0x0];if(!_['isEmpty'](_0x564f8b)){var _0x3a538c=toCsv(_0x564f8b);var _0x227097=Date[_0xbe54('0x83')]();fs['writeFileSync'](util['format']('/tmp/list_%d_%s.csv',_0x84f04f,_0x227097),_0x3a538c);_0x5dd74c[_0xbe54('0x84')](_0xbe54('0x85'),_0xbe54('0x86')+util[_0xbe54('0x87')](_0xbe54('0x88'),_0x84f04f,_0x227097));_0x5dd74c[_0xbe54('0x84')](_0xbe54('0x89'),_0xbe54('0x8a'));return _0x5dd74c[_0xbe54('0x8b')](util[_0xbe54('0x87')](_0xbe54('0x8c'),_0x84f04f,_0x227097));}else{return _0x5dd74c[_0xbe54('0x1d')](0xcc);}});});});};exports[_0xbe54('0x8d')]=function(_0x2d55b5,_0x50d3ad,_0x4b7637){var _0x1bb2da;delete _0x2d55b5[_0xbe54('0x51')]['id'];return db[_0xbe54('0x34')]['findOne']({'where':{'id':_0x2d55b5['params']['id']}})['then'](handleEntityNotFound(_0x50d3ad,null))[_0xbe54('0x2a')](function(_0x1dc459){if(_0x1dc459){return db[_0xbe54('0x8e')][_0xbe54('0x8f')](function(_0x1104b6){return db[_0xbe54('0x6d')][_0xbe54('0x50')](_0x2d55b5[_0xbe54('0x51')],{'transaction':_0x1104b6})[_0xbe54('0x2a')](function(_0x597716){_0x1bb2da=_0x597716;return _0x1dc459[_0xbe54('0x90')](_0x597716,{'transaction':_0x1104b6});})[_0xbe54('0x2a')](function(){var _0x2234af={'type':db[_0xbe54('0x91')][_0xbe54('0x92')],'transaction':_0x1104b6};switch(_0x2d55b5['body'][_0xbe54('0x37')]){case'text':_0x2234af[_0xbe54('0x37')]=db['Sequelize'][_0xbe54('0x92')];break;case _0xbe54('0x93'):_0x2234af[_0xbe54('0x37')]=db[_0xbe54('0x91')][_0xbe54('0x94')];break;case _0xbe54('0x95'):_0x2234af[_0xbe54('0x37')]=db['Sequelize'][_0xbe54('0x96')];_0x2234af[_0xbe54('0x97')]=![];break;default:}return db[_0xbe54('0x8e')]['queryInterface'][_0xbe54('0x98')](_0xbe54('0x99'),util[_0xbe54('0x87')](_0xbe54('0x9a'),_0x1bb2da['id']),_0x2234af);})[_0xbe54('0x2a')](function(){return _0x1bb2da;});});}})[_0xbe54('0x2a')](respondWithResult(_0x50d3ad,null))[_0xbe54('0x4f')](handleError(_0x50d3ad,null));};exports[_0xbe54('0x9b')]=function(_0x329605,_0x467280,_0x2b8a8c){var _0x4bae7a={};var _0x351bad={};var _0x3a9118;var _0x2b800e;return db[_0xbe54('0x34')][_0xbe54('0x5e')]({'where':{'id':_0x329605['params']['id']}})[_0xbe54('0x2a')](handleEntityNotFound(_0x467280,null))[_0xbe54('0x2a')](function(_0x467872){if(_0x467872){_0x3a9118=_0x467872;_0x351bad['model']=_[_0xbe54('0x39')](db[_0xbe54('0x6d')][_0xbe54('0x35')]);_0x351bad['query']=_[_0xbe54('0x39')](_0x329605[_0xbe54('0x3c')]);_0x351bad[_0xbe54('0x3a')]=_[_0xbe54('0x3b')](_0x351bad[_0xbe54('0x38')],_0x351bad[_0xbe54('0x3c')]);_0x4bae7a[_0xbe54('0x3d')]=_['intersection'](_0x351bad[_0xbe54('0x38')],qs['fields'](_0x329605[_0xbe54('0x3c')][_0xbe54('0x3e')]));_0x4bae7a['attributes']=_0x4bae7a[_0xbe54('0x3d')][_0xbe54('0x3f')]?_0x4bae7a[_0xbe54('0x3d')]:_0x351bad[_0xbe54('0x38')];_0x4bae7a[_0xbe54('0x42')]=qs[_0xbe54('0x43')](_0x329605[_0xbe54('0x3c')][_0xbe54('0x43')]);_0x4bae7a[_0xbe54('0x46')]=qs[_0xbe54('0x3a')](_[_0xbe54('0x44')](_0x329605[_0xbe54('0x3c')],_0x351bad[_0xbe54('0x3a')]));_0x4bae7a[_0xbe54('0x46')]=_[_0xbe54('0x47')](_0x4bae7a[_0xbe54('0x46')],{'$or':[{'ListId':_0x467872['id']},{'ListId':null}]});if(_0x329605['query']['filter']){_0x4bae7a[_0xbe54('0x46')]=_[_0xbe54('0x47')](_0x4bae7a[_0xbe54('0x46')],{'$or':_['map'](_0x4bae7a[_0xbe54('0x3d')],function(_0x1ba319){var _0x3092bd={};_0x3092bd[_0x1ba319]={'$like':'%'+_0x329605['query'][_0xbe54('0x45')]+'%'};return _0x3092bd;})});}_0x4bae7a=_[_0xbe54('0x47')]({},_0x4bae7a,_0x329605[_0xbe54('0x4d')]);return db[_0xbe54('0x6d')][_0xbe54('0x9c')](_0x4bae7a);}})['then'](respondWithResult(_0x467280,null))[_0xbe54('0x4f')](handleError(_0x467280,null));};exports[_0xbe54('0x9d')]=function(_0x3ee1d2,_0x13c834){return db['CmCustomField'][_0xbe54('0x9c')]({'where':{'ListId':null}})[_0xbe54('0x2a')](handleEntityNotFound(_0x13c834,null))[_0xbe54('0x2a')](function(_0x5ccef7){return _0x5ccef7;})[_0xbe54('0x2a')](respondWithResult(_0x13c834,null))[_0xbe54('0x4f')](handleError(_0x13c834,null));};exports[_0xbe54('0x9e')]=function(_0x4f13c1,_0xecfe5a,_0x143af2){return db[_0xbe54('0x34')][_0xbe54('0x4e')]({'where':{'id':_0x4f13c1[_0xbe54('0x4b')]['id']}})[_0xbe54('0x2a')](handleEntityNotFound(_0xecfe5a,null))['then'](function(_0x467130){if(_0x467130){return _0x467130[_0xbe54('0x9e')](_0x4f13c1[_0xbe54('0x51')][_0xbe54('0x63')],_[_0xbe54('0x6a')](_0x4f13c1['body'],[_0xbe54('0x63'),'id'])||{})[_0xbe54('0x9f')](function(_0x338277){for(var _0x34cab4=0x0;_0x34cab4<_0x4f13c1[_0xbe54('0x51')][_0xbe54('0x63')][_0xbe54('0x3f')];_0x34cab4+=0x1){socket[_0xbe54('0xa0')]('userCmList:save',{'UserId':Number(_0x4f13c1[_0xbe54('0x51')]['ids'][_0x34cab4]),'CmListId':Number(_0x4f13c1['params']['id'])});}return _0x338277;});}})[_0xbe54('0x2a')](respondWithResult(_0xecfe5a,null))['catch'](handleError(_0xecfe5a,null));};exports['removeAgents']=function(_0x4b4910,_0xb046aa,_0x181981){return db[_0xbe54('0x34')][_0xbe54('0x4e')]({'where':{'id':_0x4b4910[_0xbe54('0x4b')]['id']}})['then'](handleEntityNotFound(_0xb046aa,null))[_0xbe54('0x2a')](function(_0x91f13){if(_0x91f13){return _0x91f13[_0xbe54('0xa1')](_0x4b4910['query'][_0xbe54('0x63')])[_0xbe54('0x2a')](function(){if(_[_0xbe54('0x66')](_0x4b4910[_0xbe54('0x3c')]['ids'])){for(var _0xe29ea9=0x0;_0xe29ea9<_0x4b4910[_0xbe54('0x3c')][_0xbe54('0x63')][_0xbe54('0x3f')];_0xe29ea9+=0x1){socket[_0xbe54('0xa0')](_0xbe54('0xa2'),{'UserId':Number(_0x4b4910[_0xbe54('0x3c')]['ids'][_0xe29ea9]),'CmListId':Number(_0x4b4910[_0xbe54('0x4b')]['id'])});}}else{socket[_0xbe54('0xa0')]('userCmList:remove',{'UserId':Number(_0x4b4910[_0xbe54('0x3c')][_0xbe54('0x63')]),'CmListId':Number(_0x4b4910[_0xbe54('0x4b')]['id'])});}});}})['then'](respondWithStatusCode(_0xb046aa,null))[_0xbe54('0x4f')](handleError(_0xb046aa,null));};exports[_0xbe54('0xa3')]=function(_0x54d333,_0x5d7b42,_0x40de5e){var _0x3203ea={};var _0x4eefba={};var _0x1146d6;var _0x5c105c;return db[_0xbe54('0x34')]['findOne']({'where':{'id':_0x54d333[_0xbe54('0x4b')]['id']}})[_0xbe54('0x2a')](handleEntityNotFound(_0x5d7b42,null))[_0xbe54('0x2a')](function(_0x1e9d8b){if(_0x1e9d8b){_0x1146d6=_0x1e9d8b;_0x4eefba[_0xbe54('0x38')]=_['keys'](db['User'][_0xbe54('0x35')]);_0x4eefba['query']=_['keys'](_0x54d333[_0xbe54('0x3c')]);_0x4eefba[_0xbe54('0x3a')]=_[_0xbe54('0x3b')](_0x4eefba['model'],_0x4eefba[_0xbe54('0x3c')]);_0x3203ea[_0xbe54('0x3d')]=_[_0xbe54('0x3b')](_0x4eefba[_0xbe54('0x38')],qs[_0xbe54('0x3e')](_0x54d333[_0xbe54('0x3c')]['fields']));_0x3203ea[_0xbe54('0x3d')]=_0x3203ea[_0xbe54('0x3d')][_0xbe54('0x3f')]?_0x3203ea[_0xbe54('0x3d')]:_0x4eefba[_0xbe54('0x38')];_0x3203ea[_0xbe54('0x42')]=qs[_0xbe54('0x43')](_0x54d333[_0xbe54('0x3c')][_0xbe54('0x43')]);_0x3203ea[_0xbe54('0x46')]=qs[_0xbe54('0x3a')](_['pick'](_0x54d333['query'],_0x4eefba['filters']));if(_0x54d333['query']['filter']){_0x3203ea[_0xbe54('0x46')]=_[_0xbe54('0x47')](_0x3203ea[_0xbe54('0x46')],{'$or':_[_0xbe54('0x33')](_0x3203ea[_0xbe54('0x3d')],function(_0x57d05a){var _0x798f55={};_0x798f55[_0x57d05a]={'$like':'%'+_0x54d333[_0xbe54('0x3c')][_0xbe54('0x45')]+'%'};return _0x798f55;})});}_0x3203ea=_[_0xbe54('0x47')]({},_0x3203ea,_0x54d333[_0xbe54('0x4d')]);return _0x1146d6[_0xbe54('0xa3')](_0x3203ea);}})[_0xbe54('0x2a')](function(_0x2a6a85){if(_0x2a6a85){_0x5c105c=_0x2a6a85[_0xbe54('0x3f')];if(!_0x54d333[_0xbe54('0x3c')][_0xbe54('0x40')](_0xbe54('0x41'))){_0x3203ea['limit']=qs[_0xbe54('0x21')](_0x54d333['query'][_0xbe54('0x21')]);_0x3203ea['offset']=qs[_0xbe54('0x24')](_0x54d333[_0xbe54('0x3c')]['offset']);}return _0x1146d6['getAgents'](_0x3203ea);}})['then'](function(_0x36dfba){if(_0x36dfba){return _0x36dfba?{'count':_0x5c105c,'rows':_0x36dfba}:null;}})[_0xbe54('0x2a')](respondWithResult(_0x5d7b42,null))['catch'](handleError(_0x5d7b42,null));};function handleQuery(_0x42586e){logger[_0xbe54('0xa4')](_0x42586e);return db['sequelize'][_0xbe54('0x3c')](_0x42586e)['spread'](function(_0x2d0a2b){csv_results[_0xbe54('0x67')](_0x2d0a2b);})[_0xbe54('0x4f')](function(_0x429e3a){logger[_0xbe54('0x2e')](_0x429e3a[_0xbe54('0xa5')]);});}