Built motion from commit 85328c08.|2.5.50
[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 _0xee9b=['merge','options','include','SugarcrmField','rows','show','params','includeAll','find','catch','body','eml-format','rimraf','zip-dir','fast-json-patch','bluebird','mustache','path','sox','to-csv','ejs','fs-extra','lodash','crypto','jsforce','desk.js','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','sendStatus','status','end','offset','limit','undefined','count','Content-Range','json','apply','reject','save','update','then','destroy','error','stack','name','index','map','rawAttributes','fieldName','type','key','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','where','pick','filter'];(function(_0x55f0be,_0x19eee7){var _0x1ceaae=function(_0x11a2bd){while(--_0x11a2bd){_0x55f0be['push'](_0x55f0be['shift']());}};_0x1ceaae(++_0x19eee7);}(_0xee9b,0x12f));var _0xbee9=function(_0x360409,_0xe0f489){_0x360409=_0x360409-0x0;var _0x5a8a7d=_0xee9b[_0x360409];return _0x5a8a7d;};'use strict';var emlformat=require(_0xbee9('0x0'));var rimraf=require(_0xbee9('0x1'));var zipdir=require(_0xbee9('0x2'));var jsonpatch=require(_0xbee9('0x3'));var rp=require('request-promise');var moment=require('moment');var BPromise=require(_0xbee9('0x4'));var Mustache=require(_0xbee9('0x5'));var util=require('util');var path=require(_0xbee9('0x6'));var sox=require(_0xbee9('0x7'));var csv=require(_0xbee9('0x8'));var ejs=require(_0xbee9('0x9'));var fs=require('fs');var fs_extra=require(_0xbee9('0xa'));var _=require(_0xbee9('0xb'));var squel=require('squel');var crypto=require(_0xbee9('0xc'));var jsforce=require(_0xbee9('0xd'));var deskjs=require(_0xbee9('0xe'));var toCsv=require(_0xbee9('0x8'));var querystring=require(_0xbee9('0xf'));var Papa=require('papaparse');var Redis=require(_0xbee9('0x10'));var authService=require(_0xbee9('0x11'));var qs=require(_0xbee9('0x12'));var as=require(_0xbee9('0x13'));var hardwareService=require(_0xbee9('0x14'));var logger=require(_0xbee9('0x15'))('api');var utils=require(_0xbee9('0x16'));var config=require(_0xbee9('0x17'));var licenseUtil=require('../../config/license/util');var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x4bfa22,_0x79a0c9){_0x79a0c9=_0x79a0c9||0xcc;return function(_0x3201c5){if(_0x3201c5){return _0x4bfa22[_0xbee9('0x18')](_0x79a0c9);}return _0x4bfa22[_0xbee9('0x19')](_0x79a0c9)[_0xbee9('0x1a')]();};}function respondWithResult(_0x2beca5,_0x19c132){_0x19c132=_0x19c132||0xc8;return function(_0x65d761){if(_0x65d761){return _0x2beca5[_0xbee9('0x19')](_0x19c132)['json'](_0x65d761);}};}function respondWithFilteredResult(_0x4f5a66,_0x23118e){return function(_0x38e1ce){if(_0x38e1ce){var _0x3c80c7=typeof _0x23118e[_0xbee9('0x1b')]==='undefined'&&typeof _0x23118e[_0xbee9('0x1c')]===_0xbee9('0x1d');var _0x410aac=_0x38e1ce['count'];var _0x5c90d9=_0x3c80c7?0x0:_0x23118e[_0xbee9('0x1b')];var _0x41dcca=_0x3c80c7?_0x38e1ce[_0xbee9('0x1e')]:_0x23118e[_0xbee9('0x1b')]+_0x23118e[_0xbee9('0x1c')];var _0x3f4ce6;if(_0x41dcca>=_0x410aac){_0x41dcca=_0x410aac;_0x3f4ce6=0xc8;}else{_0x3f4ce6=0xce;}_0x4f5a66[_0xbee9('0x19')](_0x3f4ce6);return _0x4f5a66['set'](_0xbee9('0x1f'),_0x5c90d9+'-'+_0x41dcca+'/'+_0x410aac)[_0xbee9('0x20')](_0x38e1ce);}return null;};}function patchUpdates(_0x479126){return function(_0x13b705){try{jsonpatch[_0xbee9('0x21')](_0x13b705,_0x479126,!![]);}catch(_0x3e981f){return BPromise[_0xbee9('0x22')](_0x3e981f);}return _0x13b705[_0xbee9('0x23')]();};}function saveUpdates(_0x2ac224,_0x53bbc1){return function(_0x5941dc){if(_0x5941dc){return _0x5941dc[_0xbee9('0x24')](_0x2ac224)[_0xbee9('0x25')](function(_0x35347f){return _0x35347f;});}return null;};}function removeEntity(_0x5a3214,_0x8f39cf){return function(_0x43b620){if(_0x43b620){return _0x43b620[_0xbee9('0x26')]()[_0xbee9('0x25')](function(){_0x5a3214[_0xbee9('0x19')](0xcc)['end']();});}};}function handleEntityNotFound(_0x2f6f92,_0x3fdc79){return function(_0x32ef3d){if(!_0x32ef3d){_0x2f6f92[_0xbee9('0x18')](0x194);}return _0x32ef3d;};}function handleError(_0x129565,_0x5b424c){_0x5b424c=_0x5b424c||0x1f4;return function(_0x5b0749){logger[_0xbee9('0x27')](_0x5b0749[_0xbee9('0x28')]);if(_0x5b0749[_0xbee9('0x29')]){delete _0x5b0749['name'];}_0x129565[_0xbee9('0x19')](_0x5b424c)['send'](_0x5b0749);};}exports[_0xbee9('0x2a')]=function(_0x1ca7c9,_0x40da41){var _0xc02b63={},_0x3702df={},_0x241203={'count':0x0,'rows':[]};var _0x3d76d5=_[_0xbee9('0x2b')](db['SugarcrmField'][_0xbee9('0x2c')],function(_0x1699f9){return{'name':_0x1699f9[_0xbee9('0x2d')],'type':_0x1699f9[_0xbee9('0x2e')][_0xbee9('0x2f')]};});_0x3702df[_0xbee9('0x30')]=_[_0xbee9('0x2b')](_0x3d76d5,'name');_0x3702df[_0xbee9('0x31')]=_[_0xbee9('0x32')](_0x1ca7c9[_0xbee9('0x31')]);_0x3702df[_0xbee9('0x33')]=_[_0xbee9('0x34')](_0x3702df[_0xbee9('0x30')],_0x3702df[_0xbee9('0x31')]);_0xc02b63[_0xbee9('0x35')]=_[_0xbee9('0x34')](_0x3702df[_0xbee9('0x30')],qs[_0xbee9('0x36')](_0x1ca7c9[_0xbee9('0x31')][_0xbee9('0x36')]));_0xc02b63[_0xbee9('0x35')]=_0xc02b63[_0xbee9('0x35')][_0xbee9('0x37')]?_0xc02b63[_0xbee9('0x35')]:_0x3702df['model'];if(!_0x1ca7c9[_0xbee9('0x31')][_0xbee9('0x38')](_0xbee9('0x39'))){_0xc02b63[_0xbee9('0x1c')]=qs[_0xbee9('0x1c')](_0x1ca7c9[_0xbee9('0x31')][_0xbee9('0x1c')]);_0xc02b63[_0xbee9('0x1b')]=qs['offset'](_0x1ca7c9[_0xbee9('0x31')][_0xbee9('0x1b')]);}_0xc02b63[_0xbee9('0x3a')]=qs['sort'](_0x1ca7c9['query']['sort']);_0xc02b63[_0xbee9('0x3b')]=qs[_0xbee9('0x33')](_[_0xbee9('0x3c')](_0x1ca7c9[_0xbee9('0x31')],_0x3702df[_0xbee9('0x33')]),_0x3d76d5);if(_0x1ca7c9[_0xbee9('0x31')]['filter']){_0xc02b63[_0xbee9('0x3b')]=_['merge'](_0xc02b63[_0xbee9('0x3b')],{'$or':_['map'](_0x3d76d5,function(_0x9e1935){if(_0x9e1935[_0xbee9('0x2e')]!=='VIRTUAL'){var _0x42c38d={};_0x42c38d[_0x9e1935[_0xbee9('0x29')]]={'$like':'%'+_0x1ca7c9[_0xbee9('0x31')][_0xbee9('0x3d')]+'%'};return _0x42c38d;}})});}_0xc02b63=_[_0xbee9('0x3e')]({},_0xc02b63,_0x1ca7c9[_0xbee9('0x3f')]);var _0x35883b={'where':_0xc02b63[_0xbee9('0x3b')]};return db['SugarcrmField']['count'](_0x35883b)[_0xbee9('0x25')](function(_0x3a0646){_0x241203[_0xbee9('0x1e')]=_0x3a0646;if(_0x1ca7c9[_0xbee9('0x31')]['includeAll']){_0xc02b63[_0xbee9('0x40')]=[{'all':!![]}];}return db[_0xbee9('0x41')]['findAll'](_0xc02b63);})[_0xbee9('0x25')](function(_0x3f5e6b){_0x241203[_0xbee9('0x42')]=_0x3f5e6b;return _0x241203;})['then'](respondWithFilteredResult(_0x40da41,_0xc02b63))['catch'](handleError(_0x40da41,null));};exports[_0xbee9('0x43')]=function(_0x3a4b8d,_0x1e8aad){var _0x33d8b4={'raw':!![],'where':{'id':_0x3a4b8d[_0xbee9('0x44')]['id']}},_0x106b2c={};_0x106b2c['model']=_[_0xbee9('0x32')](db[_0xbee9('0x41')][_0xbee9('0x2c')]);_0x106b2c[_0xbee9('0x31')]=_['keys'](_0x3a4b8d[_0xbee9('0x31')]);_0x106b2c[_0xbee9('0x33')]=_[_0xbee9('0x34')](_0x106b2c[_0xbee9('0x30')],_0x106b2c[_0xbee9('0x31')]);_0x33d8b4[_0xbee9('0x35')]=_['intersection'](_0x106b2c['model'],qs[_0xbee9('0x36')](_0x3a4b8d[_0xbee9('0x31')][_0xbee9('0x36')]));_0x33d8b4[_0xbee9('0x35')]=_0x33d8b4[_0xbee9('0x35')][_0xbee9('0x37')]?_0x33d8b4[_0xbee9('0x35')]:_0x106b2c[_0xbee9('0x30')];if(_0x3a4b8d[_0xbee9('0x31')][_0xbee9('0x45')]){_0x33d8b4['include']=[{'all':!![]}];}_0x33d8b4=_[_0xbee9('0x3e')]({},_0x33d8b4,_0x3a4b8d[_0xbee9('0x3f')]);return db[_0xbee9('0x41')][_0xbee9('0x46')](_0x33d8b4)[_0xbee9('0x25')](handleEntityNotFound(_0x1e8aad,null))[_0xbee9('0x25')](respondWithResult(_0x1e8aad,null))['catch'](handleError(_0x1e8aad,null));};exports['create']=function(_0x19cdda,_0x2e6040){return db[_0xbee9('0x41')]['create'](_0x19cdda['body'],{})['then'](respondWithResult(_0x2e6040,0xc9))[_0xbee9('0x47')](handleError(_0x2e6040,null));};exports[_0xbee9('0x24')]=function(_0x20ea10,_0x129a19){if(_0x20ea10['body']['id']){delete _0x20ea10[_0xbee9('0x48')]['id'];}return db[_0xbee9('0x41')][_0xbee9('0x46')]({'where':{'id':_0x20ea10[_0xbee9('0x44')]['id']}})[_0xbee9('0x25')](handleEntityNotFound(_0x129a19,null))['then'](saveUpdates(_0x20ea10[_0xbee9('0x48')],null))[_0xbee9('0x25')](respondWithResult(_0x129a19,null))[_0xbee9('0x47')](handleError(_0x129a19,null));};exports['destroy']=function(_0x44d67e,_0x2f79be){return db[_0xbee9('0x41')][_0xbee9('0x46')]({'where':{'id':_0x44d67e[_0xbee9('0x44')]['id']}})['then'](handleEntityNotFound(_0x2f79be,null))[_0xbee9('0x25')](removeEntity(_0x2f79be,null))[_0xbee9('0x47')](handleError(_0x2f79be,null));};