589c6e52e313b2f566115944e741e98f4d88941e
[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 _0x6582=['destroy','then','end','error','stack','name','send','index','map','ZohoField','rawAttributes','fieldName','type','key','model','query','keys','filters','intersection','attributes','fields','length','hasOwnProperty','sort','pick','filter','where','VIRTUAL','options','includeAll','include','findAll','rows','show','params','create','catch','body','find','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','bluebird','mustache','util','ejs','fs-extra','lodash','squel','crypto','jsforce','to-csv','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/license/util','../../mysqldb','sendStatus','status','json','undefined','limit','count','offset','set','Content-Range','update'];(function(_0x334841,_0x2bbc4c){var _0x5beb4b=function(_0x4bea72){while(--_0x4bea72){_0x334841['push'](_0x334841['shift']());}};_0x5beb4b(++_0x2bbc4c);}(_0x6582,0x108));var _0x2658=function(_0x10d4b2,_0x52fb84){_0x10d4b2=_0x10d4b2-0x0;var _0x3fc805=_0x6582[_0x10d4b2];return _0x3fc805;};'use strict';var emlformat=require(_0x2658('0x0'));var rimraf=require(_0x2658('0x1'));var zipdir=require(_0x2658('0x2'));var jsonpatch=require(_0x2658('0x3'));var rp=require(_0x2658('0x4'));var moment=require('moment');var BPromise=require(_0x2658('0x5'));var Mustache=require(_0x2658('0x6'));var util=require(_0x2658('0x7'));var path=require('path');var sox=require('sox');var csv=require('to-csv');var ejs=require(_0x2658('0x8'));var fs=require('fs');var fs_extra=require(_0x2658('0x9'));var _=require(_0x2658('0xa'));var squel=require(_0x2658('0xb'));var crypto=require(_0x2658('0xc'));var jsforce=require(_0x2658('0xd'));var deskjs=require('desk.js');var toCsv=require(_0x2658('0xe'));var querystring=require(_0x2658('0xf'));var Papa=require(_0x2658('0x10'));var Redis=require(_0x2658('0x11'));var authService=require(_0x2658('0x12'));var qs=require(_0x2658('0x13'));var as=require(_0x2658('0x14'));var hardwareService=require(_0x2658('0x15'));var logger=require(_0x2658('0x16'))('api');var utils=require(_0x2658('0x17'));var config=require('../../config/environment');var licenseUtil=require(_0x2658('0x18'));var db=require(_0x2658('0x19'))['db'];function respondWithStatusCode(_0x263852,_0x40d73a){_0x40d73a=_0x40d73a||0xcc;return function(_0x3f4bd0){if(_0x3f4bd0){return _0x263852[_0x2658('0x1a')](_0x40d73a);}return _0x263852[_0x2658('0x1b')](_0x40d73a)['end']();};}function respondWithResult(_0x201d2d,_0x38469c){_0x38469c=_0x38469c||0xc8;return function(_0x2187bd){if(_0x2187bd){return _0x201d2d[_0x2658('0x1b')](_0x38469c)[_0x2658('0x1c')](_0x2187bd);}};}function respondWithFilteredResult(_0x59013b,_0x2fc995){return function(_0x5d8ed5){if(_0x5d8ed5){var _0x15bd54=typeof _0x2fc995['offset']===_0x2658('0x1d')&&typeof _0x2fc995[_0x2658('0x1e')]===_0x2658('0x1d');var _0x215211=_0x5d8ed5['count'];var _0x4eb90d=_0x15bd54?0x0:_0x2fc995['offset'];var _0xf4193a=_0x15bd54?_0x5d8ed5[_0x2658('0x1f')]:_0x2fc995[_0x2658('0x20')]+_0x2fc995[_0x2658('0x1e')];var _0x5f4aa9;if(_0xf4193a>=_0x215211){_0xf4193a=_0x215211;_0x5f4aa9=0xc8;}else{_0x5f4aa9=0xce;}_0x59013b[_0x2658('0x1b')](_0x5f4aa9);return _0x59013b[_0x2658('0x21')](_0x2658('0x22'),_0x4eb90d+'-'+_0xf4193a+'/'+_0x215211)[_0x2658('0x1c')](_0x5d8ed5);}return null;};}function patchUpdates(_0x23cf70){return function(_0x386294){try{jsonpatch['apply'](_0x386294,_0x23cf70,!![]);}catch(_0x29ccc0){return BPromise['reject'](_0x29ccc0);}return _0x386294['save']();};}function saveUpdates(_0xf71c18,_0x132000){return function(_0x499ca6){if(_0x499ca6){return _0x499ca6[_0x2658('0x23')](_0xf71c18)['then'](function(_0x19e89b){return _0x19e89b;});}return null;};}function removeEntity(_0x137e9a,_0x44642e){return function(_0x2e6d6a){if(_0x2e6d6a){return _0x2e6d6a[_0x2658('0x24')]()[_0x2658('0x25')](function(){_0x137e9a[_0x2658('0x1b')](0xcc)[_0x2658('0x26')]();});}};}function handleEntityNotFound(_0x2496bf,_0x43b6c0){return function(_0x566cec){if(!_0x566cec){_0x2496bf[_0x2658('0x1a')](0x194);}return _0x566cec;};}function handleError(_0x4676a4,_0x338f06){_0x338f06=_0x338f06||0x1f4;return function(_0x3d251e){logger[_0x2658('0x27')](_0x3d251e[_0x2658('0x28')]);if(_0x3d251e['name']){delete _0x3d251e[_0x2658('0x29')];}_0x4676a4[_0x2658('0x1b')](_0x338f06)[_0x2658('0x2a')](_0x3d251e);};}exports[_0x2658('0x2b')]=function(_0x27e0f5,_0x1492cb){var _0x256172={},_0xb8d245={},_0xd891fe={'count':0x0,'rows':[]};var _0x14784=_[_0x2658('0x2c')](db[_0x2658('0x2d')][_0x2658('0x2e')],function(_0x3e0322){return{'name':_0x3e0322[_0x2658('0x2f')],'type':_0x3e0322[_0x2658('0x30')][_0x2658('0x31')]};});_0xb8d245[_0x2658('0x32')]=_['map'](_0x14784,_0x2658('0x29'));_0xb8d245[_0x2658('0x33')]=_[_0x2658('0x34')](_0x27e0f5['query']);_0xb8d245[_0x2658('0x35')]=_[_0x2658('0x36')](_0xb8d245[_0x2658('0x32')],_0xb8d245['query']);_0x256172[_0x2658('0x37')]=_[_0x2658('0x36')](_0xb8d245[_0x2658('0x32')],qs[_0x2658('0x38')](_0x27e0f5[_0x2658('0x33')][_0x2658('0x38')]));_0x256172[_0x2658('0x37')]=_0x256172[_0x2658('0x37')][_0x2658('0x39')]?_0x256172['attributes']:_0xb8d245[_0x2658('0x32')];if(!_0x27e0f5[_0x2658('0x33')][_0x2658('0x3a')]('nolimit')){_0x256172['limit']=qs['limit'](_0x27e0f5[_0x2658('0x33')][_0x2658('0x1e')]);_0x256172[_0x2658('0x20')]=qs[_0x2658('0x20')](_0x27e0f5[_0x2658('0x33')][_0x2658('0x20')]);}_0x256172['order']=qs[_0x2658('0x3b')](_0x27e0f5[_0x2658('0x33')][_0x2658('0x3b')]);_0x256172['where']=qs[_0x2658('0x35')](_[_0x2658('0x3c')](_0x27e0f5[_0x2658('0x33')],_0xb8d245[_0x2658('0x35')]),_0x14784);if(_0x27e0f5['query'][_0x2658('0x3d')]){_0x256172[_0x2658('0x3e')]=_['merge'](_0x256172['where'],{'$or':_['map'](_0x14784,function(_0x4fb397){if(_0x4fb397[_0x2658('0x30')]!==_0x2658('0x3f')){var _0x370026={};_0x370026[_0x4fb397['name']]={'$like':'%'+_0x27e0f5[_0x2658('0x33')]['filter']+'%'};return _0x370026;}})});}_0x256172=_['merge']({},_0x256172,_0x27e0f5[_0x2658('0x40')]);var _0x433762={'where':_0x256172[_0x2658('0x3e')]};return db['ZohoField']['count'](_0x433762)['then'](function(_0x5e5c59){_0xd891fe[_0x2658('0x1f')]=_0x5e5c59;if(_0x27e0f5[_0x2658('0x33')][_0x2658('0x41')]){_0x256172[_0x2658('0x42')]=[{'all':!![]}];}return db['ZohoField'][_0x2658('0x43')](_0x256172);})[_0x2658('0x25')](function(_0x2b0dad){_0xd891fe[_0x2658('0x44')]=_0x2b0dad;return _0xd891fe;})[_0x2658('0x25')](respondWithFilteredResult(_0x1492cb,_0x256172))['catch'](handleError(_0x1492cb,null));};exports[_0x2658('0x45')]=function(_0x3152c0,_0x3eec7f){var _0x24e8dc={'raw':!![],'where':{'id':_0x3152c0[_0x2658('0x46')]['id']}},_0x120b41={};_0x120b41[_0x2658('0x32')]=_[_0x2658('0x34')](db[_0x2658('0x2d')][_0x2658('0x2e')]);_0x120b41[_0x2658('0x33')]=_[_0x2658('0x34')](_0x3152c0['query']);_0x120b41['filters']=_[_0x2658('0x36')](_0x120b41[_0x2658('0x32')],_0x120b41[_0x2658('0x33')]);_0x24e8dc['attributes']=_[_0x2658('0x36')](_0x120b41[_0x2658('0x32')],qs[_0x2658('0x38')](_0x3152c0[_0x2658('0x33')]['fields']));_0x24e8dc[_0x2658('0x37')]=_0x24e8dc[_0x2658('0x37')][_0x2658('0x39')]?_0x24e8dc[_0x2658('0x37')]:_0x120b41[_0x2658('0x32')];if(_0x3152c0[_0x2658('0x33')]['includeAll']){_0x24e8dc[_0x2658('0x42')]=[{'all':!![]}];}_0x24e8dc=_['merge']({},_0x24e8dc,_0x3152c0[_0x2658('0x40')]);return db[_0x2658('0x2d')]['find'](_0x24e8dc)[_0x2658('0x25')](handleEntityNotFound(_0x3eec7f,null))[_0x2658('0x25')](respondWithResult(_0x3eec7f,null))['catch'](handleError(_0x3eec7f,null));};exports[_0x2658('0x47')]=function(_0x14f5ac,_0xa41595){return db[_0x2658('0x2d')][_0x2658('0x47')](_0x14f5ac['body'],{})[_0x2658('0x25')](respondWithResult(_0xa41595,0xc9))[_0x2658('0x48')](handleError(_0xa41595,null));};exports['update']=function(_0x1fc2dd,_0x415586){if(_0x1fc2dd[_0x2658('0x49')]['id']){delete _0x1fc2dd[_0x2658('0x49')]['id'];}return db['ZohoField'][_0x2658('0x4a')]({'where':{'id':_0x1fc2dd[_0x2658('0x46')]['id']}})[_0x2658('0x25')](handleEntityNotFound(_0x415586,null))[_0x2658('0x25')](saveUpdates(_0x1fc2dd[_0x2658('0x49')],null))[_0x2658('0x25')](respondWithResult(_0x415586,null))[_0x2658('0x48')](handleError(_0x415586,null));};exports['destroy']=function(_0xa61cf1,_0x4cd936){return db[_0x2658('0x2d')]['find']({'where':{'id':_0xa61cf1[_0x2658('0x46')]['id']}})[_0x2658('0x25')](handleEntityNotFound(_0x4cd936,null))[_0x2658('0x25')](removeEntity(_0x4cd936,null))[_0x2658('0x48')](handleError(_0x4cd936,null));};