Built motion from commit eddce310.|2.6.12
[motion2.git] / server / api / intZohoAccount / intZohoAccount.controller.js
index dae2010..a648ba9 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 _0xfaf3=['jsforce','desk.js','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','../../components/integrations/configuration','sendStatus','status','end','offset','limit','count','set','Content-Range','json','apply','save','update','then','destroy','error','stack','name','send','index','map','ZohoAccount','rawAttributes','type','key','model','query','filters','intersection','attributes','fields','hasOwnProperty','nolimit','order','sort','pick','where','merge','filter','includeAll','include','findAll','rows','catch','show','params','keys','length','options','find','create','body','findOne','ZohoConfiguration','addConfiguration','AccountId','Subjects','channel','Descriptions','ZohoField','zone','https://accounts.zoho.com','https://accounts.zoho.com.au','https://accounts.zoho.eu','https://accounts.zoho.in','https://accounts.zoho.com.cn','POST','/oauth/v2/token','clientSecret','refresh_token','access_token','Unable\x20to\x20retrieve\x20the\x20access\x20token','getFields','host','clientId','serverUrl','code','refreshToken','zoho.eu','com','slice','substring','lastIndexOf','Refresh\x20Token\x20not\x20available\x20for\x20the\x20account','GET','format','https://www.zohoapis.%s/crm/v2/settings/fields','Calls','Zoho-oauthtoken\x20','response','message','Owner','Description','WhoId','Call_Duration','Call_Result','Call_Start_Time','remove','includes','api_name','push','data_type','pick_list_values','test','statusCode','getFields,\x20%s,\x20%s,\x20%s','stringify','Wrong\x20credentials','eml-format','rimraf','zip-dir','moment','mustache','util','path','sox','to-csv','fs-extra','crypto'];(function(_0x2a240d,_0x43fa5e){var _0x48fc79=function(_0x2df94d){while(--_0x2df94d){_0x2a240d['push'](_0x2a240d['shift']());}};_0x48fc79(++_0x43fa5e);}(_0xfaf3,0x181));var _0x3faf=function(_0x1d4db1,_0x352324){_0x1d4db1=_0x1d4db1-0x0;var _0x213150=_0xfaf3[_0x1d4db1];return _0x213150;};'use strict';var emlformat=require(_0x3faf('0x0'));var rimraf=require(_0x3faf('0x1'));var zipdir=require(_0x3faf('0x2'));var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require(_0x3faf('0x3'));var BPromise=require('bluebird');var Mustache=require(_0x3faf('0x4'));var util=require(_0x3faf('0x5'));var path=require(_0x3faf('0x6'));var sox=require(_0x3faf('0x7'));var csv=require(_0x3faf('0x8'));var ejs=require('ejs');var fs=require('fs');var fs_extra=require(_0x3faf('0x9'));var _=require('lodash');var squel=require('squel');var crypto=require(_0x3faf('0xa'));var jsforce=require(_0x3faf('0xb'));var deskjs=require(_0x3faf('0xc'));var toCsv=require(_0x3faf('0x8'));var querystring=require('querystring');var Papa=require(_0x3faf('0xd'));var Redis=require(_0x3faf('0xe'));var authService=require(_0x3faf('0xf'));var qs=require(_0x3faf('0x10'));var as=require(_0x3faf('0x11'));var hardwareService=require(_0x3faf('0x12'));var logger=require(_0x3faf('0x13'))(_0x3faf('0x14'));var utils=require(_0x3faf('0x15'));var config=require(_0x3faf('0x16'));var licenseUtil=require(_0x3faf('0x17'));var db=require('../../mysqldb')['db'];var integrations=require(_0x3faf('0x18'));function respondWithStatusCode(_0x5d7c1f,_0x3aece0){_0x3aece0=_0x3aece0||0xcc;return function(_0x38bdc5){if(_0x38bdc5){return _0x5d7c1f[_0x3faf('0x19')](_0x3aece0);}return _0x5d7c1f[_0x3faf('0x1a')](_0x3aece0)[_0x3faf('0x1b')]();};}function respondWithResult(_0x4168de,_0x3fd840){_0x3fd840=_0x3fd840||0xc8;return function(_0x49fac8){if(_0x49fac8){return _0x4168de[_0x3faf('0x1a')](_0x3fd840)['json'](_0x49fac8);}};}function respondWithFilteredResult(_0x2c8c27,_0x170e77){return function(_0x550d20){if(_0x550d20){var _0x394c07=typeof _0x170e77[_0x3faf('0x1c')]==='undefined'&&typeof _0x170e77[_0x3faf('0x1d')]==='undefined';var _0x1b7493=_0x550d20[_0x3faf('0x1e')];var _0x5c18cc=_0x394c07?0x0:_0x170e77['offset'];var _0x13f5d7=_0x394c07?_0x550d20['count']:_0x170e77[_0x3faf('0x1c')]+_0x170e77[_0x3faf('0x1d')];var _0x5e247f;if(_0x13f5d7>=_0x1b7493){_0x13f5d7=_0x1b7493;_0x5e247f=0xc8;}else{_0x5e247f=0xce;}_0x2c8c27[_0x3faf('0x1a')](_0x5e247f);return _0x2c8c27[_0x3faf('0x1f')](_0x3faf('0x20'),_0x5c18cc+'-'+_0x13f5d7+'/'+_0x1b7493)[_0x3faf('0x21')](_0x550d20);}return null;};}function patchUpdates(_0x136a93){return function(_0x385e50){try{jsonpatch[_0x3faf('0x22')](_0x385e50,_0x136a93,!![]);}catch(_0x14696a){return BPromise['reject'](_0x14696a);}return _0x385e50[_0x3faf('0x23')]();};}function saveUpdates(_0x4e7eb1,_0x20b619){return function(_0x38bd87){if(_0x38bd87){return _0x38bd87[_0x3faf('0x24')](_0x4e7eb1)[_0x3faf('0x25')](function(_0x4ad71a){return _0x4ad71a;});}return null;};}function removeEntity(_0x4681f6,_0x4ee365){return function(_0x4f596e){if(_0x4f596e){return _0x4f596e[_0x3faf('0x26')]()[_0x3faf('0x25')](function(){_0x4681f6[_0x3faf('0x1a')](0xcc)[_0x3faf('0x1b')]();});}};}function handleEntityNotFound(_0x1312d9,_0x2a9df9){return function(_0x6b70bd){if(!_0x6b70bd){_0x1312d9[_0x3faf('0x19')](0x194);}return _0x6b70bd;};}function handleError(_0x395859,_0x47ca04){_0x47ca04=_0x47ca04||0x1f4;return function(_0x329085){logger[_0x3faf('0x27')](_0x329085[_0x3faf('0x28')]);if(_0x329085[_0x3faf('0x29')]){delete _0x329085[_0x3faf('0x29')];}_0x395859['status'](_0x47ca04)[_0x3faf('0x2a')](_0x329085);};}exports[_0x3faf('0x2b')]=function(_0x3628d0,_0xb3721){var _0x1da519={},_0xba6bcf={},_0x3a82a8={'count':0x0,'rows':[]};var _0x10cce6=_[_0x3faf('0x2c')](db[_0x3faf('0x2d')][_0x3faf('0x2e')],function(_0x14ced3){return{'name':_0x14ced3['fieldName'],'type':_0x14ced3[_0x3faf('0x2f')][_0x3faf('0x30')]};});_0xba6bcf[_0x3faf('0x31')]=_[_0x3faf('0x2c')](_0x10cce6,'name');_0xba6bcf[_0x3faf('0x32')]=_['keys'](_0x3628d0[_0x3faf('0x32')]);_0xba6bcf[_0x3faf('0x33')]=_[_0x3faf('0x34')](_0xba6bcf[_0x3faf('0x31')],_0xba6bcf['query']);_0x1da519[_0x3faf('0x35')]=_[_0x3faf('0x34')](_0xba6bcf[_0x3faf('0x31')],qs[_0x3faf('0x36')](_0x3628d0[_0x3faf('0x32')][_0x3faf('0x36')]));_0x1da519['attributes']=_0x1da519['attributes']['length']?_0x1da519[_0x3faf('0x35')]:_0xba6bcf['model'];if(!_0x3628d0['query'][_0x3faf('0x37')](_0x3faf('0x38'))){_0x1da519['limit']=qs[_0x3faf('0x1d')](_0x3628d0['query'][_0x3faf('0x1d')]);_0x1da519[_0x3faf('0x1c')]=qs[_0x3faf('0x1c')](_0x3628d0[_0x3faf('0x32')][_0x3faf('0x1c')]);}_0x1da519[_0x3faf('0x39')]=qs[_0x3faf('0x3a')](_0x3628d0['query'][_0x3faf('0x3a')]);_0x1da519['where']=qs['filters'](_[_0x3faf('0x3b')](_0x3628d0[_0x3faf('0x32')],_0xba6bcf[_0x3faf('0x33')]),_0x10cce6);if(_0x3628d0[_0x3faf('0x32')]['filter']){_0x1da519[_0x3faf('0x3c')]=_[_0x3faf('0x3d')](_0x1da519[_0x3faf('0x3c')],{'$or':_['map'](_0x10cce6,function(_0x603b50){if(_0x603b50[_0x3faf('0x2f')]!=='VIRTUAL'){var _0x47fb7f={};_0x47fb7f[_0x603b50['name']]={'$like':'%'+_0x3628d0[_0x3faf('0x32')][_0x3faf('0x3e')]+'%'};return _0x47fb7f;}})});}_0x1da519=_[_0x3faf('0x3d')]({},_0x1da519,_0x3628d0['options']);var _0x43cb14={'where':_0x1da519[_0x3faf('0x3c')]};return db['ZohoAccount'][_0x3faf('0x1e')](_0x43cb14)[_0x3faf('0x25')](function(_0x5075fb){_0x3a82a8['count']=_0x5075fb;if(_0x3628d0[_0x3faf('0x32')][_0x3faf('0x3f')]){_0x1da519[_0x3faf('0x40')]=[{'all':!![]}];}return db[_0x3faf('0x2d')][_0x3faf('0x41')](_0x1da519);})[_0x3faf('0x25')](function(_0xe79a7b){_0x3a82a8[_0x3faf('0x42')]=_0xe79a7b;return _0x3a82a8;})[_0x3faf('0x25')](respondWithFilteredResult(_0xb3721,_0x1da519))[_0x3faf('0x43')](handleError(_0xb3721,null));};exports[_0x3faf('0x44')]=function(_0x488e70,_0x632a53){var _0x187c1e={'raw':![],'where':{'id':_0x488e70[_0x3faf('0x45')]['id']}},_0x30661c={};_0x30661c[_0x3faf('0x31')]=_['keys'](db[_0x3faf('0x2d')]['rawAttributes']);_0x30661c[_0x3faf('0x32')]=_[_0x3faf('0x46')](_0x488e70['query']);_0x30661c[_0x3faf('0x33')]=_[_0x3faf('0x34')](_0x30661c[_0x3faf('0x31')],_0x30661c[_0x3faf('0x32')]);_0x187c1e['attributes']=_['intersection'](_0x30661c[_0x3faf('0x31')],qs['fields'](_0x488e70[_0x3faf('0x32')][_0x3faf('0x36')]));_0x187c1e['attributes']=_0x187c1e[_0x3faf('0x35')][_0x3faf('0x47')]?_0x187c1e[_0x3faf('0x35')]:_0x30661c[_0x3faf('0x31')];if(_0x488e70[_0x3faf('0x32')][_0x3faf('0x3f')]){_0x187c1e[_0x3faf('0x40')]=[{'all':!![]}];}_0x187c1e=_[_0x3faf('0x3d')]({},_0x187c1e,_0x488e70[_0x3faf('0x48')]);return db[_0x3faf('0x2d')][_0x3faf('0x49')](_0x187c1e)[_0x3faf('0x25')](handleEntityNotFound(_0x632a53,null))[_0x3faf('0x25')](respondWithResult(_0x632a53,null))[_0x3faf('0x43')](handleError(_0x632a53,null));};exports['create']=function(_0x42c498,_0x489c66){return db['ZohoAccount'][_0x3faf('0x4a')](_0x42c498[_0x3faf('0x4b')],{})['then'](respondWithResult(_0x489c66,0xc9))[_0x3faf('0x43')](handleError(_0x489c66,null));};exports['update']=function(_0x1511ba,_0x4b561c){if(_0x1511ba[_0x3faf('0x4b')]['id']){delete _0x1511ba[_0x3faf('0x4b')]['id'];}return db['ZohoAccount'][_0x3faf('0x49')]({'where':{'id':_0x1511ba[_0x3faf('0x45')]['id']}})[_0x3faf('0x25')](handleEntityNotFound(_0x4b561c,null))[_0x3faf('0x25')](saveUpdates(_0x1511ba['body'],null))[_0x3faf('0x25')](respondWithResult(_0x4b561c,null))[_0x3faf('0x43')](handleError(_0x4b561c,null));};exports['destroy']=function(_0x4bcb25,_0x182efe){return db['ZohoAccount'][_0x3faf('0x49')]({'where':{'id':_0x4bcb25[_0x3faf('0x45')]['id']}})[_0x3faf('0x25')](handleEntityNotFound(_0x182efe,null))[_0x3faf('0x25')](removeEntity(_0x182efe,null))['catch'](handleError(_0x182efe,null));};exports['getConfigurations']=function(_0x5e8a6b,_0x19342f,_0x17b8b2){var _0x58c5f8={};var _0x4858af={};var _0x5828f0;var _0x490128;return db[_0x3faf('0x2d')][_0x3faf('0x4c')]({'where':{'id':_0x5e8a6b['params']['id']}})[_0x3faf('0x25')](handleEntityNotFound(_0x19342f,null))[_0x3faf('0x25')](function(_0x3eac01){if(_0x3eac01){_0x5828f0=_0x3eac01;_0x4858af['model']=_[_0x3faf('0x46')](db[_0x3faf('0x4d')][_0x3faf('0x2e')]);_0x4858af[_0x3faf('0x32')]=_['keys'](_0x5e8a6b[_0x3faf('0x32')]);_0x4858af[_0x3faf('0x33')]=_[_0x3faf('0x34')](_0x4858af[_0x3faf('0x31')],_0x4858af[_0x3faf('0x32')]);_0x58c5f8[_0x3faf('0x35')]=_['intersection'](_0x4858af[_0x3faf('0x31')],qs[_0x3faf('0x36')](_0x5e8a6b[_0x3faf('0x32')]['fields']));_0x58c5f8['attributes']=_0x58c5f8[_0x3faf('0x35')][_0x3faf('0x47')]?_0x58c5f8[_0x3faf('0x35')]:_0x4858af[_0x3faf('0x31')];_0x58c5f8[_0x3faf('0x39')]=qs[_0x3faf('0x3a')](_0x5e8a6b['query'][_0x3faf('0x3a')]);_0x58c5f8[_0x3faf('0x3c')]=qs[_0x3faf('0x33')](_[_0x3faf('0x3b')](_0x5e8a6b[_0x3faf('0x32')],_0x4858af[_0x3faf('0x33')]));if(_0x5e8a6b['query'][_0x3faf('0x3e')]){_0x58c5f8[_0x3faf('0x3c')]=_['merge'](_0x58c5f8['where'],{'$or':_[_0x3faf('0x2c')](_0x58c5f8[_0x3faf('0x35')],function(_0x2f05c9){var _0x413530={};_0x413530[_0x2f05c9]={'$like':'%'+_0x5e8a6b[_0x3faf('0x32')]['filter']+'%'};return _0x413530;})});}_0x58c5f8=_[_0x3faf('0x3d')]({},_0x58c5f8,_0x5e8a6b[_0x3faf('0x48')]);return _0x5828f0['getConfigurations'](_0x58c5f8);}})[_0x3faf('0x25')](function(_0x3231b3){if(_0x3231b3){_0x490128=_0x3231b3[_0x3faf('0x47')];if(!_0x5e8a6b[_0x3faf('0x32')][_0x3faf('0x37')]('nolimit')){_0x58c5f8[_0x3faf('0x1d')]=qs[_0x3faf('0x1d')](_0x5e8a6b[_0x3faf('0x32')][_0x3faf('0x1d')]);_0x58c5f8[_0x3faf('0x1c')]=qs[_0x3faf('0x1c')](_0x5e8a6b[_0x3faf('0x32')][_0x3faf('0x1c')]);}return _0x5828f0['getConfigurations'](_0x58c5f8);}})[_0x3faf('0x25')](function(_0xfb37d2){if(_0xfb37d2){return _0xfb37d2?{'count':_0x490128,'rows':_0xfb37d2}:null;}})[_0x3faf('0x25')](respondWithResult(_0x19342f,null))[_0x3faf('0x43')](handleError(_0x19342f,null));};exports[_0x3faf('0x4e')]=function(_0x48fd18,_0x299471,_0x2353d2){if(_0x48fd18['body']['id']){delete _0x48fd18[_0x3faf('0x4b')]['id'];}return db[_0x3faf('0x2d')][_0x3faf('0x4c')]({'where':{'id':_0x48fd18[_0x3faf('0x45')]['id']}})[_0x3faf('0x25')](handleEntityNotFound(_0x299471,null))[_0x3faf('0x25')](function(_0x3f76df){if(_0x3f76df){_0x48fd18[_0x3faf('0x4b')][_0x3faf('0x4f')]=_0x3f76df['id'];_0x48fd18[_0x3faf('0x4b')][_0x3faf('0x50')]=integrations['getSubjects'](_0x48fd18[_0x3faf('0x4b')][_0x3faf('0x51')],_0x48fd18[_0x3faf('0x4b')][_0x3faf('0x2f')]);_0x48fd18[_0x3faf('0x4b')][_0x3faf('0x52')]=integrations['getDescriptions'](_0x48fd18[_0x3faf('0x4b')][_0x3faf('0x51')],_0x48fd18[_0x3faf('0x4b')]['type']);return db[_0x3faf('0x4d')][_0x3faf('0x4a')](_0x48fd18[_0x3faf('0x4b')],{'include':[{'model':db[_0x3faf('0x53')],'as':'Subjects'},{'model':db['ZohoField'],'as':'Descriptions'}]});}return null;})['then'](respondWithResult(_0x299471,null))[_0x3faf('0x43')](handleError(_0x299471,null));};function getAccessToken(_0x2cc4a3){return new Promise(function(_0x1757de,_0x2782c4){var _0x443ecb;switch(_0x2cc4a3[_0x3faf('0x54')]){case'US':_0x443ecb=_0x3faf('0x55');break;case'AU':_0x443ecb=_0x3faf('0x56');break;case'EU':_0x443ecb=_0x3faf('0x57');break;case'IN':_0x443ecb=_0x3faf('0x58');break;case'CN':_0x443ecb=_0x3faf('0x59');break;default:_0x443ecb='https://accounts.zoho.eu';break;}var _0x26ddff={'method':_0x3faf('0x5a'),'uri':_0x443ecb+_0x3faf('0x5b'),'qs':{'refresh_token':_0x2cc4a3['refreshToken'],'client_id':_0x2cc4a3['clientId'],'client_secret':_0x2cc4a3[_0x3faf('0x5c')],'grant_type':_0x3faf('0x5d')},'json':!![]};return rp(_0x26ddff)[_0x3faf('0x25')](function(_0x160d06){if(_0x160d06['access_token']){_0x1757de(_0x160d06[_0x3faf('0x5e')]);}else{_0x2782c4(_0x3faf('0x5f'));}})[_0x3faf('0x43')](function(_0x1ec735){_0x2782c4(_0x1ec735);});});}exports[_0x3faf('0x60')]=function(_0x22cf2f,_0x571953,_0x35aacc){var _0x1667ea,_0x1f2722,_0x5b70bd,_0x3de610,_0x415ee5;return db[_0x3faf('0x2d')][_0x3faf('0x4c')]({'where':{'id':_0x22cf2f[_0x3faf('0x45')]['id']},'attributes':['id',_0x3faf('0x61'),_0x3faf('0x54'),_0x3faf('0x62'),_0x3faf('0x5c'),_0x3faf('0x63'),_0x3faf('0x64'),_0x3faf('0x65')]})[_0x3faf('0x25')](handleEntityNotFound(_0x571953,null))[_0x3faf('0x25')](function(_0x51e61){_0x415ee5=_0x51e61;_0x1667ea=_0x415ee5[_0x3faf('0x61')];_0x1f2722=_0x1667ea===_0x3faf('0x66')?'eu':_0x3faf('0x67');_0x5b70bd=_0x415ee5[_0x3faf('0x63')];var _0x419af6=_0x5b70bd[_0x3faf('0x68')](-0x1);if(_0x419af6==='/'||_0x419af6==='\x5c'||_0x419af6===':'){_0x5b70bd=_0x5b70bd[_0x3faf('0x69')](0x0,_0x5b70bd[_0x3faf('0x6a')](_0x419af6));}if(!_0x415ee5[_0x3faf('0x65')]){throw new Error(_0x3faf('0x6b'));}return getAccessToken(_0x415ee5);})['then'](function(_0x184909){if(_0x184909){return rp({'method':_0x3faf('0x6c'),'uri':util[_0x3faf('0x6d')](_0x3faf('0x6e'),_0x1f2722),'qs':{'module':_0x3faf('0x6f')},'headers':{'Authorization':_0x3faf('0x70')+_0x184909},'json':!![]});}})[_0x3faf('0x25')](function(_0x3320d5){if(_0x3320d5){if(_0x3320d5[_0x3faf('0x71')]&&_0x3320d5[_0x3faf('0x71')]['error']){throw new Error(_0x3320d5[_0x3faf('0x71')][_0x3faf('0x27')][_0x3faf('0x72')]);}var _0x409eff=[];var _0x44a9df=[];var _0x3b6999=[_0x3faf('0x73'),'Subject',_0x3faf('0x74'),_0x3faf('0x75'),_0x3faf('0x76'),_0x3faf('0x77'),_0x3faf('0x78'),'Call_Type'];_0x44a9df=_[_0x3faf('0x79')](_0x3320d5[_0x3faf('0x36')],function(_0x1581aa){return _0x3b6999[_0x3faf('0x7a')](_0x1581aa[_0x3faf('0x7b')]);});for(var _0x260781=0x0;_0x260781<_0x44a9df[_0x3faf('0x47')];_0x260781++){if(_0x44a9df[_0x260781]['system_mandatory']===![]){_0x409eff[_0x3faf('0x7c')]({'id':_0x44a9df[_0x260781]['id'],'name':_0x44a9df[_0x260781]['display_label'],'custom':_0x44a9df[_0x260781]['custom_field'],'options':_0x44a9df[_0x260781][_0x3faf('0x7d')]==='picklist'&&_0x44a9df[_0x260781][_0x3faf('0x7e')][_0x3faf('0x47')]>-0x1?_[_0x3faf('0x2c')](_0x44a9df[_0x260781]['pick_list_values'],function(_0x429aae){return{'name':_0x429aae,'value':_0x429aae};}):[]});}}return{'count':_0x409eff[_0x3faf('0x47')],'rows':_0x409eff};}else{return{'count':0x0,'rows':[]};}})[_0x3faf('0x25')](respondWithResult(_0x571953,null))[_0x3faf('0x43')](function(_0x35905a){var _0x2150ca=_0x22cf2f['query'][_0x3faf('0x7f')]?0x1f4:_0x35905a[_0x3faf('0x80')]||0x1f4;logger[_0x3faf('0x27')](_0x3faf('0x81'),_0x3faf('0x60'),_0x2150ca,JSON[_0x3faf('0x82')](_0x35905a));delete _0x35905a[_0x3faf('0x29')];if(_0x2150ca===0x191){_0x2150ca=0x190;}_0x571953[_0x3faf('0x1a')](_0x2150ca)['send'](_0x22cf2f['query'][_0x3faf('0x7f')]?{'message':_0x3faf('0x83'),'statusCode':_0x35905a[_0x3faf('0x80')]}:_0x35905a);});};
\ No newline at end of file