Built motion from commit 9d1906d1.|2.5.40
[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 _0x1828=['../../config/license/hardware','../../config/logger','api','../../config/environment','../../mysqldb','sendStatus','status','end','json','offset','limit','undefined','count','set','Content-Range','apply','reject','save','update','then','destroy','stack','name','index','map','VtigerField','rawAttributes','type','key','model','query','filters','intersection','attributes','fields','length','hasOwnProperty','order','sort','where','pick','filter','merge','VIRTUAL','options','rows','show','params','keys','includeAll','include','catch','create','body','find','eml-format','rimraf','request-promise','moment','bluebird','mustache','path','ejs','fs-extra','lodash','squel','crypto','desk.js','to-csv','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs'];(function(_0x34bf97,_0xc60f9d){var _0x292719=function(_0x31354e){while(--_0x31354e){_0x34bf97['push'](_0x34bf97['shift']());}};_0x292719(++_0xc60f9d);}(_0x1828,0x15f));var _0x8182=function(_0x2801fe,_0x3ff1b2){_0x2801fe=_0x2801fe-0x0;var _0x46ddd9=_0x1828[_0x2801fe];return _0x46ddd9;};'use strict';var emlformat=require(_0x8182('0x0'));var rimraf=require(_0x8182('0x1'));var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require(_0x8182('0x2'));var moment=require(_0x8182('0x3'));var BPromise=require(_0x8182('0x4'));var Mustache=require(_0x8182('0x5'));var util=require('util');var path=require(_0x8182('0x6'));var sox=require('sox');var csv=require('to-csv');var ejs=require(_0x8182('0x7'));var fs=require('fs');var fs_extra=require(_0x8182('0x8'));var _=require(_0x8182('0x9'));var squel=require(_0x8182('0xa'));var crypto=require(_0x8182('0xb'));var jsforce=require('jsforce');var deskjs=require(_0x8182('0xc'));var toCsv=require(_0x8182('0xd'));var querystring=require(_0x8182('0xe'));var Papa=require(_0x8182('0xf'));var Redis=require(_0x8182('0x10'));var authService=require(_0x8182('0x11'));var qs=require(_0x8182('0x12'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x8182('0x13'));var logger=require(_0x8182('0x14'))(_0x8182('0x15'));var utils=require('../../config/utils');var config=require(_0x8182('0x16'));var licenseUtil=require('../../config/license/util');var db=require(_0x8182('0x17'))['db'];function respondWithStatusCode(_0x41996f,_0x164f01){_0x164f01=_0x164f01||0xcc;return function(_0x3283f5){if(_0x3283f5){return _0x41996f[_0x8182('0x18')](_0x164f01);}return _0x41996f[_0x8182('0x19')](_0x164f01)[_0x8182('0x1a')]();};}function respondWithResult(_0x1caaaf,_0x2c7158){_0x2c7158=_0x2c7158||0xc8;return function(_0x240ba1){if(_0x240ba1){return _0x1caaaf[_0x8182('0x19')](_0x2c7158)[_0x8182('0x1b')](_0x240ba1);}};}function respondWithFilteredResult(_0x9c776e,_0x3fce7c){return function(_0x171385){if(_0x171385){var _0x16b293=typeof _0x3fce7c[_0x8182('0x1c')]==='undefined'&&typeof _0x3fce7c[_0x8182('0x1d')]===_0x8182('0x1e');var _0x29535f=_0x171385[_0x8182('0x1f')];var _0x3e1e46=_0x16b293?0x0:_0x3fce7c[_0x8182('0x1c')];var _0x1a9147=_0x16b293?_0x171385[_0x8182('0x1f')]:_0x3fce7c[_0x8182('0x1c')]+_0x3fce7c[_0x8182('0x1d')];var _0x489915;if(_0x1a9147>=_0x29535f){_0x1a9147=_0x29535f;_0x489915=0xc8;}else{_0x489915=0xce;}_0x9c776e[_0x8182('0x19')](_0x489915);return _0x9c776e[_0x8182('0x20')](_0x8182('0x21'),_0x3e1e46+'-'+_0x1a9147+'/'+_0x29535f)[_0x8182('0x1b')](_0x171385);}return null;};}function patchUpdates(_0x168e4b){return function(_0x42799a){try{jsonpatch[_0x8182('0x22')](_0x42799a,_0x168e4b,!![]);}catch(_0x55db08){return BPromise[_0x8182('0x23')](_0x55db08);}return _0x42799a[_0x8182('0x24')]();};}function saveUpdates(_0x1792a6,_0x1bdd48){return function(_0x43506a){if(_0x43506a){return _0x43506a[_0x8182('0x25')](_0x1792a6)[_0x8182('0x26')](function(_0x49bef7){return _0x49bef7;});}return null;};}function removeEntity(_0x41e1d0,_0x852244){return function(_0x304639){if(_0x304639){return _0x304639[_0x8182('0x27')]()[_0x8182('0x26')](function(){_0x41e1d0[_0x8182('0x19')](0xcc)[_0x8182('0x1a')]();});}};}function handleEntityNotFound(_0x5a3677,_0x2632f1){return function(_0x514267){if(!_0x514267){_0x5a3677['sendStatus'](0x194);}return _0x514267;};}function handleError(_0x274437,_0x116185){_0x116185=_0x116185||0x1f4;return function(_0x5443e5){logger['error'](_0x5443e5[_0x8182('0x28')]);if(_0x5443e5[_0x8182('0x29')]){delete _0x5443e5['name'];}_0x274437[_0x8182('0x19')](_0x116185)['send'](_0x5443e5);};}exports[_0x8182('0x2a')]=function(_0x28297e,_0x2b82d7){var _0x49c595={},_0x4f9533={},_0x3873da={'count':0x0,'rows':[]};var _0x4ad329=_[_0x8182('0x2b')](db[_0x8182('0x2c')][_0x8182('0x2d')],function(_0x19682a){return{'name':_0x19682a['fieldName'],'type':_0x19682a[_0x8182('0x2e')][_0x8182('0x2f')]};});_0x4f9533[_0x8182('0x30')]=_[_0x8182('0x2b')](_0x4ad329,_0x8182('0x29'));_0x4f9533[_0x8182('0x31')]=_['keys'](_0x28297e[_0x8182('0x31')]);_0x4f9533[_0x8182('0x32')]=_[_0x8182('0x33')](_0x4f9533[_0x8182('0x30')],_0x4f9533['query']);_0x49c595[_0x8182('0x34')]=_['intersection'](_0x4f9533[_0x8182('0x30')],qs['fields'](_0x28297e[_0x8182('0x31')][_0x8182('0x35')]));_0x49c595[_0x8182('0x34')]=_0x49c595[_0x8182('0x34')][_0x8182('0x36')]?_0x49c595['attributes']:_0x4f9533['model'];if(!_0x28297e[_0x8182('0x31')][_0x8182('0x37')]('nolimit')){_0x49c595[_0x8182('0x1d')]=qs[_0x8182('0x1d')](_0x28297e[_0x8182('0x31')][_0x8182('0x1d')]);_0x49c595[_0x8182('0x1c')]=qs[_0x8182('0x1c')](_0x28297e[_0x8182('0x31')]['offset']);}_0x49c595[_0x8182('0x38')]=qs['sort'](_0x28297e['query'][_0x8182('0x39')]);_0x49c595[_0x8182('0x3a')]=qs[_0x8182('0x32')](_[_0x8182('0x3b')](_0x28297e['query'],_0x4f9533['filters']),_0x4ad329);if(_0x28297e[_0x8182('0x31')][_0x8182('0x3c')]){_0x49c595['where']=_[_0x8182('0x3d')](_0x49c595[_0x8182('0x3a')],{'$or':_[_0x8182('0x2b')](_0x4ad329,function(_0x3cca23){if(_0x3cca23[_0x8182('0x2e')]!==_0x8182('0x3e')){var _0x3eb2ea={};_0x3eb2ea[_0x3cca23[_0x8182('0x29')]]={'$like':'%'+_0x28297e[_0x8182('0x31')][_0x8182('0x3c')]+'%'};return _0x3eb2ea;}})});}_0x49c595=_['merge']({},_0x49c595,_0x28297e[_0x8182('0x3f')]);var _0x1228b3={'where':_0x49c595['where']};return db[_0x8182('0x2c')]['count'](_0x1228b3)[_0x8182('0x26')](function(_0x58a7cc){_0x3873da[_0x8182('0x1f')]=_0x58a7cc;if(_0x28297e[_0x8182('0x31')]['includeAll']){_0x49c595['include']=[{'all':!![]}];}return db['VtigerField']['findAll'](_0x49c595);})[_0x8182('0x26')](function(_0x6936c7){_0x3873da[_0x8182('0x40')]=_0x6936c7;return _0x3873da;})[_0x8182('0x26')](respondWithFilteredResult(_0x2b82d7,_0x49c595))['catch'](handleError(_0x2b82d7,null));};exports[_0x8182('0x41')]=function(_0x4b6144,_0x5d4521){var _0x492131={'raw':!![],'where':{'id':_0x4b6144[_0x8182('0x42')]['id']}},_0x200331={};_0x200331[_0x8182('0x30')]=_[_0x8182('0x43')](db[_0x8182('0x2c')]['rawAttributes']);_0x200331[_0x8182('0x31')]=_['keys'](_0x4b6144[_0x8182('0x31')]);_0x200331[_0x8182('0x32')]=_[_0x8182('0x33')](_0x200331[_0x8182('0x30')],_0x200331[_0x8182('0x31')]);_0x492131[_0x8182('0x34')]=_[_0x8182('0x33')](_0x200331['model'],qs['fields'](_0x4b6144[_0x8182('0x31')]['fields']));_0x492131[_0x8182('0x34')]=_0x492131[_0x8182('0x34')][_0x8182('0x36')]?_0x492131['attributes']:_0x200331[_0x8182('0x30')];if(_0x4b6144[_0x8182('0x31')][_0x8182('0x44')]){_0x492131[_0x8182('0x45')]=[{'all':!![]}];}_0x492131=_[_0x8182('0x3d')]({},_0x492131,_0x4b6144['options']);return db[_0x8182('0x2c')]['find'](_0x492131)[_0x8182('0x26')](handleEntityNotFound(_0x5d4521,null))[_0x8182('0x26')](respondWithResult(_0x5d4521,null))[_0x8182('0x46')](handleError(_0x5d4521,null));};exports[_0x8182('0x47')]=function(_0x5d0de2,_0x547795){return db[_0x8182('0x2c')][_0x8182('0x47')](_0x5d0de2[_0x8182('0x48')],{})[_0x8182('0x26')](respondWithResult(_0x547795,0xc9))[_0x8182('0x46')](handleError(_0x547795,null));};exports[_0x8182('0x25')]=function(_0x29e851,_0x23b1da){if(_0x29e851[_0x8182('0x48')]['id']){delete _0x29e851[_0x8182('0x48')]['id'];}return db['VtigerField'][_0x8182('0x49')]({'where':{'id':_0x29e851[_0x8182('0x42')]['id']}})['then'](handleEntityNotFound(_0x23b1da,null))[_0x8182('0x26')](saveUpdates(_0x29e851['body'],null))[_0x8182('0x26')](respondWithResult(_0x23b1da,null))[_0x8182('0x46')](handleError(_0x23b1da,null));};exports['destroy']=function(_0x1286a7,_0x3b9241){return db[_0x8182('0x2c')][_0x8182('0x49')]({'where':{'id':_0x1286a7[_0x8182('0x42')]['id']}})[_0x8182('0x26')](handleEntityNotFound(_0x3b9241,null))[_0x8182('0x26')](removeEntity(_0x3b9241,null))[_0x8182('0x46')](handleError(_0x3b9241,null));};