Built motion from commit f7863d46.|2.5.41
[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 _0x76aa=['nolimit','order','sort','pick','filter','where','merge','includeAll','include','findAll','catch','show','keys','options','find','create','body','params','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','mustache','sox','to-csv','ejs','fs-extra','lodash','squel','crypto','desk.js','querystring','papaparse','ioredis','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','status','end','json','undefined','limit','offset','count','reject','save','update','then','destroy','sendStatus','error','name','send','index','map','SugarcrmField','rawAttributes','type','key','model','query','filters','intersection','fields','attributes','length','hasOwnProperty'];(function(_0x23d22b,_0x5d77ab){var _0x5c73c4=function(_0x8a7a33){while(--_0x8a7a33){_0x23d22b['push'](_0x23d22b['shift']());}};_0x5c73c4(++_0x5d77ab);}(_0x76aa,0x184));var _0xa76a=function(_0x297dab,_0x986c97){_0x297dab=_0x297dab-0x0;var _0xbe9dc4=_0x76aa[_0x297dab];return _0xbe9dc4;};'use strict';var emlformat=require(_0xa76a('0x0'));var rimraf=require(_0xa76a('0x1'));var zipdir=require(_0xa76a('0x2'));var jsonpatch=require(_0xa76a('0x3'));var rp=require(_0xa76a('0x4'));var moment=require(_0xa76a('0x5'));var BPromise=require('bluebird');var Mustache=require(_0xa76a('0x6'));var util=require('util');var path=require('path');var sox=require(_0xa76a('0x7'));var csv=require(_0xa76a('0x8'));var ejs=require(_0xa76a('0x9'));var fs=require('fs');var fs_extra=require(_0xa76a('0xa'));var _=require(_0xa76a('0xb'));var squel=require(_0xa76a('0xc'));var crypto=require(_0xa76a('0xd'));var jsforce=require('jsforce');var deskjs=require(_0xa76a('0xe'));var toCsv=require(_0xa76a('0x8'));var querystring=require(_0xa76a('0xf'));var Papa=require(_0xa76a('0x10'));var Redis=require(_0xa76a('0x11'));var authService=require('../../components/auth/service');var qs=require(_0xa76a('0x12'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xa76a('0x13'));var logger=require(_0xa76a('0x14'))(_0xa76a('0x15'));var utils=require(_0xa76a('0x16'));var config=require(_0xa76a('0x17'));var licenseUtil=require(_0xa76a('0x18'));var db=require(_0xa76a('0x19'))['db'];function respondWithStatusCode(_0x1ec7f6,_0xa52799){_0xa52799=_0xa52799||0xcc;return function(_0x24f932){if(_0x24f932){return _0x1ec7f6['sendStatus'](_0xa52799);}return _0x1ec7f6[_0xa76a('0x1a')](_0xa52799)[_0xa76a('0x1b')]();};}function respondWithResult(_0x46cb15,_0x4a4c98){_0x4a4c98=_0x4a4c98||0xc8;return function(_0x5f3b5a){if(_0x5f3b5a){return _0x46cb15[_0xa76a('0x1a')](_0x4a4c98)[_0xa76a('0x1c')](_0x5f3b5a);}};}function respondWithFilteredResult(_0x1acf90,_0x50012a){return function(_0x6bb577){if(_0x6bb577){var _0x31f53a=typeof _0x50012a['offset']===_0xa76a('0x1d')&&typeof _0x50012a[_0xa76a('0x1e')]===_0xa76a('0x1d');var _0x3ace8e=_0x6bb577['count'];var _0x1e9cbe=_0x31f53a?0x0:_0x50012a[_0xa76a('0x1f')];var _0x53d36d=_0x31f53a?_0x6bb577[_0xa76a('0x20')]:_0x50012a['offset']+_0x50012a[_0xa76a('0x1e')];var _0x297349;if(_0x53d36d>=_0x3ace8e){_0x53d36d=_0x3ace8e;_0x297349=0xc8;}else{_0x297349=0xce;}_0x1acf90[_0xa76a('0x1a')](_0x297349);return _0x1acf90['set']('Content-Range',_0x1e9cbe+'-'+_0x53d36d+'/'+_0x3ace8e)[_0xa76a('0x1c')](_0x6bb577);}return null;};}function patchUpdates(_0x11f1ec){return function(_0xa117df){try{jsonpatch['apply'](_0xa117df,_0x11f1ec,!![]);}catch(_0x5f3d69){return BPromise[_0xa76a('0x21')](_0x5f3d69);}return _0xa117df[_0xa76a('0x22')]();};}function saveUpdates(_0x1711e6,_0x1c170d){return function(_0x39067b){if(_0x39067b){return _0x39067b[_0xa76a('0x23')](_0x1711e6)[_0xa76a('0x24')](function(_0x51fb38){return _0x51fb38;});}return null;};}function removeEntity(_0x33cfa2,_0x12667f){return function(_0x492420){if(_0x492420){return _0x492420[_0xa76a('0x25')]()[_0xa76a('0x24')](function(){_0x33cfa2[_0xa76a('0x1a')](0xcc)[_0xa76a('0x1b')]();});}};}function handleEntityNotFound(_0x5a04a2,_0x1b3f82){return function(_0x5b74f5){if(!_0x5b74f5){_0x5a04a2[_0xa76a('0x26')](0x194);}return _0x5b74f5;};}function handleError(_0x3d2c29,_0x5f3f59){_0x5f3f59=_0x5f3f59||0x1f4;return function(_0x5d0e7d){logger[_0xa76a('0x27')](_0x5d0e7d['stack']);if(_0x5d0e7d[_0xa76a('0x28')]){delete _0x5d0e7d[_0xa76a('0x28')];}_0x3d2c29[_0xa76a('0x1a')](_0x5f3f59)[_0xa76a('0x29')](_0x5d0e7d);};}exports[_0xa76a('0x2a')]=function(_0xc467d3,_0x3ef590){var _0x44411a={},_0xe7203={},_0x350aa4={'count':0x0,'rows':[]};var _0x5c063c=_[_0xa76a('0x2b')](db[_0xa76a('0x2c')][_0xa76a('0x2d')],function(_0x441c14){return{'name':_0x441c14['fieldName'],'type':_0x441c14[_0xa76a('0x2e')][_0xa76a('0x2f')]};});_0xe7203[_0xa76a('0x30')]=_[_0xa76a('0x2b')](_0x5c063c,_0xa76a('0x28'));_0xe7203[_0xa76a('0x31')]=_['keys'](_0xc467d3['query']);_0xe7203[_0xa76a('0x32')]=_['intersection'](_0xe7203[_0xa76a('0x30')],_0xe7203[_0xa76a('0x31')]);_0x44411a['attributes']=_[_0xa76a('0x33')](_0xe7203[_0xa76a('0x30')],qs[_0xa76a('0x34')](_0xc467d3[_0xa76a('0x31')][_0xa76a('0x34')]));_0x44411a[_0xa76a('0x35')]=_0x44411a[_0xa76a('0x35')][_0xa76a('0x36')]?_0x44411a[_0xa76a('0x35')]:_0xe7203['model'];if(!_0xc467d3[_0xa76a('0x31')][_0xa76a('0x37')](_0xa76a('0x38'))){_0x44411a[_0xa76a('0x1e')]=qs['limit'](_0xc467d3[_0xa76a('0x31')][_0xa76a('0x1e')]);_0x44411a[_0xa76a('0x1f')]=qs[_0xa76a('0x1f')](_0xc467d3['query'][_0xa76a('0x1f')]);}_0x44411a[_0xa76a('0x39')]=qs[_0xa76a('0x3a')](_0xc467d3[_0xa76a('0x31')][_0xa76a('0x3a')]);_0x44411a['where']=qs['filters'](_[_0xa76a('0x3b')](_0xc467d3[_0xa76a('0x31')],_0xe7203[_0xa76a('0x32')]),_0x5c063c);if(_0xc467d3[_0xa76a('0x31')][_0xa76a('0x3c')]){_0x44411a[_0xa76a('0x3d')]=_[_0xa76a('0x3e')](_0x44411a['where'],{'$or':_['map'](_0x5c063c,function(_0x4119ae){if(_0x4119ae[_0xa76a('0x2e')]!=='VIRTUAL'){var _0x1224e3={};_0x1224e3[_0x4119ae[_0xa76a('0x28')]]={'$like':'%'+_0xc467d3[_0xa76a('0x31')]['filter']+'%'};return _0x1224e3;}})});}_0x44411a=_['merge']({},_0x44411a,_0xc467d3['options']);var _0x385bc8={'where':_0x44411a[_0xa76a('0x3d')]};return db[_0xa76a('0x2c')][_0xa76a('0x20')](_0x385bc8)[_0xa76a('0x24')](function(_0x58346c){_0x350aa4[_0xa76a('0x20')]=_0x58346c;if(_0xc467d3[_0xa76a('0x31')][_0xa76a('0x3f')]){_0x44411a[_0xa76a('0x40')]=[{'all':!![]}];}return db['SugarcrmField'][_0xa76a('0x41')](_0x44411a);})[_0xa76a('0x24')](function(_0x248523){_0x350aa4['rows']=_0x248523;return _0x350aa4;})['then'](respondWithFilteredResult(_0x3ef590,_0x44411a))[_0xa76a('0x42')](handleError(_0x3ef590,null));};exports[_0xa76a('0x43')]=function(_0x2f2761,_0x2ea5cd){var _0x26b8ff={'raw':!![],'where':{'id':_0x2f2761['params']['id']}},_0x3b4653={};_0x3b4653[_0xa76a('0x30')]=_['keys'](db[_0xa76a('0x2c')][_0xa76a('0x2d')]);_0x3b4653[_0xa76a('0x31')]=_[_0xa76a('0x44')](_0x2f2761['query']);_0x3b4653[_0xa76a('0x32')]=_[_0xa76a('0x33')](_0x3b4653[_0xa76a('0x30')],_0x3b4653[_0xa76a('0x31')]);_0x26b8ff[_0xa76a('0x35')]=_['intersection'](_0x3b4653[_0xa76a('0x30')],qs[_0xa76a('0x34')](_0x2f2761[_0xa76a('0x31')][_0xa76a('0x34')]));_0x26b8ff[_0xa76a('0x35')]=_0x26b8ff['attributes'][_0xa76a('0x36')]?_0x26b8ff[_0xa76a('0x35')]:_0x3b4653[_0xa76a('0x30')];if(_0x2f2761[_0xa76a('0x31')]['includeAll']){_0x26b8ff[_0xa76a('0x40')]=[{'all':!![]}];}_0x26b8ff=_[_0xa76a('0x3e')]({},_0x26b8ff,_0x2f2761[_0xa76a('0x45')]);return db[_0xa76a('0x2c')][_0xa76a('0x46')](_0x26b8ff)[_0xa76a('0x24')](handleEntityNotFound(_0x2ea5cd,null))[_0xa76a('0x24')](respondWithResult(_0x2ea5cd,null))[_0xa76a('0x42')](handleError(_0x2ea5cd,null));};exports[_0xa76a('0x47')]=function(_0x3a6441,_0x57e410){return db['SugarcrmField']['create'](_0x3a6441[_0xa76a('0x48')],{})[_0xa76a('0x24')](respondWithResult(_0x57e410,0xc9))[_0xa76a('0x42')](handleError(_0x57e410,null));};exports[_0xa76a('0x23')]=function(_0x3f0f5c,_0x17d3af){if(_0x3f0f5c[_0xa76a('0x48')]['id']){delete _0x3f0f5c['body']['id'];}return db[_0xa76a('0x2c')]['find']({'where':{'id':_0x3f0f5c['params']['id']}})[_0xa76a('0x24')](handleEntityNotFound(_0x17d3af,null))['then'](saveUpdates(_0x3f0f5c[_0xa76a('0x48')],null))[_0xa76a('0x24')](respondWithResult(_0x17d3af,null))[_0xa76a('0x42')](handleError(_0x17d3af,null));};exports[_0xa76a('0x25')]=function(_0x5204b2,_0x1ac412){return db['SugarcrmField'][_0xa76a('0x46')]({'where':{'id':_0x5204b2[_0xa76a('0x49')]['id']}})[_0xa76a('0x24')](handleEntityNotFound(_0x1ac412,null))['then'](removeEntity(_0x1ac412,null))['catch'](handleError(_0x1ac412,null));};