Built motion from commit (unavailable).|2.5.31
[motion2.git] / server / api / intVtigerField / intVtigerField.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 _0xd911=['json','offset','undefined','limit','count','Content-Range','apply','reject','then','destroy','status','error','name','send','index','rawAttributes','fieldName','type','model','map','query','keys','filters','intersection','attributes','fields','length','nolimit','order','sort','where','pick','filter','merge','options','VtigerField','includeAll','include','findAll','rows','catch','show','params','find','create','body','eml-format','rimraf','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','ejs','lodash','crypto','jsforce','desk.js','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','api','../../config/environment','../../config/license/util','../../mysqldb','sendStatus','end'];(function(_0x48c2ae,_0x4cea90){var _0x8f7531=function(_0x126458){while(--_0x126458){_0x48c2ae['push'](_0x48c2ae['shift']());}};_0x8f7531(++_0x4cea90);}(_0xd911,0x14e));var _0x1d91=function(_0x5b78e8,_0x55096b){_0x5b78e8=_0x5b78e8-0x0;var _0xf2c321=_0xd911[_0x5b78e8];return _0xf2c321;};'use strict';var emlformat=require(_0x1d91('0x0'));var rimraf=require(_0x1d91('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0x1d91('0x2'));var rp=require(_0x1d91('0x3'));var moment=require(_0x1d91('0x4'));var BPromise=require(_0x1d91('0x5'));var Mustache=require(_0x1d91('0x6'));var util=require(_0x1d91('0x7'));var path=require(_0x1d91('0x8'));var sox=require(_0x1d91('0x9'));var csv=require('to-csv');var ejs=require(_0x1d91('0xa'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x1d91('0xb'));var squel=require('squel');var crypto=require(_0x1d91('0xc'));var jsforce=require(_0x1d91('0xd'));var deskjs=require(_0x1d91('0xe'));var toCsv=require('to-csv');var querystring=require(_0x1d91('0xf'));var Papa=require('papaparse');var Redis=require(_0x1d91('0x10'));var authService=require(_0x1d91('0x11'));var qs=require(_0x1d91('0x12'));var as=require(_0x1d91('0x13'));var hardwareService=require('../../config/license/hardware');var logger=require('../../config/logger')(_0x1d91('0x14'));var utils=require('../../config/utils');var config=require(_0x1d91('0x15'));var licenseUtil=require(_0x1d91('0x16'));var db=require(_0x1d91('0x17'))['db'];function respondWithStatusCode(_0x2f65ac,_0x584086){_0x584086=_0x584086||0xcc;return function(_0x4ed644){if(_0x4ed644){return _0x2f65ac[_0x1d91('0x18')](_0x584086);}return _0x2f65ac['status'](_0x584086)[_0x1d91('0x19')]();};}function respondWithResult(_0x313db8,_0x3cd049){_0x3cd049=_0x3cd049||0xc8;return function(_0x4eb7ef){if(_0x4eb7ef){return _0x313db8['status'](_0x3cd049)[_0x1d91('0x1a')](_0x4eb7ef);}};}function respondWithFilteredResult(_0x51a5fa,_0x43fe31){return function(_0x807103){if(_0x807103){var _0x30dbf3=typeof _0x43fe31[_0x1d91('0x1b')]===_0x1d91('0x1c')&&typeof _0x43fe31[_0x1d91('0x1d')]===_0x1d91('0x1c');var _0x90bbd4=_0x807103[_0x1d91('0x1e')];var _0x3eff17=_0x30dbf3?0x0:_0x43fe31[_0x1d91('0x1b')];var _0x53790c=_0x30dbf3?_0x807103['count']:_0x43fe31[_0x1d91('0x1b')]+_0x43fe31[_0x1d91('0x1d')];var _0x45ac08;if(_0x53790c>=_0x90bbd4){_0x53790c=_0x90bbd4;_0x45ac08=0xc8;}else{_0x45ac08=0xce;}_0x51a5fa['status'](_0x45ac08);return _0x51a5fa['set'](_0x1d91('0x1f'),_0x3eff17+'-'+_0x53790c+'/'+_0x90bbd4)['json'](_0x807103);}return null;};}function patchUpdates(_0x5b35b1){return function(_0x12e8de){try{jsonpatch[_0x1d91('0x20')](_0x12e8de,_0x5b35b1,!![]);}catch(_0x4c4ae9){return BPromise[_0x1d91('0x21')](_0x4c4ae9);}return _0x12e8de['save']();};}function saveUpdates(_0x29026f,_0x2a6732){return function(_0x16062c){if(_0x16062c){return _0x16062c['update'](_0x29026f)[_0x1d91('0x22')](function(_0x2a7d6f){return _0x2a7d6f;});}return null;};}function removeEntity(_0x5dde49,_0x1280fd){return function(_0x157476){if(_0x157476){return _0x157476[_0x1d91('0x23')]()['then'](function(){_0x5dde49[_0x1d91('0x24')](0xcc)[_0x1d91('0x19')]();});}};}function handleEntityNotFound(_0x5a2648,_0x55c4eb){return function(_0x32017d){if(!_0x32017d){_0x5a2648[_0x1d91('0x18')](0x194);}return _0x32017d;};}function handleError(_0x588189,_0x52cbee){_0x52cbee=_0x52cbee||0x1f4;return function(_0x5805c5){logger[_0x1d91('0x25')](_0x5805c5['stack']);if(_0x5805c5['name']){delete _0x5805c5[_0x1d91('0x26')];}_0x588189[_0x1d91('0x24')](_0x52cbee)[_0x1d91('0x27')](_0x5805c5);};}exports[_0x1d91('0x28')]=function(_0x501790,_0xc140a1){var _0x5be6cb={},_0x122b76={},_0x4d74ef={'count':0x0,'rows':[]};var _0x76715b=_['map'](db['VtigerField'][_0x1d91('0x29')],function(_0x111719){return{'name':_0x111719[_0x1d91('0x2a')],'type':_0x111719[_0x1d91('0x2b')]['key']};});_0x122b76[_0x1d91('0x2c')]=_[_0x1d91('0x2d')](_0x76715b,'name');_0x122b76[_0x1d91('0x2e')]=_[_0x1d91('0x2f')](_0x501790['query']);_0x122b76[_0x1d91('0x30')]=_[_0x1d91('0x31')](_0x122b76['model'],_0x122b76[_0x1d91('0x2e')]);_0x5be6cb[_0x1d91('0x32')]=_[_0x1d91('0x31')](_0x122b76[_0x1d91('0x2c')],qs[_0x1d91('0x33')](_0x501790['query'][_0x1d91('0x33')]));_0x5be6cb['attributes']=_0x5be6cb[_0x1d91('0x32')][_0x1d91('0x34')]?_0x5be6cb[_0x1d91('0x32')]:_0x122b76[_0x1d91('0x2c')];if(!_0x501790['query']['hasOwnProperty'](_0x1d91('0x35'))){_0x5be6cb[_0x1d91('0x1d')]=qs[_0x1d91('0x1d')](_0x501790[_0x1d91('0x2e')][_0x1d91('0x1d')]);_0x5be6cb[_0x1d91('0x1b')]=qs[_0x1d91('0x1b')](_0x501790[_0x1d91('0x2e')][_0x1d91('0x1b')]);}_0x5be6cb[_0x1d91('0x36')]=qs['sort'](_0x501790[_0x1d91('0x2e')][_0x1d91('0x37')]);_0x5be6cb[_0x1d91('0x38')]=qs[_0x1d91('0x30')](_[_0x1d91('0x39')](_0x501790[_0x1d91('0x2e')],_0x122b76[_0x1d91('0x30')]),_0x76715b);if(_0x501790['query'][_0x1d91('0x3a')]){_0x5be6cb[_0x1d91('0x38')]=_[_0x1d91('0x3b')](_0x5be6cb[_0x1d91('0x38')],{'$or':_[_0x1d91('0x2d')](_0x76715b,function(_0x3a64b7){if(_0x3a64b7['type']!=='VIRTUAL'){var _0x95c3b={};_0x95c3b[_0x3a64b7[_0x1d91('0x26')]]={'$like':'%'+_0x501790[_0x1d91('0x2e')]['filter']+'%'};return _0x95c3b;}})});}_0x5be6cb=_[_0x1d91('0x3b')]({},_0x5be6cb,_0x501790[_0x1d91('0x3c')]);var _0x2cd921={'where':_0x5be6cb[_0x1d91('0x38')]};return db[_0x1d91('0x3d')][_0x1d91('0x1e')](_0x2cd921)[_0x1d91('0x22')](function(_0x399508){_0x4d74ef[_0x1d91('0x1e')]=_0x399508;if(_0x501790['query'][_0x1d91('0x3e')]){_0x5be6cb[_0x1d91('0x3f')]=[{'all':!![]}];}return db['VtigerField'][_0x1d91('0x40')](_0x5be6cb);})['then'](function(_0x1bb7b4){_0x4d74ef[_0x1d91('0x41')]=_0x1bb7b4;return _0x4d74ef;})['then'](respondWithFilteredResult(_0xc140a1,_0x5be6cb))[_0x1d91('0x42')](handleError(_0xc140a1,null));};exports[_0x1d91('0x43')]=function(_0x967ed,_0x2830f7){var _0x15d45f={'raw':!![],'where':{'id':_0x967ed[_0x1d91('0x44')]['id']}},_0x75da36={};_0x75da36[_0x1d91('0x2c')]=_[_0x1d91('0x2f')](db['VtigerField'][_0x1d91('0x29')]);_0x75da36[_0x1d91('0x2e')]=_[_0x1d91('0x2f')](_0x967ed[_0x1d91('0x2e')]);_0x75da36[_0x1d91('0x30')]=_[_0x1d91('0x31')](_0x75da36[_0x1d91('0x2c')],_0x75da36[_0x1d91('0x2e')]);_0x15d45f['attributes']=_[_0x1d91('0x31')](_0x75da36['model'],qs[_0x1d91('0x33')](_0x967ed['query'][_0x1d91('0x33')]));_0x15d45f[_0x1d91('0x32')]=_0x15d45f[_0x1d91('0x32')][_0x1d91('0x34')]?_0x15d45f[_0x1d91('0x32')]:_0x75da36[_0x1d91('0x2c')];if(_0x967ed['query']['includeAll']){_0x15d45f[_0x1d91('0x3f')]=[{'all':!![]}];}_0x15d45f=_[_0x1d91('0x3b')]({},_0x15d45f,_0x967ed[_0x1d91('0x3c')]);return db[_0x1d91('0x3d')][_0x1d91('0x45')](_0x15d45f)['then'](handleEntityNotFound(_0x2830f7,null))[_0x1d91('0x22')](respondWithResult(_0x2830f7,null))[_0x1d91('0x42')](handleError(_0x2830f7,null));};exports[_0x1d91('0x46')]=function(_0xa36e99,_0x27027a){return db['VtigerField'][_0x1d91('0x46')](_0xa36e99[_0x1d91('0x47')],{})[_0x1d91('0x22')](respondWithResult(_0x27027a,0xc9))[_0x1d91('0x42')](handleError(_0x27027a,null));};exports['update']=function(_0x5947f7,_0x82217b){if(_0x5947f7['body']['id']){delete _0x5947f7[_0x1d91('0x47')]['id'];}return db[_0x1d91('0x3d')][_0x1d91('0x45')]({'where':{'id':_0x5947f7[_0x1d91('0x44')]['id']}})['then'](handleEntityNotFound(_0x82217b,null))['then'](saveUpdates(_0x5947f7[_0x1d91('0x47')],null))[_0x1d91('0x22')](respondWithResult(_0x82217b,null))['catch'](handleError(_0x82217b,null));};exports[_0x1d91('0x23')]=function(_0x360a53,_0x268179){return db[_0x1d91('0x3d')][_0x1d91('0x45')]({'where':{'id':_0x360a53[_0x1d91('0x44')]['id']}})[_0x1d91('0x22')](handleEntityNotFound(_0x268179,null))[_0x1d91('0x22')](removeEntity(_0x268179,null))[_0x1d91('0x42')](handleError(_0x268179,null));};