6572f221ea33fc2c208de5efd13376aeeb818bb3
[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 _0x1db9=['nolimit','order','sort','where','pick','VIRTUAL','filter','merge','options','include','findAll','catch','show','rawAttributes','includeAll','find','create','body','params','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','bluebird','mustache','sox','lodash','squel','crypto','jsforce','desk.js','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/environment','../../config/license/util','sendStatus','status','end','json','count','offset','limit','set','Content-Range','apply','reject','save','update','then','destroy','error','name','send','map','SugarcrmField','fieldName','type','key','model','query','keys','filters','intersection','fields','attributes','length'];(function(_0x277a8a,_0x16cf01){var _0x531463=function(_0xa1bfac){while(--_0xa1bfac){_0x277a8a['push'](_0x277a8a['shift']());}};_0x531463(++_0x16cf01);}(_0x1db9,0x176));var _0x91db=function(_0x4f394a,_0x2688d9){_0x4f394a=_0x4f394a-0x0;var _0x4cf18e=_0x1db9[_0x4f394a];return _0x4cf18e;};'use strict';var pdf=require(_0x91db('0x0'));var emlformat=require(_0x91db('0x1'));var rimraf=require(_0x91db('0x2'));var zipdir=require(_0x91db('0x3'));var jsonpatch=require(_0x91db('0x4'));var rp=require(_0x91db('0x5'));var moment=require('moment');var BPromise=require(_0x91db('0x6'));var Mustache=require(_0x91db('0x7'));var util=require('util');var path=require('path');var sox=require(_0x91db('0x8'));var csv=require('to-csv');var ejs=require('ejs');var fs=require('fs');var _=require(_0x91db('0x9'));var squel=require(_0x91db('0xa'));var crypto=require(_0x91db('0xb'));var jsforce=require(_0x91db('0xc'));var deskjs=require(_0x91db('0xd'));var toCsv=require('to-csv');var querystring=require(_0x91db('0xe'));var Papa=require('papaparse');var Redis=require(_0x91db('0xf'));var authService=require(_0x91db('0x10'));var qs=require(_0x91db('0x11'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x91db('0x12'));var logger=require('../../config/logger')('api');var utils=require('../../config/utils');var config=require(_0x91db('0x13'));var licenseUtil=require(_0x91db('0x14'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x540c48,_0x2b9b98){_0x2b9b98=_0x2b9b98||0xcc;return function(_0x329277){if(_0x329277){return _0x540c48[_0x91db('0x15')](_0x2b9b98);}return _0x540c48[_0x91db('0x16')](_0x2b9b98)[_0x91db('0x17')]();};}function respondWithResult(_0x4c3124,_0x371158){_0x371158=_0x371158||0xc8;return function(_0x285052){if(_0x285052){return _0x4c3124[_0x91db('0x16')](_0x371158)[_0x91db('0x18')](_0x285052);}};}function respondWithFilteredResult(_0x2df307,_0x33b39d){return function(_0x260b56){if(_0x260b56){var _0x143bc4=_0x260b56[_0x91db('0x19')],_0x675bd=_0x33b39d['offset'],_0x26d10c=_0x33b39d[_0x91db('0x1a')]+_0x33b39d[_0x91db('0x1b')],_0x1e9679;if(_0x26d10c>=_0x143bc4){_0x26d10c=_0x143bc4;_0x1e9679=0xc8;}else{_0x1e9679=0xce;}_0x2df307[_0x91db('0x16')](_0x1e9679);return _0x2df307[_0x91db('0x1c')](_0x91db('0x1d'),_0x675bd+'-'+_0x26d10c+'/'+_0x143bc4)[_0x91db('0x18')](_0x260b56);}return null;};}function patchUpdates(_0x5c15ef){return function(_0x4ae820){try{jsonpatch[_0x91db('0x1e')](_0x4ae820,_0x5c15ef,!![]);}catch(_0x137edf){return BPromise[_0x91db('0x1f')](_0x137edf);}return _0x4ae820[_0x91db('0x20')]();};}function saveUpdates(_0x50cf9c,_0x168dea){return function(_0x324de7){if(_0x324de7){return _0x324de7[_0x91db('0x21')](_0x50cf9c)[_0x91db('0x22')](function(_0x25593c){return _0x25593c;});}return null;};}function removeEntity(_0x31b96c,_0xaad1f6){return function(_0x8e323f){if(_0x8e323f){return _0x8e323f[_0x91db('0x23')]()[_0x91db('0x22')](function(){_0x31b96c['status'](0xcc)['end']();});}};}function handleEntityNotFound(_0x134caa,_0x2ac8d5){return function(_0x50687e){if(!_0x50687e){_0x134caa[_0x91db('0x15')](0x194);}return _0x50687e;};}function handleError(_0x16efa4,_0x39ae31){_0x39ae31=_0x39ae31||0x1f4;return function(_0x6e3a9c){logger[_0x91db('0x24')](_0x6e3a9c['stack']);if(_0x6e3a9c['name']){delete _0x6e3a9c[_0x91db('0x25')];}_0x16efa4[_0x91db('0x16')](_0x39ae31)[_0x91db('0x26')](_0x6e3a9c);};}exports['index']=function(_0x3b38f2,_0x3c31ea){var _0x46c0e8={},_0x1bb4f8={},_0x512c79={'count':0x0,'rows':[]};var _0x1a64f0=_[_0x91db('0x27')](db[_0x91db('0x28')]['rawAttributes'],function(_0x2ff6c8){return{'name':_0x2ff6c8[_0x91db('0x29')],'type':_0x2ff6c8[_0x91db('0x2a')][_0x91db('0x2b')]};});_0x1bb4f8[_0x91db('0x2c')]=_[_0x91db('0x27')](_0x1a64f0,_0x91db('0x25'));_0x1bb4f8[_0x91db('0x2d')]=_[_0x91db('0x2e')](_0x3b38f2[_0x91db('0x2d')]);_0x1bb4f8[_0x91db('0x2f')]=_[_0x91db('0x30')](_0x1bb4f8[_0x91db('0x2c')],_0x1bb4f8[_0x91db('0x2d')]);_0x46c0e8['attributes']=_[_0x91db('0x30')](_0x1bb4f8[_0x91db('0x2c')],qs[_0x91db('0x31')](_0x3b38f2[_0x91db('0x2d')][_0x91db('0x31')]));_0x46c0e8['attributes']=_0x46c0e8[_0x91db('0x32')][_0x91db('0x33')]?_0x46c0e8[_0x91db('0x32')]:_0x1bb4f8['model'];if(!_0x3b38f2[_0x91db('0x2d')]['hasOwnProperty'](_0x91db('0x34'))){_0x46c0e8[_0x91db('0x1b')]=qs[_0x91db('0x1b')](_0x3b38f2[_0x91db('0x2d')]['limit']);_0x46c0e8[_0x91db('0x1a')]=qs[_0x91db('0x1a')](_0x3b38f2[_0x91db('0x2d')]['offset']);}_0x46c0e8[_0x91db('0x35')]=qs[_0x91db('0x36')](_0x3b38f2['query'][_0x91db('0x36')]);_0x46c0e8[_0x91db('0x37')]=qs['filters'](_[_0x91db('0x38')](_0x3b38f2['query'],_0x1bb4f8[_0x91db('0x2f')]),_0x1a64f0);if(_0x3b38f2[_0x91db('0x2d')]['filter']){_0x46c0e8['where']=_['merge'](_0x46c0e8[_0x91db('0x37')],{'$or':_[_0x91db('0x27')](_0x1a64f0,function(_0x5ce345){if(_0x5ce345[_0x91db('0x2a')]!==_0x91db('0x39')){var _0x1a0703={};_0x1a0703[_0x5ce345[_0x91db('0x25')]]={'$like':'%'+_0x3b38f2[_0x91db('0x2d')][_0x91db('0x3a')]+'%'};return _0x1a0703;}})});}_0x46c0e8=_[_0x91db('0x3b')]({},_0x46c0e8,_0x3b38f2[_0x91db('0x3c')]);var _0xcdc472={'where':_0x46c0e8[_0x91db('0x37')]};return db[_0x91db('0x28')]['count'](_0xcdc472)[_0x91db('0x22')](function(_0x50c414){_0x512c79[_0x91db('0x19')]=_0x50c414;if(_0x3b38f2[_0x91db('0x2d')]['includeAll']){_0x46c0e8[_0x91db('0x3d')]=[{'all':!![]}];}return db[_0x91db('0x28')][_0x91db('0x3e')](_0x46c0e8);})[_0x91db('0x22')](function(_0x18cab8){_0x512c79['rows']=_0x18cab8;return _0x512c79;})[_0x91db('0x22')](respondWithFilteredResult(_0x3c31ea,_0x46c0e8))[_0x91db('0x3f')](handleError(_0x3c31ea,null));};exports[_0x91db('0x40')]=function(_0x55188b,_0x4733a4){var _0xed543c={'raw':!![],'where':{'id':_0x55188b['params']['id']}},_0x3aaf2e={};_0x3aaf2e[_0x91db('0x2c')]=_[_0x91db('0x2e')](db[_0x91db('0x28')][_0x91db('0x41')]);_0x3aaf2e[_0x91db('0x2d')]=_['keys'](_0x55188b[_0x91db('0x2d')]);_0x3aaf2e['filters']=_[_0x91db('0x30')](_0x3aaf2e[_0x91db('0x2c')],_0x3aaf2e[_0x91db('0x2d')]);_0xed543c[_0x91db('0x32')]=_[_0x91db('0x30')](_0x3aaf2e[_0x91db('0x2c')],qs[_0x91db('0x31')](_0x55188b[_0x91db('0x2d')][_0x91db('0x31')]));_0xed543c[_0x91db('0x32')]=_0xed543c[_0x91db('0x32')]['length']?_0xed543c['attributes']:_0x3aaf2e[_0x91db('0x2c')];if(_0x55188b[_0x91db('0x2d')][_0x91db('0x42')]){_0xed543c['include']=[{'all':!![]}];}_0xed543c=_[_0x91db('0x3b')]({},_0xed543c,_0x55188b[_0x91db('0x3c')]);return db[_0x91db('0x28')][_0x91db('0x43')](_0xed543c)[_0x91db('0x22')](handleEntityNotFound(_0x4733a4,null))['then'](respondWithResult(_0x4733a4,null))[_0x91db('0x3f')](handleError(_0x4733a4,null));};exports['create']=function(_0x7c4981,_0x28211b){return db[_0x91db('0x28')][_0x91db('0x44')](_0x7c4981[_0x91db('0x45')],{})[_0x91db('0x22')](respondWithResult(_0x28211b,0xc9))[_0x91db('0x3f')](handleError(_0x28211b,null));};exports[_0x91db('0x21')]=function(_0x1a0009,_0x4fb60e){if(_0x1a0009['body']['id']){delete _0x1a0009[_0x91db('0x45')]['id'];}return db[_0x91db('0x28')][_0x91db('0x43')]({'where':{'id':_0x1a0009[_0x91db('0x46')]['id']}})[_0x91db('0x22')](handleEntityNotFound(_0x4fb60e,null))['then'](saveUpdates(_0x1a0009[_0x91db('0x45')],null))[_0x91db('0x22')](respondWithResult(_0x4fb60e,null))[_0x91db('0x3f')](handleError(_0x4fb60e,null));};exports[_0x91db('0x23')]=function(_0x404900,_0x51a75b){return db[_0x91db('0x28')][_0x91db('0x43')]({'where':{'id':_0x404900[_0x91db('0x46')]['id']}})[_0x91db('0x22')](handleEntityNotFound(_0x51a75b,null))[_0x91db('0x22')](removeEntity(_0x51a75b,null))[_0x91db('0x3f')](handleError(_0x51a75b,null));};