Built motion from commit d5e4af8c.|2.6.23
[motion2.git] / server / api / intSugarcrmConfiguration / intSugarcrmConfiguration.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 _0xf0a6=['limit','count','set','Content-Range','apply','reject','save','update','destroy','then','error','stack','name','index','map','SugarcrmConfiguration','rawAttributes','type','key','model','query','keys','intersection','fields','attributes','length','hasOwnProperty','nolimit','order','sort','where','pick','filters','VIRTUAL','filter','merge','options','includeAll','catch','show','params','include','find','create','body','getFields','findOne','SugarcrmField','getSubjects','getDescriptions','eml-format','rimraf','fast-json-patch','util','sox','to-csv','ejs','fs-extra','lodash','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../mysqldb','sendStatus','status','end','json','offset','undefined'];(function(_0x35a1a3,_0x3a86e3){var _0x596022=function(_0x747fe0){while(--_0x747fe0){_0x35a1a3['push'](_0x35a1a3['shift']());}};_0x596022(++_0x3a86e3);}(_0xf0a6,0x7f));var _0x6f0a=function(_0x57f959,_0x3ce8ef){_0x57f959=_0x57f959-0x0;var _0xef3d9f=_0xf0a6[_0x57f959];return _0xef3d9f;};'use strict';var emlformat=require(_0x6f0a('0x0'));var rimraf=require(_0x6f0a('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0x6f0a('0x2'));var rp=require('request-promise');var moment=require('moment');var BPromise=require('bluebird');var Mustache=require('mustache');var util=require(_0x6f0a('0x3'));var path=require('path');var sox=require(_0x6f0a('0x4'));var csv=require(_0x6f0a('0x5'));var ejs=require(_0x6f0a('0x6'));var fs=require('fs');var fs_extra=require(_0x6f0a('0x7'));var _=require(_0x6f0a('0x8'));var squel=require('squel');var crypto=require('crypto');var jsforce=require(_0x6f0a('0x9'));var deskjs=require(_0x6f0a('0xa'));var toCsv=require(_0x6f0a('0x5'));var querystring=require(_0x6f0a('0xb'));var Papa=require(_0x6f0a('0xc'));var Redis=require(_0x6f0a('0xd'));var authService=require(_0x6f0a('0xe'));var qs=require(_0x6f0a('0xf'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x6f0a('0x10'));var logger=require(_0x6f0a('0x11'))(_0x6f0a('0x12'));var utils=require(_0x6f0a('0x13'));var config=require('../../config/environment');var licenseUtil=require('../../config/license/util');var db=require(_0x6f0a('0x14'))['db'];function respondWithStatusCode(_0x2e3bef,_0x19f44f){_0x19f44f=_0x19f44f||0xcc;return function(_0x5b1b51){if(_0x5b1b51){return _0x2e3bef[_0x6f0a('0x15')](_0x19f44f);}return _0x2e3bef[_0x6f0a('0x16')](_0x19f44f)[_0x6f0a('0x17')]();};}function respondWithResult(_0x2136e2,_0x48ab60){_0x48ab60=_0x48ab60||0xc8;return function(_0x1cc4d9){if(_0x1cc4d9){return _0x2136e2[_0x6f0a('0x16')](_0x48ab60)[_0x6f0a('0x18')](_0x1cc4d9);}};}function respondWithFilteredResult(_0x59bb60,_0x23a2e9){return function(_0x3dbc84){if(_0x3dbc84){var _0x4fca4a=typeof _0x23a2e9[_0x6f0a('0x19')]===_0x6f0a('0x1a')&&typeof _0x23a2e9[_0x6f0a('0x1b')]===_0x6f0a('0x1a');var _0x835a25=_0x3dbc84['count'];var _0x34e31c=_0x4fca4a?0x0:_0x23a2e9['offset'];var _0x537fe4=_0x4fca4a?_0x3dbc84[_0x6f0a('0x1c')]:_0x23a2e9[_0x6f0a('0x19')]+_0x23a2e9[_0x6f0a('0x1b')];var _0x1e0d5b;if(_0x537fe4>=_0x835a25){_0x537fe4=_0x835a25;_0x1e0d5b=0xc8;}else{_0x1e0d5b=0xce;}_0x59bb60[_0x6f0a('0x16')](_0x1e0d5b);return _0x59bb60[_0x6f0a('0x1d')](_0x6f0a('0x1e'),_0x34e31c+'-'+_0x537fe4+'/'+_0x835a25)[_0x6f0a('0x18')](_0x3dbc84);}return null;};}function patchUpdates(_0x312fda){return function(_0x38281e){try{jsonpatch[_0x6f0a('0x1f')](_0x38281e,_0x312fda,!![]);}catch(_0x5624be){return BPromise[_0x6f0a('0x20')](_0x5624be);}return _0x38281e[_0x6f0a('0x21')]();};}function saveUpdates(_0x3520a6,_0x7c5561){return function(_0x3877db){if(_0x3877db){return _0x3877db[_0x6f0a('0x22')](_0x3520a6)['then'](function(_0x53b135){return _0x53b135;});}return null;};}function removeEntity(_0xf51c8b,_0xcaf377){return function(_0xd7536){if(_0xd7536){return _0xd7536[_0x6f0a('0x23')]()[_0x6f0a('0x24')](function(){_0xf51c8b[_0x6f0a('0x16')](0xcc)[_0x6f0a('0x17')]();});}};}function handleEntityNotFound(_0x18be37,_0x1b279d){return function(_0x452076){if(!_0x452076){_0x18be37[_0x6f0a('0x15')](0x194);}return _0x452076;};}function handleError(_0x5645bd,_0x2b545c){_0x2b545c=_0x2b545c||0x1f4;return function(_0x347165){logger[_0x6f0a('0x25')](_0x347165[_0x6f0a('0x26')]);if(_0x347165[_0x6f0a('0x27')]){delete _0x347165[_0x6f0a('0x27')];}_0x5645bd['status'](_0x2b545c)['send'](_0x347165);};}exports[_0x6f0a('0x28')]=function(_0x520397,_0x307ea2){var _0x38c097={},_0x26dd5e={},_0x59ffa2={'count':0x0,'rows':[]};var _0x4c40e4=_[_0x6f0a('0x29')](db[_0x6f0a('0x2a')][_0x6f0a('0x2b')],function(_0x498508){return{'name':_0x498508['fieldName'],'type':_0x498508[_0x6f0a('0x2c')][_0x6f0a('0x2d')]};});_0x26dd5e[_0x6f0a('0x2e')]=_[_0x6f0a('0x29')](_0x4c40e4,'name');_0x26dd5e[_0x6f0a('0x2f')]=_[_0x6f0a('0x30')](_0x520397[_0x6f0a('0x2f')]);_0x26dd5e['filters']=_[_0x6f0a('0x31')](_0x26dd5e['model'],_0x26dd5e[_0x6f0a('0x2f')]);_0x38c097['attributes']=_[_0x6f0a('0x31')](_0x26dd5e['model'],qs[_0x6f0a('0x32')](_0x520397[_0x6f0a('0x2f')]['fields']));_0x38c097[_0x6f0a('0x33')]=_0x38c097[_0x6f0a('0x33')][_0x6f0a('0x34')]?_0x38c097[_0x6f0a('0x33')]:_0x26dd5e[_0x6f0a('0x2e')];if(!_0x520397[_0x6f0a('0x2f')][_0x6f0a('0x35')](_0x6f0a('0x36'))){_0x38c097[_0x6f0a('0x1b')]=qs[_0x6f0a('0x1b')](_0x520397[_0x6f0a('0x2f')][_0x6f0a('0x1b')]);_0x38c097[_0x6f0a('0x19')]=qs[_0x6f0a('0x19')](_0x520397[_0x6f0a('0x2f')][_0x6f0a('0x19')]);}_0x38c097[_0x6f0a('0x37')]=qs['sort'](_0x520397[_0x6f0a('0x2f')][_0x6f0a('0x38')]);_0x38c097[_0x6f0a('0x39')]=qs['filters'](_[_0x6f0a('0x3a')](_0x520397[_0x6f0a('0x2f')],_0x26dd5e[_0x6f0a('0x3b')]),_0x4c40e4);if(_0x520397[_0x6f0a('0x2f')]['filter']){_0x38c097[_0x6f0a('0x39')]=_['merge'](_0x38c097[_0x6f0a('0x39')],{'$or':_[_0x6f0a('0x29')](_0x4c40e4,function(_0x428cf1){if(_0x428cf1[_0x6f0a('0x2c')]!==_0x6f0a('0x3c')){var _0x570d7d={};_0x570d7d[_0x428cf1['name']]={'$like':'%'+_0x520397[_0x6f0a('0x2f')][_0x6f0a('0x3d')]+'%'};return _0x570d7d;}})});}_0x38c097=_[_0x6f0a('0x3e')]({},_0x38c097,_0x520397[_0x6f0a('0x3f')]);var _0x2d45a3={'where':_0x38c097[_0x6f0a('0x39')]};return db[_0x6f0a('0x2a')][_0x6f0a('0x1c')](_0x2d45a3)[_0x6f0a('0x24')](function(_0x3a8e9f){_0x59ffa2[_0x6f0a('0x1c')]=_0x3a8e9f;if(_0x520397['query'][_0x6f0a('0x40')]){_0x38c097['include']=[{'all':!![]}];}return db[_0x6f0a('0x2a')]['findAll'](_0x38c097);})[_0x6f0a('0x24')](function(_0x252806){_0x59ffa2['rows']=_0x252806;return _0x59ffa2;})['then'](respondWithFilteredResult(_0x307ea2,_0x38c097))[_0x6f0a('0x41')](handleError(_0x307ea2,null));};exports[_0x6f0a('0x42')]=function(_0x5740ef,_0x1a5568){var _0x104e21={'raw':![],'where':{'id':_0x5740ef[_0x6f0a('0x43')]['id']}},_0x5d2454={};_0x5d2454[_0x6f0a('0x2e')]=_['keys'](db[_0x6f0a('0x2a')]['rawAttributes']);_0x5d2454[_0x6f0a('0x2f')]=_[_0x6f0a('0x30')](_0x5740ef['query']);_0x5d2454[_0x6f0a('0x3b')]=_[_0x6f0a('0x31')](_0x5d2454[_0x6f0a('0x2e')],_0x5d2454['query']);_0x104e21[_0x6f0a('0x33')]=_[_0x6f0a('0x31')](_0x5d2454['model'],qs[_0x6f0a('0x32')](_0x5740ef[_0x6f0a('0x2f')][_0x6f0a('0x32')]));_0x104e21['attributes']=_0x104e21[_0x6f0a('0x33')]['length']?_0x104e21['attributes']:_0x5d2454['model'];if(_0x5740ef['query'][_0x6f0a('0x40')]){_0x104e21[_0x6f0a('0x44')]=[{'all':!![]}];}_0x104e21=_['merge']({},_0x104e21,_0x5740ef[_0x6f0a('0x3f')]);return db[_0x6f0a('0x2a')][_0x6f0a('0x45')](_0x104e21)['then'](handleEntityNotFound(_0x1a5568,null))[_0x6f0a('0x24')](respondWithResult(_0x1a5568,null))['catch'](handleError(_0x1a5568,null));};exports[_0x6f0a('0x46')]=function(_0x2e5ddb,_0x15864d){return db['SugarcrmConfiguration'][_0x6f0a('0x46')](_0x2e5ddb[_0x6f0a('0x47')],{})[_0x6f0a('0x24')](respondWithResult(_0x15864d,0xc9))[_0x6f0a('0x41')](handleError(_0x15864d,null));};exports[_0x6f0a('0x22')]=function(_0x460b3d,_0x25d9ae){if(_0x460b3d[_0x6f0a('0x47')]['id']){delete _0x460b3d[_0x6f0a('0x47')]['id'];}return db['SugarcrmConfiguration'][_0x6f0a('0x45')]({'where':{'id':_0x460b3d[_0x6f0a('0x43')]['id']}})[_0x6f0a('0x24')](handleEntityNotFound(_0x25d9ae,null))['then'](saveUpdates(_0x460b3d[_0x6f0a('0x47')],null))[_0x6f0a('0x24')](respondWithResult(_0x25d9ae,null))[_0x6f0a('0x41')](handleError(_0x25d9ae,null));};exports[_0x6f0a('0x23')]=function(_0x30993c,_0x2ef87c){return db['SugarcrmConfiguration'][_0x6f0a('0x45')]({'where':{'id':_0x30993c[_0x6f0a('0x43')]['id']}})[_0x6f0a('0x24')](handleEntityNotFound(_0x2ef87c,null))[_0x6f0a('0x24')](removeEntity(_0x2ef87c,null))['catch'](handleError(_0x2ef87c,null));};exports[_0x6f0a('0x48')]=function(_0x2bfa18,_0x2b0c55,_0x2aace2){var _0x131ec3={};var _0x15ea7a={};var _0x33ce48;var _0x537f73;return db[_0x6f0a('0x2a')][_0x6f0a('0x49')]({'where':{'id':_0x2bfa18[_0x6f0a('0x43')]['id']}})['then'](handleEntityNotFound(_0x2b0c55,null))[_0x6f0a('0x24')](function(_0x2f40c3){if(_0x2f40c3){_0x33ce48=_0x2f40c3;_0x15ea7a[_0x6f0a('0x2e')]=_['keys'](db[_0x6f0a('0x4a')][_0x6f0a('0x2b')]);_0x15ea7a['query']=_[_0x6f0a('0x30')](_0x2bfa18['query']);_0x15ea7a['filters']=_[_0x6f0a('0x31')](_0x15ea7a['model'],_0x15ea7a[_0x6f0a('0x2f')]);_0x131ec3[_0x6f0a('0x33')]=_[_0x6f0a('0x31')](_0x15ea7a[_0x6f0a('0x2e')],qs['fields'](_0x2bfa18['query'][_0x6f0a('0x32')]));_0x131ec3['attributes']=_0x131ec3[_0x6f0a('0x33')][_0x6f0a('0x34')]?_0x131ec3['attributes']:_0x15ea7a[_0x6f0a('0x2e')];_0x131ec3[_0x6f0a('0x37')]=qs[_0x6f0a('0x38')](_0x2bfa18[_0x6f0a('0x2f')][_0x6f0a('0x38')]);_0x131ec3['where']=qs[_0x6f0a('0x3b')](_[_0x6f0a('0x3a')](_0x2bfa18[_0x6f0a('0x2f')],_0x15ea7a[_0x6f0a('0x3b')]));if(_0x2bfa18['query'][_0x6f0a('0x3d')]){_0x131ec3[_0x6f0a('0x39')]=_['merge'](_0x131ec3['where'],{'$or':_['map'](_0x131ec3[_0x6f0a('0x33')],function(_0x2efe80){var _0xc3c990={};_0xc3c990[_0x2efe80]={'$like':'%'+_0x2bfa18['query']['filter']+'%'};return _0xc3c990;})});}_0x131ec3=_['merge']({},_0x131ec3,_0x2bfa18[_0x6f0a('0x3f')]);return _0x33ce48[_0x6f0a('0x48')](_0x131ec3);}})[_0x6f0a('0x24')](function(_0x46a711){if(_0x46a711){_0x537f73=_0x46a711[_0x6f0a('0x34')];if(!_0x2bfa18[_0x6f0a('0x2f')][_0x6f0a('0x35')](_0x6f0a('0x36'))){_0x131ec3[_0x6f0a('0x1b')]=qs['limit'](_0x2bfa18[_0x6f0a('0x2f')][_0x6f0a('0x1b')]);_0x131ec3['offset']=qs[_0x6f0a('0x19')](_0x2bfa18[_0x6f0a('0x2f')]['offset']);}return _0x33ce48[_0x6f0a('0x48')](_0x131ec3);}})['then'](function(_0x22b276){if(_0x22b276){return _0x22b276?{'count':_0x537f73,'rows':_0x22b276}:null;}})[_0x6f0a('0x24')](respondWithResult(_0x2b0c55,null))['catch'](handleError(_0x2b0c55,null));};exports[_0x6f0a('0x4b')]=function(_0x331873,_0x341b1f,_0x46fe7b){var _0x2e0c79={};var _0x45c729={};var _0x3bf67a;var _0x5156b2;return db[_0x6f0a('0x2a')][_0x6f0a('0x49')]({'where':{'id':_0x331873[_0x6f0a('0x43')]['id']}})[_0x6f0a('0x24')](handleEntityNotFound(_0x341b1f,null))[_0x6f0a('0x24')](function(_0x118f27){if(_0x118f27){_0x3bf67a=_0x118f27;_0x45c729['model']=_['keys'](db['SugarcrmField'][_0x6f0a('0x2b')]);_0x45c729[_0x6f0a('0x2f')]=_[_0x6f0a('0x30')](_0x331873[_0x6f0a('0x2f')]);_0x45c729[_0x6f0a('0x3b')]=_[_0x6f0a('0x31')](_0x45c729[_0x6f0a('0x2e')],_0x45c729['query']);_0x2e0c79[_0x6f0a('0x33')]=_['intersection'](_0x45c729[_0x6f0a('0x2e')],qs[_0x6f0a('0x32')](_0x331873[_0x6f0a('0x2f')][_0x6f0a('0x32')]));_0x2e0c79[_0x6f0a('0x33')]=_0x2e0c79['attributes'][_0x6f0a('0x34')]?_0x2e0c79[_0x6f0a('0x33')]:_0x45c729[_0x6f0a('0x2e')];_0x2e0c79[_0x6f0a('0x37')]=qs[_0x6f0a('0x38')](_0x331873[_0x6f0a('0x2f')][_0x6f0a('0x38')]);_0x2e0c79[_0x6f0a('0x39')]=qs['filters'](_['pick'](_0x331873[_0x6f0a('0x2f')],_0x45c729['filters']));if(_0x331873[_0x6f0a('0x2f')]['filter']){_0x2e0c79['where']=_[_0x6f0a('0x3e')](_0x2e0c79[_0x6f0a('0x39')],{'$or':_['map'](_0x2e0c79['attributes'],function(_0x50d387){var _0x452380={};_0x452380[_0x50d387]={'$like':'%'+_0x331873[_0x6f0a('0x2f')][_0x6f0a('0x3d')]+'%'};return _0x452380;})});}_0x2e0c79=_[_0x6f0a('0x3e')]({},_0x2e0c79,_0x331873[_0x6f0a('0x3f')]);return _0x3bf67a['getSubjects'](_0x2e0c79);}})[_0x6f0a('0x24')](function(_0x55bf4e){if(_0x55bf4e){_0x5156b2=_0x55bf4e[_0x6f0a('0x34')];if(!_0x331873[_0x6f0a('0x2f')][_0x6f0a('0x35')](_0x6f0a('0x36'))){_0x2e0c79[_0x6f0a('0x1b')]=qs[_0x6f0a('0x1b')](_0x331873[_0x6f0a('0x2f')][_0x6f0a('0x1b')]);_0x2e0c79[_0x6f0a('0x19')]=qs[_0x6f0a('0x19')](_0x331873[_0x6f0a('0x2f')][_0x6f0a('0x19')]);}return _0x3bf67a[_0x6f0a('0x4b')](_0x2e0c79);}})[_0x6f0a('0x24')](function(_0x50436f){if(_0x50436f){return _0x50436f?{'count':_0x5156b2,'rows':_0x50436f}:null;}})[_0x6f0a('0x24')](respondWithResult(_0x341b1f,null))[_0x6f0a('0x41')](handleError(_0x341b1f,null));};exports[_0x6f0a('0x4c')]=function(_0x59c02b,_0x337b05,_0x55a0d8){var _0xfff1af={};var _0x3f5d68={};var _0x55e404;var _0x3e87c8;return db['SugarcrmConfiguration']['findOne']({'where':{'id':_0x59c02b['params']['id']}})[_0x6f0a('0x24')](handleEntityNotFound(_0x337b05,null))['then'](function(_0x337013){if(_0x337013){_0x55e404=_0x337013;_0x3f5d68[_0x6f0a('0x2e')]=_['keys'](db[_0x6f0a('0x4a')][_0x6f0a('0x2b')]);_0x3f5d68[_0x6f0a('0x2f')]=_[_0x6f0a('0x30')](_0x59c02b[_0x6f0a('0x2f')]);_0x3f5d68[_0x6f0a('0x3b')]=_[_0x6f0a('0x31')](_0x3f5d68[_0x6f0a('0x2e')],_0x3f5d68[_0x6f0a('0x2f')]);_0xfff1af[_0x6f0a('0x33')]=_[_0x6f0a('0x31')](_0x3f5d68['model'],qs[_0x6f0a('0x32')](_0x59c02b[_0x6f0a('0x2f')]['fields']));_0xfff1af[_0x6f0a('0x33')]=_0xfff1af['attributes'][_0x6f0a('0x34')]?_0xfff1af[_0x6f0a('0x33')]:_0x3f5d68['model'];_0xfff1af[_0x6f0a('0x37')]=qs['sort'](_0x59c02b[_0x6f0a('0x2f')]['sort']);_0xfff1af[_0x6f0a('0x39')]=qs['filters'](_[_0x6f0a('0x3a')](_0x59c02b[_0x6f0a('0x2f')],_0x3f5d68[_0x6f0a('0x3b')]));if(_0x59c02b[_0x6f0a('0x2f')][_0x6f0a('0x3d')]){_0xfff1af[_0x6f0a('0x39')]=_[_0x6f0a('0x3e')](_0xfff1af[_0x6f0a('0x39')],{'$or':_[_0x6f0a('0x29')](_0xfff1af[_0x6f0a('0x33')],function(_0x168af5){var _0x33bda5={};_0x33bda5[_0x168af5]={'$like':'%'+_0x59c02b[_0x6f0a('0x2f')]['filter']+'%'};return _0x33bda5;})});}_0xfff1af=_[_0x6f0a('0x3e')]({},_0xfff1af,_0x59c02b['options']);return _0x55e404[_0x6f0a('0x4c')](_0xfff1af);}})[_0x6f0a('0x24')](function(_0x1d126c){if(_0x1d126c){_0x3e87c8=_0x1d126c[_0x6f0a('0x34')];if(!_0x59c02b['query'][_0x6f0a('0x35')](_0x6f0a('0x36'))){_0xfff1af[_0x6f0a('0x1b')]=qs['limit'](_0x59c02b[_0x6f0a('0x2f')]['limit']);_0xfff1af[_0x6f0a('0x19')]=qs[_0x6f0a('0x19')](_0x59c02b[_0x6f0a('0x2f')][_0x6f0a('0x19')]);}return _0x55e404['getDescriptions'](_0xfff1af);}})[_0x6f0a('0x24')](function(_0x1efa52){if(_0x1efa52){return _0x1efa52?{'count':_0x3e87c8,'rows':_0x1efa52}:null;}})[_0x6f0a('0x24')](respondWithResult(_0x337b05,null))[_0x6f0a('0x41')](handleError(_0x337b05,null));};