Built motion from commit eddce310.|2.6.12
[motion2.git] / server / api / intZohoAccount / intZohoAccount.controller.js
index 2c90159..a648ba9 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x29b0=['fields','length','hasOwnProperty','nolimit','limit','offset','sort','filters','filter','merge','where','options','includeAll','include','rows','catch','params','keys','intersection','create','body','find','findOne','ZohoConfiguration','order','pick','getConfigurations','addConfiguration','AccountId','Subjects','getSubjects','getDescriptions','channel','ZohoField','Descriptions','https://accounts.zoho.eu','https://accounts.zoho.in','https://accounts.zoho.com.cn','POST','/oauth/v2/token','refreshToken','clientId','clientSecret','refresh_token','access_token','Unable\x20to\x20retrieve\x20the\x20access\x20token','getFields','host','serverUrl','zoho.eu','com','slice','substring','lastIndexOf','Refresh\x20Token\x20not\x20available\x20for\x20the\x20account','GET','https://www.zohoapis.%s/crm/v2/settings/fields','Zoho-oauthtoken\x20','response','Owner','Description','WhoId','Call_Start_Time','Call_Type','api_name','system_mandatory','push','display_label','data_type','pick_list_values','statusCode','getFields,\x20%s,\x20%s,\x20%s','html-pdf','rimraf','zip-dir','fast-json-patch','bluebird','path','sox','to-csv','ejs','squel','crypto','jsforce','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','client','http','test','Sequelize','ValidationError','The\x20password\x20must\x20be\x20at\x20least\x208\x20characters\x20long\x20and\x20have\x201\x20lowercase\x20character,\x201\x20uppercase\x20character,\x201\x20number\x20and\x201\x20special\x20character\x20~!@#$%^&-_=+[{]}.','request','then','info','ZohoAccount,\x20%s,\x20%s','request\x20sent','debug','ZohoAccount,\x20%s,\x20%s,\x20%s','error','code','message','sendStatus','status','end','json','count','set','Content-Range','apply','reject','update','destroy','stack','name','send','index','map','ZohoAccount','rawAttributes','fieldName','type','query','model','attributes'];(function(_0x28b0a4,_0x2ea758){var _0x105ce6=function(_0x6df20f){while(--_0x6df20f){_0x28b0a4['push'](_0x28b0a4['shift']());}};_0x105ce6(++_0x2ea758);}(_0x29b0,0x1dd));var _0x029b=function(_0x4628b8,_0x3a7e4d){_0x4628b8=_0x4628b8-0x0;var _0x341f13=_0x29b0[_0x4628b8];return _0x341f13;};'use strict';var pdf=require(_0x029b('0x0'));var emlformat=require('eml-format');var rimraf=require(_0x029b('0x1'));var zipdir=require(_0x029b('0x2'));var jsonpatch=require(_0x029b('0x3'));var rp=require('request-promise');var moment=require('moment');var BPromise=require(_0x029b('0x4'));var Mustache=require('mustache');var util=require('util');var path=require(_0x029b('0x5'));var sox=require(_0x029b('0x6'));var csv=require(_0x029b('0x7'));var ejs=require(_0x029b('0x8'));var fs=require('fs');var _=require('lodash');var squel=require(_0x029b('0x9'));var crypto=require(_0x029b('0xa'));var jsforce=require(_0x029b('0xb'));var deskjs=require('desk.js');var toCsv=require(_0x029b('0x7'));var querystring=require(_0x029b('0xc'));var Papa=require(_0x029b('0xd'));var Redis=require(_0x029b('0xe'));var authService=require(_0x029b('0xf'));var qs=require(_0x029b('0x10'));var as=require(_0x029b('0x11'));var hardwareService=require(_0x029b('0x12'));var logger=require(_0x029b('0x13'))(_0x029b('0x14'));var utils=require(_0x029b('0x15'));var config=require(_0x029b('0x16'));var db=require(_0x029b('0x17'))['db'];var integrations=require('../../components/integrations/configuration');var jayson=require('jayson/promise');var client=jayson[_0x029b('0x18')][_0x029b('0x19')]({'port':0x232a});function checkPasswordPattern(_0x2aadca,_0x4507c6,_0x41a1ab){if(_0x41a1ab){var _0x4f1702=new RegExp(/(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[?!@#\$%\^&\*~\-_=+[{\]\}])(?=.{8,})/);if(_0x4f1702[_0x029b('0x1a')](_0x4507c6)){return _0x2aadca;}else{throw new db[(_0x029b('0x1b'))][(_0x029b('0x1c'))](_0x029b('0x1d'));}}else{return _0x2aadca;}}function respondWithRpcPromise(_0x26211d,_0x479b0e,_0x551747,_0x300c7c){return new BPromise(function(_0xab18c1,_0x49f911){var _0x31a646=_0x300c7c||client;return _0x31a646[_0x029b('0x1e')](_0x26211d,_0x551747)[_0x029b('0x1f')](function(_0x33c822){logger[_0x029b('0x20')](_0x029b('0x21'),_0x479b0e,_0x029b('0x22'));logger[_0x029b('0x23')](_0x029b('0x24'),_0x479b0e,'request\x20sent',JSON['stringify'](_0x33c822));if(_0x33c822[_0x029b('0x25')]){if(_0x33c822[_0x029b('0x25')][_0x029b('0x26')]===0x1f4){logger[_0x029b('0x25')](_0x029b('0x21'),_0x479b0e,_0x33c822['error'][_0x029b('0x27')]);return _0x49f911(_0x33c822[_0x029b('0x25')][_0x029b('0x27')]);}logger[_0x029b('0x25')](_0x029b('0x21'),_0x479b0e,_0x33c822[_0x029b('0x25')][_0x029b('0x27')]);return _0xab18c1(_0x33c822['error'][_0x029b('0x27')]);}else{logger[_0x029b('0x20')]('ZohoAccount,\x20%s,\x20%s',_0x479b0e,_0x029b('0x22'));_0xab18c1(_0x33c822['result'][_0x029b('0x27')]);}})['catch'](function(_0x59dd85){logger['error']('ZohoAccount,\x20%s,\x20%s',_0x479b0e,_0x59dd85);_0x49f911(_0x59dd85);});});}function respondWithStatusCode(_0x314766,_0x44bd4f){_0x44bd4f=_0x44bd4f||0xcc;return function(_0x45f79f){if(_0x45f79f){return _0x314766[_0x029b('0x28')](_0x44bd4f);}return _0x314766[_0x029b('0x29')](_0x44bd4f)[_0x029b('0x2a')]();};}function respondWithResult(_0x26e703,_0x5796b1){_0x5796b1=_0x5796b1||0xc8;return function(_0x30cfa2){if(_0x30cfa2){return _0x26e703[_0x029b('0x29')](_0x5796b1)[_0x029b('0x2b')](_0x30cfa2);}};}function respondWithFilteredResult(_0x54dec4,_0x9c788c){return function(_0x4adfeb){if(_0x4adfeb){var _0x3f926b=_0x4adfeb[_0x029b('0x2c')],_0x45c8bc=_0x9c788c['offset'],_0x96214e=_0x9c788c['offset']+_0x9c788c['limit'],_0x782d62;if(_0x96214e>=_0x3f926b){_0x96214e=_0x3f926b;_0x782d62=0xc8;}else{_0x782d62=0xce;}_0x54dec4['status'](_0x782d62);return _0x54dec4[_0x029b('0x2d')](_0x029b('0x2e'),_0x45c8bc+'-'+_0x96214e+'/'+_0x3f926b)[_0x029b('0x2b')](_0x4adfeb);}return null;};}function patchUpdates(_0x20063a){return function(_0x360639){try{jsonpatch[_0x029b('0x2f')](_0x360639,_0x20063a,!![]);}catch(_0x4c4c8d){return BPromise[_0x029b('0x30')](_0x4c4c8d);}return _0x360639['save']();};}function saveUpdates(_0x9defa5,_0x3544f7){return function(_0x17fc2d){if(_0x17fc2d){return _0x17fc2d[_0x029b('0x31')](_0x9defa5)[_0x029b('0x1f')](function(_0x75d960){return _0x75d960;});}return null;};}function removeEntity(_0x27aae2,_0x4085d0){return function(_0x169299){if(_0x169299){return _0x169299[_0x029b('0x32')]()[_0x029b('0x1f')](function(){_0x27aae2[_0x029b('0x29')](0xcc)[_0x029b('0x2a')]();});}};}function handleEntityNotFound(_0x133762,_0x48eea9){return function(_0x16fc8b){if(!_0x16fc8b){_0x133762['sendStatus'](0x194);}return _0x16fc8b;};}function handleError(_0x302541,_0x4e101c){_0x4e101c=_0x4e101c||0x1f4;return function(_0x333e13){logger[_0x029b('0x25')](_0x333e13[_0x029b('0x33')]);if(_0x333e13['name']){delete _0x333e13[_0x029b('0x34')];}_0x302541['status'](_0x4e101c)[_0x029b('0x35')](_0x333e13);};}exports[_0x029b('0x36')]=function(_0xd13f35,_0x4e279e){var _0x4926cf={},_0x42e62f={},_0x21df5c={'count':0x0,'rows':[]};var _0x38768d=_[_0x029b('0x37')](db[_0x029b('0x38')][_0x029b('0x39')],function(_0x59efad){return{'name':_0x59efad[_0x029b('0x3a')],'type':_0x59efad[_0x029b('0x3b')]['key']};});_0x42e62f['model']=_[_0x029b('0x37')](_0x38768d,_0x029b('0x34'));_0x42e62f[_0x029b('0x3c')]=_['keys'](_0xd13f35[_0x029b('0x3c')]);_0x42e62f['filters']=_['intersection'](_0x42e62f[_0x029b('0x3d')],_0x42e62f[_0x029b('0x3c')]);_0x4926cf[_0x029b('0x3e')]=_['intersection'](_0x42e62f[_0x029b('0x3d')],qs[_0x029b('0x3f')](_0xd13f35[_0x029b('0x3c')][_0x029b('0x3f')]));_0x4926cf['attributes']=_0x4926cf[_0x029b('0x3e')][_0x029b('0x40')]?_0x4926cf[_0x029b('0x3e')]:_0x42e62f['model'];if(!_0xd13f35['query'][_0x029b('0x41')](_0x029b('0x42'))){_0x4926cf['limit']=qs['limit'](_0xd13f35[_0x029b('0x3c')][_0x029b('0x43')]);_0x4926cf[_0x029b('0x44')]=qs['offset'](_0xd13f35[_0x029b('0x3c')]['offset']);}_0x4926cf['order']=qs['sort'](_0xd13f35[_0x029b('0x3c')][_0x029b('0x45')]);_0x4926cf['where']=qs[_0x029b('0x46')](_['pick'](_0xd13f35[_0x029b('0x3c')],_0x42e62f[_0x029b('0x46')]),_0x38768d);if(_0xd13f35[_0x029b('0x3c')][_0x029b('0x47')]){_0x4926cf['where']=_[_0x029b('0x48')](_0x4926cf[_0x029b('0x49')],{'$or':_[_0x029b('0x37')](_0x38768d,function(_0x1ee440){if(_0x1ee440['type']!=='VIRTUAL'){var _0x3000df={};_0x3000df[_0x1ee440[_0x029b('0x34')]]={'$like':'%'+_0xd13f35[_0x029b('0x3c')][_0x029b('0x47')]+'%'};return _0x3000df;}})});}_0x4926cf=_[_0x029b('0x48')]({},_0x4926cf,_0xd13f35[_0x029b('0x4a')]);var _0x176bc9={'where':_0x4926cf[_0x029b('0x49')]};return db[_0x029b('0x38')][_0x029b('0x2c')](_0x176bc9)['then'](function(_0x410ef0){_0x21df5c[_0x029b('0x2c')]=_0x410ef0;if(_0xd13f35[_0x029b('0x3c')][_0x029b('0x4b')]){_0x4926cf[_0x029b('0x4c')]=[{'all':!![]}];}return db['ZohoAccount']['findAll'](_0x4926cf);})[_0x029b('0x1f')](function(_0x13f62e){_0x21df5c[_0x029b('0x4d')]=_0x13f62e;return _0x21df5c;})[_0x029b('0x1f')](respondWithFilteredResult(_0x4e279e,_0x4926cf))[_0x029b('0x4e')](handleError(_0x4e279e,null));};exports['show']=function(_0x4a797c,_0x2b1aae){var _0x34c57f={'raw':![],'where':{'id':_0x4a797c[_0x029b('0x4f')]['id']}},_0x32bef2={};_0x32bef2[_0x029b('0x3d')]=_[_0x029b('0x50')](db[_0x029b('0x38')][_0x029b('0x39')]);_0x32bef2['query']=_[_0x029b('0x50')](_0x4a797c[_0x029b('0x3c')]);_0x32bef2[_0x029b('0x46')]=_[_0x029b('0x51')](_0x32bef2['model'],_0x32bef2['query']);_0x34c57f[_0x029b('0x3e')]=_['intersection'](_0x32bef2['model'],qs[_0x029b('0x3f')](_0x4a797c['query'][_0x029b('0x3f')]));_0x34c57f[_0x029b('0x3e')]=_0x34c57f[_0x029b('0x3e')][_0x029b('0x40')]?_0x34c57f[_0x029b('0x3e')]:_0x32bef2[_0x029b('0x3d')];if(_0x4a797c['query'][_0x029b('0x4b')]){_0x34c57f[_0x029b('0x4c')]=[{'all':!![]}];}_0x34c57f=_[_0x029b('0x48')]({},_0x34c57f,_0x4a797c[_0x029b('0x4a')]);return db[_0x029b('0x38')]['find'](_0x34c57f)[_0x029b('0x1f')](handleEntityNotFound(_0x2b1aae,null))[_0x029b('0x1f')](respondWithResult(_0x2b1aae,null))[_0x029b('0x4e')](handleError(_0x2b1aae,null));};exports[_0x029b('0x52')]=function(_0x49cfd0,_0x37aa77){return db[_0x029b('0x38')][_0x029b('0x52')](_0x49cfd0['body'],{})[_0x029b('0x1f')](respondWithResult(_0x37aa77,0xc9))[_0x029b('0x4e')](handleError(_0x37aa77,null));};exports[_0x029b('0x31')]=function(_0x2152a1,_0x162efa){if(_0x2152a1[_0x029b('0x53')]['id']){delete _0x2152a1[_0x029b('0x53')]['id'];}return db[_0x029b('0x38')][_0x029b('0x54')]({'where':{'id':_0x2152a1[_0x029b('0x4f')]['id']}})[_0x029b('0x1f')](handleEntityNotFound(_0x162efa,null))[_0x029b('0x1f')](saveUpdates(_0x2152a1[_0x029b('0x53')],null))[_0x029b('0x1f')](respondWithResult(_0x162efa,null))[_0x029b('0x4e')](handleError(_0x162efa,null));};exports[_0x029b('0x32')]=function(_0x53497b,_0x2ebb83){return db[_0x029b('0x38')][_0x029b('0x54')]({'where':{'id':_0x53497b[_0x029b('0x4f')]['id']}})[_0x029b('0x1f')](handleEntityNotFound(_0x2ebb83,null))[_0x029b('0x1f')](removeEntity(_0x2ebb83,null))[_0x029b('0x4e')](handleError(_0x2ebb83,null));};exports['getConfigurations']=function(_0x430b88,_0x2e9f5e,_0xe4c305){var _0x48610a={};var _0x141a28={};var _0x233ed4;var _0x79378c;return db[_0x029b('0x38')][_0x029b('0x55')]({'where':{'id':_0x430b88[_0x029b('0x4f')]['id']}})[_0x029b('0x1f')](handleEntityNotFound(_0x2e9f5e,null))['then'](function(_0x1119ae){if(_0x1119ae){_0x233ed4=_0x1119ae;_0x141a28['model']=_[_0x029b('0x50')](db[_0x029b('0x56')][_0x029b('0x39')]);_0x141a28['query']=_[_0x029b('0x50')](_0x430b88[_0x029b('0x3c')]);_0x141a28[_0x029b('0x46')]=_[_0x029b('0x51')](_0x141a28[_0x029b('0x3d')],_0x141a28[_0x029b('0x3c')]);_0x48610a[_0x029b('0x3e')]=_['intersection'](_0x141a28[_0x029b('0x3d')],qs[_0x029b('0x3f')](_0x430b88[_0x029b('0x3c')][_0x029b('0x3f')]));_0x48610a[_0x029b('0x3e')]=_0x48610a[_0x029b('0x3e')][_0x029b('0x40')]?_0x48610a['attributes']:_0x141a28[_0x029b('0x3d')];_0x48610a[_0x029b('0x57')]=qs['sort'](_0x430b88[_0x029b('0x3c')]['sort']);_0x48610a[_0x029b('0x49')]=qs[_0x029b('0x46')](_[_0x029b('0x58')](_0x430b88['query'],_0x141a28['filters']));if(_0x430b88[_0x029b('0x3c')][_0x029b('0x47')]){_0x48610a[_0x029b('0x49')]=_[_0x029b('0x48')](_0x48610a[_0x029b('0x49')],{'$or':_[_0x029b('0x37')](_0x48610a[_0x029b('0x3e')],function(_0x38fbdf){var _0x98a091={};_0x98a091[_0x38fbdf]={'$like':'%'+_0x430b88[_0x029b('0x3c')]['filter']+'%'};return _0x98a091;})});}_0x48610a=_[_0x029b('0x48')]({},_0x48610a,_0x430b88[_0x029b('0x4a')]);return _0x233ed4[_0x029b('0x59')](_0x48610a);}})['then'](function(_0xcf0ead){if(_0xcf0ead){_0x79378c=_0xcf0ead[_0x029b('0x40')];if(!_0x430b88[_0x029b('0x3c')]['hasOwnProperty'](_0x029b('0x42'))){_0x48610a[_0x029b('0x43')]=qs[_0x029b('0x43')](_0x430b88[_0x029b('0x3c')][_0x029b('0x43')]);_0x48610a[_0x029b('0x44')]=qs[_0x029b('0x44')](_0x430b88['query'][_0x029b('0x44')]);}return _0x233ed4['getConfigurations'](_0x48610a);}})['then'](function(_0x586bc8){if(_0x586bc8){return _0x586bc8?{'count':_0x79378c,'rows':_0x586bc8}:null;}})[_0x029b('0x1f')](respondWithResult(_0x2e9f5e,null))[_0x029b('0x4e')](handleError(_0x2e9f5e,null));};exports[_0x029b('0x5a')]=function(_0x3e7413,_0x79ba17,_0x5ddf9b){if(_0x3e7413[_0x029b('0x53')]['id']){delete _0x3e7413['body']['id'];}return db['ZohoAccount']['findOne']({'where':{'id':_0x3e7413[_0x029b('0x4f')]['id']}})[_0x029b('0x1f')](handleEntityNotFound(_0x79ba17,null))['then'](function(_0x433412){if(_0x433412){_0x3e7413[_0x029b('0x53')][_0x029b('0x5b')]=_0x433412['id'];_0x3e7413['body'][_0x029b('0x5c')]=integrations[_0x029b('0x5d')](_0x3e7413[_0x029b('0x53')]['channel'],_0x3e7413[_0x029b('0x53')][_0x029b('0x3b')]);_0x3e7413[_0x029b('0x53')]['Descriptions']=integrations[_0x029b('0x5e')](_0x3e7413[_0x029b('0x53')][_0x029b('0x5f')],_0x3e7413[_0x029b('0x53')][_0x029b('0x3b')]);return db[_0x029b('0x56')][_0x029b('0x52')](_0x3e7413[_0x029b('0x53')],{'include':[{'model':db[_0x029b('0x60')],'as':_0x029b('0x5c')},{'model':db[_0x029b('0x60')],'as':_0x029b('0x61')}]});}return null;})[_0x029b('0x1f')](respondWithResult(_0x79ba17,null))[_0x029b('0x4e')](handleError(_0x79ba17,null));};function getAccessToken(_0x17b708){return new Promise(function(_0x562ed1,_0x368133){var _0x5996a9;switch(_0x17b708['zone']){case'US':_0x5996a9='https://accounts.zoho.com';break;case'AU':_0x5996a9='https://accounts.zoho.com.au';break;case'EU':_0x5996a9=_0x029b('0x62');break;case'IN':_0x5996a9=_0x029b('0x63');break;case'CN':_0x5996a9=_0x029b('0x64');break;default:_0x5996a9=_0x029b('0x62');break;}var _0x455638={'method':_0x029b('0x65'),'uri':_0x5996a9+_0x029b('0x66'),'qs':{'refresh_token':_0x17b708[_0x029b('0x67')],'client_id':_0x17b708[_0x029b('0x68')],'client_secret':_0x17b708[_0x029b('0x69')],'grant_type':_0x029b('0x6a')},'json':!![]};return rp(_0x455638)[_0x029b('0x1f')](function(_0x9958fa){if(_0x9958fa[_0x029b('0x6b')]){_0x562ed1(_0x9958fa['access_token']);}else{_0x368133(_0x029b('0x6c'));}})[_0x029b('0x4e')](function(_0x293447){_0x368133(_0x293447);});});}exports[_0x029b('0x6d')]=function(_0x18318d,_0x42b4dd,_0x35b1da){var _0x2097d3,_0x3427e1,_0x3683a9,_0x3caf20,_0x1632b2;return db['ZohoAccount']['findOne']({'where':{'id':_0x18318d[_0x029b('0x4f')]['id']},'attributes':['id',_0x029b('0x6e'),'zone','clientId',_0x029b('0x69'),_0x029b('0x6f'),_0x029b('0x26'),_0x029b('0x67')]})[_0x029b('0x1f')](handleEntityNotFound(_0x42b4dd,null))[_0x029b('0x1f')](function(_0xfe65c0){_0x1632b2=_0xfe65c0;_0x2097d3=_0x1632b2['host'];_0x3427e1=_0x2097d3===_0x029b('0x70')?'eu':_0x029b('0x71');_0x3683a9=_0x1632b2['serverUrl'];var _0x4140d9=_0x3683a9[_0x029b('0x72')](-0x1);if(_0x4140d9==='/'||_0x4140d9==='\x5c'||_0x4140d9===':'){_0x3683a9=_0x3683a9[_0x029b('0x73')](0x0,_0x3683a9[_0x029b('0x74')](_0x4140d9));}if(!_0x1632b2[_0x029b('0x67')]){throw new Error(_0x029b('0x75'));}return getAccessToken(_0x1632b2);})[_0x029b('0x1f')](function(_0x74e1a2){if(_0x74e1a2){return rp({'method':_0x029b('0x76'),'uri':util['format'](_0x029b('0x77'),_0x3427e1),'qs':{'module':'Calls'},'headers':{'Authorization':_0x029b('0x78')+_0x74e1a2},'json':!![]});}})[_0x029b('0x1f')](function(_0x113163){if(_0x113163){if(_0x113163['response']&&_0x113163[_0x029b('0x79')][_0x029b('0x25')]){throw new Error(_0x113163['response'][_0x029b('0x25')][_0x029b('0x27')]);}var _0x3cf4a0=[];var _0x1c8625=[];var _0x4330cf=[_0x029b('0x7a'),'Subject',_0x029b('0x7b'),_0x029b('0x7c'),'Call_Duration','Call_Result',_0x029b('0x7d'),_0x029b('0x7e')];_0x1c8625=_['remove'](_0x113163[_0x029b('0x3f')],function(_0x278986){return _0x4330cf['includes'](_0x278986[_0x029b('0x7f')]);});for(var _0x417a20=0x0;_0x417a20<_0x1c8625[_0x029b('0x40')];_0x417a20++){if(_0x1c8625[_0x417a20][_0x029b('0x80')]===![]){_0x3cf4a0[_0x029b('0x81')]({'id':_0x1c8625[_0x417a20]['id'],'name':_0x1c8625[_0x417a20][_0x029b('0x82')],'custom':_0x1c8625[_0x417a20]['custom_field'],'options':_0x1c8625[_0x417a20][_0x029b('0x83')]==='picklist'&&_0x1c8625[_0x417a20][_0x029b('0x84')]['length']>-0x1?_['map'](_0x1c8625[_0x417a20][_0x029b('0x84')],function(_0xc4cc32){return{'name':_0xc4cc32,'value':_0xc4cc32};}):[]});}}return{'count':_0x3cf4a0[_0x029b('0x40')],'rows':_0x3cf4a0};}else{return{'count':0x0,'rows':[]};}})[_0x029b('0x1f')](respondWithResult(_0x42b4dd,null))[_0x029b('0x4e')](function(_0x23d11d){var _0x5ea5b2=_0x18318d[_0x029b('0x3c')]['test']?0x1f4:_0x23d11d[_0x029b('0x85')]||0x1f4;logger['error'](_0x029b('0x86'),_0x029b('0x6d'),_0x5ea5b2,JSON['stringify'](_0x23d11d));delete _0x23d11d[_0x029b('0x34')];if(_0x5ea5b2===0x191){_0x5ea5b2=0x190;}_0x42b4dd[_0x029b('0x29')](_0x5ea5b2)[_0x029b('0x35')](_0x18318d[_0x029b('0x3c')]['test']?{'message':'Wrong\x20credentials','statusCode':_0x23d11d[_0x029b('0x85')]}:_0x23d11d);});};
\ 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