Built motion from commit 85328c08.|2.5.50
[motion2.git] / server / api / intZohoAccount / intZohoAccount.controller.js
index 1dab6cf..5a2c6af 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x1a38=['https://accounts.zoho.com.cn','/oauth/v2/token','refreshToken','clientId','clientSecret','access_token','Unable\x20to\x20retrieve\x20the\x20access\x20token','getFields','serverUrl','host','com','slice','lastIndexOf','Refresh\x20Token\x20not\x20available\x20for\x20the\x20account','GET','format','https://www.zohoapis.%s/crm/v2/settings/fields','Zoho-oauthtoken\x20','response','Owner','Subject','Description','Call_Result','Call_Start_Time','Call_Type','remove','api_name','system_mandatory','push','display_label','custom_field','data_type','picklist','pick_list_values','map','statusCode','getFields,\x20%s,\x20%s,\x20%s','stringify','test','Wrong\x20credentials','html-pdf','eml-format','rimraf','moment','bluebird','mustache','util','path','sox','to-csv','ejs','lodash','squel','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/license/util','../../mysqldb','../../components/integrations/configuration','jayson/promise','client','http','request','then','info','request\x20sent','debug','error','code','ZohoAccount,\x20%s,\x20%s','message','result','catch','status','json','offset','limit','Content-Range','reject','save','destroy','end','name','send','rawAttributes','type','key','model','query','keys','filters','intersection','fields','attributes','length','hasOwnProperty','nolimit','order','sort','pick','filter','where','VIRTUAL','merge','options','ZohoAccount','includeAll','include','findAll','rows','find','create','body','update','params','getConfigurations','findOne','ZohoConfiguration','addConfiguration','AccountId','getSubjects','channel','Descriptions','getDescriptions','ZohoField','https://accounts.zoho.com','https://accounts.zoho.eu','https://accounts.zoho.in'];(function(_0x572ffc,_0xf40243){var _0xa3de0b=function(_0x5a3dfc){while(--_0x5a3dfc){_0x572ffc['push'](_0x572ffc['shift']());}};_0xa3de0b(++_0xf40243);}(_0x1a38,0xb0));var _0x81a3=function(_0xa1e3ca,_0x559022){_0xa1e3ca=_0xa1e3ca-0x0;var _0x5005ab=_0x1a38[_0xa1e3ca];return _0x5005ab;};'use strict';var pdf=require(_0x81a3('0x0'));var emlformat=require(_0x81a3('0x1'));var rimraf=require(_0x81a3('0x2'));var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require('request-promise');var moment=require(_0x81a3('0x3'));var BPromise=require(_0x81a3('0x4'));var Mustache=require(_0x81a3('0x5'));var util=require(_0x81a3('0x6'));var path=require(_0x81a3('0x7'));var sox=require(_0x81a3('0x8'));var csv=require(_0x81a3('0x9'));var ejs=require(_0x81a3('0xa'));var fs=require('fs');var _=require(_0x81a3('0xb'));var squel=require(_0x81a3('0xc'));var crypto=require(_0x81a3('0xd'));var jsforce=require(_0x81a3('0xe'));var deskjs=require(_0x81a3('0xf'));var toCsv=require('to-csv');var querystring=require(_0x81a3('0x10'));var Papa=require(_0x81a3('0x11'));var Redis=require(_0x81a3('0x12'));var authService=require(_0x81a3('0x13'));var qs=require(_0x81a3('0x14'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x81a3('0x15'));var logger=require(_0x81a3('0x16'))(_0x81a3('0x17'));var utils=require('../../config/utils');var config=require('../../config/environment');var licenseUtil=require(_0x81a3('0x18'));var db=require(_0x81a3('0x19'))['db'];var integrations=require(_0x81a3('0x1a'));var jayson=require(_0x81a3('0x1b'));var client=jayson[_0x81a3('0x1c')][_0x81a3('0x1d')]({'port':0x232a});function respondWithRpcPromise(_0x14f51a,_0x2f4c2c,_0x3305a9,_0x17fa02){return new BPromise(function(_0x2683f3,_0x12c951){var _0x51eb82=_0x17fa02||client;return _0x51eb82[_0x81a3('0x1e')](_0x14f51a,_0x3305a9)[_0x81a3('0x1f')](function(_0x2c5a34){logger[_0x81a3('0x20')]('ZohoAccount,\x20%s,\x20%s',_0x2f4c2c,_0x81a3('0x21'));logger[_0x81a3('0x22')]('ZohoAccount,\x20%s,\x20%s,\x20%s',_0x2f4c2c,_0x81a3('0x21'),JSON['stringify'](_0x2c5a34));if(_0x2c5a34['error']){if(_0x2c5a34[_0x81a3('0x23')][_0x81a3('0x24')]===0x1f4){logger[_0x81a3('0x23')](_0x81a3('0x25'),_0x2f4c2c,_0x2c5a34[_0x81a3('0x23')][_0x81a3('0x26')]);return _0x12c951(_0x2c5a34[_0x81a3('0x23')][_0x81a3('0x26')]);}logger['error'](_0x81a3('0x25'),_0x2f4c2c,_0x2c5a34[_0x81a3('0x23')]['message']);return _0x2683f3(_0x2c5a34[_0x81a3('0x23')][_0x81a3('0x26')]);}else{logger[_0x81a3('0x20')](_0x81a3('0x25'),_0x2f4c2c,'request\x20sent');_0x2683f3(_0x2c5a34[_0x81a3('0x27')][_0x81a3('0x26')]);}})[_0x81a3('0x28')](function(_0x5ba913){logger['error'](_0x81a3('0x25'),_0x2f4c2c,_0x5ba913);_0x12c951(_0x5ba913);});});}function respondWithStatusCode(_0x328b0d,_0x19d2e1){_0x19d2e1=_0x19d2e1||0xcc;return function(_0x40aaec){if(_0x40aaec){return _0x328b0d['sendStatus'](_0x19d2e1);}return _0x328b0d['status'](_0x19d2e1)['end']();};}function respondWithResult(_0x1583fd,_0x245026){_0x245026=_0x245026||0xc8;return function(_0x3ba769){if(_0x3ba769){return _0x1583fd[_0x81a3('0x29')](_0x245026)[_0x81a3('0x2a')](_0x3ba769);}};}function respondWithFilteredResult(_0x4096ef,_0x3f850d){return function(_0x1f87d2){if(_0x1f87d2){var _0x46a4d0=_0x1f87d2['count'],_0x1852e4=_0x3f850d[_0x81a3('0x2b')],_0x113863=_0x3f850d[_0x81a3('0x2b')]+_0x3f850d[_0x81a3('0x2c')],_0x3cfad2;if(_0x113863>=_0x46a4d0){_0x113863=_0x46a4d0;_0x3cfad2=0xc8;}else{_0x3cfad2=0xce;}_0x4096ef['status'](_0x3cfad2);return _0x4096ef['set'](_0x81a3('0x2d'),_0x1852e4+'-'+_0x113863+'/'+_0x46a4d0)[_0x81a3('0x2a')](_0x1f87d2);}return null;};}function patchUpdates(_0x5717e5){return function(_0x54030a){try{jsonpatch['apply'](_0x54030a,_0x5717e5,!![]);}catch(_0x962822){return BPromise[_0x81a3('0x2e')](_0x962822);}return _0x54030a[_0x81a3('0x2f')]();};}function saveUpdates(_0x1d154f,_0x332d3f){return function(_0x2215b5){if(_0x2215b5){return _0x2215b5['update'](_0x1d154f)[_0x81a3('0x1f')](function(_0x4f7d2e){return _0x4f7d2e;});}return null;};}function removeEntity(_0x17b217,_0x2ff712){return function(_0x2f8e88){if(_0x2f8e88){return _0x2f8e88[_0x81a3('0x30')]()[_0x81a3('0x1f')](function(){_0x17b217[_0x81a3('0x29')](0xcc)[_0x81a3('0x31')]();});}};}function handleEntityNotFound(_0xebe8d5,_0x177760){return function(_0x569bfc){if(!_0x569bfc){_0xebe8d5['sendStatus'](0x194);}return _0x569bfc;};}function handleError(_0x138862,_0x49ac09){_0x49ac09=_0x49ac09||0x1f4;return function(_0x44cc1d){logger['error'](_0x44cc1d['stack']);if(_0x44cc1d[_0x81a3('0x32')]){delete _0x44cc1d[_0x81a3('0x32')];}_0x138862[_0x81a3('0x29')](_0x49ac09)[_0x81a3('0x33')](_0x44cc1d);};}exports['index']=function(_0x3330c0,_0x2ed358){var _0xe9c7={},_0x5bb442={},_0x1721d9={'count':0x0,'rows':[]};var _0x53bde1=_['map'](db['ZohoAccount'][_0x81a3('0x34')],function(_0x232dce){return{'name':_0x232dce['fieldName'],'type':_0x232dce[_0x81a3('0x35')][_0x81a3('0x36')]};});_0x5bb442[_0x81a3('0x37')]=_['map'](_0x53bde1,'name');_0x5bb442[_0x81a3('0x38')]=_[_0x81a3('0x39')](_0x3330c0['query']);_0x5bb442[_0x81a3('0x3a')]=_[_0x81a3('0x3b')](_0x5bb442['model'],_0x5bb442[_0x81a3('0x38')]);_0xe9c7['attributes']=_['intersection'](_0x5bb442['model'],qs[_0x81a3('0x3c')](_0x3330c0[_0x81a3('0x38')][_0x81a3('0x3c')]));_0xe9c7[_0x81a3('0x3d')]=_0xe9c7[_0x81a3('0x3d')][_0x81a3('0x3e')]?_0xe9c7['attributes']:_0x5bb442[_0x81a3('0x37')];if(!_0x3330c0[_0x81a3('0x38')][_0x81a3('0x3f')](_0x81a3('0x40'))){_0xe9c7[_0x81a3('0x2c')]=qs[_0x81a3('0x2c')](_0x3330c0['query'][_0x81a3('0x2c')]);_0xe9c7[_0x81a3('0x2b')]=qs['offset'](_0x3330c0[_0x81a3('0x38')][_0x81a3('0x2b')]);}_0xe9c7[_0x81a3('0x41')]=qs['sort'](_0x3330c0[_0x81a3('0x38')][_0x81a3('0x42')]);_0xe9c7['where']=qs[_0x81a3('0x3a')](_[_0x81a3('0x43')](_0x3330c0[_0x81a3('0x38')],_0x5bb442[_0x81a3('0x3a')]),_0x53bde1);if(_0x3330c0[_0x81a3('0x38')][_0x81a3('0x44')]){_0xe9c7[_0x81a3('0x45')]=_['merge'](_0xe9c7['where'],{'$or':_['map'](_0x53bde1,function(_0x2f485b){if(_0x2f485b[_0x81a3('0x35')]!==_0x81a3('0x46')){var _0x5ce84d={};_0x5ce84d[_0x2f485b[_0x81a3('0x32')]]={'$like':'%'+_0x3330c0[_0x81a3('0x38')]['filter']+'%'};return _0x5ce84d;}})});}_0xe9c7=_[_0x81a3('0x47')]({},_0xe9c7,_0x3330c0[_0x81a3('0x48')]);var _0x226bf2={'where':_0xe9c7['where']};return db[_0x81a3('0x49')]['count'](_0x226bf2)[_0x81a3('0x1f')](function(_0x32dad3){_0x1721d9['count']=_0x32dad3;if(_0x3330c0['query'][_0x81a3('0x4a')]){_0xe9c7[_0x81a3('0x4b')]=[{'all':!![]}];}return db['ZohoAccount'][_0x81a3('0x4c')](_0xe9c7);})[_0x81a3('0x1f')](function(_0x294a95){_0x1721d9[_0x81a3('0x4d')]=_0x294a95;return _0x1721d9;})[_0x81a3('0x1f')](respondWithFilteredResult(_0x2ed358,_0xe9c7))[_0x81a3('0x28')](handleError(_0x2ed358,null));};exports['show']=function(_0x30836a,_0x48a1be){var _0x496901={'raw':![],'where':{'id':_0x30836a['params']['id']}},_0x207da2={};_0x207da2[_0x81a3('0x37')]=_[_0x81a3('0x39')](db[_0x81a3('0x49')]['rawAttributes']);_0x207da2[_0x81a3('0x38')]=_[_0x81a3('0x39')](_0x30836a[_0x81a3('0x38')]);_0x207da2[_0x81a3('0x3a')]=_[_0x81a3('0x3b')](_0x207da2[_0x81a3('0x37')],_0x207da2[_0x81a3('0x38')]);_0x496901[_0x81a3('0x3d')]=_[_0x81a3('0x3b')](_0x207da2['model'],qs['fields'](_0x30836a[_0x81a3('0x38')][_0x81a3('0x3c')]));_0x496901[_0x81a3('0x3d')]=_0x496901[_0x81a3('0x3d')][_0x81a3('0x3e')]?_0x496901[_0x81a3('0x3d')]:_0x207da2[_0x81a3('0x37')];if(_0x30836a[_0x81a3('0x38')][_0x81a3('0x4a')]){_0x496901[_0x81a3('0x4b')]=[{'all':!![]}];}_0x496901=_[_0x81a3('0x47')]({},_0x496901,_0x30836a['options']);return db['ZohoAccount'][_0x81a3('0x4e')](_0x496901)['then'](handleEntityNotFound(_0x48a1be,null))[_0x81a3('0x1f')](respondWithResult(_0x48a1be,null))[_0x81a3('0x28')](handleError(_0x48a1be,null));};exports[_0x81a3('0x4f')]=function(_0x4b86b3,_0x235a7f){return db['ZohoAccount'][_0x81a3('0x4f')](_0x4b86b3[_0x81a3('0x50')],{})[_0x81a3('0x1f')](respondWithResult(_0x235a7f,0xc9))[_0x81a3('0x28')](handleError(_0x235a7f,null));};exports[_0x81a3('0x51')]=function(_0xe738a8,_0x3a336c){if(_0xe738a8[_0x81a3('0x50')]['id']){delete _0xe738a8[_0x81a3('0x50')]['id'];}return db[_0x81a3('0x49')][_0x81a3('0x4e')]({'where':{'id':_0xe738a8[_0x81a3('0x52')]['id']}})[_0x81a3('0x1f')](handleEntityNotFound(_0x3a336c,null))[_0x81a3('0x1f')](saveUpdates(_0xe738a8[_0x81a3('0x50')],null))[_0x81a3('0x1f')](respondWithResult(_0x3a336c,null))['catch'](handleError(_0x3a336c,null));};exports[_0x81a3('0x30')]=function(_0x34e974,_0x382803){return db[_0x81a3('0x49')][_0x81a3('0x4e')]({'where':{'id':_0x34e974[_0x81a3('0x52')]['id']}})[_0x81a3('0x1f')](handleEntityNotFound(_0x382803,null))[_0x81a3('0x1f')](removeEntity(_0x382803,null))[_0x81a3('0x28')](handleError(_0x382803,null));};exports[_0x81a3('0x53')]=function(_0x3000e0,_0x31646b,_0x24ddee){var _0x1445f0={};var _0x53da5c={};var _0x2eff6b;var _0x35ac5c;return db['ZohoAccount'][_0x81a3('0x54')]({'where':{'id':_0x3000e0[_0x81a3('0x52')]['id']}})['then'](handleEntityNotFound(_0x31646b,null))[_0x81a3('0x1f')](function(_0x39cd3a){if(_0x39cd3a){_0x2eff6b=_0x39cd3a;_0x53da5c['model']=_['keys'](db[_0x81a3('0x55')][_0x81a3('0x34')]);_0x53da5c[_0x81a3('0x38')]=_['keys'](_0x3000e0['query']);_0x53da5c[_0x81a3('0x3a')]=_['intersection'](_0x53da5c[_0x81a3('0x37')],_0x53da5c['query']);_0x1445f0[_0x81a3('0x3d')]=_[_0x81a3('0x3b')](_0x53da5c[_0x81a3('0x37')],qs[_0x81a3('0x3c')](_0x3000e0[_0x81a3('0x38')][_0x81a3('0x3c')]));_0x1445f0['attributes']=_0x1445f0['attributes'][_0x81a3('0x3e')]?_0x1445f0[_0x81a3('0x3d')]:_0x53da5c[_0x81a3('0x37')];_0x1445f0[_0x81a3('0x41')]=qs[_0x81a3('0x42')](_0x3000e0[_0x81a3('0x38')][_0x81a3('0x42')]);_0x1445f0[_0x81a3('0x45')]=qs[_0x81a3('0x3a')](_[_0x81a3('0x43')](_0x3000e0[_0x81a3('0x38')],_0x53da5c[_0x81a3('0x3a')]));if(_0x3000e0[_0x81a3('0x38')]['filter']){_0x1445f0['where']=_[_0x81a3('0x47')](_0x1445f0['where'],{'$or':_['map'](_0x1445f0[_0x81a3('0x3d')],function(_0x2d3baf){var _0xfd9176={};_0xfd9176[_0x2d3baf]={'$like':'%'+_0x3000e0[_0x81a3('0x38')][_0x81a3('0x44')]+'%'};return _0xfd9176;})});}_0x1445f0=_[_0x81a3('0x47')]({},_0x1445f0,_0x3000e0['options']);return _0x2eff6b[_0x81a3('0x53')](_0x1445f0);}})[_0x81a3('0x1f')](function(_0x3fef39){if(_0x3fef39){_0x35ac5c=_0x3fef39[_0x81a3('0x3e')];if(!_0x3000e0[_0x81a3('0x38')]['hasOwnProperty'](_0x81a3('0x40'))){_0x1445f0[_0x81a3('0x2c')]=qs[_0x81a3('0x2c')](_0x3000e0[_0x81a3('0x38')]['limit']);_0x1445f0[_0x81a3('0x2b')]=qs[_0x81a3('0x2b')](_0x3000e0[_0x81a3('0x38')]['offset']);}return _0x2eff6b[_0x81a3('0x53')](_0x1445f0);}})[_0x81a3('0x1f')](function(_0x4ac0fa){if(_0x4ac0fa){return _0x4ac0fa?{'count':_0x35ac5c,'rows':_0x4ac0fa}:null;}})['then'](respondWithResult(_0x31646b,null))[_0x81a3('0x28')](handleError(_0x31646b,null));};exports[_0x81a3('0x56')]=function(_0x3fe46a,_0x45fa12,_0xc1426a){if(_0x3fe46a[_0x81a3('0x50')]['id']){delete _0x3fe46a[_0x81a3('0x50')]['id'];}return db['ZohoAccount'][_0x81a3('0x54')]({'where':{'id':_0x3fe46a[_0x81a3('0x52')]['id']}})[_0x81a3('0x1f')](handleEntityNotFound(_0x45fa12,null))[_0x81a3('0x1f')](function(_0x1653fc){if(_0x1653fc){_0x3fe46a[_0x81a3('0x50')][_0x81a3('0x57')]=_0x1653fc['id'];_0x3fe46a[_0x81a3('0x50')]['Subjects']=integrations[_0x81a3('0x58')](_0x3fe46a[_0x81a3('0x50')][_0x81a3('0x59')],_0x3fe46a[_0x81a3('0x50')]['type']);_0x3fe46a[_0x81a3('0x50')][_0x81a3('0x5a')]=integrations[_0x81a3('0x5b')](_0x3fe46a['body'][_0x81a3('0x59')],_0x3fe46a[_0x81a3('0x50')]['type']);return db[_0x81a3('0x55')][_0x81a3('0x4f')](_0x3fe46a[_0x81a3('0x50')],{'include':[{'model':db[_0x81a3('0x5c')],'as':'Subjects'},{'model':db[_0x81a3('0x5c')],'as':_0x81a3('0x5a')}]});}return null;})[_0x81a3('0x1f')](respondWithResult(_0x45fa12,null))[_0x81a3('0x28')](handleError(_0x45fa12,null));};function getAccessToken(_0x78d62e){return new Promise(function(_0x389c98,_0x1d1496){var _0x10f7c2;switch(_0x78d62e['zone']){case'US':_0x10f7c2=_0x81a3('0x5d');break;case'AU':_0x10f7c2='https://accounts.zoho.com.au';break;case'EU':_0x10f7c2=_0x81a3('0x5e');break;case'IN':_0x10f7c2=_0x81a3('0x5f');break;case'CN':_0x10f7c2=_0x81a3('0x60');break;default:_0x10f7c2=_0x81a3('0x5e');break;}var _0xfc1c17={'method':'POST','uri':_0x10f7c2+_0x81a3('0x61'),'qs':{'refresh_token':_0x78d62e[_0x81a3('0x62')],'client_id':_0x78d62e[_0x81a3('0x63')],'client_secret':_0x78d62e[_0x81a3('0x64')],'grant_type':'refresh_token'},'json':!![]};return rp(_0xfc1c17)[_0x81a3('0x1f')](function(_0x14a012){if(_0x14a012[_0x81a3('0x65')]){_0x389c98(_0x14a012[_0x81a3('0x65')]);}else{_0x1d1496(_0x81a3('0x66'));}})[_0x81a3('0x28')](function(_0x4a511b){_0x1d1496(_0x4a511b);});});}exports[_0x81a3('0x67')]=function(_0x344254,_0x4358ae,_0x5e6abe){var _0x27faf3,_0x20b969,_0x4d4ad9,_0x356daa,_0x5a1365;return db['ZohoAccount']['findOne']({'where':{'id':_0x344254[_0x81a3('0x52')]['id']},'attributes':['id','host','zone',_0x81a3('0x63'),'clientSecret',_0x81a3('0x68'),_0x81a3('0x24'),_0x81a3('0x62')]})['then'](handleEntityNotFound(_0x4358ae,null))['then'](function(_0x311bd5){_0x5a1365=_0x311bd5;_0x27faf3=_0x5a1365[_0x81a3('0x69')];_0x20b969=_0x27faf3==='zoho.eu'?'eu':_0x81a3('0x6a');_0x4d4ad9=_0x5a1365['serverUrl'];var _0x2f3197=_0x4d4ad9[_0x81a3('0x6b')](-0x1);if(_0x2f3197==='/'||_0x2f3197==='\x5c'||_0x2f3197===':'){_0x4d4ad9=_0x4d4ad9['substring'](0x0,_0x4d4ad9[_0x81a3('0x6c')](_0x2f3197));}if(!_0x5a1365[_0x81a3('0x62')]){throw new Error(_0x81a3('0x6d'));}return getAccessToken(_0x5a1365);})[_0x81a3('0x1f')](function(_0x1290d2){if(_0x1290d2){return rp({'method':_0x81a3('0x6e'),'uri':util[_0x81a3('0x6f')](_0x81a3('0x70'),_0x20b969),'qs':{'module':'Calls'},'headers':{'Authorization':_0x81a3('0x71')+_0x1290d2},'json':!![]});}})[_0x81a3('0x1f')](function(_0x4fa36d){if(_0x4fa36d){if(_0x4fa36d[_0x81a3('0x72')]&&_0x4fa36d[_0x81a3('0x72')][_0x81a3('0x23')]){throw new Error(_0x4fa36d[_0x81a3('0x72')][_0x81a3('0x23')][_0x81a3('0x26')]);}var _0x28e97f=[];var _0x1f2f79=[];var _0x255f86=[_0x81a3('0x73'),_0x81a3('0x74'),_0x81a3('0x75'),'WhoId','Call_Duration',_0x81a3('0x76'),_0x81a3('0x77'),_0x81a3('0x78')];_0x1f2f79=_[_0x81a3('0x79')](_0x4fa36d[_0x81a3('0x3c')],function(_0x2fa03a){return _0x255f86['includes'](_0x2fa03a[_0x81a3('0x7a')]);});for(var _0x45d131=0x0;_0x45d131<_0x1f2f79[_0x81a3('0x3e')];_0x45d131++){if(_0x1f2f79[_0x45d131][_0x81a3('0x7b')]===![]){_0x28e97f[_0x81a3('0x7c')]({'id':_0x1f2f79[_0x45d131]['id'],'name':_0x1f2f79[_0x45d131][_0x81a3('0x7d')],'custom':_0x1f2f79[_0x45d131][_0x81a3('0x7e')],'options':_0x1f2f79[_0x45d131][_0x81a3('0x7f')]===_0x81a3('0x80')&&_0x1f2f79[_0x45d131][_0x81a3('0x81')]['length']>-0x1?_[_0x81a3('0x82')](_0x1f2f79[_0x45d131][_0x81a3('0x81')],function(_0x1ef771){return{'name':_0x1ef771,'value':_0x1ef771};}):[]});}}return{'count':_0x28e97f['length'],'rows':_0x28e97f};}else{return{'count':0x0,'rows':[]};}})[_0x81a3('0x1f')](respondWithResult(_0x4358ae,null))[_0x81a3('0x28')](function(_0x98641){var _0x591ed3=_0x344254[_0x81a3('0x38')]['test']?0x1f4:_0x98641[_0x81a3('0x83')]||0x1f4;logger[_0x81a3('0x23')](_0x81a3('0x84'),'getFields',_0x591ed3,JSON[_0x81a3('0x85')](_0x98641));delete _0x98641[_0x81a3('0x32')];if(_0x591ed3===0x191){_0x591ed3=0x190;}_0x4358ae[_0x81a3('0x29')](_0x591ed3)[_0x81a3('0x33')](_0x344254['query'][_0x81a3('0x86')]?{'message':_0x81a3('0x87'),'statusCode':_0x98641[_0x81a3('0x83')]}:_0x98641);});};
\ No newline at end of file
+var _0xe157=['save','update','destroy','end','error','stack','name','send','index','map','ZohoAccount','fieldName','type','key','query','keys','filters','intersection','model','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','VIRTUAL','options','then','includeAll','include','findAll','rows','catch','rawAttributes','find','create','body','getConfigurations','findOne','params','ZohoConfiguration','addConfiguration','Subjects','getSubjects','channel','Descriptions','getDescriptions','ZohoField','zone','https://accounts.zoho.eu','POST','/oauth/v2/token','refreshToken','clientId','clientSecret','refresh_token','access_token','Unable\x20to\x20retrieve\x20the\x20access\x20token','code','host','serverUrl','slice','lastIndexOf','GET','format','https://www.zohoapis.%s/crm/v2/settings/fields','Calls','Zoho-oauthtoken\x20','response','message','Owner','WhoId','Call_Duration','Call_Result','Call_Start_Time','Call_Type','includes','api_name','system_mandatory','push','display_label','custom_field','data_type','test','statusCode','getFields','stringify','zip-dir','fast-json-patch','request-promise','to-csv','ejs','fs-extra','squel','crypto','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','json','offset','undefined','limit','count','Content-Range','apply','reject'];(function(_0x5b78e8,_0x55096b){var _0xf2c321=function(_0x4e0cff){while(--_0x4e0cff){_0x5b78e8['push'](_0x5b78e8['shift']());}};_0xf2c321(++_0x55096b);}(_0xe157,0xd8));var _0x7e15=function(_0x461c6c,_0xf3e8d2){_0x461c6c=_0x461c6c-0x0;var _0x4d0d7a=_0xe157[_0x461c6c];return _0x4d0d7a;};'use strict';var emlformat=require('eml-format');var rimraf=require('rimraf');var zipdir=require(_0x7e15('0x0'));var jsonpatch=require(_0x7e15('0x1'));var rp=require(_0x7e15('0x2'));var moment=require('moment');var BPromise=require('bluebird');var Mustache=require('mustache');var util=require('util');var path=require('path');var sox=require('sox');var csv=require(_0x7e15('0x3'));var ejs=require(_0x7e15('0x4'));var fs=require('fs');var fs_extra=require(_0x7e15('0x5'));var _=require('lodash');var squel=require(_0x7e15('0x6'));var crypto=require(_0x7e15('0x7'));var jsforce=require(_0x7e15('0x8'));var deskjs=require(_0x7e15('0x9'));var toCsv=require(_0x7e15('0x3'));var querystring=require('querystring');var Papa=require(_0x7e15('0xa'));var Redis=require(_0x7e15('0xb'));var authService=require(_0x7e15('0xc'));var qs=require(_0x7e15('0xd'));var as=require(_0x7e15('0xe'));var hardwareService=require(_0x7e15('0xf'));var logger=require(_0x7e15('0x10'))(_0x7e15('0x11'));var utils=require(_0x7e15('0x12'));var config=require(_0x7e15('0x13'));var licenseUtil=require(_0x7e15('0x14'));var db=require('../../mysqldb')['db'];var integrations=require(_0x7e15('0x15'));function respondWithStatusCode(_0x59a080,_0x387ee4){_0x387ee4=_0x387ee4||0xcc;return function(_0x13b9fc){if(_0x13b9fc){return _0x59a080[_0x7e15('0x16')](_0x387ee4);}return _0x59a080['status'](_0x387ee4)['end']();};}function respondWithResult(_0x1c07e7,_0x217027){_0x217027=_0x217027||0xc8;return function(_0x1a3099){if(_0x1a3099){return _0x1c07e7[_0x7e15('0x17')](_0x217027)[_0x7e15('0x18')](_0x1a3099);}};}function respondWithFilteredResult(_0x3ca814,_0x54ed93){return function(_0x2ff13c){if(_0x2ff13c){var _0xfd48ca=typeof _0x54ed93[_0x7e15('0x19')]===_0x7e15('0x1a')&&typeof _0x54ed93[_0x7e15('0x1b')]==='undefined';var _0x12e9c6=_0x2ff13c[_0x7e15('0x1c')];var _0x25090a=_0xfd48ca?0x0:_0x54ed93[_0x7e15('0x19')];var _0xe36240=_0xfd48ca?_0x2ff13c[_0x7e15('0x1c')]:_0x54ed93[_0x7e15('0x19')]+_0x54ed93[_0x7e15('0x1b')];var _0x176405;if(_0xe36240>=_0x12e9c6){_0xe36240=_0x12e9c6;_0x176405=0xc8;}else{_0x176405=0xce;}_0x3ca814[_0x7e15('0x17')](_0x176405);return _0x3ca814['set'](_0x7e15('0x1d'),_0x25090a+'-'+_0xe36240+'/'+_0x12e9c6)[_0x7e15('0x18')](_0x2ff13c);}return null;};}function patchUpdates(_0x24c721){return function(_0x4a071b){try{jsonpatch[_0x7e15('0x1e')](_0x4a071b,_0x24c721,!![]);}catch(_0x4ef8c1){return BPromise[_0x7e15('0x1f')](_0x4ef8c1);}return _0x4a071b[_0x7e15('0x20')]();};}function saveUpdates(_0x13319a,_0x6b7e0a){return function(_0x1a7f25){if(_0x1a7f25){return _0x1a7f25[_0x7e15('0x21')](_0x13319a)['then'](function(_0xa52664){return _0xa52664;});}return null;};}function removeEntity(_0xcece3f,_0x50c3ed){return function(_0x5be565){if(_0x5be565){return _0x5be565[_0x7e15('0x22')]()['then'](function(){_0xcece3f['status'](0xcc)[_0x7e15('0x23')]();});}};}function handleEntityNotFound(_0x14f0fd,_0x3e9db0){return function(_0x3a1e77){if(!_0x3a1e77){_0x14f0fd[_0x7e15('0x16')](0x194);}return _0x3a1e77;};}function handleError(_0x576a8c,_0x44d0f9){_0x44d0f9=_0x44d0f9||0x1f4;return function(_0x1be782){logger[_0x7e15('0x24')](_0x1be782[_0x7e15('0x25')]);if(_0x1be782[_0x7e15('0x26')]){delete _0x1be782['name'];}_0x576a8c[_0x7e15('0x17')](_0x44d0f9)[_0x7e15('0x27')](_0x1be782);};}exports[_0x7e15('0x28')]=function(_0x41b8c0,_0x2ee85f){var _0x25d55f={},_0x48a76c={},_0x4c5813={'count':0x0,'rows':[]};var _0x4aa3df=_[_0x7e15('0x29')](db[_0x7e15('0x2a')]['rawAttributes'],function(_0x588c83){return{'name':_0x588c83[_0x7e15('0x2b')],'type':_0x588c83[_0x7e15('0x2c')][_0x7e15('0x2d')]};});_0x48a76c['model']=_[_0x7e15('0x29')](_0x4aa3df,'name');_0x48a76c[_0x7e15('0x2e')]=_[_0x7e15('0x2f')](_0x41b8c0[_0x7e15('0x2e')]);_0x48a76c[_0x7e15('0x30')]=_[_0x7e15('0x31')](_0x48a76c[_0x7e15('0x32')],_0x48a76c[_0x7e15('0x2e')]);_0x25d55f[_0x7e15('0x33')]=_[_0x7e15('0x31')](_0x48a76c[_0x7e15('0x32')],qs[_0x7e15('0x34')](_0x41b8c0[_0x7e15('0x2e')]['fields']));_0x25d55f[_0x7e15('0x33')]=_0x25d55f[_0x7e15('0x33')][_0x7e15('0x35')]?_0x25d55f['attributes']:_0x48a76c[_0x7e15('0x32')];if(!_0x41b8c0[_0x7e15('0x2e')][_0x7e15('0x36')](_0x7e15('0x37'))){_0x25d55f['limit']=qs[_0x7e15('0x1b')](_0x41b8c0['query']['limit']);_0x25d55f[_0x7e15('0x19')]=qs['offset'](_0x41b8c0[_0x7e15('0x2e')]['offset']);}_0x25d55f[_0x7e15('0x38')]=qs['sort'](_0x41b8c0[_0x7e15('0x2e')][_0x7e15('0x39')]);_0x25d55f[_0x7e15('0x3a')]=qs[_0x7e15('0x30')](_[_0x7e15('0x3b')](_0x41b8c0['query'],_0x48a76c['filters']),_0x4aa3df);if(_0x41b8c0[_0x7e15('0x2e')][_0x7e15('0x3c')]){_0x25d55f[_0x7e15('0x3a')]=_[_0x7e15('0x3d')](_0x25d55f[_0x7e15('0x3a')],{'$or':_[_0x7e15('0x29')](_0x4aa3df,function(_0x598542){if(_0x598542[_0x7e15('0x2c')]!==_0x7e15('0x3e')){var _0x3457ec={};_0x3457ec[_0x598542[_0x7e15('0x26')]]={'$like':'%'+_0x41b8c0[_0x7e15('0x2e')]['filter']+'%'};return _0x3457ec;}})});}_0x25d55f=_[_0x7e15('0x3d')]({},_0x25d55f,_0x41b8c0[_0x7e15('0x3f')]);var _0x4a21f4={'where':_0x25d55f[_0x7e15('0x3a')]};return db[_0x7e15('0x2a')]['count'](_0x4a21f4)[_0x7e15('0x40')](function(_0x32bf4b){_0x4c5813[_0x7e15('0x1c')]=_0x32bf4b;if(_0x41b8c0[_0x7e15('0x2e')][_0x7e15('0x41')]){_0x25d55f[_0x7e15('0x42')]=[{'all':!![]}];}return db[_0x7e15('0x2a')][_0x7e15('0x43')](_0x25d55f);})[_0x7e15('0x40')](function(_0x1d3309){_0x4c5813[_0x7e15('0x44')]=_0x1d3309;return _0x4c5813;})[_0x7e15('0x40')](respondWithFilteredResult(_0x2ee85f,_0x25d55f))[_0x7e15('0x45')](handleError(_0x2ee85f,null));};exports['show']=function(_0x28f032,_0x1494fa){var _0x294dd6={'raw':![],'where':{'id':_0x28f032['params']['id']}},_0x56faaf={};_0x56faaf[_0x7e15('0x32')]=_[_0x7e15('0x2f')](db['ZohoAccount'][_0x7e15('0x46')]);_0x56faaf[_0x7e15('0x2e')]=_[_0x7e15('0x2f')](_0x28f032[_0x7e15('0x2e')]);_0x56faaf[_0x7e15('0x30')]=_[_0x7e15('0x31')](_0x56faaf[_0x7e15('0x32')],_0x56faaf['query']);_0x294dd6[_0x7e15('0x33')]=_[_0x7e15('0x31')](_0x56faaf[_0x7e15('0x32')],qs[_0x7e15('0x34')](_0x28f032[_0x7e15('0x2e')][_0x7e15('0x34')]));_0x294dd6[_0x7e15('0x33')]=_0x294dd6[_0x7e15('0x33')][_0x7e15('0x35')]?_0x294dd6['attributes']:_0x56faaf['model'];if(_0x28f032[_0x7e15('0x2e')][_0x7e15('0x41')]){_0x294dd6[_0x7e15('0x42')]=[{'all':!![]}];}_0x294dd6=_[_0x7e15('0x3d')]({},_0x294dd6,_0x28f032[_0x7e15('0x3f')]);return db['ZohoAccount'][_0x7e15('0x47')](_0x294dd6)[_0x7e15('0x40')](handleEntityNotFound(_0x1494fa,null))[_0x7e15('0x40')](respondWithResult(_0x1494fa,null))[_0x7e15('0x45')](handleError(_0x1494fa,null));};exports[_0x7e15('0x48')]=function(_0x168ecc,_0x532fd7){return db[_0x7e15('0x2a')][_0x7e15('0x48')](_0x168ecc['body'],{})[_0x7e15('0x40')](respondWithResult(_0x532fd7,0xc9))['catch'](handleError(_0x532fd7,null));};exports[_0x7e15('0x21')]=function(_0x3f398b,_0x23b4d2){if(_0x3f398b['body']['id']){delete _0x3f398b['body']['id'];}return db[_0x7e15('0x2a')][_0x7e15('0x47')]({'where':{'id':_0x3f398b['params']['id']}})[_0x7e15('0x40')](handleEntityNotFound(_0x23b4d2,null))[_0x7e15('0x40')](saveUpdates(_0x3f398b[_0x7e15('0x49')],null))['then'](respondWithResult(_0x23b4d2,null))[_0x7e15('0x45')](handleError(_0x23b4d2,null));};exports[_0x7e15('0x22')]=function(_0x458f07,_0xc6ab79){return db[_0x7e15('0x2a')]['find']({'where':{'id':_0x458f07['params']['id']}})[_0x7e15('0x40')](handleEntityNotFound(_0xc6ab79,null))[_0x7e15('0x40')](removeEntity(_0xc6ab79,null))['catch'](handleError(_0xc6ab79,null));};exports[_0x7e15('0x4a')]=function(_0x5287a8,_0x54582e,_0x44f37d){var _0x512e12={};var _0x2ab93d={};var _0x48f27c;var _0x383fbb;return db['ZohoAccount'][_0x7e15('0x4b')]({'where':{'id':_0x5287a8[_0x7e15('0x4c')]['id']}})[_0x7e15('0x40')](handleEntityNotFound(_0x54582e,null))[_0x7e15('0x40')](function(_0x262021){if(_0x262021){_0x48f27c=_0x262021;_0x2ab93d[_0x7e15('0x32')]=_[_0x7e15('0x2f')](db[_0x7e15('0x4d')]['rawAttributes']);_0x2ab93d[_0x7e15('0x2e')]=_['keys'](_0x5287a8[_0x7e15('0x2e')]);_0x2ab93d[_0x7e15('0x30')]=_['intersection'](_0x2ab93d[_0x7e15('0x32')],_0x2ab93d[_0x7e15('0x2e')]);_0x512e12[_0x7e15('0x33')]=_[_0x7e15('0x31')](_0x2ab93d['model'],qs['fields'](_0x5287a8[_0x7e15('0x2e')][_0x7e15('0x34')]));_0x512e12[_0x7e15('0x33')]=_0x512e12[_0x7e15('0x33')][_0x7e15('0x35')]?_0x512e12[_0x7e15('0x33')]:_0x2ab93d['model'];_0x512e12[_0x7e15('0x38')]=qs[_0x7e15('0x39')](_0x5287a8[_0x7e15('0x2e')]['sort']);_0x512e12['where']=qs[_0x7e15('0x30')](_[_0x7e15('0x3b')](_0x5287a8[_0x7e15('0x2e')],_0x2ab93d[_0x7e15('0x30')]));if(_0x5287a8['query'][_0x7e15('0x3c')]){_0x512e12['where']=_[_0x7e15('0x3d')](_0x512e12[_0x7e15('0x3a')],{'$or':_[_0x7e15('0x29')](_0x512e12[_0x7e15('0x33')],function(_0x2f636c){var _0x197c45={};_0x197c45[_0x2f636c]={'$like':'%'+_0x5287a8['query'][_0x7e15('0x3c')]+'%'};return _0x197c45;})});}_0x512e12=_[_0x7e15('0x3d')]({},_0x512e12,_0x5287a8[_0x7e15('0x3f')]);return _0x48f27c['getConfigurations'](_0x512e12);}})[_0x7e15('0x40')](function(_0x295dc6){if(_0x295dc6){_0x383fbb=_0x295dc6[_0x7e15('0x35')];if(!_0x5287a8['query']['hasOwnProperty'](_0x7e15('0x37'))){_0x512e12[_0x7e15('0x1b')]=qs[_0x7e15('0x1b')](_0x5287a8[_0x7e15('0x2e')]['limit']);_0x512e12[_0x7e15('0x19')]=qs['offset'](_0x5287a8[_0x7e15('0x2e')][_0x7e15('0x19')]);}return _0x48f27c['getConfigurations'](_0x512e12);}})[_0x7e15('0x40')](function(_0x561c82){if(_0x561c82){return _0x561c82?{'count':_0x383fbb,'rows':_0x561c82}:null;}})[_0x7e15('0x40')](respondWithResult(_0x54582e,null))[_0x7e15('0x45')](handleError(_0x54582e,null));};exports[_0x7e15('0x4e')]=function(_0x54e5d7,_0x21d1f8,_0x2babd5){if(_0x54e5d7[_0x7e15('0x49')]['id']){delete _0x54e5d7[_0x7e15('0x49')]['id'];}return db[_0x7e15('0x2a')][_0x7e15('0x4b')]({'where':{'id':_0x54e5d7['params']['id']}})['then'](handleEntityNotFound(_0x21d1f8,null))['then'](function(_0x4fad84){if(_0x4fad84){_0x54e5d7[_0x7e15('0x49')]['AccountId']=_0x4fad84['id'];_0x54e5d7[_0x7e15('0x49')][_0x7e15('0x4f')]=integrations[_0x7e15('0x50')](_0x54e5d7['body'][_0x7e15('0x51')],_0x54e5d7['body'][_0x7e15('0x2c')]);_0x54e5d7[_0x7e15('0x49')][_0x7e15('0x52')]=integrations[_0x7e15('0x53')](_0x54e5d7[_0x7e15('0x49')][_0x7e15('0x51')],_0x54e5d7[_0x7e15('0x49')][_0x7e15('0x2c')]);return db[_0x7e15('0x4d')][_0x7e15('0x48')](_0x54e5d7[_0x7e15('0x49')],{'include':[{'model':db[_0x7e15('0x54')],'as':_0x7e15('0x4f')},{'model':db['ZohoField'],'as':_0x7e15('0x52')}]});}return null;})['then'](respondWithResult(_0x21d1f8,null))[_0x7e15('0x45')](handleError(_0x21d1f8,null));};function getAccessToken(_0x507066){return new Promise(function(_0x5379b1,_0x3a4c73){var _0x3b7fe1;switch(_0x507066[_0x7e15('0x55')]){case'US':_0x3b7fe1='https://accounts.zoho.com';break;case'AU':_0x3b7fe1='https://accounts.zoho.com.au';break;case'EU':_0x3b7fe1=_0x7e15('0x56');break;case'IN':_0x3b7fe1='https://accounts.zoho.in';break;case'CN':_0x3b7fe1='https://accounts.zoho.com.cn';break;default:_0x3b7fe1='https://accounts.zoho.eu';break;}var _0x5ebcc4={'method':_0x7e15('0x57'),'uri':_0x3b7fe1+_0x7e15('0x58'),'qs':{'refresh_token':_0x507066[_0x7e15('0x59')],'client_id':_0x507066[_0x7e15('0x5a')],'client_secret':_0x507066[_0x7e15('0x5b')],'grant_type':_0x7e15('0x5c')},'json':!![]};return rp(_0x5ebcc4)[_0x7e15('0x40')](function(_0x57d6b0){if(_0x57d6b0[_0x7e15('0x5d')]){_0x5379b1(_0x57d6b0[_0x7e15('0x5d')]);}else{_0x3a4c73(_0x7e15('0x5e'));}})['catch'](function(_0x33f654){_0x3a4c73(_0x33f654);});});}exports['getFields']=function(_0x39762a,_0xa8eebd,_0x47f812){var _0x36e868,_0x377f68,_0x2ea88c,_0x57139d,_0x4e3c47;return db[_0x7e15('0x2a')][_0x7e15('0x4b')]({'where':{'id':_0x39762a[_0x7e15('0x4c')]['id']},'attributes':['id','host','zone',_0x7e15('0x5a'),_0x7e15('0x5b'),'serverUrl',_0x7e15('0x5f'),'refreshToken']})[_0x7e15('0x40')](handleEntityNotFound(_0xa8eebd,null))['then'](function(_0x2493ea){_0x4e3c47=_0x2493ea;_0x36e868=_0x4e3c47[_0x7e15('0x60')];_0x377f68=_0x36e868==='zoho.eu'?'eu':'com';_0x2ea88c=_0x4e3c47[_0x7e15('0x61')];var _0x4694e1=_0x2ea88c[_0x7e15('0x62')](-0x1);if(_0x4694e1==='/'||_0x4694e1==='\x5c'||_0x4694e1===':'){_0x2ea88c=_0x2ea88c['substring'](0x0,_0x2ea88c[_0x7e15('0x63')](_0x4694e1));}if(!_0x4e3c47[_0x7e15('0x59')]){throw new Error('Refresh\x20Token\x20not\x20available\x20for\x20the\x20account');}return getAccessToken(_0x4e3c47);})[_0x7e15('0x40')](function(_0x521c57){if(_0x521c57){return rp({'method':_0x7e15('0x64'),'uri':util[_0x7e15('0x65')](_0x7e15('0x66'),_0x377f68),'qs':{'module':_0x7e15('0x67')},'headers':{'Authorization':_0x7e15('0x68')+_0x521c57},'json':!![]});}})[_0x7e15('0x40')](function(_0x503655){if(_0x503655){if(_0x503655[_0x7e15('0x69')]&&_0x503655['response']['error']){throw new Error(_0x503655[_0x7e15('0x69')]['error'][_0x7e15('0x6a')]);}var _0x419847=[];var _0x56c1b4=[];var _0x380cf4=[_0x7e15('0x6b'),'Subject','Description',_0x7e15('0x6c'),_0x7e15('0x6d'),_0x7e15('0x6e'),_0x7e15('0x6f'),_0x7e15('0x70')];_0x56c1b4=_['remove'](_0x503655[_0x7e15('0x34')],function(_0x5c7e41){return _0x380cf4[_0x7e15('0x71')](_0x5c7e41[_0x7e15('0x72')]);});for(var _0x34b25d=0x0;_0x34b25d<_0x56c1b4['length'];_0x34b25d++){if(_0x56c1b4[_0x34b25d][_0x7e15('0x73')]===![]){_0x419847[_0x7e15('0x74')]({'id':_0x56c1b4[_0x34b25d]['id'],'name':_0x56c1b4[_0x34b25d][_0x7e15('0x75')],'custom':_0x56c1b4[_0x34b25d][_0x7e15('0x76')],'options':_0x56c1b4[_0x34b25d][_0x7e15('0x77')]==='picklist'&&_0x56c1b4[_0x34b25d]['pick_list_values']['length']>-0x1?_['map'](_0x56c1b4[_0x34b25d]['pick_list_values'],function(_0x115afb){return{'name':_0x115afb,'value':_0x115afb};}):[]});}}return{'count':_0x419847[_0x7e15('0x35')],'rows':_0x419847};}else{return{'count':0x0,'rows':[]};}})[_0x7e15('0x40')](respondWithResult(_0xa8eebd,null))[_0x7e15('0x45')](function(_0x4f7f97){var _0x4f4889=_0x39762a[_0x7e15('0x2e')][_0x7e15('0x78')]?0x1f4:_0x4f7f97[_0x7e15('0x79')]||0x1f4;logger['error']('getFields,\x20%s,\x20%s,\x20%s',_0x7e15('0x7a'),_0x4f4889,JSON[_0x7e15('0x7b')](_0x4f7f97));delete _0x4f7f97[_0x7e15('0x26')];if(_0x4f4889===0x191){_0x4f4889=0x190;}_0xa8eebd[_0x7e15('0x17')](_0x4f4889)[_0x7e15('0x27')](_0x39762a['query'][_0x7e15('0x78')]?{'message':'Wrong\x20credentials','statusCode':_0x4f7f97[_0x7e15('0x79')]}:_0x4f7f97);});};
\ No newline at end of file