Built motion from commit 932cf0d0.|2.5.42
[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 _0x4754=['fields','attributes','length','hasOwnProperty','nolimit','where','filters','filter','merge','options','include','findAll','rows','catch','show','params','includeAll','find','create','update','body','eml-format','rimraf','zip-dir','fast-json-patch','moment','bluebird','mustache','path','sox','to-csv','lodash','squel','jsforce','desk.js','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','sendStatus','status','offset','undefined','limit','count','set','Content-Range','json','reject','save','destroy','then','end','error','stack','name','send','map','VtigerField','rawAttributes','fieldName','key','model','query','keys','intersection'];(function(_0x4cda69,_0x5187b5){var _0x5060f4=function(_0x4de2be){while(--_0x4de2be){_0x4cda69['push'](_0x4cda69['shift']());}};_0x5060f4(++_0x5187b5);}(_0x4754,0x135));var _0x4475=function(_0x3dd15e,_0x1f0015){_0x3dd15e=_0x3dd15e-0x0;var _0x231fd0=_0x4754[_0x3dd15e];return _0x231fd0;};'use strict';var emlformat=require(_0x4475('0x0'));var rimraf=require(_0x4475('0x1'));var zipdir=require(_0x4475('0x2'));var jsonpatch=require(_0x4475('0x3'));var rp=require('request-promise');var moment=require(_0x4475('0x4'));var BPromise=require(_0x4475('0x5'));var Mustache=require(_0x4475('0x6'));var util=require('util');var path=require(_0x4475('0x7'));var sox=require(_0x4475('0x8'));var csv=require(_0x4475('0x9'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x4475('0xa'));var squel=require(_0x4475('0xb'));var crypto=require('crypto');var jsforce=require(_0x4475('0xc'));var deskjs=require(_0x4475('0xd'));var toCsv=require(_0x4475('0x9'));var querystring=require(_0x4475('0xe'));var Papa=require(_0x4475('0xf'));var Redis=require('ioredis');var authService=require(_0x4475('0x10'));var qs=require(_0x4475('0x11'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x4475('0x12'));var logger=require(_0x4475('0x13'))(_0x4475('0x14'));var utils=require(_0x4475('0x15'));var config=require(_0x4475('0x16'));var licenseUtil=require(_0x4475('0x17'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x2fb542,_0x593405){_0x593405=_0x593405||0xcc;return function(_0x23e92c){if(_0x23e92c){return _0x2fb542[_0x4475('0x18')](_0x593405);}return _0x2fb542['status'](_0x593405)['end']();};}function respondWithResult(_0x1588a8,_0x23690a){_0x23690a=_0x23690a||0xc8;return function(_0x596007){if(_0x596007){return _0x1588a8[_0x4475('0x19')](_0x23690a)['json'](_0x596007);}};}function respondWithFilteredResult(_0x1c65af,_0x3da95d){return function(_0x238004){if(_0x238004){var _0x1a5a6f=typeof _0x3da95d[_0x4475('0x1a')]===_0x4475('0x1b')&&typeof _0x3da95d[_0x4475('0x1c')]===_0x4475('0x1b');var _0x5cd8c4=_0x238004[_0x4475('0x1d')];var _0x4879e2=_0x1a5a6f?0x0:_0x3da95d[_0x4475('0x1a')];var _0x1ce4dd=_0x1a5a6f?_0x238004[_0x4475('0x1d')]:_0x3da95d['offset']+_0x3da95d['limit'];var _0x1ef82d;if(_0x1ce4dd>=_0x5cd8c4){_0x1ce4dd=_0x5cd8c4;_0x1ef82d=0xc8;}else{_0x1ef82d=0xce;}_0x1c65af['status'](_0x1ef82d);return _0x1c65af[_0x4475('0x1e')](_0x4475('0x1f'),_0x4879e2+'-'+_0x1ce4dd+'/'+_0x5cd8c4)[_0x4475('0x20')](_0x238004);}return null;};}function patchUpdates(_0x425218){return function(_0x4282d5){try{jsonpatch['apply'](_0x4282d5,_0x425218,!![]);}catch(_0x301678){return BPromise[_0x4475('0x21')](_0x301678);}return _0x4282d5[_0x4475('0x22')]();};}function saveUpdates(_0x332b99,_0x1fa9f0){return function(_0x4b01d5){if(_0x4b01d5){return _0x4b01d5['update'](_0x332b99)['then'](function(_0x2dae9b){return _0x2dae9b;});}return null;};}function removeEntity(_0x56845b,_0x22c4a9){return function(_0x37e34b){if(_0x37e34b){return _0x37e34b[_0x4475('0x23')]()[_0x4475('0x24')](function(){_0x56845b[_0x4475('0x19')](0xcc)[_0x4475('0x25')]();});}};}function handleEntityNotFound(_0x508f26,_0x569f82){return function(_0xf73bcc){if(!_0xf73bcc){_0x508f26[_0x4475('0x18')](0x194);}return _0xf73bcc;};}function handleError(_0x4569f3,_0x149582){_0x149582=_0x149582||0x1f4;return function(_0x36ee7c){logger[_0x4475('0x26')](_0x36ee7c[_0x4475('0x27')]);if(_0x36ee7c[_0x4475('0x28')]){delete _0x36ee7c[_0x4475('0x28')];}_0x4569f3[_0x4475('0x19')](_0x149582)[_0x4475('0x29')](_0x36ee7c);};}exports['index']=function(_0x430024,_0x16fa3e){var _0xa6b4e7={},_0x726936={},_0x5be3ef={'count':0x0,'rows':[]};var _0x5d2d11=_[_0x4475('0x2a')](db[_0x4475('0x2b')][_0x4475('0x2c')],function(_0x569816){return{'name':_0x569816[_0x4475('0x2d')],'type':_0x569816['type'][_0x4475('0x2e')]};});_0x726936[_0x4475('0x2f')]=_[_0x4475('0x2a')](_0x5d2d11,_0x4475('0x28'));_0x726936[_0x4475('0x30')]=_[_0x4475('0x31')](_0x430024[_0x4475('0x30')]);_0x726936['filters']=_[_0x4475('0x32')](_0x726936[_0x4475('0x2f')],_0x726936['query']);_0xa6b4e7['attributes']=_[_0x4475('0x32')](_0x726936[_0x4475('0x2f')],qs[_0x4475('0x33')](_0x430024[_0x4475('0x30')][_0x4475('0x33')]));_0xa6b4e7['attributes']=_0xa6b4e7[_0x4475('0x34')][_0x4475('0x35')]?_0xa6b4e7['attributes']:_0x726936['model'];if(!_0x430024['query'][_0x4475('0x36')](_0x4475('0x37'))){_0xa6b4e7[_0x4475('0x1c')]=qs['limit'](_0x430024[_0x4475('0x30')][_0x4475('0x1c')]);_0xa6b4e7[_0x4475('0x1a')]=qs[_0x4475('0x1a')](_0x430024['query']['offset']);}_0xa6b4e7['order']=qs['sort'](_0x430024[_0x4475('0x30')]['sort']);_0xa6b4e7[_0x4475('0x38')]=qs[_0x4475('0x39')](_['pick'](_0x430024[_0x4475('0x30')],_0x726936['filters']),_0x5d2d11);if(_0x430024['query'][_0x4475('0x3a')]){_0xa6b4e7[_0x4475('0x38')]=_[_0x4475('0x3b')](_0xa6b4e7[_0x4475('0x38')],{'$or':_['map'](_0x5d2d11,function(_0x598c60){if(_0x598c60['type']!=='VIRTUAL'){var _0x546780={};_0x546780[_0x598c60[_0x4475('0x28')]]={'$like':'%'+_0x430024[_0x4475('0x30')][_0x4475('0x3a')]+'%'};return _0x546780;}})});}_0xa6b4e7=_[_0x4475('0x3b')]({},_0xa6b4e7,_0x430024[_0x4475('0x3c')]);var _0x19e6b7={'where':_0xa6b4e7[_0x4475('0x38')]};return db[_0x4475('0x2b')][_0x4475('0x1d')](_0x19e6b7)[_0x4475('0x24')](function(_0x38cf42){_0x5be3ef[_0x4475('0x1d')]=_0x38cf42;if(_0x430024[_0x4475('0x30')]['includeAll']){_0xa6b4e7[_0x4475('0x3d')]=[{'all':!![]}];}return db[_0x4475('0x2b')][_0x4475('0x3e')](_0xa6b4e7);})[_0x4475('0x24')](function(_0xb323d8){_0x5be3ef[_0x4475('0x3f')]=_0xb323d8;return _0x5be3ef;})[_0x4475('0x24')](respondWithFilteredResult(_0x16fa3e,_0xa6b4e7))[_0x4475('0x40')](handleError(_0x16fa3e,null));};exports[_0x4475('0x41')]=function(_0x23ad83,_0x2dc0f){var _0x4e2c10={'raw':!![],'where':{'id':_0x23ad83[_0x4475('0x42')]['id']}},_0x405285={};_0x405285[_0x4475('0x2f')]=_[_0x4475('0x31')](db['VtigerField'][_0x4475('0x2c')]);_0x405285[_0x4475('0x30')]=_[_0x4475('0x31')](_0x23ad83['query']);_0x405285['filters']=_['intersection'](_0x405285[_0x4475('0x2f')],_0x405285[_0x4475('0x30')]);_0x4e2c10[_0x4475('0x34')]=_['intersection'](_0x405285[_0x4475('0x2f')],qs[_0x4475('0x33')](_0x23ad83['query'][_0x4475('0x33')]));_0x4e2c10[_0x4475('0x34')]=_0x4e2c10['attributes'][_0x4475('0x35')]?_0x4e2c10[_0x4475('0x34')]:_0x405285[_0x4475('0x2f')];if(_0x23ad83['query'][_0x4475('0x43')]){_0x4e2c10[_0x4475('0x3d')]=[{'all':!![]}];}_0x4e2c10=_[_0x4475('0x3b')]({},_0x4e2c10,_0x23ad83[_0x4475('0x3c')]);return db['VtigerField'][_0x4475('0x44')](_0x4e2c10)['then'](handleEntityNotFound(_0x2dc0f,null))[_0x4475('0x24')](respondWithResult(_0x2dc0f,null))[_0x4475('0x40')](handleError(_0x2dc0f,null));};exports[_0x4475('0x45')]=function(_0x397543,_0x400f58){return db[_0x4475('0x2b')][_0x4475('0x45')](_0x397543['body'],{})[_0x4475('0x24')](respondWithResult(_0x400f58,0xc9))[_0x4475('0x40')](handleError(_0x400f58,null));};exports[_0x4475('0x46')]=function(_0x1730c5,_0x3f9749){if(_0x1730c5['body']['id']){delete _0x1730c5[_0x4475('0x47')]['id'];}return db[_0x4475('0x2b')][_0x4475('0x44')]({'where':{'id':_0x1730c5[_0x4475('0x42')]['id']}})[_0x4475('0x24')](handleEntityNotFound(_0x3f9749,null))[_0x4475('0x24')](saveUpdates(_0x1730c5[_0x4475('0x47')],null))[_0x4475('0x24')](respondWithResult(_0x3f9749,null))['catch'](handleError(_0x3f9749,null));};exports[_0x4475('0x23')]=function(_0xd4b1db,_0xb30962){return db[_0x4475('0x2b')][_0x4475('0x44')]({'where':{'id':_0xd4b1db[_0x4475('0x42')]['id']}})['then'](handleEntityNotFound(_0xb30962,null))[_0x4475('0x24')](removeEntity(_0xb30962,null))[_0x4475('0x40')](handleError(_0xb30962,null));};