Built motion from commit 351e7f9c.|2.6.31
[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 _0x77c3=['querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','status','json','offset','limit','undefined','count','save','update','then','end','sendStatus','error','stack','send','fieldName','type','model','map','name','query','filters','attributes','fields','length','nolimit','order','sort','where','merge','filter','includeAll','include','SugarcrmField','findAll','rows','catch','rawAttributes','keys','intersection','options','find','create','body','destroy','params','rimraf','zip-dir','request-promise','moment','mustache','util','path','sox','ejs','fs-extra','desk.js'];(function(_0x3626be,_0x14be1c){var _0x10eb42=function(_0x5ee4fc){while(--_0x5ee4fc){_0x3626be['push'](_0x3626be['shift']());}};_0x10eb42(++_0x14be1c);}(_0x77c3,0x1ca));var _0x377c=function(_0x3dd15e,_0x1f0015){_0x3dd15e=_0x3dd15e-0x0;var _0x231fd0=_0x77c3[_0x3dd15e];return _0x231fd0;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x377c('0x0'));var zipdir=require(_0x377c('0x1'));var jsonpatch=require('fast-json-patch');var rp=require(_0x377c('0x2'));var moment=require(_0x377c('0x3'));var BPromise=require('bluebird');var Mustache=require(_0x377c('0x4'));var util=require(_0x377c('0x5'));var path=require(_0x377c('0x6'));var sox=require(_0x377c('0x7'));var csv=require('to-csv');var ejs=require(_0x377c('0x8'));var fs=require('fs');var fs_extra=require(_0x377c('0x9'));var _=require('lodash');var squel=require('squel');var crypto=require('crypto');var jsforce=require('jsforce');var deskjs=require(_0x377c('0xa'));var toCsv=require('to-csv');var querystring=require(_0x377c('0xb'));var Papa=require(_0x377c('0xc'));var Redis=require(_0x377c('0xd'));var authService=require(_0x377c('0xe'));var qs=require('../../components/parsers/qs');var as=require(_0x377c('0xf'));var hardwareService=require(_0x377c('0x10'));var logger=require(_0x377c('0x11'))(_0x377c('0x12'));var utils=require(_0x377c('0x13'));var config=require(_0x377c('0x14'));var licenseUtil=require('../../config/license/util');var db=require(_0x377c('0x15'))['db'];function respondWithStatusCode(_0x1d309a,_0x1e7a1e){_0x1e7a1e=_0x1e7a1e||0xcc;return function(_0x12b48d){if(_0x12b48d){return _0x1d309a['sendStatus'](_0x1e7a1e);}return _0x1d309a[_0x377c('0x16')](_0x1e7a1e)['end']();};}function respondWithResult(_0x101d70,_0x2add15){_0x2add15=_0x2add15||0xc8;return function(_0x38e197){if(_0x38e197){return _0x101d70[_0x377c('0x16')](_0x2add15)[_0x377c('0x17')](_0x38e197);}};}function respondWithFilteredResult(_0x26db73,_0x1682b1){return function(_0x2aa581){if(_0x2aa581){var _0x2b7628=typeof _0x1682b1[_0x377c('0x18')]==='undefined'&&typeof _0x1682b1[_0x377c('0x19')]===_0x377c('0x1a');var _0x16c768=_0x2aa581[_0x377c('0x1b')];var _0xcf2692=_0x2b7628?0x0:_0x1682b1[_0x377c('0x18')];var _0xb18a34=_0x2b7628?_0x2aa581[_0x377c('0x1b')]:_0x1682b1[_0x377c('0x18')]+_0x1682b1[_0x377c('0x19')];var _0x4cffab;if(_0xb18a34>=_0x16c768){_0xb18a34=_0x16c768;_0x4cffab=0xc8;}else{_0x4cffab=0xce;}_0x26db73[_0x377c('0x16')](_0x4cffab);return _0x26db73['set']('Content-Range',_0xcf2692+'-'+_0xb18a34+'/'+_0x16c768)[_0x377c('0x17')](_0x2aa581);}return null;};}function patchUpdates(_0x5619d9){return function(_0x1fe9c6){try{jsonpatch['apply'](_0x1fe9c6,_0x5619d9,!![]);}catch(_0x352754){return BPromise['reject'](_0x352754);}return _0x1fe9c6[_0x377c('0x1c')]();};}function saveUpdates(_0x2685b4,_0x50437b){return function(_0x436d1c){if(_0x436d1c){return _0x436d1c[_0x377c('0x1d')](_0x2685b4)[_0x377c('0x1e')](function(_0x2285f3){return _0x2285f3;});}return null;};}function removeEntity(_0x35ced2,_0x1c84a4){return function(_0x393022){if(_0x393022){return _0x393022['destroy']()[_0x377c('0x1e')](function(){_0x35ced2[_0x377c('0x16')](0xcc)[_0x377c('0x1f')]();});}};}function handleEntityNotFound(_0x3108ab,_0x4402f7){return function(_0x4a2ebc){if(!_0x4a2ebc){_0x3108ab[_0x377c('0x20')](0x194);}return _0x4a2ebc;};}function handleError(_0x466736,_0x58c94f){_0x58c94f=_0x58c94f||0x1f4;return function(_0x5c4fc7){logger[_0x377c('0x21')](_0x5c4fc7[_0x377c('0x22')]);if(_0x5c4fc7['name']){delete _0x5c4fc7['name'];}_0x466736[_0x377c('0x16')](_0x58c94f)[_0x377c('0x23')](_0x5c4fc7);};}exports['index']=function(_0x54996a,_0x429d00){var _0x564246={},_0x5be618={},_0x196fc8={'count':0x0,'rows':[]};var _0x380041=_['map'](db['SugarcrmField']['rawAttributes'],function(_0x4a362b){return{'name':_0x4a362b[_0x377c('0x24')],'type':_0x4a362b[_0x377c('0x25')]['key']};});_0x5be618[_0x377c('0x26')]=_[_0x377c('0x27')](_0x380041,_0x377c('0x28'));_0x5be618['query']=_['keys'](_0x54996a[_0x377c('0x29')]);_0x5be618[_0x377c('0x2a')]=_['intersection'](_0x5be618[_0x377c('0x26')],_0x5be618[_0x377c('0x29')]);_0x564246[_0x377c('0x2b')]=_['intersection'](_0x5be618[_0x377c('0x26')],qs[_0x377c('0x2c')](_0x54996a[_0x377c('0x29')]['fields']));_0x564246[_0x377c('0x2b')]=_0x564246['attributes'][_0x377c('0x2d')]?_0x564246[_0x377c('0x2b')]:_0x5be618[_0x377c('0x26')];if(!_0x54996a[_0x377c('0x29')]['hasOwnProperty'](_0x377c('0x2e'))){_0x564246['limit']=qs['limit'](_0x54996a['query'][_0x377c('0x19')]);_0x564246[_0x377c('0x18')]=qs['offset'](_0x54996a['query'][_0x377c('0x18')]);}_0x564246[_0x377c('0x2f')]=qs[_0x377c('0x30')](_0x54996a[_0x377c('0x29')]['sort']);_0x564246[_0x377c('0x31')]=qs[_0x377c('0x2a')](_['pick'](_0x54996a['query'],_0x5be618[_0x377c('0x2a')]),_0x380041);if(_0x54996a[_0x377c('0x29')]['filter']){_0x564246[_0x377c('0x31')]=_[_0x377c('0x32')](_0x564246[_0x377c('0x31')],{'$or':_['map'](_0x380041,function(_0x5acd82){if(_0x5acd82[_0x377c('0x25')]!=='VIRTUAL'){var _0x404e16={};_0x404e16[_0x5acd82[_0x377c('0x28')]]={'$like':'%'+_0x54996a[_0x377c('0x29')][_0x377c('0x33')]+'%'};return _0x404e16;}})});}_0x564246=_[_0x377c('0x32')]({},_0x564246,_0x54996a['options']);var _0x272248={'where':_0x564246['where']};return db['SugarcrmField'][_0x377c('0x1b')](_0x272248)[_0x377c('0x1e')](function(_0x5a4ae0){_0x196fc8[_0x377c('0x1b')]=_0x5a4ae0;if(_0x54996a['query'][_0x377c('0x34')]){_0x564246[_0x377c('0x35')]=[{'all':!![]}];}return db[_0x377c('0x36')][_0x377c('0x37')](_0x564246);})['then'](function(_0x3080be){_0x196fc8[_0x377c('0x38')]=_0x3080be;return _0x196fc8;})['then'](respondWithFilteredResult(_0x429d00,_0x564246))[_0x377c('0x39')](handleError(_0x429d00,null));};exports['show']=function(_0x14f7d4,_0x672136){var _0x3d0e73={'raw':!![],'where':{'id':_0x14f7d4['params']['id']}},_0x4f2f4d={};_0x4f2f4d[_0x377c('0x26')]=_['keys'](db[_0x377c('0x36')][_0x377c('0x3a')]);_0x4f2f4d[_0x377c('0x29')]=_[_0x377c('0x3b')](_0x14f7d4[_0x377c('0x29')]);_0x4f2f4d['filters']=_[_0x377c('0x3c')](_0x4f2f4d['model'],_0x4f2f4d[_0x377c('0x29')]);_0x3d0e73[_0x377c('0x2b')]=_[_0x377c('0x3c')](_0x4f2f4d[_0x377c('0x26')],qs[_0x377c('0x2c')](_0x14f7d4[_0x377c('0x29')][_0x377c('0x2c')]));_0x3d0e73['attributes']=_0x3d0e73[_0x377c('0x2b')][_0x377c('0x2d')]?_0x3d0e73[_0x377c('0x2b')]:_0x4f2f4d[_0x377c('0x26')];if(_0x14f7d4['query'][_0x377c('0x34')]){_0x3d0e73['include']=[{'all':!![]}];}_0x3d0e73=_[_0x377c('0x32')]({},_0x3d0e73,_0x14f7d4[_0x377c('0x3d')]);return db[_0x377c('0x36')][_0x377c('0x3e')](_0x3d0e73)['then'](handleEntityNotFound(_0x672136,null))[_0x377c('0x1e')](respondWithResult(_0x672136,null))[_0x377c('0x39')](handleError(_0x672136,null));};exports[_0x377c('0x3f')]=function(_0x5e41aa,_0x5ba2b7){return db[_0x377c('0x36')][_0x377c('0x3f')](_0x5e41aa[_0x377c('0x40')],{})[_0x377c('0x1e')](respondWithResult(_0x5ba2b7,0xc9))['catch'](handleError(_0x5ba2b7,null));};exports[_0x377c('0x1d')]=function(_0x1684b9,_0x302170){if(_0x1684b9['body']['id']){delete _0x1684b9['body']['id'];}return db[_0x377c('0x36')]['find']({'where':{'id':_0x1684b9['params']['id']}})[_0x377c('0x1e')](handleEntityNotFound(_0x302170,null))['then'](saveUpdates(_0x1684b9[_0x377c('0x40')],null))[_0x377c('0x1e')](respondWithResult(_0x302170,null))[_0x377c('0x39')](handleError(_0x302170,null));};exports[_0x377c('0x41')]=function(_0x3a8e3f,_0x2856f6){return db[_0x377c('0x36')][_0x377c('0x3e')]({'where':{'id':_0x3a8e3f[_0x377c('0x42')]['id']}})[_0x377c('0x1e')](handleEntityNotFound(_0x2856f6,null))[_0x377c('0x1e')](removeEntity(_0x2856f6,null))[_0x377c('0x39')](handleError(_0x2856f6,null));};