Built motion from commit 7158bc59.|2.5.42
[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 _0xab66=['sendStatus','status','end','json','undefined','count','offset','limit','Content-Range','apply','save','destroy','then','error','stack','name','index','map','SugarcrmConfiguration','rawAttributes','fieldName','type','key','model','query','intersection','attributes','fields','hasOwnProperty','order','sort','where','filters','pick','filter','VIRTUAL','merge','options','includeAll','include','findAll','rows','catch','show','params','keys','length','find','create','body','update','getFields','findOne','SugarcrmField','nolimit','getSubjects','getDescriptions','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','sox','to-csv','ejs','fs-extra','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb'];(function(_0x4eab24,_0x3caaaa){var _0x5ec681=function(_0x3fa917){while(--_0x3fa917){_0x4eab24['push'](_0x4eab24['shift']());}};_0x5ec681(++_0x3caaaa);}(_0xab66,0x135));var _0x6ab6=function(_0x17ed7f,_0x5af127){_0x17ed7f=_0x17ed7f-0x0;var _0x285e03=_0xab66[_0x17ed7f];return _0x285e03;};'use strict';var emlformat=require('eml-format');var rimraf=require('rimraf');var zipdir=require(_0x6ab6('0x0'));var jsonpatch=require(_0x6ab6('0x1'));var rp=require(_0x6ab6('0x2'));var moment=require(_0x6ab6('0x3'));var BPromise=require(_0x6ab6('0x4'));var Mustache=require(_0x6ab6('0x5'));var util=require(_0x6ab6('0x6'));var path=require('path');var sox=require(_0x6ab6('0x7'));var csv=require(_0x6ab6('0x8'));var ejs=require(_0x6ab6('0x9'));var fs=require('fs');var fs_extra=require(_0x6ab6('0xa'));var _=require(_0x6ab6('0xb'));var squel=require(_0x6ab6('0xc'));var crypto=require(_0x6ab6('0xd'));var jsforce=require(_0x6ab6('0xe'));var deskjs=require(_0x6ab6('0xf'));var toCsv=require(_0x6ab6('0x8'));var querystring=require(_0x6ab6('0x10'));var Papa=require(_0x6ab6('0x11'));var Redis=require('ioredis');var authService=require(_0x6ab6('0x12'));var qs=require(_0x6ab6('0x13'));var as=require(_0x6ab6('0x14'));var hardwareService=require(_0x6ab6('0x15'));var logger=require(_0x6ab6('0x16'))(_0x6ab6('0x17'));var utils=require(_0x6ab6('0x18'));var config=require(_0x6ab6('0x19'));var licenseUtil=require('../../config/license/util');var db=require(_0x6ab6('0x1a'))['db'];function respondWithStatusCode(_0x53af22,_0x4eb35d){_0x4eb35d=_0x4eb35d||0xcc;return function(_0x1427bc){if(_0x1427bc){return _0x53af22[_0x6ab6('0x1b')](_0x4eb35d);}return _0x53af22[_0x6ab6('0x1c')](_0x4eb35d)[_0x6ab6('0x1d')]();};}function respondWithResult(_0x334527,_0x1ccec2){_0x1ccec2=_0x1ccec2||0xc8;return function(_0x320512){if(_0x320512){return _0x334527['status'](_0x1ccec2)[_0x6ab6('0x1e')](_0x320512);}};}function respondWithFilteredResult(_0x47d917,_0x26b7ae){return function(_0xc500d4){if(_0xc500d4){var _0x308cc7=typeof _0x26b7ae['offset']===_0x6ab6('0x1f')&&typeof _0x26b7ae['limit']===_0x6ab6('0x1f');var _0x2faf27=_0xc500d4[_0x6ab6('0x20')];var _0x56d532=_0x308cc7?0x0:_0x26b7ae[_0x6ab6('0x21')];var _0x1a66f7=_0x308cc7?_0xc500d4[_0x6ab6('0x20')]:_0x26b7ae[_0x6ab6('0x21')]+_0x26b7ae[_0x6ab6('0x22')];var _0x3f88b5;if(_0x1a66f7>=_0x2faf27){_0x1a66f7=_0x2faf27;_0x3f88b5=0xc8;}else{_0x3f88b5=0xce;}_0x47d917[_0x6ab6('0x1c')](_0x3f88b5);return _0x47d917['set'](_0x6ab6('0x23'),_0x56d532+'-'+_0x1a66f7+'/'+_0x2faf27)[_0x6ab6('0x1e')](_0xc500d4);}return null;};}function patchUpdates(_0x27de4f){return function(_0x2037f8){try{jsonpatch[_0x6ab6('0x24')](_0x2037f8,_0x27de4f,!![]);}catch(_0x4ee125){return BPromise['reject'](_0x4ee125);}return _0x2037f8[_0x6ab6('0x25')]();};}function saveUpdates(_0x2d954f,_0x517b34){return function(_0x3b8856){if(_0x3b8856){return _0x3b8856['update'](_0x2d954f)['then'](function(_0x4552c6){return _0x4552c6;});}return null;};}function removeEntity(_0x3f845f,_0x26ecbb){return function(_0x17e950){if(_0x17e950){return _0x17e950[_0x6ab6('0x26')]()[_0x6ab6('0x27')](function(){_0x3f845f['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0x324c82,_0x496ca8){return function(_0x2ddd06){if(!_0x2ddd06){_0x324c82['sendStatus'](0x194);}return _0x2ddd06;};}function handleError(_0x59ff4a,_0x2ec880){_0x2ec880=_0x2ec880||0x1f4;return function(_0xdbffab){logger[_0x6ab6('0x28')](_0xdbffab[_0x6ab6('0x29')]);if(_0xdbffab[_0x6ab6('0x2a')]){delete _0xdbffab[_0x6ab6('0x2a')];}_0x59ff4a[_0x6ab6('0x1c')](_0x2ec880)['send'](_0xdbffab);};}exports[_0x6ab6('0x2b')]=function(_0x94304c,_0x49e5f9){var _0x3b68d8={},_0x3be55a={},_0x13316d={'count':0x0,'rows':[]};var _0x1949d6=_[_0x6ab6('0x2c')](db[_0x6ab6('0x2d')][_0x6ab6('0x2e')],function(_0x5121b5){return{'name':_0x5121b5[_0x6ab6('0x2f')],'type':_0x5121b5[_0x6ab6('0x30')][_0x6ab6('0x31')]};});_0x3be55a[_0x6ab6('0x32')]=_[_0x6ab6('0x2c')](_0x1949d6,_0x6ab6('0x2a'));_0x3be55a[_0x6ab6('0x33')]=_['keys'](_0x94304c[_0x6ab6('0x33')]);_0x3be55a['filters']=_[_0x6ab6('0x34')](_0x3be55a['model'],_0x3be55a[_0x6ab6('0x33')]);_0x3b68d8[_0x6ab6('0x35')]=_[_0x6ab6('0x34')](_0x3be55a[_0x6ab6('0x32')],qs[_0x6ab6('0x36')](_0x94304c['query'][_0x6ab6('0x36')]));_0x3b68d8[_0x6ab6('0x35')]=_0x3b68d8[_0x6ab6('0x35')]['length']?_0x3b68d8[_0x6ab6('0x35')]:_0x3be55a['model'];if(!_0x94304c['query'][_0x6ab6('0x37')]('nolimit')){_0x3b68d8[_0x6ab6('0x22')]=qs[_0x6ab6('0x22')](_0x94304c[_0x6ab6('0x33')][_0x6ab6('0x22')]);_0x3b68d8[_0x6ab6('0x21')]=qs['offset'](_0x94304c['query'][_0x6ab6('0x21')]);}_0x3b68d8[_0x6ab6('0x38')]=qs['sort'](_0x94304c[_0x6ab6('0x33')][_0x6ab6('0x39')]);_0x3b68d8[_0x6ab6('0x3a')]=qs[_0x6ab6('0x3b')](_[_0x6ab6('0x3c')](_0x94304c[_0x6ab6('0x33')],_0x3be55a['filters']),_0x1949d6);if(_0x94304c[_0x6ab6('0x33')][_0x6ab6('0x3d')]){_0x3b68d8[_0x6ab6('0x3a')]=_['merge'](_0x3b68d8[_0x6ab6('0x3a')],{'$or':_['map'](_0x1949d6,function(_0x30dc43){if(_0x30dc43[_0x6ab6('0x30')]!==_0x6ab6('0x3e')){var _0x28fd65={};_0x28fd65[_0x30dc43['name']]={'$like':'%'+_0x94304c[_0x6ab6('0x33')][_0x6ab6('0x3d')]+'%'};return _0x28fd65;}})});}_0x3b68d8=_[_0x6ab6('0x3f')]({},_0x3b68d8,_0x94304c[_0x6ab6('0x40')]);var _0x6cece7={'where':_0x3b68d8[_0x6ab6('0x3a')]};return db[_0x6ab6('0x2d')]['count'](_0x6cece7)[_0x6ab6('0x27')](function(_0x3d07f4){_0x13316d[_0x6ab6('0x20')]=_0x3d07f4;if(_0x94304c[_0x6ab6('0x33')][_0x6ab6('0x41')]){_0x3b68d8[_0x6ab6('0x42')]=[{'all':!![]}];}return db[_0x6ab6('0x2d')][_0x6ab6('0x43')](_0x3b68d8);})[_0x6ab6('0x27')](function(_0x5d05db){_0x13316d[_0x6ab6('0x44')]=_0x5d05db;return _0x13316d;})[_0x6ab6('0x27')](respondWithFilteredResult(_0x49e5f9,_0x3b68d8))[_0x6ab6('0x45')](handleError(_0x49e5f9,null));};exports[_0x6ab6('0x46')]=function(_0x29154e,_0x5f376f){var _0x16adb8={'raw':![],'where':{'id':_0x29154e[_0x6ab6('0x47')]['id']}},_0x5886dd={};_0x5886dd[_0x6ab6('0x32')]=_[_0x6ab6('0x48')](db[_0x6ab6('0x2d')][_0x6ab6('0x2e')]);_0x5886dd[_0x6ab6('0x33')]=_[_0x6ab6('0x48')](_0x29154e[_0x6ab6('0x33')]);_0x5886dd['filters']=_[_0x6ab6('0x34')](_0x5886dd['model'],_0x5886dd[_0x6ab6('0x33')]);_0x16adb8['attributes']=_[_0x6ab6('0x34')](_0x5886dd['model'],qs[_0x6ab6('0x36')](_0x29154e[_0x6ab6('0x33')][_0x6ab6('0x36')]));_0x16adb8['attributes']=_0x16adb8[_0x6ab6('0x35')][_0x6ab6('0x49')]?_0x16adb8[_0x6ab6('0x35')]:_0x5886dd[_0x6ab6('0x32')];if(_0x29154e[_0x6ab6('0x33')][_0x6ab6('0x41')]){_0x16adb8['include']=[{'all':!![]}];}_0x16adb8=_[_0x6ab6('0x3f')]({},_0x16adb8,_0x29154e[_0x6ab6('0x40')]);return db[_0x6ab6('0x2d')][_0x6ab6('0x4a')](_0x16adb8)[_0x6ab6('0x27')](handleEntityNotFound(_0x5f376f,null))[_0x6ab6('0x27')](respondWithResult(_0x5f376f,null))['catch'](handleError(_0x5f376f,null));};exports[_0x6ab6('0x4b')]=function(_0x129fca,_0x671468){return db[_0x6ab6('0x2d')][_0x6ab6('0x4b')](_0x129fca[_0x6ab6('0x4c')],{})[_0x6ab6('0x27')](respondWithResult(_0x671468,0xc9))[_0x6ab6('0x45')](handleError(_0x671468,null));};exports[_0x6ab6('0x4d')]=function(_0x2487b9,_0x8fd074){if(_0x2487b9[_0x6ab6('0x4c')]['id']){delete _0x2487b9[_0x6ab6('0x4c')]['id'];}return db[_0x6ab6('0x2d')][_0x6ab6('0x4a')]({'where':{'id':_0x2487b9['params']['id']}})['then'](handleEntityNotFound(_0x8fd074,null))['then'](saveUpdates(_0x2487b9[_0x6ab6('0x4c')],null))['then'](respondWithResult(_0x8fd074,null))[_0x6ab6('0x45')](handleError(_0x8fd074,null));};exports['destroy']=function(_0x4ff1aa,_0xedafdf){return db[_0x6ab6('0x2d')][_0x6ab6('0x4a')]({'where':{'id':_0x4ff1aa[_0x6ab6('0x47')]['id']}})[_0x6ab6('0x27')](handleEntityNotFound(_0xedafdf,null))['then'](removeEntity(_0xedafdf,null))[_0x6ab6('0x45')](handleError(_0xedafdf,null));};exports[_0x6ab6('0x4e')]=function(_0x58faae,_0x39c512,_0x490103){var _0x391c2b={};var _0x2e1490={};var _0x596c9f;var _0x72011a;return db['SugarcrmConfiguration'][_0x6ab6('0x4f')]({'where':{'id':_0x58faae[_0x6ab6('0x47')]['id']}})[_0x6ab6('0x27')](handleEntityNotFound(_0x39c512,null))[_0x6ab6('0x27')](function(_0x3df2c8){if(_0x3df2c8){_0x596c9f=_0x3df2c8;_0x2e1490['model']=_['keys'](db[_0x6ab6('0x50')][_0x6ab6('0x2e')]);_0x2e1490['query']=_[_0x6ab6('0x48')](_0x58faae[_0x6ab6('0x33')]);_0x2e1490[_0x6ab6('0x3b')]=_[_0x6ab6('0x34')](_0x2e1490[_0x6ab6('0x32')],_0x2e1490['query']);_0x391c2b['attributes']=_[_0x6ab6('0x34')](_0x2e1490[_0x6ab6('0x32')],qs[_0x6ab6('0x36')](_0x58faae[_0x6ab6('0x33')]['fields']));_0x391c2b['attributes']=_0x391c2b[_0x6ab6('0x35')][_0x6ab6('0x49')]?_0x391c2b[_0x6ab6('0x35')]:_0x2e1490['model'];_0x391c2b['order']=qs[_0x6ab6('0x39')](_0x58faae[_0x6ab6('0x33')][_0x6ab6('0x39')]);_0x391c2b[_0x6ab6('0x3a')]=qs['filters'](_[_0x6ab6('0x3c')](_0x58faae[_0x6ab6('0x33')],_0x2e1490[_0x6ab6('0x3b')]));if(_0x58faae[_0x6ab6('0x33')][_0x6ab6('0x3d')]){_0x391c2b['where']=_[_0x6ab6('0x3f')](_0x391c2b[_0x6ab6('0x3a')],{'$or':_[_0x6ab6('0x2c')](_0x391c2b[_0x6ab6('0x35')],function(_0x58b6ea){var _0x300060={};_0x300060[_0x58b6ea]={'$like':'%'+_0x58faae[_0x6ab6('0x33')][_0x6ab6('0x3d')]+'%'};return _0x300060;})});}_0x391c2b=_[_0x6ab6('0x3f')]({},_0x391c2b,_0x58faae[_0x6ab6('0x40')]);return _0x596c9f[_0x6ab6('0x4e')](_0x391c2b);}})[_0x6ab6('0x27')](function(_0x1c7ba0){if(_0x1c7ba0){_0x72011a=_0x1c7ba0[_0x6ab6('0x49')];if(!_0x58faae[_0x6ab6('0x33')][_0x6ab6('0x37')](_0x6ab6('0x51'))){_0x391c2b[_0x6ab6('0x22')]=qs[_0x6ab6('0x22')](_0x58faae[_0x6ab6('0x33')][_0x6ab6('0x22')]);_0x391c2b[_0x6ab6('0x21')]=qs[_0x6ab6('0x21')](_0x58faae[_0x6ab6('0x33')][_0x6ab6('0x21')]);}return _0x596c9f[_0x6ab6('0x4e')](_0x391c2b);}})[_0x6ab6('0x27')](function(_0x358ccb){if(_0x358ccb){return _0x358ccb?{'count':_0x72011a,'rows':_0x358ccb}:null;}})[_0x6ab6('0x27')](respondWithResult(_0x39c512,null))['catch'](handleError(_0x39c512,null));};exports[_0x6ab6('0x52')]=function(_0x4240c9,_0xc1ff45,_0x385be3){var _0x5e7091={};var _0x17495c={};var _0x18e566;var _0x2766c2;return db['SugarcrmConfiguration'][_0x6ab6('0x4f')]({'where':{'id':_0x4240c9[_0x6ab6('0x47')]['id']}})[_0x6ab6('0x27')](handleEntityNotFound(_0xc1ff45,null))[_0x6ab6('0x27')](function(_0x1f4753){if(_0x1f4753){_0x18e566=_0x1f4753;_0x17495c['model']=_[_0x6ab6('0x48')](db[_0x6ab6('0x50')]['rawAttributes']);_0x17495c[_0x6ab6('0x33')]=_[_0x6ab6('0x48')](_0x4240c9['query']);_0x17495c[_0x6ab6('0x3b')]=_[_0x6ab6('0x34')](_0x17495c[_0x6ab6('0x32')],_0x17495c[_0x6ab6('0x33')]);_0x5e7091['attributes']=_[_0x6ab6('0x34')](_0x17495c['model'],qs[_0x6ab6('0x36')](_0x4240c9['query'][_0x6ab6('0x36')]));_0x5e7091[_0x6ab6('0x35')]=_0x5e7091[_0x6ab6('0x35')][_0x6ab6('0x49')]?_0x5e7091[_0x6ab6('0x35')]:_0x17495c[_0x6ab6('0x32')];_0x5e7091['order']=qs['sort'](_0x4240c9[_0x6ab6('0x33')][_0x6ab6('0x39')]);_0x5e7091[_0x6ab6('0x3a')]=qs['filters'](_[_0x6ab6('0x3c')](_0x4240c9['query'],_0x17495c[_0x6ab6('0x3b')]));if(_0x4240c9[_0x6ab6('0x33')][_0x6ab6('0x3d')]){_0x5e7091[_0x6ab6('0x3a')]=_[_0x6ab6('0x3f')](_0x5e7091[_0x6ab6('0x3a')],{'$or':_['map'](_0x5e7091['attributes'],function(_0x16ea37){var _0x3776ff={};_0x3776ff[_0x16ea37]={'$like':'%'+_0x4240c9['query'][_0x6ab6('0x3d')]+'%'};return _0x3776ff;})});}_0x5e7091=_[_0x6ab6('0x3f')]({},_0x5e7091,_0x4240c9['options']);return _0x18e566['getSubjects'](_0x5e7091);}})['then'](function(_0x5f50d1){if(_0x5f50d1){_0x2766c2=_0x5f50d1['length'];if(!_0x4240c9[_0x6ab6('0x33')][_0x6ab6('0x37')](_0x6ab6('0x51'))){_0x5e7091[_0x6ab6('0x22')]=qs['limit'](_0x4240c9[_0x6ab6('0x33')][_0x6ab6('0x22')]);_0x5e7091['offset']=qs[_0x6ab6('0x21')](_0x4240c9[_0x6ab6('0x33')]['offset']);}return _0x18e566[_0x6ab6('0x52')](_0x5e7091);}})[_0x6ab6('0x27')](function(_0xce1987){if(_0xce1987){return _0xce1987?{'count':_0x2766c2,'rows':_0xce1987}:null;}})[_0x6ab6('0x27')](respondWithResult(_0xc1ff45,null))['catch'](handleError(_0xc1ff45,null));};exports[_0x6ab6('0x53')]=function(_0x5866a4,_0x53162c,_0xe0661d){var _0x5395a7={};var _0x1a188e={};var _0x550b96;var _0x19eae7;return db[_0x6ab6('0x2d')][_0x6ab6('0x4f')]({'where':{'id':_0x5866a4[_0x6ab6('0x47')]['id']}})[_0x6ab6('0x27')](handleEntityNotFound(_0x53162c,null))[_0x6ab6('0x27')](function(_0x28f3c5){if(_0x28f3c5){_0x550b96=_0x28f3c5;_0x1a188e[_0x6ab6('0x32')]=_[_0x6ab6('0x48')](db[_0x6ab6('0x50')][_0x6ab6('0x2e')]);_0x1a188e[_0x6ab6('0x33')]=_[_0x6ab6('0x48')](_0x5866a4[_0x6ab6('0x33')]);_0x1a188e[_0x6ab6('0x3b')]=_['intersection'](_0x1a188e['model'],_0x1a188e[_0x6ab6('0x33')]);_0x5395a7['attributes']=_[_0x6ab6('0x34')](_0x1a188e[_0x6ab6('0x32')],qs[_0x6ab6('0x36')](_0x5866a4[_0x6ab6('0x33')][_0x6ab6('0x36')]));_0x5395a7[_0x6ab6('0x35')]=_0x5395a7[_0x6ab6('0x35')][_0x6ab6('0x49')]?_0x5395a7[_0x6ab6('0x35')]:_0x1a188e[_0x6ab6('0x32')];_0x5395a7[_0x6ab6('0x38')]=qs[_0x6ab6('0x39')](_0x5866a4['query'][_0x6ab6('0x39')]);_0x5395a7[_0x6ab6('0x3a')]=qs[_0x6ab6('0x3b')](_['pick'](_0x5866a4[_0x6ab6('0x33')],_0x1a188e[_0x6ab6('0x3b')]));if(_0x5866a4[_0x6ab6('0x33')][_0x6ab6('0x3d')]){_0x5395a7[_0x6ab6('0x3a')]=_[_0x6ab6('0x3f')](_0x5395a7[_0x6ab6('0x3a')],{'$or':_[_0x6ab6('0x2c')](_0x5395a7[_0x6ab6('0x35')],function(_0x309d0a){var _0x591a43={};_0x591a43[_0x309d0a]={'$like':'%'+_0x5866a4[_0x6ab6('0x33')][_0x6ab6('0x3d')]+'%'};return _0x591a43;})});}_0x5395a7=_[_0x6ab6('0x3f')]({},_0x5395a7,_0x5866a4['options']);return _0x550b96['getDescriptions'](_0x5395a7);}})['then'](function(_0x3814ce){if(_0x3814ce){_0x19eae7=_0x3814ce[_0x6ab6('0x49')];if(!_0x5866a4[_0x6ab6('0x33')]['hasOwnProperty'](_0x6ab6('0x51'))){_0x5395a7[_0x6ab6('0x22')]=qs[_0x6ab6('0x22')](_0x5866a4[_0x6ab6('0x33')][_0x6ab6('0x22')]);_0x5395a7[_0x6ab6('0x21')]=qs['offset'](_0x5866a4[_0x6ab6('0x33')][_0x6ab6('0x21')]);}return _0x550b96[_0x6ab6('0x53')](_0x5395a7);}})['then'](function(_0x3581e1){if(_0x3581e1){return _0x3581e1?{'count':_0x19eae7,'rows':_0x3581e1}:null;}})[_0x6ab6('0x27')](respondWithResult(_0x53162c,null))[_0x6ab6('0x45')](handleError(_0x53162c,null));};