44193958ca22778fc3e7b14f11a9e6b35c875987
[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 _0xdeca=['count','offset','set','Content-Range','apply','reject','save','update','then','destroy','error','stack','send','map','ZohoField','rawAttributes','type','key','model','name','query','intersection','attributes','length','hasOwnProperty','nolimit','limit','order','sort','where','pick','filters','merge','VIRTUAL','filter','options','includeAll','include','findAll','rows','catch','show','params','keys','fields','find','create','body','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','to-csv','ejs','lodash','squel','jsforce','querystring','papaparse','ioredis','../../components/auth/service','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','sendStatus','status','end','json'];(function(_0x26c7c8,_0x1bbfff){var _0x47ffa9=function(_0x568d94){while(--_0x568d94){_0x26c7c8['push'](_0x26c7c8['shift']());}};_0x47ffa9(++_0x1bbfff);}(_0xdeca,0x164));var _0xadec=function(_0x6f9c8d,_0x24544a){_0x6f9c8d=_0x6f9c8d-0x0;var _0x2773e0=_0xdeca[_0x6f9c8d];return _0x2773e0;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0xadec('0x0'));var rimraf=require(_0xadec('0x1'));var zipdir=require(_0xadec('0x2'));var jsonpatch=require(_0xadec('0x3'));var rp=require(_0xadec('0x4'));var moment=require(_0xadec('0x5'));var BPromise=require(_0xadec('0x6'));var Mustache=require(_0xadec('0x7'));var util=require(_0xadec('0x8'));var path=require(_0xadec('0x9'));var sox=require(_0xadec('0xa'));var csv=require(_0xadec('0xb'));var ejs=require(_0xadec('0xc'));var fs=require('fs');var _=require(_0xadec('0xd'));var squel=require(_0xadec('0xe'));var crypto=require('crypto');var jsforce=require(_0xadec('0xf'));var deskjs=require('desk.js');var toCsv=require(_0xadec('0xb'));var querystring=require(_0xadec('0x10'));var Papa=require(_0xadec('0x11'));var Redis=require(_0xadec('0x12'));var authService=require(_0xadec('0x13'));var qs=require('../../components/parsers/qs');var as=require('../../components/parsers/advancedSearch');var hardwareService=require('../../config/license/hardware');var logger=require(_0xadec('0x14'))(_0xadec('0x15'));var utils=require(_0xadec('0x16'));var config=require(_0xadec('0x17'));var licenseUtil=require(_0xadec('0x18'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x5d42c5,_0x819418){_0x819418=_0x819418||0xcc;return function(_0x11f13a){if(_0x11f13a){return _0x5d42c5[_0xadec('0x19')](_0x819418);}return _0x5d42c5[_0xadec('0x1a')](_0x819418)[_0xadec('0x1b')]();};}function respondWithResult(_0x28c2ec,_0x14200c){_0x14200c=_0x14200c||0xc8;return function(_0xce0215){if(_0xce0215){return _0x28c2ec['status'](_0x14200c)[_0xadec('0x1c')](_0xce0215);}};}function respondWithFilteredResult(_0x50a961,_0x157f43){return function(_0xb8435d){if(_0xb8435d){var _0x45029b=_0xb8435d[_0xadec('0x1d')],_0x51c8a3=_0x157f43[_0xadec('0x1e')],_0x5d782b=_0x157f43[_0xadec('0x1e')]+_0x157f43['limit'],_0x1c6dd7;if(_0x5d782b>=_0x45029b){_0x5d782b=_0x45029b;_0x1c6dd7=0xc8;}else{_0x1c6dd7=0xce;}_0x50a961[_0xadec('0x1a')](_0x1c6dd7);return _0x50a961[_0xadec('0x1f')](_0xadec('0x20'),_0x51c8a3+'-'+_0x5d782b+'/'+_0x45029b)[_0xadec('0x1c')](_0xb8435d);}return null;};}function patchUpdates(_0x3b40d5){return function(_0x242056){try{jsonpatch[_0xadec('0x21')](_0x242056,_0x3b40d5,!![]);}catch(_0x3f64c3){return BPromise[_0xadec('0x22')](_0x3f64c3);}return _0x242056[_0xadec('0x23')]();};}function saveUpdates(_0xd4a2b0,_0x81846e){return function(_0x8f88b1){if(_0x8f88b1){return _0x8f88b1[_0xadec('0x24')](_0xd4a2b0)[_0xadec('0x25')](function(_0x75a3f1){return _0x75a3f1;});}return null;};}function removeEntity(_0x54fc91,_0x1e5fc8){return function(_0x59837d){if(_0x59837d){return _0x59837d[_0xadec('0x26')]()[_0xadec('0x25')](function(){_0x54fc91['status'](0xcc)[_0xadec('0x1b')]();});}};}function handleEntityNotFound(_0x5d44d2,_0x2821b7){return function(_0xc63851){if(!_0xc63851){_0x5d44d2['sendStatus'](0x194);}return _0xc63851;};}function handleError(_0x42133c,_0x181197){_0x181197=_0x181197||0x1f4;return function(_0x2a8ee9){logger[_0xadec('0x27')](_0x2a8ee9[_0xadec('0x28')]);if(_0x2a8ee9['name']){delete _0x2a8ee9['name'];}_0x42133c[_0xadec('0x1a')](_0x181197)[_0xadec('0x29')](_0x2a8ee9);};}exports['index']=function(_0xa9e15e,_0x5dd3bb){var _0x7a5063={},_0x2faf1e={},_0x268fad={'count':0x0,'rows':[]};var _0xda4d0a=_[_0xadec('0x2a')](db[_0xadec('0x2b')][_0xadec('0x2c')],function(_0x5c9a3c){return{'name':_0x5c9a3c['fieldName'],'type':_0x5c9a3c[_0xadec('0x2d')][_0xadec('0x2e')]};});_0x2faf1e[_0xadec('0x2f')]=_[_0xadec('0x2a')](_0xda4d0a,_0xadec('0x30'));_0x2faf1e[_0xadec('0x31')]=_['keys'](_0xa9e15e[_0xadec('0x31')]);_0x2faf1e['filters']=_[_0xadec('0x32')](_0x2faf1e['model'],_0x2faf1e['query']);_0x7a5063[_0xadec('0x33')]=_[_0xadec('0x32')](_0x2faf1e[_0xadec('0x2f')],qs['fields'](_0xa9e15e[_0xadec('0x31')]['fields']));_0x7a5063[_0xadec('0x33')]=_0x7a5063[_0xadec('0x33')][_0xadec('0x34')]?_0x7a5063['attributes']:_0x2faf1e[_0xadec('0x2f')];if(!_0xa9e15e['query'][_0xadec('0x35')](_0xadec('0x36'))){_0x7a5063[_0xadec('0x37')]=qs['limit'](_0xa9e15e[_0xadec('0x31')][_0xadec('0x37')]);_0x7a5063[_0xadec('0x1e')]=qs[_0xadec('0x1e')](_0xa9e15e[_0xadec('0x31')][_0xadec('0x1e')]);}_0x7a5063[_0xadec('0x38')]=qs[_0xadec('0x39')](_0xa9e15e['query']['sort']);_0x7a5063[_0xadec('0x3a')]=qs['filters'](_[_0xadec('0x3b')](_0xa9e15e[_0xadec('0x31')],_0x2faf1e[_0xadec('0x3c')]),_0xda4d0a);if(_0xa9e15e[_0xadec('0x31')]['filter']){_0x7a5063[_0xadec('0x3a')]=_[_0xadec('0x3d')](_0x7a5063[_0xadec('0x3a')],{'$or':_[_0xadec('0x2a')](_0xda4d0a,function(_0x286910){if(_0x286910[_0xadec('0x2d')]!==_0xadec('0x3e')){var _0x146e9c={};_0x146e9c[_0x286910[_0xadec('0x30')]]={'$like':'%'+_0xa9e15e[_0xadec('0x31')][_0xadec('0x3f')]+'%'};return _0x146e9c;}})});}_0x7a5063=_[_0xadec('0x3d')]({},_0x7a5063,_0xa9e15e[_0xadec('0x40')]);var _0x261896={'where':_0x7a5063['where']};return db['ZohoField'][_0xadec('0x1d')](_0x261896)[_0xadec('0x25')](function(_0x31063b){_0x268fad[_0xadec('0x1d')]=_0x31063b;if(_0xa9e15e[_0xadec('0x31')][_0xadec('0x41')]){_0x7a5063[_0xadec('0x42')]=[{'all':!![]}];}return db[_0xadec('0x2b')][_0xadec('0x43')](_0x7a5063);})['then'](function(_0x4cfc84){_0x268fad[_0xadec('0x44')]=_0x4cfc84;return _0x268fad;})[_0xadec('0x25')](respondWithFilteredResult(_0x5dd3bb,_0x7a5063))[_0xadec('0x45')](handleError(_0x5dd3bb,null));};exports[_0xadec('0x46')]=function(_0x3cc2c0,_0x4e9ba6){var _0x3e0e36={'raw':!![],'where':{'id':_0x3cc2c0[_0xadec('0x47')]['id']}},_0x4e16dc={};_0x4e16dc[_0xadec('0x2f')]=_[_0xadec('0x48')](db[_0xadec('0x2b')][_0xadec('0x2c')]);_0x4e16dc['query']=_[_0xadec('0x48')](_0x3cc2c0['query']);_0x4e16dc['filters']=_['intersection'](_0x4e16dc[_0xadec('0x2f')],_0x4e16dc[_0xadec('0x31')]);_0x3e0e36[_0xadec('0x33')]=_[_0xadec('0x32')](_0x4e16dc['model'],qs[_0xadec('0x49')](_0x3cc2c0[_0xadec('0x31')][_0xadec('0x49')]));_0x3e0e36[_0xadec('0x33')]=_0x3e0e36[_0xadec('0x33')]['length']?_0x3e0e36[_0xadec('0x33')]:_0x4e16dc[_0xadec('0x2f')];if(_0x3cc2c0[_0xadec('0x31')]['includeAll']){_0x3e0e36[_0xadec('0x42')]=[{'all':!![]}];}_0x3e0e36=_[_0xadec('0x3d')]({},_0x3e0e36,_0x3cc2c0[_0xadec('0x40')]);return db[_0xadec('0x2b')][_0xadec('0x4a')](_0x3e0e36)['then'](handleEntityNotFound(_0x4e9ba6,null))['then'](respondWithResult(_0x4e9ba6,null))[_0xadec('0x45')](handleError(_0x4e9ba6,null));};exports[_0xadec('0x4b')]=function(_0x523ee3,_0x22c2be){return db['ZohoField'][_0xadec('0x4b')](_0x523ee3['body'],{})[_0xadec('0x25')](respondWithResult(_0x22c2be,0xc9))[_0xadec('0x45')](handleError(_0x22c2be,null));};exports[_0xadec('0x24')]=function(_0x552fee,_0x199314){if(_0x552fee[_0xadec('0x4c')]['id']){delete _0x552fee[_0xadec('0x4c')]['id'];}return db[_0xadec('0x2b')][_0xadec('0x4a')]({'where':{'id':_0x552fee[_0xadec('0x47')]['id']}})[_0xadec('0x25')](handleEntityNotFound(_0x199314,null))['then'](saveUpdates(_0x552fee[_0xadec('0x4c')],null))[_0xadec('0x25')](respondWithResult(_0x199314,null))[_0xadec('0x45')](handleError(_0x199314,null));};exports[_0xadec('0x26')]=function(_0x252d59,_0x3714a1){return db[_0xadec('0x2b')][_0xadec('0x4a')]({'where':{'id':_0x252d59[_0xadec('0x47')]['id']}})[_0xadec('0x25')](handleEntityNotFound(_0x3714a1,null))[_0xadec('0x25')](removeEntity(_0x3714a1,null))[_0xadec('0x45')](handleError(_0x3714a1,null));};