Built motion from commit 10af8726.|2.6.34
[motion2.git] / server / api / intZohoAccount / intZohoAccount.controller.js
index dae2010..7dfa105 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x6360=['../../config/environment','../../mysqldb','sendStatus','end','offset','undefined','limit','count','status','set','json','apply','reject','update','then','destroy','error','name','send','index','map','rawAttributes','type','key','model','query','keys','filters','intersection','attributes','fields','hasOwnProperty','nolimit','sort','pick','where','merge','VIRTUAL','options','ZohoAccount','includeAll','findAll','catch','show','length','include','find','create','body','params','ZohoConfiguration','order','getConfigurations','findOne','AccountId','Subjects','getSubjects','Descriptions','getDescriptions','zone','https://accounts.zoho.com.au','https://accounts.zoho.eu','https://accounts.zoho.in','POST','clientId','clientSecret','refresh_token','access_token','Unable\x20to\x20retrieve\x20the\x20access\x20token','getFields','serverUrl','code','refreshToken','host','zoho.eu','com','slice','substring','lastIndexOf','format','Calls','Zoho-oauthtoken\x20','response','Owner','Description','WhoId','Call_Result','Call_Type','remove','includes','push','data_type','picklist','pick_list_values','test','statusCode','stringify','rimraf','zip-dir','moment','bluebird','mustache','util','sox','to-csv','lodash','squel','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/advancedSearch','../../config/logger','api','../../config/utils'];(function(_0x40a045,_0x516f0e){var _0x1a687c=function(_0x48c9fe){while(--_0x48c9fe){_0x40a045['push'](_0x40a045['shift']());}};_0x1a687c(++_0x516f0e);}(_0x6360,0x147));var _0x0636=function(_0x285d0f,_0x2cca25){_0x285d0f=_0x285d0f-0x0;var _0x451a08=_0x6360[_0x285d0f];return _0x451a08;};'use strict';var emlformat=require('eml-format');var rimraf=require(_0x0636('0x0'));var zipdir=require(_0x0636('0x1'));var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require(_0x0636('0x2'));var BPromise=require(_0x0636('0x3'));var Mustache=require(_0x0636('0x4'));var util=require(_0x0636('0x5'));var path=require('path');var sox=require(_0x0636('0x6'));var csv=require(_0x0636('0x7'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require('fs-extra');var _=require(_0x0636('0x8'));var squel=require(_0x0636('0x9'));var crypto=require('crypto');var jsforce=require('jsforce');var deskjs=require('desk.js');var toCsv=require(_0x0636('0x7'));var querystring=require(_0x0636('0xa'));var Papa=require(_0x0636('0xb'));var Redis=require(_0x0636('0xc'));var authService=require(_0x0636('0xd'));var qs=require('../../components/parsers/qs');var as=require(_0x0636('0xe'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x0636('0xf'))(_0x0636('0x10'));var utils=require(_0x0636('0x11'));var config=require(_0x0636('0x12'));var licenseUtil=require('../../config/license/util');var db=require(_0x0636('0x13'))['db'];var integrations=require('../../components/integrations/configuration');function respondWithStatusCode(_0x1ce44b,_0x5ecda4){_0x5ecda4=_0x5ecda4||0xcc;return function(_0x19bd1c){if(_0x19bd1c){return _0x1ce44b[_0x0636('0x14')](_0x5ecda4);}return _0x1ce44b['status'](_0x5ecda4)[_0x0636('0x15')]();};}function respondWithResult(_0x540f1d,_0x484206){_0x484206=_0x484206||0xc8;return function(_0x399b9a){if(_0x399b9a){return _0x540f1d['status'](_0x484206)['json'](_0x399b9a);}};}function respondWithFilteredResult(_0x1afb4c,_0x478936){return function(_0x143fe7){if(_0x143fe7){var _0xbb431e=typeof _0x478936[_0x0636('0x16')]===_0x0636('0x17')&&typeof _0x478936[_0x0636('0x18')]===_0x0636('0x17');var _0xa6dc83=_0x143fe7[_0x0636('0x19')];var _0x2ef457=_0xbb431e?0x0:_0x478936[_0x0636('0x16')];var _0x2d1d18=_0xbb431e?_0x143fe7[_0x0636('0x19')]:_0x478936[_0x0636('0x16')]+_0x478936['limit'];var _0x53d56b;if(_0x2d1d18>=_0xa6dc83){_0x2d1d18=_0xa6dc83;_0x53d56b=0xc8;}else{_0x53d56b=0xce;}_0x1afb4c[_0x0636('0x1a')](_0x53d56b);return _0x1afb4c[_0x0636('0x1b')]('Content-Range',_0x2ef457+'-'+_0x2d1d18+'/'+_0xa6dc83)[_0x0636('0x1c')](_0x143fe7);}return null;};}function patchUpdates(_0x55b024){return function(_0x5d8857){try{jsonpatch[_0x0636('0x1d')](_0x5d8857,_0x55b024,!![]);}catch(_0x109bb1){return BPromise[_0x0636('0x1e')](_0x109bb1);}return _0x5d8857['save']();};}function saveUpdates(_0x3b11d2,_0x2da98e){return function(_0x1be1a9){if(_0x1be1a9){return _0x1be1a9[_0x0636('0x1f')](_0x3b11d2)[_0x0636('0x20')](function(_0x2720f0){return _0x2720f0;});}return null;};}function removeEntity(_0x471b84,_0xf12612){return function(_0x543dcd){if(_0x543dcd){return _0x543dcd[_0x0636('0x21')]()[_0x0636('0x20')](function(){_0x471b84['status'](0xcc)[_0x0636('0x15')]();});}};}function handleEntityNotFound(_0x1679b9,_0x4a08f2){return function(_0x654ead){if(!_0x654ead){_0x1679b9[_0x0636('0x14')](0x194);}return _0x654ead;};}function handleError(_0x3fd444,_0x201c30){_0x201c30=_0x201c30||0x1f4;return function(_0x167fc8){logger[_0x0636('0x22')](_0x167fc8['stack']);if(_0x167fc8[_0x0636('0x23')]){delete _0x167fc8[_0x0636('0x23')];}_0x3fd444[_0x0636('0x1a')](_0x201c30)[_0x0636('0x24')](_0x167fc8);};}exports[_0x0636('0x25')]=function(_0x47f324,_0x8469af){var _0x573c32={},_0x4d430d={},_0x4714bd={'count':0x0,'rows':[]};var _0x438f56=_[_0x0636('0x26')](db['ZohoAccount'][_0x0636('0x27')],function(_0x52df93){return{'name':_0x52df93['fieldName'],'type':_0x52df93[_0x0636('0x28')][_0x0636('0x29')]};});_0x4d430d[_0x0636('0x2a')]=_['map'](_0x438f56,_0x0636('0x23'));_0x4d430d[_0x0636('0x2b')]=_[_0x0636('0x2c')](_0x47f324[_0x0636('0x2b')]);_0x4d430d[_0x0636('0x2d')]=_[_0x0636('0x2e')](_0x4d430d[_0x0636('0x2a')],_0x4d430d[_0x0636('0x2b')]);_0x573c32[_0x0636('0x2f')]=_[_0x0636('0x2e')](_0x4d430d[_0x0636('0x2a')],qs[_0x0636('0x30')](_0x47f324[_0x0636('0x2b')]['fields']));_0x573c32[_0x0636('0x2f')]=_0x573c32[_0x0636('0x2f')]['length']?_0x573c32[_0x0636('0x2f')]:_0x4d430d[_0x0636('0x2a')];if(!_0x47f324[_0x0636('0x2b')][_0x0636('0x31')](_0x0636('0x32'))){_0x573c32[_0x0636('0x18')]=qs[_0x0636('0x18')](_0x47f324[_0x0636('0x2b')][_0x0636('0x18')]);_0x573c32[_0x0636('0x16')]=qs['offset'](_0x47f324[_0x0636('0x2b')][_0x0636('0x16')]);}_0x573c32['order']=qs[_0x0636('0x33')](_0x47f324[_0x0636('0x2b')][_0x0636('0x33')]);_0x573c32['where']=qs[_0x0636('0x2d')](_[_0x0636('0x34')](_0x47f324['query'],_0x4d430d['filters']),_0x438f56);if(_0x47f324[_0x0636('0x2b')]['filter']){_0x573c32[_0x0636('0x35')]=_[_0x0636('0x36')](_0x573c32[_0x0636('0x35')],{'$or':_['map'](_0x438f56,function(_0x48b4ab){if(_0x48b4ab[_0x0636('0x28')]!==_0x0636('0x37')){var _0x228903={};_0x228903[_0x48b4ab[_0x0636('0x23')]]={'$like':'%'+_0x47f324[_0x0636('0x2b')]['filter']+'%'};return _0x228903;}})});}_0x573c32=_[_0x0636('0x36')]({},_0x573c32,_0x47f324[_0x0636('0x38')]);var _0x39b2a5={'where':_0x573c32[_0x0636('0x35')]};return db[_0x0636('0x39')]['count'](_0x39b2a5)[_0x0636('0x20')](function(_0x5c6ac0){_0x4714bd[_0x0636('0x19')]=_0x5c6ac0;if(_0x47f324[_0x0636('0x2b')][_0x0636('0x3a')]){_0x573c32['include']=[{'all':!![]}];}return db[_0x0636('0x39')][_0x0636('0x3b')](_0x573c32);})[_0x0636('0x20')](function(_0x480329){_0x4714bd['rows']=_0x480329;return _0x4714bd;})[_0x0636('0x20')](respondWithFilteredResult(_0x8469af,_0x573c32))[_0x0636('0x3c')](handleError(_0x8469af,null));};exports[_0x0636('0x3d')]=function(_0x176904,_0x339a86){var _0x82eadb={'raw':![],'where':{'id':_0x176904['params']['id']}},_0x29bfcc={};_0x29bfcc['model']=_['keys'](db[_0x0636('0x39')]['rawAttributes']);_0x29bfcc[_0x0636('0x2b')]=_['keys'](_0x176904[_0x0636('0x2b')]);_0x29bfcc['filters']=_[_0x0636('0x2e')](_0x29bfcc[_0x0636('0x2a')],_0x29bfcc['query']);_0x82eadb[_0x0636('0x2f')]=_[_0x0636('0x2e')](_0x29bfcc[_0x0636('0x2a')],qs[_0x0636('0x30')](_0x176904['query'][_0x0636('0x30')]));_0x82eadb[_0x0636('0x2f')]=_0x82eadb[_0x0636('0x2f')][_0x0636('0x3e')]?_0x82eadb[_0x0636('0x2f')]:_0x29bfcc['model'];if(_0x176904[_0x0636('0x2b')]['includeAll']){_0x82eadb[_0x0636('0x3f')]=[{'all':!![]}];}_0x82eadb=_['merge']({},_0x82eadb,_0x176904[_0x0636('0x38')]);return db[_0x0636('0x39')][_0x0636('0x40')](_0x82eadb)[_0x0636('0x20')](handleEntityNotFound(_0x339a86,null))['then'](respondWithResult(_0x339a86,null))[_0x0636('0x3c')](handleError(_0x339a86,null));};exports[_0x0636('0x41')]=function(_0x4ac371,_0x5bb63d){return db[_0x0636('0x39')][_0x0636('0x41')](_0x4ac371['body'],{})[_0x0636('0x20')](respondWithResult(_0x5bb63d,0xc9))[_0x0636('0x3c')](handleError(_0x5bb63d,null));};exports[_0x0636('0x1f')]=function(_0x538c48,_0x380f76){if(_0x538c48[_0x0636('0x42')]['id']){delete _0x538c48[_0x0636('0x42')]['id'];}return db[_0x0636('0x39')][_0x0636('0x40')]({'where':{'id':_0x538c48['params']['id']}})[_0x0636('0x20')](handleEntityNotFound(_0x380f76,null))[_0x0636('0x20')](saveUpdates(_0x538c48[_0x0636('0x42')],null))[_0x0636('0x20')](respondWithResult(_0x380f76,null))[_0x0636('0x3c')](handleError(_0x380f76,null));};exports['destroy']=function(_0x1cca52,_0x56503f){return db[_0x0636('0x39')][_0x0636('0x40')]({'where':{'id':_0x1cca52[_0x0636('0x43')]['id']}})[_0x0636('0x20')](handleEntityNotFound(_0x56503f,null))[_0x0636('0x20')](removeEntity(_0x56503f,null))['catch'](handleError(_0x56503f,null));};exports['getConfigurations']=function(_0x4c50a4,_0x5f2ad7,_0x188e6c){var _0x356de6={};var _0x617644={};var _0x4b2fbc;var _0x41ad04;return db['ZohoAccount']['findOne']({'where':{'id':_0x4c50a4[_0x0636('0x43')]['id']}})[_0x0636('0x20')](handleEntityNotFound(_0x5f2ad7,null))[_0x0636('0x20')](function(_0xa7c1bd){if(_0xa7c1bd){_0x4b2fbc=_0xa7c1bd;_0x617644[_0x0636('0x2a')]=_[_0x0636('0x2c')](db[_0x0636('0x44')]['rawAttributes']);_0x617644[_0x0636('0x2b')]=_['keys'](_0x4c50a4[_0x0636('0x2b')]);_0x617644['filters']=_[_0x0636('0x2e')](_0x617644[_0x0636('0x2a')],_0x617644[_0x0636('0x2b')]);_0x356de6[_0x0636('0x2f')]=_[_0x0636('0x2e')](_0x617644['model'],qs[_0x0636('0x30')](_0x4c50a4[_0x0636('0x2b')]['fields']));_0x356de6['attributes']=_0x356de6[_0x0636('0x2f')][_0x0636('0x3e')]?_0x356de6['attributes']:_0x617644[_0x0636('0x2a')];_0x356de6[_0x0636('0x45')]=qs[_0x0636('0x33')](_0x4c50a4[_0x0636('0x2b')][_0x0636('0x33')]);_0x356de6[_0x0636('0x35')]=qs[_0x0636('0x2d')](_[_0x0636('0x34')](_0x4c50a4[_0x0636('0x2b')],_0x617644[_0x0636('0x2d')]));if(_0x4c50a4[_0x0636('0x2b')]['filter']){_0x356de6[_0x0636('0x35')]=_[_0x0636('0x36')](_0x356de6[_0x0636('0x35')],{'$or':_[_0x0636('0x26')](_0x356de6[_0x0636('0x2f')],function(_0x176b3a){var _0x491fc5={};_0x491fc5[_0x176b3a]={'$like':'%'+_0x4c50a4[_0x0636('0x2b')]['filter']+'%'};return _0x491fc5;})});}_0x356de6=_[_0x0636('0x36')]({},_0x356de6,_0x4c50a4[_0x0636('0x38')]);return _0x4b2fbc[_0x0636('0x46')](_0x356de6);}})[_0x0636('0x20')](function(_0x5873d1){if(_0x5873d1){_0x41ad04=_0x5873d1[_0x0636('0x3e')];if(!_0x4c50a4['query']['hasOwnProperty']('nolimit')){_0x356de6[_0x0636('0x18')]=qs[_0x0636('0x18')](_0x4c50a4[_0x0636('0x2b')][_0x0636('0x18')]);_0x356de6[_0x0636('0x16')]=qs[_0x0636('0x16')](_0x4c50a4[_0x0636('0x2b')][_0x0636('0x16')]);}return _0x4b2fbc[_0x0636('0x46')](_0x356de6);}})['then'](function(_0x3dfd6e){if(_0x3dfd6e){return _0x3dfd6e?{'count':_0x41ad04,'rows':_0x3dfd6e}:null;}})[_0x0636('0x20')](respondWithResult(_0x5f2ad7,null))[_0x0636('0x3c')](handleError(_0x5f2ad7,null));};exports['addConfiguration']=function(_0x450580,_0x5a7d31,_0x43c3c2){if(_0x450580['body']['id']){delete _0x450580[_0x0636('0x42')]['id'];}return db[_0x0636('0x39')][_0x0636('0x47')]({'where':{'id':_0x450580[_0x0636('0x43')]['id']}})[_0x0636('0x20')](handleEntityNotFound(_0x5a7d31,null))['then'](function(_0x19929f){if(_0x19929f){_0x450580[_0x0636('0x42')][_0x0636('0x48')]=_0x19929f['id'];_0x450580[_0x0636('0x42')][_0x0636('0x49')]=integrations[_0x0636('0x4a')](_0x450580[_0x0636('0x42')]['channel'],_0x450580[_0x0636('0x42')][_0x0636('0x28')]);_0x450580[_0x0636('0x42')][_0x0636('0x4b')]=integrations[_0x0636('0x4c')](_0x450580[_0x0636('0x42')]['channel'],_0x450580[_0x0636('0x42')]['type']);return db['ZohoConfiguration']['create'](_0x450580['body'],{'include':[{'model':db['ZohoField'],'as':_0x0636('0x49')},{'model':db['ZohoField'],'as':_0x0636('0x4b')}]});}return null;})[_0x0636('0x20')](respondWithResult(_0x5a7d31,null))[_0x0636('0x3c')](handleError(_0x5a7d31,null));};function getAccessToken(_0x48d569){return new Promise(function(_0x20206b,_0x157e44){var _0x77293;switch(_0x48d569[_0x0636('0x4d')]){case'US':_0x77293='https://accounts.zoho.com';break;case'AU':_0x77293=_0x0636('0x4e');break;case'EU':_0x77293=_0x0636('0x4f');break;case'IN':_0x77293=_0x0636('0x50');break;case'CN':_0x77293='https://accounts.zoho.com.cn';break;default:_0x77293=_0x0636('0x4f');break;}var _0x20416b={'method':_0x0636('0x51'),'uri':_0x77293+'/oauth/v2/token','qs':{'refresh_token':_0x48d569['refreshToken'],'client_id':_0x48d569[_0x0636('0x52')],'client_secret':_0x48d569[_0x0636('0x53')],'grant_type':_0x0636('0x54')},'json':!![]};return rp(_0x20416b)[_0x0636('0x20')](function(_0x42fd45){if(_0x42fd45[_0x0636('0x55')]){_0x20206b(_0x42fd45[_0x0636('0x55')]);}else{_0x157e44(_0x0636('0x56'));}})[_0x0636('0x3c')](function(_0x50fbc7){_0x157e44(_0x50fbc7);});});}exports[_0x0636('0x57')]=function(_0x6b7096,_0x22f4db,_0x13eaed){var _0x470241,_0x10a46f,_0x81b477,_0x47c9b5,_0x490d15;return db[_0x0636('0x39')][_0x0636('0x47')]({'where':{'id':_0x6b7096[_0x0636('0x43')]['id']},'attributes':['id','host','zone',_0x0636('0x52'),_0x0636('0x53'),_0x0636('0x58'),_0x0636('0x59'),_0x0636('0x5a')]})['then'](handleEntityNotFound(_0x22f4db,null))[_0x0636('0x20')](function(_0x46a2cf){_0x490d15=_0x46a2cf;_0x470241=_0x490d15[_0x0636('0x5b')];_0x10a46f=_0x470241===_0x0636('0x5c')?'eu':_0x0636('0x5d');_0x81b477=_0x490d15[_0x0636('0x58')];var _0x16ff5e=_0x81b477[_0x0636('0x5e')](-0x1);if(_0x16ff5e==='/'||_0x16ff5e==='\x5c'||_0x16ff5e===':'){_0x81b477=_0x81b477[_0x0636('0x5f')](0x0,_0x81b477[_0x0636('0x60')](_0x16ff5e));}if(!_0x490d15[_0x0636('0x5a')]){throw new Error('Refresh\x20Token\x20not\x20available\x20for\x20the\x20account');}return getAccessToken(_0x490d15);})[_0x0636('0x20')](function(_0x5d409b){if(_0x5d409b){return rp({'method':'GET','uri':util[_0x0636('0x61')]('https://www.zohoapis.%s/crm/v2/settings/fields',_0x10a46f),'qs':{'module':_0x0636('0x62')},'headers':{'Authorization':_0x0636('0x63')+_0x5d409b},'json':!![]});}})[_0x0636('0x20')](function(_0x45db27){if(_0x45db27){if(_0x45db27['response']&&_0x45db27[_0x0636('0x64')]['error']){throw new Error(_0x45db27[_0x0636('0x64')][_0x0636('0x22')]['message']);}var _0x3d61ea=[];var _0x3367a0=[];var _0x50a438=[_0x0636('0x65'),'Subject',_0x0636('0x66'),_0x0636('0x67'),'Call_Duration',_0x0636('0x68'),'Call_Start_Time',_0x0636('0x69')];_0x3367a0=_[_0x0636('0x6a')](_0x45db27[_0x0636('0x30')],function(_0x1dfd6f){return _0x50a438[_0x0636('0x6b')](_0x1dfd6f['api_name']);});for(var _0x144dee=0x0;_0x144dee<_0x3367a0[_0x0636('0x3e')];_0x144dee++){if(_0x3367a0[_0x144dee]['system_mandatory']===![]){_0x3d61ea[_0x0636('0x6c')]({'id':_0x3367a0[_0x144dee]['id'],'name':_0x3367a0[_0x144dee]['display_label'],'custom':_0x3367a0[_0x144dee]['custom_field'],'options':_0x3367a0[_0x144dee][_0x0636('0x6d')]===_0x0636('0x6e')&&_0x3367a0[_0x144dee][_0x0636('0x6f')][_0x0636('0x3e')]>-0x1?_['map'](_0x3367a0[_0x144dee]['pick_list_values'],function(_0x4689ff){return{'name':_0x4689ff,'value':_0x4689ff};}):[]});}}return{'count':_0x3d61ea['length'],'rows':_0x3d61ea};}else{return{'count':0x0,'rows':[]};}})['then'](respondWithResult(_0x22f4db,null))['catch'](function(_0x378a1d){var _0x47872b=_0x6b7096[_0x0636('0x2b')][_0x0636('0x70')]?0x1f4:_0x378a1d[_0x0636('0x71')]||0x1f4;logger[_0x0636('0x22')]('getFields,\x20%s,\x20%s,\x20%s',_0x0636('0x57'),_0x47872b,JSON[_0x0636('0x72')](_0x378a1d));delete _0x378a1d[_0x0636('0x23')];if(_0x47872b===0x191){_0x47872b=0x190;}_0x22f4db[_0x0636('0x1a')](_0x47872b)[_0x0636('0x24')](_0x6b7096['query']['test']?{'message':'Wrong\x20credentials','statusCode':_0x378a1d[_0x0636('0x71')]}:_0x378a1d);});};
\ No newline at end of file
+var _0x972d=['filters','attributes','intersection','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','merge','VIRTUAL','filter','options','includeAll','include','findAll','rows','catch','show','params','create','body','update','find','getConfigurations','findOne','addConfiguration','Subjects','Descriptions','getDescriptions','ZohoConfiguration','ZohoField','https://accounts.zoho.com','https://accounts.zoho.com.au','https://accounts.zoho.in','https://accounts.zoho.com.cn','https://accounts.zoho.eu','POST','/oauth/v2/token','refreshToken','clientSecret','refresh_token','access_token','Unable\x20to\x20retrieve\x20the\x20access\x20token','getFields','host','zone','serverUrl','code','com','slice','substring','lastIndexOf','Refresh\x20Token\x20not\x20available\x20for\x20the\x20account','GET','format','Zoho-oauthtoken\x20','response','message','Owner','Subject','Description','Call_Duration','Call_Result','Call_Start_Time','Call_Type','remove','api_name','system_mandatory','push','display_label','custom_field','data_type','pick_list_values','getFields,\x20%s,\x20%s,\x20%s','stringify','test','Wrong\x20credentials','statusCode','eml-format','rimraf','fast-json-patch','request-promise','moment','mustache','util','path','ejs','fs-extra','squel','crypto','jsforce','desk.js','to-csv','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../mysqldb','../../components/integrations/configuration','sendStatus','json','offset','undefined','limit','count','status','set','apply','reject','then','destroy','end','error','stack','name','index','ZohoAccount','rawAttributes','fieldName','type','key','model','map','query','keys'];(function(_0x59180a,_0x577089){var _0x3c163c=function(_0x4cfa57){while(--_0x4cfa57){_0x59180a['push'](_0x59180a['shift']());}};_0x3c163c(++_0x577089);}(_0x972d,0x15b));var _0xd972=function(_0x362a0a,_0x1c9a59){_0x362a0a=_0x362a0a-0x0;var _0x5063dc=_0x972d[_0x362a0a];return _0x5063dc;};'use strict';var emlformat=require(_0xd972('0x0'));var rimraf=require(_0xd972('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0xd972('0x2'));var rp=require(_0xd972('0x3'));var moment=require(_0xd972('0x4'));var BPromise=require('bluebird');var Mustache=require(_0xd972('0x5'));var util=require(_0xd972('0x6'));var path=require(_0xd972('0x7'));var sox=require('sox');var csv=require('to-csv');var ejs=require(_0xd972('0x8'));var fs=require('fs');var fs_extra=require(_0xd972('0x9'));var _=require('lodash');var squel=require(_0xd972('0xa'));var crypto=require(_0xd972('0xb'));var jsforce=require(_0xd972('0xc'));var deskjs=require(_0xd972('0xd'));var toCsv=require(_0xd972('0xe'));var querystring=require('querystring');var Papa=require(_0xd972('0xf'));var Redis=require(_0xd972('0x10'));var authService=require(_0xd972('0x11'));var qs=require(_0xd972('0x12'));var as=require(_0xd972('0x13'));var hardwareService=require(_0xd972('0x14'));var logger=require(_0xd972('0x15'))(_0xd972('0x16'));var utils=require(_0xd972('0x17'));var config=require('../../config/environment');var licenseUtil=require('../../config/license/util');var db=require(_0xd972('0x18'))['db'];var integrations=require(_0xd972('0x19'));function respondWithStatusCode(_0x20cd71,_0x11248d){_0x11248d=_0x11248d||0xcc;return function(_0x4c855b){if(_0x4c855b){return _0x20cd71[_0xd972('0x1a')](_0x11248d);}return _0x20cd71['status'](_0x11248d)['end']();};}function respondWithResult(_0x32a5a2,_0x33fb03){_0x33fb03=_0x33fb03||0xc8;return function(_0x4c2744){if(_0x4c2744){return _0x32a5a2['status'](_0x33fb03)[_0xd972('0x1b')](_0x4c2744);}};}function respondWithFilteredResult(_0x4d12a8,_0x4a8e52){return function(_0x5b6ecd){if(_0x5b6ecd){var _0x4bb1a8=typeof _0x4a8e52[_0xd972('0x1c')]===_0xd972('0x1d')&&typeof _0x4a8e52[_0xd972('0x1e')]===_0xd972('0x1d');var _0x2eb12c=_0x5b6ecd[_0xd972('0x1f')];var _0x29aeff=_0x4bb1a8?0x0:_0x4a8e52[_0xd972('0x1c')];var _0x573e28=_0x4bb1a8?_0x5b6ecd[_0xd972('0x1f')]:_0x4a8e52['offset']+_0x4a8e52['limit'];var _0x846784;if(_0x573e28>=_0x2eb12c){_0x573e28=_0x2eb12c;_0x846784=0xc8;}else{_0x846784=0xce;}_0x4d12a8[_0xd972('0x20')](_0x846784);return _0x4d12a8[_0xd972('0x21')]('Content-Range',_0x29aeff+'-'+_0x573e28+'/'+_0x2eb12c)[_0xd972('0x1b')](_0x5b6ecd);}return null;};}function patchUpdates(_0x15bf1f){return function(_0x5dfce9){try{jsonpatch[_0xd972('0x22')](_0x5dfce9,_0x15bf1f,!![]);}catch(_0x3ffc8b){return BPromise[_0xd972('0x23')](_0x3ffc8b);}return _0x5dfce9['save']();};}function saveUpdates(_0x52bc14,_0x382a54){return function(_0x46ee82){if(_0x46ee82){return _0x46ee82['update'](_0x52bc14)[_0xd972('0x24')](function(_0x4a1969){return _0x4a1969;});}return null;};}function removeEntity(_0x38afa9,_0x36964c){return function(_0x5002a8){if(_0x5002a8){return _0x5002a8[_0xd972('0x25')]()[_0xd972('0x24')](function(){_0x38afa9['status'](0xcc)[_0xd972('0x26')]();});}};}function handleEntityNotFound(_0x55fcc5,_0x241d4f){return function(_0x240413){if(!_0x240413){_0x55fcc5[_0xd972('0x1a')](0x194);}return _0x240413;};}function handleError(_0xbb86c2,_0xafdbc4){_0xafdbc4=_0xafdbc4||0x1f4;return function(_0x5cee23){logger[_0xd972('0x27')](_0x5cee23[_0xd972('0x28')]);if(_0x5cee23[_0xd972('0x29')]){delete _0x5cee23[_0xd972('0x29')];}_0xbb86c2[_0xd972('0x20')](_0xafdbc4)['send'](_0x5cee23);};}exports[_0xd972('0x2a')]=function(_0x3b825d,_0x5a0926){var _0x56cb98={},_0x82f2b1={},_0x5767e2={'count':0x0,'rows':[]};var _0x3b6507=_['map'](db[_0xd972('0x2b')][_0xd972('0x2c')],function(_0x5d5ff5){return{'name':_0x5d5ff5[_0xd972('0x2d')],'type':_0x5d5ff5[_0xd972('0x2e')][_0xd972('0x2f')]};});_0x82f2b1[_0xd972('0x30')]=_[_0xd972('0x31')](_0x3b6507,_0xd972('0x29'));_0x82f2b1[_0xd972('0x32')]=_[_0xd972('0x33')](_0x3b825d[_0xd972('0x32')]);_0x82f2b1[_0xd972('0x34')]=_['intersection'](_0x82f2b1['model'],_0x82f2b1[_0xd972('0x32')]);_0x56cb98[_0xd972('0x35')]=_[_0xd972('0x36')](_0x82f2b1[_0xd972('0x30')],qs[_0xd972('0x37')](_0x3b825d[_0xd972('0x32')][_0xd972('0x37')]));_0x56cb98['attributes']=_0x56cb98['attributes'][_0xd972('0x38')]?_0x56cb98[_0xd972('0x35')]:_0x82f2b1[_0xd972('0x30')];if(!_0x3b825d[_0xd972('0x32')][_0xd972('0x39')](_0xd972('0x3a'))){_0x56cb98['limit']=qs[_0xd972('0x1e')](_0x3b825d[_0xd972('0x32')][_0xd972('0x1e')]);_0x56cb98[_0xd972('0x1c')]=qs[_0xd972('0x1c')](_0x3b825d['query'][_0xd972('0x1c')]);}_0x56cb98[_0xd972('0x3b')]=qs[_0xd972('0x3c')](_0x3b825d[_0xd972('0x32')][_0xd972('0x3c')]);_0x56cb98[_0xd972('0x3d')]=qs[_0xd972('0x34')](_[_0xd972('0x3e')](_0x3b825d[_0xd972('0x32')],_0x82f2b1['filters']),_0x3b6507);if(_0x3b825d['query']['filter']){_0x56cb98[_0xd972('0x3d')]=_[_0xd972('0x3f')](_0x56cb98['where'],{'$or':_[_0xd972('0x31')](_0x3b6507,function(_0x341f54){if(_0x341f54[_0xd972('0x2e')]!==_0xd972('0x40')){var _0x2c2e71={};_0x2c2e71[_0x341f54[_0xd972('0x29')]]={'$like':'%'+_0x3b825d[_0xd972('0x32')][_0xd972('0x41')]+'%'};return _0x2c2e71;}})});}_0x56cb98=_[_0xd972('0x3f')]({},_0x56cb98,_0x3b825d[_0xd972('0x42')]);var _0x5b7325={'where':_0x56cb98[_0xd972('0x3d')]};return db[_0xd972('0x2b')][_0xd972('0x1f')](_0x5b7325)['then'](function(_0x351fd7){_0x5767e2[_0xd972('0x1f')]=_0x351fd7;if(_0x3b825d[_0xd972('0x32')][_0xd972('0x43')]){_0x56cb98[_0xd972('0x44')]=[{'all':!![]}];}return db[_0xd972('0x2b')][_0xd972('0x45')](_0x56cb98);})[_0xd972('0x24')](function(_0x434c46){_0x5767e2[_0xd972('0x46')]=_0x434c46;return _0x5767e2;})['then'](respondWithFilteredResult(_0x5a0926,_0x56cb98))[_0xd972('0x47')](handleError(_0x5a0926,null));};exports[_0xd972('0x48')]=function(_0x51e530,_0x5de026){var _0x40ef99={'raw':![],'where':{'id':_0x51e530[_0xd972('0x49')]['id']}},_0x5c3706={};_0x5c3706['model']=_[_0xd972('0x33')](db[_0xd972('0x2b')][_0xd972('0x2c')]);_0x5c3706['query']=_[_0xd972('0x33')](_0x51e530[_0xd972('0x32')]);_0x5c3706['filters']=_[_0xd972('0x36')](_0x5c3706[_0xd972('0x30')],_0x5c3706['query']);_0x40ef99['attributes']=_['intersection'](_0x5c3706[_0xd972('0x30')],qs[_0xd972('0x37')](_0x51e530[_0xd972('0x32')]['fields']));_0x40ef99[_0xd972('0x35')]=_0x40ef99['attributes'][_0xd972('0x38')]?_0x40ef99[_0xd972('0x35')]:_0x5c3706[_0xd972('0x30')];if(_0x51e530['query'][_0xd972('0x43')]){_0x40ef99[_0xd972('0x44')]=[{'all':!![]}];}_0x40ef99=_['merge']({},_0x40ef99,_0x51e530[_0xd972('0x42')]);return db[_0xd972('0x2b')]['find'](_0x40ef99)[_0xd972('0x24')](handleEntityNotFound(_0x5de026,null))[_0xd972('0x24')](respondWithResult(_0x5de026,null))[_0xd972('0x47')](handleError(_0x5de026,null));};exports['create']=function(_0x59acac,_0x2393f8){return db['ZohoAccount'][_0xd972('0x4a')](_0x59acac[_0xd972('0x4b')],{})[_0xd972('0x24')](respondWithResult(_0x2393f8,0xc9))[_0xd972('0x47')](handleError(_0x2393f8,null));};exports[_0xd972('0x4c')]=function(_0x1fdb8a,_0x12dd8c){if(_0x1fdb8a[_0xd972('0x4b')]['id']){delete _0x1fdb8a['body']['id'];}return db['ZohoAccount'][_0xd972('0x4d')]({'where':{'id':_0x1fdb8a[_0xd972('0x49')]['id']}})[_0xd972('0x24')](handleEntityNotFound(_0x12dd8c,null))[_0xd972('0x24')](saveUpdates(_0x1fdb8a[_0xd972('0x4b')],null))[_0xd972('0x24')](respondWithResult(_0x12dd8c,null))[_0xd972('0x47')](handleError(_0x12dd8c,null));};exports[_0xd972('0x25')]=function(_0x4f84cb,_0x33952f){return db[_0xd972('0x2b')]['find']({'where':{'id':_0x4f84cb[_0xd972('0x49')]['id']}})[_0xd972('0x24')](handleEntityNotFound(_0x33952f,null))['then'](removeEntity(_0x33952f,null))[_0xd972('0x47')](handleError(_0x33952f,null));};exports[_0xd972('0x4e')]=function(_0x438581,_0x2e14bf,_0x2f3937){var _0x4e0b32={};var _0x57b6b5={};var _0x34895d;var _0x9915dc;return db[_0xd972('0x2b')][_0xd972('0x4f')]({'where':{'id':_0x438581['params']['id']}})[_0xd972('0x24')](handleEntityNotFound(_0x2e14bf,null))[_0xd972('0x24')](function(_0x5dfec3){if(_0x5dfec3){_0x34895d=_0x5dfec3;_0x57b6b5[_0xd972('0x30')]=_[_0xd972('0x33')](db['ZohoConfiguration'][_0xd972('0x2c')]);_0x57b6b5[_0xd972('0x32')]=_[_0xd972('0x33')](_0x438581[_0xd972('0x32')]);_0x57b6b5[_0xd972('0x34')]=_[_0xd972('0x36')](_0x57b6b5['model'],_0x57b6b5[_0xd972('0x32')]);_0x4e0b32[_0xd972('0x35')]=_[_0xd972('0x36')](_0x57b6b5[_0xd972('0x30')],qs[_0xd972('0x37')](_0x438581[_0xd972('0x32')][_0xd972('0x37')]));_0x4e0b32[_0xd972('0x35')]=_0x4e0b32[_0xd972('0x35')][_0xd972('0x38')]?_0x4e0b32[_0xd972('0x35')]:_0x57b6b5[_0xd972('0x30')];_0x4e0b32[_0xd972('0x3b')]=qs[_0xd972('0x3c')](_0x438581[_0xd972('0x32')][_0xd972('0x3c')]);_0x4e0b32[_0xd972('0x3d')]=qs[_0xd972('0x34')](_[_0xd972('0x3e')](_0x438581['query'],_0x57b6b5['filters']));if(_0x438581[_0xd972('0x32')][_0xd972('0x41')]){_0x4e0b32['where']=_[_0xd972('0x3f')](_0x4e0b32['where'],{'$or':_[_0xd972('0x31')](_0x4e0b32[_0xd972('0x35')],function(_0x41b45e){var _0x2909e5={};_0x2909e5[_0x41b45e]={'$like':'%'+_0x438581['query'][_0xd972('0x41')]+'%'};return _0x2909e5;})});}_0x4e0b32=_[_0xd972('0x3f')]({},_0x4e0b32,_0x438581[_0xd972('0x42')]);return _0x34895d[_0xd972('0x4e')](_0x4e0b32);}})[_0xd972('0x24')](function(_0x5c64b5){if(_0x5c64b5){_0x9915dc=_0x5c64b5['length'];if(!_0x438581[_0xd972('0x32')][_0xd972('0x39')](_0xd972('0x3a'))){_0x4e0b32[_0xd972('0x1e')]=qs['limit'](_0x438581[_0xd972('0x32')][_0xd972('0x1e')]);_0x4e0b32[_0xd972('0x1c')]=qs[_0xd972('0x1c')](_0x438581[_0xd972('0x32')][_0xd972('0x1c')]);}return _0x34895d[_0xd972('0x4e')](_0x4e0b32);}})[_0xd972('0x24')](function(_0x496a76){if(_0x496a76){return _0x496a76?{'count':_0x9915dc,'rows':_0x496a76}:null;}})[_0xd972('0x24')](respondWithResult(_0x2e14bf,null))['catch'](handleError(_0x2e14bf,null));};exports[_0xd972('0x50')]=function(_0x4970ad,_0x2a7e1e,_0x397dfd){if(_0x4970ad[_0xd972('0x4b')]['id']){delete _0x4970ad[_0xd972('0x4b')]['id'];}return db[_0xd972('0x2b')][_0xd972('0x4f')]({'where':{'id':_0x4970ad[_0xd972('0x49')]['id']}})[_0xd972('0x24')](handleEntityNotFound(_0x2a7e1e,null))[_0xd972('0x24')](function(_0x183a13){if(_0x183a13){_0x4970ad[_0xd972('0x4b')]['AccountId']=_0x183a13['id'];_0x4970ad[_0xd972('0x4b')][_0xd972('0x51')]=integrations['getSubjects'](_0x4970ad[_0xd972('0x4b')]['channel'],_0x4970ad[_0xd972('0x4b')][_0xd972('0x2e')]);_0x4970ad[_0xd972('0x4b')][_0xd972('0x52')]=integrations[_0xd972('0x53')](_0x4970ad[_0xd972('0x4b')]['channel'],_0x4970ad['body'][_0xd972('0x2e')]);return db[_0xd972('0x54')][_0xd972('0x4a')](_0x4970ad[_0xd972('0x4b')],{'include':[{'model':db[_0xd972('0x55')],'as':_0xd972('0x51')},{'model':db[_0xd972('0x55')],'as':_0xd972('0x52')}]});}return null;})['then'](respondWithResult(_0x2a7e1e,null))[_0xd972('0x47')](handleError(_0x2a7e1e,null));};function getAccessToken(_0x1f1917){return new Promise(function(_0x43d11d,_0x551b87){var _0x3e2742;switch(_0x1f1917['zone']){case'US':_0x3e2742=_0xd972('0x56');break;case'AU':_0x3e2742=_0xd972('0x57');break;case'EU':_0x3e2742='https://accounts.zoho.eu';break;case'IN':_0x3e2742=_0xd972('0x58');break;case'CN':_0x3e2742=_0xd972('0x59');break;default:_0x3e2742=_0xd972('0x5a');break;}var _0x135b03={'method':_0xd972('0x5b'),'uri':_0x3e2742+_0xd972('0x5c'),'qs':{'refresh_token':_0x1f1917[_0xd972('0x5d')],'client_id':_0x1f1917['clientId'],'client_secret':_0x1f1917[_0xd972('0x5e')],'grant_type':_0xd972('0x5f')},'json':!![]};return rp(_0x135b03)[_0xd972('0x24')](function(_0xdb524b){if(_0xdb524b[_0xd972('0x60')]){_0x43d11d(_0xdb524b[_0xd972('0x60')]);}else{_0x551b87(_0xd972('0x61'));}})[_0xd972('0x47')](function(_0x19aa8d){_0x551b87(_0x19aa8d);});});}exports[_0xd972('0x62')]=function(_0x36dda6,_0x355cf9,_0x348b1b){var _0x390a17,_0x3ffb8b,_0x133a84,_0xe053c0,_0x5af201;return db['ZohoAccount'][_0xd972('0x4f')]({'where':{'id':_0x36dda6['params']['id']},'attributes':['id',_0xd972('0x63'),_0xd972('0x64'),'clientId','clientSecret',_0xd972('0x65'),_0xd972('0x66'),_0xd972('0x5d')]})[_0xd972('0x24')](handleEntityNotFound(_0x355cf9,null))[_0xd972('0x24')](function(_0x3f051e){_0x5af201=_0x3f051e;_0x390a17=_0x5af201[_0xd972('0x63')];_0x3ffb8b=_0x390a17==='zoho.eu'?'eu':_0xd972('0x67');_0x133a84=_0x5af201['serverUrl'];var _0xa9a9a9=_0x133a84[_0xd972('0x68')](-0x1);if(_0xa9a9a9==='/'||_0xa9a9a9==='\x5c'||_0xa9a9a9===':'){_0x133a84=_0x133a84[_0xd972('0x69')](0x0,_0x133a84[_0xd972('0x6a')](_0xa9a9a9));}if(!_0x5af201['refreshToken']){throw new Error(_0xd972('0x6b'));}return getAccessToken(_0x5af201);})[_0xd972('0x24')](function(_0x2a3be9){if(_0x2a3be9){return rp({'method':_0xd972('0x6c'),'uri':util[_0xd972('0x6d')]('https://www.zohoapis.%s/crm/v2/settings/fields',_0x3ffb8b),'qs':{'module':'Calls'},'headers':{'Authorization':_0xd972('0x6e')+_0x2a3be9},'json':!![]});}})[_0xd972('0x24')](function(_0x710320){if(_0x710320){if(_0x710320[_0xd972('0x6f')]&&_0x710320['response']['error']){throw new Error(_0x710320[_0xd972('0x6f')][_0xd972('0x27')][_0xd972('0x70')]);}var _0x444c57=[];var _0x21507c=[];var _0x1b5e80=[_0xd972('0x71'),_0xd972('0x72'),_0xd972('0x73'),'WhoId',_0xd972('0x74'),_0xd972('0x75'),_0xd972('0x76'),_0xd972('0x77')];_0x21507c=_[_0xd972('0x78')](_0x710320['fields'],function(_0x1d4786){return _0x1b5e80['includes'](_0x1d4786[_0xd972('0x79')]);});for(var _0x51f792=0x0;_0x51f792<_0x21507c[_0xd972('0x38')];_0x51f792++){if(_0x21507c[_0x51f792][_0xd972('0x7a')]===![]){_0x444c57[_0xd972('0x7b')]({'id':_0x21507c[_0x51f792]['id'],'name':_0x21507c[_0x51f792][_0xd972('0x7c')],'custom':_0x21507c[_0x51f792][_0xd972('0x7d')],'options':_0x21507c[_0x51f792][_0xd972('0x7e')]==='picklist'&&_0x21507c[_0x51f792][_0xd972('0x7f')][_0xd972('0x38')]>-0x1?_[_0xd972('0x31')](_0x21507c[_0x51f792]['pick_list_values'],function(_0x358dbe){return{'name':_0x358dbe,'value':_0x358dbe};}):[]});}}return{'count':_0x444c57[_0xd972('0x38')],'rows':_0x444c57};}else{return{'count':0x0,'rows':[]};}})[_0xd972('0x24')](respondWithResult(_0x355cf9,null))[_0xd972('0x47')](function(_0x2fc74b){var _0x2b958e=_0x36dda6[_0xd972('0x32')]['test']?0x1f4:_0x2fc74b['statusCode']||0x1f4;logger[_0xd972('0x27')](_0xd972('0x80'),_0xd972('0x62'),_0x2b958e,JSON[_0xd972('0x81')](_0x2fc74b));delete _0x2fc74b[_0xd972('0x29')];if(_0x2b958e===0x191){_0x2b958e=0x190;}_0x355cf9[_0xd972('0x20')](_0x2b958e)['send'](_0x36dda6[_0xd972('0x32')][_0xd972('0x82')]?{'message':_0xd972('0x83'),'statusCode':_0x2fc74b[_0xd972('0x84')]}:_0x2fc74b);});};
\ No newline at end of file