Built motion from commit 37e1ed56.|2.6.29
[motion2.git] / server / api / intSugarcrmField / intSugarcrmField.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 _0x5311=['undefined','limit','count','set','Content-Range','apply','reject','save','update','destroy','error','stack','name','index','map','SugarcrmField','type','key','model','query','keys','filters','intersection','attributes','fields','hasOwnProperty','nolimit','order','sort','where','pick','filter','VIRTUAL','options','includeAll','findAll','then','rows','catch','show','params','rawAttributes','include','merge','find','create','body','eml-format','rimraf','fast-json-patch','request-promise','path','sox','to-csv','squel','jsforce','desk.js','querystring','ioredis','../../components/auth/service','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','sendStatus','status','end','json','offset'];(function(_0x12d812,_0x496bb7){var _0x3711ab=function(_0x3259da){while(--_0x3259da){_0x12d812['push'](_0x12d812['shift']());}};_0x3711ab(++_0x496bb7);}(_0x5311,0xbb));var _0x1531=function(_0x3d8c62,_0x343455){_0x3d8c62=_0x3d8c62-0x0;var _0x1e14fc=_0x5311[_0x3d8c62];return _0x1e14fc;};'use strict';var emlformat=require(_0x1531('0x0'));var rimraf=require(_0x1531('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0x1531('0x2'));var rp=require(_0x1531('0x3'));var moment=require('moment');var BPromise=require('bluebird');var Mustache=require('mustache');var util=require('util');var path=require(_0x1531('0x4'));var sox=require(_0x1531('0x5'));var csv=require(_0x1531('0x6'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require('fs-extra');var _=require('lodash');var squel=require(_0x1531('0x7'));var crypto=require('crypto');var jsforce=require(_0x1531('0x8'));var deskjs=require(_0x1531('0x9'));var toCsv=require('to-csv');var querystring=require(_0x1531('0xa'));var Papa=require('papaparse');var Redis=require(_0x1531('0xb'));var authService=require(_0x1531('0xc'));var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require(_0x1531('0xd'))(_0x1531('0xe'));var utils=require(_0x1531('0xf'));var config=require(_0x1531('0x10'));var licenseUtil=require(_0x1531('0x11'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x50f765,_0x565e5b){_0x565e5b=_0x565e5b||0xcc;return function(_0x332fb2){if(_0x332fb2){return _0x50f765[_0x1531('0x12')](_0x565e5b);}return _0x50f765[_0x1531('0x13')](_0x565e5b)[_0x1531('0x14')]();};}function respondWithResult(_0x70ee05,_0x62c069){_0x62c069=_0x62c069||0xc8;return function(_0x30d04e){if(_0x30d04e){return _0x70ee05[_0x1531('0x13')](_0x62c069)[_0x1531('0x15')](_0x30d04e);}};}function respondWithFilteredResult(_0xed30ef,_0x4a9a5e){return function(_0x54f95b){if(_0x54f95b){var _0x7a4b15=typeof _0x4a9a5e[_0x1531('0x16')]===_0x1531('0x17')&&typeof _0x4a9a5e[_0x1531('0x18')]===_0x1531('0x17');var _0x531937=_0x54f95b[_0x1531('0x19')];var _0x46a051=_0x7a4b15?0x0:_0x4a9a5e[_0x1531('0x16')];var _0x45f3c4=_0x7a4b15?_0x54f95b['count']:_0x4a9a5e[_0x1531('0x16')]+_0x4a9a5e['limit'];var _0x497715;if(_0x45f3c4>=_0x531937){_0x45f3c4=_0x531937;_0x497715=0xc8;}else{_0x497715=0xce;}_0xed30ef[_0x1531('0x13')](_0x497715);return _0xed30ef[_0x1531('0x1a')](_0x1531('0x1b'),_0x46a051+'-'+_0x45f3c4+'/'+_0x531937)[_0x1531('0x15')](_0x54f95b);}return null;};}function patchUpdates(_0x3b6356){return function(_0x8380c2){try{jsonpatch[_0x1531('0x1c')](_0x8380c2,_0x3b6356,!![]);}catch(_0xb0e810){return BPromise[_0x1531('0x1d')](_0xb0e810);}return _0x8380c2[_0x1531('0x1e')]();};}function saveUpdates(_0x1c086a,_0x82b69a){return function(_0x1624b3){if(_0x1624b3){return _0x1624b3[_0x1531('0x1f')](_0x1c086a)['then'](function(_0x3de162){return _0x3de162;});}return null;};}function removeEntity(_0xd84c51,_0x15fc2e){return function(_0xb0b6bd){if(_0xb0b6bd){return _0xb0b6bd[_0x1531('0x20')]()['then'](function(){_0xd84c51[_0x1531('0x13')](0xcc)[_0x1531('0x14')]();});}};}function handleEntityNotFound(_0x1dc0a5,_0x21fb07){return function(_0x4c8be0){if(!_0x4c8be0){_0x1dc0a5[_0x1531('0x12')](0x194);}return _0x4c8be0;};}function handleError(_0x56d4fe,_0x16281f){_0x16281f=_0x16281f||0x1f4;return function(_0x24f968){logger[_0x1531('0x21')](_0x24f968[_0x1531('0x22')]);if(_0x24f968[_0x1531('0x23')]){delete _0x24f968['name'];}_0x56d4fe[_0x1531('0x13')](_0x16281f)['send'](_0x24f968);};}exports[_0x1531('0x24')]=function(_0x459386,_0x442067){var _0x35931e={},_0xee22ba={},_0x700f27={'count':0x0,'rows':[]};var _0x96cb51=_[_0x1531('0x25')](db[_0x1531('0x26')]['rawAttributes'],function(_0x4906d4){return{'name':_0x4906d4['fieldName'],'type':_0x4906d4[_0x1531('0x27')][_0x1531('0x28')]};});_0xee22ba[_0x1531('0x29')]=_[_0x1531('0x25')](_0x96cb51,_0x1531('0x23'));_0xee22ba[_0x1531('0x2a')]=_[_0x1531('0x2b')](_0x459386[_0x1531('0x2a')]);_0xee22ba[_0x1531('0x2c')]=_[_0x1531('0x2d')](_0xee22ba[_0x1531('0x29')],_0xee22ba['query']);_0x35931e[_0x1531('0x2e')]=_[_0x1531('0x2d')](_0xee22ba[_0x1531('0x29')],qs[_0x1531('0x2f')](_0x459386[_0x1531('0x2a')][_0x1531('0x2f')]));_0x35931e['attributes']=_0x35931e[_0x1531('0x2e')]['length']?_0x35931e[_0x1531('0x2e')]:_0xee22ba['model'];if(!_0x459386[_0x1531('0x2a')][_0x1531('0x30')](_0x1531('0x31'))){_0x35931e[_0x1531('0x18')]=qs[_0x1531('0x18')](_0x459386[_0x1531('0x2a')][_0x1531('0x18')]);_0x35931e[_0x1531('0x16')]=qs[_0x1531('0x16')](_0x459386['query'][_0x1531('0x16')]);}_0x35931e[_0x1531('0x32')]=qs[_0x1531('0x33')](_0x459386[_0x1531('0x2a')]['sort']);_0x35931e[_0x1531('0x34')]=qs[_0x1531('0x2c')](_[_0x1531('0x35')](_0x459386[_0x1531('0x2a')],_0xee22ba[_0x1531('0x2c')]),_0x96cb51);if(_0x459386[_0x1531('0x2a')][_0x1531('0x36')]){_0x35931e[_0x1531('0x34')]=_['merge'](_0x35931e[_0x1531('0x34')],{'$or':_[_0x1531('0x25')](_0x96cb51,function(_0x229ea9){if(_0x229ea9[_0x1531('0x27')]!==_0x1531('0x37')){var _0x471702={};_0x471702[_0x229ea9[_0x1531('0x23')]]={'$like':'%'+_0x459386[_0x1531('0x2a')][_0x1531('0x36')]+'%'};return _0x471702;}})});}_0x35931e=_['merge']({},_0x35931e,_0x459386[_0x1531('0x38')]);var _0x108024={'where':_0x35931e['where']};return db[_0x1531('0x26')][_0x1531('0x19')](_0x108024)['then'](function(_0x2de892){_0x700f27[_0x1531('0x19')]=_0x2de892;if(_0x459386[_0x1531('0x2a')][_0x1531('0x39')]){_0x35931e['include']=[{'all':!![]}];}return db['SugarcrmField'][_0x1531('0x3a')](_0x35931e);})[_0x1531('0x3b')](function(_0x58bd42){_0x700f27[_0x1531('0x3c')]=_0x58bd42;return _0x700f27;})['then'](respondWithFilteredResult(_0x442067,_0x35931e))[_0x1531('0x3d')](handleError(_0x442067,null));};exports[_0x1531('0x3e')]=function(_0x57375f,_0x1b652d){var _0x2bc312={'raw':!![],'where':{'id':_0x57375f[_0x1531('0x3f')]['id']}},_0x159a43={};_0x159a43[_0x1531('0x29')]=_[_0x1531('0x2b')](db[_0x1531('0x26')][_0x1531('0x40')]);_0x159a43[_0x1531('0x2a')]=_['keys'](_0x57375f[_0x1531('0x2a')]);_0x159a43[_0x1531('0x2c')]=_[_0x1531('0x2d')](_0x159a43[_0x1531('0x29')],_0x159a43['query']);_0x2bc312[_0x1531('0x2e')]=_[_0x1531('0x2d')](_0x159a43[_0x1531('0x29')],qs[_0x1531('0x2f')](_0x57375f[_0x1531('0x2a')][_0x1531('0x2f')]));_0x2bc312['attributes']=_0x2bc312[_0x1531('0x2e')]['length']?_0x2bc312[_0x1531('0x2e')]:_0x159a43[_0x1531('0x29')];if(_0x57375f[_0x1531('0x2a')][_0x1531('0x39')]){_0x2bc312[_0x1531('0x41')]=[{'all':!![]}];}_0x2bc312=_[_0x1531('0x42')]({},_0x2bc312,_0x57375f[_0x1531('0x38')]);return db[_0x1531('0x26')][_0x1531('0x43')](_0x2bc312)[_0x1531('0x3b')](handleEntityNotFound(_0x1b652d,null))['then'](respondWithResult(_0x1b652d,null))['catch'](handleError(_0x1b652d,null));};exports[_0x1531('0x44')]=function(_0x9d9452,_0x147929){return db[_0x1531('0x26')][_0x1531('0x44')](_0x9d9452[_0x1531('0x45')],{})['then'](respondWithResult(_0x147929,0xc9))[_0x1531('0x3d')](handleError(_0x147929,null));};exports[_0x1531('0x1f')]=function(_0x1804d2,_0x1d8a6d){if(_0x1804d2[_0x1531('0x45')]['id']){delete _0x1804d2[_0x1531('0x45')]['id'];}return db['SugarcrmField'][_0x1531('0x43')]({'where':{'id':_0x1804d2[_0x1531('0x3f')]['id']}})[_0x1531('0x3b')](handleEntityNotFound(_0x1d8a6d,null))['then'](saveUpdates(_0x1804d2[_0x1531('0x45')],null))[_0x1531('0x3b')](respondWithResult(_0x1d8a6d,null))[_0x1531('0x3d')](handleError(_0x1d8a6d,null));};exports['destroy']=function(_0x5a1e4f,_0x9af6eb){return db[_0x1531('0x26')][_0x1531('0x43')]({'where':{'id':_0x5a1e4f['params']['id']}})[_0x1531('0x3b')](handleEntityNotFound(_0x9af6eb,null))[_0x1531('0x3b')](removeEntity(_0x9af6eb,null))['catch'](handleError(_0x9af6eb,null));};