Built motion from commit (unavailable).|2.5.19
[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 _0xee14=['includeAll','include','findAll','rows','catch','show','params','find','create','body','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','to-csv','lodash','squel','crypto','jsforce','desk.js','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','status','end','json','count','offset','limit','set','apply','reject','update','then','destroy','error','stack','name','send','index','map','rawAttributes','fieldName','type','key','query','keys','filters','intersection','attributes','model','fields','length','hasOwnProperty','nolimit','order','sort','where','filter','VIRTUAL','merge','options','SugarcrmField'];(function(_0x109f26,_0x36774b){var _0x18c148=function(_0x2825d2){while(--_0x2825d2){_0x109f26['push'](_0x109f26['shift']());}};_0x18c148(++_0x36774b);}(_0xee14,0x13a));var _0x4ee1=function(_0x16a5d7,_0x13fc21){_0x16a5d7=_0x16a5d7-0x0;var _0x94f294=_0xee14[_0x16a5d7];return _0x94f294;};'use strict';var pdf=require('html-pdf');var emlformat=require('eml-format');var rimraf=require(_0x4ee1('0x0'));var zipdir=require(_0x4ee1('0x1'));var jsonpatch=require(_0x4ee1('0x2'));var rp=require(_0x4ee1('0x3'));var moment=require(_0x4ee1('0x4'));var BPromise=require(_0x4ee1('0x5'));var Mustache=require(_0x4ee1('0x6'));var util=require(_0x4ee1('0x7'));var path=require(_0x4ee1('0x8'));var sox=require('sox');var csv=require(_0x4ee1('0x9'));var ejs=require('ejs');var fs=require('fs');var _=require(_0x4ee1('0xa'));var squel=require(_0x4ee1('0xb'));var crypto=require(_0x4ee1('0xc'));var jsforce=require(_0x4ee1('0xd'));var deskjs=require(_0x4ee1('0xe'));var toCsv=require(_0x4ee1('0x9'));var querystring=require('querystring');var Papa=require(_0x4ee1('0xf'));var Redis=require(_0x4ee1('0x10'));var authService=require('../../components/auth/service');var qs=require(_0x4ee1('0x11'));var as=require(_0x4ee1('0x12'));var hardwareService=require(_0x4ee1('0x13'));var logger=require(_0x4ee1('0x14'))('api');var utils=require(_0x4ee1('0x15'));var config=require(_0x4ee1('0x16'));var licenseUtil=require(_0x4ee1('0x17'));var db=require(_0x4ee1('0x18'))['db'];function respondWithStatusCode(_0x2f864e,_0x174427){_0x174427=_0x174427||0xcc;return function(_0x5616d6){if(_0x5616d6){return _0x2f864e[_0x4ee1('0x19')](_0x174427);}return _0x2f864e[_0x4ee1('0x1a')](_0x174427)[_0x4ee1('0x1b')]();};}function respondWithResult(_0x24a915,_0x46d2c2){_0x46d2c2=_0x46d2c2||0xc8;return function(_0x1c342a){if(_0x1c342a){return _0x24a915[_0x4ee1('0x1a')](_0x46d2c2)[_0x4ee1('0x1c')](_0x1c342a);}};}function respondWithFilteredResult(_0xb7eafd,_0x4e3490){return function(_0x2f9194){if(_0x2f9194){var _0x38008f=_0x2f9194[_0x4ee1('0x1d')],_0x34651b=_0x4e3490[_0x4ee1('0x1e')],_0x1b1e0e=_0x4e3490[_0x4ee1('0x1e')]+_0x4e3490[_0x4ee1('0x1f')],_0x123c5e;if(_0x1b1e0e>=_0x38008f){_0x1b1e0e=_0x38008f;_0x123c5e=0xc8;}else{_0x123c5e=0xce;}_0xb7eafd[_0x4ee1('0x1a')](_0x123c5e);return _0xb7eafd[_0x4ee1('0x20')]('Content-Range',_0x34651b+'-'+_0x1b1e0e+'/'+_0x38008f)[_0x4ee1('0x1c')](_0x2f9194);}return null;};}function patchUpdates(_0x3db827){return function(_0x173388){try{jsonpatch[_0x4ee1('0x21')](_0x173388,_0x3db827,!![]);}catch(_0x43f9a2){return BPromise[_0x4ee1('0x22')](_0x43f9a2);}return _0x173388['save']();};}function saveUpdates(_0x8a631f,_0x333e96){return function(_0x46611a){if(_0x46611a){return _0x46611a[_0x4ee1('0x23')](_0x8a631f)[_0x4ee1('0x24')](function(_0x224b54){return _0x224b54;});}return null;};}function removeEntity(_0x328f21,_0x40fd98){return function(_0x1dc1a8){if(_0x1dc1a8){return _0x1dc1a8[_0x4ee1('0x25')]()['then'](function(){_0x328f21['status'](0xcc)[_0x4ee1('0x1b')]();});}};}function handleEntityNotFound(_0x459e2e,_0xaf87e7){return function(_0x3bc985){if(!_0x3bc985){_0x459e2e[_0x4ee1('0x19')](0x194);}return _0x3bc985;};}function handleError(_0x28efdc,_0x57d45d){_0x57d45d=_0x57d45d||0x1f4;return function(_0x5cc0b5){logger[_0x4ee1('0x26')](_0x5cc0b5[_0x4ee1('0x27')]);if(_0x5cc0b5['name']){delete _0x5cc0b5[_0x4ee1('0x28')];}_0x28efdc[_0x4ee1('0x1a')](_0x57d45d)[_0x4ee1('0x29')](_0x5cc0b5);};}exports[_0x4ee1('0x2a')]=function(_0x2d699c,_0x3c7b2a){var _0x45bd0d={},_0x56c4d3={},_0x1f7b74={'count':0x0,'rows':[]};var _0x59029c=_[_0x4ee1('0x2b')](db['SugarcrmField'][_0x4ee1('0x2c')],function(_0x1d91be){return{'name':_0x1d91be[_0x4ee1('0x2d')],'type':_0x1d91be[_0x4ee1('0x2e')][_0x4ee1('0x2f')]};});_0x56c4d3['model']=_[_0x4ee1('0x2b')](_0x59029c,'name');_0x56c4d3[_0x4ee1('0x30')]=_[_0x4ee1('0x31')](_0x2d699c[_0x4ee1('0x30')]);_0x56c4d3[_0x4ee1('0x32')]=_[_0x4ee1('0x33')](_0x56c4d3['model'],_0x56c4d3[_0x4ee1('0x30')]);_0x45bd0d[_0x4ee1('0x34')]=_[_0x4ee1('0x33')](_0x56c4d3[_0x4ee1('0x35')],qs[_0x4ee1('0x36')](_0x2d699c[_0x4ee1('0x30')]['fields']));_0x45bd0d['attributes']=_0x45bd0d[_0x4ee1('0x34')][_0x4ee1('0x37')]?_0x45bd0d[_0x4ee1('0x34')]:_0x56c4d3['model'];if(!_0x2d699c[_0x4ee1('0x30')][_0x4ee1('0x38')](_0x4ee1('0x39'))){_0x45bd0d[_0x4ee1('0x1f')]=qs[_0x4ee1('0x1f')](_0x2d699c[_0x4ee1('0x30')][_0x4ee1('0x1f')]);_0x45bd0d[_0x4ee1('0x1e')]=qs[_0x4ee1('0x1e')](_0x2d699c[_0x4ee1('0x30')][_0x4ee1('0x1e')]);}_0x45bd0d[_0x4ee1('0x3a')]=qs[_0x4ee1('0x3b')](_0x2d699c['query'][_0x4ee1('0x3b')]);_0x45bd0d[_0x4ee1('0x3c')]=qs[_0x4ee1('0x32')](_['pick'](_0x2d699c['query'],_0x56c4d3[_0x4ee1('0x32')]),_0x59029c);if(_0x2d699c[_0x4ee1('0x30')][_0x4ee1('0x3d')]){_0x45bd0d[_0x4ee1('0x3c')]=_['merge'](_0x45bd0d[_0x4ee1('0x3c')],{'$or':_[_0x4ee1('0x2b')](_0x59029c,function(_0x11721a){if(_0x11721a[_0x4ee1('0x2e')]!==_0x4ee1('0x3e')){var _0x2445c2={};_0x2445c2[_0x11721a[_0x4ee1('0x28')]]={'$like':'%'+_0x2d699c[_0x4ee1('0x30')]['filter']+'%'};return _0x2445c2;}})});}_0x45bd0d=_[_0x4ee1('0x3f')]({},_0x45bd0d,_0x2d699c[_0x4ee1('0x40')]);var _0x345003={'where':_0x45bd0d[_0x4ee1('0x3c')]};return db[_0x4ee1('0x41')][_0x4ee1('0x1d')](_0x345003)['then'](function(_0x3e2ca7){_0x1f7b74[_0x4ee1('0x1d')]=_0x3e2ca7;if(_0x2d699c[_0x4ee1('0x30')][_0x4ee1('0x42')]){_0x45bd0d[_0x4ee1('0x43')]=[{'all':!![]}];}return db[_0x4ee1('0x41')][_0x4ee1('0x44')](_0x45bd0d);})[_0x4ee1('0x24')](function(_0x23bb5f){_0x1f7b74[_0x4ee1('0x45')]=_0x23bb5f;return _0x1f7b74;})[_0x4ee1('0x24')](respondWithFilteredResult(_0x3c7b2a,_0x45bd0d))[_0x4ee1('0x46')](handleError(_0x3c7b2a,null));};exports[_0x4ee1('0x47')]=function(_0x51fd40,_0x3b3bed){var _0x40a3e3={'raw':!![],'where':{'id':_0x51fd40[_0x4ee1('0x48')]['id']}},_0x5ee7b4={};_0x5ee7b4['model']=_[_0x4ee1('0x31')](db['SugarcrmField'][_0x4ee1('0x2c')]);_0x5ee7b4[_0x4ee1('0x30')]=_['keys'](_0x51fd40[_0x4ee1('0x30')]);_0x5ee7b4[_0x4ee1('0x32')]=_[_0x4ee1('0x33')](_0x5ee7b4[_0x4ee1('0x35')],_0x5ee7b4['query']);_0x40a3e3[_0x4ee1('0x34')]=_[_0x4ee1('0x33')](_0x5ee7b4[_0x4ee1('0x35')],qs['fields'](_0x51fd40['query'][_0x4ee1('0x36')]));_0x40a3e3[_0x4ee1('0x34')]=_0x40a3e3[_0x4ee1('0x34')][_0x4ee1('0x37')]?_0x40a3e3[_0x4ee1('0x34')]:_0x5ee7b4['model'];if(_0x51fd40['query'][_0x4ee1('0x42')]){_0x40a3e3[_0x4ee1('0x43')]=[{'all':!![]}];}_0x40a3e3=_[_0x4ee1('0x3f')]({},_0x40a3e3,_0x51fd40[_0x4ee1('0x40')]);return db['SugarcrmField'][_0x4ee1('0x49')](_0x40a3e3)[_0x4ee1('0x24')](handleEntityNotFound(_0x3b3bed,null))['then'](respondWithResult(_0x3b3bed,null))[_0x4ee1('0x46')](handleError(_0x3b3bed,null));};exports[_0x4ee1('0x4a')]=function(_0x21edeb,_0x28e7b8){return db[_0x4ee1('0x41')][_0x4ee1('0x4a')](_0x21edeb[_0x4ee1('0x4b')],{})[_0x4ee1('0x24')](respondWithResult(_0x28e7b8,0xc9))[_0x4ee1('0x46')](handleError(_0x28e7b8,null));};exports['update']=function(_0x49b667,_0x1a972b){if(_0x49b667[_0x4ee1('0x4b')]['id']){delete _0x49b667[_0x4ee1('0x4b')]['id'];}return db[_0x4ee1('0x41')]['find']({'where':{'id':_0x49b667[_0x4ee1('0x48')]['id']}})[_0x4ee1('0x24')](handleEntityNotFound(_0x1a972b,null))[_0x4ee1('0x24')](saveUpdates(_0x49b667[_0x4ee1('0x4b')],null))[_0x4ee1('0x24')](respondWithResult(_0x1a972b,null))['catch'](handleError(_0x1a972b,null));};exports[_0x4ee1('0x25')]=function(_0x4ae560,_0x37c282){return db['SugarcrmField'][_0x4ee1('0x49')]({'where':{'id':_0x4ae560['params']['id']}})[_0x4ee1('0x24')](handleEntityNotFound(_0x37c282,null))['then'](removeEntity(_0x37c282,null))[_0x4ee1('0x46')](handleError(_0x37c282,null));};