Built motion from commit (unavailable).|2.5.21
[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 _0x81c6=['destroy','then','end','sendStatus','error','stack','name','send','map','VtigerField','rawAttributes','fieldName','type','key','query','filters','intersection','model','fields','attributes','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','VIRTUAL','options','includeAll','include','findAll','rows','catch','show','params','keys','merge','create','update','body','find','eml-format','request-promise','moment','bluebird','util','path','sox','to-csv','lodash','squel','desk.js','querystring','../../components/auth/service','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/license/util','../../mysqldb','status','json','count','offset','limit','set','apply','reject','save'];(function(_0x255227,_0x2063b0){var _0x43a3e4=function(_0x2352ec){while(--_0x2352ec){_0x255227['push'](_0x255227['shift']());}};_0x43a3e4(++_0x2063b0);}(_0x81c6,0x1d5));var _0x681c=function(_0x4670df,_0x433288){_0x4670df=_0x4670df-0x0;var _0x326082=_0x81c6[_0x4670df];return _0x326082;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0x681c('0x0'));var rimraf=require('rimraf');var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require(_0x681c('0x1'));var moment=require(_0x681c('0x2'));var BPromise=require(_0x681c('0x3'));var Mustache=require('mustache');var util=require(_0x681c('0x4'));var path=require(_0x681c('0x5'));var sox=require(_0x681c('0x6'));var csv=require(_0x681c('0x7'));var ejs=require('ejs');var fs=require('fs');var _=require(_0x681c('0x8'));var squel=require(_0x681c('0x9'));var crypto=require('crypto');var jsforce=require('jsforce');var deskjs=require(_0x681c('0xa'));var toCsv=require(_0x681c('0x7'));var querystring=require(_0x681c('0xb'));var Papa=require('papaparse');var Redis=require('ioredis');var authService=require(_0x681c('0xc'));var qs=require('../../components/parsers/qs');var as=require(_0x681c('0xd'));var hardwareService=require(_0x681c('0xe'));var logger=require(_0x681c('0xf'))(_0x681c('0x10'));var utils=require('../../config/utils');var config=require('../../config/environment');var licenseUtil=require(_0x681c('0x11'));var db=require(_0x681c('0x12'))['db'];function respondWithStatusCode(_0x2d379b,_0x50cae8){_0x50cae8=_0x50cae8||0xcc;return function(_0x2e4651){if(_0x2e4651){return _0x2d379b['sendStatus'](_0x50cae8);}return _0x2d379b[_0x681c('0x13')](_0x50cae8)['end']();};}function respondWithResult(_0x2c059e,_0x27c3a2){_0x27c3a2=_0x27c3a2||0xc8;return function(_0xe8bb4d){if(_0xe8bb4d){return _0x2c059e[_0x681c('0x13')](_0x27c3a2)[_0x681c('0x14')](_0xe8bb4d);}};}function respondWithFilteredResult(_0x2bc3fb,_0x50a4ec){return function(_0x2b0939){if(_0x2b0939){var _0x1135c9=_0x2b0939[_0x681c('0x15')],_0x435a4c=_0x50a4ec['offset'],_0x5eb8=_0x50a4ec[_0x681c('0x16')]+_0x50a4ec[_0x681c('0x17')],_0x2fce11;if(_0x5eb8>=_0x1135c9){_0x5eb8=_0x1135c9;_0x2fce11=0xc8;}else{_0x2fce11=0xce;}_0x2bc3fb[_0x681c('0x13')](_0x2fce11);return _0x2bc3fb[_0x681c('0x18')]('Content-Range',_0x435a4c+'-'+_0x5eb8+'/'+_0x1135c9)[_0x681c('0x14')](_0x2b0939);}return null;};}function patchUpdates(_0x24a0ce){return function(_0x54d27f){try{jsonpatch[_0x681c('0x19')](_0x54d27f,_0x24a0ce,!![]);}catch(_0x4c22c7){return BPromise[_0x681c('0x1a')](_0x4c22c7);}return _0x54d27f[_0x681c('0x1b')]();};}function saveUpdates(_0x11d68d,_0x33c495){return function(_0x4169b9){if(_0x4169b9){return _0x4169b9['update'](_0x11d68d)['then'](function(_0x57772d){return _0x57772d;});}return null;};}function removeEntity(_0x2e5331,_0x39c8b7){return function(_0x3adfe3){if(_0x3adfe3){return _0x3adfe3[_0x681c('0x1c')]()[_0x681c('0x1d')](function(){_0x2e5331[_0x681c('0x13')](0xcc)[_0x681c('0x1e')]();});}};}function handleEntityNotFound(_0x3d0297,_0x1b3d2b){return function(_0x397ae3){if(!_0x397ae3){_0x3d0297[_0x681c('0x1f')](0x194);}return _0x397ae3;};}function handleError(_0x31c9b9,_0x13de03){_0x13de03=_0x13de03||0x1f4;return function(_0x218410){logger[_0x681c('0x20')](_0x218410[_0x681c('0x21')]);if(_0x218410['name']){delete _0x218410[_0x681c('0x22')];}_0x31c9b9['status'](_0x13de03)[_0x681c('0x23')](_0x218410);};}exports['index']=function(_0x583499,_0x30c977){var _0x17ea7c={},_0x17e8f3={},_0x2f7772={'count':0x0,'rows':[]};var _0x4c9fd0=_[_0x681c('0x24')](db[_0x681c('0x25')][_0x681c('0x26')],function(_0x936fce){return{'name':_0x936fce[_0x681c('0x27')],'type':_0x936fce[_0x681c('0x28')][_0x681c('0x29')]};});_0x17e8f3['model']=_[_0x681c('0x24')](_0x4c9fd0,_0x681c('0x22'));_0x17e8f3[_0x681c('0x2a')]=_['keys'](_0x583499[_0x681c('0x2a')]);_0x17e8f3[_0x681c('0x2b')]=_[_0x681c('0x2c')](_0x17e8f3['model'],_0x17e8f3[_0x681c('0x2a')]);_0x17ea7c['attributes']=_['intersection'](_0x17e8f3[_0x681c('0x2d')],qs[_0x681c('0x2e')](_0x583499[_0x681c('0x2a')]['fields']));_0x17ea7c[_0x681c('0x2f')]=_0x17ea7c['attributes'][_0x681c('0x30')]?_0x17ea7c['attributes']:_0x17e8f3['model'];if(!_0x583499['query'][_0x681c('0x31')](_0x681c('0x32'))){_0x17ea7c['limit']=qs[_0x681c('0x17')](_0x583499['query']['limit']);_0x17ea7c[_0x681c('0x16')]=qs['offset'](_0x583499[_0x681c('0x2a')][_0x681c('0x16')]);}_0x17ea7c[_0x681c('0x33')]=qs['sort'](_0x583499['query'][_0x681c('0x34')]);_0x17ea7c[_0x681c('0x35')]=qs['filters'](_[_0x681c('0x36')](_0x583499[_0x681c('0x2a')],_0x17e8f3[_0x681c('0x2b')]),_0x4c9fd0);if(_0x583499['query'][_0x681c('0x37')]){_0x17ea7c[_0x681c('0x35')]=_['merge'](_0x17ea7c[_0x681c('0x35')],{'$or':_[_0x681c('0x24')](_0x4c9fd0,function(_0x83953c){if(_0x83953c[_0x681c('0x28')]!==_0x681c('0x38')){var _0x5c4d94={};_0x5c4d94[_0x83953c['name']]={'$like':'%'+_0x583499[_0x681c('0x2a')][_0x681c('0x37')]+'%'};return _0x5c4d94;}})});}_0x17ea7c=_['merge']({},_0x17ea7c,_0x583499[_0x681c('0x39')]);var _0x183f13={'where':_0x17ea7c['where']};return db[_0x681c('0x25')][_0x681c('0x15')](_0x183f13)[_0x681c('0x1d')](function(_0x4781f8){_0x2f7772[_0x681c('0x15')]=_0x4781f8;if(_0x583499[_0x681c('0x2a')][_0x681c('0x3a')]){_0x17ea7c[_0x681c('0x3b')]=[{'all':!![]}];}return db[_0x681c('0x25')][_0x681c('0x3c')](_0x17ea7c);})['then'](function(_0x1d8f5e){_0x2f7772[_0x681c('0x3d')]=_0x1d8f5e;return _0x2f7772;})[_0x681c('0x1d')](respondWithFilteredResult(_0x30c977,_0x17ea7c))[_0x681c('0x3e')](handleError(_0x30c977,null));};exports[_0x681c('0x3f')]=function(_0x37d097,_0x542c02){var _0x465083={'raw':!![],'where':{'id':_0x37d097[_0x681c('0x40')]['id']}},_0x2b8e6d={};_0x2b8e6d[_0x681c('0x2d')]=_[_0x681c('0x41')](db['VtigerField'][_0x681c('0x26')]);_0x2b8e6d['query']=_['keys'](_0x37d097[_0x681c('0x2a')]);_0x2b8e6d[_0x681c('0x2b')]=_[_0x681c('0x2c')](_0x2b8e6d[_0x681c('0x2d')],_0x2b8e6d['query']);_0x465083[_0x681c('0x2f')]=_['intersection'](_0x2b8e6d['model'],qs[_0x681c('0x2e')](_0x37d097[_0x681c('0x2a')][_0x681c('0x2e')]));_0x465083[_0x681c('0x2f')]=_0x465083[_0x681c('0x2f')][_0x681c('0x30')]?_0x465083['attributes']:_0x2b8e6d[_0x681c('0x2d')];if(_0x37d097[_0x681c('0x2a')]['includeAll']){_0x465083['include']=[{'all':!![]}];}_0x465083=_[_0x681c('0x42')]({},_0x465083,_0x37d097['options']);return db[_0x681c('0x25')]['find'](_0x465083)['then'](handleEntityNotFound(_0x542c02,null))['then'](respondWithResult(_0x542c02,null))[_0x681c('0x3e')](handleError(_0x542c02,null));};exports[_0x681c('0x43')]=function(_0x8043a9,_0x573250){return db[_0x681c('0x25')][_0x681c('0x43')](_0x8043a9['body'],{})[_0x681c('0x1d')](respondWithResult(_0x573250,0xc9))[_0x681c('0x3e')](handleError(_0x573250,null));};exports[_0x681c('0x44')]=function(_0x243079,_0x50c9af){if(_0x243079[_0x681c('0x45')]['id']){delete _0x243079['body']['id'];}return db[_0x681c('0x25')][_0x681c('0x46')]({'where':{'id':_0x243079[_0x681c('0x40')]['id']}})['then'](handleEntityNotFound(_0x50c9af,null))[_0x681c('0x1d')](saveUpdates(_0x243079[_0x681c('0x45')],null))[_0x681c('0x1d')](respondWithResult(_0x50c9af,null))[_0x681c('0x3e')](handleError(_0x50c9af,null));};exports[_0x681c('0x1c')]=function(_0x1351e9,_0xdccaac){return db[_0x681c('0x25')][_0x681c('0x46')]({'where':{'id':_0x1351e9[_0x681c('0x40')]['id']}})[_0x681c('0x1d')](handleEntityNotFound(_0xdccaac,null))[_0x681c('0x1d')](removeEntity(_0xdccaac,null))[_0x681c('0x3e')](handleError(_0xdccaac,null));};