Built motion from commit d6d69adf.|2.6.33
[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 _0xdb15=['querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','status','end','json','undefined','limit','count','offset','set','Content-Range','reject','save','then','destroy','sendStatus','error','name','index','map','rawAttributes','fieldName','type','key','keys','query','intersection','attributes','model','fields','nolimit','order','sort','where','filters','pick','merge','VIRTUAL','SalesforceConfiguration','includeAll','include','findAll','catch','show','params','length','options','find','create','body','update','getFields','findOne','SalesforceField','filter','getSubjects','hasOwnProperty','getDescriptions','eml-format','rimraf','zip-dir','request-promise','moment','bluebird','mustache','path','sox','to-csv','fs-extra','lodash','squel','crypto','jsforce','desk.js'];(function(_0x46b932,_0x55a512){var _0x3489b0=function(_0x5a1cb3){while(--_0x5a1cb3){_0x46b932['push'](_0x46b932['shift']());}};_0x3489b0(++_0x55a512);}(_0xdb15,0x94));var _0x5db1=function(_0x466f5d,_0x1bd5ba){_0x466f5d=_0x466f5d-0x0;var _0x383b2b=_0xdb15[_0x466f5d];return _0x383b2b;};'use strict';var emlformat=require(_0x5db1('0x0'));var rimraf=require(_0x5db1('0x1'));var zipdir=require(_0x5db1('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0x5db1('0x3'));var moment=require(_0x5db1('0x4'));var BPromise=require(_0x5db1('0x5'));var Mustache=require(_0x5db1('0x6'));var util=require('util');var path=require(_0x5db1('0x7'));var sox=require(_0x5db1('0x8'));var csv=require(_0x5db1('0x9'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x5db1('0xa'));var _=require(_0x5db1('0xb'));var squel=require(_0x5db1('0xc'));var crypto=require(_0x5db1('0xd'));var jsforce=require(_0x5db1('0xe'));var deskjs=require(_0x5db1('0xf'));var toCsv=require(_0x5db1('0x9'));var querystring=require(_0x5db1('0x10'));var Papa=require(_0x5db1('0x11'));var Redis=require('ioredis');var authService=require(_0x5db1('0x12'));var qs=require(_0x5db1('0x13'));var as=require(_0x5db1('0x14'));var hardwareService=require('../../config/license/hardware');var logger=require('../../config/logger')(_0x5db1('0x15'));var utils=require(_0x5db1('0x16'));var config=require(_0x5db1('0x17'));var licenseUtil=require(_0x5db1('0x18'));var db=require(_0x5db1('0x19'))['db'];function respondWithStatusCode(_0x5141a1,_0x1c696f){_0x1c696f=_0x1c696f||0xcc;return function(_0x1ad17d){if(_0x1ad17d){return _0x5141a1['sendStatus'](_0x1c696f);}return _0x5141a1[_0x5db1('0x1a')](_0x1c696f)[_0x5db1('0x1b')]();};}function respondWithResult(_0x52acd3,_0x30867b){_0x30867b=_0x30867b||0xc8;return function(_0x59cf6d){if(_0x59cf6d){return _0x52acd3[_0x5db1('0x1a')](_0x30867b)[_0x5db1('0x1c')](_0x59cf6d);}};}function respondWithFilteredResult(_0x3c7115,_0x30d7a){return function(_0x315f9e){if(_0x315f9e){var _0x1e660e=typeof _0x30d7a['offset']===_0x5db1('0x1d')&&typeof _0x30d7a[_0x5db1('0x1e')]===_0x5db1('0x1d');var _0x382a3a=_0x315f9e[_0x5db1('0x1f')];var _0x5d40e6=_0x1e660e?0x0:_0x30d7a[_0x5db1('0x20')];var _0x5c4f82=_0x1e660e?_0x315f9e[_0x5db1('0x1f')]:_0x30d7a[_0x5db1('0x20')]+_0x30d7a[_0x5db1('0x1e')];var _0x2154db;if(_0x5c4f82>=_0x382a3a){_0x5c4f82=_0x382a3a;_0x2154db=0xc8;}else{_0x2154db=0xce;}_0x3c7115[_0x5db1('0x1a')](_0x2154db);return _0x3c7115[_0x5db1('0x21')](_0x5db1('0x22'),_0x5d40e6+'-'+_0x5c4f82+'/'+_0x382a3a)[_0x5db1('0x1c')](_0x315f9e);}return null;};}function patchUpdates(_0x443afe){return function(_0x4f7ea8){try{jsonpatch['apply'](_0x4f7ea8,_0x443afe,!![]);}catch(_0x257a91){return BPromise[_0x5db1('0x23')](_0x257a91);}return _0x4f7ea8[_0x5db1('0x24')]();};}function saveUpdates(_0x5486b3,_0x2e9590){return function(_0x252393){if(_0x252393){return _0x252393['update'](_0x5486b3)[_0x5db1('0x25')](function(_0x1ea2ff){return _0x1ea2ff;});}return null;};}function removeEntity(_0x1a5728,_0x59e18e){return function(_0x508a69){if(_0x508a69){return _0x508a69[_0x5db1('0x26')]()[_0x5db1('0x25')](function(){_0x1a5728[_0x5db1('0x1a')](0xcc)['end']();});}};}function handleEntityNotFound(_0x5b5f61,_0x3c8aca){return function(_0x5d16ca){if(!_0x5d16ca){_0x5b5f61[_0x5db1('0x27')](0x194);}return _0x5d16ca;};}function handleError(_0x463675,_0x487a6d){_0x487a6d=_0x487a6d||0x1f4;return function(_0x536329){logger[_0x5db1('0x28')](_0x536329['stack']);if(_0x536329[_0x5db1('0x29')]){delete _0x536329[_0x5db1('0x29')];}_0x463675[_0x5db1('0x1a')](_0x487a6d)['send'](_0x536329);};}exports[_0x5db1('0x2a')]=function(_0x58aabb,_0x5cc5dc){var _0x36b7d6={},_0x3d2338={},_0x8eb242={'count':0x0,'rows':[]};var _0x229a63=_[_0x5db1('0x2b')](db['SalesforceConfiguration'][_0x5db1('0x2c')],function(_0x5e395c){return{'name':_0x5e395c[_0x5db1('0x2d')],'type':_0x5e395c[_0x5db1('0x2e')][_0x5db1('0x2f')]};});_0x3d2338['model']=_[_0x5db1('0x2b')](_0x229a63,_0x5db1('0x29'));_0x3d2338['query']=_[_0x5db1('0x30')](_0x58aabb[_0x5db1('0x31')]);_0x3d2338['filters']=_[_0x5db1('0x32')](_0x3d2338['model'],_0x3d2338[_0x5db1('0x31')]);_0x36b7d6[_0x5db1('0x33')]=_[_0x5db1('0x32')](_0x3d2338[_0x5db1('0x34')],qs[_0x5db1('0x35')](_0x58aabb[_0x5db1('0x31')][_0x5db1('0x35')]));_0x36b7d6[_0x5db1('0x33')]=_0x36b7d6[_0x5db1('0x33')]['length']?_0x36b7d6[_0x5db1('0x33')]:_0x3d2338['model'];if(!_0x58aabb['query']['hasOwnProperty'](_0x5db1('0x36'))){_0x36b7d6[_0x5db1('0x1e')]=qs[_0x5db1('0x1e')](_0x58aabb['query']['limit']);_0x36b7d6['offset']=qs[_0x5db1('0x20')](_0x58aabb[_0x5db1('0x31')][_0x5db1('0x20')]);}_0x36b7d6[_0x5db1('0x37')]=qs[_0x5db1('0x38')](_0x58aabb[_0x5db1('0x31')][_0x5db1('0x38')]);_0x36b7d6[_0x5db1('0x39')]=qs[_0x5db1('0x3a')](_[_0x5db1('0x3b')](_0x58aabb['query'],_0x3d2338[_0x5db1('0x3a')]),_0x229a63);if(_0x58aabb[_0x5db1('0x31')]['filter']){_0x36b7d6[_0x5db1('0x39')]=_[_0x5db1('0x3c')](_0x36b7d6[_0x5db1('0x39')],{'$or':_[_0x5db1('0x2b')](_0x229a63,function(_0x3505e5){if(_0x3505e5[_0x5db1('0x2e')]!==_0x5db1('0x3d')){var _0x5373e1={};_0x5373e1[_0x3505e5[_0x5db1('0x29')]]={'$like':'%'+_0x58aabb[_0x5db1('0x31')]['filter']+'%'};return _0x5373e1;}})});}_0x36b7d6=_[_0x5db1('0x3c')]({},_0x36b7d6,_0x58aabb['options']);var _0x5eb389={'where':_0x36b7d6[_0x5db1('0x39')]};return db[_0x5db1('0x3e')][_0x5db1('0x1f')](_0x5eb389)[_0x5db1('0x25')](function(_0x4fe7d7){_0x8eb242[_0x5db1('0x1f')]=_0x4fe7d7;if(_0x58aabb['query'][_0x5db1('0x3f')]){_0x36b7d6[_0x5db1('0x40')]=[{'all':!![]}];}return db['SalesforceConfiguration'][_0x5db1('0x41')](_0x36b7d6);})[_0x5db1('0x25')](function(_0x14769b){_0x8eb242['rows']=_0x14769b;return _0x8eb242;})[_0x5db1('0x25')](respondWithFilteredResult(_0x5cc5dc,_0x36b7d6))[_0x5db1('0x42')](handleError(_0x5cc5dc,null));};exports[_0x5db1('0x43')]=function(_0x4e0848,_0x16f0b6){var _0xf6ea1={'raw':![],'where':{'id':_0x4e0848[_0x5db1('0x44')]['id']}},_0xa347ab={};_0xa347ab[_0x5db1('0x34')]=_[_0x5db1('0x30')](db[_0x5db1('0x3e')][_0x5db1('0x2c')]);_0xa347ab['query']=_['keys'](_0x4e0848['query']);_0xa347ab['filters']=_['intersection'](_0xa347ab[_0x5db1('0x34')],_0xa347ab[_0x5db1('0x31')]);_0xf6ea1[_0x5db1('0x33')]=_[_0x5db1('0x32')](_0xa347ab['model'],qs[_0x5db1('0x35')](_0x4e0848[_0x5db1('0x31')][_0x5db1('0x35')]));_0xf6ea1['attributes']=_0xf6ea1['attributes'][_0x5db1('0x45')]?_0xf6ea1['attributes']:_0xa347ab[_0x5db1('0x34')];if(_0x4e0848[_0x5db1('0x31')]['includeAll']){_0xf6ea1[_0x5db1('0x40')]=[{'all':!![]}];}_0xf6ea1=_[_0x5db1('0x3c')]({},_0xf6ea1,_0x4e0848[_0x5db1('0x46')]);return db['SalesforceConfiguration'][_0x5db1('0x47')](_0xf6ea1)[_0x5db1('0x25')](handleEntityNotFound(_0x16f0b6,null))[_0x5db1('0x25')](respondWithResult(_0x16f0b6,null))[_0x5db1('0x42')](handleError(_0x16f0b6,null));};exports[_0x5db1('0x48')]=function(_0x5853e2,_0x4020f3){return db[_0x5db1('0x3e')][_0x5db1('0x48')](_0x5853e2[_0x5db1('0x49')],{})['then'](respondWithResult(_0x4020f3,0xc9))['catch'](handleError(_0x4020f3,null));};exports[_0x5db1('0x4a')]=function(_0x3c164c,_0xb1a473){if(_0x3c164c['body']['id']){delete _0x3c164c[_0x5db1('0x49')]['id'];}return db[_0x5db1('0x3e')][_0x5db1('0x47')]({'where':{'id':_0x3c164c['params']['id']}})[_0x5db1('0x25')](handleEntityNotFound(_0xb1a473,null))['then'](saveUpdates(_0x3c164c[_0x5db1('0x49')],null))['then'](respondWithResult(_0xb1a473,null))[_0x5db1('0x42')](handleError(_0xb1a473,null));};exports['destroy']=function(_0x4b0654,_0x16da4e){return db['SalesforceConfiguration'][_0x5db1('0x47')]({'where':{'id':_0x4b0654[_0x5db1('0x44')]['id']}})[_0x5db1('0x25')](handleEntityNotFound(_0x16da4e,null))[_0x5db1('0x25')](removeEntity(_0x16da4e,null))[_0x5db1('0x42')](handleError(_0x16da4e,null));};exports[_0x5db1('0x4b')]=function(_0x4cc53f,_0x1bee12,_0x2f6a20){var _0x247835={};var _0x2fdf79={};var _0x2e4e81;var _0x155348;return db[_0x5db1('0x3e')][_0x5db1('0x4c')]({'where':{'id':_0x4cc53f[_0x5db1('0x44')]['id']}})['then'](handleEntityNotFound(_0x1bee12,null))[_0x5db1('0x25')](function(_0x25ace6){if(_0x25ace6){_0x2e4e81=_0x25ace6;_0x2fdf79[_0x5db1('0x34')]=_[_0x5db1('0x30')](db[_0x5db1('0x4d')][_0x5db1('0x2c')]);_0x2fdf79[_0x5db1('0x31')]=_['keys'](_0x4cc53f['query']);_0x2fdf79[_0x5db1('0x3a')]=_[_0x5db1('0x32')](_0x2fdf79['model'],_0x2fdf79[_0x5db1('0x31')]);_0x247835[_0x5db1('0x33')]=_[_0x5db1('0x32')](_0x2fdf79[_0x5db1('0x34')],qs[_0x5db1('0x35')](_0x4cc53f['query'][_0x5db1('0x35')]));_0x247835[_0x5db1('0x33')]=_0x247835[_0x5db1('0x33')][_0x5db1('0x45')]?_0x247835[_0x5db1('0x33')]:_0x2fdf79[_0x5db1('0x34')];_0x247835[_0x5db1('0x37')]=qs[_0x5db1('0x38')](_0x4cc53f[_0x5db1('0x31')][_0x5db1('0x38')]);_0x247835[_0x5db1('0x39')]=qs[_0x5db1('0x3a')](_[_0x5db1('0x3b')](_0x4cc53f[_0x5db1('0x31')],_0x2fdf79[_0x5db1('0x3a')]));if(_0x4cc53f[_0x5db1('0x31')][_0x5db1('0x4e')]){_0x247835['where']=_['merge'](_0x247835[_0x5db1('0x39')],{'$or':_[_0x5db1('0x2b')](_0x247835['attributes'],function(_0x2cfd06){var _0x49afcb={};_0x49afcb[_0x2cfd06]={'$like':'%'+_0x4cc53f[_0x5db1('0x31')][_0x5db1('0x4e')]+'%'};return _0x49afcb;})});}_0x247835=_['merge']({},_0x247835,_0x4cc53f[_0x5db1('0x46')]);return _0x2e4e81['getFields'](_0x247835);}})[_0x5db1('0x25')](function(_0x5e3d3a){if(_0x5e3d3a){_0x155348=_0x5e3d3a['length'];if(!_0x4cc53f['query']['hasOwnProperty'](_0x5db1('0x36'))){_0x247835['limit']=qs[_0x5db1('0x1e')](_0x4cc53f[_0x5db1('0x31')][_0x5db1('0x1e')]);_0x247835[_0x5db1('0x20')]=qs[_0x5db1('0x20')](_0x4cc53f[_0x5db1('0x31')]['offset']);}return _0x2e4e81['getFields'](_0x247835);}})[_0x5db1('0x25')](function(_0x2cf4aa){if(_0x2cf4aa){return _0x2cf4aa?{'count':_0x155348,'rows':_0x2cf4aa}:null;}})[_0x5db1('0x25')](respondWithResult(_0x1bee12,null))['catch'](handleError(_0x1bee12,null));};exports[_0x5db1('0x4f')]=function(_0x190135,_0x32c6df,_0x1f7076){var _0x447e25={};var _0x1650be={};var _0x42ec5a;var _0x41bb68;return db['SalesforceConfiguration'][_0x5db1('0x4c')]({'where':{'id':_0x190135[_0x5db1('0x44')]['id']}})['then'](handleEntityNotFound(_0x32c6df,null))[_0x5db1('0x25')](function(_0x262a4a){if(_0x262a4a){_0x42ec5a=_0x262a4a;_0x1650be[_0x5db1('0x34')]=_[_0x5db1('0x30')](db['SalesforceField'][_0x5db1('0x2c')]);_0x1650be['query']=_[_0x5db1('0x30')](_0x190135['query']);_0x1650be[_0x5db1('0x3a')]=_[_0x5db1('0x32')](_0x1650be['model'],_0x1650be[_0x5db1('0x31')]);_0x447e25['attributes']=_[_0x5db1('0x32')](_0x1650be[_0x5db1('0x34')],qs[_0x5db1('0x35')](_0x190135[_0x5db1('0x31')][_0x5db1('0x35')]));_0x447e25[_0x5db1('0x33')]=_0x447e25[_0x5db1('0x33')][_0x5db1('0x45')]?_0x447e25[_0x5db1('0x33')]:_0x1650be[_0x5db1('0x34')];_0x447e25[_0x5db1('0x37')]=qs[_0x5db1('0x38')](_0x190135[_0x5db1('0x31')][_0x5db1('0x38')]);_0x447e25[_0x5db1('0x39')]=qs[_0x5db1('0x3a')](_['pick'](_0x190135[_0x5db1('0x31')],_0x1650be[_0x5db1('0x3a')]));if(_0x190135['query'][_0x5db1('0x4e')]){_0x447e25[_0x5db1('0x39')]=_[_0x5db1('0x3c')](_0x447e25[_0x5db1('0x39')],{'$or':_[_0x5db1('0x2b')](_0x447e25['attributes'],function(_0x475f0e){var _0x1bbe4={};_0x1bbe4[_0x475f0e]={'$like':'%'+_0x190135[_0x5db1('0x31')]['filter']+'%'};return _0x1bbe4;})});}_0x447e25=_[_0x5db1('0x3c')]({},_0x447e25,_0x190135[_0x5db1('0x46')]);return _0x42ec5a['getSubjects'](_0x447e25);}})[_0x5db1('0x25')](function(_0x18e0b6){if(_0x18e0b6){_0x41bb68=_0x18e0b6[_0x5db1('0x45')];if(!_0x190135[_0x5db1('0x31')][_0x5db1('0x50')]('nolimit')){_0x447e25[_0x5db1('0x1e')]=qs[_0x5db1('0x1e')](_0x190135[_0x5db1('0x31')]['limit']);_0x447e25['offset']=qs['offset'](_0x190135[_0x5db1('0x31')]['offset']);}return _0x42ec5a['getSubjects'](_0x447e25);}})['then'](function(_0x19f32b){if(_0x19f32b){return _0x19f32b?{'count':_0x41bb68,'rows':_0x19f32b}:null;}})[_0x5db1('0x25')](respondWithResult(_0x32c6df,null))['catch'](handleError(_0x32c6df,null));};exports['getDescriptions']=function(_0x21893d,_0x113f7e,_0x3513d9){var _0x3fe5eb={};var _0x23dd1c={};var _0x2b8cf0;var _0x277b41;return db[_0x5db1('0x3e')][_0x5db1('0x4c')]({'where':{'id':_0x21893d[_0x5db1('0x44')]['id']}})[_0x5db1('0x25')](handleEntityNotFound(_0x113f7e,null))[_0x5db1('0x25')](function(_0x507553){if(_0x507553){_0x2b8cf0=_0x507553;_0x23dd1c[_0x5db1('0x34')]=_[_0x5db1('0x30')](db[_0x5db1('0x4d')][_0x5db1('0x2c')]);_0x23dd1c[_0x5db1('0x31')]=_['keys'](_0x21893d['query']);_0x23dd1c['filters']=_[_0x5db1('0x32')](_0x23dd1c['model'],_0x23dd1c[_0x5db1('0x31')]);_0x3fe5eb['attributes']=_[_0x5db1('0x32')](_0x23dd1c[_0x5db1('0x34')],qs['fields'](_0x21893d[_0x5db1('0x31')]['fields']));_0x3fe5eb['attributes']=_0x3fe5eb[_0x5db1('0x33')][_0x5db1('0x45')]?_0x3fe5eb['attributes']:_0x23dd1c[_0x5db1('0x34')];_0x3fe5eb['order']=qs['sort'](_0x21893d[_0x5db1('0x31')][_0x5db1('0x38')]);_0x3fe5eb[_0x5db1('0x39')]=qs[_0x5db1('0x3a')](_['pick'](_0x21893d['query'],_0x23dd1c['filters']));if(_0x21893d[_0x5db1('0x31')][_0x5db1('0x4e')]){_0x3fe5eb[_0x5db1('0x39')]=_[_0x5db1('0x3c')](_0x3fe5eb['where'],{'$or':_['map'](_0x3fe5eb[_0x5db1('0x33')],function(_0x150c9d){var _0x436316={};_0x436316[_0x150c9d]={'$like':'%'+_0x21893d[_0x5db1('0x31')][_0x5db1('0x4e')]+'%'};return _0x436316;})});}_0x3fe5eb=_[_0x5db1('0x3c')]({},_0x3fe5eb,_0x21893d[_0x5db1('0x46')]);return _0x2b8cf0[_0x5db1('0x51')](_0x3fe5eb);}})['then'](function(_0x33ba7f){if(_0x33ba7f){_0x277b41=_0x33ba7f[_0x5db1('0x45')];if(!_0x21893d['query'][_0x5db1('0x50')](_0x5db1('0x36'))){_0x3fe5eb['limit']=qs[_0x5db1('0x1e')](_0x21893d[_0x5db1('0x31')][_0x5db1('0x1e')]);_0x3fe5eb[_0x5db1('0x20')]=qs[_0x5db1('0x20')](_0x21893d[_0x5db1('0x31')][_0x5db1('0x20')]);}return _0x2b8cf0[_0x5db1('0x51')](_0x3fe5eb);}})[_0x5db1('0x25')](function(_0x15297c){if(_0x15297c){return _0x15297c?{'count':_0x277b41,'rows':_0x15297c}:null;}})[_0x5db1('0x25')](respondWithResult(_0x113f7e,null))[_0x5db1('0x42')](handleError(_0x113f7e,null));};