Built motion from commit da617fac.|2.6.6
[motion2.git] / server / api / cloudProvider / cloudProvider.controller.js
index 5be0eff..b2af5a2 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xab53=['oauth2Claims','del','getOauth2MicrosoftAccessToken','code','refresh_token','data6','startRefreshInterval','emit','microsoftAuthorization:error','message','Authentication\x20failed\x20for\x20cloud\x20provider\x20#%s,\x20err:%s','stringify','lodash','ioredis','../../components/parsers/qs','../../components/encryptor','../../config/environment','../../config/logger','api','../../mysqldb','./cloudProvider.oauth','redis','localhost','socket.io-emitter','sendStatus','status','json','offset','limit','undefined','count','set','Content-Range','then','destroy','stack','name','send','padEnd','map','CloudProvider','key','model','query','keys','filters','intersection','fields','attributes','length','nolimit','order','sort','where','pick','merge','type','VIRTUAL','filter','includeAll','findAll','rows','service','MicrosoftAzure','decryptString','data3','catch','show','params','include','options','find','create','body','Invalid\x20service\x20parameter.\x20Allowed\x20values:\x20','encryptString','update','oauth2MicrosoftAuthorize','findOne','generateMicrosoftAuthorizationUrl','oauth2MicrosoftCallback','error','get','state','from','base64','toString','ascii','parse'];(function(_0x12fb01,_0x3e2ee6){var _0xc0aee1=function(_0x5ce22f){while(--_0x5ce22f){_0x12fb01['push'](_0x12fb01['shift']());}};_0xc0aee1(++_0x3e2ee6);}(_0xab53,0x1c9));var _0x3ab5=function(_0x424a9a,_0x2dd9af){_0x424a9a=_0x424a9a-0x0;var _0xa7831c=_0xab53[_0x424a9a];return _0xa7831c;};'use strict';var _=require(_0x3ab5('0x0'));var Redis=require(_0x3ab5('0x1'));var qs=require(_0x3ab5('0x2'));var encryptor=require(_0x3ab5('0x3'));var config=require(_0x3ab5('0x4'));var logger=require(_0x3ab5('0x5'))(_0x3ab5('0x6'));var db=require(_0x3ab5('0x7'))['db'];var oauth=require(_0x3ab5('0x8'));config['redis']=_['defaults'](config[_0x3ab5('0x9')],{'host':_0x3ab5('0xa'),'port':0x18eb});var socket=require(_0x3ab5('0xb'))(new Redis(config[_0x3ab5('0x9')]));var redis=new Redis(config['redis']);function respondWithStatusCode(_0x158183,_0xb361aa){_0xb361aa=_0xb361aa||0xcc;return function(_0xc77340){if(_0xc77340){return _0x158183[_0x3ab5('0xc')](_0xb361aa);}return _0x158183[_0x3ab5('0xd')](_0xb361aa)['end']();};}function respondWithResult(_0x484b1c,_0x56caef){_0x56caef=_0x56caef||0xc8;return function(_0x4e2abc){if(_0x4e2abc){return _0x484b1c[_0x3ab5('0xd')](_0x56caef)[_0x3ab5('0xe')](_0x4e2abc);}};}function respondWithFilteredResult(_0x394e3b,_0x24d3b4){return function(_0x3a34a5){if(_0x3a34a5){var _0x24de82=typeof _0x24d3b4[_0x3ab5('0xf')]==='undefined'&&typeof _0x24d3b4[_0x3ab5('0x10')]===_0x3ab5('0x11');var _0xab4880=_0x3a34a5[_0x3ab5('0x12')];var _0x5c1977=_0x24de82?0x0:_0x24d3b4[_0x3ab5('0xf')];var _0x195d95=_0x24de82?_0x3a34a5[_0x3ab5('0x12')]:_0x24d3b4['offset']+_0x24d3b4[_0x3ab5('0x10')];var _0x158885;if(_0x195d95>=_0xab4880){_0x195d95=_0xab4880;_0x158885=0xc8;}else{_0x158885=0xce;}_0x394e3b[_0x3ab5('0xd')](_0x158885);return _0x394e3b[_0x3ab5('0x13')](_0x3ab5('0x14'),_0x5c1977+'-'+_0x195d95+'/'+_0xab4880)[_0x3ab5('0xe')](_0x3a34a5);}return null;};}function saveUpdates(_0x204d10){return function(_0x32306e){if(_0x32306e){return _0x32306e['update'](_0x204d10)[_0x3ab5('0x15')](function(_0x21293d){return _0x21293d;});}return null;};}function removeEntity(_0x474d26){return function(_0x3e68bd){if(_0x3e68bd){return _0x3e68bd[_0x3ab5('0x16')]()['then'](function(){_0x474d26[_0x3ab5('0xd')](0xcc)['end']();});}};}function handleEntityNotFound(_0x465a70){return function(_0x46ca4c){if(!_0x46ca4c){_0x465a70[_0x3ab5('0xc')](0x194);}return _0x46ca4c;};}function handleError(_0x7f3d97,_0x56008e){_0x56008e=_0x56008e||0x1f4;return function(_0x576bbc){logger['error'](_0x576bbc[_0x3ab5('0x17')]);if(_0x576bbc[_0x3ab5('0x18')]){delete _0x576bbc['name'];}_0x7f3d97[_0x3ab5('0xd')](_0x56008e)[_0x3ab5('0x19')](_0x576bbc);};}function maskClientSecret(_0x2736fa){return _[_0x3ab5('0x1a')](_0x2736fa['slice'](0x0,0x3),0x14,'*');}exports['index']=function(_0x2a1f2d,_0x1833f9){var _0x460c10={},_0x1ddaa5={},_0x22ad5d={'count':0x0,'rows':[]};var _0x1812e6=_[_0x3ab5('0x1b')](db[_0x3ab5('0x1c')]['rawAttributes'],function(_0x4549fa){return{'name':_0x4549fa['fieldName'],'type':_0x4549fa['type'][_0x3ab5('0x1d')]};});_0x1ddaa5[_0x3ab5('0x1e')]=_[_0x3ab5('0x1b')](_0x1812e6,_0x3ab5('0x18'));_0x1ddaa5[_0x3ab5('0x1f')]=_[_0x3ab5('0x20')](_0x2a1f2d['query']);_0x1ddaa5[_0x3ab5('0x21')]=_[_0x3ab5('0x22')](_0x1ddaa5['model'],_0x1ddaa5['query']);_0x460c10['attributes']=_['intersection'](_0x1ddaa5['model'],qs['fields'](_0x2a1f2d[_0x3ab5('0x1f')][_0x3ab5('0x23')]));_0x460c10[_0x3ab5('0x24')]=_0x460c10[_0x3ab5('0x24')][_0x3ab5('0x25')]?_0x460c10[_0x3ab5('0x24')]:_0x1ddaa5[_0x3ab5('0x1e')];if(!_0x2a1f2d[_0x3ab5('0x1f')]['hasOwnProperty'](_0x3ab5('0x26'))){_0x460c10[_0x3ab5('0x10')]=qs[_0x3ab5('0x10')](_0x2a1f2d[_0x3ab5('0x1f')][_0x3ab5('0x10')]);_0x460c10[_0x3ab5('0xf')]=qs[_0x3ab5('0xf')](_0x2a1f2d[_0x3ab5('0x1f')]['offset']);}_0x460c10[_0x3ab5('0x27')]=qs[_0x3ab5('0x28')](_0x2a1f2d[_0x3ab5('0x1f')][_0x3ab5('0x28')]);_0x460c10[_0x3ab5('0x29')]=qs['filters'](_[_0x3ab5('0x2a')](_0x2a1f2d['query'],_0x1ddaa5[_0x3ab5('0x21')]),_0x1812e6);if(_0x2a1f2d[_0x3ab5('0x1f')]['filter']){_0x460c10[_0x3ab5('0x29')]=_[_0x3ab5('0x2b')](_0x460c10[_0x3ab5('0x29')],{'$or':_[_0x3ab5('0x1b')](_0x1812e6,function(_0x53f4bd){if(_0x53f4bd[_0x3ab5('0x2c')]!==_0x3ab5('0x2d')){var _0x3678fb={};_0x3678fb[_0x53f4bd[_0x3ab5('0x18')]]={'$like':'%'+_0x2a1f2d[_0x3ab5('0x1f')][_0x3ab5('0x2e')]+'%'};return _0x3678fb;}})});}_0x460c10=_[_0x3ab5('0x2b')]({},_0x460c10,_0x2a1f2d['options']);var _0x133aa7={'where':_0x460c10[_0x3ab5('0x29')]};return db[_0x3ab5('0x1c')][_0x3ab5('0x12')](_0x133aa7)[_0x3ab5('0x15')](function(_0x1f7f48){_0x22ad5d[_0x3ab5('0x12')]=_0x1f7f48;if(_0x2a1f2d[_0x3ab5('0x1f')][_0x3ab5('0x2f')]){_0x460c10['include']=[{'all':!![]}];}return db[_0x3ab5('0x1c')][_0x3ab5('0x30')](_0x460c10);})[_0x3ab5('0x15')](function(_0x813e90){_0x22ad5d[_0x3ab5('0x31')]=_['map'](_0x813e90,function(_0x499fe4){if(_0x499fe4[_0x3ab5('0x32')]===_0x3ab5('0x33')){var _0xc64d1a=encryptor[_0x3ab5('0x34')](_0x499fe4[_0x3ab5('0x35')]);_0x499fe4[_0x3ab5('0x35')]=maskClientSecret(_0xc64d1a);}return _0x499fe4;});return _0x22ad5d;})['then'](respondWithFilteredResult(_0x1833f9,_0x460c10))[_0x3ab5('0x36')](handleError(_0x1833f9,null));};exports[_0x3ab5('0x37')]=function(_0x51e40b,_0xa02bc){var _0x3e915d={'raw':!![],'where':{'id':_0x51e40b[_0x3ab5('0x38')]['id']}},_0x36488b={};_0x36488b['model']=_[_0x3ab5('0x20')](db[_0x3ab5('0x1c')]['rawAttributes']);_0x36488b['query']=_[_0x3ab5('0x20')](_0x51e40b['query']);_0x36488b[_0x3ab5('0x21')]=_['intersection'](_0x36488b[_0x3ab5('0x1e')],_0x36488b[_0x3ab5('0x1f')]);_0x3e915d['attributes']=_[_0x3ab5('0x22')](_0x36488b[_0x3ab5('0x1e')],qs[_0x3ab5('0x23')](_0x51e40b['query']['fields']));_0x3e915d[_0x3ab5('0x24')]=_0x3e915d[_0x3ab5('0x24')][_0x3ab5('0x25')]?_0x3e915d[_0x3ab5('0x24')]:_0x36488b['model'];if(_0x51e40b['query'][_0x3ab5('0x2f')]){_0x3e915d[_0x3ab5('0x39')]=[{'all':!![]}];}_0x3e915d=_[_0x3ab5('0x2b')]({},_0x3e915d,_0x51e40b[_0x3ab5('0x3a')]);return db['CloudProvider'][_0x3ab5('0x3b')](_0x3e915d)['then'](handleEntityNotFound(_0xa02bc,null))[_0x3ab5('0x15')](function(_0x42c970){if(_0x42c970[_0x3ab5('0x32')]==='MicrosoftAzure'){var _0x14a272=encryptor[_0x3ab5('0x34')](_0x42c970['data3']);_0x42c970['data3']=maskClientSecret(_0x14a272);}return _0x42c970;})[_0x3ab5('0x15')](respondWithResult(_0xa02bc,null))[_0x3ab5('0x36')](handleError(_0xa02bc,null));};exports[_0x3ab5('0x3c')]=function(_0x8bdec7,_0x338715){if(!_0x8bdec7[_0x3ab5('0x3d')]['name'])throw new Error('Name\x20parameter\x20not\x20specified');if(!_0x8bdec7[_0x3ab5('0x3d')][_0x3ab5('0x32')])throw new Error('Service\x20parameter\x20not\x20specified');var _0x1c0f95=db[_0x3ab5('0x1c')]['rawAttributes']['service']['values'];if(!_0x1c0f95['includes'](_0x8bdec7[_0x3ab5('0x3d')][_0x3ab5('0x32')]))throw new Error(_0x3ab5('0x3e')+_0x1c0f95['join'](',\x20'));if(_0x8bdec7[_0x3ab5('0x3d')][_0x3ab5('0x32')]===_0x3ab5('0x33')&&_0x8bdec7['body']['data3']){_0x8bdec7[_0x3ab5('0x3d')][_0x3ab5('0x35')]=encryptor[_0x3ab5('0x3f')](_0x8bdec7[_0x3ab5('0x3d')][_0x3ab5('0x35')]);}return db['CloudProvider'][_0x3ab5('0x3c')](_0x8bdec7['body'],{})[_0x3ab5('0x15')](respondWithResult(_0x338715,0xc9))['catch'](handleError(_0x338715,null));};exports[_0x3ab5('0x40')]=function(_0x10adda,_0x533101){if(_0x10adda[_0x3ab5('0x3d')]['id']){delete _0x10adda[_0x3ab5('0x3d')]['id'];}return db['CloudProvider'][_0x3ab5('0x3b')]({'where':{'id':_0x10adda[_0x3ab5('0x38')]['id']}})['then'](handleEntityNotFound(_0x533101,null))[_0x3ab5('0x15')](function(_0x5d3524){if(_0x5d3524[_0x3ab5('0x32')]===_0x3ab5('0x33')&&_0x10adda[_0x3ab5('0x3d')]['data3']){_0x10adda['body'][_0x3ab5('0x35')]=encryptor['encryptString'](_0x10adda['body'][_0x3ab5('0x35')]);}return _0x5d3524;})[_0x3ab5('0x15')](saveUpdates(_0x10adda[_0x3ab5('0x3d')],null))['then'](respondWithResult(_0x533101,null))[_0x3ab5('0x36')](handleError(_0x533101,null));};exports[_0x3ab5('0x16')]=function(_0x436786,_0x47c2fa){return db[_0x3ab5('0x1c')][_0x3ab5('0x3b')]({'where':{'id':_0x436786['params']['id']}})['then'](handleEntityNotFound(_0x47c2fa,null))[_0x3ab5('0x15')](removeEntity(_0x47c2fa,null))[_0x3ab5('0x36')](handleError(_0x47c2fa,null));};exports[_0x3ab5('0x41')]=function(_0x82a785,_0x34d77e){return db[_0x3ab5('0x1c')][_0x3ab5('0x42')]({'where':{'id':_0x82a785[_0x3ab5('0x38')]['id']},'raw':!![]})[_0x3ab5('0x15')](function(_0x5f0132){if(!_0x5f0132)return _0x34d77e['sendStatus'](0x194);return{'url':oauth[_0x3ab5('0x43')](_0x5f0132,_0x82a785['user']['id'])};})[_0x3ab5('0x15')](respondWithResult(_0x34d77e,null))[_0x3ab5('0x36')](handleError(_0x34d77e,null));};exports[_0x3ab5('0x44')]=function(_0x413305,_0x45886a){var _0x3fea38=_0x413305['body'];var _0x4fd4fa;var _0x2e4309;if(_0x3fea38[_0x3ab5('0x45')])throw _0x3fea38;redis[_0x3ab5('0x46')](_0x3fea38[_0x3ab5('0x47')])[_0x3ab5('0x15')](function(_0xcb6b9){if(!_0xcb6b9)throw new Error('Invalid\x20state\x20parameter');_0x4fd4fa=JSON['parse'](_0xcb6b9);var _0xf03689=Buffer[_0x3ab5('0x48')](_0x3fea38[_0x3ab5('0x47')],_0x3ab5('0x49'))[_0x3ab5('0x4a')](_0x3ab5('0x4b'));_0x2e4309=JSON[_0x3ab5('0x4c')](_0xf03689);if(!oauth['isValidIdToken'](_0x3fea38['id_token'],_0x4fd4fa[_0x3ab5('0x4d')]))throw new Error('Unable\x20to\x20validate\x20id_token');redis[_0x3ab5('0x4e')](_0x3fea38['state']);return oauth[_0x3ab5('0x4f')](_0x3fea38[_0x3ab5('0x50')],_0x4fd4fa);})[_0x3ab5('0x15')](function(_0x30ff8c){_0x4fd4fa['data5']=_0x30ff8c['access_token'];_0x4fd4fa['data6']=_0x30ff8c[_0x3ab5('0x51')];return db[_0x3ab5('0x1c')][_0x3ab5('0x40')]({'data5':_0x4fd4fa['data5'],'data6':_0x4fd4fa[_0x3ab5('0x52')]},{'where':{'id':_0x4fd4fa['id']}});})[_0x3ab5('0x15')](function(){oauth[_0x3ab5('0x53')](_0x4fd4fa);socket['emit']('microsoftAuthorization:success',{'id':_0x2e4309['id']});return;})[_0x3ab5('0x15')](respondWithStatusCode(_0x45886a,null))['catch'](function(_0x53262a){if(_0x2e4309){socket[_0x3ab5('0x54')](_0x3ab5('0x55'),{'id':_0x2e4309['id']});}if(!_0x4fd4fa){logger[_0x3ab5('0x45')]('Invalid\x20authentication\x20state\x20parameter',_0x53262a);return _0x45886a[_0x3ab5('0xd')](0x1f4)['send'](_0x53262a[_0x3ab5('0x56')]);}logger[_0x3ab5('0x45')](_0x3ab5('0x57'),_0x4fd4fa['id'],JSON[_0x3ab5('0x58')](_0x53262a));});};
\ No newline at end of file
+var _0x4d34=['Invalid\x20authentication\x20state\x20parameter','message','Authentication\x20failed\x20for\x20cloud\x20provider\x20#%s,\x20err:%s','stringify','lodash','ioredis','../../components/parsers/qs','../../components/encryptor','../../config/environment','api','./cloudProvider.oauth','redis','localhost','socket.io-emitter','sendStatus','status','end','offset','undefined','limit','set','Content-Range','update','then','destroy','stack','name','send','padEnd','index','map','CloudProvider','rawAttributes','type','model','keys','query','filters','attributes','intersection','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','merge','filter','options','count','findAll','rows','service','data3','catch','show','params','includeAll','include','find','decryptString','body','Name\x20parameter\x20not\x20specified','Service\x20parameter\x20not\x20specified','values','includes','Invalid\x20service\x20parameter.\x20Allowed\x20values:\x20','MicrosoftAzure','encryptString','create','oauth2MicrosoftAuthorize','generateMicrosoftAuthorizationUrl','user','oauth2MicrosoftCallback','error','state','Invalid\x20state\x20parameter','from','base64','toString','ascii','parse','oauth2Claims','Unable\x20to\x20validate\x20id_token','del','code','data5','access_token','data6','refresh_token','startRefreshInterval','emit','microsoftAuthorization:success'];(function(_0x3142ce,_0xd0df8b){var _0x540eb1=function(_0x69dcf5){while(--_0x69dcf5){_0x3142ce['push'](_0x3142ce['shift']());}};_0x540eb1(++_0xd0df8b);}(_0x4d34,0x121));var _0x44d3=function(_0xf7366a,_0x5a7c7a){_0xf7366a=_0xf7366a-0x0;var _0x2c422c=_0x4d34[_0xf7366a];return _0x2c422c;};'use strict';var _=require(_0x44d3('0x0'));var Redis=require(_0x44d3('0x1'));var qs=require(_0x44d3('0x2'));var encryptor=require(_0x44d3('0x3'));var config=require(_0x44d3('0x4'));var logger=require('../../config/logger')(_0x44d3('0x5'));var db=require('../../mysqldb')['db'];var oauth=require(_0x44d3('0x6'));config['redis']=_['defaults'](config[_0x44d3('0x7')],{'host':_0x44d3('0x8'),'port':0x18eb});var socket=require(_0x44d3('0x9'))(new Redis(config[_0x44d3('0x7')]));var redis=new Redis(config[_0x44d3('0x7')]);function respondWithStatusCode(_0x3527a1,_0x11ed14){_0x11ed14=_0x11ed14||0xcc;return function(_0x44010b){if(_0x44010b){return _0x3527a1[_0x44d3('0xa')](_0x11ed14);}return _0x3527a1[_0x44d3('0xb')](_0x11ed14)[_0x44d3('0xc')]();};}function respondWithResult(_0x2a1dae,_0x30f020){_0x30f020=_0x30f020||0xc8;return function(_0x2fbf24){if(_0x2fbf24){return _0x2a1dae['status'](_0x30f020)['json'](_0x2fbf24);}};}function respondWithFilteredResult(_0xaff257,_0x2048f3){return function(_0x47d286){if(_0x47d286){var _0x13e039=typeof _0x2048f3[_0x44d3('0xd')]===_0x44d3('0xe')&&typeof _0x2048f3['limit']===_0x44d3('0xe');var _0x126a21=_0x47d286['count'];var _0x11c2eb=_0x13e039?0x0:_0x2048f3[_0x44d3('0xd')];var _0x4fd527=_0x13e039?_0x47d286['count']:_0x2048f3['offset']+_0x2048f3[_0x44d3('0xf')];var _0x550cb4;if(_0x4fd527>=_0x126a21){_0x4fd527=_0x126a21;_0x550cb4=0xc8;}else{_0x550cb4=0xce;}_0xaff257[_0x44d3('0xb')](_0x550cb4);return _0xaff257[_0x44d3('0x10')](_0x44d3('0x11'),_0x11c2eb+'-'+_0x4fd527+'/'+_0x126a21)['json'](_0x47d286);}return null;};}function saveUpdates(_0x4aa8d5){return function(_0xcf8d21){if(_0xcf8d21){return _0xcf8d21[_0x44d3('0x12')](_0x4aa8d5)[_0x44d3('0x13')](function(_0x5e6b4f){return _0x5e6b4f;});}return null;};}function removeEntity(_0x54c58f){return function(_0x12f261){if(_0x12f261){return _0x12f261[_0x44d3('0x14')]()[_0x44d3('0x13')](function(){_0x54c58f[_0x44d3('0xb')](0xcc)[_0x44d3('0xc')]();});}};}function handleEntityNotFound(_0x189c1c){return function(_0x2d6c06){if(!_0x2d6c06){_0x189c1c[_0x44d3('0xa')](0x194);}return _0x2d6c06;};}function handleError(_0x17ad6f,_0x271e56){_0x271e56=_0x271e56||0x1f4;return function(_0x5f0244){logger['error'](_0x5f0244[_0x44d3('0x15')]);if(_0x5f0244[_0x44d3('0x16')]){delete _0x5f0244[_0x44d3('0x16')];}_0x17ad6f['status'](_0x271e56)[_0x44d3('0x17')](_0x5f0244);};}function maskClientSecret(_0x4e2e89){return _[_0x44d3('0x18')](_0x4e2e89['slice'](0x0,0x3),0x14,'*');}exports[_0x44d3('0x19')]=function(_0x4db0c2,_0x39747d){var _0x53f34c={},_0x2f2258={},_0x254f0b={'count':0x0,'rows':[]};var _0x4181aa=_[_0x44d3('0x1a')](db[_0x44d3('0x1b')][_0x44d3('0x1c')],function(_0x1ae7aa){return{'name':_0x1ae7aa['fieldName'],'type':_0x1ae7aa[_0x44d3('0x1d')]['key']};});_0x2f2258[_0x44d3('0x1e')]=_['map'](_0x4181aa,_0x44d3('0x16'));_0x2f2258['query']=_[_0x44d3('0x1f')](_0x4db0c2[_0x44d3('0x20')]);_0x2f2258[_0x44d3('0x21')]=_['intersection'](_0x2f2258[_0x44d3('0x1e')],_0x2f2258[_0x44d3('0x20')]);_0x53f34c[_0x44d3('0x22')]=_[_0x44d3('0x23')](_0x2f2258[_0x44d3('0x1e')],qs[_0x44d3('0x24')](_0x4db0c2[_0x44d3('0x20')][_0x44d3('0x24')]));_0x53f34c[_0x44d3('0x22')]=_0x53f34c['attributes'][_0x44d3('0x25')]?_0x53f34c[_0x44d3('0x22')]:_0x2f2258['model'];if(!_0x4db0c2[_0x44d3('0x20')][_0x44d3('0x26')](_0x44d3('0x27'))){_0x53f34c[_0x44d3('0xf')]=qs['limit'](_0x4db0c2[_0x44d3('0x20')][_0x44d3('0xf')]);_0x53f34c[_0x44d3('0xd')]=qs[_0x44d3('0xd')](_0x4db0c2[_0x44d3('0x20')][_0x44d3('0xd')]);}_0x53f34c[_0x44d3('0x28')]=qs['sort'](_0x4db0c2['query'][_0x44d3('0x29')]);_0x53f34c[_0x44d3('0x2a')]=qs[_0x44d3('0x21')](_[_0x44d3('0x2b')](_0x4db0c2[_0x44d3('0x20')],_0x2f2258[_0x44d3('0x21')]),_0x4181aa);if(_0x4db0c2[_0x44d3('0x20')]['filter']){_0x53f34c[_0x44d3('0x2a')]=_[_0x44d3('0x2c')](_0x53f34c[_0x44d3('0x2a')],{'$or':_[_0x44d3('0x1a')](_0x4181aa,function(_0x198696){if(_0x198696[_0x44d3('0x1d')]!=='VIRTUAL'){var _0x564a69={};_0x564a69[_0x198696[_0x44d3('0x16')]]={'$like':'%'+_0x4db0c2[_0x44d3('0x20')][_0x44d3('0x2d')]+'%'};return _0x564a69;}})});}_0x53f34c=_[_0x44d3('0x2c')]({},_0x53f34c,_0x4db0c2[_0x44d3('0x2e')]);var _0x781d02={'where':_0x53f34c[_0x44d3('0x2a')]};return db[_0x44d3('0x1b')][_0x44d3('0x2f')](_0x781d02)[_0x44d3('0x13')](function(_0x16851a){_0x254f0b[_0x44d3('0x2f')]=_0x16851a;if(_0x4db0c2[_0x44d3('0x20')]['includeAll']){_0x53f34c['include']=[{'all':!![]}];}return db[_0x44d3('0x1b')][_0x44d3('0x30')](_0x53f34c);})['then'](function(_0x170b09){_0x254f0b[_0x44d3('0x31')]=_['map'](_0x170b09,function(_0x224bdf){if(_0x224bdf[_0x44d3('0x32')]==='MicrosoftAzure'){var _0x3bac2e=encryptor['decryptString'](_0x224bdf['data3']);_0x224bdf[_0x44d3('0x33')]=maskClientSecret(_0x3bac2e);}return _0x224bdf;});return _0x254f0b;})[_0x44d3('0x13')](respondWithFilteredResult(_0x39747d,_0x53f34c))[_0x44d3('0x34')](handleError(_0x39747d,null));};exports[_0x44d3('0x35')]=function(_0x320571,_0x58e9cd){var _0x57535c={'raw':!![],'where':{'id':_0x320571[_0x44d3('0x36')]['id']}},_0x357ca2={};_0x357ca2['model']=_[_0x44d3('0x1f')](db['CloudProvider'][_0x44d3('0x1c')]);_0x357ca2[_0x44d3('0x20')]=_[_0x44d3('0x1f')](_0x320571[_0x44d3('0x20')]);_0x357ca2[_0x44d3('0x21')]=_[_0x44d3('0x23')](_0x357ca2[_0x44d3('0x1e')],_0x357ca2[_0x44d3('0x20')]);_0x57535c['attributes']=_[_0x44d3('0x23')](_0x357ca2['model'],qs['fields'](_0x320571[_0x44d3('0x20')]['fields']));_0x57535c['attributes']=_0x57535c[_0x44d3('0x22')][_0x44d3('0x25')]?_0x57535c[_0x44d3('0x22')]:_0x357ca2[_0x44d3('0x1e')];if(_0x320571[_0x44d3('0x20')][_0x44d3('0x37')]){_0x57535c[_0x44d3('0x38')]=[{'all':!![]}];}_0x57535c=_['merge']({},_0x57535c,_0x320571['options']);return db['CloudProvider'][_0x44d3('0x39')](_0x57535c)[_0x44d3('0x13')](handleEntityNotFound(_0x58e9cd,null))[_0x44d3('0x13')](function(_0x4a76d8){if(_0x4a76d8[_0x44d3('0x32')]==='MicrosoftAzure'){var _0x3f2d7a=encryptor[_0x44d3('0x3a')](_0x4a76d8[_0x44d3('0x33')]);_0x4a76d8[_0x44d3('0x33')]=maskClientSecret(_0x3f2d7a);}return _0x4a76d8;})[_0x44d3('0x13')](respondWithResult(_0x58e9cd,null))[_0x44d3('0x34')](handleError(_0x58e9cd,null));};exports['create']=function(_0x55d6f5,_0x4d0c0f){if(!_0x55d6f5[_0x44d3('0x3b')][_0x44d3('0x16')])throw new Error(_0x44d3('0x3c'));if(!_0x55d6f5[_0x44d3('0x3b')][_0x44d3('0x32')])throw new Error(_0x44d3('0x3d'));var _0x4c31ed=db[_0x44d3('0x1b')][_0x44d3('0x1c')][_0x44d3('0x32')][_0x44d3('0x3e')];if(!_0x4c31ed[_0x44d3('0x3f')](_0x55d6f5['body']['service']))throw new Error(_0x44d3('0x40')+_0x4c31ed['join'](',\x20'));if(_0x55d6f5['body'][_0x44d3('0x32')]===_0x44d3('0x41')&&_0x55d6f5[_0x44d3('0x3b')][_0x44d3('0x33')]){_0x55d6f5[_0x44d3('0x3b')]['data3']=encryptor[_0x44d3('0x42')](_0x55d6f5['body'][_0x44d3('0x33')]);}return db[_0x44d3('0x1b')][_0x44d3('0x43')](_0x55d6f5[_0x44d3('0x3b')],{})['then'](respondWithResult(_0x4d0c0f,0xc9))[_0x44d3('0x34')](handleError(_0x4d0c0f,null));};exports['update']=function(_0x24896f,_0x323599){if(_0x24896f['body']['id']){delete _0x24896f[_0x44d3('0x3b')]['id'];}return db['CloudProvider'][_0x44d3('0x39')]({'where':{'id':_0x24896f['params']['id']}})[_0x44d3('0x13')](handleEntityNotFound(_0x323599,null))[_0x44d3('0x13')](function(_0x196af2){if(_0x196af2[_0x44d3('0x32')]===_0x44d3('0x41')&&_0x24896f['body'][_0x44d3('0x33')]){_0x24896f[_0x44d3('0x3b')][_0x44d3('0x33')]=encryptor[_0x44d3('0x42')](_0x24896f[_0x44d3('0x3b')][_0x44d3('0x33')]);}return _0x196af2;})[_0x44d3('0x13')](saveUpdates(_0x24896f['body'],null))['then'](respondWithResult(_0x323599,null))[_0x44d3('0x34')](handleError(_0x323599,null));};exports[_0x44d3('0x14')]=function(_0x3f7bc9,_0x48c364){return db[_0x44d3('0x1b')][_0x44d3('0x39')]({'where':{'id':_0x3f7bc9[_0x44d3('0x36')]['id']}})[_0x44d3('0x13')](handleEntityNotFound(_0x48c364,null))['then'](removeEntity(_0x48c364,null))['catch'](handleError(_0x48c364,null));};exports[_0x44d3('0x44')]=function(_0x632e78,_0x9a2e14){return db['CloudProvider']['findOne']({'where':{'id':_0x632e78[_0x44d3('0x36')]['id']},'raw':!![]})[_0x44d3('0x13')](function(_0x4a0434){if(!_0x4a0434)return _0x9a2e14[_0x44d3('0xa')](0x194);return{'url':oauth[_0x44d3('0x45')](_0x4a0434,_0x632e78[_0x44d3('0x46')]['id'])};})[_0x44d3('0x13')](respondWithResult(_0x9a2e14,null))[_0x44d3('0x34')](handleError(_0x9a2e14,null));};exports[_0x44d3('0x47')]=function(_0x4ec5cf,_0x2ef5e7){var _0x37d1ba=_0x4ec5cf[_0x44d3('0x3b')];var _0x5c570d;var _0x25b881;if(_0x37d1ba[_0x44d3('0x48')])throw _0x37d1ba;redis['get'](_0x37d1ba[_0x44d3('0x49')])[_0x44d3('0x13')](function(_0x403803){if(!_0x403803)throw new Error(_0x44d3('0x4a'));_0x5c570d=JSON['parse'](_0x403803);var _0x59bcf5=Buffer[_0x44d3('0x4b')](_0x37d1ba[_0x44d3('0x49')],_0x44d3('0x4c'))[_0x44d3('0x4d')](_0x44d3('0x4e'));_0x25b881=JSON[_0x44d3('0x4f')](_0x59bcf5);if(!oauth['isValidIdToken'](_0x37d1ba['id_token'],_0x5c570d[_0x44d3('0x50')]))throw new Error(_0x44d3('0x51'));redis[_0x44d3('0x52')](_0x37d1ba['state']);return oauth['getOauth2MicrosoftAccessToken'](_0x37d1ba[_0x44d3('0x53')],_0x5c570d);})[_0x44d3('0x13')](function(_0x1ab7a){_0x5c570d[_0x44d3('0x54')]=_0x1ab7a[_0x44d3('0x55')];_0x5c570d[_0x44d3('0x56')]=_0x1ab7a[_0x44d3('0x57')];return db[_0x44d3('0x1b')][_0x44d3('0x12')]({'data5':_0x5c570d[_0x44d3('0x54')],'data6':_0x5c570d[_0x44d3('0x56')]},{'where':{'id':_0x5c570d['id']}});})[_0x44d3('0x13')](function(){oauth[_0x44d3('0x58')](_0x5c570d);socket[_0x44d3('0x59')](_0x44d3('0x5a'),{'id':_0x25b881['id']});return;})[_0x44d3('0x13')](respondWithStatusCode(_0x2ef5e7,null))['catch'](function(_0x3840b1){if(_0x25b881){socket[_0x44d3('0x59')]('microsoftAuthorization:error',{'id':_0x25b881['id']});}if(!_0x5c570d){logger[_0x44d3('0x48')](_0x44d3('0x5b'),_0x3840b1);return _0x2ef5e7[_0x44d3('0xb')](0x1f4)[_0x44d3('0x17')](_0x3840b1[_0x44d3('0x5c')]);}logger[_0x44d3('0x48')](_0x44d3('0x5d'),_0x5c570d['id'],JSON[_0x44d3('0x5e')](_0x3840b1));});};
\ No newline at end of file