Built motion from commit (unavailable).|2.5.22
[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 _0xaa37=['eml-format','rimraf','zip-dir','request-promise','moment','bluebird','mustache','util','path','sox','ejs','lodash','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','api','../../config/environment','../../config/license/util','end','status','offset','set','Content-Range','json','apply','reject','save','update','then','destroy','sendStatus','error','stack','name','send','index','VtigerField','rawAttributes','fieldName','type','key','model','map','query','keys','filters','intersection','attributes','fields','hasOwnProperty','nolimit','limit','order','sort','where','pick','filter','merge','VIRTUAL','options','count','includeAll','include','findAll','rows','catch','show','length','find','body','params','html-pdf'];(function(_0x1b6c6d,_0x2983b0){var _0x290d9d=function(_0x5b9779){while(--_0x5b9779){_0x1b6c6d['push'](_0x1b6c6d['shift']());}};_0x290d9d(++_0x2983b0);}(_0xaa37,0x1d3));var _0x7aa3=function(_0x397e5f,_0x454c8f){_0x397e5f=_0x397e5f-0x0;var _0x5302b8=_0xaa37[_0x397e5f];return _0x5302b8;};'use strict';var pdf=require(_0x7aa3('0x0'));var emlformat=require(_0x7aa3('0x1'));var rimraf=require(_0x7aa3('0x2'));var zipdir=require(_0x7aa3('0x3'));var jsonpatch=require('fast-json-patch');var rp=require(_0x7aa3('0x4'));var moment=require(_0x7aa3('0x5'));var BPromise=require(_0x7aa3('0x6'));var Mustache=require(_0x7aa3('0x7'));var util=require(_0x7aa3('0x8'));var path=require(_0x7aa3('0x9'));var sox=require(_0x7aa3('0xa'));var csv=require('to-csv');var ejs=require(_0x7aa3('0xb'));var fs=require('fs');var _=require(_0x7aa3('0xc'));var squel=require('squel');var crypto=require(_0x7aa3('0xd'));var jsforce=require(_0x7aa3('0xe'));var deskjs=require(_0x7aa3('0xf'));var toCsv=require('to-csv');var querystring=require(_0x7aa3('0x10'));var Papa=require(_0x7aa3('0x11'));var Redis=require(_0x7aa3('0x12'));var authService=require(_0x7aa3('0x13'));var qs=require(_0x7aa3('0x14'));var as=require(_0x7aa3('0x15'));var hardwareService=require('../../config/license/hardware');var logger=require('../../config/logger')(_0x7aa3('0x16'));var utils=require('../../config/utils');var config=require(_0x7aa3('0x17'));var licenseUtil=require(_0x7aa3('0x18'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x3c68b8,_0xc11cd3){_0xc11cd3=_0xc11cd3||0xcc;return function(_0x552ec9){if(_0x552ec9){return _0x3c68b8['sendStatus'](_0xc11cd3);}return _0x3c68b8['status'](_0xc11cd3)[_0x7aa3('0x19')]();};}function respondWithResult(_0x20f370,_0x1c53a9){_0x1c53a9=_0x1c53a9||0xc8;return function(_0x451fe4){if(_0x451fe4){return _0x20f370[_0x7aa3('0x1a')](_0x1c53a9)['json'](_0x451fe4);}};}function respondWithFilteredResult(_0x235040,_0x3df7e8){return function(_0x36e9f9){if(_0x36e9f9){var _0x1f2d89=_0x36e9f9['count'],_0x50da7c=_0x3df7e8[_0x7aa3('0x1b')],_0x5ae383=_0x3df7e8[_0x7aa3('0x1b')]+_0x3df7e8['limit'],_0x3fab08;if(_0x5ae383>=_0x1f2d89){_0x5ae383=_0x1f2d89;_0x3fab08=0xc8;}else{_0x3fab08=0xce;}_0x235040[_0x7aa3('0x1a')](_0x3fab08);return _0x235040[_0x7aa3('0x1c')](_0x7aa3('0x1d'),_0x50da7c+'-'+_0x5ae383+'/'+_0x1f2d89)[_0x7aa3('0x1e')](_0x36e9f9);}return null;};}function patchUpdates(_0x12fdd3){return function(_0x5994b6){try{jsonpatch[_0x7aa3('0x1f')](_0x5994b6,_0x12fdd3,!![]);}catch(_0x266529){return BPromise[_0x7aa3('0x20')](_0x266529);}return _0x5994b6[_0x7aa3('0x21')]();};}function saveUpdates(_0x2360d1,_0xa57443){return function(_0x5a7c65){if(_0x5a7c65){return _0x5a7c65[_0x7aa3('0x22')](_0x2360d1)[_0x7aa3('0x23')](function(_0x35f0f8){return _0x35f0f8;});}return null;};}function removeEntity(_0x4177b9,_0x36c619){return function(_0x49a566){if(_0x49a566){return _0x49a566[_0x7aa3('0x24')]()[_0x7aa3('0x23')](function(){_0x4177b9[_0x7aa3('0x1a')](0xcc)[_0x7aa3('0x19')]();});}};}function handleEntityNotFound(_0x3b382d,_0x10887d){return function(_0x25bc1f){if(!_0x25bc1f){_0x3b382d[_0x7aa3('0x25')](0x194);}return _0x25bc1f;};}function handleError(_0x1d5271,_0x23f168){_0x23f168=_0x23f168||0x1f4;return function(_0x44377a){logger[_0x7aa3('0x26')](_0x44377a[_0x7aa3('0x27')]);if(_0x44377a['name']){delete _0x44377a[_0x7aa3('0x28')];}_0x1d5271[_0x7aa3('0x1a')](_0x23f168)[_0x7aa3('0x29')](_0x44377a);};}exports[_0x7aa3('0x2a')]=function(_0x183ffc,_0x1fa6a1){var _0x47cf18={},_0x3618df={},_0x183567={'count':0x0,'rows':[]};var _0x447c9f=_['map'](db[_0x7aa3('0x2b')][_0x7aa3('0x2c')],function(_0x539ec0){return{'name':_0x539ec0[_0x7aa3('0x2d')],'type':_0x539ec0[_0x7aa3('0x2e')][_0x7aa3('0x2f')]};});_0x3618df[_0x7aa3('0x30')]=_[_0x7aa3('0x31')](_0x447c9f,_0x7aa3('0x28'));_0x3618df[_0x7aa3('0x32')]=_[_0x7aa3('0x33')](_0x183ffc[_0x7aa3('0x32')]);_0x3618df[_0x7aa3('0x34')]=_[_0x7aa3('0x35')](_0x3618df[_0x7aa3('0x30')],_0x3618df[_0x7aa3('0x32')]);_0x47cf18[_0x7aa3('0x36')]=_[_0x7aa3('0x35')](_0x3618df[_0x7aa3('0x30')],qs[_0x7aa3('0x37')](_0x183ffc[_0x7aa3('0x32')][_0x7aa3('0x37')]));_0x47cf18[_0x7aa3('0x36')]=_0x47cf18[_0x7aa3('0x36')]['length']?_0x47cf18[_0x7aa3('0x36')]:_0x3618df[_0x7aa3('0x30')];if(!_0x183ffc[_0x7aa3('0x32')][_0x7aa3('0x38')](_0x7aa3('0x39'))){_0x47cf18[_0x7aa3('0x3a')]=qs[_0x7aa3('0x3a')](_0x183ffc[_0x7aa3('0x32')][_0x7aa3('0x3a')]);_0x47cf18[_0x7aa3('0x1b')]=qs[_0x7aa3('0x1b')](_0x183ffc['query'][_0x7aa3('0x1b')]);}_0x47cf18[_0x7aa3('0x3b')]=qs[_0x7aa3('0x3c')](_0x183ffc[_0x7aa3('0x32')][_0x7aa3('0x3c')]);_0x47cf18[_0x7aa3('0x3d')]=qs[_0x7aa3('0x34')](_[_0x7aa3('0x3e')](_0x183ffc[_0x7aa3('0x32')],_0x3618df[_0x7aa3('0x34')]),_0x447c9f);if(_0x183ffc[_0x7aa3('0x32')][_0x7aa3('0x3f')]){_0x47cf18[_0x7aa3('0x3d')]=_[_0x7aa3('0x40')](_0x47cf18['where'],{'$or':_[_0x7aa3('0x31')](_0x447c9f,function(_0x304017){if(_0x304017[_0x7aa3('0x2e')]!==_0x7aa3('0x41')){var _0x4ce94b={};_0x4ce94b[_0x304017[_0x7aa3('0x28')]]={'$like':'%'+_0x183ffc['query'][_0x7aa3('0x3f')]+'%'};return _0x4ce94b;}})});}_0x47cf18=_[_0x7aa3('0x40')]({},_0x47cf18,_0x183ffc[_0x7aa3('0x42')]);var _0x1177b4={'where':_0x47cf18[_0x7aa3('0x3d')]};return db[_0x7aa3('0x2b')][_0x7aa3('0x43')](_0x1177b4)[_0x7aa3('0x23')](function(_0x839ecf){_0x183567[_0x7aa3('0x43')]=_0x839ecf;if(_0x183ffc['query'][_0x7aa3('0x44')]){_0x47cf18[_0x7aa3('0x45')]=[{'all':!![]}];}return db[_0x7aa3('0x2b')][_0x7aa3('0x46')](_0x47cf18);})[_0x7aa3('0x23')](function(_0x143d77){_0x183567[_0x7aa3('0x47')]=_0x143d77;return _0x183567;})[_0x7aa3('0x23')](respondWithFilteredResult(_0x1fa6a1,_0x47cf18))[_0x7aa3('0x48')](handleError(_0x1fa6a1,null));};exports[_0x7aa3('0x49')]=function(_0xc21d54,_0x119cdd){var _0x3efe01={'raw':!![],'where':{'id':_0xc21d54['params']['id']}},_0x13be4a={};_0x13be4a[_0x7aa3('0x30')]=_[_0x7aa3('0x33')](db['VtigerField'][_0x7aa3('0x2c')]);_0x13be4a[_0x7aa3('0x32')]=_['keys'](_0xc21d54[_0x7aa3('0x32')]);_0x13be4a[_0x7aa3('0x34')]=_[_0x7aa3('0x35')](_0x13be4a[_0x7aa3('0x30')],_0x13be4a['query']);_0x3efe01['attributes']=_[_0x7aa3('0x35')](_0x13be4a['model'],qs[_0x7aa3('0x37')](_0xc21d54['query']['fields']));_0x3efe01[_0x7aa3('0x36')]=_0x3efe01[_0x7aa3('0x36')][_0x7aa3('0x4a')]?_0x3efe01[_0x7aa3('0x36')]:_0x13be4a[_0x7aa3('0x30')];if(_0xc21d54['query'][_0x7aa3('0x44')]){_0x3efe01[_0x7aa3('0x45')]=[{'all':!![]}];}_0x3efe01=_['merge']({},_0x3efe01,_0xc21d54[_0x7aa3('0x42')]);return db[_0x7aa3('0x2b')][_0x7aa3('0x4b')](_0x3efe01)['then'](handleEntityNotFound(_0x119cdd,null))[_0x7aa3('0x23')](respondWithResult(_0x119cdd,null))[_0x7aa3('0x48')](handleError(_0x119cdd,null));};exports['create']=function(_0x2cc4aa,_0xc74dce){return db['VtigerField']['create'](_0x2cc4aa[_0x7aa3('0x4c')],{})[_0x7aa3('0x23')](respondWithResult(_0xc74dce,0xc9))[_0x7aa3('0x48')](handleError(_0xc74dce,null));};exports[_0x7aa3('0x22')]=function(_0x4d716c,_0x4e3bc1){if(_0x4d716c[_0x7aa3('0x4c')]['id']){delete _0x4d716c[_0x7aa3('0x4c')]['id'];}return db[_0x7aa3('0x2b')][_0x7aa3('0x4b')]({'where':{'id':_0x4d716c['params']['id']}})['then'](handleEntityNotFound(_0x4e3bc1,null))['then'](saveUpdates(_0x4d716c[_0x7aa3('0x4c')],null))[_0x7aa3('0x23')](respondWithResult(_0x4e3bc1,null))[_0x7aa3('0x48')](handleError(_0x4e3bc1,null));};exports['destroy']=function(_0x24017d,_0x62de12){return db[_0x7aa3('0x2b')][_0x7aa3('0x4b')]({'where':{'id':_0x24017d[_0x7aa3('0x4d')]['id']}})[_0x7aa3('0x23')](handleEntityNotFound(_0x62de12,null))['then'](removeEntity(_0x62de12,null))[_0x7aa3('0x48')](handleError(_0x62de12,null));};