Built motion from commit da617fac.|2.6.6
[motion2.git] / server / api / intZohoAccount / intZohoAccount.controller.js
index 2f88bb9..59f69ad 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x8100=['host','zoho.eu','serverUrl','slice','substring','lastIndexOf','Refresh\x20Token\x20not\x20available\x20for\x20the\x20account','GET','format','https://www.zohoapis.%s/crm/v2/settings/fields','Calls','response','error','Owner','Subject','Description','WhoId','Call_Duration','Call_Result','Call_Start_Time','Call_Type','remove','includes','system_mandatory','push','custom_field','picklist','pick_list_values','stringify','test','statusCode','rimraf','zip-dir','fast-json-patch','request-promise','bluebird','sox','to-csv','ejs','fs-extra','crypto','jsforce','desk.js','querystring','papaparse','../../components/auth/service','../../components/parsers/advancedSearch','../../config/logger','../../config/utils','../../config/environment','../../config/license/util','../../components/integrations/configuration','sendStatus','status','end','json','offset','undefined','limit','count','set','Content-Range','reject','save','then','destroy','name','send','index','map','ZohoAccount','rawAttributes','fieldName','key','keys','query','filters','intersection','model','fields','attributes','length','hasOwnProperty','order','sort','where','pick','filter','VIRTUAL','merge','options','includeAll','include','findAll','catch','show','params','find','create','body','update','getConfigurations','ZohoConfiguration','nolimit','addConfiguration','findOne','AccountId','Subjects','getSubjects','type','getDescriptions','channel','ZohoField','zone','https://accounts.zoho.com','https://accounts.zoho.com.au','https://accounts.zoho.com.cn','https://accounts.zoho.eu','POST','clientId','refresh_token','access_token','Unable\x20to\x20retrieve\x20the\x20access\x20token','getFields','code','refreshToken'];(function(_0x36eaaa,_0x326732){var _0x461349=function(_0x4e4180){while(--_0x4e4180){_0x36eaaa['push'](_0x36eaaa['shift']());}};_0x461349(++_0x326732);}(_0x8100,0x199));var _0x0810=function(_0x429d41,_0x38841e){_0x429d41=_0x429d41-0x0;var _0x59efa2=_0x8100[_0x429d41];return _0x59efa2;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x0810('0x0'));var zipdir=require(_0x0810('0x1'));var jsonpatch=require(_0x0810('0x2'));var rp=require(_0x0810('0x3'));var moment=require('moment');var BPromise=require(_0x0810('0x4'));var Mustache=require('mustache');var util=require('util');var path=require('path');var sox=require(_0x0810('0x5'));var csv=require(_0x0810('0x6'));var ejs=require(_0x0810('0x7'));var fs=require('fs');var fs_extra=require(_0x0810('0x8'));var _=require('lodash');var squel=require('squel');var crypto=require(_0x0810('0x9'));var jsforce=require(_0x0810('0xa'));var deskjs=require(_0x0810('0xb'));var toCsv=require('to-csv');var querystring=require(_0x0810('0xc'));var Papa=require(_0x0810('0xd'));var Redis=require('ioredis');var authService=require(_0x0810('0xe'));var qs=require('../../components/parsers/qs');var as=require(_0x0810('0xf'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x0810('0x10'))('api');var utils=require(_0x0810('0x11'));var config=require(_0x0810('0x12'));var licenseUtil=require(_0x0810('0x13'));var db=require('../../mysqldb')['db'];var integrations=require(_0x0810('0x14'));function respondWithStatusCode(_0x3dc20c,_0x4877c0){_0x4877c0=_0x4877c0||0xcc;return function(_0x4b296c){if(_0x4b296c){return _0x3dc20c[_0x0810('0x15')](_0x4877c0);}return _0x3dc20c[_0x0810('0x16')](_0x4877c0)[_0x0810('0x17')]();};}function respondWithResult(_0x454789,_0x556272){_0x556272=_0x556272||0xc8;return function(_0x3376cd){if(_0x3376cd){return _0x454789[_0x0810('0x16')](_0x556272)[_0x0810('0x18')](_0x3376cd);}};}function respondWithFilteredResult(_0x2deaec,_0x189e11){return function(_0x5b5cb4){if(_0x5b5cb4){var _0x4ac4f4=typeof _0x189e11[_0x0810('0x19')]===_0x0810('0x1a')&&typeof _0x189e11[_0x0810('0x1b')]===_0x0810('0x1a');var _0xe472c7=_0x5b5cb4[_0x0810('0x1c')];var _0x5d05dd=_0x4ac4f4?0x0:_0x189e11[_0x0810('0x19')];var _0x15ddff=_0x4ac4f4?_0x5b5cb4['count']:_0x189e11[_0x0810('0x19')]+_0x189e11['limit'];var _0x1e40e1;if(_0x15ddff>=_0xe472c7){_0x15ddff=_0xe472c7;_0x1e40e1=0xc8;}else{_0x1e40e1=0xce;}_0x2deaec[_0x0810('0x16')](_0x1e40e1);return _0x2deaec[_0x0810('0x1d')](_0x0810('0x1e'),_0x5d05dd+'-'+_0x15ddff+'/'+_0xe472c7)[_0x0810('0x18')](_0x5b5cb4);}return null;};}function patchUpdates(_0x14a39f){return function(_0xc48622){try{jsonpatch['apply'](_0xc48622,_0x14a39f,!![]);}catch(_0x56cfb8){return BPromise[_0x0810('0x1f')](_0x56cfb8);}return _0xc48622[_0x0810('0x20')]();};}function saveUpdates(_0x581416,_0xc8b196){return function(_0x139dc7){if(_0x139dc7){return _0x139dc7['update'](_0x581416)[_0x0810('0x21')](function(_0x575bd1){return _0x575bd1;});}return null;};}function removeEntity(_0x17c858,_0x38b059){return function(_0x2c45a9){if(_0x2c45a9){return _0x2c45a9[_0x0810('0x22')]()[_0x0810('0x21')](function(){_0x17c858[_0x0810('0x16')](0xcc)[_0x0810('0x17')]();});}};}function handleEntityNotFound(_0x35d9b9,_0x36a18d){return function(_0xc6fb7f){if(!_0xc6fb7f){_0x35d9b9[_0x0810('0x15')](0x194);}return _0xc6fb7f;};}function handleError(_0x2330a0,_0x46d584){_0x46d584=_0x46d584||0x1f4;return function(_0x1cad5e){logger['error'](_0x1cad5e['stack']);if(_0x1cad5e[_0x0810('0x23')]){delete _0x1cad5e[_0x0810('0x23')];}_0x2330a0['status'](_0x46d584)[_0x0810('0x24')](_0x1cad5e);};}exports[_0x0810('0x25')]=function(_0x10f426,_0x173dad){var _0x42e880={},_0xa86b46={},_0x336021={'count':0x0,'rows':[]};var _0x141eb=_[_0x0810('0x26')](db[_0x0810('0x27')][_0x0810('0x28')],function(_0x54c23b){return{'name':_0x54c23b[_0x0810('0x29')],'type':_0x54c23b['type'][_0x0810('0x2a')]};});_0xa86b46['model']=_[_0x0810('0x26')](_0x141eb,'name');_0xa86b46['query']=_[_0x0810('0x2b')](_0x10f426[_0x0810('0x2c')]);_0xa86b46[_0x0810('0x2d')]=_['intersection'](_0xa86b46['model'],_0xa86b46['query']);_0x42e880['attributes']=_[_0x0810('0x2e')](_0xa86b46[_0x0810('0x2f')],qs[_0x0810('0x30')](_0x10f426[_0x0810('0x2c')][_0x0810('0x30')]));_0x42e880[_0x0810('0x31')]=_0x42e880[_0x0810('0x31')][_0x0810('0x32')]?_0x42e880[_0x0810('0x31')]:_0xa86b46['model'];if(!_0x10f426[_0x0810('0x2c')][_0x0810('0x33')]('nolimit')){_0x42e880[_0x0810('0x1b')]=qs[_0x0810('0x1b')](_0x10f426['query']['limit']);_0x42e880[_0x0810('0x19')]=qs[_0x0810('0x19')](_0x10f426[_0x0810('0x2c')]['offset']);}_0x42e880[_0x0810('0x34')]=qs[_0x0810('0x35')](_0x10f426[_0x0810('0x2c')][_0x0810('0x35')]);_0x42e880[_0x0810('0x36')]=qs['filters'](_[_0x0810('0x37')](_0x10f426[_0x0810('0x2c')],_0xa86b46[_0x0810('0x2d')]),_0x141eb);if(_0x10f426[_0x0810('0x2c')][_0x0810('0x38')]){_0x42e880[_0x0810('0x36')]=_['merge'](_0x42e880[_0x0810('0x36')],{'$or':_[_0x0810('0x26')](_0x141eb,function(_0x4d2055){if(_0x4d2055['type']!==_0x0810('0x39')){var _0x118e17={};_0x118e17[_0x4d2055[_0x0810('0x23')]]={'$like':'%'+_0x10f426[_0x0810('0x2c')]['filter']+'%'};return _0x118e17;}})});}_0x42e880=_[_0x0810('0x3a')]({},_0x42e880,_0x10f426[_0x0810('0x3b')]);var _0x5d6e27={'where':_0x42e880['where']};return db['ZohoAccount'][_0x0810('0x1c')](_0x5d6e27)[_0x0810('0x21')](function(_0xa794db){_0x336021[_0x0810('0x1c')]=_0xa794db;if(_0x10f426[_0x0810('0x2c')][_0x0810('0x3c')]){_0x42e880[_0x0810('0x3d')]=[{'all':!![]}];}return db['ZohoAccount'][_0x0810('0x3e')](_0x42e880);})['then'](function(_0x1e32e5){_0x336021['rows']=_0x1e32e5;return _0x336021;})['then'](respondWithFilteredResult(_0x173dad,_0x42e880))[_0x0810('0x3f')](handleError(_0x173dad,null));};exports[_0x0810('0x40')]=function(_0x42b3a3,_0x143489){var _0x53cb13={'raw':![],'where':{'id':_0x42b3a3[_0x0810('0x41')]['id']}},_0x1012c2={};_0x1012c2[_0x0810('0x2f')]=_[_0x0810('0x2b')](db[_0x0810('0x27')][_0x0810('0x28')]);_0x1012c2[_0x0810('0x2c')]=_[_0x0810('0x2b')](_0x42b3a3[_0x0810('0x2c')]);_0x1012c2[_0x0810('0x2d')]=_[_0x0810('0x2e')](_0x1012c2[_0x0810('0x2f')],_0x1012c2[_0x0810('0x2c')]);_0x53cb13[_0x0810('0x31')]=_[_0x0810('0x2e')](_0x1012c2[_0x0810('0x2f')],qs[_0x0810('0x30')](_0x42b3a3[_0x0810('0x2c')]['fields']));_0x53cb13[_0x0810('0x31')]=_0x53cb13[_0x0810('0x31')][_0x0810('0x32')]?_0x53cb13[_0x0810('0x31')]:_0x1012c2[_0x0810('0x2f')];if(_0x42b3a3[_0x0810('0x2c')][_0x0810('0x3c')]){_0x53cb13[_0x0810('0x3d')]=[{'all':!![]}];}_0x53cb13=_[_0x0810('0x3a')]({},_0x53cb13,_0x42b3a3['options']);return db[_0x0810('0x27')][_0x0810('0x42')](_0x53cb13)[_0x0810('0x21')](handleEntityNotFound(_0x143489,null))[_0x0810('0x21')](respondWithResult(_0x143489,null))[_0x0810('0x3f')](handleError(_0x143489,null));};exports['create']=function(_0x3ee366,_0x14bc30){return db[_0x0810('0x27')][_0x0810('0x43')](_0x3ee366[_0x0810('0x44')],{})[_0x0810('0x21')](respondWithResult(_0x14bc30,0xc9))['catch'](handleError(_0x14bc30,null));};exports[_0x0810('0x45')]=function(_0x50e346,_0x133322){if(_0x50e346[_0x0810('0x44')]['id']){delete _0x50e346['body']['id'];}return db[_0x0810('0x27')][_0x0810('0x42')]({'where':{'id':_0x50e346[_0x0810('0x41')]['id']}})[_0x0810('0x21')](handleEntityNotFound(_0x133322,null))[_0x0810('0x21')](saveUpdates(_0x50e346[_0x0810('0x44')],null))[_0x0810('0x21')](respondWithResult(_0x133322,null))['catch'](handleError(_0x133322,null));};exports['destroy']=function(_0x3cda24,_0x3bbc12){return db[_0x0810('0x27')]['find']({'where':{'id':_0x3cda24[_0x0810('0x41')]['id']}})[_0x0810('0x21')](handleEntityNotFound(_0x3bbc12,null))[_0x0810('0x21')](removeEntity(_0x3bbc12,null))['catch'](handleError(_0x3bbc12,null));};exports[_0x0810('0x46')]=function(_0x366eb1,_0x620cb,_0x866060){var _0x7460d0={};var _0x15d89a={};var _0x47b56a;var _0x366d80;return db['ZohoAccount']['findOne']({'where':{'id':_0x366eb1['params']['id']}})[_0x0810('0x21')](handleEntityNotFound(_0x620cb,null))['then'](function(_0x5d0f40){if(_0x5d0f40){_0x47b56a=_0x5d0f40;_0x15d89a[_0x0810('0x2f')]=_[_0x0810('0x2b')](db[_0x0810('0x47')][_0x0810('0x28')]);_0x15d89a[_0x0810('0x2c')]=_[_0x0810('0x2b')](_0x366eb1[_0x0810('0x2c')]);_0x15d89a[_0x0810('0x2d')]=_[_0x0810('0x2e')](_0x15d89a['model'],_0x15d89a[_0x0810('0x2c')]);_0x7460d0[_0x0810('0x31')]=_[_0x0810('0x2e')](_0x15d89a[_0x0810('0x2f')],qs[_0x0810('0x30')](_0x366eb1[_0x0810('0x2c')]['fields']));_0x7460d0[_0x0810('0x31')]=_0x7460d0[_0x0810('0x31')][_0x0810('0x32')]?_0x7460d0[_0x0810('0x31')]:_0x15d89a['model'];_0x7460d0[_0x0810('0x34')]=qs['sort'](_0x366eb1[_0x0810('0x2c')][_0x0810('0x35')]);_0x7460d0[_0x0810('0x36')]=qs[_0x0810('0x2d')](_[_0x0810('0x37')](_0x366eb1[_0x0810('0x2c')],_0x15d89a['filters']));if(_0x366eb1[_0x0810('0x2c')][_0x0810('0x38')]){_0x7460d0[_0x0810('0x36')]=_['merge'](_0x7460d0[_0x0810('0x36')],{'$or':_[_0x0810('0x26')](_0x7460d0[_0x0810('0x31')],function(_0x5cd0e5){var _0xbd97a4={};_0xbd97a4[_0x5cd0e5]={'$like':'%'+_0x366eb1['query'][_0x0810('0x38')]+'%'};return _0xbd97a4;})});}_0x7460d0=_[_0x0810('0x3a')]({},_0x7460d0,_0x366eb1[_0x0810('0x3b')]);return _0x47b56a[_0x0810('0x46')](_0x7460d0);}})[_0x0810('0x21')](function(_0x12219f){if(_0x12219f){_0x366d80=_0x12219f[_0x0810('0x32')];if(!_0x366eb1[_0x0810('0x2c')]['hasOwnProperty'](_0x0810('0x48'))){_0x7460d0[_0x0810('0x1b')]=qs[_0x0810('0x1b')](_0x366eb1['query'][_0x0810('0x1b')]);_0x7460d0[_0x0810('0x19')]=qs[_0x0810('0x19')](_0x366eb1['query'][_0x0810('0x19')]);}return _0x47b56a['getConfigurations'](_0x7460d0);}})[_0x0810('0x21')](function(_0x5cf684){if(_0x5cf684){return _0x5cf684?{'count':_0x366d80,'rows':_0x5cf684}:null;}})[_0x0810('0x21')](respondWithResult(_0x620cb,null))[_0x0810('0x3f')](handleError(_0x620cb,null));};exports[_0x0810('0x49')]=function(_0x4224d2,_0x4d3bb8,_0x4bac83){if(_0x4224d2[_0x0810('0x44')]['id']){delete _0x4224d2['body']['id'];}return db[_0x0810('0x27')][_0x0810('0x4a')]({'where':{'id':_0x4224d2['params']['id']}})[_0x0810('0x21')](handleEntityNotFound(_0x4d3bb8,null))[_0x0810('0x21')](function(_0x2915fa){if(_0x2915fa){_0x4224d2[_0x0810('0x44')][_0x0810('0x4b')]=_0x2915fa['id'];_0x4224d2[_0x0810('0x44')][_0x0810('0x4c')]=integrations[_0x0810('0x4d')](_0x4224d2['body']['channel'],_0x4224d2[_0x0810('0x44')][_0x0810('0x4e')]);_0x4224d2[_0x0810('0x44')]['Descriptions']=integrations[_0x0810('0x4f')](_0x4224d2[_0x0810('0x44')][_0x0810('0x50')],_0x4224d2[_0x0810('0x44')][_0x0810('0x4e')]);return db['ZohoConfiguration'][_0x0810('0x43')](_0x4224d2['body'],{'include':[{'model':db[_0x0810('0x51')],'as':_0x0810('0x4c')},{'model':db[_0x0810('0x51')],'as':'Descriptions'}]});}return null;})[_0x0810('0x21')](respondWithResult(_0x4d3bb8,null))[_0x0810('0x3f')](handleError(_0x4d3bb8,null));};function getAccessToken(_0x54b40c){return new Promise(function(_0x5e8573,_0x3419e4){var _0x4dc702;switch(_0x54b40c[_0x0810('0x52')]){case'US':_0x4dc702=_0x0810('0x53');break;case'AU':_0x4dc702=_0x0810('0x54');break;case'EU':_0x4dc702='https://accounts.zoho.eu';break;case'IN':_0x4dc702='https://accounts.zoho.in';break;case'CN':_0x4dc702=_0x0810('0x55');break;default:_0x4dc702=_0x0810('0x56');break;}var _0x2fd84b={'method':_0x0810('0x57'),'uri':_0x4dc702+'/oauth/v2/token','qs':{'refresh_token':_0x54b40c['refreshToken'],'client_id':_0x54b40c[_0x0810('0x58')],'client_secret':_0x54b40c['clientSecret'],'grant_type':_0x0810('0x59')},'json':!![]};return rp(_0x2fd84b)[_0x0810('0x21')](function(_0x3deef1){if(_0x3deef1[_0x0810('0x5a')]){_0x5e8573(_0x3deef1['access_token']);}else{_0x3419e4(_0x0810('0x5b'));}})['catch'](function(_0x22c64c){_0x3419e4(_0x22c64c);});});}exports[_0x0810('0x5c')]=function(_0x5895d2,_0x3ff16f,_0x34e20f){var _0x393062,_0xa32766,_0x184bbe,_0x276296,_0x31f0ca;return db[_0x0810('0x27')][_0x0810('0x4a')]({'where':{'id':_0x5895d2[_0x0810('0x41')]['id']},'attributes':['id','host',_0x0810('0x52'),_0x0810('0x58'),'clientSecret','serverUrl',_0x0810('0x5d'),_0x0810('0x5e')]})[_0x0810('0x21')](handleEntityNotFound(_0x3ff16f,null))['then'](function(_0x387d61){_0x31f0ca=_0x387d61;_0x393062=_0x31f0ca[_0x0810('0x5f')];_0xa32766=_0x393062===_0x0810('0x60')?'eu':'com';_0x184bbe=_0x31f0ca[_0x0810('0x61')];var _0x5df21c=_0x184bbe[_0x0810('0x62')](-0x1);if(_0x5df21c==='/'||_0x5df21c==='\x5c'||_0x5df21c===':'){_0x184bbe=_0x184bbe[_0x0810('0x63')](0x0,_0x184bbe[_0x0810('0x64')](_0x5df21c));}if(!_0x31f0ca[_0x0810('0x5e')]){throw new Error(_0x0810('0x65'));}return getAccessToken(_0x31f0ca);})['then'](function(_0x4a4cd4){if(_0x4a4cd4){return rp({'method':_0x0810('0x66'),'uri':util[_0x0810('0x67')](_0x0810('0x68'),_0xa32766),'qs':{'module':_0x0810('0x69')},'headers':{'Authorization':'Zoho-oauthtoken\x20'+_0x4a4cd4},'json':!![]});}})[_0x0810('0x21')](function(_0x1696e4){if(_0x1696e4){if(_0x1696e4[_0x0810('0x6a')]&&_0x1696e4['response']['error']){throw new Error(_0x1696e4[_0x0810('0x6a')][_0x0810('0x6b')]['message']);}var _0x45c3e6=[];var _0x251612=[];var _0x42aff2=[_0x0810('0x6c'),_0x0810('0x6d'),_0x0810('0x6e'),_0x0810('0x6f'),_0x0810('0x70'),_0x0810('0x71'),_0x0810('0x72'),_0x0810('0x73')];_0x251612=_[_0x0810('0x74')](_0x1696e4[_0x0810('0x30')],function(_0x2e1ec){return _0x42aff2[_0x0810('0x75')](_0x2e1ec['api_name']);});for(var _0x2faeb5=0x0;_0x2faeb5<_0x251612[_0x0810('0x32')];_0x2faeb5++){if(_0x251612[_0x2faeb5][_0x0810('0x76')]===![]){_0x45c3e6[_0x0810('0x77')]({'id':_0x251612[_0x2faeb5]['id'],'name':_0x251612[_0x2faeb5]['display_label'],'custom':_0x251612[_0x2faeb5][_0x0810('0x78')],'options':_0x251612[_0x2faeb5]['data_type']===_0x0810('0x79')&&_0x251612[_0x2faeb5][_0x0810('0x7a')][_0x0810('0x32')]>-0x1?_[_0x0810('0x26')](_0x251612[_0x2faeb5][_0x0810('0x7a')],function(_0x5762b7){return{'name':_0x5762b7,'value':_0x5762b7};}):[]});}}return{'count':_0x45c3e6[_0x0810('0x32')],'rows':_0x45c3e6};}else{return{'count':0x0,'rows':[]};}})[_0x0810('0x21')](respondWithResult(_0x3ff16f,null))[_0x0810('0x3f')](function(_0x1bc0b8){var _0x19ff64=_0x5895d2['query']['test']?0x1f4:_0x1bc0b8['statusCode']||0x1f4;logger[_0x0810('0x6b')]('getFields,\x20%s,\x20%s,\x20%s',_0x0810('0x5c'),_0x19ff64,JSON[_0x0810('0x7b')](_0x1bc0b8));delete _0x1bc0b8['name'];if(_0x19ff64===0x191){_0x19ff64=0x190;}_0x3ff16f[_0x0810('0x16')](_0x19ff64)[_0x0810('0x24')](_0x5895d2[_0x0810('0x2c')][_0x0810('0x7c')]?{'message':'Wrong\x20credentials','statusCode':_0x1bc0b8[_0x0810('0x7d')]}:_0x1bc0b8);});};
\ No newline at end of file
+var _0x2227=['getFields','stringify','send','test','Wrong\x20credentials','statusCode','rimraf','fast-json-patch','request-promise','moment','bluebird','mustache','util','path','sox','ejs','fs-extra','squel','crypto','desk.js','to-csv','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/license/util','../../mysqldb','../../components/integrations/configuration','sendStatus','status','end','offset','undefined','limit','count','set','Content-Range','json','apply','reject','save','update','then','destroy','name','map','rawAttributes','fieldName','key','model','query','keys','attributes','intersection','fields','length','hasOwnProperty','nolimit','sort','where','filters','pick','filter','merge','type','VIRTUAL','options','ZohoAccount','includeAll','include','findAll','rows','catch','show','find','create','body','ZohoConfiguration','order','getConfigurations','addConfiguration','findOne','params','AccountId','Subjects','Descriptions','getDescriptions','channel','ZohoField','zone','https://accounts.zoho.com','https://accounts.zoho.com.au','https://accounts.zoho.eu','https://accounts.zoho.com.cn','POST','refreshToken','clientId','clientSecret','refresh_token','access_token','host','serverUrl','code','com','slice','substring','Refresh\x20Token\x20not\x20available\x20for\x20the\x20account','format','Calls','Zoho-oauthtoken\x20','response','error','message','Description','Call_Result','Call_Start_Time','includes','push','display_label','custom_field','data_type','picklist','pick_list_values','getFields,\x20%s,\x20%s,\x20%s'];(function(_0x36fafd,_0x5bfa3a){var _0x150b3b=function(_0xf2052d){while(--_0xf2052d){_0x36fafd['push'](_0x36fafd['shift']());}};_0x150b3b(++_0x5bfa3a);}(_0x2227,0x18c));var _0x7222=function(_0x29e3b6,_0x40b0b4){_0x29e3b6=_0x29e3b6-0x0;var _0x55d4b0=_0x2227[_0x29e3b6];return _0x55d4b0;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x7222('0x0'));var zipdir=require('zip-dir');var jsonpatch=require(_0x7222('0x1'));var rp=require(_0x7222('0x2'));var moment=require(_0x7222('0x3'));var BPromise=require(_0x7222('0x4'));var Mustache=require(_0x7222('0x5'));var util=require(_0x7222('0x6'));var path=require(_0x7222('0x7'));var sox=require(_0x7222('0x8'));var csv=require('to-csv');var ejs=require(_0x7222('0x9'));var fs=require('fs');var fs_extra=require(_0x7222('0xa'));var _=require('lodash');var squel=require(_0x7222('0xb'));var crypto=require(_0x7222('0xc'));var jsforce=require('jsforce');var deskjs=require(_0x7222('0xd'));var toCsv=require(_0x7222('0xe'));var querystring=require(_0x7222('0xf'));var Papa=require(_0x7222('0x10'));var Redis=require(_0x7222('0x11'));var authService=require(_0x7222('0x12'));var qs=require(_0x7222('0x13'));var as=require(_0x7222('0x14'));var hardwareService=require(_0x7222('0x15'));var logger=require(_0x7222('0x16'))(_0x7222('0x17'));var utils=require(_0x7222('0x18'));var config=require('../../config/environment');var licenseUtil=require(_0x7222('0x19'));var db=require(_0x7222('0x1a'))['db'];var integrations=require(_0x7222('0x1b'));function respondWithStatusCode(_0x327803,_0x26ebfc){_0x26ebfc=_0x26ebfc||0xcc;return function(_0x207ac6){if(_0x207ac6){return _0x327803[_0x7222('0x1c')](_0x26ebfc);}return _0x327803[_0x7222('0x1d')](_0x26ebfc)[_0x7222('0x1e')]();};}function respondWithResult(_0x1668cc,_0x5ad45f){_0x5ad45f=_0x5ad45f||0xc8;return function(_0x1dfa11){if(_0x1dfa11){return _0x1668cc['status'](_0x5ad45f)['json'](_0x1dfa11);}};}function respondWithFilteredResult(_0x5d13ac,_0x46ea17){return function(_0x10181e){if(_0x10181e){var _0x104207=typeof _0x46ea17[_0x7222('0x1f')]===_0x7222('0x20')&&typeof _0x46ea17[_0x7222('0x21')]===_0x7222('0x20');var _0x3c5fab=_0x10181e[_0x7222('0x22')];var _0x547d00=_0x104207?0x0:_0x46ea17['offset'];var _0x5769b2=_0x104207?_0x10181e[_0x7222('0x22')]:_0x46ea17[_0x7222('0x1f')]+_0x46ea17['limit'];var _0x18fb65;if(_0x5769b2>=_0x3c5fab){_0x5769b2=_0x3c5fab;_0x18fb65=0xc8;}else{_0x18fb65=0xce;}_0x5d13ac['status'](_0x18fb65);return _0x5d13ac[_0x7222('0x23')](_0x7222('0x24'),_0x547d00+'-'+_0x5769b2+'/'+_0x3c5fab)[_0x7222('0x25')](_0x10181e);}return null;};}function patchUpdates(_0x351b95){return function(_0x6ec01c){try{jsonpatch[_0x7222('0x26')](_0x6ec01c,_0x351b95,!![]);}catch(_0x5e5365){return BPromise[_0x7222('0x27')](_0x5e5365);}return _0x6ec01c[_0x7222('0x28')]();};}function saveUpdates(_0xee6d87,_0x1b7d24){return function(_0x31f7f9){if(_0x31f7f9){return _0x31f7f9[_0x7222('0x29')](_0xee6d87)[_0x7222('0x2a')](function(_0x9da5e0){return _0x9da5e0;});}return null;};}function removeEntity(_0x53cac4,_0x138982){return function(_0x31db59){if(_0x31db59){return _0x31db59[_0x7222('0x2b')]()[_0x7222('0x2a')](function(){_0x53cac4[_0x7222('0x1d')](0xcc)[_0x7222('0x1e')]();});}};}function handleEntityNotFound(_0x1c191b,_0x2d0791){return function(_0x28a5d1){if(!_0x28a5d1){_0x1c191b[_0x7222('0x1c')](0x194);}return _0x28a5d1;};}function handleError(_0x2ea2d2,_0x4a9d2f){_0x4a9d2f=_0x4a9d2f||0x1f4;return function(_0x5b4136){logger['error'](_0x5b4136['stack']);if(_0x5b4136[_0x7222('0x2c')]){delete _0x5b4136['name'];}_0x2ea2d2[_0x7222('0x1d')](_0x4a9d2f)['send'](_0x5b4136);};}exports['index']=function(_0xa6666a,_0x1d401c){var _0x3e7a32={},_0x56f80c={},_0x1fd908={'count':0x0,'rows':[]};var _0x18342b=_[_0x7222('0x2d')](db['ZohoAccount'][_0x7222('0x2e')],function(_0x435cc9){return{'name':_0x435cc9[_0x7222('0x2f')],'type':_0x435cc9['type'][_0x7222('0x30')]};});_0x56f80c[_0x7222('0x31')]=_['map'](_0x18342b,'name');_0x56f80c[_0x7222('0x32')]=_[_0x7222('0x33')](_0xa6666a['query']);_0x56f80c['filters']=_['intersection'](_0x56f80c['model'],_0x56f80c[_0x7222('0x32')]);_0x3e7a32[_0x7222('0x34')]=_[_0x7222('0x35')](_0x56f80c[_0x7222('0x31')],qs[_0x7222('0x36')](_0xa6666a[_0x7222('0x32')]['fields']));_0x3e7a32['attributes']=_0x3e7a32['attributes'][_0x7222('0x37')]?_0x3e7a32[_0x7222('0x34')]:_0x56f80c[_0x7222('0x31')];if(!_0xa6666a[_0x7222('0x32')][_0x7222('0x38')](_0x7222('0x39'))){_0x3e7a32[_0x7222('0x21')]=qs[_0x7222('0x21')](_0xa6666a['query']['limit']);_0x3e7a32[_0x7222('0x1f')]=qs['offset'](_0xa6666a[_0x7222('0x32')][_0x7222('0x1f')]);}_0x3e7a32['order']=qs[_0x7222('0x3a')](_0xa6666a['query'][_0x7222('0x3a')]);_0x3e7a32[_0x7222('0x3b')]=qs[_0x7222('0x3c')](_[_0x7222('0x3d')](_0xa6666a[_0x7222('0x32')],_0x56f80c['filters']),_0x18342b);if(_0xa6666a[_0x7222('0x32')][_0x7222('0x3e')]){_0x3e7a32['where']=_[_0x7222('0x3f')](_0x3e7a32['where'],{'$or':_[_0x7222('0x2d')](_0x18342b,function(_0x5d4735){if(_0x5d4735[_0x7222('0x40')]!==_0x7222('0x41')){var _0x5e2916={};_0x5e2916[_0x5d4735[_0x7222('0x2c')]]={'$like':'%'+_0xa6666a[_0x7222('0x32')]['filter']+'%'};return _0x5e2916;}})});}_0x3e7a32=_['merge']({},_0x3e7a32,_0xa6666a[_0x7222('0x42')]);var _0x55bdfe={'where':_0x3e7a32[_0x7222('0x3b')]};return db[_0x7222('0x43')][_0x7222('0x22')](_0x55bdfe)[_0x7222('0x2a')](function(_0x444052){_0x1fd908[_0x7222('0x22')]=_0x444052;if(_0xa6666a[_0x7222('0x32')][_0x7222('0x44')]){_0x3e7a32[_0x7222('0x45')]=[{'all':!![]}];}return db[_0x7222('0x43')][_0x7222('0x46')](_0x3e7a32);})[_0x7222('0x2a')](function(_0x40e9c2){_0x1fd908[_0x7222('0x47')]=_0x40e9c2;return _0x1fd908;})[_0x7222('0x2a')](respondWithFilteredResult(_0x1d401c,_0x3e7a32))[_0x7222('0x48')](handleError(_0x1d401c,null));};exports[_0x7222('0x49')]=function(_0xc16849,_0x11304c){var _0x2fb96d={'raw':![],'where':{'id':_0xc16849['params']['id']}},_0x2a7ea2={};_0x2a7ea2[_0x7222('0x31')]=_[_0x7222('0x33')](db[_0x7222('0x43')][_0x7222('0x2e')]);_0x2a7ea2[_0x7222('0x32')]=_[_0x7222('0x33')](_0xc16849[_0x7222('0x32')]);_0x2a7ea2['filters']=_[_0x7222('0x35')](_0x2a7ea2[_0x7222('0x31')],_0x2a7ea2[_0x7222('0x32')]);_0x2fb96d['attributes']=_[_0x7222('0x35')](_0x2a7ea2[_0x7222('0x31')],qs[_0x7222('0x36')](_0xc16849[_0x7222('0x32')][_0x7222('0x36')]));_0x2fb96d[_0x7222('0x34')]=_0x2fb96d[_0x7222('0x34')][_0x7222('0x37')]?_0x2fb96d[_0x7222('0x34')]:_0x2a7ea2['model'];if(_0xc16849[_0x7222('0x32')][_0x7222('0x44')]){_0x2fb96d[_0x7222('0x45')]=[{'all':!![]}];}_0x2fb96d=_['merge']({},_0x2fb96d,_0xc16849['options']);return db['ZohoAccount'][_0x7222('0x4a')](_0x2fb96d)['then'](handleEntityNotFound(_0x11304c,null))['then'](respondWithResult(_0x11304c,null))['catch'](handleError(_0x11304c,null));};exports['create']=function(_0x2bebb6,_0x440430){return db['ZohoAccount'][_0x7222('0x4b')](_0x2bebb6['body'],{})[_0x7222('0x2a')](respondWithResult(_0x440430,0xc9))['catch'](handleError(_0x440430,null));};exports[_0x7222('0x29')]=function(_0x5821aa,_0x229439){if(_0x5821aa[_0x7222('0x4c')]['id']){delete _0x5821aa['body']['id'];}return db[_0x7222('0x43')][_0x7222('0x4a')]({'where':{'id':_0x5821aa['params']['id']}})[_0x7222('0x2a')](handleEntityNotFound(_0x229439,null))['then'](saveUpdates(_0x5821aa[_0x7222('0x4c')],null))[_0x7222('0x2a')](respondWithResult(_0x229439,null))[_0x7222('0x48')](handleError(_0x229439,null));};exports[_0x7222('0x2b')]=function(_0x4777fd,_0x462fcc){return db[_0x7222('0x43')][_0x7222('0x4a')]({'where':{'id':_0x4777fd['params']['id']}})[_0x7222('0x2a')](handleEntityNotFound(_0x462fcc,null))[_0x7222('0x2a')](removeEntity(_0x462fcc,null))[_0x7222('0x48')](handleError(_0x462fcc,null));};exports['getConfigurations']=function(_0x670a28,_0x4444ff,_0x13acfa){var _0x1a914e={};var _0x5bf7f0={};var _0x1da13d;var _0x3bb8b0;return db['ZohoAccount']['findOne']({'where':{'id':_0x670a28['params']['id']}})[_0x7222('0x2a')](handleEntityNotFound(_0x4444ff,null))['then'](function(_0x2d4524){if(_0x2d4524){_0x1da13d=_0x2d4524;_0x5bf7f0['model']=_[_0x7222('0x33')](db[_0x7222('0x4d')]['rawAttributes']);_0x5bf7f0['query']=_[_0x7222('0x33')](_0x670a28[_0x7222('0x32')]);_0x5bf7f0[_0x7222('0x3c')]=_[_0x7222('0x35')](_0x5bf7f0[_0x7222('0x31')],_0x5bf7f0['query']);_0x1a914e['attributes']=_[_0x7222('0x35')](_0x5bf7f0[_0x7222('0x31')],qs[_0x7222('0x36')](_0x670a28[_0x7222('0x32')][_0x7222('0x36')]));_0x1a914e['attributes']=_0x1a914e[_0x7222('0x34')]['length']?_0x1a914e[_0x7222('0x34')]:_0x5bf7f0['model'];_0x1a914e[_0x7222('0x4e')]=qs[_0x7222('0x3a')](_0x670a28[_0x7222('0x32')]['sort']);_0x1a914e[_0x7222('0x3b')]=qs[_0x7222('0x3c')](_[_0x7222('0x3d')](_0x670a28['query'],_0x5bf7f0[_0x7222('0x3c')]));if(_0x670a28[_0x7222('0x32')][_0x7222('0x3e')]){_0x1a914e[_0x7222('0x3b')]=_[_0x7222('0x3f')](_0x1a914e[_0x7222('0x3b')],{'$or':_[_0x7222('0x2d')](_0x1a914e[_0x7222('0x34')],function(_0x33567c){var _0x3dc138={};_0x3dc138[_0x33567c]={'$like':'%'+_0x670a28[_0x7222('0x32')][_0x7222('0x3e')]+'%'};return _0x3dc138;})});}_0x1a914e=_[_0x7222('0x3f')]({},_0x1a914e,_0x670a28[_0x7222('0x42')]);return _0x1da13d[_0x7222('0x4f')](_0x1a914e);}})['then'](function(_0x47a260){if(_0x47a260){_0x3bb8b0=_0x47a260[_0x7222('0x37')];if(!_0x670a28[_0x7222('0x32')][_0x7222('0x38')]('nolimit')){_0x1a914e[_0x7222('0x21')]=qs[_0x7222('0x21')](_0x670a28[_0x7222('0x32')][_0x7222('0x21')]);_0x1a914e[_0x7222('0x1f')]=qs[_0x7222('0x1f')](_0x670a28[_0x7222('0x32')][_0x7222('0x1f')]);}return _0x1da13d['getConfigurations'](_0x1a914e);}})['then'](function(_0x3f5d02){if(_0x3f5d02){return _0x3f5d02?{'count':_0x3bb8b0,'rows':_0x3f5d02}:null;}})[_0x7222('0x2a')](respondWithResult(_0x4444ff,null))[_0x7222('0x48')](handleError(_0x4444ff,null));};exports[_0x7222('0x50')]=function(_0x206b54,_0x35bd9b,_0x1a9860){if(_0x206b54['body']['id']){delete _0x206b54[_0x7222('0x4c')]['id'];}return db[_0x7222('0x43')][_0x7222('0x51')]({'where':{'id':_0x206b54[_0x7222('0x52')]['id']}})[_0x7222('0x2a')](handleEntityNotFound(_0x35bd9b,null))[_0x7222('0x2a')](function(_0x3cf2eb){if(_0x3cf2eb){_0x206b54[_0x7222('0x4c')][_0x7222('0x53')]=_0x3cf2eb['id'];_0x206b54[_0x7222('0x4c')][_0x7222('0x54')]=integrations['getSubjects'](_0x206b54['body']['channel'],_0x206b54[_0x7222('0x4c')][_0x7222('0x40')]);_0x206b54[_0x7222('0x4c')][_0x7222('0x55')]=integrations[_0x7222('0x56')](_0x206b54[_0x7222('0x4c')][_0x7222('0x57')],_0x206b54['body'][_0x7222('0x40')]);return db[_0x7222('0x4d')][_0x7222('0x4b')](_0x206b54[_0x7222('0x4c')],{'include':[{'model':db[_0x7222('0x58')],'as':_0x7222('0x54')},{'model':db[_0x7222('0x58')],'as':_0x7222('0x55')}]});}return null;})[_0x7222('0x2a')](respondWithResult(_0x35bd9b,null))['catch'](handleError(_0x35bd9b,null));};function getAccessToken(_0x28db60){return new Promise(function(_0x135a47,_0x5f8451){var _0x258bab;switch(_0x28db60[_0x7222('0x59')]){case'US':_0x258bab=_0x7222('0x5a');break;case'AU':_0x258bab=_0x7222('0x5b');break;case'EU':_0x258bab=_0x7222('0x5c');break;case'IN':_0x258bab='https://accounts.zoho.in';break;case'CN':_0x258bab=_0x7222('0x5d');break;default:_0x258bab='https://accounts.zoho.eu';break;}var _0xef364e={'method':_0x7222('0x5e'),'uri':_0x258bab+'/oauth/v2/token','qs':{'refresh_token':_0x28db60[_0x7222('0x5f')],'client_id':_0x28db60[_0x7222('0x60')],'client_secret':_0x28db60[_0x7222('0x61')],'grant_type':_0x7222('0x62')},'json':!![]};return rp(_0xef364e)['then'](function(_0x49b14c){if(_0x49b14c[_0x7222('0x63')]){_0x135a47(_0x49b14c[_0x7222('0x63')]);}else{_0x5f8451('Unable\x20to\x20retrieve\x20the\x20access\x20token');}})[_0x7222('0x48')](function(_0x187229){_0x5f8451(_0x187229);});});}exports['getFields']=function(_0xd0b9ad,_0x16b19e,_0xad000a){var _0x54023a,_0x247036,_0xb270f9,_0x47afcb,_0x5b01d9;return db[_0x7222('0x43')]['findOne']({'where':{'id':_0xd0b9ad[_0x7222('0x52')]['id']},'attributes':['id',_0x7222('0x64'),_0x7222('0x59'),_0x7222('0x60'),_0x7222('0x61'),_0x7222('0x65'),_0x7222('0x66'),'refreshToken']})['then'](handleEntityNotFound(_0x16b19e,null))[_0x7222('0x2a')](function(_0x1a0b6e){_0x5b01d9=_0x1a0b6e;_0x54023a=_0x5b01d9['host'];_0x247036=_0x54023a==='zoho.eu'?'eu':_0x7222('0x67');_0xb270f9=_0x5b01d9[_0x7222('0x65')];var _0x5531ed=_0xb270f9[_0x7222('0x68')](-0x1);if(_0x5531ed==='/'||_0x5531ed==='\x5c'||_0x5531ed===':'){_0xb270f9=_0xb270f9[_0x7222('0x69')](0x0,_0xb270f9['lastIndexOf'](_0x5531ed));}if(!_0x5b01d9[_0x7222('0x5f')]){throw new Error(_0x7222('0x6a'));}return getAccessToken(_0x5b01d9);})['then'](function(_0x361d53){if(_0x361d53){return rp({'method':'GET','uri':util[_0x7222('0x6b')]('https://www.zohoapis.%s/crm/v2/settings/fields',_0x247036),'qs':{'module':_0x7222('0x6c')},'headers':{'Authorization':_0x7222('0x6d')+_0x361d53},'json':!![]});}})[_0x7222('0x2a')](function(_0x256945){if(_0x256945){if(_0x256945[_0x7222('0x6e')]&&_0x256945[_0x7222('0x6e')]['error']){throw new Error(_0x256945[_0x7222('0x6e')][_0x7222('0x6f')][_0x7222('0x70')]);}var _0x2ef3c5=[];var _0x5d9750=[];var _0xec8883=['Owner','Subject',_0x7222('0x71'),'WhoId','Call_Duration',_0x7222('0x72'),_0x7222('0x73'),'Call_Type'];_0x5d9750=_['remove'](_0x256945[_0x7222('0x36')],function(_0x3babca){return _0xec8883[_0x7222('0x74')](_0x3babca['api_name']);});for(var _0x481485=0x0;_0x481485<_0x5d9750[_0x7222('0x37')];_0x481485++){if(_0x5d9750[_0x481485]['system_mandatory']===![]){_0x2ef3c5[_0x7222('0x75')]({'id':_0x5d9750[_0x481485]['id'],'name':_0x5d9750[_0x481485][_0x7222('0x76')],'custom':_0x5d9750[_0x481485][_0x7222('0x77')],'options':_0x5d9750[_0x481485][_0x7222('0x78')]===_0x7222('0x79')&&_0x5d9750[_0x481485]['pick_list_values'][_0x7222('0x37')]>-0x1?_[_0x7222('0x2d')](_0x5d9750[_0x481485][_0x7222('0x7a')],function(_0x4c02f2){return{'name':_0x4c02f2,'value':_0x4c02f2};}):[]});}}return{'count':_0x2ef3c5['length'],'rows':_0x2ef3c5};}else{return{'count':0x0,'rows':[]};}})[_0x7222('0x2a')](respondWithResult(_0x16b19e,null))[_0x7222('0x48')](function(_0x313202){var _0x7b0f12=_0xd0b9ad[_0x7222('0x32')]['test']?0x1f4:_0x313202['statusCode']||0x1f4;logger[_0x7222('0x6f')](_0x7222('0x7b'),_0x7222('0x7c'),_0x7b0f12,JSON[_0x7222('0x7d')](_0x313202));delete _0x313202['name'];if(_0x7b0f12===0x191){_0x7b0f12=0x190;}_0x16b19e[_0x7222('0x1d')](_0x7b0f12)[_0x7222('0x7e')](_0xd0b9ad[_0x7222('0x32')][_0x7222('0x7f')]?{'message':_0x7222('0x80'),'statusCode':_0x313202[_0x7222('0x81')]}:_0x313202);});};
\ No newline at end of file