Built motion from commit 994c64e1.|2.6.1
[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 _0x1521=['name','index','map','SalesforceConfiguration','rawAttributes','fieldName','type','key','model','keys','filters','intersection','query','fields','attributes','length','hasOwnProperty','nolimit','order','sort','pick','filter','where','VIRTUAL','options','count','includeAll','findAll','rows','catch','merge','find','create','body','destroy','params','SalesforceField','getFields','getSubjects','findOne','getDescriptions','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','path','to-csv','ejs','fs-extra','squel','crypto','jsforce','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','json','offset','undefined','limit','status','set','apply','reject','save','then','end','sendStatus','error','stack'];(function(_0x21b2c8,_0x4d652e){var _0x3b564a=function(_0x557d62){while(--_0x557d62){_0x21b2c8['push'](_0x21b2c8['shift']());}};_0x3b564a(++_0x4d652e);}(_0x1521,0x11c));var _0x1152=function(_0x390733,_0x1e3d32){_0x390733=_0x390733-0x0;var _0x33beb9=_0x1521[_0x390733];return _0x33beb9;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x1152('0x0'));var zipdir=require(_0x1152('0x1'));var jsonpatch=require(_0x1152('0x2'));var rp=require(_0x1152('0x3'));var moment=require(_0x1152('0x4'));var BPromise=require(_0x1152('0x5'));var Mustache=require(_0x1152('0x6'));var util=require('util');var path=require(_0x1152('0x7'));var sox=require('sox');var csv=require(_0x1152('0x8'));var ejs=require(_0x1152('0x9'));var fs=require('fs');var fs_extra=require(_0x1152('0xa'));var _=require('lodash');var squel=require(_0x1152('0xb'));var crypto=require(_0x1152('0xc'));var jsforce=require(_0x1152('0xd'));var deskjs=require('desk.js');var toCsv=require(_0x1152('0x8'));var querystring=require(_0x1152('0xe'));var Papa=require(_0x1152('0xf'));var Redis=require(_0x1152('0x10'));var authService=require(_0x1152('0x11'));var qs=require('../../components/parsers/qs');var as=require(_0x1152('0x12'));var hardwareService=require(_0x1152('0x13'));var logger=require(_0x1152('0x14'))(_0x1152('0x15'));var utils=require(_0x1152('0x16'));var config=require(_0x1152('0x17'));var licenseUtil=require(_0x1152('0x18'));var db=require(_0x1152('0x19'))['db'];function respondWithStatusCode(_0x498778,_0x29c751){_0x29c751=_0x29c751||0xcc;return function(_0x357087){if(_0x357087){return _0x498778['sendStatus'](_0x29c751);}return _0x498778['status'](_0x29c751)['end']();};}function respondWithResult(_0x1b88bf,_0x5cb788){_0x5cb788=_0x5cb788||0xc8;return function(_0x1bc298){if(_0x1bc298){return _0x1b88bf['status'](_0x5cb788)[_0x1152('0x1a')](_0x1bc298);}};}function respondWithFilteredResult(_0x3ba443,_0x535afe){return function(_0x397e42){if(_0x397e42){var _0x1042ba=typeof _0x535afe[_0x1152('0x1b')]===_0x1152('0x1c')&&typeof _0x535afe[_0x1152('0x1d')]==='undefined';var _0xbd2a96=_0x397e42['count'];var _0x49026c=_0x1042ba?0x0:_0x535afe[_0x1152('0x1b')];var _0x58a7e1=_0x1042ba?_0x397e42['count']:_0x535afe[_0x1152('0x1b')]+_0x535afe[_0x1152('0x1d')];var _0x145ca4;if(_0x58a7e1>=_0xbd2a96){_0x58a7e1=_0xbd2a96;_0x145ca4=0xc8;}else{_0x145ca4=0xce;}_0x3ba443[_0x1152('0x1e')](_0x145ca4);return _0x3ba443[_0x1152('0x1f')]('Content-Range',_0x49026c+'-'+_0x58a7e1+'/'+_0xbd2a96)[_0x1152('0x1a')](_0x397e42);}return null;};}function patchUpdates(_0x4202f3){return function(_0x3990b1){try{jsonpatch[_0x1152('0x20')](_0x3990b1,_0x4202f3,!![]);}catch(_0xbf621e){return BPromise[_0x1152('0x21')](_0xbf621e);}return _0x3990b1[_0x1152('0x22')]();};}function saveUpdates(_0x5dd3b0,_0x3ae846){return function(_0x743efa){if(_0x743efa){return _0x743efa['update'](_0x5dd3b0)[_0x1152('0x23')](function(_0x2bcc77){return _0x2bcc77;});}return null;};}function removeEntity(_0x3193c7,_0xebc311){return function(_0xc99220){if(_0xc99220){return _0xc99220['destroy']()['then'](function(){_0x3193c7[_0x1152('0x1e')](0xcc)[_0x1152('0x24')]();});}};}function handleEntityNotFound(_0x3d2dea,_0x1567bd){return function(_0x3faa86){if(!_0x3faa86){_0x3d2dea[_0x1152('0x25')](0x194);}return _0x3faa86;};}function handleError(_0x511d2f,_0x3190bc){_0x3190bc=_0x3190bc||0x1f4;return function(_0x45e876){logger[_0x1152('0x26')](_0x45e876[_0x1152('0x27')]);if(_0x45e876[_0x1152('0x28')]){delete _0x45e876[_0x1152('0x28')];}_0x511d2f['status'](_0x3190bc)['send'](_0x45e876);};}exports[_0x1152('0x29')]=function(_0x1d7df4,_0x5e78cf){var _0x53c4b8={},_0x16010d={},_0x3b1596={'count':0x0,'rows':[]};var _0xb0c44a=_[_0x1152('0x2a')](db[_0x1152('0x2b')][_0x1152('0x2c')],function(_0x4591dc){return{'name':_0x4591dc[_0x1152('0x2d')],'type':_0x4591dc[_0x1152('0x2e')][_0x1152('0x2f')]};});_0x16010d[_0x1152('0x30')]=_['map'](_0xb0c44a,'name');_0x16010d['query']=_[_0x1152('0x31')](_0x1d7df4['query']);_0x16010d[_0x1152('0x32')]=_[_0x1152('0x33')](_0x16010d[_0x1152('0x30')],_0x16010d[_0x1152('0x34')]);_0x53c4b8['attributes']=_[_0x1152('0x33')](_0x16010d[_0x1152('0x30')],qs['fields'](_0x1d7df4[_0x1152('0x34')][_0x1152('0x35')]));_0x53c4b8[_0x1152('0x36')]=_0x53c4b8[_0x1152('0x36')][_0x1152('0x37')]?_0x53c4b8[_0x1152('0x36')]:_0x16010d['model'];if(!_0x1d7df4['query'][_0x1152('0x38')](_0x1152('0x39'))){_0x53c4b8[_0x1152('0x1d')]=qs[_0x1152('0x1d')](_0x1d7df4[_0x1152('0x34')][_0x1152('0x1d')]);_0x53c4b8[_0x1152('0x1b')]=qs[_0x1152('0x1b')](_0x1d7df4[_0x1152('0x34')]['offset']);}_0x53c4b8[_0x1152('0x3a')]=qs[_0x1152('0x3b')](_0x1d7df4[_0x1152('0x34')][_0x1152('0x3b')]);_0x53c4b8['where']=qs[_0x1152('0x32')](_[_0x1152('0x3c')](_0x1d7df4[_0x1152('0x34')],_0x16010d['filters']),_0xb0c44a);if(_0x1d7df4[_0x1152('0x34')][_0x1152('0x3d')]){_0x53c4b8[_0x1152('0x3e')]=_['merge'](_0x53c4b8['where'],{'$or':_['map'](_0xb0c44a,function(_0x40040f){if(_0x40040f[_0x1152('0x2e')]!==_0x1152('0x3f')){var _0x153b39={};_0x153b39[_0x40040f[_0x1152('0x28')]]={'$like':'%'+_0x1d7df4[_0x1152('0x34')]['filter']+'%'};return _0x153b39;}})});}_0x53c4b8=_['merge']({},_0x53c4b8,_0x1d7df4[_0x1152('0x40')]);var _0x9e646e={'where':_0x53c4b8[_0x1152('0x3e')]};return db['SalesforceConfiguration']['count'](_0x9e646e)[_0x1152('0x23')](function(_0x331137){_0x3b1596[_0x1152('0x41')]=_0x331137;if(_0x1d7df4[_0x1152('0x34')][_0x1152('0x42')]){_0x53c4b8['include']=[{'all':!![]}];}return db[_0x1152('0x2b')][_0x1152('0x43')](_0x53c4b8);})['then'](function(_0x22e92d){_0x3b1596[_0x1152('0x44')]=_0x22e92d;return _0x3b1596;})[_0x1152('0x23')](respondWithFilteredResult(_0x5e78cf,_0x53c4b8))[_0x1152('0x45')](handleError(_0x5e78cf,null));};exports['show']=function(_0x51607e,_0x32f524){var _0x123d71={'raw':![],'where':{'id':_0x51607e['params']['id']}},_0x33750a={};_0x33750a[_0x1152('0x30')]=_[_0x1152('0x31')](db[_0x1152('0x2b')]['rawAttributes']);_0x33750a[_0x1152('0x34')]=_[_0x1152('0x31')](_0x51607e[_0x1152('0x34')]);_0x33750a[_0x1152('0x32')]=_[_0x1152('0x33')](_0x33750a[_0x1152('0x30')],_0x33750a['query']);_0x123d71['attributes']=_['intersection'](_0x33750a[_0x1152('0x30')],qs[_0x1152('0x35')](_0x51607e[_0x1152('0x34')][_0x1152('0x35')]));_0x123d71[_0x1152('0x36')]=_0x123d71[_0x1152('0x36')]['length']?_0x123d71[_0x1152('0x36')]:_0x33750a[_0x1152('0x30')];if(_0x51607e[_0x1152('0x34')][_0x1152('0x42')]){_0x123d71['include']=[{'all':!![]}];}_0x123d71=_[_0x1152('0x46')]({},_0x123d71,_0x51607e[_0x1152('0x40')]);return db[_0x1152('0x2b')][_0x1152('0x47')](_0x123d71)[_0x1152('0x23')](handleEntityNotFound(_0x32f524,null))[_0x1152('0x23')](respondWithResult(_0x32f524,null))['catch'](handleError(_0x32f524,null));};exports[_0x1152('0x48')]=function(_0xd52452,_0x66dfd8){return db[_0x1152('0x2b')][_0x1152('0x48')](_0xd52452[_0x1152('0x49')],{})['then'](respondWithResult(_0x66dfd8,0xc9))['catch'](handleError(_0x66dfd8,null));};exports['update']=function(_0x3fb1c0,_0x4501de){if(_0x3fb1c0[_0x1152('0x49')]['id']){delete _0x3fb1c0[_0x1152('0x49')]['id'];}return db[_0x1152('0x2b')][_0x1152('0x47')]({'where':{'id':_0x3fb1c0['params']['id']}})[_0x1152('0x23')](handleEntityNotFound(_0x4501de,null))['then'](saveUpdates(_0x3fb1c0[_0x1152('0x49')],null))[_0x1152('0x23')](respondWithResult(_0x4501de,null))[_0x1152('0x45')](handleError(_0x4501de,null));};exports[_0x1152('0x4a')]=function(_0x5940ae,_0x45176e){return db[_0x1152('0x2b')][_0x1152('0x47')]({'where':{'id':_0x5940ae[_0x1152('0x4b')]['id']}})[_0x1152('0x23')](handleEntityNotFound(_0x45176e,null))[_0x1152('0x23')](removeEntity(_0x45176e,null))[_0x1152('0x45')](handleError(_0x45176e,null));};exports['getFields']=function(_0x25b607,_0x596680,_0xde3aa5){var _0x561f3b={};var _0x37eab4={};var _0x447836;var _0x12e94a;return db['SalesforceConfiguration']['findOne']({'where':{'id':_0x25b607[_0x1152('0x4b')]['id']}})[_0x1152('0x23')](handleEntityNotFound(_0x596680,null))[_0x1152('0x23')](function(_0x3cce8e){if(_0x3cce8e){_0x447836=_0x3cce8e;_0x37eab4[_0x1152('0x30')]=_[_0x1152('0x31')](db[_0x1152('0x4c')][_0x1152('0x2c')]);_0x37eab4[_0x1152('0x34')]=_[_0x1152('0x31')](_0x25b607['query']);_0x37eab4[_0x1152('0x32')]=_[_0x1152('0x33')](_0x37eab4[_0x1152('0x30')],_0x37eab4[_0x1152('0x34')]);_0x561f3b[_0x1152('0x36')]=_['intersection'](_0x37eab4[_0x1152('0x30')],qs[_0x1152('0x35')](_0x25b607[_0x1152('0x34')][_0x1152('0x35')]));_0x561f3b['attributes']=_0x561f3b['attributes']['length']?_0x561f3b['attributes']:_0x37eab4[_0x1152('0x30')];_0x561f3b[_0x1152('0x3a')]=qs['sort'](_0x25b607[_0x1152('0x34')]['sort']);_0x561f3b[_0x1152('0x3e')]=qs[_0x1152('0x32')](_['pick'](_0x25b607[_0x1152('0x34')],_0x37eab4[_0x1152('0x32')]));if(_0x25b607[_0x1152('0x34')][_0x1152('0x3d')]){_0x561f3b[_0x1152('0x3e')]=_[_0x1152('0x46')](_0x561f3b[_0x1152('0x3e')],{'$or':_[_0x1152('0x2a')](_0x561f3b[_0x1152('0x36')],function(_0x4f6891){var _0x29d86a={};_0x29d86a[_0x4f6891]={'$like':'%'+_0x25b607['query'][_0x1152('0x3d')]+'%'};return _0x29d86a;})});}_0x561f3b=_[_0x1152('0x46')]({},_0x561f3b,_0x25b607[_0x1152('0x40')]);return _0x447836[_0x1152('0x4d')](_0x561f3b);}})[_0x1152('0x23')](function(_0x58cf24){if(_0x58cf24){_0x12e94a=_0x58cf24[_0x1152('0x37')];if(!_0x25b607[_0x1152('0x34')][_0x1152('0x38')](_0x1152('0x39'))){_0x561f3b[_0x1152('0x1d')]=qs['limit'](_0x25b607[_0x1152('0x34')][_0x1152('0x1d')]);_0x561f3b[_0x1152('0x1b')]=qs[_0x1152('0x1b')](_0x25b607[_0x1152('0x34')][_0x1152('0x1b')]);}return _0x447836[_0x1152('0x4d')](_0x561f3b);}})[_0x1152('0x23')](function(_0x4171f6){if(_0x4171f6){return _0x4171f6?{'count':_0x12e94a,'rows':_0x4171f6}:null;}})['then'](respondWithResult(_0x596680,null))[_0x1152('0x45')](handleError(_0x596680,null));};exports[_0x1152('0x4e')]=function(_0x418730,_0x1ac6f1,_0x535cfb){var _0xa3d17={};var _0x5728fa={};var _0x614971;var _0x547bac;return db[_0x1152('0x2b')][_0x1152('0x4f')]({'where':{'id':_0x418730['params']['id']}})['then'](handleEntityNotFound(_0x1ac6f1,null))[_0x1152('0x23')](function(_0x156cef){if(_0x156cef){_0x614971=_0x156cef;_0x5728fa['model']=_[_0x1152('0x31')](db[_0x1152('0x4c')][_0x1152('0x2c')]);_0x5728fa[_0x1152('0x34')]=_[_0x1152('0x31')](_0x418730[_0x1152('0x34')]);_0x5728fa[_0x1152('0x32')]=_[_0x1152('0x33')](_0x5728fa[_0x1152('0x30')],_0x5728fa[_0x1152('0x34')]);_0xa3d17[_0x1152('0x36')]=_['intersection'](_0x5728fa[_0x1152('0x30')],qs['fields'](_0x418730[_0x1152('0x34')][_0x1152('0x35')]));_0xa3d17[_0x1152('0x36')]=_0xa3d17[_0x1152('0x36')][_0x1152('0x37')]?_0xa3d17[_0x1152('0x36')]:_0x5728fa['model'];_0xa3d17[_0x1152('0x3a')]=qs[_0x1152('0x3b')](_0x418730[_0x1152('0x34')]['sort']);_0xa3d17[_0x1152('0x3e')]=qs[_0x1152('0x32')](_['pick'](_0x418730[_0x1152('0x34')],_0x5728fa[_0x1152('0x32')]));if(_0x418730['query'][_0x1152('0x3d')]){_0xa3d17[_0x1152('0x3e')]=_[_0x1152('0x46')](_0xa3d17[_0x1152('0x3e')],{'$or':_[_0x1152('0x2a')](_0xa3d17[_0x1152('0x36')],function(_0x374374){var _0x103856={};_0x103856[_0x374374]={'$like':'%'+_0x418730[_0x1152('0x34')][_0x1152('0x3d')]+'%'};return _0x103856;})});}_0xa3d17=_['merge']({},_0xa3d17,_0x418730['options']);return _0x614971[_0x1152('0x4e')](_0xa3d17);}})[_0x1152('0x23')](function(_0x3774b7){if(_0x3774b7){_0x547bac=_0x3774b7[_0x1152('0x37')];if(!_0x418730[_0x1152('0x34')]['hasOwnProperty'](_0x1152('0x39'))){_0xa3d17[_0x1152('0x1d')]=qs['limit'](_0x418730['query']['limit']);_0xa3d17['offset']=qs[_0x1152('0x1b')](_0x418730['query']['offset']);}return _0x614971[_0x1152('0x4e')](_0xa3d17);}})[_0x1152('0x23')](function(_0x11e13b){if(_0x11e13b){return _0x11e13b?{'count':_0x547bac,'rows':_0x11e13b}:null;}})[_0x1152('0x23')](respondWithResult(_0x1ac6f1,null))[_0x1152('0x45')](handleError(_0x1ac6f1,null));};exports[_0x1152('0x50')]=function(_0x8ccb3d,_0x1f8921,_0x34ae35){var _0x5f3afc={};var _0x168d55={};var _0x1b93f7;var _0x50cdfa;return db[_0x1152('0x2b')][_0x1152('0x4f')]({'where':{'id':_0x8ccb3d['params']['id']}})[_0x1152('0x23')](handleEntityNotFound(_0x1f8921,null))[_0x1152('0x23')](function(_0x4b5ae4){if(_0x4b5ae4){_0x1b93f7=_0x4b5ae4;_0x168d55[_0x1152('0x30')]=_[_0x1152('0x31')](db[_0x1152('0x4c')]['rawAttributes']);_0x168d55[_0x1152('0x34')]=_[_0x1152('0x31')](_0x8ccb3d['query']);_0x168d55['filters']=_[_0x1152('0x33')](_0x168d55['model'],_0x168d55[_0x1152('0x34')]);_0x5f3afc[_0x1152('0x36')]=_['intersection'](_0x168d55[_0x1152('0x30')],qs[_0x1152('0x35')](_0x8ccb3d[_0x1152('0x34')]['fields']));_0x5f3afc[_0x1152('0x36')]=_0x5f3afc['attributes']['length']?_0x5f3afc[_0x1152('0x36')]:_0x168d55[_0x1152('0x30')];_0x5f3afc[_0x1152('0x3a')]=qs[_0x1152('0x3b')](_0x8ccb3d[_0x1152('0x34')][_0x1152('0x3b')]);_0x5f3afc['where']=qs[_0x1152('0x32')](_[_0x1152('0x3c')](_0x8ccb3d[_0x1152('0x34')],_0x168d55[_0x1152('0x32')]));if(_0x8ccb3d['query']['filter']){_0x5f3afc[_0x1152('0x3e')]=_[_0x1152('0x46')](_0x5f3afc[_0x1152('0x3e')],{'$or':_[_0x1152('0x2a')](_0x5f3afc['attributes'],function(_0x3e77cb){var _0x9027b1={};_0x9027b1[_0x3e77cb]={'$like':'%'+_0x8ccb3d[_0x1152('0x34')]['filter']+'%'};return _0x9027b1;})});}_0x5f3afc=_[_0x1152('0x46')]({},_0x5f3afc,_0x8ccb3d[_0x1152('0x40')]);return _0x1b93f7['getDescriptions'](_0x5f3afc);}})[_0x1152('0x23')](function(_0x4872ae){if(_0x4872ae){_0x50cdfa=_0x4872ae[_0x1152('0x37')];if(!_0x8ccb3d[_0x1152('0x34')]['hasOwnProperty'](_0x1152('0x39'))){_0x5f3afc[_0x1152('0x1d')]=qs[_0x1152('0x1d')](_0x8ccb3d['query'][_0x1152('0x1d')]);_0x5f3afc['offset']=qs[_0x1152('0x1b')](_0x8ccb3d['query'][_0x1152('0x1b')]);}return _0x1b93f7[_0x1152('0x50')](_0x5f3afc);}})['then'](function(_0x1ab0e6){if(_0x1ab0e6){return _0x1ab0e6?{'count':_0x50cdfa,'rows':_0x1ab0e6}:null;}})[_0x1152('0x23')](respondWithResult(_0x1f8921,null))[_0x1152('0x45')](handleError(_0x1f8921,null));};