8950171461391a6ff0363b10c30bc0da584a7535
[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 _0x3a1b=['now','writeFileSync','format','/tmp/list_%d_%s.csv','setHeader','Content-disposition','list_%d_%s.csv','Content-type','addCustomField','findOne','transaction','addCustomFields','Sequelize','TEXT','text','number','INTEGER','defaultValue','sequelize','addColumn','cm_contacts','cf_%s','getCustomFields','findAndCountAll','addAgents','spread','emit','userCmList:save','removeAgents','userCmList:remove','getAgents','User','html-pdf','eml-format','fast-json-patch','request-promise','moment','bluebird','util','path','sox','to-csv','ejs','squel','crypto','jsforce','desk.js','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','../../config/environment','defaults','redis','socket.io-emitter','register','sendStatus','status','end','count','offset','limit','set','json','apply','reject','save','update','then','destroy','get','Lists','UserProfileResource','stack','name','send','map','CmList','rawAttributes','type','key','model','keys','filters','intersection','query','attributes','fields','nolimit','order','sort','where','pick','filter','merge','VIRTUAL','options','includeAll','rows','catch','show','params','length','include','find','create','body','user','role','UserProfileSection','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','addDisposition','Disposition','getDispositions','hasOwnProperty','ListId','findAll','ids','addContacts','describe','isArray','tags','join','push','each','CmContact','omit','success','dataValues','errors','message','Malformed\x20request\x20syntax','getContacts','CmCustomField','CustomFields','concat','cf_%d','raw','isEmpty'];(function(_0x5ebc49,_0x47774c){var _0x53f33c=function(_0x2990b4){while(--_0x2990b4){_0x5ebc49['push'](_0x5ebc49['shift']());}};_0x53f33c(++_0x47774c);}(_0x3a1b,0xb0));var _0xb3a1=function(_0x53ccf2,_0x13cb67){_0x53ccf2=_0x53ccf2-0x0;var _0x5a2964=_0x3a1b[_0x53ccf2];return _0x5a2964;};'use strict';var pdf=require(_0xb3a1('0x0'));var emlformat=require(_0xb3a1('0x1'));var rimraf=require('rimraf');var zipdir=require('zip-dir');var jsonpatch=require(_0xb3a1('0x2'));var rp=require(_0xb3a1('0x3'));var moment=require(_0xb3a1('0x4'));var BPromise=require(_0xb3a1('0x5'));var Mustache=require('mustache');var util=require(_0xb3a1('0x6'));var path=require(_0xb3a1('0x7'));var sox=require(_0xb3a1('0x8'));var csv=require(_0xb3a1('0x9'));var ejs=require(_0xb3a1('0xa'));var fs=require('fs');var _=require('lodash');var squel=require(_0xb3a1('0xb'));var crypto=require(_0xb3a1('0xc'));var jsforce=require(_0xb3a1('0xd'));var deskjs=require(_0xb3a1('0xe'));var toCsv=require(_0xb3a1('0x9'));var querystring=require(_0xb3a1('0xf'));var Papa=require(_0xb3a1('0x10'));var Redis=require('ioredis');var authService=require(_0xb3a1('0x11'));var qs=require(_0xb3a1('0x12'));var as=require(_0xb3a1('0x13'));var hardwareService=require('../../config/license/hardware');var logger=require(_0xb3a1('0x14'))(_0xb3a1('0x15'));var utils=require('../../config/utils');var config=require(_0xb3a1('0x16'));var db=require('../../mysqldb')['db'];config['redis']=_[_0xb3a1('0x17')](config[_0xb3a1('0x18')],{'host':'localhost','port':0x18eb});var socket=require(_0xb3a1('0x19'))(new Redis(config[_0xb3a1('0x18')]));require('./cmList.socket')[_0xb3a1('0x1a')](socket);function respondWithStatusCode(_0x3fbe36,_0x10bc80){_0x10bc80=_0x10bc80||0xcc;return function(_0xa80c1c){if(_0xa80c1c){return _0x3fbe36[_0xb3a1('0x1b')](_0x10bc80);}return _0x3fbe36[_0xb3a1('0x1c')](_0x10bc80)[_0xb3a1('0x1d')]();};}function respondWithResult(_0x3d1ad2,_0x57fe19){_0x57fe19=_0x57fe19||0xc8;return function(_0xb57846){if(_0xb57846){return _0x3d1ad2[_0xb3a1('0x1c')](_0x57fe19)['json'](_0xb57846);}};}function respondWithFilteredResult(_0x364f50,_0x146de3){return function(_0x1ef4c8){if(_0x1ef4c8){var _0x43a976=_0x1ef4c8[_0xb3a1('0x1e')],_0x7d7ef2=_0x146de3[_0xb3a1('0x1f')],_0x4bc4fc=_0x146de3[_0xb3a1('0x1f')]+_0x146de3[_0xb3a1('0x20')],_0x365f7e;if(_0x4bc4fc>=_0x43a976){_0x4bc4fc=_0x43a976;_0x365f7e=0xc8;}else{_0x365f7e=0xce;}_0x364f50['status'](_0x365f7e);return _0x364f50[_0xb3a1('0x21')]('Content-Range',_0x7d7ef2+'-'+_0x4bc4fc+'/'+_0x43a976)[_0xb3a1('0x22')](_0x1ef4c8);}return null;};}function patchUpdates(_0xa29b41){return function(_0x1cd329){try{jsonpatch[_0xb3a1('0x23')](_0x1cd329,_0xa29b41,!![]);}catch(_0x272ee0){return BPromise[_0xb3a1('0x24')](_0x272ee0);}return _0x1cd329[_0xb3a1('0x25')]();};}function saveUpdates(_0x473983,_0x22e4cc){return function(_0x4750cb){if(_0x4750cb){return _0x4750cb[_0xb3a1('0x26')](_0x473983)[_0xb3a1('0x27')](function(_0x52927f){return _0x52927f;});}return null;};}function removeEntity(_0x2b6827,_0x46b684){return function(_0x1e5ac1){if(_0x1e5ac1){return _0x1e5ac1[_0xb3a1('0x28')]()[_0xb3a1('0x27')](function(){var _0x536fd5=_0x1e5ac1[_0xb3a1('0x29')]({'plain':!![]});var _0x59107a=_0xb3a1('0x2a');return db[_0xb3a1('0x2b')]['destroy']({'where':{'type':_0x59107a,'resourceId':_0x536fd5['id']}})[_0xb3a1('0x27')](function(){return _0x1e5ac1;});})['then'](function(){_0x2b6827[_0xb3a1('0x1c')](0xcc)[_0xb3a1('0x1d')]();});}};}function handleEntityNotFound(_0x14865e,_0x511038){return function(_0x4f2282){if(!_0x4f2282){_0x14865e[_0xb3a1('0x1b')](0x194);}return _0x4f2282;};}function handleError(_0x4f0979,_0x5bcb03){_0x5bcb03=_0x5bcb03||0x1f4;return function(_0x22b975){logger['error'](_0x22b975[_0xb3a1('0x2c')]);if(_0x22b975['name']){delete _0x22b975[_0xb3a1('0x2d')];}_0x4f0979['status'](_0x5bcb03)[_0xb3a1('0x2e')](_0x22b975);};}exports['index']=function(_0x4c900e,_0x3c6a65){var _0x13a809={},_0x3d5289={},_0x4566ac={'count':0x0,'rows':[]};var _0x11a6ff=_[_0xb3a1('0x2f')](db[_0xb3a1('0x30')][_0xb3a1('0x31')],function(_0x52a700){return{'name':_0x52a700['fieldName'],'type':_0x52a700[_0xb3a1('0x32')][_0xb3a1('0x33')]};});_0x3d5289[_0xb3a1('0x34')]=_[_0xb3a1('0x2f')](_0x11a6ff,_0xb3a1('0x2d'));_0x3d5289['query']=_[_0xb3a1('0x35')](_0x4c900e['query']);_0x3d5289[_0xb3a1('0x36')]=_[_0xb3a1('0x37')](_0x3d5289[_0xb3a1('0x34')],_0x3d5289[_0xb3a1('0x38')]);_0x13a809[_0xb3a1('0x39')]=_[_0xb3a1('0x37')](_0x3d5289[_0xb3a1('0x34')],qs['fields'](_0x4c900e['query'][_0xb3a1('0x3a')]));_0x13a809[_0xb3a1('0x39')]=_0x13a809[_0xb3a1('0x39')]['length']?_0x13a809['attributes']:_0x3d5289[_0xb3a1('0x34')];if(!_0x4c900e['query']['hasOwnProperty'](_0xb3a1('0x3b'))){_0x13a809[_0xb3a1('0x20')]=qs[_0xb3a1('0x20')](_0x4c900e[_0xb3a1('0x38')]['limit']);_0x13a809[_0xb3a1('0x1f')]=qs[_0xb3a1('0x1f')](_0x4c900e['query'][_0xb3a1('0x1f')]);}_0x13a809[_0xb3a1('0x3c')]=qs[_0xb3a1('0x3d')](_0x4c900e[_0xb3a1('0x38')][_0xb3a1('0x3d')]);_0x13a809[_0xb3a1('0x3e')]=qs['filters'](_[_0xb3a1('0x3f')](_0x4c900e[_0xb3a1('0x38')],_0x3d5289[_0xb3a1('0x36')]),_0x11a6ff);if(_0x4c900e[_0xb3a1('0x38')][_0xb3a1('0x40')]){_0x13a809[_0xb3a1('0x3e')]=_[_0xb3a1('0x41')](_0x13a809['where'],{'$or':_['map'](_0x11a6ff,function(_0x39d304){if(_0x39d304[_0xb3a1('0x32')]!==_0xb3a1('0x42')){var _0x5a4f05={};_0x5a4f05[_0x39d304[_0xb3a1('0x2d')]]={'$like':'%'+_0x4c900e['query']['filter']+'%'};return _0x5a4f05;}})});}_0x13a809=_[_0xb3a1('0x41')]({},_0x13a809,_0x4c900e[_0xb3a1('0x43')]);var _0x5e8ae9={'where':_0x13a809[_0xb3a1('0x3e')]};return db[_0xb3a1('0x30')][_0xb3a1('0x1e')](_0x5e8ae9)[_0xb3a1('0x27')](function(_0x29c439){_0x4566ac['count']=_0x29c439;if(_0x4c900e[_0xb3a1('0x38')][_0xb3a1('0x44')]){_0x13a809['include']=[{'all':!![]}];}return db['CmList']['findAll'](_0x13a809);})[_0xb3a1('0x27')](function(_0x464081){_0x4566ac[_0xb3a1('0x45')]=_0x464081;return _0x4566ac;})[_0xb3a1('0x27')](respondWithFilteredResult(_0x3c6a65,_0x13a809))[_0xb3a1('0x46')](handleError(_0x3c6a65,null));};exports[_0xb3a1('0x47')]=function(_0x1093d2,_0x4419bf){var _0x55e3a7={'raw':![],'where':{'id':_0x1093d2[_0xb3a1('0x48')]['id']}},_0x149ed6={};_0x149ed6['model']=_[_0xb3a1('0x35')](db[_0xb3a1('0x30')][_0xb3a1('0x31')]);_0x149ed6['query']=_[_0xb3a1('0x35')](_0x1093d2[_0xb3a1('0x38')]);_0x149ed6['filters']=_[_0xb3a1('0x37')](_0x149ed6[_0xb3a1('0x34')],_0x149ed6[_0xb3a1('0x38')]);_0x55e3a7[_0xb3a1('0x39')]=_[_0xb3a1('0x37')](_0x149ed6[_0xb3a1('0x34')],qs[_0xb3a1('0x3a')](_0x1093d2[_0xb3a1('0x38')][_0xb3a1('0x3a')]));_0x55e3a7[_0xb3a1('0x39')]=_0x55e3a7['attributes'][_0xb3a1('0x49')]?_0x55e3a7[_0xb3a1('0x39')]:_0x149ed6[_0xb3a1('0x34')];if(_0x1093d2[_0xb3a1('0x38')][_0xb3a1('0x44')]){_0x55e3a7[_0xb3a1('0x4a')]=[{'all':!![]}];}_0x55e3a7=_[_0xb3a1('0x41')]({},_0x55e3a7,_0x1093d2[_0xb3a1('0x43')]);return db[_0xb3a1('0x30')][_0xb3a1('0x4b')](_0x55e3a7)['then'](handleEntityNotFound(_0x4419bf,null))['then'](respondWithResult(_0x4419bf,null))[_0xb3a1('0x46')](handleError(_0x4419bf,null));};exports[_0xb3a1('0x4c')]=function(_0x24327e,_0x3fabf0){return db[_0xb3a1('0x30')][_0xb3a1('0x4c')](_0x24327e[_0xb3a1('0x4d')],{})[_0xb3a1('0x27')](function(_0x2d2f9a){var _0x4da618=_0x24327e[_0xb3a1('0x4e')][_0xb3a1('0x29')]({'plain':!![]});if(!_0x4da618)throw new Error('Unable\x20to\x20retrieve\x20the\x20current\x20user');if(_0x4da618[_0xb3a1('0x4f')]==='user'){var _0x324bb2=_0x2d2f9a[_0xb3a1('0x29')]({'plain':!![]});var _0x15d3de=_0xb3a1('0x2a');return db[_0xb3a1('0x50')][_0xb3a1('0x4b')]({'where':{'name':_0x15d3de,'userProfileId':_0x4da618[_0xb3a1('0x51')]},'raw':!![]})[_0xb3a1('0x27')](function(_0x175bee){if(_0x175bee&&_0x175bee[_0xb3a1('0x52')]===0x0){return db[_0xb3a1('0x2b')][_0xb3a1('0x4c')]({'name':_0x324bb2[_0xb3a1('0x2d')],'resourceId':_0x324bb2['id'],'type':_0x175bee[_0xb3a1('0x2d')],'sectionId':_0x175bee['id']},{})[_0xb3a1('0x27')](function(){return _0x2d2f9a;});}else{return _0x2d2f9a;}})[_0xb3a1('0x46')](function(_0x21ad84){logger['error'](_0xb3a1('0x53'),_0x21ad84);throw _0x21ad84;});}return _0x2d2f9a;})[_0xb3a1('0x27')](respondWithResult(_0x3fabf0,0xc9))[_0xb3a1('0x46')](handleError(_0x3fabf0,null));};exports[_0xb3a1('0x26')]=function(_0x2cafa0,_0x2a0575){if(_0x2cafa0[_0xb3a1('0x4d')]['id']){delete _0x2cafa0[_0xb3a1('0x4d')]['id'];}return db[_0xb3a1('0x30')]['find']({'where':{'id':_0x2cafa0[_0xb3a1('0x48')]['id']}})['then'](handleEntityNotFound(_0x2a0575,null))['then'](saveUpdates(_0x2cafa0[_0xb3a1('0x4d')],null))[_0xb3a1('0x27')](respondWithResult(_0x2a0575,null))[_0xb3a1('0x46')](handleError(_0x2a0575,null));};exports[_0xb3a1('0x28')]=function(_0x1379be,_0x23d290){return db[_0xb3a1('0x30')][_0xb3a1('0x4b')]({'where':{'id':_0x1379be['params']['id']}})[_0xb3a1('0x27')](handleEntityNotFound(_0x23d290,null))[_0xb3a1('0x27')](removeEntity(_0x23d290,null))[_0xb3a1('0x46')](handleError(_0x23d290,null));};exports['describe']=function(_0xdc9209,_0x2935cc){return db[_0xb3a1('0x30')]['describe']()['then'](respondWithResult(_0x2935cc,null))[_0xb3a1('0x46')](handleError(_0x2935cc,null));};exports[_0xb3a1('0x54')]=function(_0x2fe6de,_0x22286c,_0x3d618e){if(_0x2fe6de[_0xb3a1('0x4d')]['id']){delete _0x2fe6de['body']['id'];}return db['CmList'][_0xb3a1('0x4b')]({'where':{'id':_0x2fe6de[_0xb3a1('0x48')]['id']}})[_0xb3a1('0x27')](handleEntityNotFound(_0x22286c,null))['then'](function(_0x536664){if(_0x536664){_0x2fe6de[_0xb3a1('0x4d')]['ListId']=_0x536664['id'];return db[_0xb3a1('0x55')][_0xb3a1('0x4c')](_0x2fe6de[_0xb3a1('0x4d')]);}})[_0xb3a1('0x27')](respondWithResult(_0x22286c,null))[_0xb3a1('0x46')](handleError(_0x22286c,null));};exports[_0xb3a1('0x56')]=function(_0x1c361d,_0x3506a7,_0x475e76){var _0x34ab7d={'raw':![],'where':{}};var _0x5d427b={};var _0x2e5941={'count':0x0,'rows':[]};return db[_0xb3a1('0x30')]['findOne']({'where':{'id':_0x1c361d[_0xb3a1('0x48')]['id']}})[_0xb3a1('0x27')](handleEntityNotFound(_0x3506a7,null))[_0xb3a1('0x27')](function(_0x402821){if(_0x402821){_0x5d427b[_0xb3a1('0x34')]=_[_0xb3a1('0x35')](db[_0xb3a1('0x55')]['rawAttributes']);_0x5d427b[_0xb3a1('0x38')]=_[_0xb3a1('0x35')](_0x1c361d['query']);_0x5d427b[_0xb3a1('0x36')]=_[_0xb3a1('0x37')](_0x5d427b[_0xb3a1('0x34')],_0x5d427b['query']);_0x34ab7d[_0xb3a1('0x39')]=_['intersection'](_0x5d427b['model'],qs[_0xb3a1('0x3a')](_0x1c361d[_0xb3a1('0x38')][_0xb3a1('0x3a')]));_0x34ab7d[_0xb3a1('0x39')]=_0x34ab7d['attributes'][_0xb3a1('0x49')]?_0x34ab7d[_0xb3a1('0x39')]:_0x5d427b[_0xb3a1('0x34')];if(!_0x1c361d[_0xb3a1('0x38')][_0xb3a1('0x57')]('nolimit')){_0x34ab7d[_0xb3a1('0x20')]=qs[_0xb3a1('0x20')](_0x1c361d[_0xb3a1('0x38')][_0xb3a1('0x20')]);_0x34ab7d['offset']=qs[_0xb3a1('0x1f')](_0x1c361d[_0xb3a1('0x38')]['offset']);}_0x34ab7d[_0xb3a1('0x3c')]=qs[_0xb3a1('0x3d')](_0x1c361d['query']['sort']);_0x34ab7d[_0xb3a1('0x3e')]=qs[_0xb3a1('0x36')](_[_0xb3a1('0x3f')](_0x1c361d[_0xb3a1('0x38')],_0x5d427b[_0xb3a1('0x36')]));_0x34ab7d['where'][_0xb3a1('0x58')]=_0x402821['id'];if(_0x1c361d['query'][_0xb3a1('0x40')]){_0x34ab7d[_0xb3a1('0x3e')]=_[_0xb3a1('0x41')](_0x34ab7d['where'],{'$or':_['map'](_0x34ab7d[_0xb3a1('0x39')],function(_0x1ee62f){var _0x512bb3={};_0x512bb3[_0x1ee62f]={'$like':'%'+_0x1c361d['query']['filter']+'%'};return _0x512bb3;})});}_0x34ab7d=_['merge']({},_0x34ab7d,_0x1c361d['options']);return db['Disposition'][_0xb3a1('0x1e')]({'where':_0x34ab7d[_0xb3a1('0x3e')]})[_0xb3a1('0x27')](function(_0xb8c086){_0x2e5941[_0xb3a1('0x1e')]=_0xb8c086;if(_0x1c361d[_0xb3a1('0x38')]['includeAll']){_0x34ab7d[_0xb3a1('0x4a')]=[{'all':!![]}];}return db[_0xb3a1('0x55')][_0xb3a1('0x59')](_0x34ab7d);})[_0xb3a1('0x27')](function(_0x5010c9){_0x2e5941[_0xb3a1('0x45')]=_0x5010c9;return _0x2e5941;});}})[_0xb3a1('0x27')](respondWithFilteredResult(_0x3506a7,_0x34ab7d))[_0xb3a1('0x46')](handleError(_0x3506a7,null));};exports['removeDispositions']=function(_0x3f4c84,_0x57f1dd,_0xb5e33f){return db[_0xb3a1('0x30')][_0xb3a1('0x4b')]({'where':{'id':_0x3f4c84[_0xb3a1('0x48')]['id']}})['then'](handleEntityNotFound(_0x57f1dd,null))[_0xb3a1('0x27')](function(_0x406494){if(_0x406494){return _0x406494['removeDispositions'](_0x3f4c84['query'][_0xb3a1('0x5a')]);}})[_0xb3a1('0x27')](respondWithStatusCode(_0x57f1dd,null))[_0xb3a1('0x46')](handleError(_0x57f1dd,null));};exports[_0xb3a1('0x5b')]=function(_0x5a2a5d,_0x12f563,_0x3151bd){return db['CmList']['find']({'where':{'id':_0x5a2a5d[_0xb3a1('0x48')]['id']}})[_0xb3a1('0x27')](handleEntityNotFound(_0x12f563,null))['then'](function(_0x1dd15a){if(_0x1dd15a){var _0x40063a=[];var _0x4c01d2={'success':[],'errors':[]};return db['CmContact'][_0xb3a1('0x5c')]()[_0xb3a1('0x27')](function(_0x36be02){if(_0x5a2a5d['body']['tags']&&_[_0xb3a1('0x5d')](_0x5a2a5d[_0xb3a1('0x4d')][_0xb3a1('0x5e')])){if(_0x5a2a5d[_0xb3a1('0x4d')][_0xb3a1('0x5e')]['length']){_0x5a2a5d[_0xb3a1('0x4d')]['tags']=_0x5a2a5d[_0xb3a1('0x4d')]['tags'][_0xb3a1('0x5f')](';')+';';}else{_0x5a2a5d[_0xb3a1('0x4d')][_0xb3a1('0x5e')]=null;}}else{_0x5a2a5d[_0xb3a1('0x4d')]['tags']=null;}if(_0x5a2a5d[_0xb3a1('0x4d')]&&_['isArray'](_0x5a2a5d[_0xb3a1('0x4d')])){for(var _0x580b87=0x0;_0x580b87<_0x5a2a5d['body']['length'];_0x580b87+=0x1){_0x5a2a5d[_0xb3a1('0x4d')][_0x580b87][_0xb3a1('0x58')]=_0x5a2a5d['params']['id'];_0x40063a[_0xb3a1('0x60')](_0x5a2a5d['body'][_0x580b87]);}return BPromise[_0xb3a1('0x61')](_0x40063a,function(_0x123838){return db[_0xb3a1('0x62')]['create'](_[_0xb3a1('0x63')](_0x123838,[_0xb3a1('0x5a'),'id'])||{},{'fields':_[_0xb3a1('0x35')](_0x36be02),'raw':!![]})[_0xb3a1('0x27')](function(_0x30cfb7){_0x4c01d2[_0xb3a1('0x64')][_0xb3a1('0x60')](_0x30cfb7[_0xb3a1('0x65')]);})['catch'](function(_0x20aa1b){_0x4c01d2[_0xb3a1('0x66')]['push']({'data':_0x123838,'error':_0x20aa1b[_0xb3a1('0x67')]});});})[_0xb3a1('0x27')](function(_0x526552){return _0x4c01d2;})[_0xb3a1('0x46')](function(_0x2801e7){return _0x2801e7;});}else{_0x12f563[_0xb3a1('0x1c')](0x190)['json']({'message':_0xb3a1('0x68')});}});}})[_0xb3a1('0x27')](respondWithResult(_0x12f563,null))['catch'](handleError(_0x12f563,null));};exports[_0xb3a1('0x69')]=function(_0x1ec671,_0x5330f2,_0x35bcde){var _0x3a9378;return db[_0xb3a1('0x30')][_0xb3a1('0x4b')]({'where':{'id':_0x1ec671['params']['id']},'include':[{'model':db[_0xb3a1('0x6a')],'as':_0xb3a1('0x6b')}]})[_0xb3a1('0x27')](handleEntityNotFound(_0x5330f2,null))['then'](function(_0x51c626){if(_0x51c626){_0x3a9378=_0x51c626;return db[_0xb3a1('0x62')][_0xb3a1('0x31')];}})[_0xb3a1('0x27')](function(_0x306a6d){if(_0x306a6d){var _0x5713d9={};var _0x393334={};_0x393334[_0xb3a1('0x34')]=_[_0xb3a1('0x6c')](_[_0xb3a1('0x35')](_0x306a6d),_['map'](_0x3a9378[_0xb3a1('0x6b')],function(_0x191f00){return util['format'](_0xb3a1('0x6d'),_0x191f00['id']);}));_0x393334[_0xb3a1('0x38')]=_[_0xb3a1('0x35')](_0x1ec671[_0xb3a1('0x38')]);_0x393334[_0xb3a1('0x36')]=_[_0xb3a1('0x37')](_0x393334['model'],_0x393334[_0xb3a1('0x38')]);_0x5713d9['attributes']=_[_0xb3a1('0x37')](_0x393334[_0xb3a1('0x34')],qs[_0xb3a1('0x3a')](_0x1ec671['query'][_0xb3a1('0x3a')]));_0x5713d9[_0xb3a1('0x39')]=_0x5713d9[_0xb3a1('0x39')][_0xb3a1('0x49')]?_0x5713d9[_0xb3a1('0x39')]:_0x393334[_0xb3a1('0x34')];if(!_0x1ec671['query'][_0xb3a1('0x57')](_0xb3a1('0x3b'))){_0x5713d9[_0xb3a1('0x20')]=qs[_0xb3a1('0x20')](_0x1ec671[_0xb3a1('0x38')][_0xb3a1('0x20')]);_0x5713d9[_0xb3a1('0x1f')]=qs[_0xb3a1('0x1f')](_0x1ec671[_0xb3a1('0x38')]['offset']);}_0x5713d9[_0xb3a1('0x3c')]=qs[_0xb3a1('0x3d')](_0x1ec671[_0xb3a1('0x38')][_0xb3a1('0x3d')]);_0x5713d9['where']=qs[_0xb3a1('0x36')](_[_0xb3a1('0x3f')](_0x1ec671[_0xb3a1('0x38')],_0x393334[_0xb3a1('0x36')]));_0x5713d9[_0xb3a1('0x6e')]=!![];if(_0x1ec671[_0xb3a1('0x38')][_0xb3a1('0x40')]){_0x5713d9[_0xb3a1('0x3e')]=_[_0xb3a1('0x41')](_0x5713d9[_0xb3a1('0x3e')],{'$or':_[_0xb3a1('0x2f')](_0x5713d9['attributes'],function(_0x5d7edc){var _0x429ff1={};_0x429ff1[_0x5d7edc]={'$like':'%'+_0x1ec671[_0xb3a1('0x38')][_0xb3a1('0x40')]+'%'};return _0x429ff1;})});}_0x5713d9=_['merge']({},_0x5713d9,_0x1ec671[_0xb3a1('0x43')]);return _0x3a9378[_0xb3a1('0x69')](_0x5713d9);}})[_0xb3a1('0x27')](respondWithResult(_0x5330f2,null))['catch'](handleError(_0x5330f2,null));};exports['getContactsCsv']=function(_0x5d55b5,_0x2a56dc,_0x12cbb9){var _0x483f3e;return db[_0xb3a1('0x30')][_0xb3a1('0x4b')]({'where':{'id':_0x5d55b5[_0xb3a1('0x48')]['id']},'include':[{'model':db[_0xb3a1('0x6a')],'as':_0xb3a1('0x6b')}]})[_0xb3a1('0x27')](handleEntityNotFound(_0x2a56dc,null))[_0xb3a1('0x27')](function(_0x4db25b){if(_0x4db25b){_0x483f3e=_0x4db25b;return db['CmContact']['rawAttributes'];}})[_0xb3a1('0x27')](function(_0x2881e4){if(_0x2881e4){var _0x42c48d={};var _0x50d638={};_0x50d638[_0xb3a1('0x34')]=_[_0xb3a1('0x6c')](_[_0xb3a1('0x35')](_0x2881e4),_[_0xb3a1('0x2f')](_0x483f3e[_0xb3a1('0x6b')],function(_0x1623ef){return util['format'](_0xb3a1('0x6d'),_0x1623ef['id']);}));_0x50d638[_0xb3a1('0x38')]=_[_0xb3a1('0x35')](_0x5d55b5['query']);_0x50d638['filters']=_[_0xb3a1('0x37')](_0x50d638[_0xb3a1('0x34')],_0x50d638[_0xb3a1('0x38')]);_0x42c48d['attributes']=_[_0xb3a1('0x37')](_0x50d638[_0xb3a1('0x34')],qs[_0xb3a1('0x3a')](_0x5d55b5[_0xb3a1('0x38')][_0xb3a1('0x3a')]));_0x42c48d[_0xb3a1('0x39')]=_0x42c48d[_0xb3a1('0x39')]['length']?_0x42c48d[_0xb3a1('0x39')]:_0x50d638[_0xb3a1('0x34')];if(!_0x5d55b5[_0xb3a1('0x38')][_0xb3a1('0x57')](_0xb3a1('0x3b'))){_0x42c48d[_0xb3a1('0x20')]=qs[_0xb3a1('0x20')](_0x5d55b5[_0xb3a1('0x38')]['limit']);_0x42c48d['offset']=qs[_0xb3a1('0x1f')](_0x5d55b5[_0xb3a1('0x38')][_0xb3a1('0x1f')]);}_0x42c48d['order']=qs[_0xb3a1('0x3d')](_0x5d55b5[_0xb3a1('0x38')][_0xb3a1('0x3d')]);_0x42c48d[_0xb3a1('0x3e')]=qs[_0xb3a1('0x36')](_[_0xb3a1('0x3f')](_0x5d55b5[_0xb3a1('0x38')],_0x50d638[_0xb3a1('0x36')]));_0x42c48d[_0xb3a1('0x6e')]=!![];if(_0x5d55b5[_0xb3a1('0x38')]['filter']){_0x42c48d[_0xb3a1('0x3e')]=_[_0xb3a1('0x41')](_0x42c48d[_0xb3a1('0x3e')],{'$or':_[_0xb3a1('0x2f')](_0x42c48d[_0xb3a1('0x39')],function(_0x4d9052){var _0x13e314={};_0x13e314[_0x4d9052]={'$like':'%'+_0x5d55b5['query'][_0xb3a1('0x40')]+'%'};return _0x13e314;})});}_0x42c48d=_[_0xb3a1('0x41')]({},_0x42c48d,_0x5d55b5[_0xb3a1('0x43')]);return _0x483f3e[_0xb3a1('0x69')](_0x42c48d);}})['then'](function(_0x5dd15d){if(!_[_0xb3a1('0x6f')](_0x5dd15d)){var _0x45f623=toCsv(_0x5dd15d);var _0xf3677a=Date[_0xb3a1('0x70')]();fs[_0xb3a1('0x71')](util[_0xb3a1('0x72')](_0xb3a1('0x73'),_0x483f3e['id'],_0xf3677a),_0x45f623);_0x2a56dc[_0xb3a1('0x74')](_0xb3a1('0x75'),'attachment;\x20filename='+util[_0xb3a1('0x72')](_0xb3a1('0x76'),_0x483f3e['id'],_0xf3677a));_0x2a56dc[_0xb3a1('0x74')](_0xb3a1('0x77'),'text/csv');return _0x2a56dc['download'](util[_0xb3a1('0x72')](_0xb3a1('0x73'),_0x483f3e['id'],_0xf3677a));}else{return _0x2a56dc[_0xb3a1('0x1b')](0xcc);}})['catch'](handleError(_0x2a56dc,null));};exports[_0xb3a1('0x78')]=function(_0x3a9bb0,_0x663d7,_0x575881){var _0x5248b7;delete _0x3a9bb0['body']['id'];return db[_0xb3a1('0x30')][_0xb3a1('0x79')]({'where':{'id':_0x3a9bb0['params']['id']}})[_0xb3a1('0x27')](handleEntityNotFound(_0x663d7,null))['then'](function(_0x1d3a48){if(_0x1d3a48){return db['sequelize'][_0xb3a1('0x7a')](function(_0x3a4f47){return db[_0xb3a1('0x6a')][_0xb3a1('0x4c')](_0x3a9bb0[_0xb3a1('0x4d')],{'transaction':_0x3a4f47})['then'](function(_0x3bcb9a){_0x5248b7=_0x3bcb9a;return _0x1d3a48[_0xb3a1('0x7b')](_0x3bcb9a,{'transaction':_0x3a4f47});})[_0xb3a1('0x27')](function(){var _0x1093ee={'type':db[_0xb3a1('0x7c')][_0xb3a1('0x7d')],'transaction':_0x3a4f47};switch(_0x3a9bb0[_0xb3a1('0x4d')][_0xb3a1('0x32')]){case _0xb3a1('0x7e'):_0x1093ee['type']=db[_0xb3a1('0x7c')]['TEXT'];break;case _0xb3a1('0x7f'):_0x1093ee['type']=db[_0xb3a1('0x7c')][_0xb3a1('0x80')];break;case'switch':_0x1093ee[_0xb3a1('0x32')]=db[_0xb3a1('0x7c')]['BOOLEAN'];_0x1093ee[_0xb3a1('0x81')]=![];break;default:}return db[_0xb3a1('0x82')]['queryInterface'][_0xb3a1('0x83')](_0xb3a1('0x84'),util[_0xb3a1('0x72')](_0xb3a1('0x85'),_0x5248b7['id']),_0x1093ee);})[_0xb3a1('0x27')](function(){return _0x5248b7;});});}})['then'](respondWithResult(_0x663d7,null))[_0xb3a1('0x46')](handleError(_0x663d7,null));};exports[_0xb3a1('0x86')]=function(_0x389c85,_0x4193d4,_0x271269){var _0x36ab99={};var _0x4a7b72={};var _0x5334ef;var _0x5f47eb;return db[_0xb3a1('0x30')][_0xb3a1('0x79')]({'where':{'id':_0x389c85[_0xb3a1('0x48')]['id']}})[_0xb3a1('0x27')](handleEntityNotFound(_0x4193d4,null))[_0xb3a1('0x27')](function(_0x365a8d){if(_0x365a8d){_0x5334ef=_0x365a8d;_0x4a7b72[_0xb3a1('0x34')]=_[_0xb3a1('0x35')](db[_0xb3a1('0x6a')][_0xb3a1('0x31')]);_0x4a7b72[_0xb3a1('0x38')]=_[_0xb3a1('0x35')](_0x389c85[_0xb3a1('0x38')]);_0x4a7b72[_0xb3a1('0x36')]=_[_0xb3a1('0x37')](_0x4a7b72['model'],_0x4a7b72['query']);_0x36ab99[_0xb3a1('0x39')]=_[_0xb3a1('0x37')](_0x4a7b72[_0xb3a1('0x34')],qs[_0xb3a1('0x3a')](_0x389c85[_0xb3a1('0x38')][_0xb3a1('0x3a')]));_0x36ab99[_0xb3a1('0x39')]=_0x36ab99['attributes'][_0xb3a1('0x49')]?_0x36ab99[_0xb3a1('0x39')]:_0x4a7b72[_0xb3a1('0x34')];_0x36ab99[_0xb3a1('0x3c')]=qs[_0xb3a1('0x3d')](_0x389c85[_0xb3a1('0x38')][_0xb3a1('0x3d')]);_0x36ab99[_0xb3a1('0x3e')]=qs[_0xb3a1('0x36')](_[_0xb3a1('0x3f')](_0x389c85[_0xb3a1('0x38')],_0x4a7b72[_0xb3a1('0x36')]));_0x36ab99[_0xb3a1('0x3e')]=_['merge'](_0x36ab99['where'],{'$or':[{'ListId':_0x365a8d['id']},{'ListId':null}]});if(_0x389c85[_0xb3a1('0x38')][_0xb3a1('0x40')]){_0x36ab99[_0xb3a1('0x3e')]=_[_0xb3a1('0x41')](_0x36ab99[_0xb3a1('0x3e')],{'$or':_[_0xb3a1('0x2f')](_0x36ab99['attributes'],function(_0x4475aa){var _0x2ea8f2={};_0x2ea8f2[_0x4475aa]={'$like':'%'+_0x389c85[_0xb3a1('0x38')]['filter']+'%'};return _0x2ea8f2;})});}_0x36ab99=_[_0xb3a1('0x41')]({},_0x36ab99,_0x389c85['options']);return db[_0xb3a1('0x6a')][_0xb3a1('0x87')](_0x36ab99);}})[_0xb3a1('0x27')](respondWithResult(_0x4193d4,null))[_0xb3a1('0x46')](handleError(_0x4193d4,null));};exports[_0xb3a1('0x88')]=function(_0x330255,_0x5ea9b5,_0x281446){return db[_0xb3a1('0x30')][_0xb3a1('0x4b')]({'where':{'id':_0x330255[_0xb3a1('0x48')]['id']}})[_0xb3a1('0x27')](handleEntityNotFound(_0x5ea9b5,null))[_0xb3a1('0x27')](function(_0x5193b0){if(_0x5193b0){return _0x5193b0[_0xb3a1('0x88')](_0x330255['body'][_0xb3a1('0x5a')],_['omit'](_0x330255[_0xb3a1('0x4d')],['ids','id'])||{})[_0xb3a1('0x89')](function(_0x106450){for(var _0x7d5519=0x0;_0x7d5519<_0x330255[_0xb3a1('0x4d')][_0xb3a1('0x5a')][_0xb3a1('0x49')];_0x7d5519+=0x1){socket[_0xb3a1('0x8a')](_0xb3a1('0x8b'),{'UserId':_0x330255['body'][_0xb3a1('0x5a')][_0x7d5519],'CmListId':_0x330255[_0xb3a1('0x48')]['id']});}return _0x106450;});}})[_0xb3a1('0x27')](respondWithResult(_0x5ea9b5,null))['catch'](handleError(_0x5ea9b5,null));};exports[_0xb3a1('0x8c')]=function(_0xb1070f,_0x38b3f0,_0x3d39b9){return db[_0xb3a1('0x30')][_0xb3a1('0x4b')]({'where':{'id':_0xb1070f[_0xb3a1('0x48')]['id']}})[_0xb3a1('0x27')](handleEntityNotFound(_0x38b3f0,null))[_0xb3a1('0x27')](function(_0xd86cf9){if(_0xd86cf9){return _0xd86cf9[_0xb3a1('0x8c')](_0xb1070f[_0xb3a1('0x38')][_0xb3a1('0x5a')])[_0xb3a1('0x27')](function(){if(_[_0xb3a1('0x5d')](_0xb1070f[_0xb3a1('0x38')]['ids'])){for(var _0x3a4041=0x0;_0x3a4041<_0xb1070f[_0xb3a1('0x38')][_0xb3a1('0x5a')][_0xb3a1('0x49')];_0x3a4041+=0x1){socket[_0xb3a1('0x8a')]('userCmList:remove',{'UserId':Number(_0xb1070f['query'][_0xb3a1('0x5a')][_0x3a4041]),'CmListId':Number(_0xb1070f[_0xb3a1('0x48')]['id'])});}}else{socket['emit'](_0xb3a1('0x8d'),{'UserId':Number(_0xb1070f[_0xb3a1('0x38')]['ids']),'CmListId':Number(_0xb1070f[_0xb3a1('0x48')]['id'])});}});}})[_0xb3a1('0x27')](respondWithStatusCode(_0x38b3f0,null))['catch'](handleError(_0x38b3f0,null));};exports[_0xb3a1('0x8e')]=function(_0x232a0e,_0x4c571f,_0xa0eaf3){var _0x29e036={};var _0x5b16e0={};var _0x87cee8;var _0x3ef253;return db['CmList'][_0xb3a1('0x79')]({'where':{'id':_0x232a0e[_0xb3a1('0x48')]['id']}})[_0xb3a1('0x27')](handleEntityNotFound(_0x4c571f,null))['then'](function(_0x5ae843){if(_0x5ae843){_0x87cee8=_0x5ae843;_0x5b16e0[_0xb3a1('0x34')]=_[_0xb3a1('0x35')](db[_0xb3a1('0x8f')]['rawAttributes']);_0x5b16e0[_0xb3a1('0x38')]=_['keys'](_0x232a0e[_0xb3a1('0x38')]);_0x5b16e0[_0xb3a1('0x36')]=_[_0xb3a1('0x37')](_0x5b16e0[_0xb3a1('0x34')],_0x5b16e0['query']);_0x29e036[_0xb3a1('0x39')]=_[_0xb3a1('0x37')](_0x5b16e0['model'],qs[_0xb3a1('0x3a')](_0x232a0e[_0xb3a1('0x38')]['fields']));_0x29e036[_0xb3a1('0x39')]=_0x29e036['attributes'][_0xb3a1('0x49')]?_0x29e036[_0xb3a1('0x39')]:_0x5b16e0[_0xb3a1('0x34')];_0x29e036[_0xb3a1('0x3c')]=qs[_0xb3a1('0x3d')](_0x232a0e[_0xb3a1('0x38')][_0xb3a1('0x3d')]);_0x29e036[_0xb3a1('0x3e')]=qs[_0xb3a1('0x36')](_[_0xb3a1('0x3f')](_0x232a0e[_0xb3a1('0x38')],_0x5b16e0['filters']));if(_0x232a0e['query'][_0xb3a1('0x40')]){_0x29e036[_0xb3a1('0x3e')]=_[_0xb3a1('0x41')](_0x29e036[_0xb3a1('0x3e')],{'$or':_[_0xb3a1('0x2f')](_0x29e036[_0xb3a1('0x39')],function(_0x22feaf){var _0x555907={};_0x555907[_0x22feaf]={'$like':'%'+_0x232a0e[_0xb3a1('0x38')]['filter']+'%'};return _0x555907;})});}_0x29e036=_[_0xb3a1('0x41')]({},_0x29e036,_0x232a0e[_0xb3a1('0x43')]);return _0x87cee8['getAgents'](_0x29e036);}})['then'](function(_0x6f7681){if(_0x6f7681){_0x3ef253=_0x6f7681[_0xb3a1('0x49')];if(!_0x232a0e[_0xb3a1('0x38')][_0xb3a1('0x57')](_0xb3a1('0x3b'))){_0x29e036[_0xb3a1('0x20')]=qs[_0xb3a1('0x20')](_0x232a0e[_0xb3a1('0x38')]['limit']);_0x29e036[_0xb3a1('0x1f')]=qs[_0xb3a1('0x1f')](_0x232a0e[_0xb3a1('0x38')][_0xb3a1('0x1f')]);}return _0x87cee8['getAgents'](_0x29e036);}})[_0xb3a1('0x27')](function(_0x392255){if(_0x392255){return _0x392255?{'count':_0x3ef253,'rows':_0x392255}:null;}})['then'](respondWithResult(_0x4c571f,null))[_0xb3a1('0x46')](handleError(_0x4c571f,null));};