Built motion from commit efa66e19.|2.6.22
[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 _0xe5a2=['catch','show','params','ZohoField','rawAttributes','intersection','includeAll','create','body','find','eml-format','rimraf','zip-dir','fast-json-patch','mustache','util','path','ejs','lodash','squel','jsforce','desk.js','to-csv','querystring','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/utils','../../config/license/util','status','json','offset','undefined','limit','count','set','apply','reject','save','update','destroy','then','end','error','stack','name','send','type','key','map','query','keys','model','fields','attributes','length','hasOwnProperty','nolimit','order','sort','filters','pick','filter','where','VIRTUAL','options','include','findAll','rows'];(function(_0x4f6c07,_0x112fc8){var _0x1bb56b=function(_0x82d84b){while(--_0x82d84b){_0x4f6c07['push'](_0x4f6c07['shift']());}};_0x1bb56b(++_0x112fc8);}(_0xe5a2,0x98));var _0x2e5a=function(_0x39e5ce,_0x1eb61d){_0x39e5ce=_0x39e5ce-0x0;var _0x37e737=_0xe5a2[_0x39e5ce];return _0x37e737;};'use strict';var emlformat=require(_0x2e5a('0x0'));var rimraf=require(_0x2e5a('0x1'));var zipdir=require(_0x2e5a('0x2'));var jsonpatch=require(_0x2e5a('0x3'));var rp=require('request-promise');var moment=require('moment');var BPromise=require('bluebird');var Mustache=require(_0x2e5a('0x4'));var util=require(_0x2e5a('0x5'));var path=require(_0x2e5a('0x6'));var sox=require('sox');var csv=require('to-csv');var ejs=require(_0x2e5a('0x7'));var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x2e5a('0x8'));var squel=require(_0x2e5a('0x9'));var crypto=require('crypto');var jsforce=require(_0x2e5a('0xa'));var deskjs=require(_0x2e5a('0xb'));var toCsv=require(_0x2e5a('0xc'));var querystring=require(_0x2e5a('0xd'));var Papa=require('papaparse');var Redis=require(_0x2e5a('0xe'));var authService=require('../../components/auth/service');var qs=require(_0x2e5a('0xf'));var as=require(_0x2e5a('0x10'));var hardwareService=require(_0x2e5a('0x11'));var logger=require('../../config/logger')(_0x2e5a('0x12'));var utils=require(_0x2e5a('0x13'));var config=require('../../config/environment');var licenseUtil=require(_0x2e5a('0x14'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x51be77,_0x565930){_0x565930=_0x565930||0xcc;return function(_0x431806){if(_0x431806){return _0x51be77['sendStatus'](_0x565930);}return _0x51be77[_0x2e5a('0x15')](_0x565930)['end']();};}function respondWithResult(_0x35389f,_0x4d3955){_0x4d3955=_0x4d3955||0xc8;return function(_0x55683b){if(_0x55683b){return _0x35389f[_0x2e5a('0x15')](_0x4d3955)[_0x2e5a('0x16')](_0x55683b);}};}function respondWithFilteredResult(_0x32ac4b,_0x5727b2){return function(_0x33d65b){if(_0x33d65b){var _0xea48b4=typeof _0x5727b2[_0x2e5a('0x17')]===_0x2e5a('0x18')&&typeof _0x5727b2[_0x2e5a('0x19')]===_0x2e5a('0x18');var _0x24a812=_0x33d65b['count'];var _0x4a2834=_0xea48b4?0x0:_0x5727b2[_0x2e5a('0x17')];var _0x7d81dc=_0xea48b4?_0x33d65b[_0x2e5a('0x1a')]:_0x5727b2['offset']+_0x5727b2[_0x2e5a('0x19')];var _0x4b89ce;if(_0x7d81dc>=_0x24a812){_0x7d81dc=_0x24a812;_0x4b89ce=0xc8;}else{_0x4b89ce=0xce;}_0x32ac4b['status'](_0x4b89ce);return _0x32ac4b[_0x2e5a('0x1b')]('Content-Range',_0x4a2834+'-'+_0x7d81dc+'/'+_0x24a812)[_0x2e5a('0x16')](_0x33d65b);}return null;};}function patchUpdates(_0x24e818){return function(_0x345698){try{jsonpatch[_0x2e5a('0x1c')](_0x345698,_0x24e818,!![]);}catch(_0x241a92){return BPromise[_0x2e5a('0x1d')](_0x241a92);}return _0x345698[_0x2e5a('0x1e')]();};}function saveUpdates(_0x1551b2,_0x4229db){return function(_0x243ae2){if(_0x243ae2){return _0x243ae2[_0x2e5a('0x1f')](_0x1551b2)['then'](function(_0x37554f){return _0x37554f;});}return null;};}function removeEntity(_0x5f3830,_0x28518f){return function(_0x33df1e){if(_0x33df1e){return _0x33df1e[_0x2e5a('0x20')]()[_0x2e5a('0x21')](function(){_0x5f3830[_0x2e5a('0x15')](0xcc)[_0x2e5a('0x22')]();});}};}function handleEntityNotFound(_0x26b708,_0x207a6b){return function(_0x4dcf8d){if(!_0x4dcf8d){_0x26b708['sendStatus'](0x194);}return _0x4dcf8d;};}function handleError(_0xd53985,_0xa05d75){_0xa05d75=_0xa05d75||0x1f4;return function(_0x133f00){logger[_0x2e5a('0x23')](_0x133f00[_0x2e5a('0x24')]);if(_0x133f00[_0x2e5a('0x25')]){delete _0x133f00[_0x2e5a('0x25')];}_0xd53985[_0x2e5a('0x15')](_0xa05d75)[_0x2e5a('0x26')](_0x133f00);};}exports['index']=function(_0x4dea20,_0x445278){var _0x4e44b3={},_0x313a05={},_0x35f2ec={'count':0x0,'rows':[]};var _0x34ea4d=_['map'](db['ZohoField']['rawAttributes'],function(_0x3baa9d){return{'name':_0x3baa9d['fieldName'],'type':_0x3baa9d[_0x2e5a('0x27')][_0x2e5a('0x28')]};});_0x313a05['model']=_[_0x2e5a('0x29')](_0x34ea4d,_0x2e5a('0x25'));_0x313a05[_0x2e5a('0x2a')]=_[_0x2e5a('0x2b')](_0x4dea20[_0x2e5a('0x2a')]);_0x313a05['filters']=_['intersection'](_0x313a05[_0x2e5a('0x2c')],_0x313a05[_0x2e5a('0x2a')]);_0x4e44b3['attributes']=_['intersection'](_0x313a05[_0x2e5a('0x2c')],qs[_0x2e5a('0x2d')](_0x4dea20[_0x2e5a('0x2a')][_0x2e5a('0x2d')]));_0x4e44b3[_0x2e5a('0x2e')]=_0x4e44b3[_0x2e5a('0x2e')][_0x2e5a('0x2f')]?_0x4e44b3[_0x2e5a('0x2e')]:_0x313a05[_0x2e5a('0x2c')];if(!_0x4dea20['query'][_0x2e5a('0x30')](_0x2e5a('0x31'))){_0x4e44b3[_0x2e5a('0x19')]=qs[_0x2e5a('0x19')](_0x4dea20[_0x2e5a('0x2a')][_0x2e5a('0x19')]);_0x4e44b3['offset']=qs['offset'](_0x4dea20[_0x2e5a('0x2a')][_0x2e5a('0x17')]);}_0x4e44b3[_0x2e5a('0x32')]=qs[_0x2e5a('0x33')](_0x4dea20[_0x2e5a('0x2a')][_0x2e5a('0x33')]);_0x4e44b3['where']=qs[_0x2e5a('0x34')](_[_0x2e5a('0x35')](_0x4dea20['query'],_0x313a05[_0x2e5a('0x34')]),_0x34ea4d);if(_0x4dea20['query'][_0x2e5a('0x36')]){_0x4e44b3[_0x2e5a('0x37')]=_['merge'](_0x4e44b3[_0x2e5a('0x37')],{'$or':_[_0x2e5a('0x29')](_0x34ea4d,function(_0x9c8fb5){if(_0x9c8fb5[_0x2e5a('0x27')]!==_0x2e5a('0x38')){var _0x4c679d={};_0x4c679d[_0x9c8fb5[_0x2e5a('0x25')]]={'$like':'%'+_0x4dea20[_0x2e5a('0x2a')][_0x2e5a('0x36')]+'%'};return _0x4c679d;}})});}_0x4e44b3=_['merge']({},_0x4e44b3,_0x4dea20[_0x2e5a('0x39')]);var _0x5ed16b={'where':_0x4e44b3[_0x2e5a('0x37')]};return db['ZohoField']['count'](_0x5ed16b)[_0x2e5a('0x21')](function(_0x1909c8){_0x35f2ec[_0x2e5a('0x1a')]=_0x1909c8;if(_0x4dea20[_0x2e5a('0x2a')]['includeAll']){_0x4e44b3[_0x2e5a('0x3a')]=[{'all':!![]}];}return db['ZohoField'][_0x2e5a('0x3b')](_0x4e44b3);})[_0x2e5a('0x21')](function(_0x11b9a6){_0x35f2ec[_0x2e5a('0x3c')]=_0x11b9a6;return _0x35f2ec;})[_0x2e5a('0x21')](respondWithFilteredResult(_0x445278,_0x4e44b3))[_0x2e5a('0x3d')](handleError(_0x445278,null));};exports[_0x2e5a('0x3e')]=function(_0x58d060,_0x166af4){var _0x29d0c3={'raw':!![],'where':{'id':_0x58d060[_0x2e5a('0x3f')]['id']}},_0x79b12d={};_0x79b12d['model']=_['keys'](db[_0x2e5a('0x40')][_0x2e5a('0x41')]);_0x79b12d[_0x2e5a('0x2a')]=_[_0x2e5a('0x2b')](_0x58d060['query']);_0x79b12d[_0x2e5a('0x34')]=_[_0x2e5a('0x42')](_0x79b12d[_0x2e5a('0x2c')],_0x79b12d[_0x2e5a('0x2a')]);_0x29d0c3[_0x2e5a('0x2e')]=_[_0x2e5a('0x42')](_0x79b12d[_0x2e5a('0x2c')],qs[_0x2e5a('0x2d')](_0x58d060[_0x2e5a('0x2a')][_0x2e5a('0x2d')]));_0x29d0c3['attributes']=_0x29d0c3[_0x2e5a('0x2e')][_0x2e5a('0x2f')]?_0x29d0c3['attributes']:_0x79b12d['model'];if(_0x58d060[_0x2e5a('0x2a')][_0x2e5a('0x43')]){_0x29d0c3[_0x2e5a('0x3a')]=[{'all':!![]}];}_0x29d0c3=_['merge']({},_0x29d0c3,_0x58d060[_0x2e5a('0x39')]);return db[_0x2e5a('0x40')]['find'](_0x29d0c3)[_0x2e5a('0x21')](handleEntityNotFound(_0x166af4,null))[_0x2e5a('0x21')](respondWithResult(_0x166af4,null))[_0x2e5a('0x3d')](handleError(_0x166af4,null));};exports[_0x2e5a('0x44')]=function(_0x23c162,_0x41ce48){return db[_0x2e5a('0x40')][_0x2e5a('0x44')](_0x23c162['body'],{})[_0x2e5a('0x21')](respondWithResult(_0x41ce48,0xc9))[_0x2e5a('0x3d')](handleError(_0x41ce48,null));};exports[_0x2e5a('0x1f')]=function(_0x4bd956,_0x389a7b){if(_0x4bd956[_0x2e5a('0x45')]['id']){delete _0x4bd956[_0x2e5a('0x45')]['id'];}return db[_0x2e5a('0x40')][_0x2e5a('0x46')]({'where':{'id':_0x4bd956['params']['id']}})[_0x2e5a('0x21')](handleEntityNotFound(_0x389a7b,null))[_0x2e5a('0x21')](saveUpdates(_0x4bd956[_0x2e5a('0x45')],null))['then'](respondWithResult(_0x389a7b,null))['catch'](handleError(_0x389a7b,null));};exports['destroy']=function(_0x2d3bbb,_0x2d17b2){return db[_0x2e5a('0x40')][_0x2e5a('0x46')]({'where':{'id':_0x2d3bbb[_0x2e5a('0x3f')]['id']}})[_0x2e5a('0x21')](handleEntityNotFound(_0x2d17b2,null))[_0x2e5a('0x21')](removeEntity(_0x2d17b2,null))['catch'](handleError(_0x2d17b2,null));};