Built motion from commit (unavailable).|2.5.5
[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 _0x0e05=['show','params','includeAll','include','find','create','body','html-pdf','eml-format','zip-dir','request-promise','bluebird','util','path','sox','to-csv','ejs','crypto','jsforce','desk.js','querystring','papaparse','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','end','json','count','offset','limit','apply','reject','save','then','destroy','status','error','stack','name','send','index','SugarcrmField','rawAttributes','fieldName','key','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','sort','pick','filter','where','merge','options','findAll','rows','catch'];(function(_0x1ac595,_0x5d2081){var _0x455fff=function(_0x3043ee){while(--_0x3043ee){_0x1ac595['push'](_0x1ac595['shift']());}};_0x455fff(++_0x5d2081);}(_0x0e05,0x160));var _0x50e0=function(_0x4808f4,_0x8a03ba){_0x4808f4=_0x4808f4-0x0;var _0x12dd7f=_0x0e05[_0x4808f4];return _0x12dd7f;};'use strict';var pdf=require(_0x50e0('0x0'));var emlformat=require(_0x50e0('0x1'));var rimraf=require('rimraf');var zipdir=require(_0x50e0('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0x50e0('0x3'));var moment=require('moment');var BPromise=require(_0x50e0('0x4'));var Mustache=require('mustache');var util=require(_0x50e0('0x5'));var path=require(_0x50e0('0x6'));var sox=require(_0x50e0('0x7'));var csv=require(_0x50e0('0x8'));var ejs=require(_0x50e0('0x9'));var fs=require('fs');var _=require('lodash');var squel=require('squel');var crypto=require(_0x50e0('0xa'));var jsforce=require(_0x50e0('0xb'));var deskjs=require(_0x50e0('0xc'));var toCsv=require('to-csv');var querystring=require(_0x50e0('0xd'));var Papa=require(_0x50e0('0xe'));var Redis=require('ioredis');var authService=require('../../components/auth/service');var qs=require('../../components/parsers/qs');var as=require(_0x50e0('0xf'));var hardwareService=require(_0x50e0('0x10'));var logger=require(_0x50e0('0x11'))(_0x50e0('0x12'));var utils=require(_0x50e0('0x13'));var config=require(_0x50e0('0x14'));var licenseUtil=require('../../config/license/util');var db=require(_0x50e0('0x15'))['db'];function respondWithStatusCode(_0x25cab3,_0xd20d6b){_0xd20d6b=_0xd20d6b||0xcc;return function(_0x527b37){if(_0x527b37){return _0x25cab3[_0x50e0('0x16')](_0xd20d6b);}return _0x25cab3['status'](_0xd20d6b)[_0x50e0('0x17')]();};}function respondWithResult(_0x431b34,_0x2b7d40){_0x2b7d40=_0x2b7d40||0xc8;return function(_0x42c3c3){if(_0x42c3c3){return _0x431b34['status'](_0x2b7d40)[_0x50e0('0x18')](_0x42c3c3);}};}function respondWithFilteredResult(_0x339d6b,_0x575a46){return function(_0x2151a0){if(_0x2151a0){var _0xb823f9=_0x2151a0[_0x50e0('0x19')],_0x64eaa1=_0x575a46[_0x50e0('0x1a')],_0x2a0859=_0x575a46[_0x50e0('0x1a')]+_0x575a46[_0x50e0('0x1b')],_0x55f996;if(_0x2a0859>=_0xb823f9){_0x2a0859=_0xb823f9;_0x55f996=0xc8;}else{_0x55f996=0xce;}_0x339d6b['status'](_0x55f996);return _0x339d6b['set']('Content-Range',_0x64eaa1+'-'+_0x2a0859+'/'+_0xb823f9)['json'](_0x2151a0);}return null;};}function patchUpdates(_0x1f74c0){return function(_0x3fd6d9){try{jsonpatch[_0x50e0('0x1c')](_0x3fd6d9,_0x1f74c0,!![]);}catch(_0x380f80){return BPromise[_0x50e0('0x1d')](_0x380f80);}return _0x3fd6d9[_0x50e0('0x1e')]();};}function saveUpdates(_0x30ed11,_0x433e0f){return function(_0x1b4227){if(_0x1b4227){return _0x1b4227['update'](_0x30ed11)[_0x50e0('0x1f')](function(_0x398405){return _0x398405;});}return null;};}function removeEntity(_0x5ac012,_0x58b082){return function(_0x3f6985){if(_0x3f6985){return _0x3f6985[_0x50e0('0x20')]()['then'](function(){_0x5ac012[_0x50e0('0x21')](0xcc)['end']();});}};}function handleEntityNotFound(_0x411671,_0x829b6c){return function(_0xd67f9e){if(!_0xd67f9e){_0x411671[_0x50e0('0x16')](0x194);}return _0xd67f9e;};}function handleError(_0x53b0cd,_0x9ee215){_0x9ee215=_0x9ee215||0x1f4;return function(_0x40f48c){logger[_0x50e0('0x22')](_0x40f48c[_0x50e0('0x23')]);if(_0x40f48c['name']){delete _0x40f48c[_0x50e0('0x24')];}_0x53b0cd[_0x50e0('0x21')](_0x9ee215)[_0x50e0('0x25')](_0x40f48c);};}exports[_0x50e0('0x26')]=function(_0x3fa5df,_0xd9a3a2){var _0x25e23e={},_0xf9b6f6={},_0x15c723={'count':0x0,'rows':[]};var _0x65c8bd=_['map'](db[_0x50e0('0x27')][_0x50e0('0x28')],function(_0x16c39b){return{'name':_0x16c39b[_0x50e0('0x29')],'type':_0x16c39b['type'][_0x50e0('0x2a')]};});_0xf9b6f6[_0x50e0('0x2b')]=_['map'](_0x65c8bd,'name');_0xf9b6f6[_0x50e0('0x2c')]=_[_0x50e0('0x2d')](_0x3fa5df[_0x50e0('0x2c')]);_0xf9b6f6[_0x50e0('0x2e')]=_[_0x50e0('0x2f')](_0xf9b6f6[_0x50e0('0x2b')],_0xf9b6f6[_0x50e0('0x2c')]);_0x25e23e[_0x50e0('0x30')]=_[_0x50e0('0x2f')](_0xf9b6f6[_0x50e0('0x2b')],qs['fields'](_0x3fa5df[_0x50e0('0x2c')][_0x50e0('0x31')]));_0x25e23e['attributes']=_0x25e23e[_0x50e0('0x30')][_0x50e0('0x32')]?_0x25e23e[_0x50e0('0x30')]:_0xf9b6f6[_0x50e0('0x2b')];if(!_0x3fa5df[_0x50e0('0x2c')][_0x50e0('0x33')](_0x50e0('0x34'))){_0x25e23e[_0x50e0('0x1b')]=qs['limit'](_0x3fa5df[_0x50e0('0x2c')][_0x50e0('0x1b')]);_0x25e23e[_0x50e0('0x1a')]=qs[_0x50e0('0x1a')](_0x3fa5df[_0x50e0('0x2c')]['offset']);}_0x25e23e['order']=qs[_0x50e0('0x35')](_0x3fa5df[_0x50e0('0x2c')][_0x50e0('0x35')]);_0x25e23e['where']=qs[_0x50e0('0x2e')](_[_0x50e0('0x36')](_0x3fa5df['query'],_0xf9b6f6[_0x50e0('0x2e')]),_0x65c8bd);if(_0x3fa5df[_0x50e0('0x2c')][_0x50e0('0x37')]){_0x25e23e[_0x50e0('0x38')]=_[_0x50e0('0x39')](_0x25e23e[_0x50e0('0x38')],{'$or':_['map'](_0x65c8bd,function(_0xd07913){if(_0xd07913['type']!=='VIRTUAL'){var _0x4a07d5={};_0x4a07d5[_0xd07913[_0x50e0('0x24')]]={'$like':'%'+_0x3fa5df[_0x50e0('0x2c')][_0x50e0('0x37')]+'%'};return _0x4a07d5;}})});}_0x25e23e=_[_0x50e0('0x39')]({},_0x25e23e,_0x3fa5df[_0x50e0('0x3a')]);var _0x34a6a2={'where':_0x25e23e[_0x50e0('0x38')]};return db[_0x50e0('0x27')][_0x50e0('0x19')](_0x34a6a2)[_0x50e0('0x1f')](function(_0x333dda){_0x15c723['count']=_0x333dda;if(_0x3fa5df[_0x50e0('0x2c')]['includeAll']){_0x25e23e['include']=[{'all':!![]}];}return db['SugarcrmField'][_0x50e0('0x3b')](_0x25e23e);})['then'](function(_0x91a73f){_0x15c723[_0x50e0('0x3c')]=_0x91a73f;return _0x15c723;})['then'](respondWithFilteredResult(_0xd9a3a2,_0x25e23e))[_0x50e0('0x3d')](handleError(_0xd9a3a2,null));};exports[_0x50e0('0x3e')]=function(_0x19cdf5,_0x1aca42){var _0x3ae47f={'raw':!![],'where':{'id':_0x19cdf5[_0x50e0('0x3f')]['id']}},_0x4246ca={};_0x4246ca[_0x50e0('0x2b')]=_[_0x50e0('0x2d')](db['SugarcrmField']['rawAttributes']);_0x4246ca[_0x50e0('0x2c')]=_[_0x50e0('0x2d')](_0x19cdf5[_0x50e0('0x2c')]);_0x4246ca[_0x50e0('0x2e')]=_['intersection'](_0x4246ca[_0x50e0('0x2b')],_0x4246ca['query']);_0x3ae47f[_0x50e0('0x30')]=_[_0x50e0('0x2f')](_0x4246ca[_0x50e0('0x2b')],qs[_0x50e0('0x31')](_0x19cdf5[_0x50e0('0x2c')]['fields']));_0x3ae47f['attributes']=_0x3ae47f[_0x50e0('0x30')][_0x50e0('0x32')]?_0x3ae47f['attributes']:_0x4246ca[_0x50e0('0x2b')];if(_0x19cdf5[_0x50e0('0x2c')][_0x50e0('0x40')]){_0x3ae47f[_0x50e0('0x41')]=[{'all':!![]}];}_0x3ae47f=_[_0x50e0('0x39')]({},_0x3ae47f,_0x19cdf5[_0x50e0('0x3a')]);return db[_0x50e0('0x27')][_0x50e0('0x42')](_0x3ae47f)[_0x50e0('0x1f')](handleEntityNotFound(_0x1aca42,null))[_0x50e0('0x1f')](respondWithResult(_0x1aca42,null))[_0x50e0('0x3d')](handleError(_0x1aca42,null));};exports['create']=function(_0x261350,_0x100fbf){return db['SugarcrmField'][_0x50e0('0x43')](_0x261350['body'],{})[_0x50e0('0x1f')](respondWithResult(_0x100fbf,0xc9))[_0x50e0('0x3d')](handleError(_0x100fbf,null));};exports['update']=function(_0x2b9038,_0x66af5c){if(_0x2b9038['body']['id']){delete _0x2b9038[_0x50e0('0x44')]['id'];}return db['SugarcrmField'][_0x50e0('0x42')]({'where':{'id':_0x2b9038[_0x50e0('0x3f')]['id']}})[_0x50e0('0x1f')](handleEntityNotFound(_0x66af5c,null))[_0x50e0('0x1f')](saveUpdates(_0x2b9038['body'],null))[_0x50e0('0x1f')](respondWithResult(_0x66af5c,null))['catch'](handleError(_0x66af5c,null));};exports[_0x50e0('0x20')]=function(_0x5b4ee8,_0x59322c){return db[_0x50e0('0x27')][_0x50e0('0x42')]({'where':{'id':_0x5b4ee8['params']['id']}})[_0x50e0('0x1f')](handleEntityNotFound(_0x59322c,null))[_0x50e0('0x1f')](removeEntity(_0x59322c,null))['catch'](handleError(_0x59322c,null));};