Built motion from commit (unavailable).|2.5.29
[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 _0x85d4=['../../config/utils','../../config/environment','../../mysqldb','sendStatus','end','offset','undefined','limit','count','status','set','Content-Range','apply','reject','save','then','error','stack','send','index','map','rawAttributes','key','query','keys','filters','model','attributes','intersection','fields','hasOwnProperty','nolimit','sort','where','pick','filter','merge','type','VIRTUAL','name','VtigerField','rows','catch','show','params','options','create','body','update','find','destroy','eml-format','rimraf','zip-dir','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','ejs','fs-extra','lodash','squel','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api'];(function(_0x4565bf,_0x5ad9d6){var _0x5610ba=function(_0x170988){while(--_0x170988){_0x4565bf['push'](_0x4565bf['shift']());}};_0x5610ba(++_0x5ad9d6);}(_0x85d4,0x167));var _0x485d=function(_0x3dd15e,_0x1f0015){_0x3dd15e=_0x3dd15e-0x0;var _0x231fd0=_0x85d4[_0x3dd15e];return _0x231fd0;};'use strict';var emlformat=require(_0x485d('0x0'));var rimraf=require(_0x485d('0x1'));var zipdir=require(_0x485d('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0x485d('0x3'));var moment=require(_0x485d('0x4'));var BPromise=require(_0x485d('0x5'));var Mustache=require(_0x485d('0x6'));var util=require(_0x485d('0x7'));var path=require(_0x485d('0x8'));var sox=require(_0x485d('0x9'));var csv=require(_0x485d('0xa'));var ejs=require(_0x485d('0xb'));var fs=require('fs');var fs_extra=require(_0x485d('0xc'));var _=require(_0x485d('0xd'));var squel=require(_0x485d('0xe'));var crypto=require('crypto');var jsforce=require(_0x485d('0xf'));var deskjs=require(_0x485d('0x10'));var toCsv=require(_0x485d('0xa'));var querystring=require(_0x485d('0x11'));var Papa=require(_0x485d('0x12'));var Redis=require(_0x485d('0x13'));var authService=require(_0x485d('0x14'));var qs=require(_0x485d('0x15'));var as=require(_0x485d('0x16'));var hardwareService=require(_0x485d('0x17'));var logger=require(_0x485d('0x18'))(_0x485d('0x19'));var utils=require(_0x485d('0x1a'));var config=require(_0x485d('0x1b'));var licenseUtil=require('../../config/license/util');var db=require(_0x485d('0x1c'))['db'];function respondWithStatusCode(_0xd859f,_0x3dbaaf){_0x3dbaaf=_0x3dbaaf||0xcc;return function(_0x44ffef){if(_0x44ffef){return _0xd859f[_0x485d('0x1d')](_0x3dbaaf);}return _0xd859f['status'](_0x3dbaaf)[_0x485d('0x1e')]();};}function respondWithResult(_0x5b9e0d,_0x17d01a){_0x17d01a=_0x17d01a||0xc8;return function(_0xc82bf6){if(_0xc82bf6){return _0x5b9e0d['status'](_0x17d01a)['json'](_0xc82bf6);}};}function respondWithFilteredResult(_0xdc9abc,_0x4c7cae){return function(_0x288259){if(_0x288259){var _0x1532c2=typeof _0x4c7cae[_0x485d('0x1f')]===_0x485d('0x20')&&typeof _0x4c7cae[_0x485d('0x21')]===_0x485d('0x20');var _0x40b85d=_0x288259[_0x485d('0x22')];var _0x333bbd=_0x1532c2?0x0:_0x4c7cae[_0x485d('0x1f')];var _0x13684b=_0x1532c2?_0x288259[_0x485d('0x22')]:_0x4c7cae[_0x485d('0x1f')]+_0x4c7cae['limit'];var _0x14daed;if(_0x13684b>=_0x40b85d){_0x13684b=_0x40b85d;_0x14daed=0xc8;}else{_0x14daed=0xce;}_0xdc9abc[_0x485d('0x23')](_0x14daed);return _0xdc9abc[_0x485d('0x24')](_0x485d('0x25'),_0x333bbd+'-'+_0x13684b+'/'+_0x40b85d)['json'](_0x288259);}return null;};}function patchUpdates(_0x2069fa){return function(_0x4be5ae){try{jsonpatch[_0x485d('0x26')](_0x4be5ae,_0x2069fa,!![]);}catch(_0x52774d){return BPromise[_0x485d('0x27')](_0x52774d);}return _0x4be5ae[_0x485d('0x28')]();};}function saveUpdates(_0x56a765,_0x12dc64){return function(_0x2dd657){if(_0x2dd657){return _0x2dd657['update'](_0x56a765)['then'](function(_0x4fee58){return _0x4fee58;});}return null;};}function removeEntity(_0x51521c,_0x14f774){return function(_0x488e32){if(_0x488e32){return _0x488e32['destroy']()[_0x485d('0x29')](function(){_0x51521c[_0x485d('0x23')](0xcc)['end']();});}};}function handleEntityNotFound(_0x3aa612,_0x4a2ee0){return function(_0x4f2438){if(!_0x4f2438){_0x3aa612[_0x485d('0x1d')](0x194);}return _0x4f2438;};}function handleError(_0x43f28b,_0x4eb552){_0x4eb552=_0x4eb552||0x1f4;return function(_0x14e910){logger[_0x485d('0x2a')](_0x14e910[_0x485d('0x2b')]);if(_0x14e910['name']){delete _0x14e910['name'];}_0x43f28b[_0x485d('0x23')](_0x4eb552)[_0x485d('0x2c')](_0x14e910);};}exports[_0x485d('0x2d')]=function(_0x272959,_0x2c8445){var _0x3d6936={},_0x3dacb4={},_0x50a63b={'count':0x0,'rows':[]};var _0x33fdd9=_[_0x485d('0x2e')](db['VtigerField'][_0x485d('0x2f')],function(_0x193168){return{'name':_0x193168['fieldName'],'type':_0x193168['type'][_0x485d('0x30')]};});_0x3dacb4['model']=_[_0x485d('0x2e')](_0x33fdd9,'name');_0x3dacb4[_0x485d('0x31')]=_[_0x485d('0x32')](_0x272959[_0x485d('0x31')]);_0x3dacb4[_0x485d('0x33')]=_['intersection'](_0x3dacb4[_0x485d('0x34')],_0x3dacb4[_0x485d('0x31')]);_0x3d6936[_0x485d('0x35')]=_[_0x485d('0x36')](_0x3dacb4[_0x485d('0x34')],qs[_0x485d('0x37')](_0x272959[_0x485d('0x31')]['fields']));_0x3d6936['attributes']=_0x3d6936['attributes']['length']?_0x3d6936['attributes']:_0x3dacb4['model'];if(!_0x272959[_0x485d('0x31')][_0x485d('0x38')](_0x485d('0x39'))){_0x3d6936['limit']=qs[_0x485d('0x21')](_0x272959[_0x485d('0x31')][_0x485d('0x21')]);_0x3d6936['offset']=qs[_0x485d('0x1f')](_0x272959['query']['offset']);}_0x3d6936['order']=qs[_0x485d('0x3a')](_0x272959['query'][_0x485d('0x3a')]);_0x3d6936[_0x485d('0x3b')]=qs[_0x485d('0x33')](_[_0x485d('0x3c')](_0x272959['query'],_0x3dacb4[_0x485d('0x33')]),_0x33fdd9);if(_0x272959['query'][_0x485d('0x3d')]){_0x3d6936[_0x485d('0x3b')]=_[_0x485d('0x3e')](_0x3d6936[_0x485d('0x3b')],{'$or':_['map'](_0x33fdd9,function(_0x1f3ba5){if(_0x1f3ba5[_0x485d('0x3f')]!==_0x485d('0x40')){var _0x44e966={};_0x44e966[_0x1f3ba5[_0x485d('0x41')]]={'$like':'%'+_0x272959[_0x485d('0x31')][_0x485d('0x3d')]+'%'};return _0x44e966;}})});}_0x3d6936=_[_0x485d('0x3e')]({},_0x3d6936,_0x272959['options']);var _0x58c949={'where':_0x3d6936[_0x485d('0x3b')]};return db['VtigerField']['count'](_0x58c949)[_0x485d('0x29')](function(_0x53ce89){_0x50a63b[_0x485d('0x22')]=_0x53ce89;if(_0x272959[_0x485d('0x31')]['includeAll']){_0x3d6936['include']=[{'all':!![]}];}return db[_0x485d('0x42')]['findAll'](_0x3d6936);})[_0x485d('0x29')](function(_0xb221d){_0x50a63b[_0x485d('0x43')]=_0xb221d;return _0x50a63b;})[_0x485d('0x29')](respondWithFilteredResult(_0x2c8445,_0x3d6936))[_0x485d('0x44')](handleError(_0x2c8445,null));};exports[_0x485d('0x45')]=function(_0x1cd78c,_0x120374){var _0x30e054={'raw':!![],'where':{'id':_0x1cd78c[_0x485d('0x46')]['id']}},_0x24bb23={};_0x24bb23[_0x485d('0x34')]=_[_0x485d('0x32')](db['VtigerField'][_0x485d('0x2f')]);_0x24bb23[_0x485d('0x31')]=_[_0x485d('0x32')](_0x1cd78c[_0x485d('0x31')]);_0x24bb23[_0x485d('0x33')]=_[_0x485d('0x36')](_0x24bb23[_0x485d('0x34')],_0x24bb23[_0x485d('0x31')]);_0x30e054[_0x485d('0x35')]=_[_0x485d('0x36')](_0x24bb23[_0x485d('0x34')],qs[_0x485d('0x37')](_0x1cd78c[_0x485d('0x31')][_0x485d('0x37')]));_0x30e054[_0x485d('0x35')]=_0x30e054[_0x485d('0x35')]['length']?_0x30e054[_0x485d('0x35')]:_0x24bb23['model'];if(_0x1cd78c[_0x485d('0x31')]['includeAll']){_0x30e054['include']=[{'all':!![]}];}_0x30e054=_[_0x485d('0x3e')]({},_0x30e054,_0x1cd78c[_0x485d('0x47')]);return db[_0x485d('0x42')]['find'](_0x30e054)['then'](handleEntityNotFound(_0x120374,null))[_0x485d('0x29')](respondWithResult(_0x120374,null))[_0x485d('0x44')](handleError(_0x120374,null));};exports[_0x485d('0x48')]=function(_0x31b8ab,_0x5025b0){return db[_0x485d('0x42')][_0x485d('0x48')](_0x31b8ab[_0x485d('0x49')],{})[_0x485d('0x29')](respondWithResult(_0x5025b0,0xc9))[_0x485d('0x44')](handleError(_0x5025b0,null));};exports[_0x485d('0x4a')]=function(_0x7c1bb,_0x29d107){if(_0x7c1bb[_0x485d('0x49')]['id']){delete _0x7c1bb[_0x485d('0x49')]['id'];}return db['VtigerField'][_0x485d('0x4b')]({'where':{'id':_0x7c1bb['params']['id']}})[_0x485d('0x29')](handleEntityNotFound(_0x29d107,null))[_0x485d('0x29')](saveUpdates(_0x7c1bb['body'],null))[_0x485d('0x29')](respondWithResult(_0x29d107,null))[_0x485d('0x44')](handleError(_0x29d107,null));};exports[_0x485d('0x4c')]=function(_0x1a8ae6,_0x145ba2){return db[_0x485d('0x42')][_0x485d('0x4b')]({'where':{'id':_0x1a8ae6['params']['id']}})['then'](handleEntityNotFound(_0x145ba2,null))['then'](removeEntity(_0x145ba2,null))['catch'](handleError(_0x145ba2,null));};