Built motion from commit d1eab355.|2.6.28
[motion2.git] / server / api / cloudProvider / cloudProvider.controller.js
index 4aceb87..641c8ff 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x69a7=['base64','toString','isValidIdToken','id_token','del','getOauth2MicrosoftAccessToken','data5','access_token','data6','refresh_token','startRefreshInterval','emit','microsoftAuthorization:success','send','message','Authentication\x20failed\x20for\x20cloud\x20provider\x20#%s,\x20err:%s','lodash','../../config/environment','../../config/logger','api','./cloudProvider.oauth','defaults','redis','sendStatus','status','end','json','offset','undefined','limit','count','set','Content-Range','update','then','destroy','name','padEnd','slice','index','map','CloudProvider','rawAttributes','fieldName','type','model','keys','query','filters','intersection','attributes','fields','length','hasOwnProperty','order','where','pick','merge','VIRTUAL','filter','findAll','rows','MicrosoftAzure','decryptString','data3','catch','show','params','options','find','service','create','body','Name\x20parameter\x20not\x20specified','includes','Invalid\x20service\x20parameter.\x20Allowed\x20values:\x20','join','encryptString','oauth2MicrosoftAuthorize','findOne','generateMicrosoftAuthorizationUrl','user','oauth2MicrosoftCallback','error','state','parse','from'];(function(_0x21bf1f,_0x451580){var _0x2d2020=function(_0x46370f){while(--_0x46370f){_0x21bf1f['push'](_0x21bf1f['shift']());}};_0x2d2020(++_0x451580);}(_0x69a7,0x67));var _0x769a=function(_0x45aa72,_0x8af642){_0x45aa72=_0x45aa72-0x0;var _0x75adaa=_0x69a7[_0x45aa72];return _0x75adaa;};'use strict';var _=require(_0x769a('0x0'));var Redis=require('ioredis');var qs=require('../../components/parsers/qs');var encryptor=require('../../components/encryptor');var config=require(_0x769a('0x1'));var logger=require(_0x769a('0x2'))(_0x769a('0x3'));var db=require('../../mysqldb')['db'];var oauth=require(_0x769a('0x4'));config['redis']=_[_0x769a('0x5')](config[_0x769a('0x6')],{'host':'localhost','port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config['redis']));var redis=new Redis(config[_0x769a('0x6')]);function respondWithStatusCode(_0x462d2b,_0x303930){_0x303930=_0x303930||0xcc;return function(_0x86760d){if(_0x86760d){return _0x462d2b[_0x769a('0x7')](_0x303930);}return _0x462d2b[_0x769a('0x8')](_0x303930)[_0x769a('0x9')]();};}function respondWithResult(_0x21df77,_0x12530f){_0x12530f=_0x12530f||0xc8;return function(_0x2c8744){if(_0x2c8744){return _0x21df77['status'](_0x12530f)[_0x769a('0xa')](_0x2c8744);}};}function respondWithFilteredResult(_0x118297,_0x4e7223){return function(_0x449feb){if(_0x449feb){var _0x1f5444=typeof _0x4e7223[_0x769a('0xb')]===_0x769a('0xc')&&typeof _0x4e7223[_0x769a('0xd')]===_0x769a('0xc');var _0x4c8b90=_0x449feb[_0x769a('0xe')];var _0x31287d=_0x1f5444?0x0:_0x4e7223['offset'];var _0x475483=_0x1f5444?_0x449feb[_0x769a('0xe')]:_0x4e7223[_0x769a('0xb')]+_0x4e7223[_0x769a('0xd')];var _0x34dab5;if(_0x475483>=_0x4c8b90){_0x475483=_0x4c8b90;_0x34dab5=0xc8;}else{_0x34dab5=0xce;}_0x118297[_0x769a('0x8')](_0x34dab5);return _0x118297[_0x769a('0xf')](_0x769a('0x10'),_0x31287d+'-'+_0x475483+'/'+_0x4c8b90)[_0x769a('0xa')](_0x449feb);}return null;};}function saveUpdates(_0x5e924b){return function(_0x549d15){if(_0x549d15){return _0x549d15[_0x769a('0x11')](_0x5e924b)[_0x769a('0x12')](function(_0x15bc1c){return _0x15bc1c;});}return null;};}function removeEntity(_0x528b09){return function(_0x13c319){if(_0x13c319){return _0x13c319[_0x769a('0x13')]()[_0x769a('0x12')](function(){_0x528b09['status'](0xcc)[_0x769a('0x9')]();});}};}function handleEntityNotFound(_0x54a2b0){return function(_0x5a291c){if(!_0x5a291c){_0x54a2b0[_0x769a('0x7')](0x194);}return _0x5a291c;};}function handleError(_0x3619a7,_0x5348f5){_0x5348f5=_0x5348f5||0x1f4;return function(_0x3fe62c){logger['error'](_0x3fe62c['stack']);if(_0x3fe62c[_0x769a('0x14')]){delete _0x3fe62c[_0x769a('0x14')];}_0x3619a7['status'](_0x5348f5)['send'](_0x3fe62c);};}function maskClientSecret(_0x3534b5){return _[_0x769a('0x15')](_0x3534b5[_0x769a('0x16')](0x0,0x3),0x14,'*');}exports[_0x769a('0x17')]=function(_0x29812e,_0x530ed7){var _0x324f18={},_0x74a5c1={},_0x27f5cf={'count':0x0,'rows':[]};var _0x228b7f=_[_0x769a('0x18')](db[_0x769a('0x19')][_0x769a('0x1a')],function(_0x24856c){return{'name':_0x24856c[_0x769a('0x1b')],'type':_0x24856c[_0x769a('0x1c')]['key']};});_0x74a5c1[_0x769a('0x1d')]=_[_0x769a('0x18')](_0x228b7f,_0x769a('0x14'));_0x74a5c1['query']=_[_0x769a('0x1e')](_0x29812e[_0x769a('0x1f')]);_0x74a5c1[_0x769a('0x20')]=_[_0x769a('0x21')](_0x74a5c1['model'],_0x74a5c1['query']);_0x324f18[_0x769a('0x22')]=_[_0x769a('0x21')](_0x74a5c1[_0x769a('0x1d')],qs[_0x769a('0x23')](_0x29812e['query'][_0x769a('0x23')]));_0x324f18[_0x769a('0x22')]=_0x324f18[_0x769a('0x22')][_0x769a('0x24')]?_0x324f18[_0x769a('0x22')]:_0x74a5c1[_0x769a('0x1d')];if(!_0x29812e[_0x769a('0x1f')][_0x769a('0x25')]('nolimit')){_0x324f18[_0x769a('0xd')]=qs['limit'](_0x29812e[_0x769a('0x1f')][_0x769a('0xd')]);_0x324f18[_0x769a('0xb')]=qs[_0x769a('0xb')](_0x29812e['query'][_0x769a('0xb')]);}_0x324f18[_0x769a('0x26')]=qs['sort'](_0x29812e[_0x769a('0x1f')]['sort']);_0x324f18[_0x769a('0x27')]=qs[_0x769a('0x20')](_[_0x769a('0x28')](_0x29812e['query'],_0x74a5c1[_0x769a('0x20')]),_0x228b7f);if(_0x29812e['query']['filter']){_0x324f18['where']=_[_0x769a('0x29')](_0x324f18[_0x769a('0x27')],{'$or':_[_0x769a('0x18')](_0x228b7f,function(_0x457dec){if(_0x457dec[_0x769a('0x1c')]!==_0x769a('0x2a')){var _0x154c3a={};_0x154c3a[_0x457dec[_0x769a('0x14')]]={'$like':'%'+_0x29812e[_0x769a('0x1f')][_0x769a('0x2b')]+'%'};return _0x154c3a;}})});}_0x324f18=_[_0x769a('0x29')]({},_0x324f18,_0x29812e['options']);var _0x400465={'where':_0x324f18[_0x769a('0x27')]};return db[_0x769a('0x19')][_0x769a('0xe')](_0x400465)[_0x769a('0x12')](function(_0x2cf8de){_0x27f5cf['count']=_0x2cf8de;if(_0x29812e[_0x769a('0x1f')]['includeAll']){_0x324f18['include']=[{'all':!![]}];}return db[_0x769a('0x19')][_0x769a('0x2c')](_0x324f18);})['then'](function(_0xc59096){_0x27f5cf[_0x769a('0x2d')]=_[_0x769a('0x18')](_0xc59096,function(_0x791b56){if(_0x791b56['service']===_0x769a('0x2e')){var _0x534bf5=encryptor[_0x769a('0x2f')](_0x791b56[_0x769a('0x30')]);_0x791b56['data3']=maskClientSecret(_0x534bf5);}return _0x791b56;});return _0x27f5cf;})['then'](respondWithFilteredResult(_0x530ed7,_0x324f18))[_0x769a('0x31')](handleError(_0x530ed7,null));};exports[_0x769a('0x32')]=function(_0x461d96,_0x302730){var _0x28c9e4={'raw':!![],'where':{'id':_0x461d96[_0x769a('0x33')]['id']}},_0x2eb57a={};_0x2eb57a[_0x769a('0x1d')]=_['keys'](db[_0x769a('0x19')][_0x769a('0x1a')]);_0x2eb57a[_0x769a('0x1f')]=_[_0x769a('0x1e')](_0x461d96[_0x769a('0x1f')]);_0x2eb57a['filters']=_['intersection'](_0x2eb57a[_0x769a('0x1d')],_0x2eb57a[_0x769a('0x1f')]);_0x28c9e4[_0x769a('0x22')]=_[_0x769a('0x21')](_0x2eb57a['model'],qs['fields'](_0x461d96[_0x769a('0x1f')][_0x769a('0x23')]));_0x28c9e4['attributes']=_0x28c9e4[_0x769a('0x22')][_0x769a('0x24')]?_0x28c9e4[_0x769a('0x22')]:_0x2eb57a[_0x769a('0x1d')];if(_0x461d96[_0x769a('0x1f')]['includeAll']){_0x28c9e4['include']=[{'all':!![]}];}_0x28c9e4=_[_0x769a('0x29')]({},_0x28c9e4,_0x461d96[_0x769a('0x34')]);return db['CloudProvider'][_0x769a('0x35')](_0x28c9e4)[_0x769a('0x12')](handleEntityNotFound(_0x302730,null))[_0x769a('0x12')](function(_0x310b71){if(_0x310b71[_0x769a('0x36')]==='MicrosoftAzure'){var _0x54d012=encryptor[_0x769a('0x2f')](_0x310b71[_0x769a('0x30')]);_0x310b71[_0x769a('0x30')]=maskClientSecret(_0x54d012);}return _0x310b71;})[_0x769a('0x12')](respondWithResult(_0x302730,null))['catch'](handleError(_0x302730,null));};exports[_0x769a('0x37')]=function(_0x447efe,_0x288685){if(!_0x447efe[_0x769a('0x38')][_0x769a('0x14')])throw new Error(_0x769a('0x39'));if(!_0x447efe[_0x769a('0x38')][_0x769a('0x36')])throw new Error('Service\x20parameter\x20not\x20specified');var _0x543d17=db['CloudProvider'][_0x769a('0x1a')][_0x769a('0x36')]['values'];if(!_0x543d17[_0x769a('0x3a')](_0x447efe['body'][_0x769a('0x36')]))throw new Error(_0x769a('0x3b')+_0x543d17[_0x769a('0x3c')](',\x20'));if(_0x447efe[_0x769a('0x38')]['service']===_0x769a('0x2e')&&_0x447efe[_0x769a('0x38')][_0x769a('0x30')]){_0x447efe[_0x769a('0x38')][_0x769a('0x30')]=encryptor[_0x769a('0x3d')](_0x447efe[_0x769a('0x38')][_0x769a('0x30')]);}return db[_0x769a('0x19')][_0x769a('0x37')](_0x447efe[_0x769a('0x38')],{})[_0x769a('0x12')](respondWithResult(_0x288685,0xc9))['catch'](handleError(_0x288685,null));};exports[_0x769a('0x11')]=function(_0xe2b731,_0x2437db){if(_0xe2b731['body']['id']){delete _0xe2b731['body']['id'];}return db[_0x769a('0x19')][_0x769a('0x35')]({'where':{'id':_0xe2b731[_0x769a('0x33')]['id']}})['then'](handleEntityNotFound(_0x2437db,null))[_0x769a('0x12')](function(_0x3c929d){if(_0x3c929d[_0x769a('0x36')]===_0x769a('0x2e')&&_0xe2b731[_0x769a('0x38')][_0x769a('0x30')]){_0xe2b731[_0x769a('0x38')][_0x769a('0x30')]=encryptor[_0x769a('0x3d')](_0xe2b731[_0x769a('0x38')][_0x769a('0x30')]);}return _0x3c929d;})[_0x769a('0x12')](saveUpdates(_0xe2b731[_0x769a('0x38')],null))[_0x769a('0x12')](respondWithResult(_0x2437db,null))[_0x769a('0x31')](handleError(_0x2437db,null));};exports[_0x769a('0x13')]=function(_0xf6be0d,_0x1670b9){return db['CloudProvider'][_0x769a('0x35')]({'where':{'id':_0xf6be0d[_0x769a('0x33')]['id']}})[_0x769a('0x12')](handleEntityNotFound(_0x1670b9,null))[_0x769a('0x12')](removeEntity(_0x1670b9,null))[_0x769a('0x31')](handleError(_0x1670b9,null));};exports[_0x769a('0x3e')]=function(_0x1575c3,_0x4e6949){return db[_0x769a('0x19')][_0x769a('0x3f')]({'where':{'id':_0x1575c3[_0x769a('0x33')]['id']},'raw':!![]})['then'](function(_0x574f15){if(!_0x574f15)return _0x4e6949[_0x769a('0x7')](0x194);return{'url':oauth[_0x769a('0x40')](_0x574f15,_0x1575c3[_0x769a('0x41')]['id'])};})[_0x769a('0x12')](respondWithResult(_0x4e6949,null))['catch'](handleError(_0x4e6949,null));};exports[_0x769a('0x42')]=function(_0x4711ef,_0x728717){var _0x197e8f=_0x4711ef[_0x769a('0x38')];var _0x54779f;var _0x2fa765;if(_0x197e8f[_0x769a('0x43')])throw _0x197e8f;redis['get'](_0x197e8f[_0x769a('0x44')])[_0x769a('0x12')](function(_0xf7aae9){if(!_0xf7aae9)throw new Error('Invalid\x20state\x20parameter');_0x54779f=JSON[_0x769a('0x45')](_0xf7aae9);var _0x217de5=Buffer[_0x769a('0x46')](_0x197e8f['state'],_0x769a('0x47'))[_0x769a('0x48')]('ascii');_0x2fa765=JSON[_0x769a('0x45')](_0x217de5);if(!oauth[_0x769a('0x49')](_0x197e8f[_0x769a('0x4a')],_0x54779f['oauth2Claims']))throw new Error('Unable\x20to\x20validate\x20id_token');redis[_0x769a('0x4b')](_0x197e8f[_0x769a('0x44')]);return oauth[_0x769a('0x4c')](_0x197e8f['code'],_0x54779f);})[_0x769a('0x12')](function(_0x2a5445){_0x54779f[_0x769a('0x4d')]=_0x2a5445[_0x769a('0x4e')];_0x54779f[_0x769a('0x4f')]=_0x2a5445[_0x769a('0x50')];return db[_0x769a('0x19')]['update']({'data5':_0x54779f[_0x769a('0x4d')],'data6':_0x54779f['data6']},{'where':{'id':_0x54779f['id']}});})['then'](function(){oauth[_0x769a('0x51')](_0x54779f);socket[_0x769a('0x52')](_0x769a('0x53'),{'id':_0x2fa765['id']});return;})[_0x769a('0x12')](respondWithStatusCode(_0x728717,null))[_0x769a('0x31')](function(_0xabd27f){if(_0x2fa765){socket[_0x769a('0x52')]('microsoftAuthorization:error',{'id':_0x2fa765['id']});}if(!_0x54779f){logger[_0x769a('0x43')]('Invalid\x20authentication\x20state\x20parameter',_0xabd27f);return _0x728717[_0x769a('0x8')](0x1f4)[_0x769a('0x54')](_0xabd27f[_0x769a('0x55')]);}logger[_0x769a('0x43')](_0x769a('0x56'),_0x54779f['id'],JSON['stringify'](_0xabd27f));});};
\ No newline at end of file
+var _0x283d=['fields','hasOwnProperty','nolimit','sort','where','pick','filter','merge','VIRTUAL','options','findAll','service','data3','catch','length','includeAll','include','find','MicrosoftAzure','decryptString','create','body','Name\x20parameter\x20not\x20specified','rawAttributes','values','includes','encryptString','update','params','oauth2MicrosoftAuthorize','findOne','user','error','get','Invalid\x20state\x20parameter','parse','from','state','base64','toString','ascii','id_token','oauth2Claims','Unable\x20to\x20validate\x20id_token','del','getOauth2MicrosoftAccessToken','code','access_token','data6','refresh_token','data5','microsoftAuthorization:success','emit','microsoftAuthorization:error','Invalid\x20authentication\x20state\x20parameter','message','Authentication\x20failed\x20for\x20cloud\x20provider\x20#%s,\x20err:%s','stringify','../../config/environment','api','redis','socket.io-emitter','sendStatus','status','offset','undefined','count','limit','set','json','destroy','then','end','stack','name','send','padEnd','slice','index','map','CloudProvider','fieldName','type','key','model','query','keys','filters','intersection','attributes'];(function(_0x1a7846,_0x59723e){var _0x48049=function(_0x203ff6){while(--_0x203ff6){_0x1a7846['push'](_0x1a7846['shift']());}};_0x48049(++_0x59723e);}(_0x283d,0xee));var _0xd283=function(_0x51cd4b,_0x39f2d4){_0x51cd4b=_0x51cd4b-0x0;var _0x22f671=_0x283d[_0x51cd4b];return _0x22f671;};'use strict';var _=require('lodash');var Redis=require('ioredis');var qs=require('../../components/parsers/qs');var encryptor=require('../../components/encryptor');var config=require(_0xd283('0x0'));var logger=require('../../config/logger')(_0xd283('0x1'));var db=require('../../mysqldb')['db'];var oauth=require('./cloudProvider.oauth');config[_0xd283('0x2')]=_['defaults'](config['redis'],{'host':'localhost','port':0x18eb});var socket=require(_0xd283('0x3'))(new Redis(config[_0xd283('0x2')]));var redis=new Redis(config[_0xd283('0x2')]);function respondWithStatusCode(_0x1339f2,_0x56b899){_0x56b899=_0x56b899||0xcc;return function(_0x1a58f5){if(_0x1a58f5){return _0x1339f2[_0xd283('0x4')](_0x56b899);}return _0x1339f2[_0xd283('0x5')](_0x56b899)['end']();};}function respondWithResult(_0x362d82,_0x266945){_0x266945=_0x266945||0xc8;return function(_0x493730){if(_0x493730){return _0x362d82[_0xd283('0x5')](_0x266945)['json'](_0x493730);}};}function respondWithFilteredResult(_0x29d02e,_0x56b955){return function(_0x269f64){if(_0x269f64){var _0x36ac07=typeof _0x56b955[_0xd283('0x6')]===_0xd283('0x7')&&typeof _0x56b955['limit']==='undefined';var _0x26bd60=_0x269f64[_0xd283('0x8')];var _0x24b4f2=_0x36ac07?0x0:_0x56b955[_0xd283('0x6')];var _0x534de5=_0x36ac07?_0x269f64['count']:_0x56b955[_0xd283('0x6')]+_0x56b955[_0xd283('0x9')];var _0x2f9c90;if(_0x534de5>=_0x26bd60){_0x534de5=_0x26bd60;_0x2f9c90=0xc8;}else{_0x2f9c90=0xce;}_0x29d02e['status'](_0x2f9c90);return _0x29d02e[_0xd283('0xa')]('Content-Range',_0x24b4f2+'-'+_0x534de5+'/'+_0x26bd60)[_0xd283('0xb')](_0x269f64);}return null;};}function saveUpdates(_0x5c9fc2){return function(_0x3a7f3d){if(_0x3a7f3d){return _0x3a7f3d['update'](_0x5c9fc2)['then'](function(_0x9f40d3){return _0x9f40d3;});}return null;};}function removeEntity(_0x3524b1){return function(_0x159aa4){if(_0x159aa4){return _0x159aa4[_0xd283('0xc')]()[_0xd283('0xd')](function(){_0x3524b1[_0xd283('0x5')](0xcc)[_0xd283('0xe')]();});}};}function handleEntityNotFound(_0x3934c9){return function(_0x23b2df){if(!_0x23b2df){_0x3934c9[_0xd283('0x4')](0x194);}return _0x23b2df;};}function handleError(_0x3a3afc,_0x561b36){_0x561b36=_0x561b36||0x1f4;return function(_0x58d7eb){logger['error'](_0x58d7eb[_0xd283('0xf')]);if(_0x58d7eb[_0xd283('0x10')]){delete _0x58d7eb[_0xd283('0x10')];}_0x3a3afc[_0xd283('0x5')](_0x561b36)[_0xd283('0x11')](_0x58d7eb);};}function maskClientSecret(_0x2c94a7){return _[_0xd283('0x12')](_0x2c94a7[_0xd283('0x13')](0x0,0x3),0x14,'*');}exports[_0xd283('0x14')]=function(_0x2f7e97,_0x27e137){var _0x4f0785={},_0x34103a={},_0x4c04fe={'count':0x0,'rows':[]};var _0x540f02=_[_0xd283('0x15')](db[_0xd283('0x16')]['rawAttributes'],function(_0x480353){return{'name':_0x480353[_0xd283('0x17')],'type':_0x480353[_0xd283('0x18')][_0xd283('0x19')]};});_0x34103a[_0xd283('0x1a')]=_[_0xd283('0x15')](_0x540f02,_0xd283('0x10'));_0x34103a[_0xd283('0x1b')]=_[_0xd283('0x1c')](_0x2f7e97['query']);_0x34103a[_0xd283('0x1d')]=_[_0xd283('0x1e')](_0x34103a['model'],_0x34103a[_0xd283('0x1b')]);_0x4f0785[_0xd283('0x1f')]=_[_0xd283('0x1e')](_0x34103a[_0xd283('0x1a')],qs[_0xd283('0x20')](_0x2f7e97[_0xd283('0x1b')][_0xd283('0x20')]));_0x4f0785[_0xd283('0x1f')]=_0x4f0785['attributes']['length']?_0x4f0785[_0xd283('0x1f')]:_0x34103a[_0xd283('0x1a')];if(!_0x2f7e97[_0xd283('0x1b')][_0xd283('0x21')](_0xd283('0x22'))){_0x4f0785[_0xd283('0x9')]=qs['limit'](_0x2f7e97[_0xd283('0x1b')][_0xd283('0x9')]);_0x4f0785[_0xd283('0x6')]=qs[_0xd283('0x6')](_0x2f7e97[_0xd283('0x1b')]['offset']);}_0x4f0785['order']=qs['sort'](_0x2f7e97[_0xd283('0x1b')][_0xd283('0x23')]);_0x4f0785[_0xd283('0x24')]=qs[_0xd283('0x1d')](_[_0xd283('0x25')](_0x2f7e97[_0xd283('0x1b')],_0x34103a[_0xd283('0x1d')]),_0x540f02);if(_0x2f7e97[_0xd283('0x1b')][_0xd283('0x26')]){_0x4f0785[_0xd283('0x24')]=_[_0xd283('0x27')](_0x4f0785[_0xd283('0x24')],{'$or':_['map'](_0x540f02,function(_0x2eb9d9){if(_0x2eb9d9[_0xd283('0x18')]!==_0xd283('0x28')){var _0x853699={};_0x853699[_0x2eb9d9[_0xd283('0x10')]]={'$like':'%'+_0x2f7e97['query'][_0xd283('0x26')]+'%'};return _0x853699;}})});}_0x4f0785=_[_0xd283('0x27')]({},_0x4f0785,_0x2f7e97[_0xd283('0x29')]);var _0xcda58={'where':_0x4f0785[_0xd283('0x24')]};return db[_0xd283('0x16')][_0xd283('0x8')](_0xcda58)[_0xd283('0xd')](function(_0x8c5fee){_0x4c04fe[_0xd283('0x8')]=_0x8c5fee;if(_0x2f7e97[_0xd283('0x1b')]['includeAll']){_0x4f0785['include']=[{'all':!![]}];}return db['CloudProvider'][_0xd283('0x2a')](_0x4f0785);})[_0xd283('0xd')](function(_0xd5edd0){_0x4c04fe['rows']=_[_0xd283('0x15')](_0xd5edd0,function(_0x2be5e8){if(_0x2be5e8[_0xd283('0x2b')]==='MicrosoftAzure'){var _0x1685d7=encryptor['decryptString'](_0x2be5e8[_0xd283('0x2c')]);_0x2be5e8['data3']=maskClientSecret(_0x1685d7);}return _0x2be5e8;});return _0x4c04fe;})[_0xd283('0xd')](respondWithFilteredResult(_0x27e137,_0x4f0785))[_0xd283('0x2d')](handleError(_0x27e137,null));};exports['show']=function(_0x39c452,_0xce180){var _0x5ba5b8={'raw':!![],'where':{'id':_0x39c452['params']['id']}},_0x10de60={};_0x10de60[_0xd283('0x1a')]=_['keys'](db[_0xd283('0x16')]['rawAttributes']);_0x10de60[_0xd283('0x1b')]=_[_0xd283('0x1c')](_0x39c452['query']);_0x10de60['filters']=_['intersection'](_0x10de60[_0xd283('0x1a')],_0x10de60['query']);_0x5ba5b8[_0xd283('0x1f')]=_[_0xd283('0x1e')](_0x10de60[_0xd283('0x1a')],qs[_0xd283('0x20')](_0x39c452[_0xd283('0x1b')][_0xd283('0x20')]));_0x5ba5b8[_0xd283('0x1f')]=_0x5ba5b8['attributes'][_0xd283('0x2e')]?_0x5ba5b8[_0xd283('0x1f')]:_0x10de60[_0xd283('0x1a')];if(_0x39c452['query'][_0xd283('0x2f')]){_0x5ba5b8[_0xd283('0x30')]=[{'all':!![]}];}_0x5ba5b8=_['merge']({},_0x5ba5b8,_0x39c452[_0xd283('0x29')]);return db[_0xd283('0x16')][_0xd283('0x31')](_0x5ba5b8)['then'](handleEntityNotFound(_0xce180,null))['then'](function(_0x2ca531){if(_0x2ca531[_0xd283('0x2b')]===_0xd283('0x32')){var _0x3f0cbb=encryptor[_0xd283('0x33')](_0x2ca531[_0xd283('0x2c')]);_0x2ca531[_0xd283('0x2c')]=maskClientSecret(_0x3f0cbb);}return _0x2ca531;})['then'](respondWithResult(_0xce180,null))[_0xd283('0x2d')](handleError(_0xce180,null));};exports[_0xd283('0x34')]=function(_0xa253bf,_0x10235d){if(!_0xa253bf[_0xd283('0x35')]['name'])throw new Error(_0xd283('0x36'));if(!_0xa253bf[_0xd283('0x35')]['service'])throw new Error('Service\x20parameter\x20not\x20specified');var _0x3e963d=db[_0xd283('0x16')][_0xd283('0x37')][_0xd283('0x2b')][_0xd283('0x38')];if(!_0x3e963d[_0xd283('0x39')](_0xa253bf[_0xd283('0x35')][_0xd283('0x2b')]))throw new Error('Invalid\x20service\x20parameter.\x20Allowed\x20values:\x20'+_0x3e963d['join'](',\x20'));if(_0xa253bf[_0xd283('0x35')][_0xd283('0x2b')]==='MicrosoftAzure'&&_0xa253bf[_0xd283('0x35')][_0xd283('0x2c')]){_0xa253bf[_0xd283('0x35')][_0xd283('0x2c')]=encryptor[_0xd283('0x3a')](_0xa253bf['body'][_0xd283('0x2c')]);}return db[_0xd283('0x16')][_0xd283('0x34')](_0xa253bf[_0xd283('0x35')],{})[_0xd283('0xd')](respondWithResult(_0x10235d,0xc9))[_0xd283('0x2d')](handleError(_0x10235d,null));};exports[_0xd283('0x3b')]=function(_0x301f60,_0x55c69f){if(_0x301f60[_0xd283('0x35')]['id']){delete _0x301f60['body']['id'];}return db[_0xd283('0x16')][_0xd283('0x31')]({'where':{'id':_0x301f60[_0xd283('0x3c')]['id']}})[_0xd283('0xd')](handleEntityNotFound(_0x55c69f,null))[_0xd283('0xd')](function(_0x333b6a){if(_0x333b6a['service']===_0xd283('0x32')&&_0x301f60[_0xd283('0x35')]['data3']){_0x301f60['body'][_0xd283('0x2c')]=encryptor[_0xd283('0x3a')](_0x301f60[_0xd283('0x35')][_0xd283('0x2c')]);}return _0x333b6a;})[_0xd283('0xd')](saveUpdates(_0x301f60['body'],null))[_0xd283('0xd')](respondWithResult(_0x55c69f,null))[_0xd283('0x2d')](handleError(_0x55c69f,null));};exports['destroy']=function(_0x29c948,_0xa460ff){return db[_0xd283('0x16')][_0xd283('0x31')]({'where':{'id':_0x29c948[_0xd283('0x3c')]['id']}})[_0xd283('0xd')](handleEntityNotFound(_0xa460ff,null))[_0xd283('0xd')](removeEntity(_0xa460ff,null))[_0xd283('0x2d')](handleError(_0xa460ff,null));};exports[_0xd283('0x3d')]=function(_0x45c5cb,_0x5a213d){return db['CloudProvider'][_0xd283('0x3e')]({'where':{'id':_0x45c5cb['params']['id']},'raw':!![]})['then'](function(_0x48c3cc){if(!_0x48c3cc)return _0x5a213d['sendStatus'](0x194);return{'url':oauth['generateMicrosoftAuthorizationUrl'](_0x48c3cc,_0x45c5cb[_0xd283('0x3f')]['id'])};})['then'](respondWithResult(_0x5a213d,null))[_0xd283('0x2d')](handleError(_0x5a213d,null));};exports['oauth2MicrosoftCallback']=function(_0x390a85,_0x5c504f){var _0x138aaa=_0x390a85[_0xd283('0x35')];var _0x4e3f66;var _0x4ac6e3;if(_0x138aaa[_0xd283('0x40')])throw _0x138aaa;redis[_0xd283('0x41')](_0x138aaa['state'])[_0xd283('0xd')](function(_0x2b7675){if(!_0x2b7675)throw new Error(_0xd283('0x42'));_0x4e3f66=JSON[_0xd283('0x43')](_0x2b7675);var _0x52266f=Buffer[_0xd283('0x44')](_0x138aaa[_0xd283('0x45')],_0xd283('0x46'))[_0xd283('0x47')](_0xd283('0x48'));_0x4ac6e3=JSON['parse'](_0x52266f);if(!oauth['isValidIdToken'](_0x138aaa[_0xd283('0x49')],_0x4e3f66[_0xd283('0x4a')]))throw new Error(_0xd283('0x4b'));redis[_0xd283('0x4c')](_0x138aaa[_0xd283('0x45')]);return oauth[_0xd283('0x4d')](_0x138aaa[_0xd283('0x4e')],_0x4e3f66);})['then'](function(_0x13ac5a){_0x4e3f66['data5']=_0x13ac5a[_0xd283('0x4f')];_0x4e3f66[_0xd283('0x50')]=_0x13ac5a[_0xd283('0x51')];return db[_0xd283('0x16')][_0xd283('0x3b')]({'data5':_0x4e3f66[_0xd283('0x52')],'data6':_0x4e3f66['data6']},{'where':{'id':_0x4e3f66['id']}});})[_0xd283('0xd')](function(){oauth['startRefreshInterval'](_0x4e3f66);socket['emit'](_0xd283('0x53'),{'id':_0x4ac6e3['id']});return;})[_0xd283('0xd')](respondWithStatusCode(_0x5c504f,null))[_0xd283('0x2d')](function(_0x61d9ac){if(_0x4ac6e3){socket[_0xd283('0x54')](_0xd283('0x55'),{'id':_0x4ac6e3['id']});}if(!_0x4e3f66){logger[_0xd283('0x40')](_0xd283('0x56'),_0x61d9ac);return _0x5c504f['status'](0x1f4)[_0xd283('0x11')](_0x61d9ac[_0xd283('0x57')]);}logger[_0xd283('0x40')](_0xd283('0x58'),_0x4e3f66['id'],JSON[_0xd283('0x59')](_0x61d9ac));});};
\ No newline at end of file