Built motion from commit (unavailable).|2.5.15
[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 _0x2afd=['where','pick','filter','merge','VIRTUAL','options','count','includeAll','include','rows','catch','show','params','rawAttributes','find','create','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','userProfileId','autoAssociation','describe','addDisposition','ListId','Disposition','getDispositions','findAll','removeDispositions','ids','CmContact','tags','isArray','push','each','omit','success','dataValues','message','Malformed\x20request\x20syntax','getContacts','CmCustomField','CustomFields','concat','format','cf_%d','getContactsCsv','raw','setHeader','Content-disposition','attachment;\x20filename=','Content-type','download','addCustomField','findOne','sequelize','addCustomFields','text','TEXT','number','Sequelize','BOOLEAN','queryInterface','cm_contacts','cf_%s','getCustomFields','findAndCountAll','addAgents','emit','userCmList:save','removeAgents','userCmList:remove','getAgents','User','html-pdf','eml-format','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','ejs','lodash','squel','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/license/util','../../mysqldb','redis','defaults','localhost','socket.io-emitter','./cmList.socket','register','status','end','json','offset','limit','set','Content-Range','apply','reject','save','update','then','destroy','get','Lists','UserProfileResource','sendStatus','error','name','send','index','CmList','fieldName','type','key','map','keys','filters','intersection','model','query','attributes','fields','length','hasOwnProperty','nolimit','order','sort'];(function(_0x2f061f,_0xd744f2){var _0x24b187=function(_0x611d3f){while(--_0x611d3f){_0x2f061f['push'](_0x2f061f['shift']());}};_0x24b187(++_0xd744f2);}(_0x2afd,0x171));var _0xd2af=function(_0xfae23b,_0x2be4ba){_0xfae23b=_0xfae23b-0x0;var _0x200640=_0x2afd[_0xfae23b];return _0x200640;};'use strict';var pdf=require(_0xd2af('0x0'));var emlformat=require(_0xd2af('0x1'));var rimraf=require('rimraf');var zipdir=require(_0xd2af('0x2'));var jsonpatch=require(_0xd2af('0x3'));var rp=require(_0xd2af('0x4'));var moment=require(_0xd2af('0x5'));var BPromise=require(_0xd2af('0x6'));var Mustache=require(_0xd2af('0x7'));var util=require(_0xd2af('0x8'));var path=require(_0xd2af('0x9'));var sox=require(_0xd2af('0xa'));var csv=require(_0xd2af('0xb'));var ejs=require(_0xd2af('0xc'));var fs=require('fs');var _=require(_0xd2af('0xd'));var squel=require(_0xd2af('0xe'));var crypto=require('crypto');var jsforce=require(_0xd2af('0xf'));var deskjs=require(_0xd2af('0x10'));var toCsv=require(_0xd2af('0xb'));var querystring=require(_0xd2af('0x11'));var Papa=require(_0xd2af('0x12'));var Redis=require(_0xd2af('0x13'));var authService=require(_0xd2af('0x14'));var qs=require(_0xd2af('0x15'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xd2af('0x16'));var logger=require(_0xd2af('0x17'))(_0xd2af('0x18'));var utils=require(_0xd2af('0x19'));var config=require('../../config/environment');var licenseUtil=require(_0xd2af('0x1a'));var db=require(_0xd2af('0x1b'))['db'];config[_0xd2af('0x1c')]=_[_0xd2af('0x1d')](config[_0xd2af('0x1c')],{'host':_0xd2af('0x1e'),'port':0x18eb});var socket=require(_0xd2af('0x1f'))(new Redis(config['redis']));require(_0xd2af('0x20'))[_0xd2af('0x21')](socket);function respondWithStatusCode(_0x9c3c85,_0x52176f){_0x52176f=_0x52176f||0xcc;return function(_0x58442c){if(_0x58442c){return _0x9c3c85['sendStatus'](_0x52176f);}return _0x9c3c85[_0xd2af('0x22')](_0x52176f)[_0xd2af('0x23')]();};}function respondWithResult(_0x1f32e2,_0x4d128d){_0x4d128d=_0x4d128d||0xc8;return function(_0x149142){if(_0x149142){return _0x1f32e2[_0xd2af('0x22')](_0x4d128d)[_0xd2af('0x24')](_0x149142);}};}function respondWithFilteredResult(_0x147a87,_0x44abf5){return function(_0x520a4f){if(_0x520a4f){var _0x4a0c08=_0x520a4f['count'],_0x40824a=_0x44abf5[_0xd2af('0x25')],_0x3b5d1b=_0x44abf5['offset']+_0x44abf5[_0xd2af('0x26')],_0x59846e;if(_0x3b5d1b>=_0x4a0c08){_0x3b5d1b=_0x4a0c08;_0x59846e=0xc8;}else{_0x59846e=0xce;}_0x147a87[_0xd2af('0x22')](_0x59846e);return _0x147a87[_0xd2af('0x27')](_0xd2af('0x28'),_0x40824a+'-'+_0x3b5d1b+'/'+_0x4a0c08)[_0xd2af('0x24')](_0x520a4f);}return null;};}function patchUpdates(_0x53228b){return function(_0x1bfbf4){try{jsonpatch[_0xd2af('0x29')](_0x1bfbf4,_0x53228b,!![]);}catch(_0x3fe43c){return BPromise[_0xd2af('0x2a')](_0x3fe43c);}return _0x1bfbf4[_0xd2af('0x2b')]();};}function saveUpdates(_0x3c338f,_0x489b88){return function(_0x541a33){if(_0x541a33){return _0x541a33[_0xd2af('0x2c')](_0x3c338f)[_0xd2af('0x2d')](function(_0x1f40a6){return _0x1f40a6;});}return null;};}function removeEntity(_0x3a46d9,_0x497e5b){return function(_0x2a5399){if(_0x2a5399){return _0x2a5399[_0xd2af('0x2e')]()[_0xd2af('0x2d')](function(){var _0x241bd=_0x2a5399[_0xd2af('0x2f')]({'plain':!![]});var _0x48e5dc=_0xd2af('0x30');return db[_0xd2af('0x31')]['destroy']({'where':{'type':_0x48e5dc,'resourceId':_0x241bd['id']}})[_0xd2af('0x2d')](function(){return _0x2a5399;});})[_0xd2af('0x2d')](function(){_0x3a46d9['status'](0xcc)[_0xd2af('0x23')]();});}};}function handleEntityNotFound(_0x4fedee,_0xf86b20){return function(_0x3c4646){if(!_0x3c4646){_0x4fedee[_0xd2af('0x32')](0x194);}return _0x3c4646;};}function handleError(_0x26a00e,_0x5cc2f7){_0x5cc2f7=_0x5cc2f7||0x1f4;return function(_0x46b3b2){logger[_0xd2af('0x33')](_0x46b3b2['stack']);if(_0x46b3b2[_0xd2af('0x34')]){delete _0x46b3b2[_0xd2af('0x34')];}_0x26a00e[_0xd2af('0x22')](_0x5cc2f7)[_0xd2af('0x35')](_0x46b3b2);};}exports[_0xd2af('0x36')]=function(_0x245cdb,_0x13e2f6){var _0x18c26f={},_0x3951e0={},_0x5089cb={'count':0x0,'rows':[]};var _0x1d1b7c=_['map'](db[_0xd2af('0x37')]['rawAttributes'],function(_0x3431e7){return{'name':_0x3431e7[_0xd2af('0x38')],'type':_0x3431e7[_0xd2af('0x39')][_0xd2af('0x3a')]};});_0x3951e0['model']=_[_0xd2af('0x3b')](_0x1d1b7c,_0xd2af('0x34'));_0x3951e0['query']=_[_0xd2af('0x3c')](_0x245cdb['query']);_0x3951e0[_0xd2af('0x3d')]=_[_0xd2af('0x3e')](_0x3951e0[_0xd2af('0x3f')],_0x3951e0[_0xd2af('0x40')]);_0x18c26f[_0xd2af('0x41')]=_[_0xd2af('0x3e')](_0x3951e0[_0xd2af('0x3f')],qs[_0xd2af('0x42')](_0x245cdb[_0xd2af('0x40')]['fields']));_0x18c26f['attributes']=_0x18c26f[_0xd2af('0x41')][_0xd2af('0x43')]?_0x18c26f['attributes']:_0x3951e0['model'];if(!_0x245cdb[_0xd2af('0x40')][_0xd2af('0x44')](_0xd2af('0x45'))){_0x18c26f[_0xd2af('0x26')]=qs['limit'](_0x245cdb[_0xd2af('0x40')][_0xd2af('0x26')]);_0x18c26f[_0xd2af('0x25')]=qs['offset'](_0x245cdb[_0xd2af('0x40')][_0xd2af('0x25')]);}_0x18c26f[_0xd2af('0x46')]=qs[_0xd2af('0x47')](_0x245cdb[_0xd2af('0x40')][_0xd2af('0x47')]);_0x18c26f[_0xd2af('0x48')]=qs[_0xd2af('0x3d')](_[_0xd2af('0x49')](_0x245cdb[_0xd2af('0x40')],_0x3951e0[_0xd2af('0x3d')]),_0x1d1b7c);if(_0x245cdb[_0xd2af('0x40')][_0xd2af('0x4a')]){_0x18c26f[_0xd2af('0x48')]=_[_0xd2af('0x4b')](_0x18c26f['where'],{'$or':_['map'](_0x1d1b7c,function(_0x53375e){if(_0x53375e[_0xd2af('0x39')]!==_0xd2af('0x4c')){var _0x1715cf={};_0x1715cf[_0x53375e[_0xd2af('0x34')]]={'$like':'%'+_0x245cdb[_0xd2af('0x40')]['filter']+'%'};return _0x1715cf;}})});}_0x18c26f=_[_0xd2af('0x4b')]({},_0x18c26f,_0x245cdb[_0xd2af('0x4d')]);var _0x237707={'where':_0x18c26f[_0xd2af('0x48')]};return db[_0xd2af('0x37')][_0xd2af('0x4e')](_0x237707)[_0xd2af('0x2d')](function(_0x4f3225){_0x5089cb[_0xd2af('0x4e')]=_0x4f3225;if(_0x245cdb[_0xd2af('0x40')][_0xd2af('0x4f')]){_0x18c26f[_0xd2af('0x50')]=[{'all':!![]}];}return db[_0xd2af('0x37')]['findAll'](_0x18c26f);})['then'](function(_0xff2a16){_0x5089cb[_0xd2af('0x51')]=_0xff2a16;return _0x5089cb;})[_0xd2af('0x2d')](respondWithFilteredResult(_0x13e2f6,_0x18c26f))[_0xd2af('0x52')](handleError(_0x13e2f6,null));};exports[_0xd2af('0x53')]=function(_0x2e7ba0,_0x4ce6e0){var _0x5f56b4={'raw':![],'where':{'id':_0x2e7ba0[_0xd2af('0x54')]['id']}},_0x1f0b30={};_0x1f0b30[_0xd2af('0x3f')]=_[_0xd2af('0x3c')](db['CmList'][_0xd2af('0x55')]);_0x1f0b30[_0xd2af('0x40')]=_[_0xd2af('0x3c')](_0x2e7ba0['query']);_0x1f0b30[_0xd2af('0x3d')]=_[_0xd2af('0x3e')](_0x1f0b30[_0xd2af('0x3f')],_0x1f0b30[_0xd2af('0x40')]);_0x5f56b4[_0xd2af('0x41')]=_['intersection'](_0x1f0b30[_0xd2af('0x3f')],qs[_0xd2af('0x42')](_0x2e7ba0[_0xd2af('0x40')][_0xd2af('0x42')]));_0x5f56b4[_0xd2af('0x41')]=_0x5f56b4['attributes']['length']?_0x5f56b4['attributes']:_0x1f0b30[_0xd2af('0x3f')];if(_0x2e7ba0[_0xd2af('0x40')]['includeAll']){_0x5f56b4[_0xd2af('0x50')]=[{'all':!![]}];}_0x5f56b4=_['merge']({},_0x5f56b4,_0x2e7ba0[_0xd2af('0x4d')]);return db[_0xd2af('0x37')][_0xd2af('0x56')](_0x5f56b4)[_0xd2af('0x2d')](handleEntityNotFound(_0x4ce6e0,null))['then'](respondWithResult(_0x4ce6e0,null))['catch'](handleError(_0x4ce6e0,null));};exports['create']=function(_0x24aba6,_0x1e08df){return db[_0xd2af('0x37')][_0xd2af('0x57')](_0x24aba6[_0xd2af('0x58')],{})[_0xd2af('0x2d')](function(_0x4a08aa){var _0x227de5=_0x24aba6[_0xd2af('0x59')]['get']({'plain':!![]});if(!_0x227de5)throw new Error(_0xd2af('0x5a'));if(_0x227de5[_0xd2af('0x5b')]===_0xd2af('0x59')){var _0x582c93=_0x4a08aa[_0xd2af('0x2f')]({'plain':!![]});var _0x46969f=_0xd2af('0x30');return db[_0xd2af('0x5c')]['find']({'where':{'name':_0x46969f,'userProfileId':_0x227de5[_0xd2af('0x5d')]},'raw':!![]})[_0xd2af('0x2d')](function(_0x402b5d){if(_0x402b5d&&_0x402b5d[_0xd2af('0x5e')]===0x0){return db['UserProfileResource'][_0xd2af('0x57')]({'name':_0x582c93[_0xd2af('0x34')],'resourceId':_0x582c93['id'],'type':_0x402b5d[_0xd2af('0x34')],'sectionId':_0x402b5d['id']},{})[_0xd2af('0x2d')](function(){return _0x4a08aa;});}else{return _0x4a08aa;}})[_0xd2af('0x52')](function(_0x594ad2){logger['error']('Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s',_0x594ad2);throw _0x594ad2;});}return _0x4a08aa;})[_0xd2af('0x2d')](respondWithResult(_0x1e08df,0xc9))[_0xd2af('0x52')](handleError(_0x1e08df,null));};exports['update']=function(_0x2e9328,_0x13b6c3){if(_0x2e9328[_0xd2af('0x58')]['id']){delete _0x2e9328[_0xd2af('0x58')]['id'];}return db[_0xd2af('0x37')][_0xd2af('0x56')]({'where':{'id':_0x2e9328[_0xd2af('0x54')]['id']}})[_0xd2af('0x2d')](handleEntityNotFound(_0x13b6c3,null))[_0xd2af('0x2d')](saveUpdates(_0x2e9328[_0xd2af('0x58')],null))[_0xd2af('0x2d')](respondWithResult(_0x13b6c3,null))[_0xd2af('0x52')](handleError(_0x13b6c3,null));};exports[_0xd2af('0x2e')]=function(_0x336460,_0x34d56b){return db[_0xd2af('0x37')][_0xd2af('0x56')]({'where':{'id':_0x336460[_0xd2af('0x54')]['id']}})['then'](handleEntityNotFound(_0x34d56b,null))[_0xd2af('0x2d')](removeEntity(_0x34d56b,null))['catch'](handleError(_0x34d56b,null));};exports[_0xd2af('0x5f')]=function(_0x4ab731,_0x9ca36d){return db['CmList'][_0xd2af('0x5f')]()[_0xd2af('0x2d')](respondWithResult(_0x9ca36d,null))[_0xd2af('0x52')](handleError(_0x9ca36d,null));};exports[_0xd2af('0x60')]=function(_0x1cf4f7,_0x37951c,_0x3b8db7){if(_0x1cf4f7[_0xd2af('0x58')]['id']){delete _0x1cf4f7[_0xd2af('0x58')]['id'];}return db[_0xd2af('0x37')][_0xd2af('0x56')]({'where':{'id':_0x1cf4f7['params']['id']}})[_0xd2af('0x2d')](handleEntityNotFound(_0x37951c,null))[_0xd2af('0x2d')](function(_0x342afd){if(_0x342afd){_0x1cf4f7[_0xd2af('0x58')][_0xd2af('0x61')]=_0x342afd['id'];return db[_0xd2af('0x62')]['create'](_0x1cf4f7[_0xd2af('0x58')]);}})[_0xd2af('0x2d')](respondWithResult(_0x37951c,null))[_0xd2af('0x52')](handleError(_0x37951c,null));};exports[_0xd2af('0x63')]=function(_0x31e3df,_0x10cb4d,_0x188e16){var _0x217a74={'raw':![],'where':{}};var _0x33401f={};var _0x4f55e7={'count':0x0,'rows':[]};return db[_0xd2af('0x37')]['findOne']({'where':{'id':_0x31e3df[_0xd2af('0x54')]['id']}})['then'](handleEntityNotFound(_0x10cb4d,null))['then'](function(_0x3c9f8b){if(_0x3c9f8b){_0x33401f['model']=_[_0xd2af('0x3c')](db[_0xd2af('0x62')][_0xd2af('0x55')]);_0x33401f['query']=_['keys'](_0x31e3df[_0xd2af('0x40')]);_0x33401f[_0xd2af('0x3d')]=_[_0xd2af('0x3e')](_0x33401f['model'],_0x33401f['query']);_0x217a74[_0xd2af('0x41')]=_['intersection'](_0x33401f[_0xd2af('0x3f')],qs['fields'](_0x31e3df['query']['fields']));_0x217a74[_0xd2af('0x41')]=_0x217a74[_0xd2af('0x41')][_0xd2af('0x43')]?_0x217a74['attributes']:_0x33401f[_0xd2af('0x3f')];if(!_0x31e3df[_0xd2af('0x40')]['hasOwnProperty'](_0xd2af('0x45'))){_0x217a74['limit']=qs[_0xd2af('0x26')](_0x31e3df[_0xd2af('0x40')][_0xd2af('0x26')]);_0x217a74[_0xd2af('0x25')]=qs['offset'](_0x31e3df[_0xd2af('0x40')][_0xd2af('0x25')]);}_0x217a74[_0xd2af('0x46')]=qs[_0xd2af('0x47')](_0x31e3df[_0xd2af('0x40')][_0xd2af('0x47')]);_0x217a74['where']=qs['filters'](_[_0xd2af('0x49')](_0x31e3df[_0xd2af('0x40')],_0x33401f[_0xd2af('0x3d')]));_0x217a74['where']['ListId']=_0x3c9f8b['id'];if(_0x31e3df[_0xd2af('0x40')]['filter']){_0x217a74[_0xd2af('0x48')]=_[_0xd2af('0x4b')](_0x217a74['where'],{'$or':_[_0xd2af('0x3b')](_0x217a74[_0xd2af('0x41')],function(_0x50f3d1){var _0x1109db={};_0x1109db[_0x50f3d1]={'$like':'%'+_0x31e3df['query']['filter']+'%'};return _0x1109db;})});}_0x217a74=_[_0xd2af('0x4b')]({},_0x217a74,_0x31e3df[_0xd2af('0x4d')]);return db['Disposition'][_0xd2af('0x4e')]({'where':_0x217a74['where']})['then'](function(_0x2f534b){_0x4f55e7[_0xd2af('0x4e')]=_0x2f534b;if(_0x31e3df[_0xd2af('0x40')][_0xd2af('0x4f')]){_0x217a74[_0xd2af('0x50')]=[{'all':!![]}];}return db['Disposition'][_0xd2af('0x64')](_0x217a74);})[_0xd2af('0x2d')](function(_0x4ab30f){_0x4f55e7['rows']=_0x4ab30f;return _0x4f55e7;});}})['then'](respondWithFilteredResult(_0x10cb4d,_0x217a74))[_0xd2af('0x52')](handleError(_0x10cb4d,null));};exports['removeDispositions']=function(_0x2eab4c,_0x4c2adb,_0x4d9061){return db['CmList'][_0xd2af('0x56')]({'where':{'id':_0x2eab4c[_0xd2af('0x54')]['id']}})[_0xd2af('0x2d')](handleEntityNotFound(_0x4c2adb,null))['then'](function(_0x4ee0fb){if(_0x4ee0fb){return _0x4ee0fb[_0xd2af('0x65')](_0x2eab4c[_0xd2af('0x40')][_0xd2af('0x66')]);}})[_0xd2af('0x2d')](respondWithStatusCode(_0x4c2adb,null))['catch'](handleError(_0x4c2adb,null));};exports['addContacts']=function(_0x584511,_0x68e241,_0x27299c){return db[_0xd2af('0x37')][_0xd2af('0x56')]({'where':{'id':_0x584511[_0xd2af('0x54')]['id']}})[_0xd2af('0x2d')](handleEntityNotFound(_0x68e241,null))[_0xd2af('0x2d')](function(_0x2d0ee7){if(_0x2d0ee7){var _0x5496e1=[];var _0xae333d={'success':[],'errors':[]};return db[_0xd2af('0x67')][_0xd2af('0x5f')]()[_0xd2af('0x2d')](function(_0x1b5491){if(_0x584511[_0xd2af('0x58')][_0xd2af('0x68')]&&_['isArray'](_0x584511['body'][_0xd2af('0x68')])){if(_0x584511[_0xd2af('0x58')][_0xd2af('0x68')][_0xd2af('0x43')]){_0x584511[_0xd2af('0x58')][_0xd2af('0x68')]=_0x584511[_0xd2af('0x58')][_0xd2af('0x68')]['join'](';')+';';}else{_0x584511[_0xd2af('0x58')][_0xd2af('0x68')]=null;}}else{_0x584511['body'][_0xd2af('0x68')]=null;}if(_0x584511['body']&&_[_0xd2af('0x69')](_0x584511[_0xd2af('0x58')])){for(var _0xd7b28c=0x0;_0xd7b28c<_0x584511[_0xd2af('0x58')]['length'];_0xd7b28c+=0x1){_0x584511[_0xd2af('0x58')][_0xd7b28c][_0xd2af('0x61')]=_0x584511[_0xd2af('0x54')]['id'];_0x5496e1[_0xd2af('0x6a')](_0x584511[_0xd2af('0x58')][_0xd7b28c]);}return BPromise[_0xd2af('0x6b')](_0x5496e1,function(_0x45f20c){return db[_0xd2af('0x67')][_0xd2af('0x57')](_[_0xd2af('0x6c')](_0x45f20c,[_0xd2af('0x66'),'id'])||{},{'fields':_[_0xd2af('0x3c')](_0x1b5491),'raw':!![]})['then'](function(_0x4d112d){_0xae333d[_0xd2af('0x6d')][_0xd2af('0x6a')](_0x4d112d[_0xd2af('0x6e')]);})['catch'](function(_0x48a042){_0xae333d['errors'][_0xd2af('0x6a')]({'data':_0x45f20c,'error':_0x48a042[_0xd2af('0x6f')]});});})[_0xd2af('0x2d')](function(_0x2af440){return _0xae333d;})['catch'](function(_0x593eb6){return _0x593eb6;});}else{_0x68e241['status'](0x190)[_0xd2af('0x24')]({'message':_0xd2af('0x70')});}});}})[_0xd2af('0x2d')](respondWithResult(_0x68e241,null))['catch'](handleError(_0x68e241,null));};exports[_0xd2af('0x71')]=function(_0x26424d,_0x181bee,_0x161996){var _0x81954c;return db[_0xd2af('0x37')][_0xd2af('0x56')]({'where':{'id':_0x26424d['params']['id']},'include':[{'model':db[_0xd2af('0x72')],'as':_0xd2af('0x73')}]})[_0xd2af('0x2d')](handleEntityNotFound(_0x181bee,null))[_0xd2af('0x2d')](function(_0x170307){if(_0x170307){_0x81954c=_0x170307;return db[_0xd2af('0x67')]['rawAttributes'];}})['then'](function(_0x59013b){if(_0x59013b){var _0x3ec65b={};var _0x4bbc11={};_0x4bbc11[_0xd2af('0x3f')]=_[_0xd2af('0x74')](_[_0xd2af('0x3c')](_0x59013b),_['map'](_0x81954c[_0xd2af('0x73')],function(_0x2669fe){return util[_0xd2af('0x75')](_0xd2af('0x76'),_0x2669fe['id']);}));_0x4bbc11['query']=_['keys'](_0x26424d['query']);_0x4bbc11[_0xd2af('0x3d')]=_[_0xd2af('0x3e')](_0x4bbc11[_0xd2af('0x3f')],_0x4bbc11[_0xd2af('0x40')]);_0x3ec65b[_0xd2af('0x41')]=_[_0xd2af('0x3e')](_0x4bbc11[_0xd2af('0x3f')],qs['fields'](_0x26424d[_0xd2af('0x40')][_0xd2af('0x42')]));_0x3ec65b[_0xd2af('0x41')]=_0x3ec65b[_0xd2af('0x41')][_0xd2af('0x43')]?_0x3ec65b[_0xd2af('0x41')]:_0x4bbc11[_0xd2af('0x3f')];if(!_0x26424d[_0xd2af('0x40')][_0xd2af('0x44')](_0xd2af('0x45'))){_0x3ec65b[_0xd2af('0x26')]=qs[_0xd2af('0x26')](_0x26424d['query'][_0xd2af('0x26')]);_0x3ec65b[_0xd2af('0x25')]=qs[_0xd2af('0x25')](_0x26424d['query'][_0xd2af('0x25')]);}_0x3ec65b['order']=qs[_0xd2af('0x47')](_0x26424d['query'][_0xd2af('0x47')]);_0x3ec65b[_0xd2af('0x48')]=qs[_0xd2af('0x3d')](_[_0xd2af('0x49')](_0x26424d[_0xd2af('0x40')],_0x4bbc11[_0xd2af('0x3d')]));_0x3ec65b['raw']=!![];if(_0x26424d[_0xd2af('0x40')][_0xd2af('0x4a')]){_0x3ec65b['where']=_[_0xd2af('0x4b')](_0x3ec65b[_0xd2af('0x48')],{'$or':_[_0xd2af('0x3b')](_0x3ec65b[_0xd2af('0x41')],function(_0x3f209a){var _0x2c3a51={};_0x2c3a51[_0x3f209a]={'$like':'%'+_0x26424d[_0xd2af('0x40')][_0xd2af('0x4a')]+'%'};return _0x2c3a51;})});}_0x3ec65b=_[_0xd2af('0x4b')]({},_0x3ec65b,_0x26424d[_0xd2af('0x4d')]);return _0x81954c[_0xd2af('0x71')](_0x3ec65b);}})[_0xd2af('0x2d')](respondWithResult(_0x181bee,null))[_0xd2af('0x52')](handleError(_0x181bee,null));};exports[_0xd2af('0x77')]=function(_0x2c4d7b,_0x4ad95b,_0x272024){var _0x1b650e;return db[_0xd2af('0x37')][_0xd2af('0x56')]({'where':{'id':_0x2c4d7b['params']['id']},'include':[{'model':db['CmCustomField'],'as':_0xd2af('0x73')}]})['then'](handleEntityNotFound(_0x4ad95b,null))[_0xd2af('0x2d')](function(_0x3d9672){if(_0x3d9672){_0x1b650e=_0x3d9672;return db['CmContact'][_0xd2af('0x55')];}})[_0xd2af('0x2d')](function(_0x3845c5){if(_0x3845c5){var _0x4ecf7c={};var _0x10555f={};_0x10555f['model']=_[_0xd2af('0x74')](_[_0xd2af('0x3c')](_0x3845c5),_['map'](_0x1b650e[_0xd2af('0x73')],function(_0x1f7a3c){return util['format'](_0xd2af('0x76'),_0x1f7a3c['id']);}));_0x10555f[_0xd2af('0x40')]=_['keys'](_0x2c4d7b['query']);_0x10555f['filters']=_[_0xd2af('0x3e')](_0x10555f[_0xd2af('0x3f')],_0x10555f['query']);_0x4ecf7c[_0xd2af('0x41')]=_[_0xd2af('0x3e')](_0x10555f[_0xd2af('0x3f')],qs[_0xd2af('0x42')](_0x2c4d7b[_0xd2af('0x40')][_0xd2af('0x42')]));_0x4ecf7c[_0xd2af('0x41')]=_0x4ecf7c[_0xd2af('0x41')][_0xd2af('0x43')]?_0x4ecf7c[_0xd2af('0x41')]:_0x10555f[_0xd2af('0x3f')];if(!_0x2c4d7b['query']['hasOwnProperty']('nolimit')){_0x4ecf7c['limit']=qs[_0xd2af('0x26')](_0x2c4d7b[_0xd2af('0x40')][_0xd2af('0x26')]);_0x4ecf7c['offset']=qs[_0xd2af('0x25')](_0x2c4d7b[_0xd2af('0x40')][_0xd2af('0x25')]);}_0x4ecf7c[_0xd2af('0x46')]=qs[_0xd2af('0x47')](_0x2c4d7b[_0xd2af('0x40')]['sort']);_0x4ecf7c[_0xd2af('0x48')]=qs[_0xd2af('0x3d')](_[_0xd2af('0x49')](_0x2c4d7b[_0xd2af('0x40')],_0x10555f['filters']));_0x4ecf7c[_0xd2af('0x78')]=!![];if(_0x2c4d7b['query'][_0xd2af('0x4a')]){_0x4ecf7c[_0xd2af('0x48')]=_[_0xd2af('0x4b')](_0x4ecf7c['where'],{'$or':_['map'](_0x4ecf7c['attributes'],function(_0x1a1180){var _0x5a42c8={};_0x5a42c8[_0x1a1180]={'$like':'%'+_0x2c4d7b[_0xd2af('0x40')][_0xd2af('0x4a')]+'%'};return _0x5a42c8;})});}_0x4ecf7c=_[_0xd2af('0x4b')]({},_0x4ecf7c,_0x2c4d7b[_0xd2af('0x4d')]);return _0x1b650e[_0xd2af('0x71')](_0x4ecf7c);}})['then'](function(_0x2ffad1){if(!_['isEmpty'](_0x2ffad1)){var _0x159af9=toCsv(_0x2ffad1);var _0x331c30=Date['now']();fs['writeFileSync'](util[_0xd2af('0x75')]('/tmp/list_%d_%s.csv',_0x1b650e['id'],_0x331c30),_0x159af9);_0x4ad95b[_0xd2af('0x79')](_0xd2af('0x7a'),_0xd2af('0x7b')+util[_0xd2af('0x75')]('list_%d_%s.csv',_0x1b650e['id'],_0x331c30));_0x4ad95b[_0xd2af('0x79')](_0xd2af('0x7c'),'text/csv');return _0x4ad95b[_0xd2af('0x7d')](util[_0xd2af('0x75')]('/tmp/list_%d_%s.csv',_0x1b650e['id'],_0x331c30));}else{return _0x4ad95b['sendStatus'](0xcc);}})[_0xd2af('0x52')](handleError(_0x4ad95b,null));};exports[_0xd2af('0x7e')]=function(_0x363182,_0x47c7ca,_0x25f263){var _0x93bf81;delete _0x363182[_0xd2af('0x58')]['id'];return db[_0xd2af('0x37')][_0xd2af('0x7f')]({'where':{'id':_0x363182[_0xd2af('0x54')]['id']}})[_0xd2af('0x2d')](handleEntityNotFound(_0x47c7ca,null))[_0xd2af('0x2d')](function(_0x419864){if(_0x419864){return db[_0xd2af('0x80')]['transaction'](function(_0x35223a){return db[_0xd2af('0x72')][_0xd2af('0x57')](_0x363182[_0xd2af('0x58')],{'transaction':_0x35223a})['then'](function(_0x448a5f){_0x93bf81=_0x448a5f;return _0x419864[_0xd2af('0x81')](_0x448a5f,{'transaction':_0x35223a});})[_0xd2af('0x2d')](function(){var _0x2aa8be={'type':db['Sequelize']['TEXT'],'transaction':_0x35223a};switch(_0x363182[_0xd2af('0x58')][_0xd2af('0x39')]){case _0xd2af('0x82'):_0x2aa8be[_0xd2af('0x39')]=db['Sequelize'][_0xd2af('0x83')];break;case _0xd2af('0x84'):_0x2aa8be['type']=db[_0xd2af('0x85')]['INTEGER'];break;case'switch':_0x2aa8be['type']=db[_0xd2af('0x85')][_0xd2af('0x86')];_0x2aa8be['defaultValue']=![];break;default:}return db[_0xd2af('0x80')][_0xd2af('0x87')]['addColumn'](_0xd2af('0x88'),util['format'](_0xd2af('0x89'),_0x93bf81['id']),_0x2aa8be);})[_0xd2af('0x2d')](function(){return _0x93bf81;});});}})[_0xd2af('0x2d')](respondWithResult(_0x47c7ca,null))['catch'](handleError(_0x47c7ca,null));};exports[_0xd2af('0x8a')]=function(_0x19265d,_0x278267,_0x4a7dc3){var _0xa3535b={};var _0x29cfa8={};var _0x47eaad;var _0x2df9f2;return db[_0xd2af('0x37')][_0xd2af('0x7f')]({'where':{'id':_0x19265d[_0xd2af('0x54')]['id']}})[_0xd2af('0x2d')](handleEntityNotFound(_0x278267,null))[_0xd2af('0x2d')](function(_0x58c680){if(_0x58c680){_0x47eaad=_0x58c680;_0x29cfa8[_0xd2af('0x3f')]=_['keys'](db[_0xd2af('0x72')]['rawAttributes']);_0x29cfa8['query']=_[_0xd2af('0x3c')](_0x19265d[_0xd2af('0x40')]);_0x29cfa8['filters']=_[_0xd2af('0x3e')](_0x29cfa8[_0xd2af('0x3f')],_0x29cfa8[_0xd2af('0x40')]);_0xa3535b['attributes']=_['intersection'](_0x29cfa8[_0xd2af('0x3f')],qs['fields'](_0x19265d[_0xd2af('0x40')][_0xd2af('0x42')]));_0xa3535b['attributes']=_0xa3535b['attributes'][_0xd2af('0x43')]?_0xa3535b[_0xd2af('0x41')]:_0x29cfa8[_0xd2af('0x3f')];_0xa3535b[_0xd2af('0x46')]=qs[_0xd2af('0x47')](_0x19265d[_0xd2af('0x40')][_0xd2af('0x47')]);_0xa3535b[_0xd2af('0x48')]=qs['filters'](_[_0xd2af('0x49')](_0x19265d[_0xd2af('0x40')],_0x29cfa8[_0xd2af('0x3d')]));_0xa3535b[_0xd2af('0x48')]=_[_0xd2af('0x4b')](_0xa3535b[_0xd2af('0x48')],{'$or':[{'ListId':_0x58c680['id']},{'ListId':null}]});if(_0x19265d[_0xd2af('0x40')][_0xd2af('0x4a')]){_0xa3535b[_0xd2af('0x48')]=_[_0xd2af('0x4b')](_0xa3535b[_0xd2af('0x48')],{'$or':_[_0xd2af('0x3b')](_0xa3535b[_0xd2af('0x41')],function(_0x1fe6a4){var _0x50a0bb={};_0x50a0bb[_0x1fe6a4]={'$like':'%'+_0x19265d[_0xd2af('0x40')]['filter']+'%'};return _0x50a0bb;})});}_0xa3535b=_[_0xd2af('0x4b')]({},_0xa3535b,_0x19265d[_0xd2af('0x4d')]);return db[_0xd2af('0x72')][_0xd2af('0x8b')](_0xa3535b);}})['then'](respondWithResult(_0x278267,null))[_0xd2af('0x52')](handleError(_0x278267,null));};exports[_0xd2af('0x8c')]=function(_0xb6ba88,_0x260e55,_0x5ec20e){return db[_0xd2af('0x37')][_0xd2af('0x56')]({'where':{'id':_0xb6ba88[_0xd2af('0x54')]['id']}})[_0xd2af('0x2d')](handleEntityNotFound(_0x260e55,null))[_0xd2af('0x2d')](function(_0x4d864f){if(_0x4d864f){return _0x4d864f['addAgents'](_0xb6ba88[_0xd2af('0x58')][_0xd2af('0x66')],_[_0xd2af('0x6c')](_0xb6ba88[_0xd2af('0x58')],[_0xd2af('0x66'),'id'])||{})['spread'](function(_0x15186a){for(var _0x15d762=0x0;_0x15d762<_0xb6ba88[_0xd2af('0x58')]['ids'][_0xd2af('0x43')];_0x15d762+=0x1){socket[_0xd2af('0x8d')](_0xd2af('0x8e'),{'UserId':_0xb6ba88[_0xd2af('0x58')][_0xd2af('0x66')][_0x15d762],'CmListId':_0xb6ba88[_0xd2af('0x54')]['id']});}return _0x15186a;});}})[_0xd2af('0x2d')](respondWithResult(_0x260e55,null))[_0xd2af('0x52')](handleError(_0x260e55,null));};exports['removeAgents']=function(_0x16dce7,_0x380a1c,_0xc466c0){return db['CmList'][_0xd2af('0x56')]({'where':{'id':_0x16dce7[_0xd2af('0x54')]['id']}})[_0xd2af('0x2d')](handleEntityNotFound(_0x380a1c,null))[_0xd2af('0x2d')](function(_0x1f5f2a){if(_0x1f5f2a){return _0x1f5f2a[_0xd2af('0x8f')](_0x16dce7[_0xd2af('0x40')][_0xd2af('0x66')])[_0xd2af('0x2d')](function(){if(_['isArray'](_0x16dce7['query'][_0xd2af('0x66')])){for(var _0x48eba1=0x0;_0x48eba1<_0x16dce7[_0xd2af('0x40')]['ids'][_0xd2af('0x43')];_0x48eba1+=0x1){socket[_0xd2af('0x8d')](_0xd2af('0x90'),{'UserId':Number(_0x16dce7[_0xd2af('0x40')]['ids'][_0x48eba1]),'CmListId':Number(_0x16dce7['params']['id'])});}}else{socket[_0xd2af('0x8d')](_0xd2af('0x90'),{'UserId':Number(_0x16dce7['query'][_0xd2af('0x66')]),'CmListId':Number(_0x16dce7['params']['id'])});}});}})['then'](respondWithStatusCode(_0x380a1c,null))[_0xd2af('0x52')](handleError(_0x380a1c,null));};exports[_0xd2af('0x91')]=function(_0x582745,_0x287686,_0x56a1eb){var _0x135e92={};var _0x1eeb8e={};var _0x40c28a;var _0x4cbe39;return db['CmList'][_0xd2af('0x7f')]({'where':{'id':_0x582745['params']['id']}})[_0xd2af('0x2d')](handleEntityNotFound(_0x287686,null))[_0xd2af('0x2d')](function(_0x782d9b){if(_0x782d9b){_0x40c28a=_0x782d9b;_0x1eeb8e['model']=_[_0xd2af('0x3c')](db[_0xd2af('0x92')]['rawAttributes']);_0x1eeb8e[_0xd2af('0x40')]=_[_0xd2af('0x3c')](_0x582745[_0xd2af('0x40')]);_0x1eeb8e[_0xd2af('0x3d')]=_[_0xd2af('0x3e')](_0x1eeb8e[_0xd2af('0x3f')],_0x1eeb8e[_0xd2af('0x40')]);_0x135e92[_0xd2af('0x41')]=_['intersection'](_0x1eeb8e['model'],qs[_0xd2af('0x42')](_0x582745['query'][_0xd2af('0x42')]));_0x135e92[_0xd2af('0x41')]=_0x135e92[_0xd2af('0x41')][_0xd2af('0x43')]?_0x135e92[_0xd2af('0x41')]:_0x1eeb8e[_0xd2af('0x3f')];_0x135e92[_0xd2af('0x46')]=qs[_0xd2af('0x47')](_0x582745[_0xd2af('0x40')][_0xd2af('0x47')]);_0x135e92[_0xd2af('0x48')]=qs[_0xd2af('0x3d')](_[_0xd2af('0x49')](_0x582745[_0xd2af('0x40')],_0x1eeb8e[_0xd2af('0x3d')]));if(_0x582745['query'][_0xd2af('0x4a')]){_0x135e92['where']=_['merge'](_0x135e92[_0xd2af('0x48')],{'$or':_[_0xd2af('0x3b')](_0x135e92[_0xd2af('0x41')],function(_0x5dd695){var _0x318ee7={};_0x318ee7[_0x5dd695]={'$like':'%'+_0x582745['query'][_0xd2af('0x4a')]+'%'};return _0x318ee7;})});}_0x135e92=_[_0xd2af('0x4b')]({},_0x135e92,_0x582745[_0xd2af('0x4d')]);return _0x40c28a[_0xd2af('0x91')](_0x135e92);}})[_0xd2af('0x2d')](function(_0x1afc74){if(_0x1afc74){_0x4cbe39=_0x1afc74['length'];if(!_0x582745['query'][_0xd2af('0x44')](_0xd2af('0x45'))){_0x135e92[_0xd2af('0x26')]=qs['limit'](_0x582745['query'][_0xd2af('0x26')]);_0x135e92[_0xd2af('0x25')]=qs[_0xd2af('0x25')](_0x582745[_0xd2af('0x40')][_0xd2af('0x25')]);}return _0x40c28a['getAgents'](_0x135e92);}})[_0xd2af('0x2d')](function(_0x32338c){if(_0x32338c){return _0x32338c?{'count':_0x4cbe39,'rows':_0x32338c}:null;}})[_0xd2af('0x2d')](respondWithResult(_0x287686,null))[_0xd2af('0x52')](handleError(_0x287686,null));};