Built motion from commit 85328c08.|2.5.50
[motion2.git] / server / api / intZohoAccount / intZohoAccount.controller.js
index 5a2c6af..adcaccd 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-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
+var _0xc7df=['Unable\x20to\x20retrieve\x20the\x20access\x20token','host','serverUrl','code','zoho.eu','slice','substring','Refresh\x20Token\x20not\x20available\x20for\x20the\x20account','GET','format','https://www.zohoapis.%s/crm/v2/settings/fields','Zoho-oauthtoken\x20','response','message','Subject','Description','WhoId','Call_Duration','Call_Type','remove','includes','api_name','push','display_label','custom_field','data_type','picklist','pick_list_values','statusCode','getFields,\x20%s,\x20%s,\x20%s','getFields','test','Wrong\x20credentials','eml-format','rimraf','fast-json-patch','moment','mustache','util','path','sox','ejs','fs-extra','lodash','squel','jsforce','desk.js','to-csv','querystring','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','../../config/utils','../../config/environment','../../config/license/util','../../components/integrations/configuration','sendStatus','status','offset','limit','count','set','Content-Range','reject','save','update','destroy','end','error','stack','name','send','index','map','ZohoAccount','rawAttributes','fieldName','type','key','model','filters','intersection','query','fields','attributes','length','hasOwnProperty','order','sort','where','pick','filter','merge','then','includeAll','findAll','rows','show','options','find','catch','create','body','params','keys','ZohoConfiguration','nolimit','getConfigurations','addConfiguration','findOne','Subjects','getSubjects','channel','Descriptions','ZohoField','zone','https://accounts.zoho.com','https://accounts.zoho.eu','https://accounts.zoho.com.cn','POST','/oauth/v2/token','refreshToken','clientId','clientSecret','refresh_token','access_token'];(function(_0x3f4dd9,_0xe0b819){var _0x31c54a=function(_0x25e6c6){while(--_0x25e6c6){_0x3f4dd9['push'](_0x3f4dd9['shift']());}};_0x31c54a(++_0xe0b819);}(_0xc7df,0xa1));var _0xfc7d=function(_0x3a3525,_0x20bccf){_0x3a3525=_0x3a3525-0x0;var _0x54f07f=_0xc7df[_0x3a3525];return _0x54f07f;};'use strict';var emlformat=require(_0xfc7d('0x0'));var rimraf=require(_0xfc7d('0x1'));var zipdir=require('zip-dir');var jsonpatch=require(_0xfc7d('0x2'));var rp=require('request-promise');var moment=require(_0xfc7d('0x3'));var BPromise=require('bluebird');var Mustache=require(_0xfc7d('0x4'));var util=require(_0xfc7d('0x5'));var path=require(_0xfc7d('0x6'));var sox=require(_0xfc7d('0x7'));var csv=require('to-csv');var ejs=require(_0xfc7d('0x8'));var fs=require('fs');var fs_extra=require(_0xfc7d('0x9'));var _=require(_0xfc7d('0xa'));var squel=require(_0xfc7d('0xb'));var crypto=require('crypto');var jsforce=require(_0xfc7d('0xc'));var deskjs=require(_0xfc7d('0xd'));var toCsv=require(_0xfc7d('0xe'));var querystring=require(_0xfc7d('0xf'));var Papa=require('papaparse');var Redis=require(_0xfc7d('0x10'));var authService=require('../../components/auth/service');var qs=require(_0xfc7d('0x11'));var as=require(_0xfc7d('0x12'));var hardwareService=require(_0xfc7d('0x13'));var logger=require(_0xfc7d('0x14'))('api');var utils=require(_0xfc7d('0x15'));var config=require(_0xfc7d('0x16'));var licenseUtil=require(_0xfc7d('0x17'));var db=require('../../mysqldb')['db'];var integrations=require(_0xfc7d('0x18'));function respondWithStatusCode(_0x26a747,_0xe86c0){_0xe86c0=_0xe86c0||0xcc;return function(_0x2844e1){if(_0x2844e1){return _0x26a747[_0xfc7d('0x19')](_0xe86c0);}return _0x26a747['status'](_0xe86c0)['end']();};}function respondWithResult(_0x53b2b1,_0x31e6d2){_0x31e6d2=_0x31e6d2||0xc8;return function(_0x36cff2){if(_0x36cff2){return _0x53b2b1[_0xfc7d('0x1a')](_0x31e6d2)['json'](_0x36cff2);}};}function respondWithFilteredResult(_0x1a72d5,_0x280c38){return function(_0x2f627d){if(_0x2f627d){var _0x249155=typeof _0x280c38[_0xfc7d('0x1b')]==='undefined'&&typeof _0x280c38[_0xfc7d('0x1c')]==='undefined';var _0x1bd213=_0x2f627d[_0xfc7d('0x1d')];var _0x5b7c93=_0x249155?0x0:_0x280c38['offset'];var _0x3491be=_0x249155?_0x2f627d[_0xfc7d('0x1d')]:_0x280c38[_0xfc7d('0x1b')]+_0x280c38[_0xfc7d('0x1c')];var _0x24ba4a;if(_0x3491be>=_0x1bd213){_0x3491be=_0x1bd213;_0x24ba4a=0xc8;}else{_0x24ba4a=0xce;}_0x1a72d5[_0xfc7d('0x1a')](_0x24ba4a);return _0x1a72d5[_0xfc7d('0x1e')](_0xfc7d('0x1f'),_0x5b7c93+'-'+_0x3491be+'/'+_0x1bd213)['json'](_0x2f627d);}return null;};}function patchUpdates(_0x5c866b){return function(_0x30105a){try{jsonpatch['apply'](_0x30105a,_0x5c866b,!![]);}catch(_0x3d2eed){return BPromise[_0xfc7d('0x20')](_0x3d2eed);}return _0x30105a[_0xfc7d('0x21')]();};}function saveUpdates(_0x38dbe8,_0x5e5cce){return function(_0x11e0b7){if(_0x11e0b7){return _0x11e0b7[_0xfc7d('0x22')](_0x38dbe8)['then'](function(_0x2d10b9){return _0x2d10b9;});}return null;};}function removeEntity(_0x19681f,_0x1aee66){return function(_0x1120fa){if(_0x1120fa){return _0x1120fa[_0xfc7d('0x23')]()['then'](function(){_0x19681f['status'](0xcc)[_0xfc7d('0x24')]();});}};}function handleEntityNotFound(_0x253506,_0x30f9f9){return function(_0x5e4b4b){if(!_0x5e4b4b){_0x253506[_0xfc7d('0x19')](0x194);}return _0x5e4b4b;};}function handleError(_0x355d83,_0x9b8ea8){_0x9b8ea8=_0x9b8ea8||0x1f4;return function(_0x3cb5dc){logger[_0xfc7d('0x25')](_0x3cb5dc[_0xfc7d('0x26')]);if(_0x3cb5dc[_0xfc7d('0x27')]){delete _0x3cb5dc[_0xfc7d('0x27')];}_0x355d83[_0xfc7d('0x1a')](_0x9b8ea8)[_0xfc7d('0x28')](_0x3cb5dc);};}exports[_0xfc7d('0x29')]=function(_0x1dbbea,_0x151495){var _0x3b6fbb={},_0x421c4a={},_0x340064={'count':0x0,'rows':[]};var _0x6d6b92=_[_0xfc7d('0x2a')](db[_0xfc7d('0x2b')][_0xfc7d('0x2c')],function(_0x3257b5){return{'name':_0x3257b5[_0xfc7d('0x2d')],'type':_0x3257b5[_0xfc7d('0x2e')][_0xfc7d('0x2f')]};});_0x421c4a[_0xfc7d('0x30')]=_[_0xfc7d('0x2a')](_0x6d6b92,'name');_0x421c4a['query']=_['keys'](_0x1dbbea['query']);_0x421c4a[_0xfc7d('0x31')]=_[_0xfc7d('0x32')](_0x421c4a['model'],_0x421c4a['query']);_0x3b6fbb['attributes']=_[_0xfc7d('0x32')](_0x421c4a[_0xfc7d('0x30')],qs['fields'](_0x1dbbea[_0xfc7d('0x33')][_0xfc7d('0x34')]));_0x3b6fbb[_0xfc7d('0x35')]=_0x3b6fbb[_0xfc7d('0x35')][_0xfc7d('0x36')]?_0x3b6fbb['attributes']:_0x421c4a[_0xfc7d('0x30')];if(!_0x1dbbea[_0xfc7d('0x33')][_0xfc7d('0x37')]('nolimit')){_0x3b6fbb[_0xfc7d('0x1c')]=qs[_0xfc7d('0x1c')](_0x1dbbea[_0xfc7d('0x33')][_0xfc7d('0x1c')]);_0x3b6fbb[_0xfc7d('0x1b')]=qs[_0xfc7d('0x1b')](_0x1dbbea[_0xfc7d('0x33')][_0xfc7d('0x1b')]);}_0x3b6fbb[_0xfc7d('0x38')]=qs[_0xfc7d('0x39')](_0x1dbbea[_0xfc7d('0x33')][_0xfc7d('0x39')]);_0x3b6fbb[_0xfc7d('0x3a')]=qs['filters'](_[_0xfc7d('0x3b')](_0x1dbbea['query'],_0x421c4a[_0xfc7d('0x31')]),_0x6d6b92);if(_0x1dbbea[_0xfc7d('0x33')][_0xfc7d('0x3c')]){_0x3b6fbb[_0xfc7d('0x3a')]=_[_0xfc7d('0x3d')](_0x3b6fbb[_0xfc7d('0x3a')],{'$or':_[_0xfc7d('0x2a')](_0x6d6b92,function(_0x203243){if(_0x203243['type']!=='VIRTUAL'){var _0x5efe03={};_0x5efe03[_0x203243['name']]={'$like':'%'+_0x1dbbea[_0xfc7d('0x33')][_0xfc7d('0x3c')]+'%'};return _0x5efe03;}})});}_0x3b6fbb=_[_0xfc7d('0x3d')]({},_0x3b6fbb,_0x1dbbea['options']);var _0x593230={'where':_0x3b6fbb[_0xfc7d('0x3a')]};return db[_0xfc7d('0x2b')][_0xfc7d('0x1d')](_0x593230)[_0xfc7d('0x3e')](function(_0x76677a){_0x340064[_0xfc7d('0x1d')]=_0x76677a;if(_0x1dbbea[_0xfc7d('0x33')][_0xfc7d('0x3f')]){_0x3b6fbb['include']=[{'all':!![]}];}return db[_0xfc7d('0x2b')][_0xfc7d('0x40')](_0x3b6fbb);})[_0xfc7d('0x3e')](function(_0x14f2b0){_0x340064[_0xfc7d('0x41')]=_0x14f2b0;return _0x340064;})[_0xfc7d('0x3e')](respondWithFilteredResult(_0x151495,_0x3b6fbb))['catch'](handleError(_0x151495,null));};exports[_0xfc7d('0x42')]=function(_0x2b0b7b,_0x2cfe90){var _0x457583={'raw':![],'where':{'id':_0x2b0b7b['params']['id']}},_0x3cf67a={};_0x3cf67a[_0xfc7d('0x30')]=_['keys'](db[_0xfc7d('0x2b')][_0xfc7d('0x2c')]);_0x3cf67a[_0xfc7d('0x33')]=_['keys'](_0x2b0b7b[_0xfc7d('0x33')]);_0x3cf67a[_0xfc7d('0x31')]=_[_0xfc7d('0x32')](_0x3cf67a[_0xfc7d('0x30')],_0x3cf67a[_0xfc7d('0x33')]);_0x457583['attributes']=_[_0xfc7d('0x32')](_0x3cf67a[_0xfc7d('0x30')],qs[_0xfc7d('0x34')](_0x2b0b7b[_0xfc7d('0x33')]['fields']));_0x457583[_0xfc7d('0x35')]=_0x457583[_0xfc7d('0x35')][_0xfc7d('0x36')]?_0x457583[_0xfc7d('0x35')]:_0x3cf67a[_0xfc7d('0x30')];if(_0x2b0b7b['query']['includeAll']){_0x457583['include']=[{'all':!![]}];}_0x457583=_[_0xfc7d('0x3d')]({},_0x457583,_0x2b0b7b[_0xfc7d('0x43')]);return db[_0xfc7d('0x2b')][_0xfc7d('0x44')](_0x457583)[_0xfc7d('0x3e')](handleEntityNotFound(_0x2cfe90,null))['then'](respondWithResult(_0x2cfe90,null))[_0xfc7d('0x45')](handleError(_0x2cfe90,null));};exports[_0xfc7d('0x46')]=function(_0xe3fcfe,_0x5e7701){return db[_0xfc7d('0x2b')][_0xfc7d('0x46')](_0xe3fcfe[_0xfc7d('0x47')],{})[_0xfc7d('0x3e')](respondWithResult(_0x5e7701,0xc9))['catch'](handleError(_0x5e7701,null));};exports['update']=function(_0x75c3d1,_0x5d3f32){if(_0x75c3d1[_0xfc7d('0x47')]['id']){delete _0x75c3d1[_0xfc7d('0x47')]['id'];}return db[_0xfc7d('0x2b')]['find']({'where':{'id':_0x75c3d1[_0xfc7d('0x48')]['id']}})[_0xfc7d('0x3e')](handleEntityNotFound(_0x5d3f32,null))[_0xfc7d('0x3e')](saveUpdates(_0x75c3d1[_0xfc7d('0x47')],null))[_0xfc7d('0x3e')](respondWithResult(_0x5d3f32,null))[_0xfc7d('0x45')](handleError(_0x5d3f32,null));};exports['destroy']=function(_0x5b2f57,_0x4a104f){return db[_0xfc7d('0x2b')][_0xfc7d('0x44')]({'where':{'id':_0x5b2f57[_0xfc7d('0x48')]['id']}})[_0xfc7d('0x3e')](handleEntityNotFound(_0x4a104f,null))[_0xfc7d('0x3e')](removeEntity(_0x4a104f,null))[_0xfc7d('0x45')](handleError(_0x4a104f,null));};exports['getConfigurations']=function(_0x36fe41,_0x542d79,_0x610137){var _0x49e317={};var _0x26109b={};var _0x6a283d;var _0x486add;return db[_0xfc7d('0x2b')]['findOne']({'where':{'id':_0x36fe41[_0xfc7d('0x48')]['id']}})[_0xfc7d('0x3e')](handleEntityNotFound(_0x542d79,null))[_0xfc7d('0x3e')](function(_0x5d1e1a){if(_0x5d1e1a){_0x6a283d=_0x5d1e1a;_0x26109b[_0xfc7d('0x30')]=_[_0xfc7d('0x49')](db[_0xfc7d('0x4a')][_0xfc7d('0x2c')]);_0x26109b['query']=_['keys'](_0x36fe41[_0xfc7d('0x33')]);_0x26109b[_0xfc7d('0x31')]=_['intersection'](_0x26109b[_0xfc7d('0x30')],_0x26109b[_0xfc7d('0x33')]);_0x49e317[_0xfc7d('0x35')]=_[_0xfc7d('0x32')](_0x26109b[_0xfc7d('0x30')],qs[_0xfc7d('0x34')](_0x36fe41[_0xfc7d('0x33')][_0xfc7d('0x34')]));_0x49e317[_0xfc7d('0x35')]=_0x49e317[_0xfc7d('0x35')][_0xfc7d('0x36')]?_0x49e317[_0xfc7d('0x35')]:_0x26109b[_0xfc7d('0x30')];_0x49e317['order']=qs['sort'](_0x36fe41[_0xfc7d('0x33')][_0xfc7d('0x39')]);_0x49e317[_0xfc7d('0x3a')]=qs[_0xfc7d('0x31')](_[_0xfc7d('0x3b')](_0x36fe41[_0xfc7d('0x33')],_0x26109b[_0xfc7d('0x31')]));if(_0x36fe41['query']['filter']){_0x49e317[_0xfc7d('0x3a')]=_['merge'](_0x49e317[_0xfc7d('0x3a')],{'$or':_['map'](_0x49e317[_0xfc7d('0x35')],function(_0x8742be){var _0x3e0b1a={};_0x3e0b1a[_0x8742be]={'$like':'%'+_0x36fe41['query'][_0xfc7d('0x3c')]+'%'};return _0x3e0b1a;})});}_0x49e317=_[_0xfc7d('0x3d')]({},_0x49e317,_0x36fe41['options']);return _0x6a283d['getConfigurations'](_0x49e317);}})['then'](function(_0xc717e4){if(_0xc717e4){_0x486add=_0xc717e4[_0xfc7d('0x36')];if(!_0x36fe41[_0xfc7d('0x33')][_0xfc7d('0x37')](_0xfc7d('0x4b'))){_0x49e317['limit']=qs[_0xfc7d('0x1c')](_0x36fe41[_0xfc7d('0x33')][_0xfc7d('0x1c')]);_0x49e317[_0xfc7d('0x1b')]=qs[_0xfc7d('0x1b')](_0x36fe41[_0xfc7d('0x33')]['offset']);}return _0x6a283d[_0xfc7d('0x4c')](_0x49e317);}})[_0xfc7d('0x3e')](function(_0x4764d9){if(_0x4764d9){return _0x4764d9?{'count':_0x486add,'rows':_0x4764d9}:null;}})['then'](respondWithResult(_0x542d79,null))[_0xfc7d('0x45')](handleError(_0x542d79,null));};exports[_0xfc7d('0x4d')]=function(_0x482452,_0x211e0e,_0x222f51){if(_0x482452[_0xfc7d('0x47')]['id']){delete _0x482452[_0xfc7d('0x47')]['id'];}return db['ZohoAccount'][_0xfc7d('0x4e')]({'where':{'id':_0x482452['params']['id']}})['then'](handleEntityNotFound(_0x211e0e,null))['then'](function(_0x198a4d){if(_0x198a4d){_0x482452[_0xfc7d('0x47')]['AccountId']=_0x198a4d['id'];_0x482452[_0xfc7d('0x47')][_0xfc7d('0x4f')]=integrations[_0xfc7d('0x50')](_0x482452[_0xfc7d('0x47')][_0xfc7d('0x51')],_0x482452[_0xfc7d('0x47')]['type']);_0x482452['body'][_0xfc7d('0x52')]=integrations['getDescriptions'](_0x482452[_0xfc7d('0x47')][_0xfc7d('0x51')],_0x482452[_0xfc7d('0x47')][_0xfc7d('0x2e')]);return db[_0xfc7d('0x4a')][_0xfc7d('0x46')](_0x482452[_0xfc7d('0x47')],{'include':[{'model':db[_0xfc7d('0x53')],'as':_0xfc7d('0x4f')},{'model':db['ZohoField'],'as':'Descriptions'}]});}return null;})[_0xfc7d('0x3e')](respondWithResult(_0x211e0e,null))[_0xfc7d('0x45')](handleError(_0x211e0e,null));};function getAccessToken(_0x58a682){return new Promise(function(_0x436f82,_0x52014e){var _0x8a5ee0;switch(_0x58a682[_0xfc7d('0x54')]){case'US':_0x8a5ee0=_0xfc7d('0x55');break;case'AU':_0x8a5ee0='https://accounts.zoho.com.au';break;case'EU':_0x8a5ee0=_0xfc7d('0x56');break;case'IN':_0x8a5ee0='https://accounts.zoho.in';break;case'CN':_0x8a5ee0=_0xfc7d('0x57');break;default:_0x8a5ee0=_0xfc7d('0x56');break;}var _0x3129cf={'method':_0xfc7d('0x58'),'uri':_0x8a5ee0+_0xfc7d('0x59'),'qs':{'refresh_token':_0x58a682[_0xfc7d('0x5a')],'client_id':_0x58a682[_0xfc7d('0x5b')],'client_secret':_0x58a682[_0xfc7d('0x5c')],'grant_type':_0xfc7d('0x5d')},'json':!![]};return rp(_0x3129cf)[_0xfc7d('0x3e')](function(_0x4c014d){if(_0x4c014d[_0xfc7d('0x5e')]){_0x436f82(_0x4c014d[_0xfc7d('0x5e')]);}else{_0x52014e(_0xfc7d('0x5f'));}})[_0xfc7d('0x45')](function(_0x23f50a){_0x52014e(_0x23f50a);});});}exports['getFields']=function(_0x7d6af0,_0x147d2d,_0x2b8e7b){var _0x4a2dcc,_0xa8076,_0x476341,_0x147e0a,_0xa23325;return db[_0xfc7d('0x2b')][_0xfc7d('0x4e')]({'where':{'id':_0x7d6af0['params']['id']},'attributes':['id',_0xfc7d('0x60'),'zone',_0xfc7d('0x5b'),_0xfc7d('0x5c'),_0xfc7d('0x61'),_0xfc7d('0x62'),_0xfc7d('0x5a')]})[_0xfc7d('0x3e')](handleEntityNotFound(_0x147d2d,null))[_0xfc7d('0x3e')](function(_0x1c1783){_0xa23325=_0x1c1783;_0x4a2dcc=_0xa23325[_0xfc7d('0x60')];_0xa8076=_0x4a2dcc===_0xfc7d('0x63')?'eu':'com';_0x476341=_0xa23325[_0xfc7d('0x61')];var _0x1bc7d3=_0x476341[_0xfc7d('0x64')](-0x1);if(_0x1bc7d3==='/'||_0x1bc7d3==='\x5c'||_0x1bc7d3===':'){_0x476341=_0x476341[_0xfc7d('0x65')](0x0,_0x476341['lastIndexOf'](_0x1bc7d3));}if(!_0xa23325[_0xfc7d('0x5a')]){throw new Error(_0xfc7d('0x66'));}return getAccessToken(_0xa23325);})[_0xfc7d('0x3e')](function(_0x33e1a5){if(_0x33e1a5){return rp({'method':_0xfc7d('0x67'),'uri':util[_0xfc7d('0x68')](_0xfc7d('0x69'),_0xa8076),'qs':{'module':'Calls'},'headers':{'Authorization':_0xfc7d('0x6a')+_0x33e1a5},'json':!![]});}})[_0xfc7d('0x3e')](function(_0x29f1b5){if(_0x29f1b5){if(_0x29f1b5[_0xfc7d('0x6b')]&&_0x29f1b5[_0xfc7d('0x6b')][_0xfc7d('0x25')]){throw new Error(_0x29f1b5['response'][_0xfc7d('0x25')][_0xfc7d('0x6c')]);}var _0x4e7a2f=[];var _0x4871fb=[];var _0x870851=['Owner',_0xfc7d('0x6d'),_0xfc7d('0x6e'),_0xfc7d('0x6f'),_0xfc7d('0x70'),'Call_Result','Call_Start_Time',_0xfc7d('0x71')];_0x4871fb=_[_0xfc7d('0x72')](_0x29f1b5['fields'],function(_0x1488ce){return _0x870851[_0xfc7d('0x73')](_0x1488ce[_0xfc7d('0x74')]);});for(var _0x5d8096=0x0;_0x5d8096<_0x4871fb[_0xfc7d('0x36')];_0x5d8096++){if(_0x4871fb[_0x5d8096]['system_mandatory']===![]){_0x4e7a2f[_0xfc7d('0x75')]({'id':_0x4871fb[_0x5d8096]['id'],'name':_0x4871fb[_0x5d8096][_0xfc7d('0x76')],'custom':_0x4871fb[_0x5d8096][_0xfc7d('0x77')],'options':_0x4871fb[_0x5d8096][_0xfc7d('0x78')]===_0xfc7d('0x79')&&_0x4871fb[_0x5d8096][_0xfc7d('0x7a')][_0xfc7d('0x36')]>-0x1?_['map'](_0x4871fb[_0x5d8096]['pick_list_values'],function(_0x38288e){return{'name':_0x38288e,'value':_0x38288e};}):[]});}}return{'count':_0x4e7a2f['length'],'rows':_0x4e7a2f};}else{return{'count':0x0,'rows':[]};}})[_0xfc7d('0x3e')](respondWithResult(_0x147d2d,null))['catch'](function(_0x34b3fb){var _0x46f380=_0x7d6af0['query']['test']?0x1f4:_0x34b3fb[_0xfc7d('0x7b')]||0x1f4;logger[_0xfc7d('0x25')](_0xfc7d('0x7c'),_0xfc7d('0x7d'),_0x46f380,JSON['stringify'](_0x34b3fb));delete _0x34b3fb[_0xfc7d('0x27')];if(_0x46f380===0x191){_0x46f380=0x190;}_0x147d2d['status'](_0x46f380)['send'](_0x7d6af0[_0xfc7d('0x33')][_0xfc7d('0x7e')]?{'message':_0xfc7d('0x7f'),'statusCode':_0x34b3fb[_0xfc7d('0x7b')]}:_0x34b3fb);});};
\ No newline at end of file