Built motion from commit 1ea47bf4.|2.6.34
[motion2.git] / server / api / cloudProvider / cloudProvider.controller.js
index 660f1c9..5188fff 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0x9c59=['../../components/encryptor','../../config/logger','api','../../mysqldb','redis','localhost','socket.io-emitter','sendStatus','status','json','offset','undefined','limit','count','set','update','then','end','error','stack','name','send','padEnd','index','CloudProvider','fieldName','type','model','map','keys','query','filters','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','VIRTUAL','options','includeAll','include','findAll','service','MicrosoftAzure','data3','catch','show','params','rawAttributes','find','decryptString','create','body','Name\x20parameter\x20not\x20specified','values','includes','Invalid\x20service\x20parameter.\x20Allowed\x20values:\x20','join','encryptString','oauth2MicrosoftAuthorize','findOne','generateMicrosoftAuthorizationUrl','user','oauth2MicrosoftCallback','get','state','Invalid\x20state\x20parameter','parse','toString','isValidIdToken','id_token','Unable\x20to\x20validate\x20id_token','del','code','data5','access_token','data6','refresh_token','startRefreshInterval','emit','microsoftAuthorization:success','microsoftAuthorization:error','message','stringify','lodash','../../components/parsers/qs'];(function(_0x243b2f,_0x30aa15){var _0xcb3c2d=function(_0x213bb2){while(--_0x213bb2){_0x243b2f['push'](_0x243b2f['shift']());}};_0xcb3c2d(++_0x30aa15);}(_0x9c59,0x115));var _0x99c5=function(_0xe3e56a,_0xd3462d){_0xe3e56a=_0xe3e56a-0x0;var _0x5617f2=_0x9c59[_0xe3e56a];return _0x5617f2;};'use strict';var _=require(_0x99c5('0x0'));var Redis=require('ioredis');var qs=require(_0x99c5('0x1'));var encryptor=require(_0x99c5('0x2'));var config=require('../../config/environment');var logger=require(_0x99c5('0x3'))(_0x99c5('0x4'));var db=require(_0x99c5('0x5'))['db'];var oauth=require('./cloudProvider.oauth');config[_0x99c5('0x6')]=_['defaults'](config[_0x99c5('0x6')],{'host':_0x99c5('0x7'),'port':0x18eb});var socket=require(_0x99c5('0x8'))(new Redis(config['redis']));var redis=new Redis(config[_0x99c5('0x6')]);function respondWithStatusCode(_0x14358e,_0xd44207){_0xd44207=_0xd44207||0xcc;return function(_0x42c247){if(_0x42c247){return _0x14358e[_0x99c5('0x9')](_0xd44207);}return _0x14358e[_0x99c5('0xa')](_0xd44207)['end']();};}function respondWithResult(_0x28b684,_0x562839){_0x562839=_0x562839||0xc8;return function(_0x240210){if(_0x240210){return _0x28b684['status'](_0x562839)[_0x99c5('0xb')](_0x240210);}};}function respondWithFilteredResult(_0x54ae0a,_0x5f1861){return function(_0xa2ddb){if(_0xa2ddb){var _0x17eae1=typeof _0x5f1861[_0x99c5('0xc')]===_0x99c5('0xd')&&typeof _0x5f1861[_0x99c5('0xe')]==='undefined';var _0x48bad0=_0xa2ddb[_0x99c5('0xf')];var _0x52510b=_0x17eae1?0x0:_0x5f1861[_0x99c5('0xc')];var _0x41b68c=_0x17eae1?_0xa2ddb[_0x99c5('0xf')]:_0x5f1861['offset']+_0x5f1861[_0x99c5('0xe')];var _0x308d0a;if(_0x41b68c>=_0x48bad0){_0x41b68c=_0x48bad0;_0x308d0a=0xc8;}else{_0x308d0a=0xce;}_0x54ae0a[_0x99c5('0xa')](_0x308d0a);return _0x54ae0a[_0x99c5('0x10')]('Content-Range',_0x52510b+'-'+_0x41b68c+'/'+_0x48bad0)['json'](_0xa2ddb);}return null;};}function saveUpdates(_0x39bac1){return function(_0x51726f){if(_0x51726f){return _0x51726f[_0x99c5('0x11')](_0x39bac1)[_0x99c5('0x12')](function(_0x5e4f4f){return _0x5e4f4f;});}return null;};}function removeEntity(_0x4ea965){return function(_0x891141){if(_0x891141){return _0x891141['destroy']()[_0x99c5('0x12')](function(){_0x4ea965[_0x99c5('0xa')](0xcc)[_0x99c5('0x13')]();});}};}function handleEntityNotFound(_0x178bee){return function(_0x49ad00){if(!_0x49ad00){_0x178bee['sendStatus'](0x194);}return _0x49ad00;};}function handleError(_0x42098a,_0x39326b){_0x39326b=_0x39326b||0x1f4;return function(_0x24156a){logger[_0x99c5('0x14')](_0x24156a[_0x99c5('0x15')]);if(_0x24156a[_0x99c5('0x16')]){delete _0x24156a[_0x99c5('0x16')];}_0x42098a[_0x99c5('0xa')](_0x39326b)[_0x99c5('0x17')](_0x24156a);};}function maskClientSecret(_0x4794f9){return _[_0x99c5('0x18')](_0x4794f9['slice'](0x0,0x3),0x14,'*');}exports[_0x99c5('0x19')]=function(_0x206032,_0x1396e2){var _0x597b4a={},_0x4346c4={},_0x1ee82d={'count':0x0,'rows':[]};var _0x15d7a0=_['map'](db[_0x99c5('0x1a')]['rawAttributes'],function(_0x235483){return{'name':_0x235483[_0x99c5('0x1b')],'type':_0x235483[_0x99c5('0x1c')]['key']};});_0x4346c4[_0x99c5('0x1d')]=_[_0x99c5('0x1e')](_0x15d7a0,_0x99c5('0x16'));_0x4346c4['query']=_[_0x99c5('0x1f')](_0x206032[_0x99c5('0x20')]);_0x4346c4[_0x99c5('0x21')]=_[_0x99c5('0x22')](_0x4346c4[_0x99c5('0x1d')],_0x4346c4[_0x99c5('0x20')]);_0x597b4a[_0x99c5('0x23')]=_[_0x99c5('0x22')](_0x4346c4[_0x99c5('0x1d')],qs['fields'](_0x206032[_0x99c5('0x20')][_0x99c5('0x24')]));_0x597b4a[_0x99c5('0x23')]=_0x597b4a[_0x99c5('0x23')][_0x99c5('0x25')]?_0x597b4a[_0x99c5('0x23')]:_0x4346c4['model'];if(!_0x206032[_0x99c5('0x20')][_0x99c5('0x26')](_0x99c5('0x27'))){_0x597b4a['limit']=qs[_0x99c5('0xe')](_0x206032['query']['limit']);_0x597b4a['offset']=qs['offset'](_0x206032[_0x99c5('0x20')][_0x99c5('0xc')]);}_0x597b4a[_0x99c5('0x28')]=qs[_0x99c5('0x29')](_0x206032[_0x99c5('0x20')][_0x99c5('0x29')]);_0x597b4a[_0x99c5('0x2a')]=qs['filters'](_[_0x99c5('0x2b')](_0x206032[_0x99c5('0x20')],_0x4346c4['filters']),_0x15d7a0);if(_0x206032[_0x99c5('0x20')][_0x99c5('0x2c')]){_0x597b4a[_0x99c5('0x2a')]=_[_0x99c5('0x2d')](_0x597b4a['where'],{'$or':_[_0x99c5('0x1e')](_0x15d7a0,function(_0x3d1251){if(_0x3d1251['type']!==_0x99c5('0x2e')){var _0x490089={};_0x490089[_0x3d1251[_0x99c5('0x16')]]={'$like':'%'+_0x206032[_0x99c5('0x20')][_0x99c5('0x2c')]+'%'};return _0x490089;}})});}_0x597b4a=_[_0x99c5('0x2d')]({},_0x597b4a,_0x206032[_0x99c5('0x2f')]);var _0x3405a7={'where':_0x597b4a[_0x99c5('0x2a')]};return db[_0x99c5('0x1a')][_0x99c5('0xf')](_0x3405a7)['then'](function(_0x5e11fb){_0x1ee82d['count']=_0x5e11fb;if(_0x206032['query'][_0x99c5('0x30')]){_0x597b4a[_0x99c5('0x31')]=[{'all':!![]}];}return db[_0x99c5('0x1a')][_0x99c5('0x32')](_0x597b4a);})[_0x99c5('0x12')](function(_0x2fb05f){_0x1ee82d['rows']=_[_0x99c5('0x1e')](_0x2fb05f,function(_0x13f50e){if(_0x13f50e[_0x99c5('0x33')]===_0x99c5('0x34')){var _0x2be319=encryptor['decryptString'](_0x13f50e[_0x99c5('0x35')]);_0x13f50e['data3']=maskClientSecret(_0x2be319);}return _0x13f50e;});return _0x1ee82d;})[_0x99c5('0x12')](respondWithFilteredResult(_0x1396e2,_0x597b4a))[_0x99c5('0x36')](handleError(_0x1396e2,null));};exports[_0x99c5('0x37')]=function(_0x371e21,_0x16c02b){var _0x348f9a={'raw':!![],'where':{'id':_0x371e21[_0x99c5('0x38')]['id']}},_0x549ac7={};_0x549ac7['model']=_[_0x99c5('0x1f')](db['CloudProvider'][_0x99c5('0x39')]);_0x549ac7[_0x99c5('0x20')]=_[_0x99c5('0x1f')](_0x371e21[_0x99c5('0x20')]);_0x549ac7[_0x99c5('0x21')]=_[_0x99c5('0x22')](_0x549ac7[_0x99c5('0x1d')],_0x549ac7[_0x99c5('0x20')]);_0x348f9a[_0x99c5('0x23')]=_['intersection'](_0x549ac7[_0x99c5('0x1d')],qs[_0x99c5('0x24')](_0x371e21[_0x99c5('0x20')][_0x99c5('0x24')]));_0x348f9a['attributes']=_0x348f9a['attributes'][_0x99c5('0x25')]?_0x348f9a[_0x99c5('0x23')]:_0x549ac7[_0x99c5('0x1d')];if(_0x371e21[_0x99c5('0x20')][_0x99c5('0x30')]){_0x348f9a['include']=[{'all':!![]}];}_0x348f9a=_['merge']({},_0x348f9a,_0x371e21[_0x99c5('0x2f')]);return db[_0x99c5('0x1a')][_0x99c5('0x3a')](_0x348f9a)[_0x99c5('0x12')](handleEntityNotFound(_0x16c02b,null))['then'](function(_0x13b83c){if(_0x13b83c[_0x99c5('0x33')]===_0x99c5('0x34')){var _0xd9978a=encryptor[_0x99c5('0x3b')](_0x13b83c[_0x99c5('0x35')]);_0x13b83c[_0x99c5('0x35')]=maskClientSecret(_0xd9978a);}return _0x13b83c;})[_0x99c5('0x12')](respondWithResult(_0x16c02b,null))[_0x99c5('0x36')](handleError(_0x16c02b,null));};exports[_0x99c5('0x3c')]=function(_0x28d21a,_0x18edaf){if(!_0x28d21a[_0x99c5('0x3d')]['name'])throw new Error(_0x99c5('0x3e'));if(!_0x28d21a['body'][_0x99c5('0x33')])throw new Error('Service\x20parameter\x20not\x20specified');var _0x5761de=db['CloudProvider'][_0x99c5('0x39')][_0x99c5('0x33')][_0x99c5('0x3f')];if(!_0x5761de[_0x99c5('0x40')](_0x28d21a[_0x99c5('0x3d')]['service']))throw new Error(_0x99c5('0x41')+_0x5761de[_0x99c5('0x42')](',\x20'));if(_0x28d21a[_0x99c5('0x3d')]['service']===_0x99c5('0x34')&&_0x28d21a[_0x99c5('0x3d')][_0x99c5('0x35')]){_0x28d21a['body']['data3']=encryptor[_0x99c5('0x43')](_0x28d21a['body'][_0x99c5('0x35')]);}return db[_0x99c5('0x1a')][_0x99c5('0x3c')](_0x28d21a[_0x99c5('0x3d')],{})[_0x99c5('0x12')](respondWithResult(_0x18edaf,0xc9))[_0x99c5('0x36')](handleError(_0x18edaf,null));};exports[_0x99c5('0x11')]=function(_0x2d2e3b,_0x5367e5){if(_0x2d2e3b[_0x99c5('0x3d')]['id']){delete _0x2d2e3b[_0x99c5('0x3d')]['id'];}return db[_0x99c5('0x1a')]['find']({'where':{'id':_0x2d2e3b[_0x99c5('0x38')]['id']}})[_0x99c5('0x12')](handleEntityNotFound(_0x5367e5,null))['then'](function(_0x35aece){if(_0x35aece[_0x99c5('0x33')]==='MicrosoftAzure'&&_0x2d2e3b['body']['data3']){_0x2d2e3b[_0x99c5('0x3d')][_0x99c5('0x35')]=encryptor['encryptString'](_0x2d2e3b[_0x99c5('0x3d')][_0x99c5('0x35')]);}return _0x35aece;})[_0x99c5('0x12')](saveUpdates(_0x2d2e3b[_0x99c5('0x3d')],null))[_0x99c5('0x12')](respondWithResult(_0x5367e5,null))['catch'](handleError(_0x5367e5,null));};exports['destroy']=function(_0x3877ba,_0xb657d4){return db[_0x99c5('0x1a')][_0x99c5('0x3a')]({'where':{'id':_0x3877ba[_0x99c5('0x38')]['id']}})[_0x99c5('0x12')](handleEntityNotFound(_0xb657d4,null))[_0x99c5('0x12')](removeEntity(_0xb657d4,null))[_0x99c5('0x36')](handleError(_0xb657d4,null));};exports[_0x99c5('0x44')]=function(_0x2d3621,_0xc73eff){return db[_0x99c5('0x1a')][_0x99c5('0x45')]({'where':{'id':_0x2d3621[_0x99c5('0x38')]['id']},'raw':!![]})[_0x99c5('0x12')](function(_0x3310c0){if(!_0x3310c0)return _0xc73eff['sendStatus'](0x194);return{'url':oauth[_0x99c5('0x46')](_0x3310c0,_0x2d3621[_0x99c5('0x47')]['id'])};})[_0x99c5('0x12')](respondWithResult(_0xc73eff,null))[_0x99c5('0x36')](handleError(_0xc73eff,null));};exports[_0x99c5('0x48')]=function(_0x2e4c0e,_0xe4c8f9){var _0x5dd88a=_0x2e4c0e[_0x99c5('0x3d')];var _0x9069b3;var _0x3f5e14;if(_0x5dd88a[_0x99c5('0x14')])throw _0x5dd88a;redis[_0x99c5('0x49')](_0x5dd88a[_0x99c5('0x4a')])['then'](function(_0x190561){if(!_0x190561)throw new Error(_0x99c5('0x4b'));_0x9069b3=JSON[_0x99c5('0x4c')](_0x190561);var _0x281e14=Buffer['from'](_0x5dd88a[_0x99c5('0x4a')],'base64')[_0x99c5('0x4d')]('ascii');_0x3f5e14=JSON[_0x99c5('0x4c')](_0x281e14);if(!oauth[_0x99c5('0x4e')](_0x5dd88a[_0x99c5('0x4f')],_0x9069b3['oauth2Claims']))throw new Error(_0x99c5('0x50'));redis[_0x99c5('0x51')](_0x5dd88a[_0x99c5('0x4a')]);return oauth['getOauth2MicrosoftAccessToken'](_0x5dd88a[_0x99c5('0x52')],_0x9069b3);})[_0x99c5('0x12')](function(_0x5d2df4){_0x9069b3[_0x99c5('0x53')]=_0x5d2df4[_0x99c5('0x54')];_0x9069b3[_0x99c5('0x55')]=_0x5d2df4[_0x99c5('0x56')];return db[_0x99c5('0x1a')][_0x99c5('0x11')]({'data5':_0x9069b3[_0x99c5('0x53')],'data6':_0x9069b3[_0x99c5('0x55')]},{'where':{'id':_0x9069b3['id']}});})['then'](function(){oauth[_0x99c5('0x57')](_0x9069b3);socket[_0x99c5('0x58')](_0x99c5('0x59'),{'id':_0x3f5e14['id']});return;})[_0x99c5('0x12')](respondWithStatusCode(_0xe4c8f9,null))[_0x99c5('0x36')](function(_0xfaa083){if(_0x3f5e14){socket[_0x99c5('0x58')](_0x99c5('0x5a'),{'id':_0x3f5e14['id']});}if(!_0x9069b3){logger[_0x99c5('0x14')]('Invalid\x20authentication\x20state\x20parameter',_0xfaa083);return _0xe4c8f9[_0x99c5('0xa')](0x1f4)[_0x99c5('0x17')](_0xfaa083[_0x99c5('0x5b')]);}logger[_0x99c5('0x14')]('Authentication\x20failed\x20for\x20cloud\x20provider\x20#%s,\x20err:%s',_0x9069b3['id'],JSON[_0x99c5('0x5c')](_0xfaa083));});};
\ No newline at end of file
+var _0x1c0d=['Content-Range','json','update','then','end','sendStatus','error','stack','name','send','padEnd','slice','CloudProvider','fieldName','type','key','model','map','query','keys','filters','attributes','fields','hasOwnProperty','nolimit','order','where','VIRTUAL','filter','includeAll','include','findAll','MicrosoftAzure','decryptString','data3','catch','params','rawAttributes','intersection','length','merge','options','find','service','create','body','Name\x20parameter\x20not\x20specified','Service\x20parameter\x20not\x20specified','values','includes','Invalid\x20service\x20parameter.\x20Allowed\x20values:\x20','join','encryptString','destroy','oauth2MicrosoftAuthorize','findOne','user','oauth2MicrosoftCallback','state','parse','from','base64','toString','id_token','oauth2Claims','Unable\x20to\x20validate\x20id_token','del','getOauth2MicrosoftAccessToken','access_token','data6','refresh_token','data5','startRefreshInterval','emit','microsoftAuthorization:success','microsoftAuthorization:error','Invalid\x20authentication\x20state\x20parameter','message','Authentication\x20failed\x20for\x20cloud\x20provider\x20#%s,\x20err:%s','lodash','ioredis','../../components/parsers/qs','../../components/encryptor','../../config/logger','api','../../mysqldb','./cloudProvider.oauth','defaults','redis','localhost','status','offset','undefined','count','limit','set'];(function(_0x2dafbe,_0x5d04de){var _0x58a45a=function(_0x50ac96){while(--_0x50ac96){_0x2dafbe['push'](_0x2dafbe['shift']());}};_0x58a45a(++_0x5d04de);}(_0x1c0d,0x1cf));var _0xd1c0=function(_0x1e125a,_0x4f87fe){_0x1e125a=_0x1e125a-0x0;var _0x584e68=_0x1c0d[_0x1e125a];return _0x584e68;};'use strict';var _=require(_0xd1c0('0x0'));var Redis=require(_0xd1c0('0x1'));var qs=require(_0xd1c0('0x2'));var encryptor=require(_0xd1c0('0x3'));var config=require('../../config/environment');var logger=require(_0xd1c0('0x4'))(_0xd1c0('0x5'));var db=require(_0xd1c0('0x6'))['db'];var oauth=require(_0xd1c0('0x7'));config['redis']=_[_0xd1c0('0x8')](config[_0xd1c0('0x9')],{'host':_0xd1c0('0xa'),'port':0x18eb});var socket=require('socket.io-emitter')(new Redis(config[_0xd1c0('0x9')]));var redis=new Redis(config[_0xd1c0('0x9')]);function respondWithStatusCode(_0x1a96f8,_0x260814){_0x260814=_0x260814||0xcc;return function(_0x297b79){if(_0x297b79){return _0x1a96f8['sendStatus'](_0x260814);}return _0x1a96f8[_0xd1c0('0xb')](_0x260814)['end']();};}function respondWithResult(_0x2fb513,_0x38781d){_0x38781d=_0x38781d||0xc8;return function(_0x4c90fe){if(_0x4c90fe){return _0x2fb513[_0xd1c0('0xb')](_0x38781d)['json'](_0x4c90fe);}};}function respondWithFilteredResult(_0x536ef4,_0x5cee8f){return function(_0x24d170){if(_0x24d170){var _0x533f65=typeof _0x5cee8f[_0xd1c0('0xc')]===_0xd1c0('0xd')&&typeof _0x5cee8f['limit']===_0xd1c0('0xd');var _0x5df0c6=_0x24d170[_0xd1c0('0xe')];var _0x2b3d0a=_0x533f65?0x0:_0x5cee8f[_0xd1c0('0xc')];var _0x41f7bf=_0x533f65?_0x24d170[_0xd1c0('0xe')]:_0x5cee8f['offset']+_0x5cee8f[_0xd1c0('0xf')];var _0x3ee6f8;if(_0x41f7bf>=_0x5df0c6){_0x41f7bf=_0x5df0c6;_0x3ee6f8=0xc8;}else{_0x3ee6f8=0xce;}_0x536ef4[_0xd1c0('0xb')](_0x3ee6f8);return _0x536ef4[_0xd1c0('0x10')](_0xd1c0('0x11'),_0x2b3d0a+'-'+_0x41f7bf+'/'+_0x5df0c6)[_0xd1c0('0x12')](_0x24d170);}return null;};}function saveUpdates(_0x138eb9){return function(_0xf754c6){if(_0xf754c6){return _0xf754c6[_0xd1c0('0x13')](_0x138eb9)[_0xd1c0('0x14')](function(_0x134216){return _0x134216;});}return null;};}function removeEntity(_0x148f1b){return function(_0x20d068){if(_0x20d068){return _0x20d068['destroy']()['then'](function(){_0x148f1b['status'](0xcc)[_0xd1c0('0x15')]();});}};}function handleEntityNotFound(_0x10cd44){return function(_0x559edb){if(!_0x559edb){_0x10cd44[_0xd1c0('0x16')](0x194);}return _0x559edb;};}function handleError(_0x321b9a,_0x544f3b){_0x544f3b=_0x544f3b||0x1f4;return function(_0x3e404d){logger[_0xd1c0('0x17')](_0x3e404d[_0xd1c0('0x18')]);if(_0x3e404d['name']){delete _0x3e404d[_0xd1c0('0x19')];}_0x321b9a[_0xd1c0('0xb')](_0x544f3b)[_0xd1c0('0x1a')](_0x3e404d);};}function maskClientSecret(_0x3fcbd2){return _[_0xd1c0('0x1b')](_0x3fcbd2[_0xd1c0('0x1c')](0x0,0x3),0x14,'*');}exports['index']=function(_0x4ab7d2,_0x43d457){var _0x35742d={},_0x47a8c6={},_0x55b4cc={'count':0x0,'rows':[]};var _0x54d00a=_['map'](db[_0xd1c0('0x1d')]['rawAttributes'],function(_0x546a1e){return{'name':_0x546a1e[_0xd1c0('0x1e')],'type':_0x546a1e[_0xd1c0('0x1f')][_0xd1c0('0x20')]};});_0x47a8c6[_0xd1c0('0x21')]=_[_0xd1c0('0x22')](_0x54d00a,_0xd1c0('0x19'));_0x47a8c6[_0xd1c0('0x23')]=_[_0xd1c0('0x24')](_0x4ab7d2['query']);_0x47a8c6[_0xd1c0('0x25')]=_['intersection'](_0x47a8c6[_0xd1c0('0x21')],_0x47a8c6[_0xd1c0('0x23')]);_0x35742d[_0xd1c0('0x26')]=_['intersection'](_0x47a8c6['model'],qs['fields'](_0x4ab7d2[_0xd1c0('0x23')][_0xd1c0('0x27')]));_0x35742d[_0xd1c0('0x26')]=_0x35742d[_0xd1c0('0x26')]['length']?_0x35742d[_0xd1c0('0x26')]:_0x47a8c6[_0xd1c0('0x21')];if(!_0x4ab7d2['query'][_0xd1c0('0x28')](_0xd1c0('0x29'))){_0x35742d[_0xd1c0('0xf')]=qs[_0xd1c0('0xf')](_0x4ab7d2[_0xd1c0('0x23')][_0xd1c0('0xf')]);_0x35742d['offset']=qs[_0xd1c0('0xc')](_0x4ab7d2[_0xd1c0('0x23')][_0xd1c0('0xc')]);}_0x35742d[_0xd1c0('0x2a')]=qs['sort'](_0x4ab7d2[_0xd1c0('0x23')]['sort']);_0x35742d[_0xd1c0('0x2b')]=qs[_0xd1c0('0x25')](_['pick'](_0x4ab7d2[_0xd1c0('0x23')],_0x47a8c6[_0xd1c0('0x25')]),_0x54d00a);if(_0x4ab7d2[_0xd1c0('0x23')]['filter']){_0x35742d[_0xd1c0('0x2b')]=_['merge'](_0x35742d['where'],{'$or':_[_0xd1c0('0x22')](_0x54d00a,function(_0x9f57f7){if(_0x9f57f7[_0xd1c0('0x1f')]!==_0xd1c0('0x2c')){var _0x3a7653={};_0x3a7653[_0x9f57f7[_0xd1c0('0x19')]]={'$like':'%'+_0x4ab7d2[_0xd1c0('0x23')][_0xd1c0('0x2d')]+'%'};return _0x3a7653;}})});}_0x35742d=_['merge']({},_0x35742d,_0x4ab7d2['options']);var _0x37fb9e={'where':_0x35742d[_0xd1c0('0x2b')]};return db[_0xd1c0('0x1d')][_0xd1c0('0xe')](_0x37fb9e)[_0xd1c0('0x14')](function(_0x2e2be4){_0x55b4cc[_0xd1c0('0xe')]=_0x2e2be4;if(_0x4ab7d2['query'][_0xd1c0('0x2e')]){_0x35742d[_0xd1c0('0x2f')]=[{'all':!![]}];}return db['CloudProvider'][_0xd1c0('0x30')](_0x35742d);})[_0xd1c0('0x14')](function(_0x5f5bb3){_0x55b4cc['rows']=_[_0xd1c0('0x22')](_0x5f5bb3,function(_0x7c2a19){if(_0x7c2a19['service']===_0xd1c0('0x31')){var _0x13fb68=encryptor[_0xd1c0('0x32')](_0x7c2a19[_0xd1c0('0x33')]);_0x7c2a19[_0xd1c0('0x33')]=maskClientSecret(_0x13fb68);}return _0x7c2a19;});return _0x55b4cc;})[_0xd1c0('0x14')](respondWithFilteredResult(_0x43d457,_0x35742d))[_0xd1c0('0x34')](handleError(_0x43d457,null));};exports['show']=function(_0x32d5c7,_0xbbd326){var _0x1e34b7={'raw':!![],'where':{'id':_0x32d5c7[_0xd1c0('0x35')]['id']}},_0x25725e={};_0x25725e['model']=_[_0xd1c0('0x24')](db[_0xd1c0('0x1d')][_0xd1c0('0x36')]);_0x25725e[_0xd1c0('0x23')]=_['keys'](_0x32d5c7[_0xd1c0('0x23')]);_0x25725e['filters']=_[_0xd1c0('0x37')](_0x25725e[_0xd1c0('0x21')],_0x25725e[_0xd1c0('0x23')]);_0x1e34b7[_0xd1c0('0x26')]=_['intersection'](_0x25725e['model'],qs[_0xd1c0('0x27')](_0x32d5c7[_0xd1c0('0x23')]['fields']));_0x1e34b7['attributes']=_0x1e34b7['attributes'][_0xd1c0('0x38')]?_0x1e34b7[_0xd1c0('0x26')]:_0x25725e[_0xd1c0('0x21')];if(_0x32d5c7[_0xd1c0('0x23')][_0xd1c0('0x2e')]){_0x1e34b7[_0xd1c0('0x2f')]=[{'all':!![]}];}_0x1e34b7=_[_0xd1c0('0x39')]({},_0x1e34b7,_0x32d5c7[_0xd1c0('0x3a')]);return db[_0xd1c0('0x1d')][_0xd1c0('0x3b')](_0x1e34b7)[_0xd1c0('0x14')](handleEntityNotFound(_0xbbd326,null))[_0xd1c0('0x14')](function(_0x3d2bd3){if(_0x3d2bd3[_0xd1c0('0x3c')]===_0xd1c0('0x31')){var _0x449284=encryptor[_0xd1c0('0x32')](_0x3d2bd3[_0xd1c0('0x33')]);_0x3d2bd3[_0xd1c0('0x33')]=maskClientSecret(_0x449284);}return _0x3d2bd3;})[_0xd1c0('0x14')](respondWithResult(_0xbbd326,null))['catch'](handleError(_0xbbd326,null));};exports[_0xd1c0('0x3d')]=function(_0x12625f,_0x5ea16d){if(!_0x12625f[_0xd1c0('0x3e')][_0xd1c0('0x19')])throw new Error(_0xd1c0('0x3f'));if(!_0x12625f[_0xd1c0('0x3e')][_0xd1c0('0x3c')])throw new Error(_0xd1c0('0x40'));var _0x3d7e7d=db[_0xd1c0('0x1d')][_0xd1c0('0x36')][_0xd1c0('0x3c')][_0xd1c0('0x41')];if(!_0x3d7e7d[_0xd1c0('0x42')](_0x12625f[_0xd1c0('0x3e')][_0xd1c0('0x3c')]))throw new Error(_0xd1c0('0x43')+_0x3d7e7d[_0xd1c0('0x44')](',\x20'));if(_0x12625f['body'][_0xd1c0('0x3c')]===_0xd1c0('0x31')&&_0x12625f[_0xd1c0('0x3e')][_0xd1c0('0x33')]){_0x12625f['body']['data3']=encryptor[_0xd1c0('0x45')](_0x12625f[_0xd1c0('0x3e')][_0xd1c0('0x33')]);}return db[_0xd1c0('0x1d')][_0xd1c0('0x3d')](_0x12625f['body'],{})['then'](respondWithResult(_0x5ea16d,0xc9))[_0xd1c0('0x34')](handleError(_0x5ea16d,null));};exports[_0xd1c0('0x13')]=function(_0x48590a,_0xce774f){if(_0x48590a['body']['id']){delete _0x48590a[_0xd1c0('0x3e')]['id'];}return db[_0xd1c0('0x1d')][_0xd1c0('0x3b')]({'where':{'id':_0x48590a[_0xd1c0('0x35')]['id']}})[_0xd1c0('0x14')](handleEntityNotFound(_0xce774f,null))['then'](function(_0x16b524){if(_0x16b524[_0xd1c0('0x3c')]===_0xd1c0('0x31')&&_0x48590a['body']['data3']){_0x48590a[_0xd1c0('0x3e')][_0xd1c0('0x33')]=encryptor[_0xd1c0('0x45')](_0x48590a[_0xd1c0('0x3e')]['data3']);}return _0x16b524;})['then'](saveUpdates(_0x48590a[_0xd1c0('0x3e')],null))['then'](respondWithResult(_0xce774f,null))[_0xd1c0('0x34')](handleError(_0xce774f,null));};exports[_0xd1c0('0x46')]=function(_0x215cc1,_0x3ab1f4){return db[_0xd1c0('0x1d')][_0xd1c0('0x3b')]({'where':{'id':_0x215cc1[_0xd1c0('0x35')]['id']}})['then'](handleEntityNotFound(_0x3ab1f4,null))[_0xd1c0('0x14')](removeEntity(_0x3ab1f4,null))[_0xd1c0('0x34')](handleError(_0x3ab1f4,null));};exports[_0xd1c0('0x47')]=function(_0x39753d,_0x3d86a0){return db[_0xd1c0('0x1d')][_0xd1c0('0x48')]({'where':{'id':_0x39753d[_0xd1c0('0x35')]['id']},'raw':!![]})[_0xd1c0('0x14')](function(_0x3fcb91){if(!_0x3fcb91)return _0x3d86a0['sendStatus'](0x194);return{'url':oauth['generateMicrosoftAuthorizationUrl'](_0x3fcb91,_0x39753d[_0xd1c0('0x49')]['id'])};})[_0xd1c0('0x14')](respondWithResult(_0x3d86a0,null))[_0xd1c0('0x34')](handleError(_0x3d86a0,null));};exports[_0xd1c0('0x4a')]=function(_0x1138ce,_0x347f40){var _0x4079db=_0x1138ce[_0xd1c0('0x3e')];var _0xf3f99a;var _0x2cb120;if(_0x4079db[_0xd1c0('0x17')])throw _0x4079db;redis['get'](_0x4079db[_0xd1c0('0x4b')])['then'](function(_0x53828f){if(!_0x53828f)throw new Error('Invalid\x20state\x20parameter');_0xf3f99a=JSON[_0xd1c0('0x4c')](_0x53828f);var _0xe97fd5=Buffer[_0xd1c0('0x4d')](_0x4079db[_0xd1c0('0x4b')],_0xd1c0('0x4e'))[_0xd1c0('0x4f')]('ascii');_0x2cb120=JSON[_0xd1c0('0x4c')](_0xe97fd5);if(!oauth['isValidIdToken'](_0x4079db[_0xd1c0('0x50')],_0xf3f99a[_0xd1c0('0x51')]))throw new Error(_0xd1c0('0x52'));redis[_0xd1c0('0x53')](_0x4079db[_0xd1c0('0x4b')]);return oauth[_0xd1c0('0x54')](_0x4079db['code'],_0xf3f99a);})[_0xd1c0('0x14')](function(_0x2dd9cf){_0xf3f99a['data5']=_0x2dd9cf[_0xd1c0('0x55')];_0xf3f99a[_0xd1c0('0x56')]=_0x2dd9cf[_0xd1c0('0x57')];return db[_0xd1c0('0x1d')][_0xd1c0('0x13')]({'data5':_0xf3f99a[_0xd1c0('0x58')],'data6':_0xf3f99a[_0xd1c0('0x56')]},{'where':{'id':_0xf3f99a['id']}});})['then'](function(){oauth[_0xd1c0('0x59')](_0xf3f99a);socket[_0xd1c0('0x5a')](_0xd1c0('0x5b'),{'id':_0x2cb120['id']});return;})[_0xd1c0('0x14')](respondWithStatusCode(_0x347f40,null))[_0xd1c0('0x34')](function(_0x365365){if(_0x2cb120){socket[_0xd1c0('0x5a')](_0xd1c0('0x5c'),{'id':_0x2cb120['id']});}if(!_0xf3f99a){logger[_0xd1c0('0x17')](_0xd1c0('0x5d'),_0x365365);return _0x347f40[_0xd1c0('0xb')](0x1f4)[_0xd1c0('0x1a')](_0x365365[_0xd1c0('0x5e')]);}logger[_0xd1c0('0x17')](_0xd1c0('0x5f'),_0xf3f99a['id'],JSON['stringify'](_0x365365));});};
\ No newline at end of file