aa0804b3ba9a8c0e0723f1c22ca29a900435e74f
[motion2.git] / server / api / intSalesforceField / intSalesforceField.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 _0x4c51=['path','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','querystring','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','sendStatus','json','undefined','limit','count','offset','status','set','apply','save','then','destroy','end','stack','name','send','index','map','SalesforceField','rawAttributes','fieldName','type','model','keys','filters','intersection','query','fields','length','attributes','nolimit','sort','where','pick','filter','merge','VIRTUAL','options','findAll','rows','catch','show','includeAll','include','create','body','update','find','params','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util'];(function(_0x14add3,_0x13ce8d){var _0x4a174f=function(_0x2b3ed7){while(--_0x2b3ed7){_0x14add3['push'](_0x14add3['shift']());}};_0x4a174f(++_0x13ce8d);}(_0x4c51,0xdb));var _0x14c5=function(_0x31bfa2,_0x5ad692){_0x31bfa2=_0x31bfa2-0x0;var _0x28cea1=_0x4c51[_0x31bfa2];return _0x28cea1;};'use strict';var emlformat=require(_0x14c5('0x0'));var rimraf=require(_0x14c5('0x1'));var zipdir=require(_0x14c5('0x2'));var jsonpatch=require(_0x14c5('0x3'));var rp=require(_0x14c5('0x4'));var moment=require(_0x14c5('0x5'));var BPromise=require(_0x14c5('0x6'));var Mustache=require(_0x14c5('0x7'));var util=require(_0x14c5('0x8'));var path=require(_0x14c5('0x9'));var sox=require('sox');var csv=require(_0x14c5('0xa'));var ejs=require(_0x14c5('0xb'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x14c5('0xc'));var squel=require(_0x14c5('0xd'));var crypto=require(_0x14c5('0xe'));var jsforce=require(_0x14c5('0xf'));var deskjs=require(_0x14c5('0x10'));var toCsv=require(_0x14c5('0xa'));var querystring=require(_0x14c5('0x11'));var Papa=require('papaparse');var Redis=require(_0x14c5('0x12'));var authService=require(_0x14c5('0x13'));var qs=require('../../components/parsers/qs');var as=require(_0x14c5('0x14'));var hardwareService=require(_0x14c5('0x15'));var logger=require(_0x14c5('0x16'))(_0x14c5('0x17'));var utils=require(_0x14c5('0x18'));var config=require(_0x14c5('0x19'));var licenseUtil=require(_0x14c5('0x1a'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x1e8ab6,_0x24b092){_0x24b092=_0x24b092||0xcc;return function(_0x1de930){if(_0x1de930){return _0x1e8ab6[_0x14c5('0x1b')](_0x24b092);}return _0x1e8ab6['status'](_0x24b092)['end']();};}function respondWithResult(_0x1cb4b4,_0x5ec9a7){_0x5ec9a7=_0x5ec9a7||0xc8;return function(_0x3d7796){if(_0x3d7796){return _0x1cb4b4['status'](_0x5ec9a7)[_0x14c5('0x1c')](_0x3d7796);}};}function respondWithFilteredResult(_0x3a3781,_0x5d47ff){return function(_0x4a9d44){if(_0x4a9d44){var _0x3f74fa=typeof _0x5d47ff['offset']===_0x14c5('0x1d')&&typeof _0x5d47ff[_0x14c5('0x1e')]===_0x14c5('0x1d');var _0x373451=_0x4a9d44[_0x14c5('0x1f')];var _0x20d6ae=_0x3f74fa?0x0:_0x5d47ff[_0x14c5('0x20')];var _0x45a382=_0x3f74fa?_0x4a9d44[_0x14c5('0x1f')]:_0x5d47ff[_0x14c5('0x20')]+_0x5d47ff[_0x14c5('0x1e')];var _0x183391;if(_0x45a382>=_0x373451){_0x45a382=_0x373451;_0x183391=0xc8;}else{_0x183391=0xce;}_0x3a3781[_0x14c5('0x21')](_0x183391);return _0x3a3781[_0x14c5('0x22')]('Content-Range',_0x20d6ae+'-'+_0x45a382+'/'+_0x373451)[_0x14c5('0x1c')](_0x4a9d44);}return null;};}function patchUpdates(_0x5b71d6){return function(_0x471ed3){try{jsonpatch[_0x14c5('0x23')](_0x471ed3,_0x5b71d6,!![]);}catch(_0x1cc9b5){return BPromise['reject'](_0x1cc9b5);}return _0x471ed3[_0x14c5('0x24')]();};}function saveUpdates(_0x2fe8f8,_0x22a431){return function(_0x548d99){if(_0x548d99){return _0x548d99['update'](_0x2fe8f8)[_0x14c5('0x25')](function(_0x113838){return _0x113838;});}return null;};}function removeEntity(_0x2677af,_0x38aacb){return function(_0x2adb77){if(_0x2adb77){return _0x2adb77[_0x14c5('0x26')]()[_0x14c5('0x25')](function(){_0x2677af[_0x14c5('0x21')](0xcc)[_0x14c5('0x27')]();});}};}function handleEntityNotFound(_0x34126b,_0x3bbdbe){return function(_0x2b9864){if(!_0x2b9864){_0x34126b[_0x14c5('0x1b')](0x194);}return _0x2b9864;};}function handleError(_0x46ec6b,_0x197ec1){_0x197ec1=_0x197ec1||0x1f4;return function(_0x448cdc){logger['error'](_0x448cdc[_0x14c5('0x28')]);if(_0x448cdc[_0x14c5('0x29')]){delete _0x448cdc[_0x14c5('0x29')];}_0x46ec6b[_0x14c5('0x21')](_0x197ec1)[_0x14c5('0x2a')](_0x448cdc);};}exports[_0x14c5('0x2b')]=function(_0x59b165,_0x32ed7b){var _0x25310e={},_0x55539f={},_0x35d0dd={'count':0x0,'rows':[]};var _0x59a76b=_[_0x14c5('0x2c')](db[_0x14c5('0x2d')][_0x14c5('0x2e')],function(_0x321c67){return{'name':_0x321c67[_0x14c5('0x2f')],'type':_0x321c67[_0x14c5('0x30')]['key']};});_0x55539f[_0x14c5('0x31')]=_[_0x14c5('0x2c')](_0x59a76b,_0x14c5('0x29'));_0x55539f['query']=_[_0x14c5('0x32')](_0x59b165['query']);_0x55539f[_0x14c5('0x33')]=_[_0x14c5('0x34')](_0x55539f[_0x14c5('0x31')],_0x55539f[_0x14c5('0x35')]);_0x25310e['attributes']=_[_0x14c5('0x34')](_0x55539f[_0x14c5('0x31')],qs['fields'](_0x59b165[_0x14c5('0x35')][_0x14c5('0x36')]));_0x25310e['attributes']=_0x25310e['attributes'][_0x14c5('0x37')]?_0x25310e[_0x14c5('0x38')]:_0x55539f['model'];if(!_0x59b165['query']['hasOwnProperty'](_0x14c5('0x39'))){_0x25310e[_0x14c5('0x1e')]=qs['limit'](_0x59b165[_0x14c5('0x35')][_0x14c5('0x1e')]);_0x25310e[_0x14c5('0x20')]=qs['offset'](_0x59b165['query']['offset']);}_0x25310e['order']=qs['sort'](_0x59b165[_0x14c5('0x35')][_0x14c5('0x3a')]);_0x25310e[_0x14c5('0x3b')]=qs[_0x14c5('0x33')](_[_0x14c5('0x3c')](_0x59b165[_0x14c5('0x35')],_0x55539f[_0x14c5('0x33')]),_0x59a76b);if(_0x59b165[_0x14c5('0x35')][_0x14c5('0x3d')]){_0x25310e[_0x14c5('0x3b')]=_[_0x14c5('0x3e')](_0x25310e[_0x14c5('0x3b')],{'$or':_[_0x14c5('0x2c')](_0x59a76b,function(_0x238194){if(_0x238194[_0x14c5('0x30')]!==_0x14c5('0x3f')){var _0xa3345a={};_0xa3345a[_0x238194['name']]={'$like':'%'+_0x59b165[_0x14c5('0x35')][_0x14c5('0x3d')]+'%'};return _0xa3345a;}})});}_0x25310e=_[_0x14c5('0x3e')]({},_0x25310e,_0x59b165[_0x14c5('0x40')]);var _0x238138={'where':_0x25310e[_0x14c5('0x3b')]};return db['SalesforceField'][_0x14c5('0x1f')](_0x238138)['then'](function(_0x3e33a4){_0x35d0dd[_0x14c5('0x1f')]=_0x3e33a4;if(_0x59b165[_0x14c5('0x35')]['includeAll']){_0x25310e['include']=[{'all':!![]}];}return db[_0x14c5('0x2d')][_0x14c5('0x41')](_0x25310e);})[_0x14c5('0x25')](function(_0x1294b4){_0x35d0dd[_0x14c5('0x42')]=_0x1294b4;return _0x35d0dd;})[_0x14c5('0x25')](respondWithFilteredResult(_0x32ed7b,_0x25310e))[_0x14c5('0x43')](handleError(_0x32ed7b,null));};exports[_0x14c5('0x44')]=function(_0x3068e8,_0x31e270){var _0x4d7c4d={'raw':!![],'where':{'id':_0x3068e8['params']['id']}},_0x3a0021={};_0x3a0021[_0x14c5('0x31')]=_[_0x14c5('0x32')](db[_0x14c5('0x2d')][_0x14c5('0x2e')]);_0x3a0021[_0x14c5('0x35')]=_[_0x14c5('0x32')](_0x3068e8[_0x14c5('0x35')]);_0x3a0021[_0x14c5('0x33')]=_[_0x14c5('0x34')](_0x3a0021[_0x14c5('0x31')],_0x3a0021[_0x14c5('0x35')]);_0x4d7c4d['attributes']=_[_0x14c5('0x34')](_0x3a0021[_0x14c5('0x31')],qs['fields'](_0x3068e8[_0x14c5('0x35')]['fields']));_0x4d7c4d[_0x14c5('0x38')]=_0x4d7c4d[_0x14c5('0x38')][_0x14c5('0x37')]?_0x4d7c4d[_0x14c5('0x38')]:_0x3a0021[_0x14c5('0x31')];if(_0x3068e8[_0x14c5('0x35')][_0x14c5('0x45')]){_0x4d7c4d[_0x14c5('0x46')]=[{'all':!![]}];}_0x4d7c4d=_[_0x14c5('0x3e')]({},_0x4d7c4d,_0x3068e8[_0x14c5('0x40')]);return db[_0x14c5('0x2d')]['find'](_0x4d7c4d)[_0x14c5('0x25')](handleEntityNotFound(_0x31e270,null))['then'](respondWithResult(_0x31e270,null))[_0x14c5('0x43')](handleError(_0x31e270,null));};exports['create']=function(_0x187d1f,_0xdbc98d){return db[_0x14c5('0x2d')][_0x14c5('0x47')](_0x187d1f[_0x14c5('0x48')],{})[_0x14c5('0x25')](respondWithResult(_0xdbc98d,0xc9))[_0x14c5('0x43')](handleError(_0xdbc98d,null));};exports[_0x14c5('0x49')]=function(_0x3ffc3f,_0x500429){if(_0x3ffc3f[_0x14c5('0x48')]['id']){delete _0x3ffc3f[_0x14c5('0x48')]['id'];}return db[_0x14c5('0x2d')][_0x14c5('0x4a')]({'where':{'id':_0x3ffc3f[_0x14c5('0x4b')]['id']}})[_0x14c5('0x25')](handleEntityNotFound(_0x500429,null))['then'](saveUpdates(_0x3ffc3f[_0x14c5('0x48')],null))[_0x14c5('0x25')](respondWithResult(_0x500429,null))[_0x14c5('0x43')](handleError(_0x500429,null));};exports[_0x14c5('0x26')]=function(_0x5ec945,_0x4474ae){return db[_0x14c5('0x2d')]['find']({'where':{'id':_0x5ec945[_0x14c5('0x4b')]['id']}})['then'](handleEntityNotFound(_0x4474ae,null))[_0x14c5('0x25')](removeEntity(_0x4474ae,null))[_0x14c5('0x43')](handleError(_0x4474ae,null));};