Built motion from commit 87cd5f02.|2.5.48
[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 _0x157a=['type','model','query','keys','filters','intersection','fields','attributes','length','nolimit','order','sort','where','filter','merge','VIRTUAL','options','includeAll','findAll','catch','show','params','include','find','create','body','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','ejs','squel','jsforce','querystring','papaparse','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/utils','../../config/environment','../../config/license/util','sendStatus','status','end','offset','undefined','count','limit','set','Content-Range','apply','reject','update','then','destroy','stack','name','send','index','map','VtigerField','rawAttributes','fieldName'];(function(_0x2ba0ff,_0x4704ad){var _0xe20460=function(_0x2b3d00){while(--_0x2b3d00){_0x2ba0ff['push'](_0x2ba0ff['shift']());}};_0xe20460(++_0x4704ad);}(_0x157a,0x136));var _0xa157=function(_0x340fc7,_0x12a901){_0x340fc7=_0x340fc7-0x0;var _0x586c93=_0x157a[_0x340fc7];return _0x586c93;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0xa157('0x0'));var zipdir=require(_0xa157('0x1'));var jsonpatch=require(_0xa157('0x2'));var rp=require(_0xa157('0x3'));var moment=require(_0xa157('0x4'));var BPromise=require(_0xa157('0x5'));var Mustache=require(_0xa157('0x6'));var util=require(_0xa157('0x7'));var path=require(_0xa157('0x8'));var sox=require(_0xa157('0x9'));var csv=require(_0xa157('0xa'));var ejs=require(_0xa157('0xb'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require('lodash');var squel=require(_0xa157('0xc'));var crypto=require('crypto');var jsforce=require(_0xa157('0xd'));var deskjs=require('desk.js');var toCsv=require(_0xa157('0xa'));var querystring=require(_0xa157('0xe'));var Papa=require(_0xa157('0xf'));var Redis=require('ioredis');var authService=require(_0xa157('0x10'));var qs=require('../../components/parsers/qs');var as=require(_0xa157('0x11'));var hardwareService=require(_0xa157('0x12'));var logger=require('../../config/logger')(_0xa157('0x13'));var utils=require(_0xa157('0x14'));var config=require(_0xa157('0x15'));var licenseUtil=require(_0xa157('0x16'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x1c8204,_0x16737e){_0x16737e=_0x16737e||0xcc;return function(_0x547d08){if(_0x547d08){return _0x1c8204[_0xa157('0x17')](_0x16737e);}return _0x1c8204[_0xa157('0x18')](_0x16737e)[_0xa157('0x19')]();};}function respondWithResult(_0x481f2f,_0x12519c){_0x12519c=_0x12519c||0xc8;return function(_0x32dcc8){if(_0x32dcc8){return _0x481f2f[_0xa157('0x18')](_0x12519c)['json'](_0x32dcc8);}};}function respondWithFilteredResult(_0x149ffb,_0x1c1fda){return function(_0x3cbe05){if(_0x3cbe05){var _0x540463=typeof _0x1c1fda[_0xa157('0x1a')]==='undefined'&&typeof _0x1c1fda['limit']===_0xa157('0x1b');var _0x1d44c5=_0x3cbe05[_0xa157('0x1c')];var _0x42ec88=_0x540463?0x0:_0x1c1fda[_0xa157('0x1a')];var _0x28c782=_0x540463?_0x3cbe05['count']:_0x1c1fda['offset']+_0x1c1fda[_0xa157('0x1d')];var _0x29dcfc;if(_0x28c782>=_0x1d44c5){_0x28c782=_0x1d44c5;_0x29dcfc=0xc8;}else{_0x29dcfc=0xce;}_0x149ffb[_0xa157('0x18')](_0x29dcfc);return _0x149ffb[_0xa157('0x1e')](_0xa157('0x1f'),_0x42ec88+'-'+_0x28c782+'/'+_0x1d44c5)['json'](_0x3cbe05);}return null;};}function patchUpdates(_0x4460f3){return function(_0x39dfaa){try{jsonpatch[_0xa157('0x20')](_0x39dfaa,_0x4460f3,!![]);}catch(_0x111b9a){return BPromise[_0xa157('0x21')](_0x111b9a);}return _0x39dfaa['save']();};}function saveUpdates(_0x326037,_0x2211e4){return function(_0x590cc5){if(_0x590cc5){return _0x590cc5[_0xa157('0x22')](_0x326037)[_0xa157('0x23')](function(_0xfc07d6){return _0xfc07d6;});}return null;};}function removeEntity(_0x5e4488,_0x35ee2c){return function(_0x10f668){if(_0x10f668){return _0x10f668[_0xa157('0x24')]()[_0xa157('0x23')](function(){_0x5e4488[_0xa157('0x18')](0xcc)[_0xa157('0x19')]();});}};}function handleEntityNotFound(_0x5b4bee,_0x53546e){return function(_0x228e67){if(!_0x228e67){_0x5b4bee[_0xa157('0x17')](0x194);}return _0x228e67;};}function handleError(_0x192946,_0x5a1c26){_0x5a1c26=_0x5a1c26||0x1f4;return function(_0x367c16){logger['error'](_0x367c16[_0xa157('0x25')]);if(_0x367c16[_0xa157('0x26')]){delete _0x367c16['name'];}_0x192946['status'](_0x5a1c26)[_0xa157('0x27')](_0x367c16);};}exports[_0xa157('0x28')]=function(_0x141b01,_0x13af79){var _0x433584={},_0x3faf42={},_0x55d980={'count':0x0,'rows':[]};var _0x53e40=_[_0xa157('0x29')](db[_0xa157('0x2a')][_0xa157('0x2b')],function(_0xb65f79){return{'name':_0xb65f79[_0xa157('0x2c')],'type':_0xb65f79[_0xa157('0x2d')]['key']};});_0x3faf42[_0xa157('0x2e')]=_[_0xa157('0x29')](_0x53e40,_0xa157('0x26'));_0x3faf42[_0xa157('0x2f')]=_[_0xa157('0x30')](_0x141b01[_0xa157('0x2f')]);_0x3faf42[_0xa157('0x31')]=_[_0xa157('0x32')](_0x3faf42[_0xa157('0x2e')],_0x3faf42[_0xa157('0x2f')]);_0x433584['attributes']=_[_0xa157('0x32')](_0x3faf42['model'],qs[_0xa157('0x33')](_0x141b01[_0xa157('0x2f')][_0xa157('0x33')]));_0x433584[_0xa157('0x34')]=_0x433584[_0xa157('0x34')][_0xa157('0x35')]?_0x433584[_0xa157('0x34')]:_0x3faf42['model'];if(!_0x141b01[_0xa157('0x2f')]['hasOwnProperty'](_0xa157('0x36'))){_0x433584['limit']=qs[_0xa157('0x1d')](_0x141b01[_0xa157('0x2f')][_0xa157('0x1d')]);_0x433584[_0xa157('0x1a')]=qs[_0xa157('0x1a')](_0x141b01[_0xa157('0x2f')][_0xa157('0x1a')]);}_0x433584[_0xa157('0x37')]=qs[_0xa157('0x38')](_0x141b01[_0xa157('0x2f')][_0xa157('0x38')]);_0x433584[_0xa157('0x39')]=qs[_0xa157('0x31')](_['pick'](_0x141b01[_0xa157('0x2f')],_0x3faf42[_0xa157('0x31')]),_0x53e40);if(_0x141b01['query'][_0xa157('0x3a')]){_0x433584['where']=_[_0xa157('0x3b')](_0x433584[_0xa157('0x39')],{'$or':_[_0xa157('0x29')](_0x53e40,function(_0x3c9085){if(_0x3c9085[_0xa157('0x2d')]!==_0xa157('0x3c')){var _0x35531e={};_0x35531e[_0x3c9085[_0xa157('0x26')]]={'$like':'%'+_0x141b01[_0xa157('0x2f')][_0xa157('0x3a')]+'%'};return _0x35531e;}})});}_0x433584=_[_0xa157('0x3b')]({},_0x433584,_0x141b01[_0xa157('0x3d')]);var _0x154d2b={'where':_0x433584[_0xa157('0x39')]};return db['VtigerField'][_0xa157('0x1c')](_0x154d2b)['then'](function(_0x3d3ba2){_0x55d980[_0xa157('0x1c')]=_0x3d3ba2;if(_0x141b01[_0xa157('0x2f')][_0xa157('0x3e')]){_0x433584['include']=[{'all':!![]}];}return db[_0xa157('0x2a')][_0xa157('0x3f')](_0x433584);})['then'](function(_0x4e318c){_0x55d980['rows']=_0x4e318c;return _0x55d980;})[_0xa157('0x23')](respondWithFilteredResult(_0x13af79,_0x433584))[_0xa157('0x40')](handleError(_0x13af79,null));};exports[_0xa157('0x41')]=function(_0x38111c,_0x5722e3){var _0x19933a={'raw':!![],'where':{'id':_0x38111c[_0xa157('0x42')]['id']}},_0x1fb48d={};_0x1fb48d[_0xa157('0x2e')]=_[_0xa157('0x30')](db['VtigerField'][_0xa157('0x2b')]);_0x1fb48d[_0xa157('0x2f')]=_['keys'](_0x38111c[_0xa157('0x2f')]);_0x1fb48d['filters']=_[_0xa157('0x32')](_0x1fb48d['model'],_0x1fb48d[_0xa157('0x2f')]);_0x19933a['attributes']=_['intersection'](_0x1fb48d['model'],qs[_0xa157('0x33')](_0x38111c[_0xa157('0x2f')]['fields']));_0x19933a['attributes']=_0x19933a[_0xa157('0x34')][_0xa157('0x35')]?_0x19933a[_0xa157('0x34')]:_0x1fb48d[_0xa157('0x2e')];if(_0x38111c[_0xa157('0x2f')]['includeAll']){_0x19933a[_0xa157('0x43')]=[{'all':!![]}];}_0x19933a=_[_0xa157('0x3b')]({},_0x19933a,_0x38111c[_0xa157('0x3d')]);return db[_0xa157('0x2a')][_0xa157('0x44')](_0x19933a)[_0xa157('0x23')](handleEntityNotFound(_0x5722e3,null))[_0xa157('0x23')](respondWithResult(_0x5722e3,null))[_0xa157('0x40')](handleError(_0x5722e3,null));};exports[_0xa157('0x45')]=function(_0x48408,_0x39e2c1){return db[_0xa157('0x2a')]['create'](_0x48408[_0xa157('0x46')],{})[_0xa157('0x23')](respondWithResult(_0x39e2c1,0xc9))[_0xa157('0x40')](handleError(_0x39e2c1,null));};exports[_0xa157('0x22')]=function(_0x1cb3f5,_0x13c4c2){if(_0x1cb3f5[_0xa157('0x46')]['id']){delete _0x1cb3f5[_0xa157('0x46')]['id'];}return db['VtigerField'][_0xa157('0x44')]({'where':{'id':_0x1cb3f5['params']['id']}})[_0xa157('0x23')](handleEntityNotFound(_0x13c4c2,null))[_0xa157('0x23')](saveUpdates(_0x1cb3f5[_0xa157('0x46')],null))[_0xa157('0x23')](respondWithResult(_0x13c4c2,null))[_0xa157('0x40')](handleError(_0x13c4c2,null));};exports[_0xa157('0x24')]=function(_0x4c16ee,_0x4f3dbc){return db['VtigerField'][_0xa157('0x44')]({'where':{'id':_0x4c16ee[_0xa157('0x42')]['id']}})['then'](handleEntityNotFound(_0x4f3dbc,null))[_0xa157('0x23')](removeEntity(_0x4f3dbc,null))[_0xa157('0x40')](handleError(_0x4f3dbc,null));};