Built motion from commit c738b9ac.|2.6.25
[motion2.git] / server / api / intSalesforceConfiguration / intSalesforceConfiguration.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 _0x4259=['fast-json-patch','request-promise','moment','bluebird','mustache','path','to-csv','fs-extra','lodash','crypto','jsforce','desk.js','querystring','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','status','undefined','offset','json','save','update','then','destroy','end','error','stack','name','index','map','SalesforceConfiguration','fieldName','type','key','query','keys','filters','intersection','model','fields','attributes','length','hasOwnProperty','nolimit','limit','sort','where','filter','merge','count','include','findAll','rows','catch','show','rawAttributes','includeAll','options','find','create','body','params','getFields','findOne','SalesforceField','order','pick','getSubjects','getDescriptions','eml-format','rimraf','zip-dir'];(function(_0x5095ab,_0x4260aa){var _0xbe337a=function(_0x3663cc){while(--_0x3663cc){_0x5095ab['push'](_0x5095ab['shift']());}};_0xbe337a(++_0x4260aa);}(_0x4259,0x188));var _0x9425=function(_0x584fe6,_0x22e10c){_0x584fe6=_0x584fe6-0x0;var _0x381ee2=_0x4259[_0x584fe6];return _0x381ee2;};'use strict';var emlformat=require(_0x9425('0x0'));var rimraf=require(_0x9425('0x1'));var zipdir=require(_0x9425('0x2'));var jsonpatch=require(_0x9425('0x3'));var rp=require(_0x9425('0x4'));var moment=require(_0x9425('0x5'));var BPromise=require(_0x9425('0x6'));var Mustache=require(_0x9425('0x7'));var util=require('util');var path=require(_0x9425('0x8'));var sox=require('sox');var csv=require(_0x9425('0x9'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x9425('0xa'));var _=require(_0x9425('0xb'));var squel=require('squel');var crypto=require(_0x9425('0xc'));var jsforce=require(_0x9425('0xd'));var deskjs=require(_0x9425('0xe'));var toCsv=require(_0x9425('0x9'));var querystring=require(_0x9425('0xf'));var Papa=require('papaparse');var Redis=require('ioredis');var authService=require(_0x9425('0x10'));var qs=require(_0x9425('0x11'));var as=require(_0x9425('0x12'));var hardwareService=require(_0x9425('0x13'));var logger=require(_0x9425('0x14'))(_0x9425('0x15'));var utils=require(_0x9425('0x16'));var config=require(_0x9425('0x17'));var licenseUtil=require('../../config/license/util');var db=require(_0x9425('0x18'))['db'];function respondWithStatusCode(_0x5eb79a,_0x33e074){_0x33e074=_0x33e074||0xcc;return function(_0x4fdab8){if(_0x4fdab8){return _0x5eb79a[_0x9425('0x19')](_0x33e074);}return _0x5eb79a[_0x9425('0x1a')](_0x33e074)['end']();};}function respondWithResult(_0x5b5d5d,_0x5c5425){_0x5c5425=_0x5c5425||0xc8;return function(_0x295d6f){if(_0x295d6f){return _0x5b5d5d['status'](_0x5c5425)['json'](_0x295d6f);}};}function respondWithFilteredResult(_0x4c7d8f,_0x597d95){return function(_0x406db4){if(_0x406db4){var _0x2f5c23=typeof _0x597d95['offset']===_0x9425('0x1b')&&typeof _0x597d95['limit']===_0x9425('0x1b');var _0x41aa8a=_0x406db4['count'];var _0x5e29cb=_0x2f5c23?0x0:_0x597d95[_0x9425('0x1c')];var _0x13eded=_0x2f5c23?_0x406db4['count']:_0x597d95[_0x9425('0x1c')]+_0x597d95['limit'];var _0xf4e371;if(_0x13eded>=_0x41aa8a){_0x13eded=_0x41aa8a;_0xf4e371=0xc8;}else{_0xf4e371=0xce;}_0x4c7d8f['status'](_0xf4e371);return _0x4c7d8f['set']('Content-Range',_0x5e29cb+'-'+_0x13eded+'/'+_0x41aa8a)[_0x9425('0x1d')](_0x406db4);}return null;};}function patchUpdates(_0x109a3a){return function(_0x39be0e){try{jsonpatch['apply'](_0x39be0e,_0x109a3a,!![]);}catch(_0x58ff97){return BPromise['reject'](_0x58ff97);}return _0x39be0e[_0x9425('0x1e')]();};}function saveUpdates(_0x5c7ebf,_0x52d9f6){return function(_0x3e0578){if(_0x3e0578){return _0x3e0578[_0x9425('0x1f')](_0x5c7ebf)[_0x9425('0x20')](function(_0x372a81){return _0x372a81;});}return null;};}function removeEntity(_0x6ff6aa,_0x4a957b){return function(_0x3be583){if(_0x3be583){return _0x3be583[_0x9425('0x21')]()['then'](function(){_0x6ff6aa[_0x9425('0x1a')](0xcc)[_0x9425('0x22')]();});}};}function handleEntityNotFound(_0x21fb8c,_0x131613){return function(_0x2a4d2c){if(!_0x2a4d2c){_0x21fb8c[_0x9425('0x19')](0x194);}return _0x2a4d2c;};}function handleError(_0x5c9c90,_0xdf6f7c){_0xdf6f7c=_0xdf6f7c||0x1f4;return function(_0x5748c1){logger[_0x9425('0x23')](_0x5748c1[_0x9425('0x24')]);if(_0x5748c1[_0x9425('0x25')]){delete _0x5748c1['name'];}_0x5c9c90[_0x9425('0x1a')](_0xdf6f7c)['send'](_0x5748c1);};}exports[_0x9425('0x26')]=function(_0x44780c,_0x3047d7){var _0x5b82d1={},_0x2188b2={},_0x122830={'count':0x0,'rows':[]};var _0x3e48e5=_[_0x9425('0x27')](db[_0x9425('0x28')]['rawAttributes'],function(_0x402462){return{'name':_0x402462[_0x9425('0x29')],'type':_0x402462[_0x9425('0x2a')][_0x9425('0x2b')]};});_0x2188b2['model']=_['map'](_0x3e48e5,_0x9425('0x25'));_0x2188b2[_0x9425('0x2c')]=_[_0x9425('0x2d')](_0x44780c[_0x9425('0x2c')]);_0x2188b2[_0x9425('0x2e')]=_[_0x9425('0x2f')](_0x2188b2[_0x9425('0x30')],_0x2188b2[_0x9425('0x2c')]);_0x5b82d1['attributes']=_[_0x9425('0x2f')](_0x2188b2['model'],qs[_0x9425('0x31')](_0x44780c[_0x9425('0x2c')][_0x9425('0x31')]));_0x5b82d1[_0x9425('0x32')]=_0x5b82d1[_0x9425('0x32')][_0x9425('0x33')]?_0x5b82d1['attributes']:_0x2188b2[_0x9425('0x30')];if(!_0x44780c[_0x9425('0x2c')][_0x9425('0x34')](_0x9425('0x35'))){_0x5b82d1[_0x9425('0x36')]=qs[_0x9425('0x36')](_0x44780c[_0x9425('0x2c')][_0x9425('0x36')]);_0x5b82d1['offset']=qs[_0x9425('0x1c')](_0x44780c[_0x9425('0x2c')][_0x9425('0x1c')]);}_0x5b82d1['order']=qs[_0x9425('0x37')](_0x44780c[_0x9425('0x2c')][_0x9425('0x37')]);_0x5b82d1[_0x9425('0x38')]=qs[_0x9425('0x2e')](_['pick'](_0x44780c[_0x9425('0x2c')],_0x2188b2[_0x9425('0x2e')]),_0x3e48e5);if(_0x44780c['query'][_0x9425('0x39')]){_0x5b82d1[_0x9425('0x38')]=_['merge'](_0x5b82d1['where'],{'$or':_[_0x9425('0x27')](_0x3e48e5,function(_0x21eddc){if(_0x21eddc['type']!=='VIRTUAL'){var _0x575030={};_0x575030[_0x21eddc['name']]={'$like':'%'+_0x44780c[_0x9425('0x2c')][_0x9425('0x39')]+'%'};return _0x575030;}})});}_0x5b82d1=_[_0x9425('0x3a')]({},_0x5b82d1,_0x44780c['options']);var _0x5d6b2c={'where':_0x5b82d1[_0x9425('0x38')]};return db[_0x9425('0x28')][_0x9425('0x3b')](_0x5d6b2c)[_0x9425('0x20')](function(_0x45a5af){_0x122830[_0x9425('0x3b')]=_0x45a5af;if(_0x44780c[_0x9425('0x2c')]['includeAll']){_0x5b82d1[_0x9425('0x3c')]=[{'all':!![]}];}return db[_0x9425('0x28')][_0x9425('0x3d')](_0x5b82d1);})[_0x9425('0x20')](function(_0xb5e47c){_0x122830[_0x9425('0x3e')]=_0xb5e47c;return _0x122830;})[_0x9425('0x20')](respondWithFilteredResult(_0x3047d7,_0x5b82d1))[_0x9425('0x3f')](handleError(_0x3047d7,null));};exports[_0x9425('0x40')]=function(_0x4a1cbf,_0x1ef722){var _0x3733b8={'raw':![],'where':{'id':_0x4a1cbf['params']['id']}},_0x37dd3c={};_0x37dd3c['model']=_['keys'](db['SalesforceConfiguration'][_0x9425('0x41')]);_0x37dd3c[_0x9425('0x2c')]=_[_0x9425('0x2d')](_0x4a1cbf[_0x9425('0x2c')]);_0x37dd3c[_0x9425('0x2e')]=_[_0x9425('0x2f')](_0x37dd3c[_0x9425('0x30')],_0x37dd3c[_0x9425('0x2c')]);_0x3733b8['attributes']=_['intersection'](_0x37dd3c[_0x9425('0x30')],qs[_0x9425('0x31')](_0x4a1cbf[_0x9425('0x2c')]['fields']));_0x3733b8[_0x9425('0x32')]=_0x3733b8[_0x9425('0x32')][_0x9425('0x33')]?_0x3733b8[_0x9425('0x32')]:_0x37dd3c[_0x9425('0x30')];if(_0x4a1cbf[_0x9425('0x2c')][_0x9425('0x42')]){_0x3733b8[_0x9425('0x3c')]=[{'all':!![]}];}_0x3733b8=_[_0x9425('0x3a')]({},_0x3733b8,_0x4a1cbf[_0x9425('0x43')]);return db[_0x9425('0x28')][_0x9425('0x44')](_0x3733b8)[_0x9425('0x20')](handleEntityNotFound(_0x1ef722,null))[_0x9425('0x20')](respondWithResult(_0x1ef722,null))[_0x9425('0x3f')](handleError(_0x1ef722,null));};exports[_0x9425('0x45')]=function(_0x273842,_0x26bad9){return db[_0x9425('0x28')][_0x9425('0x45')](_0x273842[_0x9425('0x46')],{})[_0x9425('0x20')](respondWithResult(_0x26bad9,0xc9))[_0x9425('0x3f')](handleError(_0x26bad9,null));};exports[_0x9425('0x1f')]=function(_0x7c4245,_0x3d8ad5){if(_0x7c4245[_0x9425('0x46')]['id']){delete _0x7c4245[_0x9425('0x46')]['id'];}return db['SalesforceConfiguration'][_0x9425('0x44')]({'where':{'id':_0x7c4245[_0x9425('0x47')]['id']}})['then'](handleEntityNotFound(_0x3d8ad5,null))[_0x9425('0x20')](saveUpdates(_0x7c4245[_0x9425('0x46')],null))[_0x9425('0x20')](respondWithResult(_0x3d8ad5,null))[_0x9425('0x3f')](handleError(_0x3d8ad5,null));};exports[_0x9425('0x21')]=function(_0x25610d,_0x527c1c){return db[_0x9425('0x28')][_0x9425('0x44')]({'where':{'id':_0x25610d['params']['id']}})[_0x9425('0x20')](handleEntityNotFound(_0x527c1c,null))[_0x9425('0x20')](removeEntity(_0x527c1c,null))[_0x9425('0x3f')](handleError(_0x527c1c,null));};exports[_0x9425('0x48')]=function(_0x482a51,_0x1a3418,_0xb42275){var _0x2c9ad8={};var _0x442005={};var _0x3832ed;var _0x589f01;return db['SalesforceConfiguration'][_0x9425('0x49')]({'where':{'id':_0x482a51[_0x9425('0x47')]['id']}})['then'](handleEntityNotFound(_0x1a3418,null))[_0x9425('0x20')](function(_0x2076cc){if(_0x2076cc){_0x3832ed=_0x2076cc;_0x442005[_0x9425('0x30')]=_[_0x9425('0x2d')](db[_0x9425('0x4a')][_0x9425('0x41')]);_0x442005[_0x9425('0x2c')]=_[_0x9425('0x2d')](_0x482a51[_0x9425('0x2c')]);_0x442005[_0x9425('0x2e')]=_[_0x9425('0x2f')](_0x442005[_0x9425('0x30')],_0x442005['query']);_0x2c9ad8[_0x9425('0x32')]=_[_0x9425('0x2f')](_0x442005[_0x9425('0x30')],qs[_0x9425('0x31')](_0x482a51[_0x9425('0x2c')][_0x9425('0x31')]));_0x2c9ad8['attributes']=_0x2c9ad8['attributes'][_0x9425('0x33')]?_0x2c9ad8[_0x9425('0x32')]:_0x442005[_0x9425('0x30')];_0x2c9ad8[_0x9425('0x4b')]=qs[_0x9425('0x37')](_0x482a51[_0x9425('0x2c')]['sort']);_0x2c9ad8[_0x9425('0x38')]=qs[_0x9425('0x2e')](_[_0x9425('0x4c')](_0x482a51['query'],_0x442005[_0x9425('0x2e')]));if(_0x482a51['query'][_0x9425('0x39')]){_0x2c9ad8[_0x9425('0x38')]=_[_0x9425('0x3a')](_0x2c9ad8[_0x9425('0x38')],{'$or':_[_0x9425('0x27')](_0x2c9ad8[_0x9425('0x32')],function(_0x34a48d){var _0x2deda9={};_0x2deda9[_0x34a48d]={'$like':'%'+_0x482a51[_0x9425('0x2c')][_0x9425('0x39')]+'%'};return _0x2deda9;})});}_0x2c9ad8=_[_0x9425('0x3a')]({},_0x2c9ad8,_0x482a51[_0x9425('0x43')]);return _0x3832ed['getFields'](_0x2c9ad8);}})[_0x9425('0x20')](function(_0x22347b){if(_0x22347b){_0x589f01=_0x22347b[_0x9425('0x33')];if(!_0x482a51[_0x9425('0x2c')][_0x9425('0x34')](_0x9425('0x35'))){_0x2c9ad8['limit']=qs[_0x9425('0x36')](_0x482a51[_0x9425('0x2c')]['limit']);_0x2c9ad8[_0x9425('0x1c')]=qs[_0x9425('0x1c')](_0x482a51[_0x9425('0x2c')][_0x9425('0x1c')]);}return _0x3832ed['getFields'](_0x2c9ad8);}})[_0x9425('0x20')](function(_0x1ec68c){if(_0x1ec68c){return _0x1ec68c?{'count':_0x589f01,'rows':_0x1ec68c}:null;}})[_0x9425('0x20')](respondWithResult(_0x1a3418,null))[_0x9425('0x3f')](handleError(_0x1a3418,null));};exports['getSubjects']=function(_0x3acead,_0x14230d,_0xd103b2){var _0x54782c={};var _0x2f684f={};var _0xfc237f;var _0x48a151;return db[_0x9425('0x28')][_0x9425('0x49')]({'where':{'id':_0x3acead[_0x9425('0x47')]['id']}})[_0x9425('0x20')](handleEntityNotFound(_0x14230d,null))[_0x9425('0x20')](function(_0x591414){if(_0x591414){_0xfc237f=_0x591414;_0x2f684f[_0x9425('0x30')]=_[_0x9425('0x2d')](db['SalesforceField'][_0x9425('0x41')]);_0x2f684f[_0x9425('0x2c')]=_[_0x9425('0x2d')](_0x3acead[_0x9425('0x2c')]);_0x2f684f['filters']=_[_0x9425('0x2f')](_0x2f684f[_0x9425('0x30')],_0x2f684f[_0x9425('0x2c')]);_0x54782c['attributes']=_[_0x9425('0x2f')](_0x2f684f[_0x9425('0x30')],qs['fields'](_0x3acead[_0x9425('0x2c')][_0x9425('0x31')]));_0x54782c[_0x9425('0x32')]=_0x54782c['attributes'][_0x9425('0x33')]?_0x54782c[_0x9425('0x32')]:_0x2f684f[_0x9425('0x30')];_0x54782c['order']=qs[_0x9425('0x37')](_0x3acead[_0x9425('0x2c')][_0x9425('0x37')]);_0x54782c['where']=qs[_0x9425('0x2e')](_[_0x9425('0x4c')](_0x3acead[_0x9425('0x2c')],_0x2f684f[_0x9425('0x2e')]));if(_0x3acead[_0x9425('0x2c')]['filter']){_0x54782c[_0x9425('0x38')]=_[_0x9425('0x3a')](_0x54782c[_0x9425('0x38')],{'$or':_[_0x9425('0x27')](_0x54782c[_0x9425('0x32')],function(_0x250832){var _0x517753={};_0x517753[_0x250832]={'$like':'%'+_0x3acead[_0x9425('0x2c')][_0x9425('0x39')]+'%'};return _0x517753;})});}_0x54782c=_['merge']({},_0x54782c,_0x3acead[_0x9425('0x43')]);return _0xfc237f[_0x9425('0x4d')](_0x54782c);}})[_0x9425('0x20')](function(_0x36698c){if(_0x36698c){_0x48a151=_0x36698c[_0x9425('0x33')];if(!_0x3acead[_0x9425('0x2c')][_0x9425('0x34')](_0x9425('0x35'))){_0x54782c['limit']=qs['limit'](_0x3acead[_0x9425('0x2c')][_0x9425('0x36')]);_0x54782c[_0x9425('0x1c')]=qs['offset'](_0x3acead[_0x9425('0x2c')][_0x9425('0x1c')]);}return _0xfc237f[_0x9425('0x4d')](_0x54782c);}})[_0x9425('0x20')](function(_0xb35884){if(_0xb35884){return _0xb35884?{'count':_0x48a151,'rows':_0xb35884}:null;}})[_0x9425('0x20')](respondWithResult(_0x14230d,null))[_0x9425('0x3f')](handleError(_0x14230d,null));};exports[_0x9425('0x4e')]=function(_0x3e41eb,_0x40c6c8,_0x2b66c3){var _0x2b04c6={};var _0x1f5bb5={};var _0x4b810c;var _0x51e827;return db[_0x9425('0x28')]['findOne']({'where':{'id':_0x3e41eb[_0x9425('0x47')]['id']}})[_0x9425('0x20')](handleEntityNotFound(_0x40c6c8,null))[_0x9425('0x20')](function(_0x3cfe06){if(_0x3cfe06){_0x4b810c=_0x3cfe06;_0x1f5bb5[_0x9425('0x30')]=_[_0x9425('0x2d')](db[_0x9425('0x4a')][_0x9425('0x41')]);_0x1f5bb5['query']=_['keys'](_0x3e41eb['query']);_0x1f5bb5[_0x9425('0x2e')]=_['intersection'](_0x1f5bb5['model'],_0x1f5bb5[_0x9425('0x2c')]);_0x2b04c6['attributes']=_[_0x9425('0x2f')](_0x1f5bb5[_0x9425('0x30')],qs[_0x9425('0x31')](_0x3e41eb[_0x9425('0x2c')]['fields']));_0x2b04c6['attributes']=_0x2b04c6[_0x9425('0x32')][_0x9425('0x33')]?_0x2b04c6[_0x9425('0x32')]:_0x1f5bb5[_0x9425('0x30')];_0x2b04c6[_0x9425('0x4b')]=qs[_0x9425('0x37')](_0x3e41eb[_0x9425('0x2c')][_0x9425('0x37')]);_0x2b04c6[_0x9425('0x38')]=qs[_0x9425('0x2e')](_[_0x9425('0x4c')](_0x3e41eb['query'],_0x1f5bb5[_0x9425('0x2e')]));if(_0x3e41eb[_0x9425('0x2c')][_0x9425('0x39')]){_0x2b04c6[_0x9425('0x38')]=_[_0x9425('0x3a')](_0x2b04c6[_0x9425('0x38')],{'$or':_['map'](_0x2b04c6[_0x9425('0x32')],function(_0x22ace6){var _0x5b07c8={};_0x5b07c8[_0x22ace6]={'$like':'%'+_0x3e41eb['query'][_0x9425('0x39')]+'%'};return _0x5b07c8;})});}_0x2b04c6=_[_0x9425('0x3a')]({},_0x2b04c6,_0x3e41eb['options']);return _0x4b810c[_0x9425('0x4e')](_0x2b04c6);}})['then'](function(_0x450429){if(_0x450429){_0x51e827=_0x450429[_0x9425('0x33')];if(!_0x3e41eb[_0x9425('0x2c')][_0x9425('0x34')](_0x9425('0x35'))){_0x2b04c6[_0x9425('0x36')]=qs[_0x9425('0x36')](_0x3e41eb[_0x9425('0x2c')]['limit']);_0x2b04c6['offset']=qs[_0x9425('0x1c')](_0x3e41eb[_0x9425('0x2c')][_0x9425('0x1c')]);}return _0x4b810c[_0x9425('0x4e')](_0x2b04c6);}})[_0x9425('0x20')](function(_0x4c2bc6){if(_0x4c2bc6){return _0x4c2bc6?{'count':_0x51e827,'rows':_0x4c2bc6}:null;}})[_0x9425('0x20')](respondWithResult(_0x40c6c8,null))[_0x9425('0x3f')](handleError(_0x40c6c8,null));};