Built motion from commit 3e059bc2.|2.5.32
[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 _0x03b6=['name','send','index','map','SugarcrmField','rawAttributes','fieldName','type','key','model','query','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','VIRTUAL','includeAll','include','findAll','rows','show','params','keys','options','catch','create','body','find','rimraf','zip-dir','fast-json-patch','request-promise','bluebird','mustache','util','sox','to-csv','ejs','fs-extra','lodash','crypto','jsforce','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','end','status','json','offset','undefined','limit','count','set','Content-Range','apply','reject','save','update','then','destroy','error','stack'];(function(_0x5f01e5,_0x2cac3d){var _0x16660b=function(_0x10f57a){while(--_0x10f57a){_0x5f01e5['push'](_0x5f01e5['shift']());}};_0x16660b(++_0x2cac3d);}(_0x03b6,0x11b));var _0x603b=function(_0x118c89,_0x35eaa7){_0x118c89=_0x118c89-0x0;var _0x353e6b=_0x03b6[_0x118c89];return _0x353e6b;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x603b('0x0'));var zipdir=require(_0x603b('0x1'));var jsonpatch=require(_0x603b('0x2'));var rp=require(_0x603b('0x3'));var moment=require('moment');var BPromise=require(_0x603b('0x4'));var Mustache=require(_0x603b('0x5'));var util=require(_0x603b('0x6'));var path=require('path');var sox=require(_0x603b('0x7'));var csv=require(_0x603b('0x8'));var ejs=require(_0x603b('0x9'));var fs=require('fs');var fs_extra=require(_0x603b('0xa'));var _=require(_0x603b('0xb'));var squel=require('squel');var crypto=require(_0x603b('0xc'));var jsforce=require(_0x603b('0xd'));var deskjs=require('desk.js');var toCsv=require(_0x603b('0x8'));var querystring=require(_0x603b('0xe'));var Papa=require(_0x603b('0xf'));var Redis=require(_0x603b('0x10'));var authService=require(_0x603b('0x11'));var qs=require(_0x603b('0x12'));var as=require(_0x603b('0x13'));var hardwareService=require(_0x603b('0x14'));var logger=require(_0x603b('0x15'))(_0x603b('0x16'));var utils=require(_0x603b('0x17'));var config=require(_0x603b('0x18'));var licenseUtil=require(_0x603b('0x19'));var db=require(_0x603b('0x1a'))['db'];function respondWithStatusCode(_0x2ace1f,_0x58f19f){_0x58f19f=_0x58f19f||0xcc;return function(_0x5d3cba){if(_0x5d3cba){return _0x2ace1f[_0x603b('0x1b')](_0x58f19f);}return _0x2ace1f['status'](_0x58f19f)[_0x603b('0x1c')]();};}function respondWithResult(_0x5962a4,_0x1186a1){_0x1186a1=_0x1186a1||0xc8;return function(_0x1567a2){if(_0x1567a2){return _0x5962a4[_0x603b('0x1d')](_0x1186a1)[_0x603b('0x1e')](_0x1567a2);}};}function respondWithFilteredResult(_0x3d299c,_0x58e5e2){return function(_0xee2376){if(_0xee2376){var _0x4bed63=typeof _0x58e5e2[_0x603b('0x1f')]===_0x603b('0x20')&&typeof _0x58e5e2[_0x603b('0x21')]===_0x603b('0x20');var _0x47436e=_0xee2376[_0x603b('0x22')];var _0x5bfe58=_0x4bed63?0x0:_0x58e5e2['offset'];var _0x3e4031=_0x4bed63?_0xee2376[_0x603b('0x22')]:_0x58e5e2[_0x603b('0x1f')]+_0x58e5e2[_0x603b('0x21')];var _0x1735f2;if(_0x3e4031>=_0x47436e){_0x3e4031=_0x47436e;_0x1735f2=0xc8;}else{_0x1735f2=0xce;}_0x3d299c[_0x603b('0x1d')](_0x1735f2);return _0x3d299c[_0x603b('0x23')](_0x603b('0x24'),_0x5bfe58+'-'+_0x3e4031+'/'+_0x47436e)[_0x603b('0x1e')](_0xee2376);}return null;};}function patchUpdates(_0x301db3){return function(_0x2d318f){try{jsonpatch[_0x603b('0x25')](_0x2d318f,_0x301db3,!![]);}catch(_0x1daeb1){return BPromise[_0x603b('0x26')](_0x1daeb1);}return _0x2d318f[_0x603b('0x27')]();};}function saveUpdates(_0x278604,_0x52beba){return function(_0x232957){if(_0x232957){return _0x232957[_0x603b('0x28')](_0x278604)[_0x603b('0x29')](function(_0x2b8ee0){return _0x2b8ee0;});}return null;};}function removeEntity(_0x5b6fe4,_0xaf8617){return function(_0x36da4d){if(_0x36da4d){return _0x36da4d[_0x603b('0x2a')]()[_0x603b('0x29')](function(){_0x5b6fe4['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0x300881,_0x5bab64){return function(_0x238bdd){if(!_0x238bdd){_0x300881['sendStatus'](0x194);}return _0x238bdd;};}function handleError(_0x406986,_0x56797e){_0x56797e=_0x56797e||0x1f4;return function(_0x92cc83){logger[_0x603b('0x2b')](_0x92cc83[_0x603b('0x2c')]);if(_0x92cc83[_0x603b('0x2d')]){delete _0x92cc83[_0x603b('0x2d')];}_0x406986[_0x603b('0x1d')](_0x56797e)[_0x603b('0x2e')](_0x92cc83);};}exports[_0x603b('0x2f')]=function(_0x3aa992,_0x31e63d){var _0x124195={},_0x3ae7d7={},_0x221c7e={'count':0x0,'rows':[]};var _0x239406=_[_0x603b('0x30')](db[_0x603b('0x31')][_0x603b('0x32')],function(_0x54ac1a){return{'name':_0x54ac1a[_0x603b('0x33')],'type':_0x54ac1a[_0x603b('0x34')][_0x603b('0x35')]};});_0x3ae7d7[_0x603b('0x36')]=_['map'](_0x239406,_0x603b('0x2d'));_0x3ae7d7[_0x603b('0x37')]=_['keys'](_0x3aa992[_0x603b('0x37')]);_0x3ae7d7[_0x603b('0x38')]=_[_0x603b('0x39')](_0x3ae7d7[_0x603b('0x36')],_0x3ae7d7[_0x603b('0x37')]);_0x124195[_0x603b('0x3a')]=_['intersection'](_0x3ae7d7[_0x603b('0x36')],qs[_0x603b('0x3b')](_0x3aa992['query'][_0x603b('0x3b')]));_0x124195[_0x603b('0x3a')]=_0x124195[_0x603b('0x3a')][_0x603b('0x3c')]?_0x124195[_0x603b('0x3a')]:_0x3ae7d7[_0x603b('0x36')];if(!_0x3aa992['query'][_0x603b('0x3d')](_0x603b('0x3e'))){_0x124195[_0x603b('0x21')]=qs[_0x603b('0x21')](_0x3aa992[_0x603b('0x37')]['limit']);_0x124195[_0x603b('0x1f')]=qs[_0x603b('0x1f')](_0x3aa992[_0x603b('0x37')]['offset']);}_0x124195[_0x603b('0x3f')]=qs[_0x603b('0x40')](_0x3aa992[_0x603b('0x37')]['sort']);_0x124195[_0x603b('0x41')]=qs[_0x603b('0x38')](_[_0x603b('0x42')](_0x3aa992[_0x603b('0x37')],_0x3ae7d7[_0x603b('0x38')]),_0x239406);if(_0x3aa992[_0x603b('0x37')][_0x603b('0x43')]){_0x124195[_0x603b('0x41')]=_[_0x603b('0x44')](_0x124195[_0x603b('0x41')],{'$or':_['map'](_0x239406,function(_0x482f7a){if(_0x482f7a[_0x603b('0x34')]!==_0x603b('0x45')){var _0x5cb89f={};_0x5cb89f[_0x482f7a[_0x603b('0x2d')]]={'$like':'%'+_0x3aa992[_0x603b('0x37')][_0x603b('0x43')]+'%'};return _0x5cb89f;}})});}_0x124195=_[_0x603b('0x44')]({},_0x124195,_0x3aa992['options']);var _0x7a1c03={'where':_0x124195['where']};return db[_0x603b('0x31')]['count'](_0x7a1c03)[_0x603b('0x29')](function(_0x5accca){_0x221c7e[_0x603b('0x22')]=_0x5accca;if(_0x3aa992[_0x603b('0x37')][_0x603b('0x46')]){_0x124195[_0x603b('0x47')]=[{'all':!![]}];}return db[_0x603b('0x31')][_0x603b('0x48')](_0x124195);})[_0x603b('0x29')](function(_0x47d29f){_0x221c7e[_0x603b('0x49')]=_0x47d29f;return _0x221c7e;})[_0x603b('0x29')](respondWithFilteredResult(_0x31e63d,_0x124195))['catch'](handleError(_0x31e63d,null));};exports[_0x603b('0x4a')]=function(_0x2eff43,_0x50a8d5){var _0x17b1fe={'raw':!![],'where':{'id':_0x2eff43[_0x603b('0x4b')]['id']}},_0x2cb7ff={};_0x2cb7ff[_0x603b('0x36')]=_[_0x603b('0x4c')](db[_0x603b('0x31')][_0x603b('0x32')]);_0x2cb7ff['query']=_[_0x603b('0x4c')](_0x2eff43[_0x603b('0x37')]);_0x2cb7ff['filters']=_[_0x603b('0x39')](_0x2cb7ff[_0x603b('0x36')],_0x2cb7ff[_0x603b('0x37')]);_0x17b1fe['attributes']=_[_0x603b('0x39')](_0x2cb7ff[_0x603b('0x36')],qs[_0x603b('0x3b')](_0x2eff43['query'][_0x603b('0x3b')]));_0x17b1fe[_0x603b('0x3a')]=_0x17b1fe[_0x603b('0x3a')][_0x603b('0x3c')]?_0x17b1fe['attributes']:_0x2cb7ff[_0x603b('0x36')];if(_0x2eff43[_0x603b('0x37')][_0x603b('0x46')]){_0x17b1fe[_0x603b('0x47')]=[{'all':!![]}];}_0x17b1fe=_[_0x603b('0x44')]({},_0x17b1fe,_0x2eff43[_0x603b('0x4d')]);return db[_0x603b('0x31')]['find'](_0x17b1fe)['then'](handleEntityNotFound(_0x50a8d5,null))[_0x603b('0x29')](respondWithResult(_0x50a8d5,null))[_0x603b('0x4e')](handleError(_0x50a8d5,null));};exports['create']=function(_0x3c8fcb,_0x4c707e){return db[_0x603b('0x31')][_0x603b('0x4f')](_0x3c8fcb['body'],{})[_0x603b('0x29')](respondWithResult(_0x4c707e,0xc9))[_0x603b('0x4e')](handleError(_0x4c707e,null));};exports[_0x603b('0x28')]=function(_0x2ee726,_0xe94cdd){if(_0x2ee726[_0x603b('0x50')]['id']){delete _0x2ee726['body']['id'];}return db[_0x603b('0x31')][_0x603b('0x51')]({'where':{'id':_0x2ee726[_0x603b('0x4b')]['id']}})[_0x603b('0x29')](handleEntityNotFound(_0xe94cdd,null))['then'](saveUpdates(_0x2ee726[_0x603b('0x50')],null))[_0x603b('0x29')](respondWithResult(_0xe94cdd,null))[_0x603b('0x4e')](handleError(_0xe94cdd,null));};exports[_0x603b('0x2a')]=function(_0x17bf13,_0x998721){return db[_0x603b('0x31')]['find']({'where':{'id':_0x17bf13[_0x603b('0x4b')]['id']}})[_0x603b('0x29')](handleEntityNotFound(_0x998721,null))[_0x603b('0x29')](removeEntity(_0x998721,null))[_0x603b('0x4e')](handleError(_0x998721,null));};