Built motion from commit 3c2ce842.|2.6.31
[motion2.git] / server / api / intZohoField / intZohoField.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 _0x3ffd=['params','length','create','body','eml-format','zip-dir','util','path','ejs','lodash','squel','crypto','desk.js','to-csv','querystring','papaparse','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/utils','../../config/environment','../../config/license/util','../../mysqldb','status','end','json','count','offset','Content-Range','apply','update','then','error','stack','name','send','index','map','ZohoField','fieldName','type','key','model','query','keys','filters','intersection','attributes','fields','hasOwnProperty','limit','order','sort','pick','where','VIRTUAL','filter','merge','options','includeAll','include','catch','show'];(function(_0xb7cb72,_0x19d391){var _0x4b7570=function(_0x5a4a93){while(--_0x5a4a93){_0xb7cb72['push'](_0xb7cb72['shift']());}};_0x4b7570(++_0x19d391);}(_0x3ffd,0x84));var _0xd3ff=function(_0x3fb9dd,_0x174fff){_0x3fb9dd=_0x3fb9dd-0x0;var _0x20136a=_0x3ffd[_0x3fb9dd];return _0x20136a;};'use strict';var emlformat=require(_0xd3ff('0x0'));var rimraf=require('rimraf');var zipdir=require(_0xd3ff('0x1'));var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require('moment');var BPromise=require('bluebird');var Mustache=require('mustache');var util=require(_0xd3ff('0x2'));var path=require(_0xd3ff('0x3'));var sox=require('sox');var csv=require('to-csv');var ejs=require(_0xd3ff('0x4'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0xd3ff('0x5'));var squel=require(_0xd3ff('0x6'));var crypto=require(_0xd3ff('0x7'));var jsforce=require('jsforce');var deskjs=require(_0xd3ff('0x8'));var toCsv=require(_0xd3ff('0x9'));var querystring=require(_0xd3ff('0xa'));var Papa=require(_0xd3ff('0xb'));var Redis=require('ioredis');var authService=require(_0xd3ff('0xc'));var qs=require(_0xd3ff('0xd'));var as=require(_0xd3ff('0xe'));var hardwareService=require(_0xd3ff('0xf'));var logger=require('../../config/logger')('api');var utils=require(_0xd3ff('0x10'));var config=require(_0xd3ff('0x11'));var licenseUtil=require(_0xd3ff('0x12'));var db=require(_0xd3ff('0x13'))['db'];function respondWithStatusCode(_0x56e8b4,_0x10b5d9){_0x10b5d9=_0x10b5d9||0xcc;return function(_0x5da232){if(_0x5da232){return _0x56e8b4['sendStatus'](_0x10b5d9);}return _0x56e8b4[_0xd3ff('0x14')](_0x10b5d9)[_0xd3ff('0x15')]();};}function respondWithResult(_0x450596,_0x4c9104){_0x4c9104=_0x4c9104||0xc8;return function(_0x5a8c0f){if(_0x5a8c0f){return _0x450596[_0xd3ff('0x14')](_0x4c9104)[_0xd3ff('0x16')](_0x5a8c0f);}};}function respondWithFilteredResult(_0x3a55f4,_0x4cff73){return function(_0x246b98){if(_0x246b98){var _0x31f439=typeof _0x4cff73['offset']==='undefined'&&typeof _0x4cff73['limit']==='undefined';var _0x34ddd9=_0x246b98[_0xd3ff('0x17')];var _0x49b2e4=_0x31f439?0x0:_0x4cff73[_0xd3ff('0x18')];var _0x575446=_0x31f439?_0x246b98['count']:_0x4cff73[_0xd3ff('0x18')]+_0x4cff73['limit'];var _0x91025e;if(_0x575446>=_0x34ddd9){_0x575446=_0x34ddd9;_0x91025e=0xc8;}else{_0x91025e=0xce;}_0x3a55f4[_0xd3ff('0x14')](_0x91025e);return _0x3a55f4['set'](_0xd3ff('0x19'),_0x49b2e4+'-'+_0x575446+'/'+_0x34ddd9)['json'](_0x246b98);}return null;};}function patchUpdates(_0x4ca087){return function(_0x48e37d){try{jsonpatch[_0xd3ff('0x1a')](_0x48e37d,_0x4ca087,!![]);}catch(_0x1ceec9){return BPromise['reject'](_0x1ceec9);}return _0x48e37d['save']();};}function saveUpdates(_0x39ba4d,_0x5597e6){return function(_0x2f7acf){if(_0x2f7acf){return _0x2f7acf[_0xd3ff('0x1b')](_0x39ba4d)[_0xd3ff('0x1c')](function(_0x2bebc8){return _0x2bebc8;});}return null;};}function removeEntity(_0x84065d,_0x2c445e){return function(_0x28097f){if(_0x28097f){return _0x28097f['destroy']()[_0xd3ff('0x1c')](function(){_0x84065d[_0xd3ff('0x14')](0xcc)[_0xd3ff('0x15')]();});}};}function handleEntityNotFound(_0xd6fdfb,_0x17a53f){return function(_0x5d9b6e){if(!_0x5d9b6e){_0xd6fdfb['sendStatus'](0x194);}return _0x5d9b6e;};}function handleError(_0x5bb0b3,_0x4cd994){_0x4cd994=_0x4cd994||0x1f4;return function(_0x117c6a){logger[_0xd3ff('0x1d')](_0x117c6a[_0xd3ff('0x1e')]);if(_0x117c6a[_0xd3ff('0x1f')]){delete _0x117c6a[_0xd3ff('0x1f')];}_0x5bb0b3[_0xd3ff('0x14')](_0x4cd994)[_0xd3ff('0x20')](_0x117c6a);};}exports[_0xd3ff('0x21')]=function(_0x4decc6,_0x24c5f8){var _0x3fb4f0={},_0x3e2b70={},_0x1a4d92={'count':0x0,'rows':[]};var _0x78ea6e=_[_0xd3ff('0x22')](db[_0xd3ff('0x23')]['rawAttributes'],function(_0x22c6fa){return{'name':_0x22c6fa[_0xd3ff('0x24')],'type':_0x22c6fa[_0xd3ff('0x25')][_0xd3ff('0x26')]};});_0x3e2b70[_0xd3ff('0x27')]=_[_0xd3ff('0x22')](_0x78ea6e,_0xd3ff('0x1f'));_0x3e2b70[_0xd3ff('0x28')]=_[_0xd3ff('0x29')](_0x4decc6['query']);_0x3e2b70[_0xd3ff('0x2a')]=_[_0xd3ff('0x2b')](_0x3e2b70[_0xd3ff('0x27')],_0x3e2b70[_0xd3ff('0x28')]);_0x3fb4f0[_0xd3ff('0x2c')]=_[_0xd3ff('0x2b')](_0x3e2b70['model'],qs[_0xd3ff('0x2d')](_0x4decc6[_0xd3ff('0x28')][_0xd3ff('0x2d')]));_0x3fb4f0[_0xd3ff('0x2c')]=_0x3fb4f0[_0xd3ff('0x2c')]['length']?_0x3fb4f0[_0xd3ff('0x2c')]:_0x3e2b70['model'];if(!_0x4decc6[_0xd3ff('0x28')][_0xd3ff('0x2e')]('nolimit')){_0x3fb4f0[_0xd3ff('0x2f')]=qs[_0xd3ff('0x2f')](_0x4decc6[_0xd3ff('0x28')][_0xd3ff('0x2f')]);_0x3fb4f0[_0xd3ff('0x18')]=qs[_0xd3ff('0x18')](_0x4decc6['query'][_0xd3ff('0x18')]);}_0x3fb4f0[_0xd3ff('0x30')]=qs[_0xd3ff('0x31')](_0x4decc6['query']['sort']);_0x3fb4f0['where']=qs[_0xd3ff('0x2a')](_[_0xd3ff('0x32')](_0x4decc6[_0xd3ff('0x28')],_0x3e2b70[_0xd3ff('0x2a')]),_0x78ea6e);if(_0x4decc6[_0xd3ff('0x28')]['filter']){_0x3fb4f0[_0xd3ff('0x33')]=_['merge'](_0x3fb4f0['where'],{'$or':_['map'](_0x78ea6e,function(_0x229a85){if(_0x229a85['type']!==_0xd3ff('0x34')){var _0x2ae76b={};_0x2ae76b[_0x229a85[_0xd3ff('0x1f')]]={'$like':'%'+_0x4decc6['query'][_0xd3ff('0x35')]+'%'};return _0x2ae76b;}})});}_0x3fb4f0=_[_0xd3ff('0x36')]({},_0x3fb4f0,_0x4decc6[_0xd3ff('0x37')]);var _0x1a68f7={'where':_0x3fb4f0[_0xd3ff('0x33')]};return db[_0xd3ff('0x23')][_0xd3ff('0x17')](_0x1a68f7)[_0xd3ff('0x1c')](function(_0x2c6c5f){_0x1a4d92[_0xd3ff('0x17')]=_0x2c6c5f;if(_0x4decc6[_0xd3ff('0x28')][_0xd3ff('0x38')]){_0x3fb4f0[_0xd3ff('0x39')]=[{'all':!![]}];}return db[_0xd3ff('0x23')]['findAll'](_0x3fb4f0);})[_0xd3ff('0x1c')](function(_0xf6757d){_0x1a4d92['rows']=_0xf6757d;return _0x1a4d92;})[_0xd3ff('0x1c')](respondWithFilteredResult(_0x24c5f8,_0x3fb4f0))[_0xd3ff('0x3a')](handleError(_0x24c5f8,null));};exports[_0xd3ff('0x3b')]=function(_0xa9281f,_0x4c34b0){var _0x28e605={'raw':!![],'where':{'id':_0xa9281f[_0xd3ff('0x3c')]['id']}},_0x187fd2={};_0x187fd2[_0xd3ff('0x27')]=_['keys'](db[_0xd3ff('0x23')]['rawAttributes']);_0x187fd2['query']=_[_0xd3ff('0x29')](_0xa9281f[_0xd3ff('0x28')]);_0x187fd2[_0xd3ff('0x2a')]=_[_0xd3ff('0x2b')](_0x187fd2[_0xd3ff('0x27')],_0x187fd2[_0xd3ff('0x28')]);_0x28e605['attributes']=_[_0xd3ff('0x2b')](_0x187fd2['model'],qs[_0xd3ff('0x2d')](_0xa9281f[_0xd3ff('0x28')][_0xd3ff('0x2d')]));_0x28e605[_0xd3ff('0x2c')]=_0x28e605[_0xd3ff('0x2c')][_0xd3ff('0x3d')]?_0x28e605[_0xd3ff('0x2c')]:_0x187fd2[_0xd3ff('0x27')];if(_0xa9281f[_0xd3ff('0x28')][_0xd3ff('0x38')]){_0x28e605[_0xd3ff('0x39')]=[{'all':!![]}];}_0x28e605=_['merge']({},_0x28e605,_0xa9281f['options']);return db[_0xd3ff('0x23')]['find'](_0x28e605)[_0xd3ff('0x1c')](handleEntityNotFound(_0x4c34b0,null))[_0xd3ff('0x1c')](respondWithResult(_0x4c34b0,null))[_0xd3ff('0x3a')](handleError(_0x4c34b0,null));};exports[_0xd3ff('0x3e')]=function(_0xbe1225,_0x331f62){return db[_0xd3ff('0x23')]['create'](_0xbe1225[_0xd3ff('0x3f')],{})[_0xd3ff('0x1c')](respondWithResult(_0x331f62,0xc9))['catch'](handleError(_0x331f62,null));};exports[_0xd3ff('0x1b')]=function(_0x18a2d8,_0x45bd12){if(_0x18a2d8[_0xd3ff('0x3f')]['id']){delete _0x18a2d8[_0xd3ff('0x3f')]['id'];}return db[_0xd3ff('0x23')]['find']({'where':{'id':_0x18a2d8[_0xd3ff('0x3c')]['id']}})['then'](handleEntityNotFound(_0x45bd12,null))[_0xd3ff('0x1c')](saveUpdates(_0x18a2d8[_0xd3ff('0x3f')],null))[_0xd3ff('0x1c')](respondWithResult(_0x45bd12,null))[_0xd3ff('0x3a')](handleError(_0x45bd12,null));};exports['destroy']=function(_0x3abad8,_0x25e59a){return db[_0xd3ff('0x23')]['find']({'where':{'id':_0x3abad8[_0xd3ff('0x3c')]['id']}})['then'](handleEntityNotFound(_0x25e59a,null))[_0xd3ff('0x1c')](removeEntity(_0x25e59a,null))[_0xd3ff('0x3a')](handleError(_0x25e59a,null));};