Built motion from commit 1fa89557.|2.6.10
[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 _0x5dcd=['rows','catch','show','params','keys','rawAttributes','find','create','body','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','util','path','sox','to-csv','ejs','lodash','squel','crypto','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../config/license/hardware','../../config/logger','../../config/environment','../../mysqldb','status','json','offset','undefined','limit','count','set','Content-Range','apply','reject','save','update','then','destroy','end','sendStatus','error','name','send','map','VtigerField','fieldName','type','model','query','filters','intersection','fields','attributes','length','hasOwnProperty','order','sort','where','pick','filter','VIRTUAL','merge','options','includeAll','include','findAll'];(function(_0x43c394,_0x2d9e21){var _0x50f077=function(_0x386189){while(--_0x386189){_0x43c394['push'](_0x43c394['shift']());}};_0x50f077(++_0x2d9e21);}(_0x5dcd,0x9d));var _0xd5dc=function(_0x57327a,_0x3845ec){_0x57327a=_0x57327a-0x0;var _0xf68bfc=_0x5dcd[_0x57327a];return _0xf68bfc;};'use strict';var emlformat=require(_0xd5dc('0x0'));var rimraf=require(_0xd5dc('0x1'));var zipdir=require(_0xd5dc('0x2'));var jsonpatch=require(_0xd5dc('0x3'));var rp=require(_0xd5dc('0x4'));var moment=require(_0xd5dc('0x5'));var BPromise=require('bluebird');var Mustache=require('mustache');var util=require(_0xd5dc('0x6'));var path=require(_0xd5dc('0x7'));var sox=require(_0xd5dc('0x8'));var csv=require(_0xd5dc('0x9'));var ejs=require(_0xd5dc('0xa'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0xd5dc('0xb'));var squel=require(_0xd5dc('0xc'));var crypto=require(_0xd5dc('0xd'));var jsforce=require('jsforce');var deskjs=require(_0xd5dc('0xe'));var toCsv=require(_0xd5dc('0x9'));var querystring=require(_0xd5dc('0xf'));var Papa=require(_0xd5dc('0x10'));var Redis=require(_0xd5dc('0x11'));var authService=require(_0xd5dc('0x12'));var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0xd5dc('0x13'));var logger=require(_0xd5dc('0x14'))('api');var utils=require('../../config/utils');var config=require(_0xd5dc('0x15'));var licenseUtil=require('../../config/license/util');var db=require(_0xd5dc('0x16'))['db'];function respondWithStatusCode(_0x6cf8cc,_0x461977){_0x461977=_0x461977||0xcc;return function(_0x16f6e3){if(_0x16f6e3){return _0x6cf8cc['sendStatus'](_0x461977);}return _0x6cf8cc[_0xd5dc('0x17')](_0x461977)['end']();};}function respondWithResult(_0x3c6226,_0x3880e2){_0x3880e2=_0x3880e2||0xc8;return function(_0x51d876){if(_0x51d876){return _0x3c6226['status'](_0x3880e2)[_0xd5dc('0x18')](_0x51d876);}};}function respondWithFilteredResult(_0x4ac83c,_0x217cbe){return function(_0x8be03d){if(_0x8be03d){var _0x280859=typeof _0x217cbe[_0xd5dc('0x19')]===_0xd5dc('0x1a')&&typeof _0x217cbe[_0xd5dc('0x1b')]==='undefined';var _0x5ee6b1=_0x8be03d[_0xd5dc('0x1c')];var _0x33a9ca=_0x280859?0x0:_0x217cbe[_0xd5dc('0x19')];var _0x3ffc74=_0x280859?_0x8be03d['count']:_0x217cbe[_0xd5dc('0x19')]+_0x217cbe[_0xd5dc('0x1b')];var _0x287cca;if(_0x3ffc74>=_0x5ee6b1){_0x3ffc74=_0x5ee6b1;_0x287cca=0xc8;}else{_0x287cca=0xce;}_0x4ac83c[_0xd5dc('0x17')](_0x287cca);return _0x4ac83c[_0xd5dc('0x1d')](_0xd5dc('0x1e'),_0x33a9ca+'-'+_0x3ffc74+'/'+_0x5ee6b1)[_0xd5dc('0x18')](_0x8be03d);}return null;};}function patchUpdates(_0x3abfd4){return function(_0x2a029a){try{jsonpatch[_0xd5dc('0x1f')](_0x2a029a,_0x3abfd4,!![]);}catch(_0x39e289){return BPromise[_0xd5dc('0x20')](_0x39e289);}return _0x2a029a[_0xd5dc('0x21')]();};}function saveUpdates(_0x5ac0dc,_0x3e5e8b){return function(_0x4bae0b){if(_0x4bae0b){return _0x4bae0b[_0xd5dc('0x22')](_0x5ac0dc)[_0xd5dc('0x23')](function(_0xc1fc03){return _0xc1fc03;});}return null;};}function removeEntity(_0x5d1af2,_0x4f138f){return function(_0x449610){if(_0x449610){return _0x449610[_0xd5dc('0x24')]()[_0xd5dc('0x23')](function(){_0x5d1af2['status'](0xcc)[_0xd5dc('0x25')]();});}};}function handleEntityNotFound(_0x1b7f84,_0x18cf48){return function(_0x34c9c5){if(!_0x34c9c5){_0x1b7f84[_0xd5dc('0x26')](0x194);}return _0x34c9c5;};}function handleError(_0x55f569,_0x542f49){_0x542f49=_0x542f49||0x1f4;return function(_0x30723d){logger[_0xd5dc('0x27')](_0x30723d['stack']);if(_0x30723d[_0xd5dc('0x28')]){delete _0x30723d[_0xd5dc('0x28')];}_0x55f569[_0xd5dc('0x17')](_0x542f49)[_0xd5dc('0x29')](_0x30723d);};}exports['index']=function(_0x40c866,_0x1eb974){var _0xe97ace={},_0x2b438a={},_0x3330e3={'count':0x0,'rows':[]};var _0x2dcf07=_[_0xd5dc('0x2a')](db[_0xd5dc('0x2b')]['rawAttributes'],function(_0x2ec710){return{'name':_0x2ec710[_0xd5dc('0x2c')],'type':_0x2ec710[_0xd5dc('0x2d')]['key']};});_0x2b438a[_0xd5dc('0x2e')]=_['map'](_0x2dcf07,_0xd5dc('0x28'));_0x2b438a[_0xd5dc('0x2f')]=_['keys'](_0x40c866['query']);_0x2b438a[_0xd5dc('0x30')]=_[_0xd5dc('0x31')](_0x2b438a[_0xd5dc('0x2e')],_0x2b438a[_0xd5dc('0x2f')]);_0xe97ace['attributes']=_[_0xd5dc('0x31')](_0x2b438a[_0xd5dc('0x2e')],qs[_0xd5dc('0x32')](_0x40c866['query'][_0xd5dc('0x32')]));_0xe97ace[_0xd5dc('0x33')]=_0xe97ace['attributes'][_0xd5dc('0x34')]?_0xe97ace[_0xd5dc('0x33')]:_0x2b438a[_0xd5dc('0x2e')];if(!_0x40c866['query'][_0xd5dc('0x35')]('nolimit')){_0xe97ace['limit']=qs[_0xd5dc('0x1b')](_0x40c866[_0xd5dc('0x2f')][_0xd5dc('0x1b')]);_0xe97ace['offset']=qs[_0xd5dc('0x19')](_0x40c866[_0xd5dc('0x2f')][_0xd5dc('0x19')]);}_0xe97ace[_0xd5dc('0x36')]=qs[_0xd5dc('0x37')](_0x40c866[_0xd5dc('0x2f')][_0xd5dc('0x37')]);_0xe97ace[_0xd5dc('0x38')]=qs['filters'](_[_0xd5dc('0x39')](_0x40c866[_0xd5dc('0x2f')],_0x2b438a[_0xd5dc('0x30')]),_0x2dcf07);if(_0x40c866[_0xd5dc('0x2f')][_0xd5dc('0x3a')]){_0xe97ace[_0xd5dc('0x38')]=_['merge'](_0xe97ace[_0xd5dc('0x38')],{'$or':_['map'](_0x2dcf07,function(_0x33089f){if(_0x33089f[_0xd5dc('0x2d')]!==_0xd5dc('0x3b')){var _0x2148c3={};_0x2148c3[_0x33089f[_0xd5dc('0x28')]]={'$like':'%'+_0x40c866[_0xd5dc('0x2f')]['filter']+'%'};return _0x2148c3;}})});}_0xe97ace=_[_0xd5dc('0x3c')]({},_0xe97ace,_0x40c866[_0xd5dc('0x3d')]);var _0x1b536e={'where':_0xe97ace[_0xd5dc('0x38')]};return db[_0xd5dc('0x2b')][_0xd5dc('0x1c')](_0x1b536e)[_0xd5dc('0x23')](function(_0xdc9972){_0x3330e3[_0xd5dc('0x1c')]=_0xdc9972;if(_0x40c866[_0xd5dc('0x2f')][_0xd5dc('0x3e')]){_0xe97ace[_0xd5dc('0x3f')]=[{'all':!![]}];}return db[_0xd5dc('0x2b')][_0xd5dc('0x40')](_0xe97ace);})[_0xd5dc('0x23')](function(_0x1f1fca){_0x3330e3[_0xd5dc('0x41')]=_0x1f1fca;return _0x3330e3;})[_0xd5dc('0x23')](respondWithFilteredResult(_0x1eb974,_0xe97ace))[_0xd5dc('0x42')](handleError(_0x1eb974,null));};exports[_0xd5dc('0x43')]=function(_0x5bef57,_0x5344cf){var _0x567bb6={'raw':!![],'where':{'id':_0x5bef57[_0xd5dc('0x44')]['id']}},_0x390088={};_0x390088[_0xd5dc('0x2e')]=_[_0xd5dc('0x45')](db[_0xd5dc('0x2b')][_0xd5dc('0x46')]);_0x390088['query']=_['keys'](_0x5bef57[_0xd5dc('0x2f')]);_0x390088[_0xd5dc('0x30')]=_[_0xd5dc('0x31')](_0x390088[_0xd5dc('0x2e')],_0x390088['query']);_0x567bb6[_0xd5dc('0x33')]=_['intersection'](_0x390088[_0xd5dc('0x2e')],qs[_0xd5dc('0x32')](_0x5bef57['query'][_0xd5dc('0x32')]));_0x567bb6[_0xd5dc('0x33')]=_0x567bb6[_0xd5dc('0x33')][_0xd5dc('0x34')]?_0x567bb6[_0xd5dc('0x33')]:_0x390088['model'];if(_0x5bef57[_0xd5dc('0x2f')][_0xd5dc('0x3e')]){_0x567bb6[_0xd5dc('0x3f')]=[{'all':!![]}];}_0x567bb6=_[_0xd5dc('0x3c')]({},_0x567bb6,_0x5bef57[_0xd5dc('0x3d')]);return db[_0xd5dc('0x2b')][_0xd5dc('0x47')](_0x567bb6)[_0xd5dc('0x23')](handleEntityNotFound(_0x5344cf,null))[_0xd5dc('0x23')](respondWithResult(_0x5344cf,null))[_0xd5dc('0x42')](handleError(_0x5344cf,null));};exports[_0xd5dc('0x48')]=function(_0x4f2aac,_0x32ebf6){return db['VtigerField'][_0xd5dc('0x48')](_0x4f2aac[_0xd5dc('0x49')],{})[_0xd5dc('0x23')](respondWithResult(_0x32ebf6,0xc9))[_0xd5dc('0x42')](handleError(_0x32ebf6,null));};exports[_0xd5dc('0x22')]=function(_0xdf1e06,_0x284e18){if(_0xdf1e06[_0xd5dc('0x49')]['id']){delete _0xdf1e06['body']['id'];}return db['VtigerField'][_0xd5dc('0x47')]({'where':{'id':_0xdf1e06[_0xd5dc('0x44')]['id']}})['then'](handleEntityNotFound(_0x284e18,null))[_0xd5dc('0x23')](saveUpdates(_0xdf1e06[_0xd5dc('0x49')],null))[_0xd5dc('0x23')](respondWithResult(_0x284e18,null))[_0xd5dc('0x42')](handleError(_0x284e18,null));};exports[_0xd5dc('0x24')]=function(_0x307f5f,_0x1d9e53){return db[_0xd5dc('0x2b')][_0xd5dc('0x47')]({'where':{'id':_0x307f5f['params']['id']}})[_0xd5dc('0x23')](handleEntityNotFound(_0x1d9e53,null))[_0xd5dc('0x23')](removeEntity(_0x1d9e53,null))[_0xd5dc('0x42')](handleError(_0x1d9e53,null));};