Built motion from commit d5e4af8c.|2.6.23
[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 _0x369c=['fieldName','type','key','model','query','keys','intersection','attributes','fields','hasOwnProperty','nolimit','order','sort','where','filters','pick','filter','merge','VIRTUAL','include','findAll','show','length','includeAll','options','find','create','body','params','catch','zip-dir','fast-json-patch','request-promise','bluebird','mustache','util','path','sox','ejs','lodash','squel','crypto','jsforce','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/license/util','../../mysqldb','sendStatus','status','json','offset','undefined','limit','count','Content-Range','apply','reject','update','then','destroy','error','stack','name','send','index','map','SugarcrmField','rawAttributes'];(function(_0x15aacc,_0x907610){var _0x511759=function(_0xf00a28){while(--_0xf00a28){_0x15aacc['push'](_0x15aacc['shift']());}};_0x511759(++_0x907610);}(_0x369c,0x190));var _0xc369=function(_0x3dd15e,_0x1f0015){_0x3dd15e=_0x3dd15e-0x0;var _0x231fd0=_0x369c[_0x3dd15e];return _0x231fd0;};'use strict';var emlformat=require('eml-format');var rimraf=require('rimraf');var zipdir=require(_0xc369('0x0'));var jsonpatch=require(_0xc369('0x1'));var rp=require(_0xc369('0x2'));var moment=require('moment');var BPromise=require(_0xc369('0x3'));var Mustache=require(_0xc369('0x4'));var util=require(_0xc369('0x5'));var path=require(_0xc369('0x6'));var sox=require(_0xc369('0x7'));var csv=require('to-csv');var ejs=require(_0xc369('0x8'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0xc369('0x9'));var squel=require(_0xc369('0xa'));var crypto=require(_0xc369('0xb'));var jsforce=require(_0xc369('0xc'));var deskjs=require('desk.js');var toCsv=require('to-csv');var querystring=require(_0xc369('0xd'));var Papa=require(_0xc369('0xe'));var Redis=require('ioredis');var authService=require(_0xc369('0xf'));var qs=require(_0xc369('0x10'));var as=require(_0xc369('0x11'));var hardwareService=require(_0xc369('0x12'));var logger=require(_0xc369('0x13'))(_0xc369('0x14'));var utils=require('../../config/utils');var config=require('../../config/environment');var licenseUtil=require(_0xc369('0x15'));var db=require(_0xc369('0x16'))['db'];function respondWithStatusCode(_0x3c3408,_0x300010){_0x300010=_0x300010||0xcc;return function(_0x7b701c){if(_0x7b701c){return _0x3c3408[_0xc369('0x17')](_0x300010);}return _0x3c3408[_0xc369('0x18')](_0x300010)['end']();};}function respondWithResult(_0xb3b4b6,_0x1c3866){_0x1c3866=_0x1c3866||0xc8;return function(_0x25b059){if(_0x25b059){return _0xb3b4b6['status'](_0x1c3866)[_0xc369('0x19')](_0x25b059);}};}function respondWithFilteredResult(_0x2d45b9,_0x21498c){return function(_0x470e8c){if(_0x470e8c){var _0x2fe402=typeof _0x21498c[_0xc369('0x1a')]===_0xc369('0x1b')&&typeof _0x21498c[_0xc369('0x1c')]===_0xc369('0x1b');var _0x228e2=_0x470e8c[_0xc369('0x1d')];var _0x35530c=_0x2fe402?0x0:_0x21498c['offset'];var _0x4909dd=_0x2fe402?_0x470e8c[_0xc369('0x1d')]:_0x21498c[_0xc369('0x1a')]+_0x21498c[_0xc369('0x1c')];var _0x2f37dc;if(_0x4909dd>=_0x228e2){_0x4909dd=_0x228e2;_0x2f37dc=0xc8;}else{_0x2f37dc=0xce;}_0x2d45b9[_0xc369('0x18')](_0x2f37dc);return _0x2d45b9['set'](_0xc369('0x1e'),_0x35530c+'-'+_0x4909dd+'/'+_0x228e2)[_0xc369('0x19')](_0x470e8c);}return null;};}function patchUpdates(_0x4ff5a0){return function(_0x454a74){try{jsonpatch[_0xc369('0x1f')](_0x454a74,_0x4ff5a0,!![]);}catch(_0x367a53){return BPromise[_0xc369('0x20')](_0x367a53);}return _0x454a74['save']();};}function saveUpdates(_0x29dd04,_0x1c5d4d){return function(_0x547eba){if(_0x547eba){return _0x547eba[_0xc369('0x21')](_0x29dd04)[_0xc369('0x22')](function(_0x23dcb8){return _0x23dcb8;});}return null;};}function removeEntity(_0x4cc240,_0x5a63f0){return function(_0x3ede20){if(_0x3ede20){return _0x3ede20[_0xc369('0x23')]()[_0xc369('0x22')](function(){_0x4cc240[_0xc369('0x18')](0xcc)['end']();});}};}function handleEntityNotFound(_0x20a24c,_0x3d1a1f){return function(_0xa5e9f5){if(!_0xa5e9f5){_0x20a24c[_0xc369('0x17')](0x194);}return _0xa5e9f5;};}function handleError(_0xff4145,_0x34a8bf){_0x34a8bf=_0x34a8bf||0x1f4;return function(_0xb57ed5){logger[_0xc369('0x24')](_0xb57ed5[_0xc369('0x25')]);if(_0xb57ed5[_0xc369('0x26')]){delete _0xb57ed5[_0xc369('0x26')];}_0xff4145['status'](_0x34a8bf)[_0xc369('0x27')](_0xb57ed5);};}exports[_0xc369('0x28')]=function(_0x5c321b,_0x4ec244){var _0xf2b38f={},_0x379dfe={},_0x39177d={'count':0x0,'rows':[]};var _0x12c3a7=_[_0xc369('0x29')](db[_0xc369('0x2a')][_0xc369('0x2b')],function(_0x3fe0c3){return{'name':_0x3fe0c3[_0xc369('0x2c')],'type':_0x3fe0c3[_0xc369('0x2d')][_0xc369('0x2e')]};});_0x379dfe[_0xc369('0x2f')]=_[_0xc369('0x29')](_0x12c3a7,_0xc369('0x26'));_0x379dfe[_0xc369('0x30')]=_[_0xc369('0x31')](_0x5c321b[_0xc369('0x30')]);_0x379dfe['filters']=_[_0xc369('0x32')](_0x379dfe[_0xc369('0x2f')],_0x379dfe[_0xc369('0x30')]);_0xf2b38f[_0xc369('0x33')]=_[_0xc369('0x32')](_0x379dfe[_0xc369('0x2f')],qs[_0xc369('0x34')](_0x5c321b[_0xc369('0x30')][_0xc369('0x34')]));_0xf2b38f['attributes']=_0xf2b38f[_0xc369('0x33')]['length']?_0xf2b38f['attributes']:_0x379dfe[_0xc369('0x2f')];if(!_0x5c321b[_0xc369('0x30')][_0xc369('0x35')](_0xc369('0x36'))){_0xf2b38f[_0xc369('0x1c')]=qs[_0xc369('0x1c')](_0x5c321b[_0xc369('0x30')]['limit']);_0xf2b38f[_0xc369('0x1a')]=qs[_0xc369('0x1a')](_0x5c321b['query'][_0xc369('0x1a')]);}_0xf2b38f[_0xc369('0x37')]=qs['sort'](_0x5c321b['query'][_0xc369('0x38')]);_0xf2b38f[_0xc369('0x39')]=qs[_0xc369('0x3a')](_[_0xc369('0x3b')](_0x5c321b[_0xc369('0x30')],_0x379dfe['filters']),_0x12c3a7);if(_0x5c321b[_0xc369('0x30')][_0xc369('0x3c')]){_0xf2b38f[_0xc369('0x39')]=_[_0xc369('0x3d')](_0xf2b38f[_0xc369('0x39')],{'$or':_[_0xc369('0x29')](_0x12c3a7,function(_0x1e5d41){if(_0x1e5d41['type']!==_0xc369('0x3e')){var _0x4e6f19={};_0x4e6f19[_0x1e5d41[_0xc369('0x26')]]={'$like':'%'+_0x5c321b[_0xc369('0x30')]['filter']+'%'};return _0x4e6f19;}})});}_0xf2b38f=_[_0xc369('0x3d')]({},_0xf2b38f,_0x5c321b['options']);var _0x1ead7a={'where':_0xf2b38f['where']};return db[_0xc369('0x2a')][_0xc369('0x1d')](_0x1ead7a)[_0xc369('0x22')](function(_0x105c89){_0x39177d['count']=_0x105c89;if(_0x5c321b['query']['includeAll']){_0xf2b38f[_0xc369('0x3f')]=[{'all':!![]}];}return db[_0xc369('0x2a')][_0xc369('0x40')](_0xf2b38f);})[_0xc369('0x22')](function(_0x1d3934){_0x39177d['rows']=_0x1d3934;return _0x39177d;})[_0xc369('0x22')](respondWithFilteredResult(_0x4ec244,_0xf2b38f))['catch'](handleError(_0x4ec244,null));};exports[_0xc369('0x41')]=function(_0x149b33,_0xaf41ef){var _0x486059={'raw':!![],'where':{'id':_0x149b33['params']['id']}},_0x5dfbf2={};_0x5dfbf2[_0xc369('0x2f')]=_[_0xc369('0x31')](db['SugarcrmField'][_0xc369('0x2b')]);_0x5dfbf2[_0xc369('0x30')]=_[_0xc369('0x31')](_0x149b33[_0xc369('0x30')]);_0x5dfbf2[_0xc369('0x3a')]=_[_0xc369('0x32')](_0x5dfbf2[_0xc369('0x2f')],_0x5dfbf2[_0xc369('0x30')]);_0x486059[_0xc369('0x33')]=_[_0xc369('0x32')](_0x5dfbf2[_0xc369('0x2f')],qs['fields'](_0x149b33[_0xc369('0x30')]['fields']));_0x486059['attributes']=_0x486059[_0xc369('0x33')][_0xc369('0x42')]?_0x486059[_0xc369('0x33')]:_0x5dfbf2[_0xc369('0x2f')];if(_0x149b33[_0xc369('0x30')][_0xc369('0x43')]){_0x486059[_0xc369('0x3f')]=[{'all':!![]}];}_0x486059=_[_0xc369('0x3d')]({},_0x486059,_0x149b33[_0xc369('0x44')]);return db[_0xc369('0x2a')][_0xc369('0x45')](_0x486059)[_0xc369('0x22')](handleEntityNotFound(_0xaf41ef,null))[_0xc369('0x22')](respondWithResult(_0xaf41ef,null))['catch'](handleError(_0xaf41ef,null));};exports[_0xc369('0x46')]=function(_0x388222,_0x136dc5){return db[_0xc369('0x2a')][_0xc369('0x46')](_0x388222[_0xc369('0x47')],{})[_0xc369('0x22')](respondWithResult(_0x136dc5,0xc9))['catch'](handleError(_0x136dc5,null));};exports['update']=function(_0xb37051,_0x20aaa2){if(_0xb37051[_0xc369('0x47')]['id']){delete _0xb37051[_0xc369('0x47')]['id'];}return db[_0xc369('0x2a')][_0xc369('0x45')]({'where':{'id':_0xb37051[_0xc369('0x48')]['id']}})[_0xc369('0x22')](handleEntityNotFound(_0x20aaa2,null))[_0xc369('0x22')](saveUpdates(_0xb37051[_0xc369('0x47')],null))[_0xc369('0x22')](respondWithResult(_0x20aaa2,null))[_0xc369('0x49')](handleError(_0x20aaa2,null));};exports['destroy']=function(_0x56d7e8,_0x46e205){return db[_0xc369('0x2a')]['find']({'where':{'id':_0x56d7e8[_0xc369('0x48')]['id']}})[_0xc369('0x22')](handleEntityNotFound(_0x46e205,null))[_0xc369('0x22')](removeEntity(_0x46e205,null))['catch'](handleError(_0x46e205,null));};